CN103049331A - Dynamic scheduling method with virtual function - Google Patents

Dynamic scheduling method with virtual function Download PDF

Info

Publication number
CN103049331A
CN103049331A CN2012105215570A CN201210521557A CN103049331A CN 103049331 A CN103049331 A CN 103049331A CN 2012105215570 A CN2012105215570 A CN 2012105215570A CN 201210521557 A CN201210521557 A CN 201210521557A CN 103049331 A CN103049331 A CN 103049331A
Authority
CN
China
Prior art keywords
formation
virtual machine
node
virtual
functions
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.)
Granted
Application number
CN2012105215570A
Other languages
Chinese (zh)
Other versions
CN103049331B (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201210521557.0A priority Critical patent/CN103049331B/en
Publication of CN103049331A publication Critical patent/CN103049331A/en
Application granted granted Critical
Publication of CN103049331B publication Critical patent/CN103049331B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention relates to a dynamic scheduling method with a virtual function, belongs to the field of computer virtualization, and solves the problems of insufficient expandability and poor flexibility in using of virtual functions provided by a single root input and output virtualization standard network card so as to improve use ratio of the network card. The dynamic scheduling method with the virtual function comprises the steps of initializing, establishing queues, classifying virtual machines, distributing virtual functions, judging and wakening, adding virtual machines, dynamically adjusting and sleeping. During a period, the dynamic scheduling method with the virtual function performs dynamic scheduling on the virtual functions provided by the single root (input/output) I/O virtualization standard network card through statistics of I/O interruption times and sleeping time of the virtual machines, guarantees that the virtual function is utilized by a virtual machine with the largest I/O priority value, improves, network performance, fully utilizes hardware, and is used for supporting virtual machine platforms with a device direct distribution method.

Description

A kind of dynamic dispatching method of virtual functions
Technical field
The invention belongs to computer virtualized field, be specifically related to a kind of dynamic dispatching method of virtual functions, the virtual machine platform that is used for the direct allocation scheme of support equipment, the virtual functions that the network interface card of the virtual standard of single input and output (SR-IOV) is provided carries out dynamic dispatching.
Background technology
Along with the progress of science and technology, the Intel Virtualization Technology range of application is more and more wider.Intel Virtualization Technology can be divided into that CPU is virtual, internal memory virtualization and I/O are virtual.At present, the virtual and internal memory virtualization technology of CPU is comparative maturity, and the virtualized performance of I/O has much room for improvement.
The I/O equipment that virtual machine uses is divided into two classes, the I/O equipment of software simulation and the I/O equipment that distributes by the direct allocation scheme of equipment.The I/O equipment of software simulation comprises the equipment that equipment that general virtual mode is simulated and Full-virtualization mode are simulated.The I/O equipment that the direct allocation scheme of equipment is distributed comprises physical equipment and supports the virtual functions of the equipment of the virtual standard of single input and output.
Software simulation I/O DeviceMode has the advantage of favorable expandability, but all I/O action needs are caught by monitor of virtual machine again and are carried out under this mode, increased the virtual machine switching times, the frequently growth in context switching and I/O path is so that this mode I/O poor-performing.
It is the physical equipment of hardware platform to be distributed to some virtual machines monopolize use that the direct allocation scheme of use equipment is distributed physical equipment, and other virtual machine can not use.Although this mode better performances, poor expandability, the utilization factor of resource is lower.
The single input and output of new standard that Peripheral Component Interconnect special interest group (PCI-SIG) is announced are virtual, be intended to a high speed peripheral component interlinkage standard (PCI-E) physical function is abstracted into a plurality of virtual functions, and virtual functions can be distributed to virtual machine and directly use.Than software simulation I/O DeviceMode, its I/O performance improves; Distribute physical equipment than the direct allocation scheme of use equipment, under the prerequisite that slightly affects the I/O performance, improved extensibility, for providing the foundation in virtual machine to the higher class application deployment of IO performance requirement based on Ethernet optical-fibre channel etc.
Yet still there are some problems in the equipment of the virtual standard of single input and output: 1, extensibility is not enough, and the virtual functions number that equipment of following the virtual standard of single input and output can create is subject to the restriction of hardware resource.2, the use of virtual functions lacked dirigibility, after the distribution virtual functions was given a virtual machine, virtual functions was just taken by this virtual machine always.It uses with I/O interruption times, the variation length of one's sleep of virtual machine irrelevant, may reduce the utilization factor of equipment.
In order to be expressly understood the present invention, below employed term among the present invention is made an explanation:
Virtual standard (the SR-IOV of single input and output, Single Root I/O Virtualization): Peripheral Component Interconnect special interest group (PCI-SIG, Peripheral Component InterconnectSpecial Interest Group) the device virtualization standard of announcing, the equipment of following this standard possesses single input and output virtualization, can allow physical equipment become shared device.
Peripheral hardware interconnect standard (PCI, Peripheral Component Interconnect): the bus standard of a kind of connecting electronic computer motherboard and external unit.
High speed peripheral component interlinkage standard (PCI Express, be called for short PCI-E): be a kind of of computer bus peripheral hardware interconnect standard, it has continued to use existing peripheral hardware interconnect standard programming concept and communication standard, but based on serial communication system faster.
Physical function (PF, Physical Function): in the high speed peripheral component interlinkage standard, physical equipment (Physical Device) also is called physical function; The present invention refers to support the physical equipment of the virtual standard of single input and output.
Virtual functions (VF, Virtual Function is also referred to as virtual unit): physical function is followed the virtual standard-creation virtual functions of single input and output, and shares one or more physical resource, and virtual machine can directly use virtual functions.
Virtual machine (VM, Virtual Machine): refer to by software simulation, that have the complete hardware system function, operate in a complete computer in the complete isolation environment.
Monitor of virtual machine (VMM, Virtual Machine Monitor is also referred to as Hypervisor): a kind of intermediate software layer that operates between basic physics server and the operating system can allow a plurality of operating systems and application software to share hardware.
Equipment directly distributes: the direct distributing equipment of monitor of virtual machine is to virtual machine, and the device driver in the virtual machine is access means directly, only needs the management through a small amount of monitor of virtual machine.
General virtual (Paravirtualization): a kind ofly provide similar with bottom hardware but not identical software interface technology to virtual machine.
Physical network card (NIC, Network Interface Controller is also referred to as network interface controller): be one and be designed to allow computing machine at the computer hardware of the enterprising news that work of computer network, the present invention adopts the physical network card of following the virtual standard of single input and output.
Microsoft Loopback Adapter (VNIC, Virtual Network Interface Controller): in the virtual platform, by the software simulation network interface controller that offers the virtual machine use out.
Full-virtualization (Full virtualization): a kind of Intel Virtualization Technology that can simulate complete hardware environment.
Summary of the invention
The invention provides a kind of dynamic dispatching method of virtual functions, the problem of not enough, the very flexible of extensibility during the virtual functions that solving the network interface card of the virtual standard of single input and output provides uses is to improve the utilization factor of described network interface card.
The dynamic dispatching method of a kind of virtual functions provided by the present invention comprises the steps:
(1) initialization step, order comprises following substep:
(1.1) user creates configuration file, and input will guarantee each virtual machine title and bandwidth value of bandwidth in configuration file, and wherein bandwidth value is to require the virtual machine bandwidth value that guarantees;
(1.2) user enables the single input and output virtualization of physical network card, creates the virtual functions of physical network card;
(2) create the formation step, order comprises following substep:
(2.1) create respectively the first formation, the second formation and the 3rd formation and be used for preserving virtual machine information, individual queue is comprised of node, each node comprises virtual machine title, I/O priority value, bandwidth value, virtual functions number, and wherein the I/O priority value is the I/O priority of the virtual machine of corresponding virtual machine title; The bandwidth that bandwidth value will guarantee for the virtual machine of corresponding virtual machine title in each node of the first formation, in the second formation and the 3rd formation, each node bandwidth value is 0; The virtual functions number is the needed virtual functions number of virtual machine of corresponding virtual machine title in each node of the first formation, is 1 in each node of the second formation, is 0 in each node of the 3rd formation; The virtual machine with Bandwidth guaranteed is preserved in the first formation according to the virtual machine addition sequence, the second formation is preserved the virtual machine that does not have Bandwidth guaranteed but used virtual functions according to the I/O priority value order from big to small of virtual machine, and the 3rd formation is preserved the virtual machine that does not have Bandwidth guaranteed and do not use virtual functions according to the I/O priority value order from big to small of virtual machine;
(2.2) create the virtual functions formation and be used for preserving virtual functions information, this formation is comprised of node, each node comprises numbering, operating position, virtual machine title, wherein be numbered the virtual functions numbering, operating position is this numbering virtual functions operating position, and the virtual machine name is called the virtual machine title of using this numbering virtual functions;
The order that each virtual functions is worth from small to large by number is saved in each node of virtual functions formation, simultaneously the operating position in each node is arranged to not use, and the virtual machine name is called sky;
(2.3) variable E is set to total virtual functions number, and variable B is set to 0; Variable E is untapped virtual functions number, and variable B is the virtual functions sum that all virtual machines have used in the first formation;
(3) virtual machine classifying step, order comprises following substep:
(3.1) judging whether there is virtual machine in the monitor of virtual machine, is then to carry out substep (3.2), otherwise turns step (9);
(3.2) virtual machines all in the monitor of virtual machine is joined in each node of the 3rd formation successively by its order in monitor of virtual machine, and the initialization node, the I/O priority value of each node, bandwidth value, virtual functions number are set to 0;
(3.3) obtain all virtual machine titles in the configuration file, use each virtual machine name lookup the 3rd formation, the node identical with this virtual machine title removed from the 3rd formation, add successively the first formation, revise simultaneously respective nodes bandwidth value and virtual functions number, bandwidth value is revised as the bandwidth value of this virtual machine in the configuration file, the virtual functions number is calculated according to the following formula and revises:
Virtual functions number=bandwidth value * virtual functions sum/physical network card bandwidth;
(3.4) start timer, its time length is set to 6~12 hours;
(4) distribute the virtual functions step, order comprises following substep:
(4.1) judging that whether the first formation is empty, is rotor step (4.6) then, otherwise obtains first node in the first formation, carries out substep (4.2);
(4.2) judge whether (B+C)>A, be rotor step (4.5) then, otherwise carry out substep (4.3);
Wherein, variables A=virtual functions sum/4, variable C is the virtual functions number of present node;
(4.3) order is that the corresponding virtual functions of untapped node is distributed to virtual machine corresponding to first team broomrape front nodal point with C operating position in the virtual functions formation, be the virtual machine title of first team broomrape front nodal point with the virtual machine name modifications of corresponding this C node in the virtual functions formation, the operating position of corresponding this C node is set to use, put E=E-C, put B=B+C;
(4.4) determine whether last node of the first formation, be rotor step (4.6) then, otherwise obtain the first formation next node, rotor step (4.2);
(4.5) with present node in the first formation with and subsequent virtual machine corresponding to node close, and these virtual machines are removed from the first formation and configuration file;
(4.6) the I/O priority value that calculates each node in the second formation, in the 3rd formation also sorts:
I/O interruption times, the length of one's sleep of the virtual machine that from monitor of virtual machine, obtain in the second formation, each node is corresponding in the 3rd formation; Be calculated according to the following formula in the second formation, the I/O priority value of all nodes in the 3rd formation:
I/O priority value=I/O interruption times * P+ length of one's sleep * (1-P), P is 40%~60%;
The result is saved in the I/O priority value of the second formation, the 3rd formation respective nodes, according to I/O priority value order from big to small to the second formation, the 3rd queue order;
(4.7) judge whether that the 3rd formation for empty, is then to turn step (9), otherwise obtains first node of the 3rd formation, carry out substep (4.8);
(4.8) judging whether E>A, is then to carry out substep (4.9), otherwise turns step (9);
(4.9) this node is removed from the 3rd formation, and according to its I/O priority value it is added the second formation according to order from big to small, be that the corresponding virtual functions of untapped node is distributed to and added virtual machine corresponding to ingress in the second formation with first operating position in the virtual functions formation, be the virtual machine title that adds ingress in the second formation with the virtual machine name modifications of respective nodes in the virtual functions formation, the operating position of respective nodes is set to use in the virtual functions formation, put E=E-1, rotor step (4.7);
(5) judge wake-up step: having judged whether wake-up signal, is then to carry out substep (5.1); Otherwise turn step (9), described wake-up signal is that virtual machine increases signal, virtual machine reduces one of signal, timing settling signal; Wake-up signal containing type and virtual machine title, virtual machine increase signal type is called newly-increased virtual machine for increase virtual machine, virtual machine name title; Virtual machine reduces signal type is called the virtual machine of minimizing for minimizing virtual machine, virtual machine name title; Regularly the settling signal type is for regularly finishing, and the virtual machine name is called sky;
(5.1) the I/O priority value that calculates each node in the second formation, in the 3rd formation also sorts, and its mode is identical with substep (4.6);
(5.2) judge that whether wake-up signal is that virtual machine increases signal, is then to turn step (6), otherwise carries out substep (5.3);
(5.3) judge that whether wake-up signal is that virtual machine reduces signal, is then to turn step (7), otherwise turns step (8);
(6) virtual machine increases step, comprises following substep:
(6.1) inquiring about whether there is this virtual machine according to the virtual machine title in monitor of virtual machine, is then to carry out substep (6.2), otherwise turns step (9);
(6.2) read configuration file, judge whether described virtual machine title exists in the configuration file, is then to carry out substep (6.3), otherwise rotor step (6.9);
(6.3) virtual machine of described virtual machine title is joined first team and line up end-node, revise simultaneously respective nodes bandwidth value and virtual functions number, bandwidth value is revised as the bandwidth value of this virtual machine in the configuration file, the virtual functions number is calculated according to the following formula and revises:
Virtual functions number=bandwidth value * virtual functions sum/physical network card bandwidth;
(6.4) judging whether (B+C)>A, is then to carry out substep (6.5), otherwise rotor step (6.6);
(6.5) close the virtual machine of new adding the first formation, it is deleted from the first formation and configuration file, turn step (8);
(6.6) judge whether C>(E-A), be then to carry out substep (6.7), otherwise rotor step (6.8);
(6.7) peel off the virtual functions of (C-(the E-A)) virtual machine that individual node is corresponding at the second formation team end, and these virtual functions are distributed to the virtual machine of new adding the first formation, be the virtual machine title of the first formation newly added node with the virtual machine name modifications of these virtual functions corresponding node in the virtual functions formation; (C-(E-A)) the individual node at the second formation team end is removed from the second formation, and these nodes are added three formation according to its I/O priority value with it according to from big to small order;
Order is the virtual machine that the corresponding virtual functions of untapped node is distributed to the first formation newly added node with (E-A) individual operating position in the virtual functions formation, be the virtual machine title of the first formation newly added node with the virtual machine name modifications of corresponding this (E-A) individual node in the virtual functions formation, the operating position of corresponding this (E-A) individual node is set to use, put E=A, B=B+C turns step (8);
(6.8) order is the virtual machine that the corresponding virtual functions of untapped node is distributed to first team broomrape front nodal point with C operating position in the virtual functions formation, be the virtual machine title of first team broomrape front nodal point with the virtual machine name modifications of corresponding this C node in the virtual functions formation, the operating position of corresponding this C node is set to use, put E=E-C, put B=B+C, turn step (8);
(6.9) will increase virtual machine newly and add the 3rd formation head of the queue node, and the I/O priority value of this node is set to the I/O priority value of second node in the 3rd formation, the bandwidth value of this node, virtual functions number are set to 0, turn step (8);
(7) virtual machine reduces step, comprises following substep:
(7.1) whether there is respective nodes according to the virtual machine title in the first formation inquiry, is rotor step (7.3) then, otherwise carries out substep (7.2);
(7.2) whether having respective nodes according to the virtual machine title in the second formation inquiry, is that then that described virtual machine is corresponding node removes, rotor step (7.5), otherwise rotor step (7.4);
(7.3) node is removed from the first formation, put B=B-N, rotor step (7.5), N is the virtual functions number of virtual machine corresponding to described virtual machine title;
(7.4) whether having respective nodes according to the virtual machine title in the 3rd formation inquiry, is that then that described virtual machine is corresponding node removes, and turns step (8), otherwise turns step (9);
(7.5) traversal virtual functions formation, the operating position of the node that described virtual machine title is corresponding is not revised as and uses, and puts E=E+N;
(7.6) judge whether the 3rd formation is empty, is then to turn step (8), otherwise obtains first node of the 3rd formation, carries out substep (7.7);
(7.7) this node is removed from the 3rd formation, and according to its I/O priority value it is added the second formation according to order from big to small, first operating position in the virtual functions formation is distributed to the corresponding virtual machine of the node that inserts in the second formation by the corresponding virtual functions of untapped node, be to insert the virtual machine title of node in the second formation with the virtual machine name modifications of respective nodes in the virtual functions formation, the operating position of respective nodes is set to use in the virtual functions formation, put E=E-1, N=N-1;
(7.8) judge whether N is 0, is then to turn step (8), otherwise rotor step (7.6);
(8) dynamic adjustment step, order comprises following substep:
Whether the I/O priority value of (8.1) judging the second team of formation team end-node is then to carry out substep (8.2) greater than the I/O priority value of the 3rd formation head of the queue node, otherwise rotor step (8.3).
(8.2) node with head of the queue in the 3rd formation removes from the 3rd formation, according to its I/O priority value it is added the second formation according to from big to small order again; Node with the second formation row end removes from the second formation again, it is added the 3rd formation and peels off its virtual functions according to its I/O priority value according to from big to small order, the virtual functions of peeling off is distributed to the virtual machine corresponding to node of new adding the second formation, revise the virtual machine title of this virtual functions node in the virtual functions formation, rotor step (8.1);
(8.3) the I/O interruption times of all virtual machines and be set to 0 length of one's sleep in the monitor of virtual machine, timer time length is set to 6~12 hours, turns step (9);
(9) sleep step: after the dormancy 0.5~2 minute, turn step (5).
Existing virtual functions dispatching method is static allocation, and wherein virtual functions is distributed by the user, and virtual functions is assigned to after certain virtual machine, is used until the user peels off virtual functions or closes virtual machine by this virtual machine always.Than using virtual functions, the I/O performance can be not poor when the virtual machine that the I/O priority value is large did not use virtual functions.For the little virtual machine of I/O priority value, use virtual functions can not bring larger performance boost, and the utilization of virtual functions is also insufficient.Ideal situation is that virtual functions is always used by the large virtual machine of I/O priority value.
The present invention arranges 3 formations, and Bandwidth guaranteed is carried out in the first formation, for the virtual machine of the second formation and the 3rd formation, according to I/O interruption times and the length of one's sleep of virtual machine in a period of time, dynamic dispatching virtual functions.The use of virtual functions is divided into three kinds of situations: the first situation virtual functions is assigned to the virtual machine that will guarantee bandwidth, the second situation virtual functions is assigned to the virtual machine that does not have Bandwidth guaranteed and uses, and the third situation virtual functions divide to be equipped with and guarantees the use of residue virtual machine.By guaranteeing not distribute the number of virtual functions to be not less than a lower limit, other virtual functions of dynamic assignment, thus the performance of the first formation virtual machine can be satisfied the demands, make the second formation virtual machine have better performance.The present invention is within a period of time, by statistics virtual machine I/O interruption times and dynamic dispatching length of one's sleep virtual functions, guaranteed that virtual functions is used by the large virtual machine of I/O priority value, improved the network performance of the large virtual machine of I/O priority value, also taken full advantage of hardware.
Description of drawings
Fig. 1 is schematic flow sheet of the present invention;
Fig. 2 is for distributing virtual functions step synoptic diagram;
Fig. 3 is that virtual machine increases the step synoptic diagram;
Fig. 4 is that virtual machine reduces the step synoptic diagram.
Embodiment
The present invention is further described below in conjunction with drawings and Examples.
The applied environment of following examples is: 12 virtual machine h1~h12 are present in the monitor of virtual machine according to label order from small to large; Intel's 82599 network interface card bandwidth are 10000Mb.
Embodiment 1, and virtual machine increases, and comprises the steps:
(1) initialization step, order comprises following substep:
(1.1) user creates configuration file a, and input will guarantee virtual machine title h1 and the bandwidth value 600Mb of bandwidth in configuration file a, guarantee virtual machine title h2 and the bandwidth value 1200Mb of bandwidth;
(1.2) user enables the single input and output virtualization of Intel's 82599 network interface cards, creates 16 virtual functions at this network interface card;
(2) create the formation step, order comprises following substep:
(2.1) create respectively the first formation Q1, the second formation Q2 and the 3rd formation Q3 and be used for preserving virtual machine information, individual queue is comprised of node, and each node comprises virtual machine title, I/O priority value, bandwidth value, virtual functions number;
(2.2) create virtual functions formation V, this formation is comprised of node, and each node comprises numbering, operating position, virtual machine title;
16 virtual functions are saved in each node of virtual functions formation V according to number value order from small to large, simultaneously the operating position in each node are arranged to not use, the virtual machine name is called sky;
(2.3) variable E is set to 16, and variable B is set to 0;
(3) virtual machine classifying step, order comprises following substep:
(3.1) judging whether there is virtual machine in the monitor of virtual machine, is then to carry out substep (3.2), otherwise turns step (9), and present embodiment carries out substep (3.2);
(3.2) virtual machine h1~h12 all in the monitor of virtual machine is joined successively by its order in monitor of virtual machine in each node of the 3rd formation Q3, the I/O priority value of 12 nodes, bandwidth value, virtual functions number average are set to 0 among the 3rd formation Q3;
(3.3) obtain all virtual machine title h1 and h2 among the configuration file a, use virtual machine title h1, h2 to search the 3rd formation Q3, wherein identical with virtual machine title h1, h2 node is removed from the 3rd formation Q3, add successively the first formation Q1, bandwidth value with the h1 corresponding node is revised as 600Mb simultaneously, and the virtual functions number is 1; The bandwidth value of h2 corresponding node is revised as 1200Mb, and the virtual functions number is 2;
Above-mentioned virtual functions number is calculated according to the following formula:
Virtual functions number=bandwidth value * virtual functions sum (16)/physical network card bandwidth (10000Mb);
(3.4) start timer, its time length is set to 8 hours;
(4) distribute the virtual functions step, order comprises following substep:
(4.1) judge whether the first formation Q1 is empty, be rotor step (4.6) then, otherwise obtain first node among the first formation Q1, carry out substep (4.2), present embodiment obtains node corresponding to h1 among the first formation Q1, carries out substep (4.2);
(4.2) judge whether (B+C)>A, be rotor step (4.5) then, otherwise carry out substep (4.3), in the present embodiment, B=0, variable C is 1, is 2 for h2 for h1; Substep (4.3) is carried out in variables A=4 therefore;
(4.3) order is the virtual machine that the corresponding virtual functions of untapped node is distributed to the first formation Q1 present node with C operating position among the virtual functions formation V, be the virtual machine title of the first formation Q1 present node with the virtual machine name modifications of corresponding this C node among the virtual functions formation V, the operating position of corresponding this C node is set to use, put E=E-C, put B=B+C;
(E is that 15, B is 1 behind the processing h1, and the virtual machine name of first node is called h1 among the virtual functions formation V, and operating position is set to use;
E is that 13, B is 3 behind the processing h2, and the virtual machine name modifications of second node and the 3rd node is h2 among the virtual functions formation V, and operating position is set to use; )
(4.4) determine whether first last node of formation Q1, be rotor step (4.6) then, otherwise obtain the first formation Q1 next node, rotor step (4.2);
(4.5) with present node among the first formation Q1 with and subsequent virtual machine corresponding to node close, and these virtual machines are removed rotor step (4.6) from the first formation Q1 and configuration file a;
(4.6) the I/O priority value that calculates each node among the second formation Q2, among the 3rd formation Q3 also sorts:
I/O interruption times, the length of one's sleep of the virtual machine that from monitor of virtual machine, obtain among the second formation Q2, each node is corresponding among the 3rd formation Q3; Be calculated according to the following formula among the second formation Q2, the I/O priority value of all nodes among the 3rd formation Q3:
I/O priority value=I/O interruption times * P+ length of one's sleep * (1-P), P is 50%;
The result is saved in the I/O priority value of the second formation Q2, the 3rd formation Q3 respective nodes, according to I/O priority value order from big to small the second formation Q2, the 3rd formation Q3 is sorted; The virtual machine title, the I/O priority value that begin each node from head of the queue among the 3rd formation Q3 are followed successively by: h5 91, h6 83, h9 74, h8 70, h4 65, h3 58, h10 50, h7 47, h11 30, h12 10;
(4.7) judge whether that the 3rd formation Q3 for empty, is then to turn step (9), otherwise obtains the 3rd first node of formation Q3, carry out substep (4.8);
(4.8) judging whether E>A, is then to carry out substep (4.9), otherwise turns step (9);
(4.9) this node is removed from the 3rd formation Q3, and be inserted into the second formation Q2 according to order from big to small according to its I/O priority value, be that the corresponding virtual functions of untapped node is distributed among the second formation Q2 and to be inserted the corresponding virtual machine of node with first operating position among the virtual functions formation V, be to insert the virtual machine title of node among the second formation Q2 with the virtual machine name modifications of respective nodes among the virtual functions formation V, the operating position of respective nodes is set to use among the virtual functions formation V, put E=E-1, rotor step (4.7);
Be followed successively by h5, h6, h9, h8, h4, h3, h10, h7, h11 since the virtual machine title of second each node of formation Q2 head of the queue; Be followed successively by h12 since the virtual machine title of the 3rd each node of formation Q3 head of the queue; E is 4; Be called h5, h6, h9, h8, h4, h3, h10, h7, h11 since the 4th virtual machine name corresponding to node to the 12 nodes among the virtual functions formation V, operating position all is set to use.
(5) judge wake-up step: having judged whether wake-up signal, is then to carry out substep (5.1); Otherwise turn step (9); Present embodiment has wake-up signal, for virtual machine increases signal type is called newly-increased virtual machine for increase virtual machine, virtual machine name title h13; (user creates virtual machine h13, and input will guarantee virtual machine title h13 and the bandwidth value 500Mb of bandwidth in configuration file a; )
(5.1) the I/O priority value that calculates each node among the second formation Q2, the 3rd formation Q3 also sorts, and its mode is identical with substep (4.6); Be followed successively by h9 200, h11 186, h4 150, h8 105, h5 83, h3 79, h1069, h7 55, h6 32 since virtual machine title, the I/O priority value of second each node of formation Q2 head of the queue; Be followed successively by h12 59 since virtual machine title, the I/O priority value of the 3rd each node of formation Q3 head of the queue;
(5.2) judge that whether wake-up signal is that virtual machine increases signal, is then to turn step (6), otherwise carries out substep (5.3) that present embodiment turns step (6);
(5.3) judge that whether wake-up signal is that virtual machine reduces signal, is then to turn step (7), otherwise turns step (8);
(6) virtual machine increases step, comprises following substep:
(6.1) inquiring about whether there is this virtual machine according to h13 in monitor of virtual machine, is then to carry out substep (6.2), otherwise turns step (9); Present embodiment rotor step (6.2);
(6.2) reading configuration file a, judge whether h13 exists among the configuration file a, is then to carry out substep (6.3), otherwise rotor step (6.9); Present embodiment rotor step (6.3);
(6.3) virtual machine h13 is joined the first formation Q1 team end-node, revising simultaneously the respective nodes bandwidth value is 500Mb, and revising the virtual functions number is 1; Carry out substep (6.4);
(6.4) judging whether (B+C)>A, is then to carry out substep (6.5), otherwise rotor step (6.6); Present embodiment B=3, C=1, A=4, rotor step (6.6);
(6.5) close the virtual machine of new adding the first formation Q1, it is deleted from the first formation Q1 and configuration file a, turn step (8);
(6.6) judge whether C>(E-A), be then to carry out substep (6.7), otherwise rotor step (6.8), present embodiment C=1, E=4, A=4 carries out substep (6.7);
(6.7) peel off the virtual functions of (C-(the E-A)) virtual machine that individual node is corresponding at the second formation Q2 team end, and these virtual functions are distributed to h13, be h13 with the virtual machine name modifications of these virtual functions corresponding node among the virtual functions formation V; Remove from the second formation Q2 (C-(E-A)) at the second formation Q2 team end is individual, and the virtual machine that these nodes are corresponding adds three formation Q3 respective nodes according to its I/O priority value with it according to descending order;
Order is that the corresponding virtual functions of untapped node is distributed to h13 with (E-A) individual operating position among the virtual functions formation V, be h13 with the virtual machine name modifications of corresponding this (E-A) individual node among the virtual functions formation V, the operating position of corresponding this (E-A) individual node is set to use, put E=A, B=B+C turns step (8);
(C-(E-A))=1 wherein, (E-A)=0; Be followed successively by h9, h11, h4, h8, h5, h3, h10, h7 from the virtual machine title of the second formation Q2 head of the queue start node; Be followed successively by h12, h6 from the virtual machine title of the 3rd formation Q3 head of the queue start node; The virtual machine name modifications of the node that h6 is corresponding among the virtual functions formation V is h13;
(6.8) order is the virtual machine that the corresponding virtual functions of untapped node is distributed to the first formation Q1 present node with C operating position among the virtual functions formation V, be the virtual machine title of the first formation Q1 present node with the virtual machine name modifications of corresponding this C node among the virtual functions formation V, the operating position of corresponding this C node is set to use, put E=E-C, put B=B+C, turn step (8);
(6.9) will increase virtual machine newly and add the 3rd formation Q3 head of the queue node, and the I/O priority value of this node is set to the I/O priority value of second node among the 3rd formation Q3, the bandwidth value of this node, virtual functions number are set to 0, turn step (8);
(8) dynamic adjustment step, order comprises following substep:
Whether the I/O priority value of (8.1) judging the second formation Q2 team end-node is then to carry out substep (8.2) greater than the I/O priority value of the 3rd formation Q3 head of the queue node, otherwise rotor step (8.3); Present embodiment carries out substep (8.2);
(8.2) node with the 3rd formation Q3 head of the queue removes from the 3rd formation Q3, according to its I/O priority value it is added the second formation Q2 according to from big to small order again; Node with the second formation Q2 row end removes from the second formation Q2 again, it is added the 3rd formation Q3 and peels off its virtual functions according to its I/O priority value according to from big to small order, the virtual functions of peeling off is distributed to virtual machine corresponding to node of new adding the second formation Q2, revise the virtual machine title of this virtual functions node among the virtual functions formation V, rotor step (8.1);
Be followed successively by h9, h11, h4, h8, h5, h3, h10, h12 from the virtual machine title of the second formation Q2 head of the queue start node; Be followed successively by h7, h6 from the virtual machine title of the 3rd formation Q3 head of the queue start node; The virtual machine name modifications of the node that h7 is corresponding among the virtual functions formation V is h12;
(8.3) the I/O interruption times of all virtual machines and be set to 0 length of one's sleep in the monitor of virtual machine, timer time length is set to 8 hours, turns step (9);
(9) sleep step: after the dormancy 1 minute, turn step (5).
Embodiment 2, and virtual machine reduces, and comprises the steps:
Step (1), (2), (3), (4) are identical with embodiment 1.
(5) judge wake-up step: having judged whether wake-up signal, is then to carry out substep (5.1); Otherwise turn step (9); Present embodiment has wake-up signal, and for virtual machine reduces signal, type is called h2 for minimizing virtual machine, virtual machine name; (this moment, the user closed virtual machine h2);
(5.1) the I/O priority value that calculates each node among the second formation Q2, among the 3rd formation Q3 also sorts, and its mode is identical with substep (4.6); Be followed successively by h8 300, h9 256, h42 24, h6 198, h11 175, h5148, h7 103, h12 93, h3 84 since virtual machine title, the I/O priority value of second each node of formation Q2 head of the queue; Be followed successively by h10 71 since virtual machine title, the I/O priority value of the 3rd each node of formation Q3 head of the queue;
(5.2) judge that whether wake-up signal is that virtual machine increases signal, is then to turn step (6), otherwise carries out substep (5.3); Present embodiment rotor step (5.3);
(5.3) judge that whether wake-up signal is that virtual machine reduces signal, is then to turn step (7), otherwise turns step (8); Present embodiment turns step (7);
(7) virtual machine reduces step, comprises following substep:
(7.1) whether there is respective nodes according to h2 in the first formation Q1 inquiry, is rotor step (7.3) then, otherwise carries out substep (7.2); Present embodiment rotor step (7.3);
(7.2) whether having respective nodes according to the virtual machine title in the second formation Q2 inquiry, is that then that described virtual machine is corresponding node removes, rotor step (7.5), otherwise carry out substep (7.4);
(7.3) node that h2 is corresponding removes from the first formation Q1, puts B=B-N, (B=1, N=2) rotor step (7.5);
(7.4) whether having respective nodes according to the virtual machine title in the 3rd formation Q3 inquiry, is that then that described virtual machine is corresponding node removes, and turns step (8), otherwise turns step (9);
(7.5) traversal virtual functions formation V, the operating position of the node that h2 is corresponding is not revised as and uses, and puts E=6;
(7.6) judge whether the 3rd formation Q3 is empty, is then to turn step (8), otherwise obtains the 3rd first node of formation Q3, carries out substep (7.7);
(7.7) this node is removed from the 3rd formation Q3, and according to its I/O priority value it is added the second formation Q2 according to order from big to small, first operating position among the virtual functions formation V is distributed to the corresponding virtual machine of node that inserts among the second formation Q2 by the corresponding virtual functions of untapped node, be to insert the virtual machine title of node among the second formation Q2 with the virtual machine name modifications of respective nodes among the virtual functions formation V, the operating position of respective nodes is set to use among the virtual functions formation V, put E=E-1, N=N-1;
(7.8) judge whether N is 0, is then to turn step (8), otherwise rotor step (7.6);
Be followed successively by h1 since the virtual machine title of first each node of formation Q1 head of the queue, be followed successively by h8, h9, h4, h6, h11, h5, h7, h12, h3, h10 since the virtual machine title of second each node of formation Q2 head of the queue; E=5, B=1, N=0; The virtual machine name modifications of first node that h2 is corresponding among the virtual functions formation V is h10, and the operating position of second node that h2 is corresponding is not revised as and uses, and turns step (8);
(8) dynamic adjustment step, order comprises following substep:
Whether the I/O priority value of (8.1) judging the second team of formation Q2 team end-node greater than the I/O priority value of the 3rd formation Q3 head of the queue node, is rotor step (8.2) then, otherwise rotor step (8.3); Present embodiment rotor step (8.3);
(8.2) node with head of the queue among the 3rd formation Q3 removes from the 3rd formation Q3, according to its I/O priority value it is added the second formation Q2 according to from big to small order again; Node with the second formation Q2 row end removes from the second formation Q2 again, it is added the 3rd formation Q3 and peels off its virtual functions according to its I/O priority value according to from big to small order, the virtual functions of peeling off is distributed to virtual machine corresponding to node of new adding the second formation Q2, revise the virtual machine title of this virtual functions node among the virtual functions formation V, rotor step (8.1);
(8.3) the I/O interruption times of all virtual machines and be set to 0 length of one's sleep in the monitor of virtual machine, timer time length is set to 8 hours, turns step (9);
(9) sleep step: after the dormancy 1 minute, turn step (5).

Claims (1)

1. the dynamic dispatching method of a virtual functions comprises the steps:
(1) initialization step, order comprises following substep:
(1.1) user creates configuration file, and input will guarantee each virtual machine title and bandwidth value of bandwidth in configuration file, and wherein bandwidth value is to require the virtual machine bandwidth value that guarantees;
(1.2) user enables the single input and output virtualization of physical network card, creates the virtual functions of physical network card;
(2) create the formation step, order comprises following substep:
(2.1) create respectively the first formation, the second formation and the 3rd formation and be used for preserving virtual machine information, individual queue is comprised of node, each node comprises virtual machine title, I/O priority value, bandwidth value, virtual functions number, and wherein the I/O priority value is the I/O priority of the virtual machine of corresponding virtual machine title; The bandwidth that bandwidth value will guarantee for the virtual machine of corresponding virtual machine title in each node of the first formation, in the second formation and the 3rd formation, each node bandwidth value is 0; The virtual functions number is the needed virtual functions number of virtual machine of corresponding virtual machine title in each node of the first formation, is 1 in each node of the second formation, is 0 in each node of the 3rd formation; The virtual machine with Bandwidth guaranteed is preserved in the first formation according to the virtual machine addition sequence, the second formation is preserved the virtual machine that does not have Bandwidth guaranteed but used virtual functions according to the I/O priority value order from big to small of virtual machine, and the 3rd formation is preserved the virtual machine that does not have Bandwidth guaranteed and do not use virtual functions according to the I/O priority value order from big to small of virtual machine;
(2.2) create the virtual functions formation and be used for preserving virtual functions information, this formation is comprised of node, each node comprises numbering, operating position, virtual machine title, wherein be numbered the virtual functions numbering, operating position is this numbering virtual functions operating position, and the virtual machine name is called the virtual machine title of using this numbering virtual functions;
The order that each virtual functions is worth from small to large by number is saved in each node of virtual functions formation, simultaneously the operating position in each node is arranged to not use, and the virtual machine name is called sky;
(2.3) variable E is set to total virtual functions number, and variable B is set to 0; Variable E is untapped virtual functions number, and variable B is the virtual functions sum that all virtual machines have used in the first formation;
(3) virtual machine classifying step, order comprises following substep:
(3.1) judging whether there is virtual machine in the monitor of virtual machine, is then to carry out substep (3.2), otherwise turns step (9);
(3.2) virtual machines all in the monitor of virtual machine is joined in each node of the 3rd formation successively by its order in monitor of virtual machine, and the initialization node, the I/O priority value of each node, bandwidth value, virtual functions number are set to 0;
(3.3) obtain all virtual machine titles in the configuration file, use each virtual machine name lookup the 3rd formation, the node identical with this virtual machine title removed from the 3rd formation, add successively the first formation, revise simultaneously respective nodes bandwidth value and virtual functions number, bandwidth value is revised as the bandwidth value of this virtual machine in the configuration file, the virtual functions number is calculated according to the following formula and revises:
Virtual functions number=bandwidth value * virtual functions sum/physical network card bandwidth;
(3.4) start timer, its time length is set to 6~12 hours;
(4) distribute the virtual functions step, order comprises following substep:
(4.1) judging that whether the first formation is empty, is rotor step (4.6) then, otherwise obtains first node in the first formation, carries out substep (4.2);
(4.2) judge whether (B+C)>A, be rotor step (4.5) then, otherwise carry out substep (4.3);
Wherein, variables A=virtual functions sum/4, variable C is the virtual functions number of present node;
(4.3) order is that the corresponding virtual functions of untapped node is distributed to virtual machine corresponding to first team broomrape front nodal point with C operating position in the virtual functions formation, be the virtual machine title of first team broomrape front nodal point with the virtual machine name modifications of corresponding this C node in the virtual functions formation, the operating position of corresponding this C node is set to use, put E=E-C, put B=B+C;
(4.4) determine whether last node of the first formation, be rotor step (4.6) then, otherwise obtain the first formation next node, rotor step (4.2);
(4.5) with present node in the first formation with and subsequent virtual machine corresponding to node close, and these virtual machines are removed from the first formation and configuration file;
(4.6) the I/O priority value that calculates each node in the second formation, in the 3rd formation also sorts:
I/O interruption times, the length of one's sleep of the virtual machine that from monitor of virtual machine, obtain in the second formation, each node is corresponding in the 3rd formation; Be calculated according to the following formula in the second formation, the I/O priority value of all nodes in the 3rd formation:
I/O priority value=I/O interruption times * P+ length of one's sleep * (1-P), P is 40%~60%;
The result is saved in the I/O priority value of the second formation, the 3rd formation respective nodes, according to I/O priority value order from big to small to the second formation, the 3rd queue order;
(4.7) judge whether that the 3rd formation for empty, is then to turn step (9), otherwise obtains first node of the 3rd formation, carry out substep (4.8);
(4.8) judging whether E>A, is then to carry out substep (4.9), otherwise turns step (9);
(4.9) this node is removed from the 3rd formation, and according to its I/O priority value it is added the second formation according to order from big to small, be that the corresponding virtual functions of untapped node is distributed to and added virtual machine corresponding to ingress in the second formation with first operating position in the virtual functions formation, be the virtual machine title that adds ingress in the second formation with the virtual machine name modifications of respective nodes in the virtual functions formation, the operating position of respective nodes is set to use in the virtual functions formation, put E=E-1, rotor step (4.7);
(5) judge wake-up step: having judged whether wake-up signal, is then to carry out substep (5.1); Otherwise turn step (9), described wake-up signal is that virtual machine increases signal, virtual machine reduces one of signal, timing settling signal; Wake-up signal containing type and virtual machine title, virtual machine increase signal type is called newly-increased virtual machine for increase virtual machine, virtual machine name title; Virtual machine reduces signal type is called the virtual machine of minimizing for minimizing virtual machine, virtual machine name title; Regularly the settling signal type is for regularly finishing, and the virtual machine name is called sky;
(5.1) the I/O priority value that calculates each node in the second formation, in the 3rd formation also sorts, and its mode is identical with substep (4.6);
(5.2) judge that whether wake-up signal is that virtual machine increases signal, is then to turn step (6), otherwise carries out substep (5.3);
(5.3) judge that whether wake-up signal is that virtual machine reduces signal, is then to turn step (7), otherwise turns step (8);
(6) virtual machine increases step, comprises following substep:
(6.1) inquiring about whether there is this virtual machine according to the virtual machine title in monitor of virtual machine, is then to carry out substep (6.2), otherwise turns step (9);
(6.2) read configuration file, judge whether described virtual machine title exists in the configuration file, is then to carry out substep (6.3), otherwise rotor step (6.9);
(6.3) virtual machine of described virtual machine title is joined first team and line up end-node, revise simultaneously respective nodes bandwidth value and virtual functions number, bandwidth value is revised as the bandwidth value of this virtual machine in the configuration file, the virtual functions number is calculated according to the following formula and revises:
Virtual functions number=bandwidth value * virtual functions sum/physical network card bandwidth;
(6.4) judging whether (B+C)>A, is then to carry out substep (6.5), otherwise rotor step (6.6);
(6.5) close the virtual machine of new adding the first formation, it is deleted from the first formation and configuration file, turn step (8);
(6.6) judge whether C>(E-A), be then to carry out substep (6.7), otherwise rotor step (6.8);
(6.7) peel off the virtual functions of (C-(the E-A)) virtual machine that individual node is corresponding at the second formation team end, and these virtual functions are distributed to the virtual machine of new adding the first formation, be the virtual machine title of the first formation newly added node with the virtual machine name modifications of these virtual functions corresponding node in the virtual functions formation; (C-(E-A)) the individual node at the second formation team end is removed from the second formation, and these nodes are added three formation according to its I/O priority value with it according to from big to small order;
Order is the virtual machine that the corresponding virtual functions of untapped node is distributed to the first formation newly added node with (E-A) individual operating position in the virtual functions formation, be the virtual machine title of the first formation newly added node with the virtual machine name modifications of corresponding this (E-A) individual node in the virtual functions formation, the operating position of corresponding this (E-A) individual node is set to use, put E=A, B=B+C turns step (8);
(6.8) order is the virtual machine that the corresponding virtual functions of untapped node is distributed to first team broomrape front nodal point with C operating position in the virtual functions formation, be the virtual machine title of first team broomrape front nodal point with the virtual machine name modifications of corresponding this C node in the virtual functions formation, the operating position of corresponding this C node is set to use, put E=E-C, put B=B+C, turn step (8);
(6.9) will increase virtual machine newly and add the 3rd formation head of the queue node, and the I/O priority value of this node is set to the I/O priority value of second node in the 3rd formation, the bandwidth value of this node, virtual functions number are set to 0, turn step (8);
(7) virtual machine reduces step, comprises following substep:
(7.1) whether there is respective nodes according to the virtual machine title in the first formation inquiry, is rotor step (7.3) then, otherwise carries out substep (7.2);
(7.2) whether having respective nodes according to the virtual machine title in the second formation inquiry, is that then that described virtual machine is corresponding node removes, rotor step (7.5), otherwise rotor step (7.4);
(7.3) node is removed from the first formation, put B=B-N, rotor step (7.5), N is the virtual functions number of virtual machine corresponding to described virtual machine title;
(7.4) whether having respective nodes according to the virtual machine title in the 3rd formation inquiry, is that then that described virtual machine is corresponding node removes, and turns step (8), otherwise turns step (9);
(7.5) traversal virtual functions formation, the operating position of the node that described virtual machine title is corresponding is not revised as and uses, and puts E=E+N;
(7.6) judge whether the 3rd formation is empty, is then to turn step (8), otherwise obtains first node of the 3rd formation, carries out substep (7.7);
(7.7) this node is removed from the 3rd formation, and according to its I/O priority value it is added the second formation according to order from big to small, first operating position in the virtual functions formation is distributed to the corresponding virtual machine of the node that inserts in the second formation by the corresponding virtual functions of untapped node, be to insert the virtual machine title of node in the second formation with the virtual machine name modifications of respective nodes in the virtual functions formation, the operating position of respective nodes is set to use in the virtual functions formation, put E=E-1, N=N-1;
(7.8) judge whether N is 0, is then to turn step (8), otherwise rotor step (7.6);
(8) dynamic adjustment step, order comprises following substep:
Whether the I/O priority value of (8.1) judging the second team of formation team end-node is then to carry out substep (8.2) greater than the I/O priority value of the 3rd formation head of the queue node, otherwise rotor step (8.3).
(8.2) node with head of the queue in the 3rd formation removes from the 3rd formation, according to its I/O priority value it is added the second formation according to from big to small order again; Node with the second formation row end removes from the second formation again, it is added the 3rd formation and peels off its virtual functions according to its I/O priority value according to from big to small order, the virtual functions of peeling off is distributed to the virtual machine corresponding to node of new adding the second formation, revise the virtual machine title of this virtual functions node in the virtual functions formation, rotor step (8.1);
(8.3) the I/O interruption times of all virtual machines and be set to 0 length of one's sleep in the monitor of virtual machine, timer time length is set to 6~12 hours, turns step (9);
(9) sleep step: after the dormancy 0.5~2 minute, turn step (5).
CN201210521557.0A 2012-12-06 2012-12-06 A kind of dynamic dispatching method of virtual functions Active CN103049331B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210521557.0A CN103049331B (en) 2012-12-06 2012-12-06 A kind of dynamic dispatching method of virtual functions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210521557.0A CN103049331B (en) 2012-12-06 2012-12-06 A kind of dynamic dispatching method of virtual functions

Publications (2)

Publication Number Publication Date
CN103049331A true CN103049331A (en) 2013-04-17
CN103049331B CN103049331B (en) 2015-09-23

Family

ID=48061981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210521557.0A Active CN103049331B (en) 2012-12-06 2012-12-06 A kind of dynamic dispatching method of virtual functions

Country Status (1)

Country Link
CN (1) CN103049331B (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103473136A (en) * 2013-09-02 2013-12-25 华为技术有限公司 Resource allocation method of virtual machines, and communication equipment
CN104298535A (en) * 2014-05-02 2015-01-21 威盛电子股份有限公司 Extended read-only memory management system, method and management host thereof
CN104572412A (en) * 2013-10-29 2015-04-29 鸿富锦精密工业(深圳)有限公司 Method and system for making startup time statistics of virtual machines
CN106302322A (en) * 2015-05-19 2017-01-04 腾讯科技(深圳)有限公司 A kind of virtual-machine data flow management method and system
CN106406974A (en) * 2015-07-30 2017-02-15 中兴通讯股份有限公司 High-performance timer implementation method used for virtual machine, and virtual machine
CN106789363A (en) * 2017-02-20 2017-05-31 郑州云海信息技术有限公司 A kind of method and device to virtual machine configuration network interface card
CN103810020B (en) * 2014-02-14 2017-08-29 华为技术有限公司 Virtual machine elastic telescopic method and device
CN107220102A (en) * 2017-04-19 2017-09-29 深圳中兴网信科技有限公司 The dormancy of virtual machine and awakening method and system
CN107643938A (en) * 2017-08-24 2018-01-30 中国科学院计算机网络信息中心 Data transmission method, device and storage medium
CN111737176A (en) * 2020-05-11 2020-10-02 福州瑞芯微电子股份有限公司 PCIE data-based synchronization device and driving method
US20210382756A1 (en) * 2020-06-03 2021-12-09 Baidu Usa Llc Data protection with static resource partition for data processing accelerators
TWI769696B (en) * 2020-02-14 2022-07-01 日商三菱電機股份有限公司 Drive control device and drive control system
CN115484212A (en) * 2022-07-26 2022-12-16 浪潮通信技术有限公司 VF QoS adjustment method, device and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100146089A1 (en) * 2008-12-09 2010-06-10 International Business Machines Corporation Use of Peripheral Component Interconnect Input/Output Virtualization Devices to Create High-Speed, Low-Latency Interconnect
CN101800658A (en) * 2008-12-30 2010-08-11 英特尔公司 Apparatus and method for managing subscription requests for a network interface component
WO2011022375A1 (en) * 2009-08-18 2011-02-24 Aprius, Inc. Communicating between host computers and peripheral resources in an input/output (i/o) virtualization system
WO2012143953A2 (en) * 2011-04-21 2012-10-26 Ineda Systems Pvt. Ltd Optimized multi-root input output virtualization aware switch

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100146089A1 (en) * 2008-12-09 2010-06-10 International Business Machines Corporation Use of Peripheral Component Interconnect Input/Output Virtualization Devices to Create High-Speed, Low-Latency Interconnect
CN101800658A (en) * 2008-12-30 2010-08-11 英特尔公司 Apparatus and method for managing subscription requests for a network interface component
WO2011022375A1 (en) * 2009-08-18 2011-02-24 Aprius, Inc. Communicating between host computers and peripheral resources in an input/output (i/o) virtualization system
WO2012143953A2 (en) * 2011-04-21 2012-10-26 Ineda Systems Pvt. Ltd Optimized multi-root input output virtualization aware switch

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9983899B2 (en) 2013-09-02 2018-05-29 Huawei Technologies Co., Ltd. Network resource configuration for a virtual machine
CN103473136A (en) * 2013-09-02 2013-12-25 华为技术有限公司 Resource allocation method of virtual machines, and communication equipment
CN103473136B (en) * 2013-09-02 2017-06-13 华为技术有限公司 The resource allocation method and communication equipment of a kind of virtual machine
CN104572412A (en) * 2013-10-29 2015-04-29 鸿富锦精密工业(深圳)有限公司 Method and system for making startup time statistics of virtual machines
CN103810020B (en) * 2014-02-14 2017-08-29 华为技术有限公司 Virtual machine elastic telescopic method and device
CN104298535B (en) * 2014-05-02 2017-08-15 威盛电子股份有限公司 Extended read-only memory management system, method and management host thereof
CN104298535A (en) * 2014-05-02 2015-01-21 威盛电子股份有限公司 Extended read-only memory management system, method and management host thereof
CN106302322A (en) * 2015-05-19 2017-01-04 腾讯科技(深圳)有限公司 A kind of virtual-machine data flow management method and system
CN106302322B (en) * 2015-05-19 2020-05-26 腾讯科技(深圳)有限公司 Virtual machine data flow management method and system
CN106406974A (en) * 2015-07-30 2017-02-15 中兴通讯股份有限公司 High-performance timer implementation method used for virtual machine, and virtual machine
CN106406974B (en) * 2015-07-30 2020-07-17 中兴通讯股份有限公司 High-performance timer implementation method for virtual machine and virtual machine
CN106789363A (en) * 2017-02-20 2017-05-31 郑州云海信息技术有限公司 A kind of method and device to virtual machine configuration network interface card
CN107220102A (en) * 2017-04-19 2017-09-29 深圳中兴网信科技有限公司 The dormancy of virtual machine and awakening method and system
CN107643938A (en) * 2017-08-24 2018-01-30 中国科学院计算机网络信息中心 Data transmission method, device and storage medium
TWI769696B (en) * 2020-02-14 2022-07-01 日商三菱電機股份有限公司 Drive control device and drive control system
CN111737176A (en) * 2020-05-11 2020-10-02 福州瑞芯微电子股份有限公司 PCIE data-based synchronization device and driving method
US20210382756A1 (en) * 2020-06-03 2021-12-09 Baidu Usa Llc Data protection with static resource partition for data processing accelerators
US11822964B2 (en) * 2020-06-03 2023-11-21 Baidu Usa Llc Data protection with static resource partition for data processing accelerators
CN115484212A (en) * 2022-07-26 2022-12-16 浪潮通信技术有限公司 VF QoS adjustment method, device and electronic equipment
CN115484212B (en) * 2022-07-26 2023-10-20 浪潮通信技术有限公司 QoS adjustment method and device for VF and electronic equipment

Also Published As

Publication number Publication date
CN103049331B (en) 2015-09-23

Similar Documents

Publication Publication Date Title
CN103049331A (en) Dynamic scheduling method with virtual function
US10412021B2 (en) Optimizing placement of virtual machines
CN105700961B (en) Business container creation method and device
CN101252536B (en) Router multi-queue data pack buffer management and output queue scheduling system
CN103049332B (en) Virtual CPU scheduling method
CN104503838A (en) Method for scheduling virtual CPU (Central Processing Unit)
CN103609077B (en) Method, apparatus and system for data transmission, and physical adapter
CN102195803B (en) Data communication method and system
CN104821887A (en) Device and Method for Packet Processing with Memories Having Different Latencies
CN108829515A (en) A kind of cloud platform computing system and its application method
CN103946803A (en) Processor with efficient work queuing
US20210103544A1 (en) System decoder for training accelerators
CN102486741A (en) System and method for sharing serial port
CN104932933B (en) A kind of method and device obtaining spin lock
CN104539708A (en) Capacity reduction method, device and system for cloud platform resources
CN103116517A (en) Adjustment method of I/O channels of virtualization platform and adjustment device
CN105022668A (en) Job scheduling method and system
CN109471725A (en) Resource allocation methods, device and server
CN107306230B (en) Method, device, controller and core network equipment for network resource deployment
CN109800074A (en) Task data concurrently executes method, apparatus and electronic equipment
CN102571271A (en) Method for automatically generating dynamic frame encapsulation group
CN109614229B (en) Virtual network resource allocation system based on software definition
CN105577834B (en) Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system
JP6277279B2 (en) Dynamic interconnect using partitioning and platform prototyping in emulation
CN104123174A (en) Dynamic real-time CPU scheduling system under virtualization environment

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