Patent ID: 8572288

Claim:
A method for configuring a computing device having an operating system and a first network interface card (NIC) and a second NIC configured as a team to support one or more network connections using load balancing and fail-over techniques, the method comprising: creating, via a bus driver, a first function driver associated with the first NIC and a second function driver associated with the second NIC, wherein the first function driver is configured to couple the first function driver to a software stack within the operating system through a first software binding, and wherein the second function driver is configured to couple the second function driver to the software stack through a second software binding; and creating, via the bus driver, a virtual function driver associated with the first NIC and the second NIC, wherein the virtual function driver is configured to couple the virtual function driver to the software stack through a third software binding, wherein a network resource manager is coupled to each of the first function driver, the second function driver and the virtual function driver through software handles, wherein a first software handle couples the first function driver to a first software object within the network resource manager representing the first NIC to establish a communication channel between the first function driver and the first NIC, a second software handle couples the second function driver to a second software object within the network resource manager representing the second NIC to establish a communication channel between the second function driver and the second NIC, and a third software handle couples the virtual function driver to a third software object within the network resource manager representing the team of NICs; and wherein a user-level process is configured to remove the first software binding between the first function driver and the software stack and the second software binding between the second function driver and the software stack.