Infrastructure driven auto-scaling of workloads
US-2024419470-A1 · Dec 19, 2024 · US
US9021475B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9021475-B2 |
| Application number | US-201213463287-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 3, 2012 |
| Priority date | May 4, 2011 |
| Publication date | Apr 28, 2015 |
| Grant date | Apr 28, 2015 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
This disclosure describes a system for Single Root I/O Virtualization (SR-IOV) pass-thru for network packet processing via a virtualized environment of a device. The system includes a device comprising a virtualized environment and a plurality of virtual machines having a virtual network interface for receiving and transmitting network packets. A driver for the physical network interface of the device creates a plurality of virtual devices corresponding to the physical network interface, which appear as a Peripheral Component Interconnect (PCI) device to the virtualized environment. A virtual device of the plurality of virtual devices is assigned via the virtualized environment to each virtual machine of the plurality of virtual machines. The virtual machine uses the virtual device assigned to the virtual machine, to receive and transmit network packets via the physical network interface of the device.
Opening claim text (preview).
What is claimed: 1. A method for Single Root I/O Virtualization (SR-IOV) pass-thru for network packet processing via a virtualized environment of a device, the method comprising: (a) establishing, on a device, a virtualized environment comprising a service virtual machine creating a plurality of virtual machines, each virtual machine of the plurality of virtual machines having a virtual network interface for receiving and transmitting network packets; (b) accessing, by the service virtual machine, a first driver for a physical network interface of the device to create a plurality of virtual devices responsive to a configuration of the first driver via a user interface provided by the service virtual machine, the plurality of virtual devices corresponding to the physical network interface, the physical network interface comprising a Single Root I/O Virtualization (SR-IOV) enabled device, each virtual device of the plurality of virtual devices appearing as a Peripheral Component Interconnect (PCI) device to the virtualized environment; (c) assigning, via the service virtual machine, a virtual device of the plurality of virtual devices to each virtual machine of the plurality of virtual machines, wherein each virtual machine of the plurality of virtual machines is an unprivileged domain comprising a second driver to communicate to the virtual device; and (d) receiving and transmitting, by the virtual machine using the virtual device assigned to the virtual machine while bypassing the service virtual machine, network packets via the physical network interface of the device. 2. The method of claim 1 , wherein step (a) further comprises executing, by the device intermediary to a plurality of clients and a plurality of severs, each virtual machine of the plurality of virtual machines as one of a virtualized packet processing engine or a virtualized application delivery controller. 3. The method of claim 1 , wherein step (a) further comprises executing, by the device comprising multiple cores, each virtual machine on a corresponding core of the device. 4. The method of claim 1 , wherein step (a) further comprises establishing, by the device, the virtual network interface comprising one of an emulated network interface card or a para-virtualized network interface card. 5. The method of claim 1 , wherein step (b) further comprises accessing the first driver to create a predetermined number of virtual devices for the physical network interface. 6. The method of claim 1 , wherein step (b) further comprises accessing the first driver to create a virtual device that comprises a promiscuous mode. 7. The method of claim 1 , wherein step (c) further comprises assigning, via the service virtual machine, each virtual device to a virtual machine, each virtual machine identified by a global unique identifier. 8. The method of claim 1 , wherein step (d) further comprises receiving and transmitting, by the virtual machine, network packets via the physical network interface of the device without processing of the network packets by the service virtual machine. 9. A system for Single Root I/O Virtualization (SR-IOV) pass-thru for network packet processing via a virtualized environment of a device, the system comprising: a device comprising a virtualized environment; a service virtual machine of the virtualized environment creating a plurality of virtual machines of the virtualized environment; the plurality of virtual machines of the virtualized environment, each virtual machine of the plurality of virtual machines having a virtual network interface for receiving and transmitting network packets; a physical network interface of the device, the physical network interface comprising a Single Root I/O Virtualization (SR-IOV) enabled device; a first driver for the physical network interface of the device accessed by the service virtual machine to create a plurality of virtual devices responsive to a configuration of the first driver via a user interface provided by the service virtual machine, the plurality of virtual devices corresponding to the physical network interface, each virtual device of the plurality of virtual devices appearing as a Peripheral Component Interconnect (PCI) device to the virtualized environment; wherein via the service virtual machine a virtual device of the plurality of virtual devices is assigned to each virtual machine of the plurality of virtual machines, wherein each virtual machine of the plurality of virtual machines is an unprivileged domain comprising a second driver to communicate to the virtual device; and wherein the virtual machine, using the virtual device assigned to the virtual machine, receives and transmits network packets via the physical network interface of the device while bypassing the service virtual machine. 10. The system of claim 9 , wherein the device is intermediary to a plurality of clients and a plurality of severs and each virtual machine of the plurality of virtual machines comprises one of a virtualized packet processing engine or a virtualized application delivery controller. 11. The system of claim 9 , wherein the device comprises multiple cores and the device executes each virtual machine on a corresponding core of the device. 12. The system of claim 9 , wherein the virtual network interface comprises one of an emulated network interface card or a para-virtualized network interface card. 13. The system of claim 9 , wherein the first driver creates a predetermined number of virtual devices for the physical network interface. 14. The system of claim 9 , wherein the first driver creates a virtual device that comprises a promiscuous mode. 15. The system of claim 9 , wherein each virtual device is assigned to a virtual machine, each virtual machine identified by a global unique identifier. 16. The system of claim 9 , wherein the virtual machine receives and transmits network packets via the physical network interface of the device the physical network interface of the device without processing of the network packets by the service virtual machine.
Para-virtualisation, i.e. guest operating system has to be modified · CPC title
where the program performs an interfacing function, e.g. device driver (G06F13/105 takes precedence; contention policies within device drivers G06F9/4881; scheduling within device drivers G06F9/52) · CPC title
I/O management, e.g. providing access to device drivers or storage · CPC title
for initial configuration or provisioning, e.g. plug-and-play · CPC title
Hypervisor-specific management and integration aspects · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.