Chapter 8 ARP(Address Resolution Protocol)

advertisement
Chapter 8
ARP(Address
Resolution
Protocol)
Kyung Hee
University
1
8.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
Kyung Hee
University
2
Address 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
Kyung Hee
University
3
Address 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
Kyung Hee
University
4
8.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.
Kyung Hee
University
5
Position of ARP in TCP/IP Protocol Suite
Kyung Hee
University
6
ARP Operation
LAN
System A
System B
Request
Looking for physical address of a
node with IP address 141.23.56.23
a. ARP request is multicast
LAN
System A
System B
Reply
The node physical address
is A4:6E:F4:59:83:AB
b. ARP reply is unicast
TCP/IP Protocol Suite
Kyung Hee
University
7
ARP Packet
Kyung Hee
University
8
ARP 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
Kyung Hee
University
9
Encapsulation of ARP Packet
Type
Type
Kyung Hee
University
10
ARP 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
Kyung Hee
University
11
Four 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
Kyung Hee
University
12
Four Cases Using ARP
Kyung Hee
University
13
Example 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.
Kyung Hee
University
14
Figure 8.6
Kyung Hee
University
15
Proxy ARP
Used to create a subnetting effect
Added subnetwork
The proxy ARP router replies
to any ARP request received
for destinations 141.23.56.21,
141.23.56.22, and 141.23.56.23.
Router or host
Kyung Hee
University
141.23.56.21
141.23.56.22
141.23.56.23
Proxy ARP
router
16
8.3 ATMARP
When IP packets are moving through an ATM WAN, a
mechanism protocol is needed to find (map) the
physical address of the exiting-point router in the ATM
WAN given the IP address of the router.
Kyung Hee
University
17
ATMARP Packet
Kyung Hee
University
18
Packet Format
 Hardware type : define the type of the physical network
 Protocol type : define the type of protocol
 Sender hardware length : define the length of the sender’s physical address in
bytes
 Operation : define the type of the packet
 Sender protocol length : defines the length of the address in bytes
 Target hardware length : define the length of the receiver’s physical address in
bytes
 Target protocol length : define the length of the address in bytes
 Sender hardware address : define the physical address of the sender
 Sender protocol address : define the address of the sender
 Target hardware address : define the physical address of the receiver
 Target protocol address : define the address of the receiver
Kyung Hee
University
19
Operation field
Kyung Hee
University
20
ATMARP Operation
 PVC(Permanent Virtual Circuit) connection
Established between two end points by the network provider
The VPIs and VCIs are define for the permanent connections

The values are entered in a table for each switch

If the permanent virtual circuit is established, there is no need
for an ATMARP server
The router must be able to bind a physical address to an IP
address
Using inverse request message and inverse reply message
After the exchanging, both routers add a table entry that maps
the physical addresses to the PVC
Kyung Hee
University
21
Binding with PVC
Two routers connected through PVC
ATM
I
II
III
1
Inverse Reque
st
Inverse Reply
time
Kyung Hee
University
2
time
22
ATMARP Operation
SVC (Switched Virtual Circuit) connection
Each time a router wants to make a connection with
another router, a new virtual circuit must be established
But virtual circuit can be created only if the entering-point
router knows the physical address of the exiting-point
router
To map the IP addresses to physical addresses, each
router runs a client ATMARP programs
Kyung Hee
University
23
Binding with ATMARP
ATMARP
Server
Entering-point
router
I
ATM
II
III
Exiting-point
router
Using PVC or SVC
connection
1
Request
Reply
or
NACK
Time
Kyung Hee
University
2
2
Finding physical
address
Time
24
The Process of Establishing a virtual connection
 Connecting to the Server
Normally, there is a permanent virtual circuit established
between each router and the server
If there is no PVC connection, the server must at least know the
physical address of the router
 Receiving the physical address
When there is a connection between the entering-point router
and the server, the router sends an ATMARP request to the
server
The server sends back an ATMARP reply if the physical
address can be found or an ATMARP NACK otherwise
 Establishing Virtual Circuit
Entering-point router can request SVC between itself and the
exiting-point router
Kyung Hee
University
25
Building the Table
The ATM server build its mapping table
Use of ATMARP and the two inverse messages
When a router is connected to an ATM network for the
first time and a permanent virtual connection is
established between the router and the server, the server
sends an inverse request message to the router
The router sends back an inverse reply message, which
includes its IP address and physical address
Using these two address, the server creates an entry in
its routing table
Kyung Hee
University
26
Building the Table
ATMARP
server
ATM
A newly connected
router
I
II
III
1
t
Inverse reques
2
Time
Kyung Hee
University
Inverse reply
Time
27
Logical IP Subnet (LIS)
Kyung Hee
University
28
Logical IP Subnet (LIS)
A large ATM network can be divided into logical
subnetwokrs
In previous figure,
Routers B, C, and D belong to one or more logical
subnets
Routers F, G, and H belong to another logical sunbets
Routers A and E belong to both logical subnets
To send a packet to a router that belongs to another
subnet, the packet must first go to a router that belongs
to both subnets
Kyung Hee
University
29
8.4 ARP Package
ARP package involves five components
Cache table
Queue
Output module
Input module
Cache-control module
Kyung Hee
University
30
ARP Components
Kyung Hee
University
31
ARP 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
Kyung Hee
University
32
ARP 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
Kyung Hee
University
33
ARP Package – Five Components
Output module
Kyung Hee
University
34
ARP Package – Five Components
Input module
Kyung Hee
University
35
ARP Package – Five Components
Cache control module
Kyung Hee
University
36
ARP Package – Five Components
Cache control module
Kyung Hee
University
37
Original Cache Table Used for Example
Kyung Hee
University
38
Example 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.
Kyung Hee
University
39
Example 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
Kyung Hee
University
40
Table 8.6 Updated Cache Table for Example 8.3
Kyung Hee
University
41
Example 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
Kyung Hee
University
42
Updated Cache Table for Example 8.4
Kyung Hee
University
43
Example 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 timeout 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.
Kyung Hee
University
44
Table 8.8 Updated Cache Table for Example 8.5
Kyung Hee
University
45
8.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
Kyung Hee
University
46
8.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.
Kyung Hee
University
47
Download