Separation of data and control in a switching device
First Claim
1. A network device comprising:
- one or more processors to;
receive a key associated with a packet,determine a key type associated with the key,identify, based on the key type, a trie including a set of nodes,bi-directionally traverse two or more of the nodes of the identified trie, to identify a route for routing the packet, andassociate, based on the traversing, the route with the received key.
0 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.
22 Citations
20 Claims
-
1. A network device comprising:
one or more processors to; receive a key associated with a packet, determine a key type associated with the key, identify, based on the key type, a trie including a set of nodes, bi-directionally traverse two or more of the nodes of the identified trie, to identify a route for routing the packet, and associate, based on the traversing, the route with the received key. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
9. In a network device, a method comprising:
-
storing, in a table of the network device, at least one trie including nodes associated with a set of routes, each of the routes including an associated prefix; receiving, at the network device, a key associated with a packet; identifying, by the network device and based on a type of the key, the at least one trie; searching, by the network device, two or more nodes, of the nodes of the at least one trie; and associating, by the network device and based on the searching, a route, for the packet, with the key. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system for use in a packet-switched network, the system comprising:
one or more devices to; determine a key type of a key associated with a particular packet, the key including a plurality of bits; identify, based on the determined key type, a stored trie that includes a plurality of nodes associated with routes to a destination in the packet-switched network; evaluate at least some of the bits of the key, along a path that includes a portion of the nodes, of the identified trie, in a first direction based on respective indicators associated with the portion of the nodes, beginning with a start node and ending with an end node, where the start node and the end node are included in the plurality of nodes; determine whether the key and a prefix associated with the end node match; and at least partially traverse the path in a reverse direction, relative to the first direction, when the key and the prefix do not match, to determine a first dissimilar bit between the prefix and the key.
Specification