CN103164255B - Virtual machine network communication implementation method and monitor of virtual machine and physical host - Google Patents

Virtual machine network communication implementation method and monitor of virtual machine and physical host Download PDF

Info

Publication number
CN103164255B
CN103164255B CN201310068966.4A CN201310068966A CN103164255B CN 103164255 B CN103164255 B CN 103164255B CN 201310068966 A CN201310068966 A CN 201310068966A CN 103164255 B CN103164255 B CN 103164255B
Authority
CN
China
Prior art keywords
microsoft loopback
loopback adapter
network interface
interface card
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310068966.4A
Other languages
Chinese (zh)
Other versions
CN103164255A (en
Inventor
章晓峰
李力军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201310068966.4A priority Critical patent/CN103164255B/en
Publication of CN103164255A publication Critical patent/CN103164255A/en
Application granted granted Critical
Publication of CN103164255B publication Critical patent/CN103164255B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the present invention provides a kind of virtual machine network communication implementation method and monitor of virtual machine and physical host.Virtual machine network communication implementation method of the present invention, including: each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group by VMM;Network transmission requests information by virtual aggregation trawl performance sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated by virtual aggregation trawl performance, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.Achieve virtual machine migration between different hardware equipment to call.

Description

Virtual machine network communication implementation method and monitor of virtual machine and physical host
Technical field
The present embodiments relate to communication technology, particularly relate to a kind of virtual machine network communication implementation method and monitor of virtual machine and physical host.
Background technology
Virtualization is a hot spot technology of present data center, and its core meaning is to aid in data center, and motility and the respond of its environment, with lower TCO, are risen to a new level by large-scale work station.Nowadays central processing unit (CentralProcessingUnit, CPU) develop rapidly with the Intel Virtualization Technology of content, and input/output (Input/Output, I/O) virtualization is the most backward, becoming the performance bottleneck that Intel Virtualization Technology is fast-developing, many hardware vendors all propose for I/O Intel Virtualization Technology and employ different solutions.The virtualization mode compatibility holding driving before and after the earliest is good, but the performance loss that virtualization overhead causes is big.
In order to improve the virtualizing performance of the network equipment, some new Intel Virtualization Technologies are constantly applied in new network interface card, the most single input and output virtualization (SingleRootInputOutputVirtual, it is called for short SRIOV) and virtual machine facility queue (VirtualMachineDeviceQueue is called for short VMDQ).But this virtual machine (VirtualMachine, be called for short VM) directly the virtualization mode of adapter physical equipment reduce monitor of virtual machine (VirtualMachineMonitor, it is called for short VMM) managerial to equipment of program, and the migration between heterogeneous networks equipment cannot be supported, can not embody and virtualize the Inherent advantage that manageability is strong.How between manageability and performance, to carry out balance, propose a new difficult point to industry.
Another kind of I/O Intel Virtualization Technology is network virtualization scheme based on straight-through technology, virtual machine is the most mutual with hardware device, the distribution processor work of hardware device complete paired data bag, management operating system (ManagementOperationSystem, it is called for short OS), only do the work of equipment control, actual network data is not processed.It is little that the advantage of this virtualization mode maximum is exactly performance loss.
Virtual machine is directly and hardware device is mutual, and virtual machine directly uses the technology of the driving of hardware device, causes virtual machine cannot migrate between the physical machine of physical network card of difference virtualization type using owing to network device driver is inconsistent.If certain hardware device breaks down or netting twine drops cannot migrate to normal hardware device, the network that can cause virtual machine is obstructed, thus cannot play the sharpest edges that virtual management is strong.
Summary of the invention
The embodiment of the present invention provides a kind of virtual machine network communication implementation method and monitor of virtual machine and physical host, to improve input and output Intel Virtualization Technology, it is achieved virtual machine migration between different hardware equipment is called.
First aspect, the embodiment of the present invention provides a kind of virtual machine network communication implementation method, is applied to physical host, wherein said physical host includes hardware layer, operate in the monitor of virtual machine VMM on described hardware layer, operate at least one virtual machine on described VMM, including:
Each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group by VMM;
The VMM network transmission requests information by virtual aggregation trawl performance sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;
VMM calls described virtual aggregation network interface card to be allocated by virtual aggregation trawl performance, controls described virtual aggregation network interface card to be allocated and performs described network transmission requests information.
In the first possible implementation of first aspect, each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group and includes by described VMM:
Described at least two physical network card is fictionalized each Microsoft Loopback Adapter of correspondence by VMM respectively;
Each Microsoft Loopback Adapter of physical network card, according to the virtualization type of each physical network card, is configured to Microsoft Loopback Adapter group by VMM.
According to the first possible implementation of first aspect, in the implementation that the second is possible, described virtualization type includes: virtualization type based on single input and output Intel Virtualization Technology and/or virtualization type based on virtual machine facility queue technology.
According to first aspect, in the implementation that the third is possible, the described VMM network transmission requests information by virtual aggregation trawl performance sink virtual machine, from Microsoft Loopback Adapter group, call Microsoft Loopback Adapter, to determine virtual aggregation network interface card to be allocated, including:
The VMM network transmission requests information by virtual aggregation trawl performance sink virtual machine;
The bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter is compared by VMM, obtains comparative result;
VMM calls Microsoft Loopback Adapter according to comparative result from described Microsoft Loopback Adapter group, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively.
According to the third possible implementation of first aspect, in the 4th kind of possible implementation, described VMM determines virtual aggregation network interface card to be allocated according to comparative result from each Microsoft Loopback Adapter, including:
If described demand bandwidth value is less than or equal to the bandwidth value of described Microsoft Loopback Adapter, VMM then selects any one Microsoft Loopback Adapter to be mapped as virtual aggregation network interface card from any described Microsoft Loopback Adapter group, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
If described demand bandwidth value is more than the bandwidth value of described Microsoft Loopback Adapter, VMM then obtains the ratio of described demand bandwidth and the bandwidth of described Microsoft Loopback Adapter, and is compared by the number of described ratio with described Microsoft Loopback Adapter group;
If described ratio is less than or equal to the number of described Microsoft Loopback Adapter group, VMM then respectively selects a Microsoft Loopback Adapter from Microsoft Loopback Adapter group described at least two, and use polymerization technique to be polymerized to a virtual aggregation network interface card, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
If described ratio is more than the number of described Microsoft Loopback Adapter group, VMM then sends virtual aggregation network interface card failure described in the virtual machine application of described network transmission requests information.
Second aspect, the embodiment of the present invention provides a kind of monitor of virtual machine, is applied to physical host, including: Microsoft Loopback Adapter group builds module, for each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group;
Virtual aggregation network interface card to be allocated determines module, for the network transmission requests information by virtual aggregation trawl performance sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;
Virtual aggregation network interface card calling module, for calling described virtual aggregation network interface card to be allocated by virtual aggregation trawl performance, controls described virtual aggregation network interface card to be allocated and performs described network transmission requests information.
In the first possible implementation of second aspect, described Microsoft Loopback Adapter group builds module and includes:
Microsoft Loopback Adapter acquiring unit, for fictionalizing each Microsoft Loopback Adapter of correspondence respectively by described at least two physical network card;
Microsoft Loopback Adapter group construction unit, for the virtualization type according to each physical network card, is configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter of physical network card.
According to a kind of possible implementation of second aspect, in the implementation that the second is possible, virtualization type includes virtualization type based on single input and output Intel Virtualization Technology and/or virtualization type based on virtual machine facility queue technology;
Described Microsoft Loopback Adapter group construction unit specifically for: according to the virtualization type of each physical network card, each Microsoft Loopback Adapter of physical network card is configured to described Microsoft Loopback Adapter group.
According to second aspect, in the third possible implementation of second aspect, described virtual aggregation network interface card to be allocated determines that module includes:
Solicited message receives unit, for by the network transmission requests information of virtual aggregation trawl performance sink virtual machine;
Bandwidth comparing unit, for being compared by the bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter, obtains comparative result;
Network interface card determines unit, for calling Microsoft Loopback Adapter according to comparative result from described Microsoft Loopback Adapter group, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively.
According to the third possible implementation of second aspect, in the 4th kind of possible implementation of second aspect, described network interface card determines that unit specifically includes:
First network interface card determines subelement, if be less than or equal to the bandwidth value of described Microsoft Loopback Adapter for described demand bandwidth value, then select any one Microsoft Loopback Adapter to be mapped as virtual aggregation network interface card from any described Microsoft Loopback Adapter group, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
Ratio determines subelement, if for described demand bandwidth value more than the bandwidth value of described Microsoft Loopback Adapter, then obtaining the ratio of described demand bandwidth and the bandwidth of described Microsoft Loopback Adapter, and compared by the number of described ratio with described Microsoft Loopback Adapter group;
Network interface card polymerization subelement, if be less than or equal to the number of described Microsoft Loopback Adapter group for described ratio, from Microsoft Loopback Adapter group described at least two, then respectively select a Microsoft Loopback Adapter, and use polymerization technique to be polymerized to a virtual aggregation network interface card, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
Apply for unsuccessfully subelement, if for described ratio more than the number of described Microsoft Loopback Adapter group, then sending virtual aggregation network interface card failure described in the virtual machine application of described network transmission requests information.
The third aspect, the embodiment of the present invention provides a kind of physical host, including: hardware layer, operate in the monitor of virtual machine VMM on described hardware layer, operate at least one virtual machine on described monitor of virtual machine VMM, wherein, described VMM is for being configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively;The network transmission requests information of sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated can be the described virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the described virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
In the first possible implementation of the third aspect, described VMM specifically for:
Described at least two physical network card is fictionalized respectively each Microsoft Loopback Adapter of correspondence;
Virtualization type according to each physical network card, is configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter of physical network card;The network transmission requests information of sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
According to the third aspect, in the implementation that the second of the third aspect is possible, described VMM specifically for:
The network transmission requests information of described virtual machine is received by virtual aggregation trawl performance;
The bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter is compared, obtains comparative result;
From described Microsoft Loopback Adapter group, Microsoft Loopback Adapter is called according to comparative result, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
Virtual machine network communication implementation method, monitor of virtual machine and the physical host that the embodiment of the present invention provides, by Microsoft Loopback Adapter corresponding for physical network card is configured to Microsoft Loopback Adapter group, and use unified Microsoft Loopback Adapter driving to call Microsoft Loopback Adapter, owing in prior art, virtual machine directly uses the driving of physical network card, but physical network card driving is inconsistent, cause virtual machine cannot migrate between the physical machine using different physical network card.And VMM uses unified Microsoft Loopback Adapter driving to call Microsoft Loopback Adapter in the embodiment of the present invention, therefore, solve virtual machine to a certain extent to carry out migrating the problem called between different physical network cards, simultaneously because introduce Microsoft Loopback Adapter group concept, solve and be polymerized, to doing from the multiple Microsoft Loopback Adapters on same port, the problem made mistakes that causes, and use when virtual machine application Microsoft Loopback Adapter operates polymerization technique to promote the bandwidth of Microsoft Loopback Adapter.
Accompanying drawing explanation
In order to be illustrated more clearly that the embodiment of the present invention or technical scheme of the prior art, the accompanying drawing used required in embodiment or description of the prior art will be briefly described below, apparently, accompanying drawing in describing below is some embodiments of the present invention, for those of ordinary skill in the art, on the premise of not paying creative work, it is also possible to obtain other accompanying drawing according to these accompanying drawings.
The flow chart of the virtual machine network communication implementation method that Fig. 1 is provided by the embodiment of the present invention one;
The flow chart of the virtual machine network communication implementation method that Fig. 2 is provided by the embodiment of the present invention two;
The flow chart of the virtual machine network communication implementation method that Fig. 3 is provided by the embodiment of the present invention three;
The flow chart of the virtual machine network communication implementation method that Fig. 4 is provided by the embodiment of the present invention four;
The structural representation of a kind of physical host that Fig. 5 A is provided by the various embodiments described above of the present invention;
The structural representation of the another kind of physical host that Fig. 5 B is provided by the various embodiments described above of the present invention;
The structural representation of the monitor of virtual machine that Fig. 6 is provided by the embodiment of the present invention five;
The structural representation of the monitor of virtual machine that Fig. 7 is provided by the embodiment of the present invention six;
The structural representation of the another kind of physical host that Fig. 8 is provided by the embodiment of the present invention seven.
Detailed description of the invention
For making the purpose of the embodiment of the present invention, technical scheme and advantage clearer, below in conjunction with the accompanying drawing in the embodiment of the present invention, technical scheme in the embodiment of the present invention is clearly and completely described, obviously, described embodiment is a part of embodiment of the present invention rather than whole embodiments.Based on the embodiment in the present invention, the every other embodiment that those of ordinary skill in the art are obtained under not making creative work premise, broadly fall into the scope of protection of the invention.
To facilitate understanding of the present embodiment of the invention, the several key elements that can introduce first are introduced during the embodiment of the present invention describes at this.
VMM: e.g. XenHypervisor.VMM is as management level, in order to complete the management of hardware resource, distribution;Virtual hardware platform is presented for virtual machine;Realize scheduling and the isolation of virtual machine.Wherein, each virtual machine that virtual hardware platform runs on which provides various hardware resources, as provided virtual processor (such as VCPU), virtual memory, virtual disk, Microsoft Loopback Adapter etc..
VM: one or the virtual computer of multiple stage can be simulated on a physical computer by software virtual machine, and these virtual machines are operated just as real computer, operating system and application program can be installed on virtual machine, in the present invention, Client OS (GuestOperateSystem is called for short GuestOS) is installed on a virtual machine.Virtual machine may also access Internet resources.For the application program run in virtual machine, it similarly is to be operated in real computer.
Microsoft Loopback Adapter group builds module: in the present invention, introduces Microsoft Loopback Adapter group at VMM layer and builds module, and Microsoft Loopback Adapter group builds module and is configured to Microsoft Loopback Adapter group for each Microsoft Loopback Adapter that the physical network card that difference virtualizes type is corresponding respectively.
Hardware layer: the hardware platform that virtualized environment runs.Wherein, hardware layer can include multiple hardwares, such as certain hardware layer calculating node can include processor (such as CPU) and internal memory, it is also possible to includes network interface card, memorizer etc. high speed/low speed input/output (Input/Output is called for short I/O) equipment.
Embodiment one
The flow chart of the virtual machine network communication implementation method that Fig. 1 is provided by the embodiment of the present invention one.The method of the present embodiment is applicable to the situation of virtual machine call physical network card.The method can be by being arranged in monitor of virtual machine execution, and this device generally realizes in the way of hardware and/or software, can be integrated in all kinds of network equipment that can configure virtual machine.With reference to Fig. 1, the virtual machine network communication implementation method of the embodiment of the present invention comprises the steps:
Each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group by step 110, VMM;
In step 110, each Microsoft Loopback Adapter that each physical network card of every kind of virtualization type fictionalizes can be configured to a Microsoft Loopback Adapter group according to the virtualization type of each physical network card by VMM.
Step 120, the VMM network transmission requests information by virtual aggregation trawl performance sink virtual machine, and call Microsoft Loopback Adapter in being driven from described Microsoft Loopback Adapter group by unified Microsoft Loopback Adapter, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated can be the described virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the described virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;
In the step 120, the network transmission requests information of virtual aggregation trawl performance sink virtual machine, and call unified Microsoft Loopback Adapter driving according to described network transmission requests information, unified Microsoft Loopback Adapter is driven through and calls each physical network card and concentrate bottom layer driving identify each Microsoft Loopback Adapter in corresponding Microsoft Loopback Adapter group and call Microsoft Loopback Adapter accordingly, wherein, identify that each Microsoft Loopback Adapter in corresponding Microsoft Loopback Adapter group can identify according to each Microsoft Loopback Adapter in each Microsoft Loopback Adapter group.Concrete, respectively virtual aggregation trawl performance, unified virtual aggregation trawl performance and concentration bottom layer driving are introduced: the virtual aggregation trawl performance in the present invention is VCPU control and the program using virtual aggregation network interface card.Unified Microsoft Loopback Adapter drives each Microsoft Loopback Adapter being used to each physical network card is corresponding to be respectively managed collectively, and enables to virtual machine migration between the physical machine using different physical network card.Concentrate the corresponding bottom layer driving of physical network card of bottom layer driving e.g. SRIOV virtualization type or virtualize the corresponding bottom layer driving of physical network card of type for VMDQ, directly the Microsoft Loopback Adapter that physical network card is corresponding can be called during using network by the corresponding bottom layer driving of physical network card.Described virtual aggregation network interface card to be allocated (VirtualPartitionAggregation, be called for short VPA) can be directly to obtain a Microsoft Loopback Adapter from any one Microsoft Loopback Adapter group, and this Microsoft Loopback Adapter is mapped to VPA, using this VPA as VPA to be allocated;Can also be from least two Microsoft Loopback Adapter group, respectively randomly choose a Microsoft Loopback Adapter respectively, and use polymerization technique to be polymerized to a VPA, using this VPA as VPA to be allocated.Polymerization technique mentioned in the present invention belongs to industry prior art, admittedly do not repeat them here.
Step 130, VMM call described virtual aggregation network interface card to be allocated by virtual aggregation trawl performance, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
By judging the virtualization type of physical network card, and each Microsoft Loopback Adapter of correspondence is gone out according to the virtualization type Virtual of each physical network card, and each Microsoft Loopback Adapter that the physical network card of each virtualization type fictionalized is configured to a Microsoft Loopback Adapter group, realize virtual machine to migrate between the physical machine using different physical network card, and use when virtual machine application Microsoft Loopback Adapter operates polymerization technique promote the bandwidth of Microsoft Loopback Adapter and use unified Microsoft Loopback Adapter driving to call Microsoft Loopback Adapter.
The virtual machine network communication implementation method that the embodiment of the present invention provides, by considering the virtualization type of physical network card and building Microsoft Loopback Adapter group, and use unified Microsoft Loopback Adapter driving to call the Microsoft Loopback Adapter determined, solve the problem that virtual machine can not carry out migrating between the physical machine using different physical network card, simultaneously because introduce Microsoft Loopback Adapter group concept, solve and be polymerized, to doing from the multiple Microsoft Loopback Adapters on same port, the problem made mistakes that causes, and the polymerization technique used when virtual machine application Microsoft Loopback Adapter operates improves VPA bandwidth.
Embodiment two
The flow chart of the virtual machine network communication implementation method that Fig. 2 is provided by the embodiment of the present invention two, on the basis of above-described embodiment technical scheme, is optimized further.With reference to Fig. 2, in the embodiment of the present invention, each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to the operation of Microsoft Loopback Adapter group and specifically includes following steps:
At least two physical network card is fictionalized each Microsoft Loopback Adapter of correspondence by step 111, VMM respectively;
Each Microsoft Loopback Adapter of physical network card, according to the virtualization type of each physical network card, is configured to Microsoft Loopback Adapter group by step 112, VMM.
Virtualization type includes virtualization type based on SRIOV technology and/or virtualization type based on VMDQ technology etc., or is common network interface card that can not be virtual.If the then physical network card of general type, then by this general type physical network card through one Microsoft Loopback Adapter of the most virtual acquisition.Virtualization type according to each physical network card, by as follows for process that each Microsoft Loopback Adapter of physical network card is configured to Microsoft Loopback Adapter group: illustrate as a example by two physical network cards, two physical network cards are respectively physical network card and the physical network card of virtualization type based on VMDQ technology of virtualization types based on SRIOV technology.For virtualizing the physical network card of type based on SRIOV technology, the physical network card of each virtualization type based on SRIOV technology is fictionalized M network interface card SR1 to SRM;For virtualizing the physical network card of type based on VMDQ technology, the physical network card of each virtualization type based on VMDQ technology is fictionalized M network interface card VQ1 to VQM, wherein, the value of M is at least above 2, Microsoft Loopback Adapter group builds module and detects all network interface cards that the physical network card in VMM fictionalizes, and all network interface cards fictionalized by the physical network card in VMM are mapped as Microsoft Loopback Adapter VP, all of Microsoft Loopback Adapter VP and unified Microsoft Loopback Adapter can be used to drive call.Microsoft Loopback Adapter group builds module can also judge the physical network card belonging to each Microsoft Loopback Adapter VP, and according to the virtualization type of the physical network card belonging to each Microsoft Loopback Adapter VP, is named each Microsoft Loopback Adapter VP.All Microsoft Loopback Adapter VP Uniform Name of the physical network card such as belonging to SRIOV virtualization type are VP11 to VP1M;All Microsoft Loopback Adapter VP Uniform Name of the physical network card belonging to VMDQ virtualization type are VP21 to VP2M.VP11 to VP1M is configured to a Microsoft Loopback Adapter group, and VP21 to VP2M is configured to another Microsoft Loopback Adapter group.
The virtual machine network communication implementation method that the embodiment of the present invention provides, by introducing Microsoft Loopback Adapter group concept, the virtualization type classification each Microsoft Loopback Adapter from different port of physical network card can be passed through, avoid and cause, to doing to be polymerized from the multiple Microsoft Loopback Adapters on same port, the problem made mistakes, solve virtual machine and can not use the problem carrying out migrating between the physical machine of physical network card of difference virtualization type, and the polymerization technique used when virtual machine application Microsoft Loopback Adapter operates improves VPA bandwidth.
Embodiment three
The flow chart of the virtual machine network communication implementation method that Fig. 3 is provided by the embodiment of the present invention three, on the basis of above-described embodiment one technical scheme, is optimized further.With reference to Fig. 3, in the embodiment of the present invention, by the network transmission requests information of virtual aggregation trawl performance sink virtual machine, from Microsoft Loopback Adapter group, call Microsoft Loopback Adapter, to determine that the operation of virtual aggregation network interface card to be allocated specifically includes following steps:
Step 121, the VMM network transmission requests information by virtual aggregation trawl performance sink virtual machine;
The bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter is compared by step 122, VMM, obtains comparative result;
In step 122, the bandwidth of one Microsoft Loopback Adapter is the bandwidth randomly selecting a Microsoft Loopback Adapter from any one Microsoft Loopback Adapter group, and the bandwidth value of each Microsoft Loopback Adapter is the most equal.
Step 123, VMM call Microsoft Loopback Adapter according to comparative result from described Microsoft Loopback Adapter group, to determine VPA to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively.
The virtual machine network communication implementation method that the embodiment of the present invention provides, can be any one Microsoft Loopback Adapter that virtual machine distributes in any one Microsoft Loopback Adapter group by virtual aggregation trawl performance, facilitate implementation virtual machine physical network card is called, also allow for using other physical network cards when certain physical network card fault.
Embodiment four
The flow chart of the virtual machine network communication implementation method that Fig. 4 is provided by the embodiment of the present invention four, on the basis of above-described embodiment three technical scheme, is optimized further.With reference to Fig. 4, in the embodiment of the present invention, according to comparative result, VMM determines that from each Microsoft Loopback Adapter the operation of VPA specifically includes following steps:
If step 1231 described demand bandwidth value is less than or equal to the bandwidth value of described Microsoft Loopback Adapter, VMM then selects any one Microsoft Loopback Adapter to be mapped as VPA from any one of Microsoft Loopback Adapter group, and wherein this VPA is as the VPA to described virtual machine to be allocated;
In step 1231, from any one Microsoft Loopback Adapter group, select any one Microsoft Loopback Adapter, this Microsoft Loopback Adapter is mapped as VPA, this VPA is supplied to virtual machine as the Microsoft Loopback Adapter distributed and uses.
If step 1232 described demand bandwidth value is more than the bandwidth value of described Microsoft Loopback Adapter, VMM then obtains the ratio of described demand bandwidth and the bandwidth of described Microsoft Loopback Adapter, and is compared by the number of described ratio with described Microsoft Loopback Adapter group;
If the described ratio of step 1233 is less than or equal to the number of described Microsoft Loopback Adapter group, VMM then respectively selects a Microsoft Loopback Adapter from Microsoft Loopback Adapter group described at least two, and use polymerization technique to be polymerized to a VPA, wherein this VPA is as the VPA to described virtual machine to be allocated;
In step 1233, if described ratio is less than or equal to the number of described Microsoft Loopback Adapter group, from at least two Microsoft Loopback Adapter group, then respectively select a Microsoft Loopback Adapter, polymerization technique is used to be polymerized to a VPA, such as, if described ratio is more than 1 and less than or equal to 2, from two Microsoft Loopback Adapter groups, respectively take a Microsoft Loopback Adapter the most respectively and use polymerization technique to be polymerized to a VPA, using this VPA as to be allocated to the VPA of virtual machine, if described ratio is more than 2 and less than or equal to 3, from three Microsoft Loopback Adapter groups, respectively take a Microsoft Loopback Adapter the most respectively and use polymerization technique to be polymerized to a VPA, using this VPA as to be allocated to the VPA of virtual machine, by that analogy, do not repeat them here.
If the described ratio of step 1234 is more than the number of described Microsoft Loopback Adapter group, VMM then sends virtual aggregation network interface card failure described in the virtual machine application of described network transmission requests information.
The virtual machine network communication implementation method that the embodiment of the present invention provides, the demand bandwidth carried by comparing cell transmission solicited message and the bandwidth of a Microsoft Loopback Adapter, so that it is determined that VPA to be allocated.When virtual machine application Microsoft Loopback Adapter operates, if polymerization technique can be used when the bandwidth of a Microsoft Loopback Adapter can not meet the demand bandwidth of virtual machine application, improve VPA bandwidth to meet its demand.
Virtual machine network communication implementation method by allowing the above embodiment of the present invention be provided is more directly perceived, and special cooperation Fig. 5 A is illustrated, the structural representation of a kind of physical host that Fig. 5 A is provided by the various embodiments described above of the present invention.With reference to Fig. 5 A, this physical host 500 includes hardware layer 510, operates in the monitor of virtual machine VMM520 on described hardware layer, operates at least one virtual machine 530,531,532 on described monitor of virtual machine VMM ....Wherein, described VMM520 is for being configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively;The network transmission requests information of sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated can be the described virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the described virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
In one implementation, described VMM520 specifically for:
Described at least two physical network card is fictionalized respectively each Microsoft Loopback Adapter of correspondence;
Virtualization type according to each physical network card, is configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter of physical network card;The network transmission requests information of sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
In another kind of implementation, described VMM520 specifically for:
The network transmission requests information of described virtual machine is received by virtual aggregation trawl performance;
The bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter is compared, obtains comparative result;
From described Microsoft Loopback Adapter group, Microsoft Loopback Adapter is called according to comparative result, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
It should be appreciated that the function of the VMM in physical host in the embodiment of the present invention is with reference to preceding method embodiment and the device embodiment of follow-up monitor of virtual machine, repeat no more here.
Virtual machine network communication implementation method by allowing the above embodiment of the present invention be provided is more directly perceived, and special cooperation Fig. 5 B is illustrated, the structural representation of the another kind of physical host that Fig. 5 B is provided by the various embodiments described above of the present invention.With reference to Fig. 5 B, this physical host 500 includes hardware layer 510, operates in the monitor of virtual machine VMM520 on described hardware layer, operates at least one virtual machine 530 on described monitor of virtual machine VMM.In the present invention, only it is configured with as a example by two physical network cards virtualizing types and virtual machine 530 by physical host 500 and illustrates.The Microsoft Loopback Adapter VF1 of technology, Microsoft Loopback Adapter VQ1 based on VMDQ technology and common network interface card NIC is led directly to based on SRIOV if be mounted with on physical host 500 simultaneously.It is VPGroup1 that the Microsoft Loopback Adapter VF1 leading directly to technology based on SRIOV is mapped as a Microsoft Loopback Adapter group by VMM520, and this Microsoft Loopback Adapter group comprises three Microsoft Loopback Adapters on port Port1, and these three Microsoft Loopback Adapters are respectively VP11, VP12 and VP13;In like manner lead directly to the Microsoft Loopback Adapter VQ1 of technology to be mapped as another Microsoft Loopback Adapter group being VPGroup2 based on VMDQ, this Microsoft Loopback Adapter group comprises three Microsoft Loopback Adapters on port Port2, and these three Microsoft Loopback Adapters are respectively VP21, VP22 and VP23.Network transmission requests information according to virtual machine 530 can select any one Microsoft Loopback Adapter from VPGroup1, selects any one Microsoft Loopback Adapter from VPGroup2.If selecting VP11 from VPGroup1, VP21 is selected from VPGroup2, then link aggregate control protocol (LinkAggregateContro1Protoco1 is used, LACP) VP11 Yu VP21 is polymerized to a virtual aggregation network interface card VPA1 and is supplied to virtual machine 530 to meet the network transmission requests of virtual machine 530, or from VPGroup1, select VP12, from VPGroup2, select VP21, then use LACP that VP12 Yu VP21 is polymerized to a virtual aggregation network interface card VPA2 and be supplied to virtual machine 530 to meet the network transmission requests of virtual machine 530.General type network interface card NIC on port Port3 can also unify to be mapped to the structure of VPA and i.e. map and become VPA3, therefore, uses Intel Virtualization Technology to shield the difference of different physical network card at VMM layer, directly provides compatibility alternately with unified VPA for virtual machine.
Shown in Fig. 5 B is that the Microsoft Loopback Adapter that the physical network cards based on different Intel Virtualization Technologies on different port are fictionalized is polymerized, the invention is not restricted to this, it is also possible to the Microsoft Loopback Adapter fictionalizing the physical network card based on identical Intel Virtualization Technology on different port is polymerized.
Embodiment five
The structural representation of the monitor of virtual machine that Fig. 6 is provided by the embodiment of the present invention five, the embodiment of the present invention is applicable to virtual machine and is using the situation carrying out migrating between the physical machine of physical network card of different virtualization types, is also applied for during one Microsoft Loopback Adapter operation of virtual machine application providing the Microsoft Loopback Adapter meeting its demand for the situation of virtual machine.With reference to Fig. 6, embodiment of the present invention monitor of virtual machine includes such as lower module: Microsoft Loopback Adapter group builds module 510, virtual aggregation network interface card to be allocated determines module 520 and virtual aggregation network interface card calling module 530.
Wherein, Microsoft Loopback Adapter group builds module 510 for each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group;Virtual aggregation network interface card to be allocated determines that module 520 is for the network transmission requests information by virtual aggregation trawl performance sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine VPA to be allocated, wherein, described virtual aggregation network interface card to be allocated can be the described virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the described virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Virtual aggregation network interface card calling module 530, for calling described VPA to be allocated by virtual aggregation trawl performance, controls described VPA to be allocated and performs described network transmission requests information.
Microsoft Loopback Adapter group builds module 510 and includes Microsoft Loopback Adapter acquiring unit 511 and Microsoft Loopback Adapter group construction unit 512.Wherein, Microsoft Loopback Adapter acquiring unit 511 for fictionalizing each Microsoft Loopback Adapter of correspondence respectively by described at least two physical network card;Each Microsoft Loopback Adapter of physical network card, for the virtualization type according to each physical network card, is configured to Microsoft Loopback Adapter group by Microsoft Loopback Adapter group construction unit 512.Build Microsoft Loopback Adapter group mainly according to the virtualization type of each physical network card, each Microsoft Loopback Adapter that each physical network card of virtualization type fictionalizes is configured to a Microsoft Loopback Adapter group;If the physical network card of general type, then by this general type physical network card through one VPA of the most virtual acquisition, wherein, virtualization type can include virtualization type based on SRIOV technology and/or virtualization type based on VMDQ technology.
The monitor of virtual machine that the embodiment of the present invention provides, by considering the virtualization type of physical network card and building Microsoft Loopback Adapter group, and use unified Microsoft Loopback Adapter driving to call the Microsoft Loopback Adapter determined, solve the problem that virtual machine can not carry out migrating between the physical machine using different physical network card, simultaneously because introduce Microsoft Loopback Adapter group concept, solve and be polymerized, to doing from the multiple Microsoft Loopback Adapters on same port, the problem made mistakes that causes, and the polymerization technique used when virtual machine application Microsoft Loopback Adapter operates improves VPA bandwidth.
Embodiment six
On the basis of embodiment illustrated in fig. 6, the structural representation of the monitor of virtual machine that Fig. 7 is provided by the embodiment of the present invention six, with reference to Fig. 7, virtual aggregation network interface card to be allocated determines that module includes such as lower unit: solicited message receives unit 521, bandwidth comparing unit 522 and network interface card and determines unit 523.
Wherein solicited message receives unit 521 for by the network transmission requests information of virtual aggregation trawl performance sink virtual machine;Bandwidth comparing unit 522 is used for the bandwidth of demand bandwidth and Microsoft Loopback Adapter network transmission requests information carried and compares, and obtains comparative result;Network interface card determines that unit 523 is for determining VPA to be allocated according to comparative result from each Microsoft Loopback Adapter, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively.
Further, network interface card determine unit 523 specifically for:
If described demand bandwidth value is less than or equal to the bandwidth value of described Microsoft Loopback Adapter, then selecting any one Microsoft Loopback Adapter to be mapped as virtual aggregation network interface card from any described Microsoft Loopback Adapter group, wherein this virtual aggregation network interface card is as the VPA to described virtual machine to be allocated;If described demand bandwidth value is more than the bandwidth value of described Microsoft Loopback Adapter, then obtains the ratio of described demand bandwidth and the bandwidth of described Microsoft Loopback Adapter, and the number of described ratio with described Microsoft Loopback Adapter group is compared;If described ratio is less than or equal to the number of described Microsoft Loopback Adapter group, then respectively selecting a Microsoft Loopback Adapter from Microsoft Loopback Adapter group described at least two, and use polymerization technique to be polymerized to a VPA, wherein this VPA is as the VPA to described virtual machine to be allocated;If described ratio is more than the number of described Microsoft Loopback Adapter group, then send VPA failure described in the virtual machine application of described network transmission requests information.
The monitor of virtual machine that the embodiment of the present invention provides, the demand bandwidth carried by comparing cell transmission solicited message and the bandwidth of a Microsoft Loopback Adapter, so that it is determined that VPA to be allocated.When virtual machine application Microsoft Loopback Adapter operates, if polymerization technique can be used when the bandwidth of a Microsoft Loopback Adapter can not meet the demand bandwidth of virtual machine application, improve VPA bandwidth to meet its demand.
Embodiment seven
The structural representation of the another kind of physical host that Fig. 8 is provided by the embodiment of the present invention seven, with reference to Fig. 8, this physical host 600 includes: at least one processor 601, such as CPU, at least one network interface 604 or other user interfaces 603, memorizer 605, at least one communication bus 602.Communication bus 602 is for realizing the connection communication between these assemblies.This physical host 600 optionally comprises user interface 603, including display, keyboard or pointing device (such as, mouse, trace ball (trackball), touch-sensitive plate or touch sensitive display screen).Memorizer 605 may comprise high-speed RAM memorizer, it is also possible to also includes non-labile memorizer (non-volatilememory), for example, at least one disk memory.Memorizer 605 optionally can comprise at least one storage device being located remotely from aforementioned processor 601.
In some embodiments, memorizer 605 stores following element, executable module or data structure, or their subset, or their superset:
Operating system 6051, comprises various system program, is used for realizing various basic business and processing hardware based task;
Application module 6052, comprises various application program, is used for realizing various applied business.
Application module 6052 including but not limited to, Microsoft Loopback Adapter group builds module 510, virtual aggregation network interface card to be allocated determines module 520 and virtual aggregation network interface card calling module 530.
In application module 6052, the corresponding module implemented in embodiment shown in Figure 6 of each module, is not repeated herein.
Specifically, processor 601 is used for:
Each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group;
Network transmission requests information by virtual aggregation trawl performance sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated can be the described virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the described virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;
Call described virtual aggregation network interface card to be allocated by virtual aggregation trawl performance, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
Further, each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group and includes by processor 601:
Described at least two physical network card is fictionalized respectively each Microsoft Loopback Adapter of correspondence;
Virtualization type according to each physical network card, is configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter of physical network card.
Wherein, described virtualization type includes: virtualization type based on single input and output Intel Virtualization Technology and/or virtualization type based on virtual machine facility queue technology.
Further, the processor 601 network transmission requests information by virtual aggregation trawl performance sink virtual machine, from Microsoft Loopback Adapter group, call Microsoft Loopback Adapter, to determine virtual aggregation network interface card to be allocated, including:
Network transmission requests information by virtual aggregation trawl performance sink virtual machine;
The bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter is compared, obtains comparative result;
From described Microsoft Loopback Adapter group, Microsoft Loopback Adapter is called according to comparative result, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively.
Further, processor 601 determines virtual aggregation network interface card to be allocated according to comparative result from each Microsoft Loopback Adapter, including:
If described demand bandwidth value is less than or equal to the bandwidth value of described Microsoft Loopback Adapter, then select any one Microsoft Loopback Adapter to be mapped as virtual aggregation network interface card from any one of Microsoft Loopback Adapter group, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
If described demand bandwidth value is more than the bandwidth value of described Microsoft Loopback Adapter, then obtains the ratio of described demand bandwidth and the bandwidth of described Microsoft Loopback Adapter, and the number of described ratio with described Microsoft Loopback Adapter group is compared;
If described ratio is less than or equal to the number of described Microsoft Loopback Adapter group, from Microsoft Loopback Adapter group described at least two, then respectively select a Microsoft Loopback Adapter, and use polymerization technique to be polymerized to a virtual aggregation network interface card, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
If described ratio is more than the number of described Microsoft Loopback Adapter group, then send virtual aggregation network interface card failure described in the virtual machine application of described network transmission requests information.
From above-described embodiment, monitor of virtual machine is configured to Microsoft Loopback Adapter group according to by each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively, and use unified Microsoft Loopback Adapter driving to call Microsoft Loopback Adapter, solve the problem that virtual machine can not carry out migrating between the physical machine using different physical network card, simultaneously because introduce Microsoft Loopback Adapter group concept, solve and be polymerized, to doing from the multiple Microsoft Loopback Adapters on same port, the problem made mistakes that causes, and the polymerization technique used when virtual machine application Microsoft Loopback Adapter operates improves VPA bandwidth.
It should be noted that the method that the invention described above embodiment discloses can apply to, in processor 601, be realized by processor 601 in other words.Processor 601 is probably a kind of IC chip, has the executive capability of instruction and data, and the disposal ability of signal.During realizing, each step of said method can be completed by the instruction of the integrated logic circuit of the hardware in processor 601 or software form.Above-mentioned processor can be general processor (CPU), digital signal processor (DSP), special IC (ASIC), ready-made programmable gate array (FPGA) or other PLDs, discrete gate or transistor logic, discrete hardware components.Can realize or perform disclosed each method, step and the logic diagram in the embodiment of the present invention.The processor etc. that general processor can be microprocessor or this processor can also be any routine.Hardware processor can be embodied directly in conjunction with the step of the method disclosed in the embodiment of the present invention to have performed, or combine execution by the hardware in processor and software module and complete.Software module may be located at random access memory, flash memory, read only memory, in the storage medium that this area such as programmable read only memory or electrically erasable programmable memorizer, depositor is ripe.This storage medium is positioned at memorizer 605, and processor reads the information in memorizer 605, completes the step of said method in conjunction with its hardware.
One of ordinary skill in the art will appreciate that: all or part of step realizing above-mentioned each method embodiment can be completed by the hardware that programmed instruction is relevant.Aforesaid program can be stored in a computer read/write memory medium.This program upon execution, performs to include the step of above-mentioned each method embodiment;And aforesaid storage medium includes: the various media that can store program code such as ROM, RAM, magnetic disc or CDs.
Last it is noted that various embodiments above is only in order to illustrate technical scheme, it is not intended to limit;Although the present invention being described in detail with reference to foregoing embodiments, it will be understood by those within the art that: the technical scheme described in foregoing embodiments still can be modified by it, or the most some or all of technical characteristic is carried out equivalent;And these amendments or replacement, do not make the essence of appropriate technical solution depart from the scope of various embodiments of the present invention technical scheme.

Claims (13)

1. a virtual machine network communication implementation method, is applied to physical host, and wherein said physical host includes hardware layer, operate in the monitor of virtual machine VMM on described hardware layer, operate at least one virtual machine on described VMM, it is characterised in that including:
Each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group by VMM;
The VMM network transmission requests information by virtual aggregation trawl performance sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;
VMM calls described virtual aggregation network interface card to be allocated by virtual aggregation trawl performance, controls described virtual aggregation network interface card to be allocated and performs described network transmission requests information.
Virtual machine network communication implementation method the most according to claim 1, it is characterised in that each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group and includes by described VMM:
Described at least two physical network card is fictionalized each Microsoft Loopback Adapter of correspondence by VMM respectively;
Each Microsoft Loopback Adapter of physical network card, according to the virtualization type of each physical network card, is configured to Microsoft Loopback Adapter group by VMM.
Virtual machine network communication implementation method the most according to claim 2, it is characterised in that: described virtualization type includes: virtualization type based on single input and output Intel Virtualization Technology and/or virtualization type based on virtual machine facility queue technology.
Virtual machine network communication implementation method the most according to claim 1, it is characterized in that the described VMM network transmission requests information by virtual aggregation trawl performance sink virtual machine calls Microsoft Loopback Adapter from Microsoft Loopback Adapter group, to determine virtual aggregation network interface card to be allocated, including:
The VMM network transmission requests information by virtual aggregation trawl performance sink virtual machine;
The bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter is compared by VMM, obtains comparative result;
VMM calls Microsoft Loopback Adapter according to comparative result from described Microsoft Loopback Adapter group, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively.
Virtual machine network communication implementation method the most according to claim 4, it is characterised in that described VMM determines virtual aggregation network interface card to be allocated according to comparative result from each Microsoft Loopback Adapter, including:
If described demand bandwidth value is less than or equal to the bandwidth value of described Microsoft Loopback Adapter, VMM then selects any one Microsoft Loopback Adapter to be mapped as virtual aggregation network interface card from any one of Microsoft Loopback Adapter group, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
If described demand bandwidth value is more than the bandwidth value of described Microsoft Loopback Adapter, VMM then obtains the ratio of described demand bandwidth and the bandwidth of described Microsoft Loopback Adapter, and is compared by the number of described demand bandwidth with the ratio of the bandwidth of described Microsoft Loopback Adapter with described Microsoft Loopback Adapter group;
If the ratio of the bandwidth of described demand bandwidth and described Microsoft Loopback Adapter is less than or equal to the number of described Microsoft Loopback Adapter group, VMM then respectively selects a Microsoft Loopback Adapter from Microsoft Loopback Adapter group described at least two, and use polymerization technique to be polymerized to a virtual aggregation network interface card, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
If the ratio of the bandwidth of described demand bandwidth and described Microsoft Loopback Adapter is more than the number of described Microsoft Loopback Adapter group, VMM then sends virtual aggregation network interface card failure described in the virtual machine application of described network transmission requests information.
6. a monitor of virtual machine VMM, is applied to physical host, it is characterised in that including:
Microsoft Loopback Adapter group builds module, for each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively is configured to Microsoft Loopback Adapter group;
Virtual aggregation network interface card to be allocated determines module, for the network transmission requests information by virtual aggregation trawl performance sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;
Virtual aggregation network interface card calling module, for calling described virtual aggregation network interface card to be allocated by virtual aggregation trawl performance, controls described virtual aggregation network interface card to be allocated and performs described network transmission requests information.
VMM the most according to claim 6, it is characterised in that described Microsoft Loopback Adapter group builds module and includes:
Microsoft Loopback Adapter acquiring unit, for fictionalizing each Microsoft Loopback Adapter of correspondence respectively by described at least two physical network card;
Microsoft Loopback Adapter group construction unit, for the virtualization type according to each physical network card, is configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter of physical network card.
VMM the most according to claim 7, it is characterised in that: virtualization type includes virtualization type based on single input and output Intel Virtualization Technology and/or virtualization type based on virtual machine facility queue technology;
Described Microsoft Loopback Adapter group construction unit specifically for: according to the virtualization type of each physical network card, each Microsoft Loopback Adapter of physical network card is configured to described Microsoft Loopback Adapter group.
VMM the most according to claim 6, it is characterised in that described virtual aggregation network interface card to be allocated determines that module includes:
Solicited message receives unit, for by the network transmission requests information of virtual aggregation trawl performance sink virtual machine;
Bandwidth comparing unit, for being compared by the bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter, obtains comparative result;
Network interface card determines unit, for calling Microsoft Loopback Adapter according to comparative result from described Microsoft Loopback Adapter group, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively.
VMM the most according to claim 9, it is characterised in that described network interface card determines that unit includes:
First network interface card determines subelement, if be less than or equal to the bandwidth value of described Microsoft Loopback Adapter for described demand bandwidth value, then select any one Microsoft Loopback Adapter to be mapped as virtual aggregation network interface card from any described Microsoft Loopback Adapter group, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
Ratio determines subelement, if be more than the bandwidth value of described Microsoft Loopback Adapter for described demand bandwidth value, then obtain the ratio of described demand bandwidth and the bandwidth of described Microsoft Loopback Adapter, and the number of described demand bandwidth with the ratio of the bandwidth of described Microsoft Loopback Adapter with described Microsoft Loopback Adapter group is compared;
Network interface card polymerization subelement, if the ratio for described demand bandwidth with the bandwidth of described Microsoft Loopback Adapter is less than or equal to the number of described Microsoft Loopback Adapter group, from Microsoft Loopback Adapter group described at least two, then respectively select a Microsoft Loopback Adapter, and use polymerization technique to be polymerized to a virtual aggregation network interface card, wherein this virtual aggregation network interface card as to be allocated to the virtual aggregation network interface card of described virtual machine;
Applying for unsuccessfully subelement, if being used for the ratio number more than described Microsoft Loopback Adapter group of the bandwidth of described demand bandwidth and described Microsoft Loopback Adapter, then sending virtual aggregation network interface card failure described in the virtual machine application of described network transmission requests information.
11. 1 kinds of physical hosts, it is characterized in that, including: hardware layer, operate in the monitor of virtual machine VMM on described hardware layer, operate at least one virtual machine on described monitor of virtual machine VMM, wherein, described VMM is for being configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter that at least two physical network card is corresponding respectively;The network transmission requests information of sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
12. physical hosts according to claim 11, it is characterised in that described VMM specifically for:
Described at least two physical network card is fictionalized respectively each Microsoft Loopback Adapter of correspondence;
Virtualization type according to each physical network card, is configured to Microsoft Loopback Adapter group by each Microsoft Loopback Adapter of physical network card;The network transmission requests information of sink virtual machine, and from described Microsoft Loopback Adapter group, call Microsoft Loopback Adapter by unified Microsoft Loopback Adapter driving, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
13. physical hosts according to claim 11, it is characterised in that described VMM specifically for:
The network transmission requests information of described virtual machine is received by virtual aggregation trawl performance;
The bandwidth value of the demand bandwidth value carried in described network transmission requests information and a Microsoft Loopback Adapter is compared, obtains comparative result;
From described Microsoft Loopback Adapter group, Microsoft Loopback Adapter is called according to comparative result, to determine virtual aggregation network interface card to be allocated, wherein, described virtual aggregation network interface card to be allocated is the virtual aggregation network interface card that a described Microsoft Loopback Adapter maps, or for selecting a Microsoft Loopback Adapter the virtual aggregation network interface card using polymerization technique to be polymerized from Microsoft Loopback Adapter group described at least two respectively;Call described virtual aggregation network interface card to be allocated, control described virtual aggregation network interface card to be allocated and perform described network transmission requests information.
CN201310068966.4A 2013-03-04 2013-03-04 Virtual machine network communication implementation method and monitor of virtual machine and physical host Active CN103164255B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310068966.4A CN103164255B (en) 2013-03-04 2013-03-04 Virtual machine network communication implementation method and monitor of virtual machine and physical host

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310068966.4A CN103164255B (en) 2013-03-04 2013-03-04 Virtual machine network communication implementation method and monitor of virtual machine and physical host

Publications (2)

Publication Number Publication Date
CN103164255A CN103164255A (en) 2013-06-19
CN103164255B true CN103164255B (en) 2016-08-03

Family

ID=48587372

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310068966.4A Active CN103164255B (en) 2013-03-04 2013-03-04 Virtual machine network communication implementation method and monitor of virtual machine and physical host

Country Status (1)

Country Link
CN (1) CN103164255B (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580011B (en) * 2013-10-23 2017-12-15 新华三技术有限公司 A kind of data forwarding device and method
CN103795621B (en) * 2013-12-12 2017-02-15 华为技术有限公司 Virtual machine data exchange method and device, and physical host
CN104219093B (en) * 2014-08-30 2017-09-12 杭州华为数字技术有限公司 Network interface card function configuration method and relevant device
CN104883302B (en) * 2015-03-18 2018-11-09 华为技术有限公司 A kind of method, apparatus and system of data packet forwarding
CN108351795A (en) * 2015-10-30 2018-07-31 华为技术有限公司 Method and system for maps virtual machine communication path
CN107807840B (en) * 2016-09-09 2022-01-25 阿里巴巴集团控股有限公司 Equipment direct connection method and device applied to virtual machine network
CN108632155B (en) * 2017-03-16 2021-11-23 网宿科技股份有限公司 Cloud platform traffic scheduling method and system and computer-readable storage medium
EP4187384A4 (en) * 2020-08-03 2023-11-15 Huawei Technologies Co., Ltd. Method and system for binding multiple physical devices as virtual device, and related device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8060875B1 (en) * 2006-05-26 2011-11-15 Vmware, Inc. System and method for multiple virtual teams
CN102394831A (en) * 2011-11-28 2012-03-28 杭州华三通信技术有限公司 Flow uninterruptible method and device based on virtual machine VM (virtual memory) migration
CN102609298A (en) * 2012-01-11 2012-07-25 中国科学技术大学苏州研究院 Network card virtualizing system and network card virtualizing method on basis of hardware array expansion
CN102790777A (en) * 2012-08-07 2012-11-21 华为技术有限公司 Network interface adapter register method as well as drive equipment and server
CN102932174A (en) * 2012-10-25 2013-02-13 华为技术有限公司 Method, device and physical host for managing physical network card

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8060875B1 (en) * 2006-05-26 2011-11-15 Vmware, Inc. System and method for multiple virtual teams
CN102394831A (en) * 2011-11-28 2012-03-28 杭州华三通信技术有限公司 Flow uninterruptible method and device based on virtual machine VM (virtual memory) migration
CN102609298A (en) * 2012-01-11 2012-07-25 中国科学技术大学苏州研究院 Network card virtualizing system and network card virtualizing method on basis of hardware array expansion
CN102790777A (en) * 2012-08-07 2012-11-21 华为技术有限公司 Network interface adapter register method as well as drive equipment and server
CN102932174A (en) * 2012-10-25 2013-02-13 华为技术有限公司 Method, device and physical host for managing physical network card

Also Published As

Publication number Publication date
CN103164255A (en) 2013-06-19

Similar Documents

Publication Publication Date Title
CN103164255B (en) Virtual machine network communication implementation method and monitor of virtual machine and physical host
US10749751B2 (en) Application of profile setting groups to logical network entities
US10990431B2 (en) Virtual machine hot migration method and apparatus, and system
US20190278808A1 (en) Graph data processing method and apparatus, and system
CN102790777B (en) Network interface adapter register method and driving equipment, server
CN102932174A (en) Method, device and physical host for managing physical network card
CN111399970B (en) Reserved resource management method, device and storage medium
CN105790991A (en) Link aggregation method and system for virtualization server and intelligent network adapter thereof
US11599395B2 (en) Dynamic core allocation
CN107479943A (en) Multiple operating system operation method and device based on industry internet operating system
JP5923627B2 (en) Method and apparatus for coordinating I / O channels on a virtual platform
US10764087B2 (en) Open virtualized multitenant network scheme servicing virtual machine and container based connectivity
US9537797B2 (en) MTU management in a virtualized computer system
CN103609077A (en) Method, apparatus and system for data transmission, and physical adapter
US11941406B2 (en) Infrastructure (HCI) cluster using centralized workflows
US9841983B2 (en) Single click host maintenance
US20170329644A1 (en) Computer-readable recording medium having stored therein program, information processing apparatus, information processing system, and method for processing information
CN103336708A (en) Method and related equipment for aggregating network card resources, and computer system
EP3358795B1 (en) Method and apparatus for allocating a virtual resource in network functions virtualization (nfv) network
CN106815067A (en) The online moving method of virtual machine, device with I/O virtualizations
US10742503B2 (en) Application of setting profiles to groups of logical network entities
US11095545B2 (en) Control packet management
CN109032754A (en) The method and apparatus for improving communication path reliability
CN108351802B (en) Computer data processing system and method for communication traffic based optimization of virtual machine communication
CN104834566A (en) Method and related apparatus for adjusting switch port of forwarding and processing thread

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant