What TCP port to use with SeaCat
SeaCat requires to specify one TCP port that is eventually used for client-gateway communication. Clients connect to this port to establish TLS channel that is used to exchange requests and related responses. SPDY-based communication protocol is used for traffic in this channel.
SeaCat: Protocol stack
TCP ports reachability
Google performed investigation during WebSocket implementation (late 2009) that showed surprising facts about success rate of client-to-server connections:
- HTTP port 80: 67%
- Custom TCP port (61985): 86%
- HTTPS port 443: 95%
The reason for low HTTP score is that the Internet is today full of proxies and firewalls that are configured to be transparent to HTTP traffic. However, non-HTTP traffic doesn't successfully pass them. Detailed reasoning can be found here: SPDY Essentials presentation from Google at approx. 18th minute of the video.
443 or custom port
SeaCat communication protocol is up to Session layer compatible with HTTPS protocol stack, HTTPS client that connects to SeaCat gateway is politely rejected with no harm on both sides. SeaCat traffic is indistinguishable from HTTPS traffic for intermediates on the network path, and,therefore, it shares the same success rate of connections. For these reasons TCP port 443 is recommended choice for SeaCat.
If for whatever reason you cannot use this port, use any TCP port above 1024 (non-reserved ports). You will likely got little bit worst connection success rate but still useful for practical deployments in common network scenarios.
Do you want to review your SeaCat-related design proposal?
Do you have a question we didn’t cover?
Do you want to give some feedback?
Feel free to contact us email@example.com.
Most Recent Articles
- Creative Dock, TeskaLabs, Indermedica, Czech Ministry of Industry and Trade and Line 1212 launch the indicative test for new COVID-19 coronavirus
- Cyber-health with a password and an antivirus program is not enough
- TeskaLabs at the ETSI 1st C-V2X Plugtest
- TeskaLabs has become a leader of Mobile Healthcare applications in the Health (in) Future Platform
- TeskaLabs at the ETSI 7th CMS Plugtest validating C-ITS security
You Might Be Interested in Reading These Articles
The goal of this article is to create a simple iOS client which generates a simple POST Request which will be read in host written in Node.js and the output generated in the console. The whole comunication will be handled by SeaCat which help us to establish fast and secure connection among our key components.
Published on September 09, 2014
Starter pack is SeaCat distribution package that is prepared to enable quick evaluation and understanding how SeaCat product works. Also it is a boilerplate for new mobile applications that are equipped with SeaCat.
Published on April 02, 2015
The goal of this article is to extend the knowledge and develop an iOS application which is able to comunicate with REST interface provided by Node.js that we are going to create as well. A full integration with SeaCat is essential for information security of our example.
Published on October 07, 2014