Method and apparatus for performing filter operations on data packets using an instruction
First Claim
Patent Images
1. A method for performing a plurality of filter operations on a data packet using an instruction, comprising:
- receiving a single instruction to filter at least one data packet, the at least one data packet comprising a header having a plurality of data fields;
in response to the single instruction, retrieving a filter result based on the received instruction via a radix search, the filter result being indicative of a plurality of filter operations to be performed on the packet, each filter operation associated with a different action; and
performing at least two of a plurality of filter operations on the same data field in the data packet header in accordance with the retrieved filter result,whereby one field of the data packet header is processed in parallel with multiple filter operations, each operation processing the field in its entirety.
2 Assignments
0 Petitions
Accused Products
Abstract
A method performs a plurality of filter operations on a data packet using an instruction. The method receives an instruction to filter at least one data packet. The method retrieves a filter result based on the received instruction. The method then performs a plurality of filter operations on the at least one data packet in accordance with the retrieved filter result.
-
Citations
30 Claims
-
1. A method for performing a plurality of filter operations on a data packet using an instruction, comprising:
-
receiving a single instruction to filter at least one data packet, the at least one data packet comprising a header having a plurality of data fields; in response to the single instruction, retrieving a filter result based on the received instruction via a radix search, the filter result being indicative of a plurality of filter operations to be performed on the packet, each filter operation associated with a different action; and performing at least two of a plurality of filter operations on the same data field in the data packet header in accordance with the retrieved filter result, whereby one field of the data packet header is processed in parallel with multiple filter operations, each operation processing the field in its entirety. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus for performing a plurality of filter operations on a data packet using a single instruction, comprising:
-
a memory configured to store a filter result, the filter result being retrieved from the memory in response to the single instruction via a radix search, the filter result being configured to filter at least one data packet, the at least one data packet comprising a header having a plurality of data fields, and the filter result being indicative of a plurality of filter operations, each filter operation associated with a different action; and performing at least two of a plurality of filter operations on the same data field in the data packet header in accordance with the retrieved filter result, whereby one field of the data packet header is processed in parallel with multiple filter operations, each filter operation processing the field in its entirety. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer-readable medium encoded with a program for a computer, the program comprising:
-
logic operable to receive an instruction to filter at least one data packet, the at least one data packet comprising a header having a plurality of data fields; logic operable in response to a single instruction to retrieve a filter result based on the received instruction via a radix search, where the filter result is indicative of a plurality of filter operations, and each filter operation is associated with a different action; and performing at least two of the filter operations on the same data field in the data packet header in accordance with the retrieved filter result, whereby one field of the data packet header is processed in parallel with multiple filter operations, each filter operation processing the field in its entirety. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification