Hash-based packet classification with multiple algorithms at a network processor
US-2017180253-A1 · Jun 22, 2017 · US
US12177322B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12177322-B2 |
| Application number | US-202318314834-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 10, 2023 |
| Priority date | Oct 24, 2021 |
| Publication date | Dec 24, 2024 |
| Grant date | Dec 24, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A parsing apparatus includes a packet-type identification circuit and a parser. The packet-type identification circuit is to receive a packet to be parsed, and to identify a packet type of the packet by extracting a packet-type identifier from a defined field in the packet. The parser is to store one or more parsing templates that specify parsing of one or more respective packet types. When the packet type of the packet corresponds to a parsing template among the stored parsing templates, the parser is to parse the packet in accordance with the stored parsing template. When the packet type of the packet does not correspond to any of the stored parsing templates, the parser is to parse the packet using an alternative parsing scheme.
Opening claim text (preview).
The invention claimed is: 1. A network device, comprising: a host interface; and a packet builder circuit to receive, through the host interface, packet data and parameters, to check whether the received parameters correspond to parameters of at least one frequent header type in a list of frequent header types, to build corresponding packets for the received packet data and parameters, and to send the built packets to a network, wherein the packet builder circuit writes a packet-type identifier in a defined field of built packets whose parameters correspond to the parameters of the at least one frequent header type in the list of frequent header types, and wherein the network device is connected through the network to other devices that have for the frequent header types in the list, respective templates which allow parallel parsing of all header fields of headers of the frequent header types. 2. The network device according to claim 1 , wherein the network device stores the list of frequent header types in a frequent header table in the network device and the packet builder circuit checks whether the parameters correspond to the at least one frequent header type in the list of frequent header types, using the list stored in the frequent header table. 3. The network device according to claim 1 , wherein the packet builder circuit checks whether the parameters correspond to the at least one frequent header type in a list of frequent header types, by consulting the frequent-header indication and frequent header-type received through the host interface. 4. The network device according to claim 1 , wherein the defined field comprises a Layer-1 Start-of-Packet (SOP) field. 5. The network device according to claim 1 , wherein the defined field comprises a Layer-2 Ethertype field. 6. The network device according to claim 1 , further comprising a port that communicates packets over the network and wherein sending the packets to the network is performed through the port. 7. The network device according to claim 1 , wherein the packet-type identifier is a reserved value of the defined field. 8. The network device according to claim 1 , wherein the packet builder circuit places non-reserved values of the defined field in the defined field, in building packets that do not correspond to the at least one frequent header type. 9. A method for packet building, comprising: receiving, by a network device, from a host, packet data and parameters; building corresponding packets for the received packet data and parameters; checking whether the received parameters correspond to parameters of at least one a frequent header type in a list of frequent header types; writing a packet-type identifier in a defined field of built packets whose parameters correspond to the parameters of the at least one frequent header type in the list of frequent header types; and sending the built packets to a network, wherein the network device is connected through the network to other devices that have for the frequent header types in the list, respective templates which allow parallel parsing of all header fields of headers of the frequent header types. 10. The method according to claim 9 , wherein checking whether the parameters correspond to the at least one frequent header type is performed by the network device using a frequent header table which stores the list of frequent header types in the network device. 11. The method according to claim 9 , wherein checking whether the parameters correspond to the at least one frequent header type is performed by the host. 12. The method according to claim 9 , wherein the defined field comprises a Layer-1 Start-of-Packet (SOP) field. 13. The method according to claim 9 , wherein the defined field comprises a Layer-2 Ethertype field. 14. The method according to claim 9 , wherein the packet-type identifier is a reserved value of the defined field. 15. The method according to claim 9 , wherein building corresponding packets comprises placing non-reserved values of the defined field in the defined field, in building packets that do not correspond to the at least one frequent header type.
in the physical layer [OSI layer 1] · CPC title
in the data link layer [OSI layer 2], e.g. HDLC · CPC title
Parsing or analysis of headers · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.