Patent ID: 8589615

Claim:
A network device, comprising: a memory having a plurality of memory banks; and a packet processor module configured to be coupled to a network, wherein the packet processor module is further configured to receive bursts of packets from the network, wherein the burst of packets received by the packet processor module includes a first packet and a second packet, and segment each of the first packet and the second packet into a plurality of sections corresponding to the plurality of memory banks, wherein the memory is configured to store a first section of the first packet at a first memory bank of the plurality of memory banks, and continue storing remaining sections of the first packet in remaining ones of the plurality of memory banks other than the first memory bank, begin storing the plurality of sections of the second packet at a second memory bank of the plurality of memory banks, wherein the second memory bank is different from the first one of the memory banks, and wherein the second memory bank is offset from the first memory bank by at least 1) a number of memory banks that is less than a total number of memory banks required to store the first packet, or 2) a number of memory banks that is randomly selected for each of the plurality of packets, and continue storing remaining sections of the second packet in remaining ones of the plurality of memory banks other than the second memory bank, wherein each of the sections of the first packet and the second packet includes a first bank identification indicating in which of the plurality of memory banks to store the section, and wherein the network device further comprises a control module configured to, for each of the sections of the first packet and the second packet, overwrite the first bank identification with a second bank identification before the memory begins storing the section.