a method of controlling bandwidth including receiving and classifying a packet , sending the packet to a hardware receive ring based on a classification of the packet , and sending , in accordance with an operating mode , the packet to a software receive ring , sending the packet from the software receive ring to a virtual network interface card , where the virtual network interface card is associated with a virtual machine , where the operating mode is adjusted to control the bandwidth consumed by the virtual machine .