Connected: An Internet Encyclopedia
RFC 826 - An Example

Top: Connected: An Internet Encyclopedia
Up: Requests For Comments
Up: RFC 826
Prev: Network monitoring and debugging
Next: Related issue

### An Example

Let there exist machines X and Y that are on the same 10Mbit Ethernet cable. They have Ethernet address EA(X) and EA(Y) and DOD Internet addresses IPA(X) and IPA(Y) . Let the Ethernet type of Internet be ET(IP). Machine X has just been started, and sooner or later wants to send an Internet packet to machine Y on the same cable. X knows that it wants to send to IPA(Y) and tells the hardware driver (here an Ethernet driver) IPA(Y). The driver consults the Address Resolution module to convert into a 48.bit Ethernet address, but because X was just started, it does not have this information. It throws the Internet packet away and instead creates an ADDRESS RESOLUTION packet with

    	(ar$hrd) = ares_hrd$Ethernet
    	(ar$pro) = ET(IP)
    	(ar$hln) = length(EA(X))
    	(ar$pln) = length(IPA(X))
    	(ar$op)  = ares_op$REQUEST
    	(ar$sha) = EA(X)
    	(ar$spa) = IPA(X)
    	(ar$tha) = don't care
    	(ar$tpa) = IPA(Y)

and broadcasts this packet to everybody on the cable.

Machine Y gets this packet, and determines that it understands the hardware type (Ethernet), that it speaks the indicated protocol (Internet) and that the packet is for it ((ar$tpa)=IPA(Y)). It enters (probably replacing any existing entry) the information that maps to EA(X). It then notices that it is a request, so it swaps fields, putting EA(Y) in the new sender Ethernet address field (ar$sha), sets the opcode to reply, and sends the packet directly (not broadcast) to EA(X). At this point Y knows how to send to X, but X still doesn't know how to send to Y.

Machine X gets the reply packet from Y, forms the map from to EA(Y), notices the packet is a reply and throws it away. The next time X's Internet module tries to send a packet to Y on the Ethernet, the translation will succeed, and the packet will (hopefully) arrive. If Y's Internet module then wants to talk to X, this will also succeed since Y has remembered the information from X's request for Address Resolution.

Next: Related issue

Connected: An Internet Encyclopedia
RFC 826 - An Example