Address Resolution Protocol(ARP)
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.