Proposed Standard Socket Numbers
A proposal for centrally assigning and tracking network service port numbers.
Postel, J., "Proposed Standard Socket Numbers", RFC 349, DOI 10.17487/RFC0349, May 1972, <https://www.rfc-editor.org/info/rfc349>.
@misc{rfc349,
series = {Request for Comments},
number = 349,
howpublished = {RFC 349},
publisher = {RFC Editor},
doi = {10.17487/RFC0349},
url = {https://www.rfc-editor.org/info/rfc349},
author = {J. Postel},
title = {{Proposed Standard Socket Numbers}},
pagetotal = 1,
year = 1972,
month = may,
} RFC text
Network Working Group Jon Postel
Request for Comments : 349 Computer Science
UCLA-NMC
NIC : 10428 30 May 72
Categories : Socket Numbers
References : RFC's 322, 204
Proposed Standard Socket Numbers
I propose that there be a czar (me ?) who hands out official socket
numbers for use by standard protocols. This czar should also keep track
of and publish a list of those socket numbers where host specific
services can be obtained. I further suggest that the initial allocation
be as follows:
Sockets Assignment
0-63 Network wide standard functions
64-127 Host specific functions
128-239 Reserved for future use
240-255 Any experimental function
and within the network wide standard functions the following particular
assignment be made:
Socket Assignment
1 Telnet
3 File Transfer
5 Remote Job Entry
7 Echo
9 Discard
these socket numbers (decimal) are to be used for the socket called "L"
in the official Initial Connection protocol (ICP) as specified in NIC
7104 the "Current Network Protocols" notebook.
[ This RFC was put into machine readable form for entry ]
[ into the online RFC archives by BBN Corp. under the ]
[ direction of Alex McKenzie. 12/96 ]
AI ELI5
On this page
§1The Problem of Port Numbers
The early ARPANET needed a way for client programs to find the server programs they wanted to talk to. Services like Telnet, File Transfer, and Echo each needed a port number. Without a central registry, different sites used different numbers, making network services impossible to find.
Imagine if every town decided on its own what house number the library was at. You could not visit another town and find the library.
§2Postel's Proposal
Postel suggests that a single 'czar' maintain an official list of port numbers. The proposal divides the port space into ranges: sockets 0 to 63 for network-wide standard functions, 64 to 127 for host-specific services, 128 to 239 reserved for future use, and 240 to 255 for experimental use. Initial assignments include Telnet (socket 1), File Transfer (socket 3), and Echo (socket 7).
Like a phone book where socket 1 always means 'Telnet', socket 3 always means 'file transfer', so everyone knows where to find each service.
§3Lasting Impact
This proposal was quickly adopted by the ARPANET community and evolved into the Internet Assigned Numbers Authority (IANA), which has grown to manage not only port numbers but also IP addresses, domain name extensions, protocol numbers, and many other critical Internet resources. The idea that a central authority should coordinate naming and numbering remains fundamental to the Internet.
Postel's simple idea became the foundation for the system that still assigns addresses and numbers to keep the Internet running today.