Patent ID: 8341505

Claim:
A non-transitory computer readable medium having computer executable instructions stored thereon, when executed by a processor, perform a method, the method comprising: verifying that a guest driver in a guest operating system (OS) is configured to enforce a resource usage policy, wherein the guest OS resides on a host; mapping a hardware receive ring (HRR) residing on a physical network interface card (NIC) operatively connected to the host to the guest OS, wherein after the mapping the guest OS is configured to receive packets directly from the HRR; removing a write bit from a page in a memory of the host on which the guest driver is loaded; determining, using monitoring information, that the guest OS should not receive packets directly from the HRR, wherein determining, using the monitoring information, that the guest OS should not receive packets directly from the HRR comprises: receiving a first page fault error sent in response to an attempt to write to the page, wherein the first page fault is recorded in the monitoring information; removing an execute bit associated with the page; and receiving, after removing the execute bit, a second page fault error sent in response to an attempt to execute the guest driver, wherein the second page fault is recorded in the monitoring information; in response to the determination: creating a data path from the HRR to a host OS executing on the host; receiving packets for the guest OS from the HRR by the host OS over the data path; and forwarding the packets from the host OS to the guest OS.