Address
Resolution Protocol
The address
resolution protocol (arp) is a protocol used by the Internet
Protocol (IP) [RFC826],
specifically IPv4, to map IP network addresses to the
hardware addresses used by a data link protocol. The
protocol operates below the network layer as a part of the
interface between the OSI network and OSI link layer. It is
used when IPv4 is used over Ethernet.
The term
address resolution refers to the process of finding an
address of a computer in a network. The address is
"resolved" using a protocol in which a piece of information
is sent by a client process executing on the local computer
to a server process executing on a remote computer. The
information received by the server allows the server to
uniquely identify the network system for which the address
was required and therefore to provide the required address.
The address resolution procedure is completed when the
client receives a response from the server containing the
required address.
An Ethernet
network uses two hardware addresses which identify the
source and destination of each frame sent by the Ethernet.
The destination address (all 1's) may also identify a
broadcast packet (to be sent to all connected computers).
The hardware address is also known as the Medium Access
Control (MAC) address, in reference to the standards which
define Ethernet. Each computer network interface card is
allocated a globally unique 6 byte link address when the
factory manufactures the card (stored in a PROM). This is
the normal link source address used by an interface. A
computer sends all packets which it creates with its own
hardware source link address, and receives all packets which
match the same hardware address in the destination field or
one (or more) pre-selected broadcast/multicast addresses.
The Ethernet
address is a link layer address and is dependent on the
interface card which is used. IP operates at the network
layer and is not concerned with the link addresses of
individual nodes which are to be used. The address
resolution protocol (arp) is therefore used to translate
between the two types of address. The arp client and server
processes operate on all computers using IP over Ethernet.
The processes are normally implemented as part of the
software driver that drives the network interface card.