System and method for a multi-layer network element
First Claim
1. A method for making a forwarding decision for a packet entering a network element having at least one input port and at least one output port, wherein the packet enters the network element on an input port and exits the network element on appropriate output ports, if any, including the steps of:
- (1) receiving a first header portion of the packet;
(2) determining a first search key from the first header portion;
(3) causing a memory to output first forwarding information associated with the first search key;
(4) receiving a second header portion of the packet;
(5) determining a class information for the packet based on the second header portion, wherein each class information includes a class, second header key information indicating which fields of the second header portion should be used to create a second search key, and default forwarding information for packets falling within the class;
(6) creating the second search key from the second header portion based on the second header portion key information;
(7) causing the memory to output second forwarding information, if any, associated with the second search key;
(8) determining the appropriate output ports, if any, based on the first forwarding information, the second forwarding information, and the default forwarding information.
2 Assignments
0 Petitions
Accused Products
Abstract
A multi-layer network element for forwarding received packets from an input port to one or more output ports. The packet is examined to look for first and second forwarding information. A packet is also assigned to a class and provided with default packet forwarding information. An associative memory is searched once for each type of information. The results from the two searches are combined with the default packet forwarding information to forward the packet to the appropriate one or more output ports. In some instances, the results of the first search dominate the forwarding decision, in other, the results of the second search dominate the forwarding decision, and in still other instances, the default information dominates.
450 Citations
23 Claims
-
1. A method for making a forwarding decision for a packet entering a network element having at least one input port and at least one output port, wherein the packet enters the network element on an input port and exits the network element on appropriate output ports, if any, including the steps of:
-
(1) receiving a first header portion of the packet; (2) determining a first search key from the first header portion; (3) causing a memory to output first forwarding information associated with the first search key; (4) receiving a second header portion of the packet; (5) determining a class information for the packet based on the second header portion, wherein each class information includes a class, second header key information indicating which fields of the second header portion should be used to create a second search key, and default forwarding information for packets falling within the class; (6) creating the second search key from the second header portion based on the second header portion key information; (7) causing the memory to output second forwarding information, if any, associated with the second search key; (8) determining the appropriate output ports, if any, based on the first forwarding information, the second forwarding information, and the default forwarding information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. An apparatus for making a forwarding decision for a packet having a header, the packet being provided as input to a network element having at least one input port and at least one output port, wherein the packet enters the network element on an input port and exits the network element on one or more appropriate output ports, if any, comprising:
-
class logic configured to output class information for the packet based on the header, including a class, key information which identifies portions of the header, and default forwarding information for packets falling within the class; search logic configured to output, based on the header, a first search key, and, based on the header, the class, and the key information, a second search key; a memory configured to output a first forwarding result in response to the first search key, and outputs a second forwarding result, if any, in response to the second search key; merge logic configured to output information about appropriate output ports in response to the default forwarding information, the first forwarding result, and the second forwarding result; and forwarding logic configured to direct the packet from the input port to the appropriate output ports, if any, based on the information about the appropriate output ports. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
Specification