DISTRIBUTED ROUTING ARCHITECTURE
First Claim
1. A system for routing packets comprising:
- a router management component, executed on a computing device, for associating destination address information to a router hierarchy;
one or more router components corresponding to a first level of the router hierarchy, the first level of the router hierarchy for receiving an incoming packet for routing;
one or more router components corresponding to a second level of a router hierarchy, the second level of the router hierarchy for processing an incoming packet for routing received from at least one of the one or more router components corresponding to the first level of a router hierarchy, wherein the one or more router components corresponding to the second level of the router hierarchy are associated with a first memory and a second memory for storing destination address information, the first memory associated with a faster access time than the second memory;
one or more router components corresponding to a third level of a router hierarchy, the third level of the router hierarchy for processing an incoming packet for routing received from at least one of the one or more router components corresponding to the second level of a router hierarchy;
wherein the one or more router components corresponding to the first level of a router hierarchy identifies one or more router components from the one or more router components corresponding to the second level of a router hierarchy based on a first subset of a destination address associated with the incoming packet, wherein the first subset is assigned by the router management component;
wherein each of the one or more router components corresponding to the second level of a router hierarchy correspond to portions of the first subset of the destination address associated with the incoming packet;
wherein the one or more router components corresponding to the second level of a router hierarchy identifies one or more router components from the one or more router components corresponding to third level of a router hierarchy based on a second subset of a destination address associated with the incoming packet, wherein the second subset of the destination address is greater than the first subset of the destination address; and
wherein the one or more router components attempt to identify the one or more router components from address information persisted in the first memory associated with the wherein the one or more router components and if the address information is not available in the first memory component, the one or more router components attempt to identify the one or more router components from address information persisted in the second memory component.
1 Assignment
0 Petitions
Accused Products
Abstract
A hierarchical distributed routing architecture including at least three levels, or layers, for receiving, processing and forwarding data packets between network components is provided. The core level router components receive an incoming packet from a network component and identify a distribution level router component based on processing a subset of the destination address associated with the received packet. The distribution level router components that receiving a forwarded packet and identify a transit level router component based a second processing of at least a subset of the destination address associated with the received packet. The distribution level router components maintain address routing information a first and second memory. The transit level router components receive the forwarded packet and forward the packet to a respective network. The mapping, or other assignment, of portions of the FIB associated with the distributed routing environment is managed by a router management component.
111 Citations
45 Claims
-
1. A system for routing packets comprising:
-
a router management component, executed on a computing device, for associating destination address information to a router hierarchy; one or more router components corresponding to a first level of the router hierarchy, the first level of the router hierarchy for receiving an incoming packet for routing; one or more router components corresponding to a second level of a router hierarchy, the second level of the router hierarchy for processing an incoming packet for routing received from at least one of the one or more router components corresponding to the first level of a router hierarchy, wherein the one or more router components corresponding to the second level of the router hierarchy are associated with a first memory and a second memory for storing destination address information, the first memory associated with a faster access time than the second memory; one or more router components corresponding to a third level of a router hierarchy, the third level of the router hierarchy for processing an incoming packet for routing received from at least one of the one or more router components corresponding to the second level of a router hierarchy; wherein the one or more router components corresponding to the first level of a router hierarchy identifies one or more router components from the one or more router components corresponding to the second level of a router hierarchy based on a first subset of a destination address associated with the incoming packet, wherein the first subset is assigned by the router management component; wherein each of the one or more router components corresponding to the second level of a router hierarchy correspond to portions of the first subset of the destination address associated with the incoming packet; wherein the one or more router components corresponding to the second level of a router hierarchy identifies one or more router components from the one or more router components corresponding to third level of a router hierarchy based on a second subset of a destination address associated with the incoming packet, wherein the second subset of the destination address is greater than the first subset of the destination address; and wherein the one or more router components attempt to identify the one or more router components from address information persisted in the first memory associated with the wherein the one or more router components and if the address information is not available in the first memory component, the one or more router components attempt to identify the one or more router components from address information persisted in the second memory component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system for routing packets comprising:
-
a first set of logical router components for receiving an incoming packet for routing; a second set of logical router components for routing packet received from the first set of router components, the second set of logical router component associated with a physical router having a first memory and a second memory; a third set of router logical components for routing packets received from the second set of router components wherein the first set of logical router components identify a router from the second set of logical router components based on a correlation by a router management component of a subset of the destination address associated with the incoming packet to the selected router; wherein each of the one or more router components corresponding to the second set of logical router components is allocated by the router management component to correspond to portions of the first subset of the destination address associated with the incoming packet such that address information provided by the router management component cannot be persisted entirely in the first memory component; and wherein the second set of logical router components identify a router from the third set of logical router components based on a correlation by the router management component of a second subset of a destination address associated with the incoming packet to the second selected router by examining address information in the first memory and if the address information is not persisted in the first memory component, by examining address information persisted in the second memory. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A method for routing packets comprising of the one or more router components corresponding to the second set of logical router components.
obtaining a routing request corresponding to a data packet received from a first communication network; -
identifying a first router corresponding to a first level of a router hierarchy, the first level of the router hierarchy corresponding to one or more router components; forwarding the received data packet to the identified first router; identifying a second router corresponding to a second level of the router hierarchy, the second level of the router hierarchy corresponding to one or more router components; forwarding the received data packet to the identified second router; and identifying a third router corresponding to a third level of the router hierarchy, the third level of the router hierarchy corresponding to one or more router components, wherein identifying a third router corresponding to a third level of the router hierarchy corresponds to examining address information persisted in a first memory component associated with the identified second router and if the address information is not available, examining address information persisted in a second memory associated with the identified second router component; wherein identifying the second router corresponding to a second level of the router hierarchy is based on a correlation of a subset of the destination address associated with the received data packet to the selected router; wherein address information provided by the router management component cannot be persisted entirely in the first memory component; and wherein identifying a third router corresponding to a third level of the router hierarchy is based on a correlation of a second subset of a destination address associated with the incoming packet to the second selected router. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
Specification