Saturday, 12 January 2013

ARP Protocol

Knowledge of hosts IP address is not sufficient for sending packets, because data link hardware does not understand internet address.
For example: in an Ethernet network the Ethernet controller card can send and receive using 48-bit Ethernet address, usually called MAC address. The 32-bit IP address are unknown to these cards. This require a mapping of the IP addresses to the corresponding Ethernet addresses. This mapping is accomplished by using a technique known as Address resolution protocol (ARP).
ARP map network layer address into link layer address. ARP was defined by RFC 826 in 1982.

Mapping Logical Address to Physical Address

To deliver a packet to a host or a router requires two addresses logical and physical. We need to be able to map a logical address to its corresponding physical address and vice versa. There exist two methods for address mapping that is either static mapping or dynamic mapping. In static mapping, every system in the network consist a table with all logical IP addresses and their corresponding physical addresses. Each machine that know the IP address of another machine can look to the table for get physical address. This method has some limitations because physical addresses may change by several reasons for example changing of NIC (Network Interface Card).
Dynamic mapping is used to overcome these difficulties.  

In dynamic mapping,

The host or the router sends an ARP query packet. The packet includes the physical and IP addresses of the sender and the IP address of the receiver. The query is broadcast over the network. Every host or router on the network receives and processes the ARP query packet, but only the intended receiver identify its IP address and sends back an ARP response packet which contains the receiver’s physical addresses. The packet is unicast directly to the inquirer by using the physical address and IP address received in the query packet. An ARP request is broadcast  and an ARP reply is unicast.

ARP packet
ARP packet
The steps in the ARP address mapping are,
1.    The sender has the IP address of receiver. In order to get the receiver’s physical address IP requests ARP to create an ARP request packet.
2.     Sender broadcast the ARP request packet.
  1. All machines process the packet and drop the packet except the intended receiver.
  2. Targeted receiver creates an ARP reply packet and sends back to sender.
  3. The sender receives the reply packet, now the sender can have both physical address and logical address of target.
  4. The sender starts transmission of data grams to the target.

Reverse Address Resolution Protocol RARP

Reverse Address Resolution Protocol (RARP) finds the logical address for a machine from physical address. That is find network layer address using data link address

A diskless machine is usually booted from ROM, diskless work stations use RARP to get IP address for further processing. BOOTP  and DHCP are examples for using RARP. The Bootstrap Protocol (BOOTP) is a client/server protocol to provide physical address to logical address mapping. The Dynamic Host Configuration Protocol (DHCP) designed to provide static and dynamic addresses to clients.

No comments:

Post a Comment