CN103609077B - Method, apparatus and system for data transmission, and physical adapter - Google Patents
Method, apparatus and system for data transmission, and physical adapter Download PDFInfo
- Publication number
- CN103609077B CN103609077B CN201380000801.1A CN201380000801A CN103609077B CN 103609077 B CN103609077 B CN 103609077B CN 201380000801 A CN201380000801 A CN 201380000801A CN 103609077 B CN103609077 B CN 103609077B
- Authority
- CN
- China
- Prior art keywords
- module
- group
- physical network
- main
- cluster
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Abstract
Embodiments of the present invention provide a method, apparatus and system for data transmission, and a physical adapter. The method comprises determining a main physical function (PF) module, which includes at least two PF modules, in a physical function module group; determining a target virtual function (VF) module cluster managed by the main PF module based on the VF module groups corresponding to the PF modules in the PF module group; allocating the VF modules in the target VF module cluster to at least one virtual machine for realizing data transmission. The method, apparatus and system for data transmission in the embodiments can help the system from having failures and help to reduce a waste of resources.
Description
Technical field
The present invention relates to the communications field, and more particularly, to a kind of methods, devices and systems for data transfer
And physical network card.
Background technology
As the fast-developing basis of cloud computing, Intel Virtualization Technology is at aspects such as calculating, storage, network and cluster managements
Gradually ripe, promote cloud computing in the application of every field.
With CPU(Center Processing Unit, CPU)The development of chip technology, single physical
CPU ability is more and more stronger, using the teaching of the invention it is possible to provide virtual machine number get more and more, simultaneously higher to the performance requirement of physical network card,
The Microsoft Loopback Adapter quantity asking offer gets more and more, and to meet the requirement of more users, improves the utilization rate of cloud resource.Empty in network
In planization, network interface card virtualization, as the key technology solving virtualization last one kilometer, experienced software simulation, virtual machine facility
Queue(Virtual Machine Device Queue, VMDq), single I/O virtualization(Single-Root I/O
Virtualization, SR-IOV)After the development of three phases, SR-IOV technology has become as solution virtualization last one kilometer
Ideal equipment, SR-IOV is used for a high speed peripheral component interlinkage standard(Peripheral Component
Interconnect Express, PCIe)Network card equipment invents at least two PCIe network card equipments, each Virtual PC Ie network interface card
Equipment provides service to virtual machine upper layer software (applications) as physics PCIe network card equipment.
SR-IOV is a kind of technical standard of I/O virtualization it is allowed at least two Microsoft Loopback Adapters supported by a physical equipment.
SR-IOV introduces two kinds of new function types, i.e. physical function(Physical Function, PF)Module and virtual functions
(Virtual Function, VF)Module.Wherein, PF module has whole PCIe functions of SR-IOV, can carry out SR-IOV
Functional configuration and management, VF module has the PCIe function of lightweight, comprises resource necessary to data transfer and a small amount of joining
Put resource.VF module, can be via Virtual Machine Manager layer used as a single PCIe device(Virtual Machine
Management, VMM)Distribute to virtual machine(Virtual Machine, VM)Use.
However, PF module is as the key node of system, once break down, it will cause the system failure and resource wave
Take.
Content of the invention
The embodiment of the present invention provides a kind of methods, devices and systems for data transfer and physical network card, can keep away
Exempt from system malfunctions, and reduce the wasting of resources.
A kind of first aspect, there is provided method for data transfer, including:Physical function PF from the first physical network card
In module group, determine main PF module, this PF module group includes at least two PF modules, in this PF module group, each PF module corresponds to
Different virtual functions VF module groups;Based on each PF module corresponding VF module group in this PF module group, determine this main PF mould
The target VF module cluster of block management, wherein, the VF module in this target VF module cluster is used for distributing at least one virtual machine VM,
So that this at least one VM realizes data transfer.
In conjunction with a first aspect, in the first possible implementation of first aspect, being somebody's turn to do the PF from the first physical network card
In module group, determine main PF module, including:Based on the basic parameter of each of this PF module group PF module, determine this main PF
Module, wherein, the basic parameter of this PF module includes PF module failure number of times, VF module in PF module corresponding VF module group
At least one in number, PF module static bandwidth and PF module static bandwidth.
In conjunction with the first possible implementation of first aspect or first aspect, possible in the second of first aspect
In implementation, the mesh of this main PF module management should be determined based on each PF module corresponding VF module group in this PF module group
Mark VF module cluster, including:Select at least one VF module from each of this PF module group PF module corresponding VF module group,
Form this target VF module cluster.
In conjunction with a first aspect, the first possible implementation of first aspect or the possible reality of the second of first aspect
In existing mode, in the third possible implementation of first aspect, the method also includes:Determine that a PF module makes again
Energy or fault recovery, a PF module is defined as the PF module in this PF module group;Based on a PF module, setting up should
First PF module corresponding VF module group.
In conjunction with a first aspect, or first aspect the first in the third any one possible implementation, first
In 4th kind of possible implementation of aspect, the method also includes:Determine the 2nd PF module being somebody's turn to do from this first physical network card
Delete in PF module group;Discharge the 2nd PF module corresponding VF module group.
In conjunction with a first aspect, or first aspect the first in the 4th kind any one possible implementation, first
In 5th kind of possible implementation of aspect, the method also includes:Determine that the 3rd PF module of this first physical network card occurs
During fault, determine whether the VF module in the 3rd PF module corresponding VF module group can use;Corresponding in the 3rd PF module
When at least one of VF module group VF module can use, by corresponding for PF module VF module group available this at least
One VF module is defined as continuing can use.
In conjunction with a first aspect, or first aspect the first in the 5th kind any one possible implementation, first
In 6th kind of possible implementation of aspect, the method also includes:Determine distribute in this target VF module cluster this at least one
The first VF module of the VM in individual VM breaks down;In each PF module corresponding VF module group from this PF module group,
It is selected differently from the 2nd VF module of a VF module;Update this target VF module cluster.
In conjunction with a first aspect, or first aspect the first in the 6th kind any one possible implementation, first
In 7th kind of possible implementation of aspect, this first physical network card takies at least two high speed peripheral component interlinkage standards
PCIe bus, the method also includes:Determine need by this target VF module cluster with this at least two PCIe bus in first
PCIe bus connect VF module data is activation in this target VF module cluster with this at least two PCIe bus in second
The VF module that PCIe bus connects;The data of the VF module that this is connected with a PCIe bus passes through this first physical network card
Switch is sent to the VF module that this is connected with the 2nd PCIe bus.
In conjunction with a first aspect, or first aspect the first in the 7th kind any one possible implementation, first
In 8th kind of possible implementation of aspect, the method also includes:Determine that this main PF module breaks down;From this PF module group
In, PF module in addition to this main PF module for the selection is as new main PF module;Based on each PF module pair in this PF module group
The VF module group answered, determines the new target VF module cluster of this new main PF module management, wherein, this new target VF module cluster
In VF module be used for distributing at least one virtual machine VM, so that this at least one VM realizes data transfer.
A kind of second aspect, there is provided device for data transfer, including:First determining unit, for from the first thing
In the physical function PF module group of reason network interface card, determine main PF module, this PF module group includes at least two PF modules, this PF module
The different virtual functions VF module group of each PF module correspondence in group;Second determining unit, for based on each in this PF module group
Individual PF module corresponding virtual functions VF module group, determines the target VF module cluster of this main PF module management, wherein, this target VF
VF module in module cluster is used for distributing at least one virtual machine VM, so that this at least one VM realizes data transfer.
In conjunction with second aspect, in the first possible implementation of second aspect, this first determining unit is specifically used
In:Based on the basic parameter of each of this PF module group PF module, determine this main PF module, wherein, the benchmark of this PF module
Parameter includes PF module failure number of times, the number of VF module, PF module static bandwidth and PF in PF module corresponding VF module group
At least one in module static bandwidth.
In conjunction with the first possible implementation of second aspect or second aspect, possible in the second of second aspect
In implementation, this second determining unit specifically for:From each of this PF module group PF module corresponding VF module group
Select at least one VF module, form this target VF module cluster.
In conjunction with second aspect, the first possible implementation of second aspect or the possible reality of the second of second aspect
In existing mode, in the third possible implementation of second aspect, this device also includes:4th determining unit, for true
A fixed PF module enables or fault recovery again, and a PF module is defined as the PF module in this PF module group;Set up
Unit, for based on a PF module, setting up a PF module corresponding VF module group.
In conjunction with second aspect, or the first of second aspect any one possible implementation in the third, second
In 4th kind of possible implementation of aspect, this device also includes:5th determining unit, for determining the 2nd PF module from this
Delete in this PF module group of first physical network card;Releasing unit, for discharging the 2nd PF module corresponding VF module group.
In conjunction with second aspect, or the first of second aspect any one possible implementation in the 4th kind, second
In 5th kind of possible implementation of aspect, this device also includes:6th determining unit, for determining this first physical network card
The 3rd PF module when breaking down, determine whether the VF in the 3rd PF module corresponding VF module group can use;Holding unit,
For at least one of the 3rd PF module corresponding VF module group VF module can use when, will be corresponding for the 3rd PF module
This at least one VF module in VF module group is defined as continuing can use.
In conjunction with second aspect, or the first of second aspect any one possible implementation in the 5th kind, second
In 6th kind of possible implementation of aspect, this device also includes:7th determining unit, for determining this target VF module cluster
In distribute to the VF module of the VM in this at least one VM and break down;Select unit, for from this PF module group
In in each PF module corresponding VF module group, be selected differently from the 2nd VF module of a VF module;Updating block, is used for
Update this target VF module cluster, and the 2nd VF module assignment is given a VM.
In conjunction with second aspect, or the first of second aspect any one possible implementation in the 6th kind, second
In 7th kind of possible implementation of aspect, this first physical network card takies at least two high speed peripheral component interlinkage standards
PCIe bus, this device also includes:8th determining unit, for determine need by this target VF module cluster with this at least two
In PCIe bus the first PCIe bus connect VF module data is activation in this target VF module cluster with this at least two
The VF module that in PCIe bus, the 2nd PCIe bus connects;Transmitting element, for the VF mould being connected this with a PCIe bus
The data of block is sent to, by the switch of this first physical network card, the VF module that this is connected with the 2nd PCIe bus.
In conjunction with second aspect, or the first of second aspect any one possible implementation in the 7th kind, second
In 8th kind of possible implementation of aspect, this device also includes the 3rd determining unit, for determining this main PF module appearance
Fault;This first determining unit is additionally operable to:From this PF module group, PF module in addition to this main PF module for the selection is as new
Main PF module;This second determining unit is additionally operable to:Based on each PF module corresponding VF module group in this PF module group, determining should
The new target VF module cluster of new main PF module management, wherein, the VF module in this new target VF module cluster is used for distributing
To at least one virtual machine VM, so that this at least one VM realizes data transfer.
A kind of third aspect, there is provided device for data transfer, including processor and memorizer;Wherein, this storage
Device store program codes, this processor is used for calling this program code of storage in this memorizer, and execution is following to be operated:From first
In the physical function PF module group of physical network card, determine main PF module, this PF module group includes at least two PF modules, this PF mould
The different virtual functions VF module group of each PF module correspondence in block group;Based on each corresponding void of PF module in this PF module group
Intend function VF module group, determine the target VF module cluster of this main PF module management, wherein, VF module in this target VF module cluster
For distributing at least one virtual machine VM, so that this at least one VM realizes data transfer.
In conjunction with the third aspect, in the first possible implementation of the third aspect, this processor is used for calling this to deposit
This program code of storage in reservoir, concrete execution is following to be operated:Benchmark ginseng based on each of this PF module group PF module
Number, determines this main PF module, wherein, the basic parameter of this PF module includes PF module failure number of times, PF module corresponding VF mould
At least one in the number of VF module, PF module static bandwidth and PF module static bandwidth in block group.
In conjunction with the first possible implementation of the third aspect or the third aspect, possible in the second of the third aspect
In implementation, this processor is used for calling this program code of storage in this memorizer, and concrete execution is following to be operated:From this PF
Select at least one VF module in each of module group PF module corresponding VF module group, form this target VF module cluster.
In conjunction with the third aspect, the first possible implementation of the third aspect or the possible reality of the second of the third aspect
In existing mode, in the third possible implementation of the third aspect, this processor is used for calling storage in this memorizer
This program code, also executes following operation:Determine that a PF module enables or fault recovery again, a PF module is determined
For the PF module in this PF module group;Based on a PF module, set up a PF module corresponding VF module group.
In conjunction with the third aspect, or the first of the third aspect any one possible implementation in the third, the 3rd
In 4th kind of possible implementation of aspect, this processor is used for calling this program code of storage in this memorizer, also holds
Row is following to be operated:Determine that the 2nd PF module is deleted from this PF module group of this first physical network card;Discharge the 2nd PF module
Corresponding VF module group.
In conjunction with the third aspect, or the first of the third aspect any one possible implementation in the 4th kind, the 3rd
In 5th kind of possible implementation of aspect, this processor is used for calling this program code of storage in this memorizer, also holds
Row is following to be operated:When determining that the 3rd PF module of this first physical network card breaks down, determine the corresponding VF of the 3rd PF module
Whether the VF module in module group can use;Can use at least one of the 3rd PF module corresponding VF module group VF module
When, this at least one the VF module available in corresponding for PF module VF module group is defined as continuing can use.
In conjunction with the third aspect, or the first of the third aspect any one possible implementation in the 5th kind, the 3rd
In 6th kind of possible implementation of aspect, this processor is used for calling this program code of storage in this memorizer, also holds
Row is following to be operated:Determine that event in a VF module of the VM distributing in this target VF module cluster in this at least one VM
Barrier;In each PF module corresponding VF module group from this PF module group, it is selected differently from the 2nd VF mould of a VF module
Block;Update this target VF module cluster, and the 2nd VF module assignment is given a VM.
In conjunction with the third aspect, or the first of the third aspect any one possible implementation in the 6th kind, the 3rd
In 7th kind of possible implementation of aspect, this first physical network card takies at least two high speed peripheral component interlinkage standards
PCIe bus, this processor is used for calling this program code of storage in this memorizer, also executes following operation:Determine need by
The data is activation of the VF module being connected with a PCIe bus in this at least two PCIe bus in this target VF module cluster is to this
The VF module being connected with the 2nd PCIe bus in this at least two PCIe bus in target VF module cluster;Should be total with a PCIe
The data of the VF module that line connects is sent to, by the switch of this first physical network card, the VF that this is connected with the 2nd PCIe bus
Module.
In conjunction with the third aspect, or the first of the third aspect any one possible implementation in the 7th kind, the 3rd
In 8th kind of possible implementation of aspect, this processor is used for calling this program code of storage in this memorizer, also holds
Row is following to be operated:Determine that this main PF module breaks down;From this PF module group, select the PF module in addition to this main PF module
As new main PF module;Based on each PF module corresponding VF module group in this PF module group, determine this new main PF module
The new target VF module cluster of management, wherein, the VF module in this new target VF module cluster is used for distributing at least one void
Plan machine VM, so that this at least one VM realizes data transfer.
A kind of fourth aspect, there is provided physical network card, including:The PF module group being made up of at least two PF modules, and
At least two VF module groups;Wherein, one of this at least two PF module PF module corresponds to this at least two VF module group
One of VF module group, the arbitrary PF module in this at least two PF module can manage it after PF module based on being determined
VF module in the VF module group that his PF module connects.
In conjunction with fourth aspect, in the first possible implementation of fourth aspect, described at least two VF module groups
In VF module in each VF module group include two space-like resources;Wherein, the space-like money in described two space-like resources
Source is used for before described main PF module is determined, and the VF module group belonging to the VF module belonging to described two space-like resources corresponds to
PF module conduct interviews;Another kind of space resources in described two space-like resources is used for being determined in described main PF module
Afterwards, set up to be connected with described main PF module and conducted interviews by described main PF module.
In conjunction with the first possible implementation of fourth aspect or fourth aspect, possible in the second of fourth aspect
In implementation, described physical network card takies at least two high speed peripheral component interlinkage standard PCIe buses, described physical network card
Also include built-in switch;Wherein, described built-in switch be used for by with described at least two PCIe buses in a PCIe
The data of the VF module that bus connects is passed through to be sent to be connected with the 2nd PCIe bus in described at least two PCIe buses
VF module.
In conjunction with fourth aspect, the first possible implementation of fourth aspect or the possible reality of the second of fourth aspect
Existing mode, in the third possible implementation of fourth aspect, described physical network card passes through at least two ports and outside
Switch connects;Described physical network card is additionally operable to the data flow that the device of receiving data transmission is sent by aggregated links, and leads to
Cross equilibrium described data of transmission in each port in described at least two ports and flow to described external switch.
A kind of 5th aspect, there is provided system for data transfer, including arbitrary in second aspect or second aspect
The device for data transfer in the possible implementation of kind and any one possible realization of fourth aspect or fourth aspect
Physical network card in mode, or include in any one the possible implementation in the third aspect or the third aspect for counting
According to the physical network card in the device of transmission and any one possible implementation of fourth aspect or fourth aspect;Wherein, second
First physical network card of indication or the third aspect or third party in any one possible implementation in aspect or second aspect
In any one possible implementation in face, the first physical network card of indication is that any one of fourth aspect or fourth aspect can
The physical network card of indication in the implementation of energy.
Therefore, in embodiments of the present invention, because a physical network card has the PF module of at least two PF module compositions
Group, and a PF module can be selected as main PF module at least two PF modules from this PF module group, thus due to
The chance selecting is more, can avoid system malfunctions, and reduce the wasting of resources.
Brief description
In order to be illustrated more clearly that the technical scheme of the embodiment of the present invention, below will be in embodiment or description of the prior art
The accompanying drawing of required use be briefly described it should be apparent that, drawings in the following description be only the present invention some are real
Apply example, for those of ordinary skill in the art, on the premise of not paying creative work, can also be according to these accompanying drawings
Obtain other accompanying drawings.
Fig. 1 is the indicative flowchart of the method for data transfer according to embodiments of the present invention.
Fig. 2 is the indicative flowchart of the method for data transfer according to another embodiment of the present invention.
Fig. 3 is the schematic block diagram of the device for data transfer according to another embodiment of the present invention.
Fig. 4 is the schematic block diagram of the device for data transfer according to another embodiment of the present invention.
Fig. 5 is the schematic block diagram of the device for data transfer according to another embodiment of the present invention.
Fig. 6 is the schematic block diagram of physical network card according to another embodiment of the present invention.
Fig. 7 is the schematic block diagram of the system for data transfer according to another embodiment of the present invention.
Specific embodiment
Below in conjunction with the accompanying drawing in the embodiment of the present invention, the technical scheme in the embodiment of the present invention is carried out clear, complete
Site preparation description is it is clear that described embodiment a part of embodiment that is the present invention, rather than whole embodiments.Based on this
Embodiment in bright, the every other enforcement that those of ordinary skill in the art are obtained under the premise of not making creative work
Example, broadly falls into the scope of protection of the invention.
Fig. 1 is a kind of method for data transfer according to embodiments of the present invention.As shown in figure 1, the method 100 is wrapped
Include:
S110, from a PF module group of the first physical network card, determines main PF module, a PF module group is included at least
Two PF modules, the different VF module group of each PF module correspondence in a PF module group.
S120, based on each PF module corresponding VF module group in this PF module group, determines the mesh of this main PF module management
Mark VF module cluster, wherein, the VF module in the target VF module cluster of main PF module management is assigned at least one virtual machine, with
Just this at least one virtual machine realizes data transfer.
For the device of data transfer, for example, possess the device of at least one processor of data-transformation facility, for example may be used
Being main frame, or the host groups being made up of at least two main frames, can be from the inclusion at least two PF mould of the first physical network card
In the PF module group of block, determine main PF module;Then, in each PF module corresponding VF module group from this PF module group, determine
Need the target VF module cluster of this main PF module management, wherein and then can be by by the VF module in this target VF module cluster
Distribute at least one virtual machine, thus each virtual machine can realize data transfer by VF module.
Therefore, in embodiments of the present invention, form a PF mould because a physical network card has at least two PF modules
Block group, and a PF module can be selected at least two PF modules from a PF module group as main PF module, due to
Have that at least two PF modules are available, increased the reliability of main PF module, such that it is able to decrease system malfunctions
Probability, and decrease the wasting of resources causing because of the system failure.
The physical network card mentioned in the embodiment of the present invention can also be referred to as SR-IOV network interface card, and it can include two kinds of work(
Energy module, PF module and VF module, it will be appreciated by those skilled in the art that also referred to as PF and VF.Wherein, PF module is supported
The PCIe function of SR-IOV expanded function, is used for configuring and manages SR-IOV functional characteristic;VF module realizes the PCIe simplifying
Function.Determine from PF module group main PF module and determine main PF module management target VF module cluster after, virtual
Machine management level(Virtual Machine Management, VMM)Each of target VF module cluster VF module can be divided
Do not give virtual machine as a PCIe device(Virtual Machine, VM).VM is controlled face to allocated VF module
During access, request, main PF module and VMM respond request are initiated by VM, and returns results in VM.VM is from VF module transceiving data
During message, in conjunction with the input and output MMU memory management unit of CPU offer(Input/output memory management unit,
IOMMU)Technology, realizes transmitting-receiving and is completely independent it is not necessary to main PF module and VMM participate in.
In embodiments of the present invention, in PF module group there is corresponding relation in each PF module and VF module group, is not selecting
Before selecting main PF module, each PF module can be used for managing all VF modules in its corresponding VF module group, that is,
Say the VF module hanging with each PF module in its corresponding VF module group.And after have selected main PF module, main PF mould
Block is capable of dividing for the unified management of the VF module in the corresponding VF module group of PF modules all in PF module group and resource
Join, it is thus possible to select all or part of VF module composition target VF module from all PF modules corresponding VF module group
Group, by VMM by the VF module assignment in target VF module cluster to virtual machine.
In the embodiment of the present invention, VF module can include two space-like resources, and first kind space resources is directly to be corresponded to
PF module control, be actually determined in main PF module, directly corresponding PF module pass through access first kind space resources pair
This VF module is managed;After Equations of The Second Kind space resources main PF module in Systematic selection, be remapped based on PF module
Visible region(Set up the connection of second space resource and this main PF module), can be by main PF module directly to this Equations of The Second Kind
Space resources conducts interviews to realize this VF module is managed, and is not controlled by directly corresponding PF module.
In embodiments of the present invention, in S110 from the PF module group of the first physical network card, determine main PF module, can wrap
Include:Based on the basic parameter of each of this PF module group PF module, determine this main PF module, wherein, this basic parameter is permissible
Including the number of VF module, PF module static bandwidth and PF mould in the number of stoppages of PF module, PF module corresponding VF module group
At least one in block dynamic bandwidth.
Specifically, when needing to determine main PF module from the PF module group of the first physical network card, for data transfer
Device can basic parameter based on each of this PF module group PF module, determine each of this PF module group PF module
Performance number, and the performance number based on each PF module it may be determined that in this PF module group PF module prioritization, so
After can be based on prioritization, determine main PF module from PF module group.In embodiments of the present invention, each PF module
Basic parameter can be worth to according to different reference performances with respect to this PF module.For example, if the basic parameter of PF module is
The number of VF module in PF module failure number of times and PF module corresponding VF module group, can arrange the benchmark that primary fault occurs
Performance number is -10, and the reference performance value of a VF module is 5, if the number of stoppages of PF module 0 is 2 and corresponding VF module
In group, the number of VF module is 6, the number 5 of VF module in the number of stoppages 3 of PF module 1 and corresponding VF module group,
The performance number that PF module 0 then can be calculated is 10, and the performance number of PF module 1 is -5, then the performance number of PF module 0 is more than
The performance number of PF module 1, thus, the priority of PF module 0 is higher than PF module 1, then can select PF module 0 as main PF mould
Block.It should be understood that above-mentioned is a citing, the embodiment of the present invention is not construed as limiting to this.
In embodiments of the present invention, can have following principle for how determining main PF module:If basic parameter is
PF module failure number of times, then the number of times that breaks down is fewer, then the priority of PF module is higher, more may be determined based on PF mould
Block;If basic parameter is the number of VF module in PF module corresponding VF module group, in PF module corresponding VF module group
The number of VF module is more, then the priority of this PF module is higher, more may be determined based on PF module;If basic parameter is
The static bandwidth of PF module, then the static bandwidth of PF module is bigger, then the priority of this PF module is higher, more may be confirmed as
Main PF module;If basic parameter is the dynamic bandwidth of PF module, the dynamic bandwidth of PF module is bigger, then priority is higher,
PF module based on more may being determined;If basic parameter is PF module failure number of times, VF mould in PF module corresponding VF module group
In the number of block, PF module dynamic bandwidth and PF module static bandwidth at least two, then can consider two kinds of factors and enter
Row major level sorts, to determine main PF module.
In embodiments of the present invention, it is based on each PF module corresponding VF module group in this PF module group in S120, determine
The target VF module cluster of this main PF module management, can include:From each of PF module group PF module corresponding VF mould
Select at least one VF module in block group, form this target VF module cluster.
For example, it is desired at least two VF modules realize link aggregation function(Can certainly be under other scenes)When,
After determining main PF module, can be elected to respectively from each of PF module group PF module corresponding VF module group
A few VF module, forms this target VF module cluster.In the embodiment of the present invention, if a certain PF module failure, do not interfere with
The normal work of the VF module in other PF modules corresponding VF module group, such that it is able to realize the VF module of different VF module groups
Mutually isolated, thus the embodiment of the present invention is from different PF module corresponding VF module groups, select VF module, can improve
The reliability and stability of system, thereby may be ensured that system bandwidth.
In embodiments of the present invention, needing to send aggregated links data flow(Aggregated links data flow refers to by least two
Individual VF module combines the data flow of transmission, that is, the passage of at least two VF module transceiving datas can form aggregated links)
When, can be by the multiple ports on physical network card(port)Send aggregated links data flow to external switch, at this point it is possible to
The flow of each port of real-time monitoring, for example, this physical network card has two ports to be connected with external switch, in certain a period of time
Interior, the transmission scheduler module in this physical network card monitors that the flow of port 0 is 0.2G, and the flow of port 1 is 1G, then for reality
Existing link bandwidth equilibrium, then can reduce the flow of the aggregated links being dealt into port 1, increase to the stream of the aggregated links of port 0
Amount, for example, it is possible to the flow of port 0 and port 1 is all adjusted to 0.6G.
It should be understood that for non-polymeric link data stream it is also possible to this data flow is sent to external switch by multiport,
And with the flow of real-time monitoring port, and can be adjusted.
It should be understood that in embodiments of the present invention, it is also possible to directly correspond to main PF module after determining main PF module
VF module group be defined as the target VF module cluster of this main PF module management, or will be corresponding for other one or more PF modules
VF module group is defined as the target VF module cluster of this main PF module management.Concrete how from PF module group each PF module correspond to
VF module group in, determine target VF module cluster, the present invention is simultaneously not construed as limiting.
In embodiments of the present invention, the method 100 can also include:Determine that a PF module enables again or fault is extensive
Multiple, a PF module is defined as the PF module in a PF module group;Based on a PF module, set up a PF mould
Block corresponding VF module group.Or, the method 100 can also include:Determine the 2nd PF module from this first physical network card
Delete in one PF module group;Discharge the 2nd PF module corresponding VF module group.
Specifically, the device for data transfer can monitor all VF modules of the first physical network card, and VF mould
Block carries out grouping management.For example, it is possible to the VF module of 0 time extension of PF module is formed VF module group 0, i.e. VF module 0, VF module
1 ... VF module 127 forms VF module group 0, the VF module composition VF module group 1 of 1 time extension of PF module, i.e. VF module 128, VF module
129th, VF module 130 ... VF module 255 composition VF module group 1.A PF module in the first physical network card again enable or
After person's fault recovery, the device for data transfer can be based on the VF mould hung under a PF module and a PF module
Block, sets up a PF module corresponding VF module group.The 2nd PF module in the PF module group of this first physical network card by from
When deleting in system(For example, delete because the 2nd PF module breaks down or user actively deletes), foundation can be discharged
2nd PF module corresponding VF module group.
Therefore, in embodiments of the present invention, PF module again enable or fault recovery after, can set up this makes again
Energy or the PF module corresponding VF module group of fault recovery, or after deleting PF module, discharge this deleted PF module pair
The VF module group answered, such that it is able to the dynamic VF module that can be used in physical network card that adjusts so that system is more flexible.
In embodiments of the present invention, the method 100 can also include:Determine that the 3rd PF module of this first physical network card is sent out
During raw fault, determine whether the VF module in the 3rd PF module corresponding VF module group can use;Correspond in the 3rd PF module
At least one of VF module group VF module when can use, by corresponding for PF module VF module group available at least
One VF is defined as continuing can use.
Specifically, in embodiments of the present invention, when a certain PF module of a certain physical network card breaks down, can not
Directly discharge this PF module corresponding VF module group, may further determine that the state of the VF module under this PF module, if should
All VF modules under PF module break down, then can directly discharge this PF module corresponding VF module group, if this PF mould
Part VF module under block breaks down, then only need to reject the VF breaking down module from this VF module group.Therefore, at this
In inventive embodiments, when PF module breaks down, if the VF module hung under this PF module can use, the PF that this is broken down
The available VF module hung under module is defined as continuing can use, and can avoid the wasting of resources.
It should be understood that the PF module mentioned in the embodiment of the present invention, the 2nd PF module and the 3rd PF module can be phases
Same PF module or different PF modules.
In embodiments of the present invention, the method 100 can also include:Determine in this target VF module cluster and distribute to this at least
The first VF module of the VM in one VM breaks down;Each PF module corresponding VF module group from this PF module group
In, determine the 2nd VF module, the VF module that the 2nd VF module includes different from this target VF module cluster;Update this target VF mould
Block group, and the 2nd VF module assignment is given a VM.
Specifically, when allocated VF module in a certain VM breaks down, can be from the PF module group of physical network card
In in each PF module corresponding VF module group, reselect a new VF module, the VF module that this reselects is different from
The VF module that original target VF module cluster includes;Then, update this target VF module cluster, will this VF module of reselecting
As the member of this target VF module cluster, and the VF module assignment that this is reselected is to this VM.
In embodiments of the present invention, the method 100 can also include:Determine need by this target VF module cluster with first
The VF module that the data is activation of the VF module that PCIe bus connects is connected with the 2nd PCIe bus in this target VF module cluster;Will
The data of VF module should being connected with a PCIe bus is sent to this with second by the switch of this first physical network card
The VF module that PCIe bus connects.
That is, the first physical network card can take at least two PCIe buses, if some the VF mould in a PCIe bus
Block number, according to needing another VF module of being sent in same PCIe bus, can pass through the internal switch of this physical network card
Realize the transmission of this data.If the VF module data needs being connected with some PCIe bus are sent to and another PCIe bus
The VF module connecting it is also possible to realize the transmission of this data by the internal switch of this physical network card.
Therefore, in embodiments of the present invention, between the VF module connecting from different PCIe buses in Same Physical network interface card
Data exchange, or in Same Physical network interface card with identical PCIe bus connect VF module between data exchange, Ke Yitong
Cross built-in switch in this physical network card to realize, such that it is able to save the network bandwidth, reduce data transmit-receive time delay.
In embodiments of the present invention, the method 100 can also include:Determine that this main PF module breaks down;From this PF mould
In block group, PF module in addition to this main PF module for the selection is as new main PF module;Based on each PF mould in this PF module group
Block corresponding VF module group, determines the new target VF module cluster of this new main PF module management;By this new target VF module
VF module in group, distributes at least one virtual machine, so that this at least one virtual machine realizes data transfer.
Specifically, in the running of system, can be supervised with the concrete operations information of real-time tracking record main PF module
Control the state of main PF module.If main PF module breaks down, gravity treatment a PF module can be selected to make from PF module group
For new main PF module, and the operation information of record is updated new main PF module, and be that this new main PF module is true again
Fixed new target VF module cluster, and by the VF module in this new target VF module cluster, distribute at least one virtual machine, so that
This at least one virtual machine realizes data transfer.
Therefore, in embodiments of the present invention, when former main PF module breaks down, can be from having at least two PF modules
PF module group in reselect a new main PF module, can avoid further system malfunctions and reduce resource wave
Take.
It should be understood that the present invention can also be combined that is to say, that can also exist in network interface card with software simulation virtual technology
2nd PF module group, the PF module in the 2nd PF module group can fictionalize at least two vNIC by way of software is simulated,
For tradition(legacy)Virtual machine uses.
In order to be more clearly understood from the present invention, below with reference to Fig. 2 describe according to embodiments of the present invention for data
The method of transmission.
First scene illustrated in fig. 2 is briefly described.Under this scene, PF module group 1 includes PF module 0;PF
Module group 2 includes PF module 1 and PF module 2, hangs with VF module 1 and VF module 2, hang with VF module under PF module 2 under PF module 1
3 and VF modules 4.Wherein, in figure PF module 0, PF module 1 and PF module 2 are shown as PF0, PF1 and PF2;VF module 1, VF
Module 2, VF module 3 and VF module 4 are shown as VF1, VF2, VF3 and VF4.VF DD shown in Fig. 2 refers to VF module
Drive(Device Driver), PF DD refers to the driving of PF module.VMM can be run by main frame, for the establishment of VM, deletion,
The management of hardware resource, distribution of VM resource etc..Specifically describe method according to embodiments of the present invention below with reference to Fig. 2.
VMM can be from physical network card(NIC)In PF module group 2 in select PF module as main PF module, specifically
Ground, VMM can be according to the number of VF module, PF module static bandwidth in the number of stoppages of each PF module, corresponding VF module group
Determine main PF module with least one in PF module dynamic bandwidth, for example, it is possible to as shown in Figure 2, PF module 1 is defined as
Main PF module.After determining main PF module, VMM can determine that this main PF module needs the VF module of management, wherein, if
Need to realize link aggregation function, in the VF module that can hang from different PF modules, select VF module, composition needs main PF
VF module 2, VF module 3 and VF module 4 for example, as shown in Figure 2, can be defined as by the target VF module cluster of module management
Target VF module cluster.Then, VMM can by each VF module assignment in the target VF module cluster needing main PF module management to
Each VM, for each VM subsequent data transmission, such as, as shown in Fig. 2 VF module 2 is distributed to VM2, VF module 3 is distributed to
VM3, and VF module 4 is distributed to VM4.When the main PF module selecting breaks down, VMM can from PF module group again
Select a PF module as main PF module it is possible to be this main PF module selection target VF module cluster again.Real in the present invention
Apply in example, VMM can also fictionalize one or at least two vNIC based on the mode of software simulation by PF module, such as schemed
Shown in 2, vNIC1 and vNIC2 is fictionalized by PF module 0, respectively tradition(Legacy)VM1 and tradition(Legacy)VM2
Service.After being assigned with VF module or vNIC for VM, each VM can realize the transmission of data.Four kinds described below main
Data transfer path implementation:
Data flow is 1.:Data exchange between Legacy VM is the virtual software switch built-in by VMM(Virtual
SW switch)Realize.
Data flow is 2.:In Legacy VM Microsoft Loopback Adapter transmitting-receiving data channel be:External switch → internal switch
→MAC→PF→VMM→VM;VM → VMM → PF → MAC → internal switch → external switch.
Data flow is 3.:It is to be realized by built-in switch in NIC using the data exchange between the VM of VF module, no
By the connection of VF module is identical PCIe or different PCIe, all can be realized by the built-in switch of NIC.
Data flow is 4.:VM data transmit-receive passage using VF module is:External switch → internal switch → medium is visited
Ask control(Media Access Control, MAC)→VF;VF → MAC → internal switch → external switch.
Data flow is 5.:Main PF carries out resource management to VF and the passage of control is:VM → VMM → main PF → VF;VF → master
PF→VMM→VM.
Therefore, in embodiments of the present invention, because a physical network card has the PF module of at least two PF module compositions
Group, and a PF module can be selected as main PF module at least two PF modules from this PF module group, thus due to
The chance selecting is more, can avoid system malfunctions, and reduce the wasting of resources.
Fig. 3 is the schematic block diagram being used for the device 200 of data transfer according to embodiments of the present invention.As shown in figure 3, this dress
Put 200 and include the first determining unit 210 and the second determining unit 220.First determining unit 210 is used for from the first physical network card
In physical function PF module group, determine main PF module, this PF module group includes at least two PF modules, in this PF module group each
The different VF module group of PF module correspondence;Second determining unit 220 is used for corresponding based on each PF module in this PF module group
Virtual functions VF module group, determines the target VF module cluster of this main PF module management, wherein, VF mould in this target VF module cluster
Block is used for distributing at least one virtual machine VM, so that this at least one VM realizes data transfer.
Alternatively, this first determining unit 210 specifically for:Benchmark ginseng based on each of this PF module group PF module
Number, determines this main PF module, wherein, the basic parameter of this PF module includes PF module failure number of times, PF module corresponding VF mould
At least one in block number, PF module static bandwidth, PF module static bandwidth.
Alternatively, this second determining unit 220 specifically for:From each of this PF module group PF module corresponding VF mould
Select at least one VF module in block group, form this target VF module cluster.
As shown in figure 4, this device 200 also includes the 4th determining unit 252 and sets up unit 254.4th determining unit 252
Again enable or fault recovery for determination the first PF module, a described PF module is defined as the PF in described PF module group
Module;Set up unit 254 for based on a described PF module, setting up the corresponding VF module group of a described PF module.
Alternatively, as shown in figure 4, this device 200 also includes the 5th determining unit 256 and releasing unit 258.5th determination
Unit 256 is used for determining that the 2nd PF module is deleted from the described PF module group of described first physical network card;Releasing unit 258 is used
In the release corresponding VF module group of described 2nd PF module.
Alternatively, as shown in figure 4, this device 200 also includes the 6th determining unit 262, holding unit 264 and holding unit
264.When 6th determining unit 262 is used for determining that the 3rd PF module of described first physical network card breaks down, determine described the
Whether the VF in three PF modules corresponding VF module group can use;Holding unit 264 is used in the corresponding VF of described 3rd PF module
When at least one of module group VF module can use, by described in corresponding for described 3rd PF module VF module group at least one
VF module is defined as continuing can use.
Alternatively, as shown in figure 4, this device 200 also includes the 7th determining unit 272, select unit 274 and updating block
276.7th determining unit 272 is used for determining the first of the VM distributing in this target VF module cluster in this at least one VM
VF module breaks down;Select unit 274 is used in each PF module corresponding VF module group from this PF module group, selects not
It is same as the 2nd VF module of a VF module;Updating block 276 is used for updating this target VF module cluster.
Alternatively, described first physical network card takies at least two high speed peripheral component interlinkage standard PCIe buses, such as Fig. 4
Shown, this device 200 also includes:8th determining unit 282, for determine need by described target VF module cluster with described extremely
In few two PCIe buses the data is activation of the VF module that a PCIe bus connects in described target VF module cluster with described
The VF module that at least two PCIe buses, the 2nd PCIe bus connects;Transmitting element 284, for should be with a PCIe bus
The data of the VF module connecting is sent to, by the switch of this first physical network card, the VF mould that this is connected with the 2nd PCIe bus
Block.
Alternatively, as shown in figure 4, this device 200 also includes the 3rd determining unit 240.3rd determining unit 240 is used for
Determine that described main PF module breaks down;This first determining unit 210 is additionally operable to:From this PF module group, select to remove this main PF
PF module outside module is as new main PF module;This second determining unit 220 is additionally operable to:Based in this PF module group each
PF module corresponding VF module group, determines the new target VF module cluster of this new main PF module management, wherein, this new target
VF module in VF module cluster is used for distributing at least one virtual machine VM, so that this at least one VM realizes data transfer.
Therefore, in embodiments of the present invention, because a physical network card has the PF module of at least two PF module compositions
Group, and a PF module can be selected as main PF module at least two PF modules from this PF module group, thus due to
The chance selecting is more, can avoid system malfunctions, and reduce the wasting of resources.
Fig. 5 is the schematic block diagram of the device 300 for data transfer according to embodiments of the present invention.As shown in figure 5, should
Device 300 includes:Processor 310310 and memorizer 320320;Wherein, this memorizer 320 store program codes, this processor
310 are used for calling this program code of storage in this memorizer 320, and execution is following to be operated:Physics work(from the first physical network card
In energy PF module group, determine main PF module, this PF module group includes at least two PF modules, each PF module in this PF module group
The different virtual functions VF module group of correspondence;Based on each PF module corresponding virtual functions VF module group in this PF module group,
Determine the target VF module cluster of this main PF module management, wherein, the VF module in this target VF module cluster is used for distributing at least
One virtual machine VM, so that this at least one VM realizes data transfer.
Alternatively, this processor 310 is used for calling this program code of storage in this memorizer 320, and concrete execution is following
Operation:Based on the basic parameter of each of this PF module group PF module, determine this main PF module, wherein, the base of this PF module
Quasi- parameter includes PF module failure number of times, PF module corresponding VF number of modules, PF module static bandwidth and PF module static straps
At least one of alleviating distention in middle-JIAO.
Alternatively, this processor 310 is used for calling this program code of storage in this memorizer 320, and concrete execution is following
Operation:Select at least one VF module from each of this PF module group PF module corresponding VF module group, form this target
VF module cluster.
Alternatively, this processor 310 is used for calling this program code of storage in this memorizer 320, also executes following behaviour
Make:Determine that a PF module enables or fault recovery again, a PF module is defined as the PF module in this PF module group;
Based on a PF module, set up a PF module corresponding VF module group.
Alternatively, this processor 310 is used for calling this program code of storage in this memorizer 320, also executes following behaviour
Make:Determine that the 2nd PF module is deleted from this PF module group of this first physical network card;Discharge the corresponding VF of the 2nd PF module
Module group.
Alternatively, this processor 310 is used for calling this program code of storage in this memorizer 320, also executes following behaviour
Make:When determining that the 3rd PF module of this first physical network card breaks down, determine in the 3rd PF module corresponding VF module group
VF module whether can use;When at least one of the 3rd PF module corresponding VF module group VF module can use, by this
This at least one VF module available in one PF module corresponding VF module group is defined as continuing can use.
Alternatively, this processor 310 is used for calling this program code of storage in this memorizer 320, also executes following behaviour
Make:Determine that the VF module distributing to the VM in this at least one VM in this target VF module cluster breaks down;From this
In each PF module corresponding VF module group in PF module group, it is selected differently from the 2nd VF module of a VF module;Update
This target VF module cluster.
Alternatively, this first physical network card takies at least two high speed peripheral component interlinkage standard PCIe buses, this process
Device 310 is used for calling this program code of storage in this memorizer 320, also executes following operation:Determining needs this target VF
The data is activation of the VF module being connected with a PCIe bus in this at least two PCIe bus in module cluster is to this target VF mould
The VF module being connected with the 2nd PCIe bus in this at least two PCIe bus in block group;This is connected with a PCIe bus
The data of VF module is sent to, by the switch of this first physical network card, the VF module that this is connected with the 2nd PCIe bus.
Alternatively, this processor 310 is used for calling this program code of storage in this memorizer 320, also executes following behaviour
Make:Determine that this main PF module breaks down;From this PF module group, PF module in addition to this main PF module for the selection is as new
Main PF module;Based on each PF module corresponding VF module group in this PF module group, determine the new of this new main PF module management
Target VF module cluster, wherein, the VF module in this new target VF module cluster is used for distributing at least one virtual machine VM, with
Just this at least one VM realizes data transfer.
Therefore, in embodiments of the present invention, because a physical network card has the PF module of at least two PF module compositions
Group, and a PF module can be selected as main PF module at least two PF modules from this PF module group, thus due to
The chance selecting is more, can avoid system malfunctions, and reduce the wasting of resources.
Fig. 6 is the schematic block diagram of physical network card according to embodiments of the present invention.As shown in fig. 6, this physical network card 400 wraps
Include:The PF module group 410 being made up of at least two PF modules 411, and at least two VF module groups 420;Wherein, described at least
One of two PF modules 411 PF module 411 corresponds to one of described at least two VF module groups 420 VF module group
420, the arbitrary PF module 411 in described at least two PF modules 411 can manage other PF after PF module based on being determined
VF module 421 in the VF module group 420 that module 411 connects.
Alternatively, each PF module 411 in described PF module group 410 is connected with each other, appointing in described PF module group 410
One PF module 411 can manage the VF in the VF module group 420 that other PF modules 411 described connect by other PF modules 411
Module 421.
Alternatively, the VF module 421 in each VF module group 420 in described at least two VF module groups 420 includes two classes
Space resources;Wherein, the space-like resource in described two space-like resources is used for before described main PF module is determined, by institute
State the corresponding PF module 411 of VF module group 420 belonging to VF module 421 belonging to two space-like resources to conduct interviews;Described two
Another kind of space resources in the resource of space-like is used for, after described main PF module is determined, setting up with described main PF module and being connected
Conducted interviews by described main PF module.
Alternatively, described physical network card 400 takies at least two high speed peripheral component interlinkage standard PCIe buses, described thing
Reason network interface card 400 also includes built-in switch;Wherein, described built-in switch be used for by with described at least two PCIe buses in
The data of the VF module that the first PCIe bus connects is total with the 2nd PCIe in described at least two PCIe buses by being sent to
The VF module that line connects.
Alternatively, described physical network card is connected with external switch by least two ports;Described physical network card is also used
The data flow being sent by aggregated links in the device of receiving data transmission, and by each port in described at least two ports
Equilibrium sends described data and flow to described external switch.
Therefore, in embodiments of the present invention, because a physical network card has the PF module of at least two PF module compositions
Group, and a PF module can be selected as main PF module at least two PF modules from this PF module group, thus due to
The chance selecting is more, can avoid system malfunctions, and reduce the wasting of resources.
Fig. 7 is the schematic block diagram of the system 500 for data transfer according to embodiments of the present invention.As shown in fig. 7, should
System 400 includes device 410 and physical network card 420 for data transfer;The device 510 being wherein used for data transfer can correspond to
The device 200 or 300 for data transfer in the embodiment of the present invention, physical network card 520 may correspond to physical network card 400,
The first physical network card for mentioning in the device 200 or 300 of data transfer is physical network card 400.For sake of simplicity, here is not
Repeat again.
Therefore, in embodiments of the present invention, because a physical network card has the PF module of at least two PF module compositions
Group, and a PF module can be selected as main PF module at least two PF modules from this PF module group, thus due to
The chance selecting is more, can avoid system malfunctions, and reduce the wasting of resources.
Those of ordinary skill in the art are it is to be appreciated that combine the list of each example of the embodiments described herein description
Unit and algorithm steps, being capable of being implemented in combination in electronic hardware or computer software and electronic hardware.These functions are actually
To be executed with hardware or software mode, the application-specific depending on technical scheme and design constraint.Professional and technical personnel
Each specific application can be used different methods to realize described function, but this realization is it is not considered that exceed
The scope of the present invention.
Those skilled in the art can be understood that, for convenience and simplicity of description, the system of foregoing description,
Device and the specific work process of unit, may be referred to the corresponding process in preceding method embodiment, will not be described here.
It should be understood that disclosed system, apparatus and method in several embodiments provided herein, permissible
Realize by another way.For example, device embodiment described above is only schematically, for example, described unit
Divide, only a kind of division of logic function, actual can have other dividing mode when realizing, for example multiple units or assembly
Can in conjunction with or be desirably integrated into another system, or some features can be ignored, or does not execute.Another, shown or
The coupling each other discussing or direct-coupling or communication connection can be by some interfaces, the indirect coupling of device or unit
Close or communicate to connect, can be electrical, mechanical or other forms.
The described unit illustrating as separating component can be or may not be physically separate, show as unit
The part showing can be or may not be physical location, you can with positioned at a place, or can also be distributed to multiple
On NE.The mesh to realize this embodiment scheme for some or all of unit therein can be selected according to the actual needs
's.
In addition, can be integrated in a processing unit in each functional unit in each embodiment of the present invention it is also possible to
It is that unit is individually physically present it is also possible to two or more units are integrated in a unit.
If described function realized using in the form of SFU software functional unit and as independent production marketing or use when, permissible
It is stored in a computer read/write memory medium.Based on such understanding, technical scheme is substantially in other words
Partly being embodied in the form of software product of part that prior art is contributed or this technical scheme, this meter
Calculation machine software product is stored in a storage medium, including some instructions with so that a computer equipment(Can be individual
People's computer, server, or network equipment etc.)The all or part of step of execution each embodiment methods described of the present invention.
And aforesaid storage medium includes:USB flash disk, portable hard drive, read only memory(ROM, Read-Only Memory), random access memory deposits
Reservoir(RAM, Random Access Memory), magnetic disc or CD etc. are various can be with the medium of store program codes.
The above, the only specific embodiment of the present invention, but protection scope of the present invention is not limited thereto, and any
Those familiar with the art the invention discloses technical scope in, change or replacement can be readily occurred in, all should contain
Cover within protection scope of the present invention.Therefore, protection scope of the present invention should described be defined by scope of the claims.
Claims (21)
1. a kind of method for data transfer is it is characterised in that include:
From the physical function PF module group of the first physical network card, determine main PF module, described PF module group includes at least two
PF module, the different virtual functions VF module group of each PF module correspondence in described PF module group;
Based on each PF module corresponding VF module group in described PF module group, determine the target VF mould of described main PF module management
Block group, wherein, the VF module in described target VF module cluster is used for distributing at least one virtual machine VM, so that described at least one
Individual VM realizes data transfer;
Wherein, described based on each PF module corresponding VF module group in described PF module group, determine described main PF module management
Target VF module cluster, including:
Select at least one VF module from each of described PF module group PF module corresponding VF module group, form described mesh
Mark VF module cluster.
2. method according to claim 1 it is characterised in that described from the PF module group of the first physical network card, determine
Main PF module, including:
Based on the basic parameter of each of described PF module group PF module, determine described main PF module, wherein, described PF module
Basic parameter include PF module failure number of times, the number of VF module, PF module static straps in PF module corresponding VF module group
At least one in width and PF module dynamic bandwidth.
3. method according to claim 1 and 2 is it is characterised in that methods described also includes:
Determine that a PF module enables or fault recovery again, a described PF module is defined as the PF in described PF module group
Module;
Based on a described PF module, set up the corresponding VF module group of a described PF module.
4. method according to claim 1 and 2 is it is characterised in that methods described also includes:
Determine that the 2nd PF module is deleted from the described PF module group of described first physical network card;
Discharge the corresponding VF module group of described 2nd PF module.
5. method according to claim 1 and 2 is it is characterised in that methods described also includes:
When determining that the 3rd PF module of described first physical network card breaks down, determine the corresponding VF module of described 3rd PF module
Whether the VF module in group can use;
When at least one of the corresponding VF module group of described 3rd PF module VF module can use, by described 3rd PF module pair
At least one VF module available described in the VF module group answered is defined as continuing can use.
6. method according to claim 1 and 2 is it is characterised in that methods described also includes:
Determine that the VF module distributing to the VM at least one VM described in described target VF module cluster breaks down;
In each PF module corresponding VF module group from described PF module group, it is selected differently from the second of a described VF module
VF module;
Update described target VF module cluster.
7. method according to claim 1 and 2 is it is characterised in that described first physical network card takies at least two at a high speed
Peripheral Component Interconnect standard PCIe bus, methods described also includes:
Determine the VF needing will to be connected with a PCIe bus in described at least two PCIe buses in described target VF module cluster
The data is activation of module is connected with the 2nd PCIe bus in described at least two PCIe buses in described target VF module cluster
VF module;
The data of the described VF module being connected with a PCIe bus is sent to by the switch of described first physical network card
The described VF module being connected with the 2nd PCIe bus.
8. method according to claim 1 and 2 is it is characterised in that methods described also includes:
Determine that described main PF module breaks down;
From described PF module group, PF module in addition to described main PF module for the selection is as new main PF module;
Based on each PF module corresponding VF module group in described PF module group, determine the new of described new main PF module management
Target VF module cluster, wherein, the VF module in described new target VF module cluster is used for distributing at least one virtual machine VM, with
Toilet is stated at least one VM and is realized data transfer.
9. a kind of device for data transfer is it is characterised in that include:
First determining unit, for, from the physical function PF module group of the first physical network card, determining main PF module, described PF mould
Block group includes at least two PF modules, the different virtual functions VF module group of each PF module correspondence in described PF module group;
Second determining unit, for based on each PF module corresponding virtual functions VF module group in described PF module group, determining
The target VF module cluster of described main PF module management, wherein, the VF module in described target VF module cluster is used for distributing at least
One virtual machine VM, so that at least one VM described realizes data transfer;
Wherein, described second determining unit specifically for:
Select at least one VF module from each of described PF module group PF module corresponding VF module group, form described mesh
Mark VF module cluster.
10. device according to claim 9 it is characterised in that described first determining unit specifically for:
Based on the basic parameter of each of described PF module group PF module, determine described main PF module, wherein, described PF module
Basic parameter to include PF module failure number of times, the number of VF module in PF module corresponding VF module group, PF module static
At least one in bandwidth and PF module dynamic bandwidth.
11. devices according to claim 9 or 10 are it is characterised in that described device also includes:
4th determining unit, again enables or fault recovery for determination the first PF module, a described PF module is defined as
PF module in described PF module group;
Set up unit, for based on a described PF module, setting up the corresponding VF module group of a described PF module.
12. devices according to claim 9 or 10 are it is characterised in that described device also includes:
5th determining unit, deletes from the described PF module group of described first physical network card for determination the 2nd PF module;
Releasing unit, for discharging the corresponding VF module group of described 2nd PF module.
13. devices according to claim 9 or 10 are it is characterised in that described device also includes:
6th determining unit, when the 3rd PF module for determining described first physical network card breaks down, determines the described 3rd
Whether the VF in PF module corresponding VF module group can use;
Holding unit, for when at least one of the corresponding VF module group of described 3rd PF module VF module can use, by institute
State at least one the VF module described in the 3rd PF module corresponding VF module group to be defined as continuing can use.
14. devices according to claim 9 or 10 are it is characterised in that described device also includes:
7th determining unit, for determining the of the VM distributing in described target VF module cluster at least one VM described
One VF module breaks down;
Select unit, in each PF module corresponding VF module group from described PF module group, being selected differently from described
2nd VF module of one VF module;
Updating block, for updating described target VF module cluster.
15. devices according to claim 9 or 10 are it is characterised in that described first physical network card takies at least two height
Fast Peripheral Component Interconnect standard PCIe bus, described device also includes:
8th determining unit, for determine need by described target VF module cluster with described at least two PCIe buses in first
The data is activation of the VF module that PCIe bus connects in described target VF module cluster with described at least two PCIe buses in the
The VF module that two PCIe buses connect;
Transmitting element, for passing through described first physical network card by the data of the described VF module being connected with a PCIe bus
Switch is sent to the described VF module being connected with the 2nd PCIe bus.
16. devices according to claim 9 or 10, it is characterised in that described device also includes the 3rd determining unit, are used for
Determine that described main PF module breaks down;
Described first determining unit is additionally operable to:From described PF module group, the PF module in addition to described main PF module is selected to make
For new main PF module;
Described second determining unit is additionally operable to:Based on each PF module corresponding VF module group in described PF module group, determine institute
State the new target VF module cluster of new main PF module management, wherein, the VF module in described new target VF module cluster is used for
Distribute at least one virtual machine VM, so that at least one VM described realizes data transfer.
A kind of 17. physical network cards are it is characterised in that include:The PF module group being made up of at least two PF modules, and at least two
Individual VF module group;Wherein, one of described at least two PF modules PF module corresponds in described at least two VF module groups
A VF module group, the arbitrary PF module in described at least two PF modules can manage it after PF module based on being determined
VF module in the VF module group that his PF module connects, the target VF module cluster of described main PF module management is by from described PF module
At least one VF module composition is selected in each of group PF module corresponding VF module group.
18. physical network cards according to claim 17 are it is characterised in that each VF mould in described at least two VF module groups
VF module in block group includes two space-like resources;Wherein,
A space-like resource in described two space-like resources is used for before described main PF module is determined, by described two space-likes
The corresponding PF module of VF module group belonging to VF module belonging to resource conducts interviews;
Another kind of space resources in described two space-like resources is used for after described main PF module is determined, with described main PF mould
Block is set up to connect and is conducted interviews by described main PF module.
19. physical network cards according to claim 17 are it is characterised in that described physical network card takies outside at least two high speeds
If component connection standard PCIe bus, described physical network card also includes built-in switch;Wherein, described built-in switch is used for inciting somebody to action
The data is activation of the VF module being connected with the PCIe bus in described at least two PCIe buses is to described at least two
The VF module that the 2nd PCIe bus in PCIe bus connects.
20. physical network cards according to any one of claim 17 to 19 are it is characterised in that described physical network card passes through extremely
Few two ports are connected with external switch;The device that described physical network card is additionally operable to receiving data transmission is sent out by aggregated links
The data flow sent, and described outside exchange is flow to by equilibrium described data of transmission in each port in described at least two ports
Machine.
A kind of 21. systems for data transfer are it is characterised in that include according to any one of claim 9 to 16
Physical network card any one of device for data transfer and claim 17 to 20;Wherein, in claim 9 to 16
In any one claim, the first physical network card of indication is the physical network card any one of claim 17 to 20.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2013/077412 WO2014201623A1 (en) | 2013-06-18 | 2013-06-18 | Method, apparatus and system for data transmission, and physical network card |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103609077A CN103609077A (en) | 2014-02-26 |
CN103609077B true CN103609077B (en) | 2017-02-22 |
Family
ID=50126079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380000801.1A Active CN103609077B (en) | 2013-06-18 | 2013-06-18 | Method, apparatus and system for data transmission, and physical adapter |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103609077B (en) |
WO (1) | WO2014201623A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105591780B (en) * | 2014-10-24 | 2019-01-29 | 新华三技术有限公司 | Cluster monitoring method and equipment |
CN104486234B (en) * | 2014-11-21 | 2018-10-30 | 华为技术有限公司 | A kind of method and server that service switch is unloaded to physical network card |
US9588791B2 (en) | 2015-04-27 | 2017-03-07 | Altera Corporation | Flexible physical function and virtual function mapping |
CN106664242B (en) | 2015-07-03 | 2019-09-03 | 华为技术有限公司 | A kind of configuration method of network, network system and equipment |
CN106484492A (en) * | 2015-08-28 | 2017-03-08 | 杭州华为数字技术有限公司 | The method and system of configuration interface |
CN106656539A (en) * | 2015-11-04 | 2017-05-10 | 中兴通讯股份有限公司 | Internet access state detection and synchronization method and apparatus |
CN107181679A (en) * | 2016-03-09 | 2017-09-19 | 中兴通讯股份有限公司 | A kind of port binding implementation method and device |
JP6605713B2 (en) * | 2016-11-09 | 2019-11-13 | 華為技術有限公司 | Packet processing method, host and system in cloud computing system |
AU2016414391B2 (en) | 2016-11-09 | 2019-01-17 | Huawei Technologies Co., Ltd. | Packet processing method in cloud computing system, host, and system |
CN107643938A (en) * | 2017-08-24 | 2018-01-30 | 中国科学院计算机网络信息中心 | Data transmission method, device and storage medium |
CN113132200B (en) * | 2019-12-30 | 2024-01-19 | 中兴通讯股份有限公司 | Data forwarding method, repeater, system, server and storage medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206587A (en) * | 2006-12-19 | 2008-06-25 | 国际商业机器公司 | System and method for migration of single root stateless virtual functions |
CN101436165A (en) * | 2007-11-15 | 2009-05-20 | 国际商业机器公司 | System and method for management of an IOV adapter |
EP2423826A2 (en) * | 2010-08-27 | 2012-02-29 | Hitachi Ltd. | Computer system, i/o device control method, and i/o drawer |
US8271707B2 (en) * | 2010-02-17 | 2012-09-18 | Broadcom Corporation | Method and system for PCI hybrid function |
CN102841760A (en) * | 2008-10-30 | 2012-12-26 | 株式会社日立制作所 | Storage device, and data path failover method of internal network of storage controller |
CN102946366A (en) * | 2012-11-12 | 2013-02-27 | 杭州华为数字技术有限公司 | In-band management method and system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8645605B2 (en) * | 2010-12-28 | 2014-02-04 | Plx Technology, Inc. | Sharing multiple virtual functions to a host using a pseudo physical function |
-
2013
- 2013-06-18 CN CN201380000801.1A patent/CN103609077B/en active Active
- 2013-06-18 WO PCT/CN2013/077412 patent/WO2014201623A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206587A (en) * | 2006-12-19 | 2008-06-25 | 国际商业机器公司 | System and method for migration of single root stateless virtual functions |
CN101436165A (en) * | 2007-11-15 | 2009-05-20 | 国际商业机器公司 | System and method for management of an IOV adapter |
CN102841760A (en) * | 2008-10-30 | 2012-12-26 | 株式会社日立制作所 | Storage device, and data path failover method of internal network of storage controller |
US8271707B2 (en) * | 2010-02-17 | 2012-09-18 | Broadcom Corporation | Method and system for PCI hybrid function |
EP2423826A2 (en) * | 2010-08-27 | 2012-02-29 | Hitachi Ltd. | Computer system, i/o device control method, and i/o drawer |
CN102946366A (en) * | 2012-11-12 | 2013-02-27 | 杭州华为数字技术有限公司 | In-band management method and system |
Also Published As
Publication number | Publication date |
---|---|
WO2014201623A1 (en) | 2014-12-24 |
CN103609077A (en) | 2014-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103609077B (en) | Method, apparatus and system for data transmission, and physical adapter | |
CN104657316B (en) | Server | |
CN107278362B (en) | The method of Message processing, host and system in cloud computing system | |
EP2867772B1 (en) | Dynamic resource allocation for virtual machines | |
US10572290B2 (en) | Method and apparatus for allocating a physical resource to a virtual machine | |
US9866450B2 (en) | Methods and apparatus related to management of unit-based virtual resources within a data center environment | |
CN106385329B (en) | Processing method, device and the equipment of resource pool | |
AU2012273370B2 (en) | Native cloud computing via network segmentation | |
CN103501242B (en) | Method for managing resource and multiple-node cluster device | |
CN103763130B (en) | Management method, the device and system of large-scale cluster | |
CN110809760B (en) | Resource pool management method and device, resource pool control unit and communication equipment | |
US20160019078A1 (en) | Implementing dynamic adjustment of i/o bandwidth for virtual machines using a single root i/o virtualization (sriov) adapter | |
CN111903109A (en) | Overbookable resource allocation | |
CN102088404B (en) | Method for limiting speed of network card in Xen virtual machine | |
EP3959604A1 (en) | Machine templates for predetermined compute units | |
CN102082692A (en) | Method and equipment for migrating virtual machines based on network data flow direction, and cluster system | |
CN105024842A (en) | Method and device for capacity expansion of server | |
WO2014026374A1 (en) | Server system, management method, and device | |
CN105874432A (en) | Resource management method, host, and endpoint | |
CN112637304B (en) | Cross-cloud resource processing system and resource management method | |
CN110389843A (en) | A kind of business scheduling method, device, equipment and readable storage medium storing program for executing | |
CN108897601A (en) | A kind of FPGA application method, system and relevant apparatus based on virtualization | |
CN108304044A (en) | A kind of setting method and system of NVME hard disk hot-plugs | |
CN103577247A (en) | Virtual machine calculation and storage cluster based on Rocks cluster technology and building method thereof | |
CN109471725A (en) | Resource allocation methods, device and server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |