Lookup front end packet output processor
First Claim
Patent Images
1. A method of processing a packet comprising:
- merging a plurality of sub-tree responses from a processing cluster, the processing cluster performing rule matching for a packet, the plurality of sub-tree responses being responsive to lookup requests associated with the packet, each of the sub-tree responses including a lookup response based on rule matching the packet against a subset of rules specified by a sub-tree; and
outputting a lookup result to a host processor, the lookup result including at least one of the plurality of sub-tree responses based on relative priority of the plurality of sub-tree responses.
6 Assignments
0 Petitions
Accused Products
Abstract
A packet processor provides for rule matching of packets in a network architecture. The packet processor includes a lookup cluster complex having a number of lookup engines and respective on-chip memory units. The on-chip memory stores rules for matching against packet data. A lookup front-end receives lookup requests from a host, and processes these lookup requests to generate key requests for forwarding to the lookup engines. As a result of the rule matching, the lookup engine returns a response message indicating whether a match is found. The lookup front-end further processes the response message and provides a corresponding response to the host.
-
Citations
37 Claims
-
1. A method of processing a packet comprising:
-
merging a plurality of sub-tree responses from a processing cluster, the processing cluster performing rule matching for a packet, the plurality of sub-tree responses being responsive to lookup requests associated with the packet, each of the sub-tree responses including a lookup response based on rule matching the packet against a subset of rules specified by a sub-tree; and outputting a lookup result to a host processor, the lookup result including at least one of the plurality of sub-tree responses based on relative priority of the plurality of sub-tree responses. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. An apparatus for processing a packet comprising:
-
a front-end, implemented in a packet processing circuit, configured to merge a plurality of sub-tree responses from a processing cluster, the processing cluster performing rule matching for a packet, the plurality of sub-tree responses being responsive to lookup requests associated with the packet, each of the sub-tree responses including a lookup response based on rule matching the packet against a subset of rules specified by a sub-tree; and an output module, implemented in a packet processing circuit, configured to output a lookup result to a host processor, the lookup result including at least one of the plurality of sub-tree responses based on relative priority of the plurality of sub-tree responses. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. An apparatus for processing a packet comprising:
-
a computer processor configured to receive a plurality of responses from a processing cluster and output a lookup result to a host processor, the plurality of responses include a plurality of sub-tree responses, the computer processor operating a front-end, a back-end, and an output module; the front-end configured to merge a plurality of sub-tree responses from a processing cluster, the processing cluster performing rule matching for a packet, the plurality of sub-tree responses being responsive to lookup requests associated with the packet; the back-end configured to determine;
1) whether the plurality of responses is to be coalesced based on an indicator associated with the packet, and
2) whether the plurality of responses is to be transmitted in-order or out-of-order;the output module configured to output the lookup result to the host processor according to the determination, the lookup result including at least one of the plurality of sub-tree responses based on relative priority of the plurality of sub-tree responses, the lookup result further including a selection of the plurality of responses based on whether the plurality of responses is to be coalesced.
-
Specification