Patent ID: 8503468

Claim:
A load balancing apparatus comprising: at least one Peripheral Component Interconnect Express (PCIe) high-speed serial link comprising a plurality of lanes; a plurality of network data link layer control functions configured to perform flow controls, each network data link control function coupled to one of a plurality of physical network interface controllers (NICs); and a virtual network interface controller (NIC) coupled with the at least one PCIe high-speed serial link and the plurality of physical network interface controllers (NICs), the virtual network interface controller comprising a data processing unit coupled to a set of data buffers for parsing, processing, and storing a plurality of data packets which are addressed to the virtual network interface controller, wherein each data packet encapsulates a data frame, and wherein the data processing unit is configured to direct the data packets between the physical network interface controllers (NICs) and system images in accordance with load balancing functions of the flow controls, the load balancing functions including: selecting different ones of the physical network interface controllers (NICs) for communication of different ones of the data packets; assigning addresses of the different ones of the physical network interface controllers (NICs) to the different ones of the data packets in accordance with the selection; and forwarding the different ones of the data packets to a plurality of different ports which are associated with respective ones of the assigned addresses of the different ones of the physical network interface controllers (NICs).