[e2e] What if there were no well known numbers?

Greg Skinner gds at best.com
Fri Aug 4 21:04:24 PDT 2006


On Fri, Aug 04, 2006 at 10:00:33PM -0400, John Day wrote:
> I remember that we had already had conversations about 
> application-names and network addresses and a directory.  I know that 
> a lot of our thinking was using operating systems as a guide to how 
> to do it.  But since we only had 3 applications and only one 
> occurrence of each per host, and we needed to get something up and 
> running, there wasn't time to do it right.  Perhaps we were having 
> these conversations with people other than the UCLA people.  Maybe it 
> was the Multics crowd.  I can believe that in the very very early 
> days that was the logic, but by 1970 or so, we knew better.  From 
> about then, I always considered well-known sockets to be the 
> equivalent of "hard-wiring low core."
> 
> A kludge.
> 
> The port numbers in TCP and NCP function as a connection-identifier 
> within the scope of the (src, dest) addresses, i.e. it distinguishes 
> multiple connections/flows between the same two points.  They do not 
> identify applications.  The well-known idea is just an expedient 
> convention.  It clearly doesn't generalize unless you are McKenzie 
> who believed that Telnet and FTP were all you needed. ;-)

I wasn't involved in any of the ARPANET R&D, but I was able to piece
together a bit from the old RFCs.  The socket as connection identifier
made its debut in RFC 33.  It was a 8-bit field called AEN (Another
Eight-Bit Number).  The idea that there should be a "directory"
of sockets appeared in RFC 65.  Jon Postel posed the question of
whether standard protocols should have assigned/reserved socket
numbers in RFC 205.  The first call for well known socket numbers came
in RFC 322 (accompanying a concern about which socket numbers were
currently in use at which hosts).  JP proposed that he be the "czar"
for standard socket numbers in RFC 349.  So it seems as if well-known
sockets were an expediency, as you say, which was preserved in TCP and
UDP.

BTW, speaking of hosts.txt, RFC 226 contained the first cut at an
"official" hosts list.  (Before that, the RFC noted that each telnet
implementation provided its own list of host names.)

--gregbo


More information about the end2end-interest mailing list