Title: Binding Protocol Addresses ARP
1Binding Protocol Addresses (ARP)
- P. Martins
- Department of Computer Science and Computer
Information Systems
2For Meditation.
- What is the purpose of ARP (Address Resolution
Protocol) ? - What are the three mechanisms used for address
translation?
3Protocol Addresses
- When application program generates data to be
sent across an internet, software places data in
a packet - The packet contains the protocol address (IP
address) of the destination. - Software works with IP addresses when forwarding
packets. - Hardware does not understand IP addressing.
- Protocol addresses cannot be used when
transmitting frames across physical network
hardware
4Protocol Addresses
- The software (protocol) address of a next hop
must be translated to an equivalent hardware
address before a frame can be sent.
ARP
HW address
SW address
5Protocol Addresses
- Protocol addresses are abstractions provided by
software. - Physical network hardware does not know how to
locate a computer from its protocol address.
6Address Resolution
- Consider the simple internet that next slide
illustrates. - In the figure, hosts A and B attach to the same
physical network. - If an application on host A sends data to an
application on host B, the application uses Bs
IP address as the destination. - Protocol software on A resolves Bs IP address to
Bs hardware address, and uses the hardware
address to send the frame directly.
7Address Resolution
Figure 19.1 A simple internet with routers R1 and
R2 connecting three physical networks each
network has two host computers attached. A
computer can only resolve the address of a
computer attached to the same physical network.
8Address Resolution
- Translation from a computers protocol address to
an equivalent hardware address is known as
address resolution. - The protocol address is said to be resolved to
the correct hardware address. - Address resolution is local to a network.
- One computer can resolve the address of another
computer only if both computers attach to the
same physical network.
9Address Resolution
- If an application on host A sends a message to an
application on host F, which lies on a remote
network, software on host A does not resolve Fs
address. - Each computer that handles a packet resolves a
next-hop address before sending.
10To summarize
- Mapping between a protocol address and a hardware
address is called address resolution. - A host or router uses address resolution when it
needs to send a packet to another computer on the
same physical network - A computer never resolves the address of a
computer that attaches to a remote network.
11Address Resolution Techniques
- What algorithm does software use to translate a
protocol address into a hardware address? - It depends on the protocol and hardware
addressing schemes. - The method used to resolve IP address to an
Ethernet address differs from the method used to
translate IP address to an ATM address.
12Address Resolution Techniques
- Address resolution algorithms can be
- Table lookup. Bindings or mappings are stored in
a table in memory, which the software searches
when it needs to resolve an address - Closed-form computation. The hardware address is
calculated from the IP address. - Message exchange. Computers exchange messages
across a network to resolve an address.
13Address Resolution with Table Lookup
- Requires a data structure data contains
information about address bindings. - The table consists of an array.
- Each entry in the table contains a pair (P,H),
where P is the protocol address and H is the
equivalent hardware address.
14Address Resolution with Table Lookup
Figure 19.2 An example of address binding
table. Each entry in the table contains a
protocol address and the equivalent hardware
address.
15Address Resolution with Table Lookup
- A separate address binding table is used for each
physical network. - Consequently, all IP address in a given table
have the same prefix. - Implementations can save space by omitting the
prefix from table entries.
16Address Resolution with Table Lookup
- The chief advantage of the table lookup approach
is generality - A table can store the address bindings for an
arbitrary set of computers on a given network. - The algorithm is straightforward and the easiest
to program
17Address Resolution with Table Lookup
- For a network that contains less than a dozen
hosts, a sequential search can suffice - For large networks, we use hashing or direct
addressing.
18Address Resolution with Table Lookup
Figure 19.3 An example of direct lookup for a
class C network. The host portion of an address
is used as an array index.
19Address Resolution with Closed-Form Computation
- Many network technologies use static physical
addresses - Some technologies use configurable addressing in
which a network interface can be assigned a
specific hardware address. - For such networks, it is possible to choose
addresses that make closed-form address
resolution possible.
20Address Resolution with Closed-Form Computation
- A resolver computes a mathematical function
that maps an IP address to a hardware (MAC)
address - The computation requires only a few arithmetic
operations. - The addresses can be chosen to optimize the
translation.
21Address Resolution with Closed-Form Computation
- When a computer connects to a network that uses
configurable addressing, the local network
administrator must choose a hardware address as
well as an IP address. - The two values can be chosen to make address
resolution trivial.
22Address Resolution with Message Exchange
- A computer that needs to resolve an address sends
a message across a network and receives a reply. - The message carries a request that specifies the
IP protocol address. - The reply carries the corresponding MAC hardware
address.
23Address Resolution with Message Exchange
- Two designs
- Centralized. In some protocol suites, there are
address resolution servers. Requests are sent to
the servers. - Decentralized. Each computer participates in
address resolution by agreeing to answer
resolution requests for its address. No servers
are needed. Requests are broadcast messages.
24Comparison
25Summary of features
Figure 19.4 Comparison of address resolution
using a table lookup (T), closed form computation
C, and dynamic message exchange D
26Address Resolution Protocol
- TCP/IP can use any of the three resolution
methods. - Table lookup is usually employed to resolve IP
addresses across a WAN - Closed-form computation is used with configurable
networks. - Message exchange is used on LAN hardware that has
static addressing.
27Address Resolution Protocol
- To guarantee that all computers agree on the
exact format and meaning of messages used to
resolve addresses, TCP/IP protocol suite includes
an Address Resolution Protocol (ARP). - The ARP defines two basic messages
- Request. contains the IP address and requests
the corresponding hardware (MAC) address - Response. Contains both the MAC address and the
IP address.
28ARP Message Delivery
Figure 19.5 An ARP message exchange. A) Computer
W begins to broadcast an ARP request that
contains computer Ys IP address b) All computers
receive the request, and c) computer Y sends a
response directly to W.
29ARP Message Format
Figure 19.6 The format for an ARP message when
used to bind Internet protocol addresses to
Ethernet addresses.
30Sending an ARP Message
Figure 19.7 Illustration of an ARP message
encapsulated in an Ethernet frame. The entire
ARP message travels in the data area of the
frame the network hardware neither interprets
nor modifies contents of the ARP message.
31Identifying ARP frames
Figure 10.8 Illustration of the type field in
an Ethernet header used to specify the frame
contents. A value of 0x806 informs the receiver
that the frame contains an ARP message.
32Layering, Address Resolution, Protocol Addresses
Network interface physical layer
Figure 19.9 Layered protocol software in a
computer and the conceptual boundary between
the network interface layer and higher layers.
Software above the boundary uses protocol
addresses software below the boundary
translates each protocol address to an
equivalent hardware address.
33Layering, Address Resolution, Protocol Addresses
- The lowest layers of the TCP/IP model
- Physical layer (use MAC addresses)
- Network Interface (translate MAC/IP addresses)
- The higher layers use protocol addresses
- Internet Protocol
- Transport Protocol
- Application Protocol
34Definitions
35Direct Addressing
- Direct addressing is slightly more efficient, but
less general technique. - Direct addressing is possible only in cases where
protocol addresses are assigned from a compact
range. - See figure 19.3. The addresses are sequential
values that begin with 197.15.3.2. - The host suffix is used as an index into the
array. gtgt back