Chapter 50. Address Resolution Protocol

Address Resolution Protocol (ARP) resides in the bottom half of the Network layer. It can be considered a mechanism for mapping addresses between the Network logical addresses and MAC (Media Access Control) layer physical addresses. For example: the Network layer protocol IP is not aware of 48 bit MAC addresses such as Ethernet. Likewise the MAC layer protocol such as Ethernet is not aware of 32 bit IP addresses. ARP provides the mechanism to map MAC addresses to IP addresses in a temporary memory space called the ARP cache.

The ARP cache is a dynamic cache and the information is stored only for 120 seconds (then it is discarded). In this manner, the ARP cache remains small. The ARP cache can be viewed by using the "ARP -a" command at a command prompt. This should display the current ARP cache. If nothing is displayed, then most likely your computer hasn't communicated on the network (for the past 120 seconds). Ping another device on the network and see if the ARP cache has changed.

The basic operation of ARP is as follows: when the IP layer wants to communicate with another device on the network, it checks the ARP cache (to see if there is a match with an Ethernet address). If there is no matching entry in the ARP cache, an ARP broadcast datagram is sent out that basically says: "Does anybody know whose Ethernet address belongs to this IP address?". The receiving station (that has the IP address) responds with an ARP datagram that says: "This is my IP address and here is my Ethernet address". The ARP cache is updated and the original IP layer information is passed on to the MAC layer for processing.

ARP and RARP Protocol Data Unit

Hardware TypePhysical layer hardware which the request is being made.
The full listing of hardware types is given in the table titled:

IP Hardware Types

 Examples of hardware types are:
1 = Ethernet (10 Mb)3 = Amateur Radio AX.254 = Token Ring6 = IEEE 802 networks11 = LocaltalkProtocol
TypeProtocol code same as Ethernet frame Type field values.
HA LengthHardware address length in octets
Field lengths assume HA = 6 octetsPA LengthProtocol address length
in octetsField lengths assume PA length = 4 octetsOperationOperation code for this message1 = ARP
request2 = ARP reply3 = RARP request4 = RARP replySender HASender hardware addressToken Ring
and Ethernet MAC addresses are 6 octets (48 bits)
Sender PASender protocol addressIP address is 4 octets (32 bits)
Target HATarget hardware addressToken Ring and Ethernet MAC addresses are 6 octets (48 bits)
Target PATarget protocol addressIP address is 4 octets (32 bits)

If this section was helpful, why not donate to further development?

Donate $1.25.

Donate $2.50.

Donate $5.00.