METHOD AND SYSTEM FOR DISTRIBUTING NETWORK TRAFFIC AMONG MULTIPLE DIRECT HARDWARE ACCESS DATAPATHS
First Claim
1. A system for distributing network traffic among multiple direct hardware access datapaths, comprising:
- a processor operatively connected to a host computer system;
a plurality of activated physical network interface cards (PNICs) operatively connected to the host computer system, wherein each one of the plurality of activated PNICs is configured to send and receive data packets over a network, wherein each one of the plurality of activated PNICs is configured with one of a plurality of virtual functions, wherein the plurality of activated PNICs comprises a first activated PNIC configured with a first virtual function from the plurality of virtual functions;
a host operating system executing on the host computer system;
a first virtual machine executing on the host computer system, comprising;
a first virtual network interface card (VNIC); and
a first virtual link aggregator, wherein the first virtual link aggregator is configured to maintain a first list identifying the plurality of activated PNICs;
wherein each one of a plurality of virtual function mappings for the first virtual machine associates the first virtual machine with one of the plurality of virtual functions, wherein the plurality of virtual function mappings comprises a first virtual function mapping associating the first virtual machine with the first virtual function configured for the first activated PNIC,wherein the first virtual link aggregator is further configured to;
select from the first list, the first activated PNIC from the plurality of activated PNICs for servicing a first network connection; and
determine the first virtual function based on the first activated PNIC and the first virtual function mapping, wherein the first VNIC uses the first virtual function to directly transfer network traffic for the first network connection between the first virtual machine and the first activated PNIC, and wherein the first activated PNIC sends network traffic for the first network connection over the network.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for distributing network traffic among direct hardware access datapaths, comprising: a processor; one or more activated PNICs; a host operating system; and a virtual machine (VM). Each activated PNIC sends and receives data packets over a network. Each activated PNIC is configured with a virtual function. The VM includes a VNIC and a virtual link aggregator configured to maintain a list identifying each activated PNIC. Virtual function mappings for the VM associate the VM with virtual functions for the activated PNICs. The virtual link aggregator selects the first activated PNIC for servicing a network connection and determines a virtual function for the first activated PNIC. The VNIC for the first activated PNIC uses the virtual function to directly transfer network traffic for the network connection between the VM and the first activated PNIC.
-
Citations
17 Claims
-
1. A system for distributing network traffic among multiple direct hardware access datapaths, comprising:
-
a processor operatively connected to a host computer system; a plurality of activated physical network interface cards (PNICs) operatively connected to the host computer system, wherein each one of the plurality of activated PNICs is configured to send and receive data packets over a network, wherein each one of the plurality of activated PNICs is configured with one of a plurality of virtual functions, wherein the plurality of activated PNICs comprises a first activated PNIC configured with a first virtual function from the plurality of virtual functions; a host operating system executing on the host computer system; a first virtual machine executing on the host computer system, comprising; a first virtual network interface card (VNIC); and a first virtual link aggregator, wherein the first virtual link aggregator is configured to maintain a first list identifying the plurality of activated PNICs; wherein each one of a plurality of virtual function mappings for the first virtual machine associates the first virtual machine with one of the plurality of virtual functions, wherein the plurality of virtual function mappings comprises a first virtual function mapping associating the first virtual machine with the first virtual function configured for the first activated PNIC, wherein the first virtual link aggregator is further configured to; select from the first list, the first activated PNIC from the plurality of activated PNICs for servicing a first network connection; and determine the first virtual function based on the first activated PNIC and the first virtual function mapping, wherein the first VNIC uses the first virtual function to directly transfer network traffic for the first network connection between the first virtual machine and the first activated PNIC, and wherein the first activated PNIC sends network traffic for the first network connection over the network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer readable storage medium comprising software instructions, which when executed by a processor, perform a method, the method comprising:
-
determining, by a host link aggregator, that a first activated physical network interface card (PNIC) has failed, wherein the first activated PNIC is one of a plurality of activated PNICs operatively connected to a host computer system, and wherein each one of the plurality of activated PNICs is configured to send and receive data packets over a network; based on determining that the first activated PNIC has failed; deactivating, by the host link aggregator, the first activated PNIC; sending, by the host link aggregator, a first message to a first virtual link aggregator hosted on a first virtual machine executing on the host computer system, wherein the first message indicates that the first activated PNIC has failed; receiving, by the first virtual link aggregator, the first message; determining, by the first virtual link aggregator, the first activated PNIC has failed based on the first message; and based on determining that the first activated PNIC has failed; removing, by the first virtual link aggregator, a first entry corresponding with the first activated PNIC from a first list, wherein the first virtual link aggregator is configured to maintain the first list identifying the plurality of activated PNICs. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification