Scalable route resolution
First Claim
Patent Images
1. A method comprising:
- storing indirect next hop data within a packet forwarding engine of a router, wherein the indirect next hop data associates protocol next hops with forwarding next hops, wherein the protocol next hops identify peer routers that disseminated routes to the router in accordance with a routing protocol, and wherein the forwarding next hops identify neighboring routers physically coupled to the router;
maintaining a tree data structure external to the indirect next hop data, wherein the tree data structure includes route resolution nodes that resolve prefixes to entries within the indirect next hop data;
traversing the route resolution nodes of the tree data structure in response to a network event to identify one or more affected protocol next hops;
in response to a network event, modifying the indirect next hop data within the packet forwarding engine to associate the affected protocol next hops with a different forwarding next hop; and
forwarding packets within a network using the modified indirect next hop data.
0 Assignments
0 Petitions
Accused Products
Abstract
A router comprises a route resolution module to maintain routing information in accordance with a topology of a network, and an indirect next hop manager to maintain indirect next hop data that associates protocol next hops with forwarding next hops. The route resolution module invokes an application programming interface (API) of the indirect next hop manager for associating and disassociating protocol next hops and forwarding next hops. In response to a network event, the route resolution module can modify the indirect next hop data to reduce the time and resources necessary to perform route resolution.
27 Citations
20 Claims
-
1. A method comprising:
-
storing indirect next hop data within a packet forwarding engine of a router, wherein the indirect next hop data associates protocol next hops with forwarding next hops, wherein the protocol next hops identify peer routers that disseminated routes to the router in accordance with a routing protocol, and wherein the forwarding next hops identify neighboring routers physically coupled to the router; maintaining a tree data structure external to the indirect next hop data, wherein the tree data structure includes route resolution nodes that resolve prefixes to entries within the indirect next hop data; traversing the route resolution nodes of the tree data structure in response to a network event to identify one or more affected protocol next hops; in response to a network event, modifying the indirect next hop data within the packet forwarding engine to associate the affected protocol next hops with a different forwarding next hop; and forwarding packets within a network using the modified indirect next hop data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A router comprising:
-
a packet forwarding engine to forward packets in accordance with forwarding information, wherein the packet forwarding engine stores indirect next hop data having entries that associates protocol next hops with forwarding next hops, wherein the protocol next hops identify peer routers that disseminated routes to the router in accordance with a routing protocol, and wherein the forwarding next hops identify neighboring routers physically coupled to the router; a routing engine to maintain a tree data structure external to the indirect next hop data, wherein the tree data structures includes route resolution nodes that resolve network prefixes to the entries within the indirect next hop data; and wherein, in response to a network event, the routing engine accesses the route resolution nodes of the tree data structure to identify one or more affected protocol next hops and modifies the entries of the indirect next hop data within the packet forwarding engine to associate the affected protocol next hops with a different one of the forwarding next hops. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification