US6157955A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Packet processing system including a policy engine having a classification unit
Assignee: Intel Corp
•
Filing: 1998-06-15
•
Granted: 2000-12-05
•
Expires: 2018-06-15
Abstract
Abstract The present invention relates to a general-purpose programmable packet-processing platform for accelerating network infrastructure applications which have been structured so as to separate the stages of classification and action. Network packet classification, execution of actions upon those packets, management of buffer flow, encryption services, and management of Network Interface Controllers are accelerated through the use of a multiplicity of specialized modules. A language interface is defined for specifying both stateless and stateful classification of packets and to associate actions with classification results in order to efficiently utilize these specialized modules.
Inventors
- 👤 Charles E. Narad
- 👤 Kevin Fall
- 👤 Neil MacAvoy
- 👤 Pradip Shankar
- 👤 Leonard M. Rand
- 👤 Jerry J. Hall
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-28 00:21
CPC Classifications
H; H04; H04L; H04L47/00; H04L47/10; G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/30003; G06F9/30007; G06F9/30021; G06F9/30029; G06F9/30036; G06F9/30038; G06F9/30094; G06F9/30098; G06F9/3012; G06F9/30123; G06F9/30127; G06F9/30145; G06F9/3016; G06F9/30167; G06F9/38; G06F9/3885; H04L45/00; H04L45/16; H04L47/50; H04L47/62; H04L47/625; H04L47/627; H04L49/00; H04L49/90; H04L49/901; H04L49/9031; H04L49/9047; H04L49/9084; H04L49/9089; H04L49/9094; H04L9/00; H04L9/40; H04L69/00; H04L69/03; H04L69/12
Claims Analysis
Total Claims: 30
Claim 1
Independent Claim
65 words
A system comprising: an application processor having a host interface; a bus bridge coupled to said host interface; and a policy engine coupled to said bus bridge to classify packets according to at least one of a plurality of application-specific classification policies and to enable at least one of a plurality of actions to be performed on said classified packets responsive to said packet classifications.
Claim 2
Independent Claim
65 words
A system comprising: an application processor having a host interface; a bus bridge coupled to said host interface; and a policy engine coupled to said bus bridge to classify packets according to at least one of a plurality of application-specific classification policies and to enable at least one of a plurality of actions to be performed on said classified packets responsive to said packet classifications.
Claim 3
Dependent Claim
32 words
The system of claim 1, wherein said policy engine comprises: at least one media access controller to receive and/or transmit said packets; and at least one classification engine to classify said packets.
Claim 4
Dependent Claim
21 words
The system of claim 2, wherein said classification engine comprises a microprogrammed processor to accelerate predicate analysis in network infrastructure applications.
Claim 5
Dependent Claim
32 words
The system of claim 3, wherein said microprogrammed processor selectively processes each of said packets by performing thereon at least a subset of packet-based operations including: packet header parsing, and hash-table lookups.
Claim 6
Dependent Claim
34 words
The system of claim 2, wherein said at least one of a plurality of actions comprise causing at least one of said classified packets to be returned to said classification engine to be reclassified.
Claim 7
Dependent Claim
22 words
The system of claim 1, further comprising a plurality of data buffers to store said packets and classification information about said packets.
Claim 8
Dependent Claim
33 words
The system of claim 6, wherein said policy engine further comprises a plurality of producer/consumer ring arrays to store at least one pointer to at least one of said plurality of data buffers.
Claim 9
Dependent Claim
20 words
The system of claim 1, wherein said classification policies are dynamically supplied by an application executing on said application processor.
Claim 10
Dependent Claim
22 words
The system of claim 1, wherein said policy engine further comprises at least one other policy engine coupled to said bus bridge.
Claim 11
Dependent Claim
77 words
In a network switching device, a policy engine comprising: at least one media access controller to receive and/or transmit packets between said policy engine and a host; at least one classification engine to classify said packets according to at least one of a plurality of application-specific classification policies; and a plurality of data buffers coupled to said at least one media controller and said at least one classification engine to store said packets and facilitate said classifications.
Claim 12
Dependent Claim
77 words
In a network switching device, a policy engine comprising: at least one media access controller to receive and/or transmit packets between said policy engine and a host; at least one classification engine to classify said packets according to at least one of a plurality of application-specific classification policies; and a plurality of data buffers coupled to said at least one media controller and said at least one classification engine to store said packets and facilitate said classifications.
Claim 13
Dependent Claim
22 words
The policy engine of claim 10, wherein said classification engine comprises a microprogrammed processor to accelerate predicate analysis in network infrastructure applications.
Claim 14
Dependent Claim
35 words
The policy engine of claim 11, wherein said microprogrammed processor selectively processes each of said packets by performing at least a subset of a plurality of packet-based operations including: packet header parsing, and hash-table lookups.
Claim 15
Dependent Claim
16 words
The policy engine of claim 10, wherein said application-specific classification policies are provided by said host.
Claim 16
Dependent Claim
17 words
The policy engine of claim 10, further comprising an embedded processor to provide said application-specific classification policies.
Claim 17
Dependent Claim
30 words
The policy engine of claim 10, further comprising a plurality of producer/consumer ring arrays to said at least one pointer to at least one of said plurality of data buffers.
Claim 18
Dependent Claim
18 words
The policy engine of claim 10, wherein said classification packets are returned to classification engine to be reclassified.
Claim 19
Dependent Claim
49 words
An article of manufacture comprising: a recordable medium having recorded thereon a plurality of programing instructions for use to program a computing device to classify packets stored in at least one of a plurality of data buffers according to at least one of a plurality of application-specific classification packets.
Claim 20
Dependent Claim
49 words
An article of manufacture comprising: a recordable medium having recorded thereon a plurality of programing instructions for use to program a computing device to classify packets stored in at least one of a plurality of data buffers according to at least one of a plurality of application-specific classification packets.
Claim 21
Dependent Claim
95 words
The article of manufacture of claim 17, wherein said programing instructions for use to program said computing device to classify said packets further comprise programing instructions to enable said computing device to: retrieve from one of a plurality of ring arrays a packet buffer pointer corresponding to a packet to be classified; retrieve at least a portion of said packet to be classified indicated by said packet buffer pointer; execute a plurality of application-specific operations to extract information from said packet; and store results of said operations in a designated result area of said packet.
Claim 22
Dependent Claim
66 words
The article of manufacture of claim 18, wherein said programming instructions for use to program said computing device to classify said packets further comprise programing instructions to enable said computing device to: generate a hash key from said extracted information and utilize said hash key to perform a lookup in a hash table to identify a record associated with at least one packet matching said key.
Claim 23
Dependent Claim
19 words
The article of manufacture of claim 17, wherein said application-specific classification policies are dynamically provided by a host processor.
Claim 24
Dependent Claim
19 words
The article of manufacture of claim 17, wherein said application-specific classification policies are dynamically provided by said computing device.
Claim 25
Independent Claim
43 words
A method comprising: storing packets in at least one of a plurality of data buffers; and classifying said packets stored in said at least one of a plurality of data buffers according to at least one of a plurality of application-specific classification policies.
Claim 26
Independent Claim
43 words
A method comprising: storing packets in at least one of a plurality of data buffers; and classifying said packets stored in said at least one of a plurality of data buffers according to at least one of a plurality of application-specific classification policies.
Claim 27
Dependent Claim
73 words
The method of claim 22, wherein said classifying packets comprises: retrieving from one of a plurality of producer/consumer ring arrays a packet buffer pointer corresponding to a packet to be classified; retrieving at least a portion of said packet to be classified indicated by said packet buffer pointer; executing a plurality of application-specific operations to extract information from said packet; and storing results of said operations in a designated result-area of said packet.
Claim 28
Dependent Claim
41 words
The method of claim 23, further comprising: generating a hash key from said extracted information and utilizing said hash key to perform a lookup in a hash table to identify a record associated with at least one packet matching said key.
Claim 29
Dependent Claim
17 words
The method of claim 22, wherein said application-specific classification policies are dynamically provided by a host processor.
Claim 30
Dependent Claim
17 words
The method of claim 22, wherein said application-specific classification policies are dynamically provided by an embedded processor.
References Cited (Backward Citations)
US5764645A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2003-12-05 | 2004-06-05 | 2004-12-05 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2007-12-05 | 2008-06-05 | 2008-12-05 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2011-12-05 | 2012-06-05 | 2012-12-05 | $7700.00 | Window Closed / Lapsed |