Also: 65535 tcp-ports ought to be enough for anybody [1] 65534 hardlinks ought to be enough for anybody [2] [1] http://stackoverflow.com/questions/113224/what-is-the-larges... [2] http://unix.stackexchange.com/questions/5629/is-there-a-limi...
I find it extremely awkward that we actually use numbers for ports. Port 80 is typically used for HTTP, but there's nothing preventing another application from using port 80. Why not call the port "HTTP" instead. Better yet why not give it an integer range of ports to go along with the naming - Eg MyApp[1], MyApp[2]. If you want to hide a port from being probed then give it a GUID as a name. No more port scans.
(If there wasn't a need to distinguish multiple clients on the same machine, we might have only had 255 ports!)
A standard port for HTTP servers is needed, as most HTTP clients don't support DNS SRV records.
That said, in the IPv6 world there's no technical reason you can't just let every service bind a different IP address.