Next Hop Resolution Protocol (NHRP)
What is Next Hop Resolution Protocol (NHRP)?
Next Hop Resolution Protocol (NHRP) is an automated configuration technology that routes data on a distributed network by discovering the best routing path between endpoints. It enables a computer sending data to another computer to learn the most direct route -- the fewest number of hops -- to the receiving computer.
If the receiving computer is in the same subnetwork, the use of NHRP tells the sending computer that the receiving computer is local, and it can send subsequent data packets directly to the receiving computer using its subnetwork address rather than its global network address. If the receiving computer is not in the same subnetwork, however, the use of NHRP tells the sending computer the computer in the subnetwork whose router provides the most direct path to the receiving computer, so the sender can now forward subsequent data packets to that router.
NHRP is similar to address resolution protocol (ARP), which can be used to dynamically map networks.
What types of network benefit from NHRP?
NHRP is most useful on large networks that have multiple wide area network (WAN) connections and networks with several subnets. While, in a logical model of a network, any endpoint can communicate with any other endpoint, in most implementations, point-to-point links are required that the traffic must flow through.
These point-to-point connections can be a physical fiber link, a virtual private network (VPN) or a Generic Routing Encapsulation (GRE) tunnel. This may result in there being several possible paths from one client to the other. Also, the WAN blocks broadcast requests for address resolution.
This type of network is a non-broadcast multiple access (NBMA) network. Because of these challenges, all traffic needs to go through a core router, resulting in difficult configuration, suboptimal routing and bandwidth bottlenecks.
In an NBMA network, endpoints and participating routers do not know the physical path to one another. This routing information can be manually created, but this is difficult to maintain.
NHRP enables the routers to automatically find the correct physical path and Internet Protocol (IP) addresses.
How Next Hop Resolution Protocol works
NHRP uses next hop servers (NHSes) to register and provide routing information to the next hop clients (NHCs). The NHS can also be called the hub, and the NHC called spokes. Each NHC registers its physical IP address and its logical local IP address to the NHS.
When one NHC wants to discover the route to communicate to an endpoint on another NHC router, it performs an NHRP resolution. It communicates with the NHS to find the physical address of the next NHC.
It can then send traffic directly to the correct NHC -- spoke to spoke -- without sending it first through the central hub. This greatly increases the overall capacity of the entire NBMA network by reducing the load on the central NHS.
To determine the best route for data to travel, the source router sends an NHRP request. The NHRP request is forwarded between participating routers based on the final destination until it reaches the correct destination router. The destination router sends an NHRP resolution reply to the source router. The NHRP resolution contains the next hop information, which may be direct routing information or a recommended intermediary router that has connectivity to the destination router.
NHRP was developed by the Internetworking Over NBMA Working Group of the Internet Engineering Task Force (IETF). It is a main component of Multiprotocol over Asynchronous Transfer Mode and is described in the IETF's Request for Comments 2332, "NBMA Next Hop Resolution Protocol," and RFC 2333, "NHRP Protocol Applicability Statement."
NHRP operates at Layer 2 of the Open Systems Interconnection model, similar to ARP. It can also operate over GRE and IP networks. NHRP does not have a dedicated protocol number assigned by Internet Assigned Numbers Authority.
NHRP is an open standard supported by most major router manufacturers. This includes Cisco, Juniper, Hewlett Packard Enterprise and others. OpenNHRP exists as an open source implementation.
NHRP in Dynamic Multipoint VPN (DMVPN)
Dynamic Multipoint VPN (DMVPN) is a technology from Cisco designed to enable large multisite networks with minimal configuration. DMVPN uses Multipoint GRE to handle packet forwarding between networks, NHRP to find routes between networks and IPsec to secure traffic between points.
DMVPN has two main phases, or levels, of deployment. In a phase 1 deployment, all traffic is spoke-to-hub only, requiring that the NHS is involved in all traffic and thereby greatly limiting the total capacity of the network. In a phase 2 deployment, spoke-to-spoke traffic is supported with dynamic routing, enabling much greater bandwidth.