The Internet Assigned Numbers Authority (IANA) assigns port numbers. IANA is a standards body that is responsible for assigning various addressing standards.
There are different types of port numbers (Figure 1):
- Well-known Ports (Numbers 0 to 1023) (Figure 2) - These numbers are reserved for services and applications. They are commonly used for applications such as HTTP (web server), IMAP/SMTP (email server) and Telnet. By defining these well-known ports for server applications, client applications can be programmed to request a connection to that specific port and its associated service.
- Registered Ports (Numbers 1024 to 49151) (Figure 3) - These port numbers are assigned to user processes or applications. These processes are primarily individual applications that a user has chosen to install rather than common applications that would receive a well-known port number. When not used for a server resource, these ports may also be used dynamically selected by a client as its source port.
- Dynamic or Private Ports (Numbers 49152 to 65535) - These are usually assigned dynamically to client applications when initiating a connection. It is uncommon for a client to connect to a service using a dynamic or private port (although some peer-to-peer file sharing programs do use these ports).
Using both TCP and UDP
Some applications may use both TCP and UDP (Figure 4). For example, the low overhead of UDP enables DNS to serve many client requests very quickly. Sometimes, however, sending the requested information may require the reliability of TCP. In this case, the well-known port number of 53 is used by both TCP and UDP with this service.
Links
A current list of port numbers and the associated applications can be found at http://www.iana.org/assignments/port-numbers.