|
IP uses a protocol number in the third word of the datagram header to identify which transport
protocol to use for a particular packet. On most computer systems using TCP/IP the
association of this number to a specific protocol is defined in a text file.
On Microsoft Windows TCP/IP systems this file is usually called PROTOCOL. On Windows NT systems this file is found in the directory %SystemRoot%\System32\drivers\etc. On a UNIX system this file is usually called \etc\protocols. On both Windows and UNIX systems the file generally follows the same format: a protocol name, a number, and any aliases. Each field is separated by white space (spaces or tab characters) and comments are preceded by a pound character (#). The following is an example of a typical Windows NT PROTOCOL file:
# This file contains the Internet protocols as defined by RFC 1060
# (Assigned Numbers).
#
# Format:
#
# <protocol name> <assigned number> [aliases...] [#<comment>]
ip 0 IP # Internet protocol
icmp 1 ICMP # Internet control message protocol
ggp 3 GGP # Gateway-gateway protocol
tcp 6 TCP # Transmission control protocol
egp 8 EGP # Exterior gateway protocol
pup 12 PUP # PARC universal packet protocol
udp 17 UDP # User datagram protocol
hmp 20 HMP # Host monitoring protocol
xns-idp 22 XNS-IDP # Xerox NS IDP
rdp 27 RDP # "reliable datagram" protocol
rvd 66 RVD # MIT remote virtual disk
The protocol number is read from the header of the datagram and compared to the entries in the transport protocol table then passed to the appropriate protocol. For example, if the protocol number is 6, IP delivers the packet to TCP, and if the protocol is 17 the packet is delivered to UDP. There are currently about 100 Transport Layer protocols registered for other special purposes. The numbers used by TCP/IP protocols are assigned and published by a group called the Internet Assigned Number Authority (IANA). The lists of assigned numbers maintained by the IANA are regularly documented as an RFC, the latest of which, at the time of this writing, is RFC 1700. These lists are also available via FTP.
|