Upload
debra-york
View
223
Download
0
Embed Size (px)
Citation preview
11
Kyung Hee University
Chapter 8Chapter 8ARP(Address ARP(Address
Resolution Resolution Protocol)Protocol)
22
Kyung Hee University
8.1 Address Mapping8.1 Address Mapping
Logical address
The hosts and routers are recognized at the network level by their logical address
Logical address is unique universal
IP addresses are logical address in TCP/IP and 32 bits long
Physical address
Local address
Should be unique locally, but not necessarily universally
Implemented in hardware
Imprinted on the NIC installed in the host or router
33
Kyung Hee University
Address MappingAddress Mapping
Static mapping
Create a table that associates a logical address with a physical address
This table is stored in each machine on the network
The machine that know the IP address of another machine but not its physical address can look it up in table
When physical addresses are changed, a static mapping table must be updated periodically.
This overhead could affect network performance
44
Kyung Hee University
Address MappingAddress Mapping
Dynamic mapping
The machine could know the logical address or physical address of another machine using following protocols
ARP (Address Resolution Protocol) – Mapping a logical address to a physical address
RARP (Reverse Address Resolution Protocol)– Mapping a physical address to a logical address
Since RARP is replaced with another protocol, we discuss only ARP protocol
55
Kyung Hee University
8.2 ARP Protocol8.2 ARP Protocol
A host or a router has an IP datagram to send to
another host or router, it has the logical (IP) address of
the receiver
IP datagram must be encapsulated in a frame to be able to pass through the physical network
This means that the sender needs the physical address of the receiver
ARP accepts a logical address from the IP protocol,
maps the address to the corresponding physical
address and pass it to the data link layer.
66
Kyung Hee University
Position of ARP in TCP/IP Protocol SuitePosition of ARP in TCP/IP Protocol Suite
77
Kyung Hee University
ARP OperationARP Operation
TCP/IP Protocol Suite
LAN
a. ARP request is multicast
SystemA System B
b. ARP reply is unicast
LAN
SystemA System B
Looking for physical address of anode with IP address 141.23.56.23
Request
The node physical addressis A4:6E:F4:59:83:AB
Reply
88
Kyung Hee University
ARP PacketARP Packet
99
Kyung Hee University
ARP PacketARP Packet
Hardware type : define the type of the network (Ethernet : 1)
Protocol type : define the protocol (IPv4 : 080016)
Hardware length : define the length of the physical address in bytes
Protocol length : define the length of logical address in byte
Operation : define the type of packet
ARP request (1), ARP reply (2)
Sender hardware address : define the physical address of the sender
Sender protocol address : define the logical address of the sender
Target hardware address : define the physical address of the target
Target protocol address : define the logical address of the target
1010
Kyung Hee University
Encapsulation of ARP PacketEncapsulation of ARP Packet
DataPreambleand SFD
Destinationaddress
Sourceaddress
Type CRC
8 bytes 6 bytes 6 bytes 2 bytes 4 bytes
Type: 0x0806
1111
Kyung Hee University
ARP OperationARP Operation
Encapsulation operation of ARP process
① The sender knows the IP address of target
② IP asks ARP to create an ARP request message
③ The message is passed to the link layer where it is encapsulated in an frame using the physical address of the sender as the source address and the physical broadcast address as the destination address
④ Every host or router receives the frame and passes it to ARP
⑤ The target machine replies with an ARP reply message that contains tis physical address
⑥ The sender receives the reply message and knows the physical address of the target machine
⑦ The IP datagram, which carries data for the target machine, is now encapsulated in a frame and is unicast to the destination
1212
Kyung Hee University
Four Different CasesFour Different Cases
The sender is a host and wants to send a packet to
another host on the same network
The sender is a host and wants to send a packet to
another host on another network
The sender is a router that has received a datagram
designed for a host on another network
The sender is a router that has received a datagram
designed for a host in the same network
1313
Kyung Hee University
Four Cases Using ARPFour Cases Using ARP
1414
Kyung Hee University
Example 8.1Example 8.1
A host with IP address 130.23.43.20 and physical address
B2:34:55:10:22:10 has a packet to send to another host with IP
address 130.23.43.25 and physical address A4:6E:F4:59:83:AB
(which is unknown to the first host). The two hosts are on the
same Ethernet network. Show the ARP request and reply
packets encapsulated in Ethernet frames.
Solution
Figure 8.6 shows the ARP request and reply packet. Note that
the ARP data field in this case is 28 bytes, and that the
individual addresses do not fit in the 4-byte boundaries for
these addresses. Also note that the IP addresses are shown in
hexadecimal.
1515
Kyung Hee University
Figure 8.6Figure 8.6
1616
Kyung Hee University
Proxy ARPProxy ARP
Used to create a subnetting effect
The proxy ARP router repliesto any ARP request receivedfor destinations 141.23.56.21,141.23.56.22, and 141.23.56.23.
Router or hostProxy ARP
router
141.23.56.21 141.23.56.22 141.23.56.23
Added subnetwork
1717
Kyung Hee University
8.4 ARP Package8.4 ARP Package
ARP package involves five components
Cache table
Queue
Output module
Input module
Cache-control module
1818
Kyung Hee University
ARP ComponentsARP Components
1919
Kyung Hee University
ARP PackageARP Package
Cache table
Inefficient to use the ARP protocol for each datagram destined for the same host or router
When a host or router receives the corresponding physical address for an IP datagram, the address can be saved in the cache table
This address can be used for the datagram destined for the same receiver within the next few miniute
As space in the cache table is very limited, mappings in the cache are not retained for an unlimited time
2020
Kyung Hee University
ARP PackageARP Package
Entry of cache table
State : state of entry, FREE, PENDING, RESOLVED
Hardware type : same as the field in ARP packet
Hardware length : same as the field in ARP packet
Protocol length : same as the field in ARP packet
Interface number : a router can be connected to different networks, each with a different interface number
Queue number : ARP uses numbered queue to enqueue the packets waiting for address resolution
Attempts :number of times an ARP request is sent out for this entry
Time-out : the lifetime of an entry in seconds
Hardware address : destination hardware address
Protocol address : the destination IP address
2121
Kyung Hee University
ARP Package – Five ComponentsARP Package – Five Components
Output module
2222
Kyung Hee University
ARP Package – Five ComponentsARP Package – Five Components
Input module
2323
Kyung Hee University
ARP Package – Five ComponentsARP Package – Five Components
Cache control module
2424
Kyung Hee University
ARP Package – Five ComponentsARP Package – Five Components
Cache control module
2525
Kyung Hee University
Original Cache Table Used for ExampleOriginal Cache Table Used for Example
2626
Kyung Hee University
Example 8.2Example 8.2
The ARP output module receives an IP datagram (from
the IP layer) with the destination address 114.5.7.89. It
checks the cache table and finds that an entry exists for
this destination with the RESOLVED state (R in the
table). It extracts the hardware address, which is
457342ACAE32, and sends the packet and the address
to the data link layer for transmission. The cache table
remains the same.
2727
Kyung Hee University
Example 8.3Example 8.3
Twenty seconds later, the ARP output module receives
an IP datagram (from the IP layer) with the destination
address 116.1.7.22. It checks the cache table and does
not find this destination in the table. The module adds
an entry to the table with the state PENDING and the
Attempt value 1. It creates a new queue for this
destination and enqueues the packets. It then sends an
ARP request to the data link layer for this destination.
The new cache table is shown in Table 8.6
2828
Kyung Hee University
Table 8.6 Updated Cache Table for Example 8.3Table 8.6 Updated Cache Table for Example 8.3
2929
Kyung Hee University
Example 8.4Example 8.4
Fifteen seconds later, the ARP input module receives
an ARP packet with target protocol (IP) address
188.11.8.71. The module checks the table and finds this
address. It changes the state of the entry to RESOLVED
and sets the time-out value to 900. The module then
adds the target hardware address (E34573242ACA) to
the entry. Now it accesses queue 18 and sends all the
packets in this queue, one by one, to the data link layer.
The new cache table is shown in Table 8.7
3030
Kyung Hee University
Updated Cache Table for Example 8.4Updated Cache Table for Example 8.4
3131
Kyung Hee University
Example 8.5Example 8.5
Twenty-five seconds later, the cache-control module
updates every entry. The time-out values for the first
three resolved entries are decremented by 60. The time-
out value for the lastresolved entry is decremented by
25. The state of the next-to-the last entry is changed to
FREE because the time-out is zero. For each of the
there pending entries, the value of the attempts field is
incremented by one. After incrementing, the attempts
value for one entry (the one with IP address 201.11.56.7)
is more than maximum; the state is changed to FREE,
the queue is deleted, and an ICMP message is sent to
the original destination.
3232
Kyung Hee University
Table 8.8 Updated Cache Table for Example 8.5Table 8.8 Updated Cache Table for Example 8.5
3333
Kyung Hee University
8.7 Summary8.7 Summary
Delivery of a packet to a host or router requires two levels of address: logical and physical. A logical address identifies a host or router at the network level. TCP/IP calls this logical address an IP address. A physical address identifies a host or router at the physical level
Mapping of a logical address to a physical address can be static or dynamic. Static mapping involves a list of logical and physical address; maintenance of the list requires high overhead
The address resolution protocol (ARP) is a dynamic mapping method that finds a physical address given a logical address. An ARP request is broadcast to all devices on the network. An ARP reply is unicast to the host requesting the mapping
3434
Kyung Hee University
8.7 Summary8.7 Summary
In proxy ARP, a router represents a set of hosts. When an ARP request seeks the physical address of any host in this set, the router sends its own physical address. This creates a subnetting effect.
ATMARP is a protocol used on ATM networks that binds a physical address to an IP address. The ATMARP server’s mapping table is built through the use of the inverse request and the inverse reply messages. An ATM network can be divided into logical subnetworks to facilitate ATMARP and other protocol operations.
The ARP software package consists of five components: a cache table, queue, an output module, an input module, and a cache-control module. The cache table has an array of entries used and updated by ARP messages. A queue contains packets going to the same destination. The output module takes a packet from the IP layer and sends it either to the data link later or to a queue. The input module uses an ARP packet to update the cache table. The input module can also send an ARP reply. The cache-control module maintains the cache table by updating entry fields.