2. ARP
IP datagram contains IP addresses, but the physical interface
hardware on the host or router need an addressing scheme (Physical
Addressing) of a particular network to send a packet.
So we need to translate the IP address to link level physical address.
3. ARP
General Solution,
Each host to maintain a table of address pairs i.e., Mapping of IP
address to Physical Address.
This can be achieved by,
manually uploading the table entries (by administrator)
Dynamically build the table having the IP Address to Physical address
mappings. – ARP approach.
4. ARP
The goal of ARP is to enable each host on a network to build
up a mapping between IP addresses and Physical addresses.
The set of mappings or table stored in the host is called as
ARP cache orARP table.
5. ARP
If a host want to send an IP datagram to a host on the same
physical network,
o It first checks for a mapping in a cache.
o If no mapping is found, it invokes the ARP.
ARP broadcasts the ARP query (it contains target IP address) onto the network.
A host with that IP address sends a response message that contains the
physical address of that host to the originator.
6. When a sender broadcasts the ARP query, each host on the network
can learn the physical address of the sender from the query message
and update or add the mapping into the table.
7. ARP
• HardwareType (16 bit) - Specifies the type of physical network (eg. 1 – for
Ethernet)
• Protocol Type (16 bit) - Specifies the higher layer protocol. (Value is 2048
for IP)
• HLen (8 bit) - Hardware Address Length–Specifies the length of the link
layer address (PhysicalAddress)
• PLen (8 bit) - Protocol Address Length – Specifies the length of the higher
layer protocol address (IP Address)
8. ARP
• Operation or opcode (16 bit) - specifies whether this is a request or a
response.
• Sender Hardware Address (48 bit) - specifies the link level layer or
physical address of the sender.
• Sender Protocol Address (32 bit) – Specifies the higher layer address (IP
Address) of the sender.
9. ARP
• Target Hardware Address (48 bit) - specifies the link level layer or physical
address of the target host.
• Target Protocol Address (32 bit) - Specifies the higher layer address (IP
Address) of the target host.