Patent ID: 8571024

Claim:
A method for switching packets comprising: receiving a packet comprising a header portion and a corresponding tail portion; and processing the header portion using a header processing pipeline, wherein the header processing pipeline comprises a plurality of pipeline stage circuits connected in a sequence, wherein the plurality of pipeline stage circuits comprises at least a fetch stage circuit and a gather stage circuit, each stage circuit of the plurality of pipeline stage circuits is configured to pass data to a next circuit, and said processing comprises receiving the header portion and storing the header portion in a packet header buffer, wherein said receiving the header portion and storing the header portion are performed by the fetch stage circuit, receiving packet type information related to a packet type associated with the header portion from a preceding stage circuit of the plurality of pipeline stage circuits, selecting a processing profile based on the packet type information, processing the header portion in accord with the processing profile to generate a modified header portion, and outputting a modified header portion, wherein said receiving the packet type information, selecting the processing profile, processing the header portion in accord with the processing profile, and outputting are performed by the gather stage circuit.