ARP - 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. After which 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 then passed on to the MAC layer for processing.

ARP and RARP Protocol Data Unit

Hardware Type	Physical 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.25
		4 = Token Ring
		6 = IEEE 802 networks
		11 = Localtalk

Protocol Type	Protocol code same as Ethernet frame Type field values.

HA Length	Hardware address length in octets
	1	Ethernet (10Mb)
	2	Experimental Ethernet (3Mb)
	3 	Amateur Radio AX.25
	4 	Proteon ProNET Token Ring
	5 	Chaos
	6 	IEEE 802 Networks
	8 	Hyperchannel
	9 	Lanstar
	10 	Autonet Short Address
	11 	LocalTalk
	12 	LocalNet (IBM PCNet or SYTEK LocalNET)
	13 	Ultra link
	14 	SMDS
    	15 	Frame Relay
    	16 	Asynchronous Transmission Mode (ATM)
    	17 	HDLC
    	18 	Fibre Channel
    	19 	Asynchronous Transmission Mode (ATM)
    	20 	Serial Line
    	21 	Asynchronous Transmission Mode (ATM)

Field lengths assume HA = 6 octets PA Length Protocol address length in octets Field lengths assume PA length = 4 octets Operation Operation code for this message 1 = ARP request 2 = ARP reply 3 = RARP request 4 = RARP reply Sender HA Sender hardware address Token Ring and Ethernet MAC addresses are 6 octets (48 bits) Sender PA Sender protocol address IP address is 4 octets (32 bits) Target HA Target hardware address Token Ring and Ethernet MAC addresses are 6 octets (48 bits) Target PA Target protocol address IP address is 4 octets (32 bits)

If this page has helped you, please consider donating $1.00 to support the cost of hosting this site, thanks.

Return to

TelecomWorld 101

Copyright July 2013 Eugene Blanchard