Patent · US Expired

Network adapter utilizing a hashing function for distributing packets to multiple processors for parallel processing

US6631422B1 · kind B1 · utility

82Cited by
4References
28Claims
0Family size

Assignee

Inventors

Key dates

Filing dateAug 26, 1999
Grant dateOct 7, 2003
Priority date
Expiry dateAug 26, 2019

Classification

  • Technology area (CPC H)Electricity
  • CPC primaryH04L69/326
  • WIPO fieldDigital communication
  • WIPO sectorElectrical engineering

Abstract

Network input processing is distributed to multiple CPUs on multiprocessor systems to improve network throughput and take advantage of MP scalability. Packets are received by the network adapter and are distributed to N receive buffer pools set up by the device driver, based on N CPUs being available for input processing of packets. Each receive buffer pool has an associated CPU. Packets are direct memory accessed to one of the N receive buffer pools by using a hashing function, which is based on the source MAC address, source IP address, or the packet's source and destination TCP port numbers, or all or a combination of the foregoing. The hashing mechanism ensures that the sequence of packets within a given communication session will be preserved. Distribution is effected by the network adapter, which sends an interrupt to the CPU corresponding to the receive buffer pool, subsequent to the packet being DMAed into the buffer pool. This optimizes the efficiency of the MP system by eliminating any reliance on the scheduler and increasing the bandwidth between the device driver and the network adapter, while maintaining proper packet sequences. Parallelism is thereby increased on netw…

Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.