Load balancing packet transmission among multiple transmit rings
OwnerFrancesco R. DiMambroinventor
Life of this patent
Estimating the term…
Loading patent…
OwnerFrancesco R. DiMambroinventor
Estimating the term…
A system and method are provided for using multiple transmit descriptor rings to transmit packets from a computer system. A device driver for a communication interface (e.g., a NIC) receives a packet (e.g., from an upper layer protocol), selects one of the multiple rings and places the packet on the ring. Because the rings are managed in a mutually exclusive manner, packets can be placed on more than one ring at the same time (e.g., by different processors), thus allowing them to be populated in parallel, rather than serially. To select a ring, a packet's destination address, destination port or other characteristic may be hashed, or a modulo of that characteristic over the number of rings may be calculated. Illustratively, all packets in one connection or flow are transmitted through the same ring.
A method of transmitting packets, comprising:
A computer readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method of transmitting packets, the method comprising:
A method of load balancing the transmission of packets among multiple transmit rings, comprising:
A computer readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method of load balancing the transmission of packets among multiple transmit rings, the method comprising:
A computer system, comprising:
Dependencies are inferred from the claim text.