Method of dynamically renumbering ports and an apparatus thereof
US-9742694-B2 · Aug 22, 2017 · US
US11799989B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11799989-B2 |
| Application number | US-202117330782-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 26, 2021 |
| Priority date | Jun 19, 2014 |
| Publication date | Oct 24, 2023 |
| Grant date | Oct 24, 2023 |
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.
Embodiments of the apparatus for modifying packet headers relate to a use of bit vectors to allow expansion and collapse of protocol headers within packets for enabling flexible modification. A rewrite engine expands each protocol header into a generic format and applies various commands to modify the generalized protocol header. The rewrite engine maintains a bit vector for the generalized protocol header with each bit in the bit vector representing a byte of the generalized protocol header. A bit marked as 0 in the bit vector corresponds to an invalid byte, while a bit marked as 1 in the bit vector corresponds to a valid byte. The rewrite engine uses the bit vector to remove all the invalid bytes after all commands have been operated on the generalized protocol header to thereby form a new protocol header.
Opening claim text (preview).
We claim: 1. A method of a network switch, the method comprising: maintaining a bit vector for a generalized protocol header layer of a packet, wherein the bit vector includes bits marked as a first value for invalid fields of the generalized protocol header layer and bits marked as a second value for valid fields of the generalized protocol header layer; and updating the bit vector based on modification of the generalized protocol header layer forming an updated bit vector; collapsing the updated bit vector by removing each bit marked as the first value in the updated bit vector. 2. The method of claim 1 , wherein the generalized protocol header layer is a protocol header of a packet expanded to a generic format. 3. A method of a network switch, the method comprising: maintaining a bit vector for a generalized protocol header layer of a packet, wherein the bit vector includes bits marked as a first value for invalid fields of the generalized protocol header layer and bits marked as a second value for valid fields of the generalized protocol header layer; and updating the bit vector based on modification of the generalized protocol header layer forming an updated bit vector; collapsing the updated bit vector by removing each bit marked as the first value in the updated bit vector, wherein the generalized protocol header layer is divided into a plurality of equal size subsections and the bit vector includes a bit per subsection for each subsection of the generalized protocol header layer. 4. The method of claim 1 , wherein the modification uses at least one command from a set of generic commands that is stored in a memory of the network switch to modify the at least one generalized protocol header layer. 5. The method of claim 4 , wherein the set of generic commands include a Delete command, a Copy command and a Move command. 6. The method of claim 5 , further comprising, prior to using the updated bit vector, comparing the bit vector and the updated bit vector to determine how many bits changed. 7. The method of claim 6 , further comprising modifying the packet based on the updated bit vector and outputting the packet from the network switch via an outgoing port of the network switch. 8. The method of claim 7 , wherein the modification of the at least one generalized protocol header layer is based on egress portType of the outgoing port of the network switch. 9. The method of claim 8 , further comprising forming a new header for the packet based on the collapsed updated bit vector. 10. A network switch comprising: an input port for receiving a packet; an output port for outputting the packet after the packet is processed; and a rewrite engine that: maintains a bit vector for a generalized protocol header layer of the packet, wherein the bit vector includes bits marked as a first value for invalid fields of the generalized protocol header layer and bits marked as a second value for valid fields of the generalized protocol header layer; updates the bit vector based on modification of the generalized protocol header layer forming an updated bit vector; and collapses the updated bit vector by removing each bit marked as the first value in the updated bit vector. 11. The network switch of claim 10 , wherein the generalized protocol header layer is a protocol header of a packet expanded to a generic format. 12. A network switch comprising: an input port for receiving a packet; an output port for outputting the packet after the packet is processed; and a rewrite engine that: maintains a bit vector for a generalized protocol header layer of the packet, wherein the bit vector includes bits marked as a first value for invalid fields of the generalized protocol header layer and bits marked as a second value for valid fields of the generalized protocol header layer; updates the bit vector based on modification of the generalized protocol header layer forming an updated bit vector; and collapses the updated bit vector by removing each bit marked as the first value in the updated bit vector, wherein the generalized protocol header layer is divided into a plurality of equal size subsections and the bit vector includes a bit per subsection for each subsection of the generalized protocol header layer. 13. The network switch of claim 10 , wherein the modification uses at least one command from a set of generic commands that is stored in a memory of the network switch to modify the at least one generalized protocol header layer. 14. The network switch of claim 13 , wherein the set of generic commands include a Delete command, a Copy command and a Move command. 15. The network switch of claim 14 , wherein the rewrite engine, prior to using the updated bit vector, compares the bit vector and the updated bit vector to determine how many bits changed. 16. The network switch of claim 15 , wherein the rewrite engine modifies the packet based on the updated bit vector and outputs the packet from the network switch via the outgoing port of the network switch. 17. The network switch of claim 16 , wherein the modification of the at least one generalized protocol header layer is based on egress portType of the outgoing port of the network switch. 18. The network switch of claim 17 , wherein the rewrite engine forms a new header for the packet based on the collapsed updated bit vector. 19. A non-transitory computer readable medium storing a rewrite engine for inputting, processing and outputting a packet, wherein the rewrite engine: maintains a bit vector for a generalized protocol header layer of the packet, wherein the bit vector includes bits marked as a first value for invalid fields of the generalized protocol header layer and bits marked as a second value for valid fields of the generalized protocol header layer; updates the bit vector based on modification of the generalized protocol header layer forming an updated bit vector; and collapses the updated bit vector by removing each bit marked as the first value in the updated bit vector. 20. The medium of claim 19 , wherein the generalized protocol header layer is a protocol header of a packet expanded to a generic format. 21. A non-transitory computer readable medium storing a rewrite engine for inputting, processing and outputting a packet, wherein the rewrite engine: maintains a bit vector for a generalized protocol header layer of the packet, wherein the bit vector includes bits marked as a first value for invalid fields of the generalized protocol header layer and bits marked as a second value for valid fields of the generalized protocol header layer; updates the bit vector based on modification of the generalized protocol header layer forming an updated bit vector; and collapses the updated bit vector by removing each bit marked as the first value in the updated bit vector, wherein the generalized protocol header layer is divided into a plurality of equal size subsections and the bit vector includes a bit per subsection for each subsection of the generalized protocol header layer. 22. The medium of claim 19 , wherein the modification uses at least one command from a set of generic commands that is stored on the non-transitory computer readable medium to modify the at least one generalized protocol header layer. 23. The medium of claim 22 , wherein the set of generic commands include a Delete command, a Copy command and a Move command. 24. The medium of claim 23 , wherein the rewrite
Protocols for interworking; Protocol conversion · CPC title
Parsing or analysis of headers · CPC title
Header conversion, routing tables or routing tags · CPC title
Protocols for data compression, e.g. ROHC · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.