Patent ID: 7835356

Claim:
A method comprising: receiving a fragment of a fragmented data frame, the fragmented data frame fragmented into a plurality of fragments, wherein every fragment of the fragmented data frame includes at least a header, the header including at least a packet identifier and a fragment offset, and a first fragment of the plurality of fragments further includes at least a port number, the port number associated with a target partition of a plurality of partitions; calculating from the packet identifier of the fragment a hash key for a location in a hash table; determining from the fragment offset if the fragment is the first fragment; if the fragment is the first fragment of the fragmented data frame, storing at the location in the hash table the packet identifier and the target partition; if the fragment is not the first fragment: retrieving from the location in the hash table the packet identifier and the target partition; if the fragment is not the first fragment and the packet identifier at the location in the hash table matches the packet identifier of the fragment, sending the fragment to the target partition; and if the fragment is not the first fragment and the packet identifier at the location in the hash table does not match the packet identifier of the fragment, sending the fragment to each of the plurality of partitions.