Method and apparatus for gigabit packet assignment for multithreaded packet processing
AssigneeIntel Corporation
InventorsGilbert Wolrich, Debra Bernstein, Matthew J. Adiletta, Donald F. Hooper
Life of this patent
Estimating the term…
Loading patent…
AssigneeIntel Corporation
InventorsGilbert Wolrich, Debra Bernstein, Matthew J. Adiletta, Donald F. Hooper
Estimating the term…
A network processor that has multiple processing elements, each processing element supporting multiple simultaneous program threads with access to shared resources in an interface. Packet data is received from high-speed ports in segments and each segment is assigned to one of the program threads. Each packet may be assigned to a single program thread, two program threads, or a different program thread for segment of data in a packet. For the two program threads, one program thread can be used for header segment processing and the other program thread can be used for handling payload segment(s). Dedicated inputs for ready status and sequence numbers can provide assistance for receiving the packet data over a high speed port. The dedicated inputs are used to monitor ready flags from the high speed ports on a cycle-by-cycle basis. The sequence numbers are used by the assigned threads to maintain ordering of segments within a packet, as well as to order the writes of the complete packets to transmit queues.
A method of forwarding data, comprising:
A processor for forwarding data from a first port to a second port comprises:
An article comprising a computer-readable medium which stores computer-executable instructions for forwarding data, the instructions causing a one or more computers to perform operations comprising:
Dependencies are inferred from the claim text.