Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.

  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint
Share this Page URL

Part II: TCP/IP Protocols > NHRP: Next Hop Resolution Protocol

Chapter 50. NHRP: Next Hop Resolution Protocol

Protocol Description NBMA Next Hop Resolution Protocol (NHRP) is used by a source station (host or router) connected to a Non-Broadcast, Multi-Access (NBMA) subnetwork to determine the internetworking layer address and NBMA subnetwork addresses of the “NBMA next hop” towards a destination station. If the destination is connected to the NBMA subnetwork, then the NBMA next hop is the destination station itself. Otherwise, the NBMA next hop is the egress router from the NBMA subnetwork that is “nearest” to the destination station. NHRP is intended for use in a multiprotocol internetworking layer environment over NBMA subnetworks.

NHRP Resolution Requests traverse one or more hops within an NBMA subnetwork before reaching the station that is expected to generate a response. Each station, including the source station, chooses a neighboring NHS to which it will forward the NHRP Resolution Request. The NHS selection procedure typically involves applying a destination protocol layer address to the protocol layer routing table which causes a routing decision to be returned. This routing decision is then used to forward the NHRP Resolution Request to the downstream NHS. The destination protocol layer address previously mentioned is carried within the NHRP Resolution Request packet. Note that even though a protocol layer address was used to acquire a routing decision, NHRP packets are not encapsulated within a protocol layer header but rather are carried at the NBMA layer using the encapsulation described in its own header.

Protocol Structure

Table 66.

  • ar$afn -- Defines the type of link layer address being carried.

  • ar$pro.type -- This field is an unsigned integer reserved for various uses.

  • ar$pro.snap -- Where a protocol has an assigned number in the ar$pro.type space (excluding 0x0080) the short form MUST be used when transmitting NHRP messages. If both Ethertype and NLPID codings exist then when transmitting NHRP messages, the Ethertype coding MUST be used. When ar$pro.type has a value of 0x0080, a snap encoded extension is being used to encode the protocol type

  • ar$hopcnt -- The hop count. This indicates the maximum number of NHSs that an NHRP packet is allowed to traverse before being discarded.

  • ar$pktsz -- The total length of the NHRP packet in octets.

  • ar$chksum -- The standard IP checksum over the entire NHRP packet.

  • ar$extoff -- This field identifies the existence and location of NHRP extensions.

  • ar$op.version -- This field indicates what version of generic address mapping and management protocol is represented by this message.

  • ar$op.type -- If the ar$op.version is 1 then this field represents the NHRP packet type. Possible values for packet types are:

    1. NHRP Resolution Request.

    2. NHRP Resolution Reply.

    3. NHRP Registration Request.

    4. NHRP Registration Reply.

    5. NHRP Purge Request.

    6. NHRP Purge Reply.

    7. NHRP Error Indication.

  • ar$shtl -- The type and length of the source NBMA address interpreted in the context of the address family number.

  • ar$sstl -- The type and length of the source NBMA subaddress interpreted in the context of the “address family number”.


You are currently reading a PREVIEW of this book.


Get instant access to over $1 million worth of books and videos.


Start a Free 10-Day Trial

  • Safari Books Online
  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint