25.02.2013 Views

TCP/IP Tutorial and Technical Overview - IBM Redbooks

TCP/IP Tutorial and Technical Overview - IBM Redbooks

TCP/IP Tutorial and Technical Overview - IBM Redbooks

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

An exception to the rule is the asynchronous transfer mode (ATM) technology,<br />

where ARP cannot be implemented in the physical layer as described previously.<br />

Therefore, every host, upon initialization, must register with an ARP server in<br />

order to be able to resolve <strong>IP</strong> addresses to hardware addresses (also see 2.10,<br />

“Asynchronous transfer mode (ATM)” on page 47).<br />

ARP was designed to be used on networks that support hardware broadcast.<br />

This means, for example, that ARP will not work on an X.25 network.<br />

3.4.2 ARP detailed concept<br />

ARP is used on IEEE 802 networks as well as on the older DIX Ethernet<br />

networks to map <strong>IP</strong> addresses to physical hardware addresses (see 2.1,<br />

“Ethernet <strong>and</strong> IEEE 802 local area networks (LANs)” on page 30). To do this, it is<br />

closely related to the device driver for that network. In fact, the ARP<br />

specifications in RFC 826 only describe its functionality, not its implementation.<br />

The implementation depends to a large extent on the device driver for a network<br />

type <strong>and</strong> they are usually coded together in the adapter microcode.<br />

ARP packet generation<br />

If an application wants to send data to a certain <strong>IP</strong> destination address, the <strong>IP</strong><br />

routing mechanism first determines the <strong>IP</strong> address of the next hop of the packet<br />

(it can be the destination host itself, or a router) <strong>and</strong> the hardware device on<br />

which it should be sent. If it is an IEEE 802.3/4/5 network, the ARP module must<br />

be consulted to map the to a physical<br />

address.<br />

The ARP module tries to find the address in this ARP cache. If it finds the<br />

matching pair, it gives the corresponding 48-bit physical address back to the<br />

caller (the device driver), which then transmits the packet. If it does not find the<br />

pair in its table, it discards the packet (the assumption is that a higher-level<br />

protocol will retransmit) <strong>and</strong> generates a network broadcast of an ARP request.<br />

See Figure 3-39 on page 121 for more details.<br />

120 <strong>TCP</strong>/<strong>IP</strong> <strong>Tutorial</strong> <strong>and</strong> <strong>Technical</strong> <strong>Overview</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!