Packet processing with re-insertion into network interface circuitry
First Claim
1. A method for assembling a plurality of packet fragments into a packet for transmission by network interface circuitry, the method comprising:
- determining at the network interface circuitry that received data is a first packet fragment associated with a first packet;
storing the first packet fragment in a reserved buffer space in memory corresponding to the first packet, wherein the reserved buffer space stores one or more different packet fragments associated with the first packet;
determining that the first packet fragment is valid by matching a first checksum included in the first packet fragment with a second checksum included in a second packet fragment stored in the reserved buffer space;
sorting the one or more different packet fragments stored in the reserved buffer space based on a fragment number associated with each packet fragment;
determining, at a predetermined time interval, that the one or more different packet fragments associated with the first packet stored in the reserved buffer space constitute all packet fragments associated with the first packet;
combining the one or more different packet fragments associated with the first packet stored in the reserved buffer space to generate the first packet; and
transmitting the first packet from the network interface circuitry over a network to a receiver.
1 Assignment
0 Petitions
Accused Products
Abstract
Method and apparatus for packet processing by re-insertion into network interface circuitry. A method for handling a burst of packets sent to network interface circuitry includes checking for a connection table entry for received packets, and responsive to non-existence of the connection table entry for the received packets, sending the packets to network interface software for processing. The network interface software processing includes: building the connection table entry; processing the packets; and sending the packets as processed to the network interface circuitry. Additionally, a method for re-inserting a packet responsive to an active audit mode is described.
110 Citations
20 Claims
-
1. A method for assembling a plurality of packet fragments into a packet for transmission by network interface circuitry, the method comprising:
-
determining at the network interface circuitry that received data is a first packet fragment associated with a first packet; storing the first packet fragment in a reserved buffer space in memory corresponding to the first packet, wherein the reserved buffer space stores one or more different packet fragments associated with the first packet; determining that the first packet fragment is valid by matching a first checksum included in the first packet fragment with a second checksum included in a second packet fragment stored in the reserved buffer space; sorting the one or more different packet fragments stored in the reserved buffer space based on a fragment number associated with each packet fragment; determining, at a predetermined time interval, that the one or more different packet fragments associated with the first packet stored in the reserved buffer space constitute all packet fragments associated with the first packet; combining the one or more different packet fragments associated with the first packet stored in the reserved buffer space to generate the first packet; and transmitting the first packet from the network interface circuitry over a network to a receiver. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer readable medium storing instructions for causing a network interface to assemble a plurality of packet fragments into a packet for transmission by a network interface, by performing the steps of:
-
determining at the network interface that received data is a first packet fragment associated with a first packet; storing the first packet fragment in a reserved buffer space in memory corresponding to the first packet, wherein the reserved buffer space stores one or more different packet fragments associated with the first packet; determining that the first packet fragment is valid by matching a first checksum included in the first packet fragment with a second checksum included in one of the one or more different packet fragments; sorting the one or more different packet fragments stored in the reserved buffer space based on a fragment number associated with each of the packet fragments; determining, at a predetermined time interval, that the one or more different packet fragments associated with the first packet stored in the reserved buffer space constitute all packet fragments associated with the first packet; combining the one or more different packet fragments associated with the first packet stored in the reserved buffer space to generate the first packet; and transmitting the first packet from the network interface over a network to a receiver. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A system for assembling a plurality of packet fragments into a packet for transmission from a network interface, the system comprising:
-
a central processing unit; a system memory coupled to the central processing unit; and the network interface coupled to the system memory and the central processing unit, the network interface configured to; determine at the network interface that received data is a first packet fragment associated with a first packet, store the first packet fragment in a reserved buffer space in a network interface local memory corresponding to the first packet, wherein the reserved buffer space stores one or more different packet fragments associated with the first packet, determine that the first packet fragment is valid by matching a first checksum included in the first packet fragment with a second checksum included in a second packet fragment stored in the reserved buffer space, sort the one or more different packet fragments stored in the reserved buffer space based on a fragment number associated with each of the packet fragments, determine, at a predetermined time interval, that the one or more different packet fragments associated with the first packet stored in the reserved buffer space constitute all packet fragments associated with the first packet, combining the one or more different packet fragments associated with the first packet stored in the reserved buffer space to generate the first packet, and transmit the first packet from the network interface over a network to a receiver. - View Dependent Claims (17, 18, 19, 20)
-
Specification