Address Resolution Protocol (ARP)
As you learned earlier in this hour, the computers on a local network use an Internet layer protocol called Address Resolution Protocol (ARP) to map IP addresses to physical addresses. A host must know the physical address of the destination network adapter in order to send any data to it. For this reason, ARP is a very important protocol. However, TCP/IP is implemented in such a way that ARP and all the details of physical address translation are almost totally invisible to the user. As far as the user is concerned, a network adapter is identified by its IP address. Behind the scenes, though, the IP address must be mapped to a physical address in order for a message to reach its destination. (See Hour 3, "The Network Access Layer.")
Each host on a network segment maintains a table in memory called the ARP table or ARP cache. The ARP cache associates the IP addresses of other hosts on the network segment with physical addresses (see Figure 4.6). When a host needs to send data to another host on the segment, the host checks the ARP cache to determine the physical address of the recipient. The ARP cache is assembled dynamically. If the address that is to receive the data is not currently listed in the ARP cache, the host sends a broadcast called an ARP request frame (see Figure 4.6).
The ARP request frame contains the unresolved IP address. The ARP request frame also contains the IP address and physical address of the host that sent the request. The other hosts on the network segment receive the ARP request, and the host that owns the unresolved IP address responds by sending its physical address to the host that sent the request. The newly resolved IP-address-to-physical-address mapping is then added to the ARP cache of the requesting host.
Typically, the entries in the ARP cache expire after a predetermined period. When the lifetime of an ARP entry expires, the entry is removed from the table. The resolution process begins again the next time the host needs to send data to the IP address of the expired entry.