I've written a Java server to listen on port 49474. My client runs on Android phones all over the US. Of course, they will be connecting from a variety of networks: home, work, school, library, McDonalds. The traffic between the server and client via a Java Socket transferring raw JSON.
Someone told me I have to use port 80 or 443 AND that my traffic must be actual HTTP traffic or routers/firewalls will detect that my traffic is not HTTP traffic and drop it.
How common is it for a network administrator to block connections to ports in the range my port is in?
Also, if I just switch my port number to 443, will a router/firewall detect that my traffic is not HTTP traffic and block even on a well-known port?