|
|
|
|
|
by kragen
223 days ago
|
|
Does "session protocol" mean that it provided packet retransmission and reordering, like TCP? How does that save you serializing and deserializing byte streams? I agree that, given the existing design of IP and TCP, you could get much of the benefit of first-class addresses for services by using, for example, DNS-SD, and that is what ZeroConf does. (It is not a coincidence that the DNS-SD RFC was written by a couple of Apple employees.) But, if that's the way you're going to be finding endpoints to initiate connections to, there's no benefit to having separate port numbers and IP addresses. And IP addresses are far scarcer than just requiring a Linux container or a network namespace: there are only 2³² of them. But it is rare to find an IP address that is listening on more than 64 of its 2¹⁶ TCP ports, so in an alternate history where you moved those 16 bits from the port number to the IP address, we would have one thousandth of the IP-address crunch that we do. Historically, possibly the reason that it wasn't done this way is that port numbers predated the DNS by about 10 years. |
|
The higher level protocols were built on ATP which was message based.
ADSP was a stream protocol that could be used for remote terminal access or other applications where byte streams actually made sense.
> Historically, possibly the reason that it wasn't done this way is that port numbers predated the DNS by about 10 years.
Predated or postdated?
My understanding is that DNS can potentially provide port numbers, but this is not widely used or supported.