CN105577834B - Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system - Google Patents

Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system Download PDF

Info

Publication number
CN105577834B
CN105577834B CN201610083948.7A CN201610083948A CN105577834B CN 105577834 B CN105577834 B CN 105577834B CN 201610083948 A CN201610083948 A CN 201610083948A CN 105577834 B CN105577834 B CN 105577834B
Authority
CN
China
Prior art keywords
bandwidth
tenant
virtual machine
virtual
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610083948.7A
Other languages
Chinese (zh)
Other versions
CN105577834A (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN201610083948.7A priority Critical patent/CN105577834B/en
Publication of CN105577834A publication Critical patent/CN105577834A/en
Application granted granted Critical
Publication of CN105577834B publication Critical patent/CN105577834B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention provides a kind of two layers of bandwidth allocation methods of cloud data center and system with Predicable performance, the method includes:In cloud tenant's level, Bandwidth guaranteed optimization is carried out to the virtual machine request comprising network demand that tenant sends according to fine granularity Virtual Cluster FGVC network abstractions model;And physical machine and corresponding bandwidth resource allocation are carried out to the virtual machine request after optimization according to default allocation algorithm;In application, physical machine and corresponding bandwidth resources are distributed fairly to guaranteed tenant and unsecured tenant by mechanism when being run using E F.The present invention solve the problems, such as cannot completely to express existing for existing bandwidth allocation methods the network demand of tenant, in demand level waste bandwidth resource, be unable to fully consider the demand of tenant and can not achieve not used bandwidth resources fair allocat between guaranteed tenant and unsecured tenant.

Description

Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system
Technical field
The present invention relates to field of computer technology, and in particular to a kind of two layers of band of cloud data center with Predicable performance Bandwidth allocation method and system.
Background technology
With the continuous development of cloud computing technology, due to its simple pay-for-use pattern and cheap deployment with safeguard at This, more and more enterprise's selections are deployed to theirs using migration in cloud platform.Cost and performance be cloud tenant most concerned about The problem of.However, the Internet resources of existing commercialization cloud platform are shared in a manner of doing one's best between tenant.Such as Amazon EC2 ensure that tenant for CPU, and the demand of memory and hard disk cannot but provide the guarantee of network bandwidth.This makes cloud service carry Performance and cost for quotient's service provided have higher uncertainty.So lacking Bandwidth guaranteed will produce a series of ask Topic hinders enterprise's application to move to public cloud.Meanwhile can also make tenant apply virtual machine on run application it is unpredictable Property:Due to during operation network bandwidth it is inconsistent, the run time of the same cloud application is different, correspondingly, according to existing The cost of use of some pricing models, virtual machine will be also different.These influence factors are mainly by different between cloud tenant Expected performance with obtain performance inconsistent and caused by.
Although realizing there is the problem that the internet resource management of Bandwidth guaranteed is intrinsic on shared network infrastructure, Academicly this problem is solved with having had been proposed much working in industry.But there are great limitations for current scheme Property:1) existing coarseness network abstraction model cannot completely express the network demand of tenant, and be wasted in demand level Fractional bandwidth resource;2) virtual machine Placement does not fully consider the demand of tenant's angle;3) mechanism when current operation It can not achieve fair allocat of the unused bandwidth between guaranteed tenant and unsecured tenant.
Invention content
For the defects in the prior art, the present invention provides a kind of two layers of band of cloud data center with Predicable performance Bandwidth allocation method and system, solve cannot completely be expressed existing for existing bandwidth allocation methods tenant network demand, In demand level waste bandwidth resource, it is unable to fully consider the demand of tenant and can not achieve not used bandwidth resources to exist Between guaranteed tenant and unsecured tenant the problem of fair allocat.
To solve the above problems, in a first aspect, the present invention provides a kind of cloud data centers two with Predicable performance Layer bandwidth distribution method, including:
In cloud tenant's level, what is sent to tenant according to fine granularity Virtual Cluster FGVC network abstractions model includes network need The virtual machine request asked carries out Bandwidth guaranteed optimization;
And physical machine and corresponding bandwidth resources point are carried out to the virtual machine request after optimization according to default allocation algorithm Match;
In application, physical machine and corresponding bandwidth resources have been distributed fairly to guarantor by mechanism when being run using E-F Demonstrate,prove tenant and unsecured tenant.
Further, it is described according to fine granularity Virtual Cluster FGVC network abstractions model to tenant send include network need The virtual machine request asked carries out Bandwidth guaranteed optimization, including:The remaining bandwidth that determining virtual machine is asked according to the virtual machine, will The remaining bandwidth average mark of the virtual machine gives the unappropriated link of virtual machine connection, and by virtual machine both ends band Minimum value in width guarantee is as Bandwidth guaranteed between virtual machine.
Further, the basis presets allocation algorithm and carries out physical machine and corresponding band to the virtual machine request after optimization Wide resource allocation, including:
According to any one in following three kinds of default allocation algorithms to after optimization virtual machine request carry out physical machine and Corresponding bandwidth resource allocation:
First default allocation algorithm:First son that can meet two conditions is found from physical machine layer to root routing layer Tree, including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition It is the virtual machine number that virtual trough idle in subtree is more than or equal to tenant request;Second condition is that the bandwidth under the subtree is full The bandwidth demand of sufficient virtual machine request;
Second default allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, Including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition be Idle virtual trough is more than or equal to the virtual machine number of tenant request in subtree;Second condition is the remaining bandwidth under the subtree It is minimum, and the bandwidth demand of tenant can be met;
Third presets allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, Including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition be Idle virtual trough is more than or equal to the virtual machine number of tenant request in subtree;Second condition is the total of remaining bandwidth in subtree Number is maximum, and can meet the bandwidth demand in virtual machine request.
Further, it presets allocation algorithm in the basis and physical machine and corresponding is carried out to the virtual machine request after optimization Before bandwidth resource allocation, the method further includes:The virtual machine request after optimization is ranked up according to predetermined order algorithm.
Further, described that the virtual machine request after optimization is ranked up according to predetermined order algorithm, including:
The virtual machine request after optimization is ranked up according to any one in following five kinds of predetermined order algorithms:
Prerequisite variable FCFS:It is executed by arrival order;
The preferential SRRF of minimum profit rate:The possessing minimum profit rate of the task first carries out;
The preferential LRRF of Optimum Profit Rate:The possessing Optimum Profit Rate of the task first carries out;
Weight limit is preferential:Weight is introduced in queue scheduling mechanism, the weight of each virtual machine request is that this is virtual The profit margin of machine request is multiplied by stand-by period or divided by stand-by period.
Further, physical machine and corresponding bandwidth resources have been distributed fairly to by mechanism when the operation using E-F Ensure that tenant and unsecured tenant include:It is unsecured tenant by server granularity when there are unassigned bandwidth resources Set Bandwidth guaranteed.
Second aspect, the present invention also provides a kind of two layers of bandwidth allocation systems of cloud data center with Predicable performance System, including:Cloud tenant's layer face treatment module and application processing module;
The cloud tenant layer face treatment module, for being sent out tenant according to fine granularity Virtual Cluster FGVC network abstractions model The virtual machine request comprising network demand sent carries out Bandwidth guaranteed optimization;
And for according to presetting, allocation algorithm to carry out physical machine to the virtual machine request after optimization and corresponding bandwidth provides Source is distributed;
Application processing module, for using mechanism when E-F operations by physical machine and corresponding bandwidth resources liberally Distribute to guaranteed tenant and unsecured tenant.
Further, the cloud tenant layer face treatment module is specifically used for:It is asked to determine virtual machine according to the virtual machine Remaining bandwidth, the remaining bandwidth average mark of the virtual machine is given to the unappropriated link of virtual machine connection, and Using the minimum value in the Bandwidth guaranteed of virtual machine both ends as Bandwidth guaranteed between virtual machine.
Further, the cloud tenant layer face treatment module is specifically used for:
According to any one in following three kinds of default allocation algorithms to after optimization virtual machine request carry out physical machine and Corresponding bandwidth resource allocation:
First default allocation algorithm:First son that can meet two conditions is found from physical machine layer to root routing layer Tree, including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition It is the virtual machine number that virtual trough idle in subtree is more than or equal to tenant request;Second condition is that the bandwidth under the subtree is full The bandwidth demand of sufficient virtual machine request;
Second default allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, Including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition be Idle virtual trough is more than or equal to the virtual machine number of tenant request in subtree;Second condition is the remaining bandwidth under the subtree It is minimum, and the bandwidth demand of tenant can be met;
Third presets allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, Including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition be Idle virtual trough is more than or equal to the virtual machine number of tenant request in subtree;Second condition is the total of remaining bandwidth in subtree Number is maximum, and can meet the bandwidth demand in virtual machine request.
Further, the application processing module is specifically used for:When there are unassigned bandwidth resources, by clothes Device granularity of being engaged in is that unsecured tenant sets Bandwidth guaranteed.
As shown from the above technical solution, cloud data center two layers of bandwidth allocation of the present invention with Predicable performance Method and system, cloud tenant's level use fine granularity Virtual Cluster FGVC network abstractions model to tenant send include net The virtual machine request of network demand has carried out Bandwidth guaranteed optimization, and according to default allocation algorithm to the virtual machine after optimization ask into Row physical machine and corresponding bandwidth resource allocation;In application, mechanism is by physical machine and corresponding band when using E-F operations Guaranteed tenant and unsecured tenant are distributed to wide resource fairness, to solve existing for existing bandwidth allocation methods not Can completely express tenant network demand, demand level waste bandwidth resource, be unable to fully consider tenant demand and Not used bandwidth resources be can not achieve between guaranteed tenant and unsecured tenant the problem of fair allocat.
Description of the drawings
In order to more clearly explain the embodiment of the invention or the technical proposal in the existing technology, to embodiment or will show below There is attached drawing needed in technology description to be briefly described, it should be apparent that, the accompanying drawings in the following description is the present invention Some embodiments for those of ordinary skill in the art without creative efforts, can also basis These attached drawings obtain other attached drawings.
Fig. 1 is two layers of bandwidth allocation side of cloud data center with Predicable performance that first embodiment of the invention provides The flow chart of method;
Fig. 2 is two layers of bandwidth allocation side of cloud data center with Predicable performance that second embodiment of the invention provides The flow chart of method;
Fig. 3 is the schematic diagram that SpongeNet systems realize step;
Fig. 4 a are a hose model schematic diagrames;
Fig. 4 b are the schematic diagrames of a virtual machine connection figure (VCG);
Fig. 5 a are the VCG figures of a MapReduce virtual machine cluster;
Fig. 5 b are the VCG figures of a typical three-layer network application;
Fig. 6 a are a FGVC request schematic diagrames;
Fig. 6 b are FGVC model optimization process schematics;
Fig. 7 is that two benches virtual machine places schematic diagram;
Schematic diagram of mechanism when Fig. 8 a are a kind of E-F operations on a physical link;
Schematic diagram of mechanism when Fig. 8 b are another E-F operations on a physical link;
Fig. 9 is schematic diagram of mechanism when E-F is run in tree topology;
Figure 10 is the bandwidth conservation amount schematic diagram of different application;
Figure 11 is the deadline schematic diagram of various combination;
Figure 12 a are profit margin schematic diagrames;
Figure 12 b are virtual machine utilization rate (per second) schematic diagrames;
Figure 13 a are the deadline schematic diagrames of different average bandwidth sizes;
Figure 13 b are the deadline schematic diagrames under different platform load;
Figure 14 a and Figure 14 b are stand-by period and the queue length schematic diagram of various combination;
Figure 15 a and Figure 15 b are the stand-by period of each request and queue length changes with time schematic diagram;
Figure 16 a and Figure 16 b are the average latency schematic diagrames under different average bandwidth sizes and platform loads;
Figure 17 is experiment porch topological structure schematic diagram;
Figure 18 a and Figure 18 b are many-to-one experiment scene schematic diagrames;
Figure 19 a and Figure 19 b are many-to-one two kinds of scenes;
Figure 20 is the CDF schematic diagrames of MapReduce experiments;
Figure 21 is two layers of bandwidth allocation of cloud data center with Predicable performance that third embodiment of the invention provides The structural schematic diagram of system.
Specific implementation mode
In order to make the object, technical scheme and advantages of the embodiment of the invention clearer, below in conjunction with the embodiment of the present invention In attached drawing, technical solution in the embodiment of the present invention carries out clear, complete description, it is clear that described embodiment is A part of the embodiment of the present invention, instead of all the embodiments.Based on the embodiments of the present invention, those of ordinary skill in the art The every other invention obtained without creative efforts, shall fall within the protection scope of the present invention.
Fig. 1 shows two layer bandwidth of cloud data center with Predicable performance point that first embodiment of the invention provides The flow chart of method of completing the square, as shown in Figure 1, two layers of bandwidth allocation methods of cloud data center with Predicable performance of the present embodiment Include the following steps:
Step 101:In cloud tenant's level, the packet sent to tenant according to fine granularity Virtual Cluster FGVC network abstractions model Virtual machine request containing network demand carries out Bandwidth guaranteed optimization;
And physical machine and corresponding bandwidth resources point are carried out to the virtual machine request after optimization according to default allocation algorithm Match.
Step 102:In application, mechanism liberally divides physical machine and corresponding bandwidth resources when being run using E-F The guaranteed tenant of dispensing and unsecured tenant.
The present embodiment uses what fine granularity Virtual Cluster FGVC network abstractions model sent tenant in cloud tenant's level Including the virtual machine request of network demand has carried out Bandwidth guaranteed optimization, and according to default allocation algorithm to the virtual machine after optimization Request carries out physical machine and corresponding bandwidth resource allocation;In application, mechanism is by physical machine and phase when using E-F operations The bandwidth resources answered are distributed fairly to guaranteed tenant and unsecured tenant, are deposited to solve existing bandwidth allocation methods The network demand that cannot completely express tenant, demand level waste bandwidth resource, be unable to fully consider tenant need Not used bandwidth resources are sought and can not achieve between guaranteed tenant and unsecured tenant the problem of fair allocat.
Wherein, abstract model is that cloud data center realizes the most important ring of Bandwidth guaranteed.It must realize following four Target:1) tenant can with simple, intuitive and accurately specify their network demand, at the same model for some as Netflix The tenant of such virtual machine for possessing big quantity can neatly resilient expansion;2) abstract model can help tenant to optimize him Network demand, improve resource utilization;3) model can be applied to several scenes;4) demand expressed by it can be with The deployment scheme being simply converted in true cloud platform.Many correlative studys realize abstract network model from different perspectives. Oktopus and SecondNet provides the static reservations of Internet resources, but the former only realizes the network bandwidth guarantor of virtual machine layer Card, to precisely can not flexibly describe the bandwidth request of tenant;The latter realizes the Bandwidth guaranteed between virtual machine and virtual machine, However tenant needs to specify the bandwidth between every virtual machine, this makes model be not easy to dispose.Proteus, CloudMirror and ElasticSwitch proposes different run time mechanism, and Bandwidth guaranteed can be according to the real network demand of upper layer application It is adjusted into Mobile state.But the adaptability of Proteus and CloudMirror is confined to certain application background:Proteus is only It is only suitable for 3 layer network applications suitable for MapReduce, CloudMirror.ElasticSwitch realizes bandwidth conservation, and can For most of using but it is without reference to the allocation algorithm of virtual machine.
In order to make Bandwidth guaranteed instantiate, the network demand specified with network abstraction model needs to place calculation by virtual machine Method is mapped in the actual network topology of low layer.Many working values before consider CPU, the distribution of memory and hard disk, still Have ignored the distribution of Internet resources.In addition, most of existing researchs are dedicated to optimizing the distribution rank in virtual machine Placement Section, does not account for queuing stages therein.Moreover, the main system from the point of view of cloud service provider of these correlative studys Throughput has ignored tenant's response time of interest.
Finally, mechanism will not only ensure the bandwidth demand of tenant in network abstraction model when operation, it is also necessary to efficient, fair The bandwidth allocation between real network demand adjustment tenant when ground is run according to upper layer application.Solution before is without real It is existing:1) Bandwidth guaranteed;2) high usage;3) justice between tenant;4) exploitativeness.The research of mechanism when before for operation, It fails to realize the above target simultaneously.Oktopus, SecondNet and Silo are not carried out the efficient utilization of bandwidth, Seawall Bandwidth guaranteed cannot be provided.FairCloud needs special interchanger to support.ElasticSwitch has had ignored Bandwidth guaranteed Tenant and the not no fair allocat of the bandwidth between the tenant of Bandwidth guaranteed.
To solve the above-mentioned problems, in second embodiment of the present embodiment, give it is provided in this embodiment have can A kind of specific implementation process of two layers of bandwidth allocation methods of cloud data center of estimated performance specifically includes following step referring to Fig. 2 Suddenly.
Step 201:In cloud tenant's level, the packet sent to tenant according to fine granularity Virtual Cluster FGVC network abstractions model Virtual machine request containing network demand carries out Bandwidth guaranteed optimization.
Step 202:The virtual machine request after optimization is ranked up according to predetermined order algorithm.
Step 203:Physical machine is carried out to the virtual machine request after optimization according to default allocation algorithm and corresponding bandwidth provides Source is distributed.
Step 204:In application, mechanism liberally divides physical machine and corresponding bandwidth resources when being run using E-F The guaranteed tenant of dispensing and unsecured tenant.
The present embodiment proposes SpongeNet, it is a kind of method of two levels for cloud data center bandwidth allocation, Application based on cloud is set to have predictable performance.In tenant's level (i.e. tenant's level), SpongeNet fine granularity Virtual Clusters (Fine-grained Virtual Cluster) network abstraction model is combined with effective two benches virtual machine Placement, root According to the demand assignment bandwidth of tenant.FGVC abstract models can precisely and neatly express the demand of tenant, effectively save band Width, widely used and easy deployment.Two benches virtual machine prevents algorithm by Optimize and line up and places two stages, effectively will FGVC models are mapped in practical topology, and can meet different optimization aims.It is run in the E-F of application, SpongeNet When mechanism (Efficiency-Fairness runtime mechanism) bandwidth to tenant is realized using Open vSwitch Ensure and bandwidth allocation is adjusted according to the application demand of tenant.Mechanism realizes the Bandwidth guaranteed of FGVC models when E-F is run, will Not used bandwidth resources are distributed fairly to guaranteed and unwarranted tenant.
The present embodiment carries out emulation experiment using the topology of a large amount of truthful data and data center, it was demonstrated that FGVC models With the superiority of two benches virtual machine Placement.The present embodiment is taken in the cloud data center experimental bench that 7 servers form A simple SpongeNet prototype is built, mechanism has better performance than other existing schemes when illustrating E-F operations.
The validity of mechanism, the present embodiment add when to prove that FGVC models, two benches virtual machine Placement and E-F are run Added a flexible interface, it allow tenant simply, clearly express network demand.Meanwhile the present embodiment develops One new scheduler, the two benches that API is realized in cloud platform in cloud platform of increasing income based on OpenStack Havana are empty Quasi- machine Placement.Finally, the present embodiment realizes E-F operation opportunitys by the part of original code of rewriting Open vSwitch The function of system.SpongeNet sets adjustment Bandwidth guaranteed according to the network demand of tenant, to realize predictable performance.Meanwhile SpongeNet allows virtual machine using the bandwidth resources not used in cloud platform, to improve cloud platform network money The utilization rate in source.
The target of SpongeNet systems be so that the virtual machine network performance of cloud tenant is stablized, meanwhile, make cloud service provider Obtain economic benefit as big as possible.Whole process is realized (Fig. 3) by three steps:
The first step, cloud tenant are asked using virtual machine of the FGVC specifications of a model containing network demand.By optimizing from virtual machine Level is to the Bandwidth guaranteed between virtual machine so that the request of tenant is more reasonable, because this is the request saving to arrive later More bandwidth.
Second step, can be by five kinds not according to different targets by the pretreated request of obtained process in the first step Same algorithm is lined up.Next, SpongeNet can dispatch orderly virtual machine request queue according to dispatching algorithm.Based on three kinds The thought of classical memory allocation algorithm, this patent realize three kinds of different dispatching algorithms.
Third walks, and mechanism realizes the band between virtual machine set in FGVC models by controlling limiter of speed when E-F is run Width ensures, then uses the class TCP bandwidth detections of Weight to realize the not used bandwidth resources of fair allocat, and realize efficiently It utilizes.The present embodiment will elaborate these three parts in lower section.
FGVC models are realized on the basis of traditional hose model.The Inspiration Sources that hose model is realized are in present Most of enterprise runs Distributed Application in the dedicated physical cluster being made of a physics routing and multiple calculate nodes. So in hose model (Fig. 4 a), there is such abstract model:Multiple virtual machine handling capacities of the same tenant are limited Two-way link is linked to a virtual flow-line.In hose model, the request of a tenant<N,B>It represents him/her and needs N platform bands Width is the virtual machine of B, so the bandwidth of virtual flow-line is N*B.
Hose model can be applied to mostly apply, but tenant can only express the bandwidth demand of virtual machine-level.No By having used which type of virtual topology, a virtual machine can only be received and sent messages with rate B.So the present embodiment devises FGVC models:On the basis of hose model, it being added to a parameter --- virtual machine connection figure (VCG), it can make tenant Express the bandwidth (Fig. 4 b) of link between any virtual machine.That is, tenant can completely express their network demand. VCG be one figure, its one virtual machine for including Bandwidth guaranteed of each node on behalf, each edge represent two virtual machines it Between communication and Bandwidth guaranteed.
In cloud data center of today, a large amount of batch application (batch applications) and interactive application (such as Hadoop and 3 layer network applications) are run under virtual environment.These applications usually have fixed communication pattern, so renting Family is apparent that the bandwidth demand how set between virtual machine and virtual machine.
Hadoop MapReduce processes include two stages.In the map stages, the data of input are cut into multiple small Block distributes to mappers processing.In the reduce stages, intermediate data shuffle that MapReduce frames form the map stages Operation, and they are sent to reducers processing.It is logical between virtual machine that the present embodiment can use FGVC models clearly express Believe details.For example, a tenant applies for the MapReduce virtual machine clusters of 8 nodes, including 1 master node and 7 Slave nodes.In 7 nodes, 7 mappers and 2 reducers are (in general, reducers is mappers nodes Subset).Tenant can illustrate this request by FGVC.In fig 5 a, all to have 8 nodes of Bandwidth guaranteed as hose mould Type is the same, is connected to a virtual router.By VCG, the present embodiment can learn communication pattern and bandwidth between virtual machine Ensure.As described above, in the map stages, the data after fractionation are sent to mappers (as shown in Figure 5 a, virtual machines by master nodes A is connected to virtual machine B to H).In the reduce stages, reducers collects the processed data from mappers.At this In example, data are sent to virtual machine F by virtual machine B, C and D;Data are sent to virtual machine E by virtual machine G, H.
Equally, the present embodiment FGVC are also applied for interactive application, such as 3 layer network applications.Fig. 5 b are illustrated typically Possess the VCG of the three-layer network application of front end layer (A-C), Business Logic (D-F) and database layer (G-I).
The explanation of optimization bandwidth demand is given below.
FGVC models provide the ability of expression inter-virtual machine communication pattern and Bandwidth guaranteed for tenant.In certain situations Under, if tenant is in network data between setting virtual machine, it is not known that the concrete numerical value between virtual machine X and virtual machine Y, it can be with First this link is not set.As shown in Figure 6 a, the virtual machine of 5 60Mb/s of a tenant request, and the tenant sets communication The Bandwidth guaranteed value of pattern and which part link.Before this model is mapped to low layer infrastructure, the present embodiment is first The initial value for first needing to obtain the Bandwidth guaranteed of link (such as A to B, C to D etc.) between virtual machine, needs because rate executes in void It works under quasi- machine to the pattern of virtual machine;Only the level of VM to bandwidth carry out ensure or it is inadequate.
One reasonable and simple settling mode is by the remaining bandwidth average mark of virtual machine to connected to it unallocated Link.This method of salary distribution is proved to be very effective in ElasticSwitch.In the above example, virtual machine D Remaining bandwidth be 30Mb/s, and in coupled link also have both links bandwidth do not determine.So in virtual link D In → E, methods of the virtual machine D by dividing equally, the bandwidth link that can provide 15Mb/s ensuresIt is similar, virtual machine E The bandwidth link that 40Mb/s can be provided ensuresIn the simplification method of FGVC, the present embodiment is protected by both ends bandwidth Minimum value in card is as Bandwidth guaranteed B between virtual machineD→EValue:
So final BD→EValue be 15Mbps.For virtual machine E, if QEIt is all virtual to be directly connected to virtual machine E The set of machine, then the real network demand of virtual machine E beIt is 35Mbps, virtual machine E is saved 25Mbps bandwidth.The Bandwidth guaranteed of virtual machine D is all utilized.By Optimized model, finally obtained virtual machine Bandwidth guaranteed And link bandwidth ensures as shown in Figure 6 b between virtual machine.Optimization process makes the request of tenant save 120Mbps bandwidth in total.
Wherein, Bandwidth guaranteed optimization algorithm is specially as described below:
R is asked for the virtual machine of some tenant:<N,B,G>, execute following operation:
Step (1) this method needs following parameter:
Gij:Link states of the virtual machine i to virtual machine j.Positive nonzero number represents the band connected between virtual machine i and virtual machine j It is roomy small;0 indicates connection, but not specified bandwidth demand therebetween;- 1, which represents the two, is not connected to.
Bi:The bandwidth demand for the virtual machine i that tenant specifies.
Ri:The remaining bandwidth of virtual machine i.
Ui:The number of links of virtual machine i also unassigned bandwidths.
Step (2) initializes number counter i=1, with the propulsion of anabolic process, often passes through a number, counter increases Add i=i+1, when i is not more than N, following steps are executed in each scale of notation:
Step (2.1) is to every virtual machine i, according to matrix G, initializes its remaining bandwidth RiFor
The virtual machine bandwidth B that tenant specifiesiSubtract the allocated bandwidthI.e.:
Step (2.2) initializes the number of links of its unassigned bandwidth, i.e., according to matrix G:
Step (3) is when there are still the links of unassigned bandwidth, i.e. G in matrix Gij=0, then execute following steps:
Step (3.1) finds out a virtual machine i from all virtual machines, meets Ui>0, and Ri/UiValue minimum void Quasi- machine i.
Step (3.2) finds first j, meets Gij=0, i are gained in step (4.1).
Step (3.3) updates Gji=Gij=Ri/Ui
Step (4.4) updates RiAnd Rj, Ri=Ri/Ui, Rj=Ri/Ui
Step (3.5) updates UiAnd Uj, Ui=Ui- 1, Uj=Uj-1。
Step (4) initializes number counter i=1, with the propulsion of anabolic process, often passes through a number, counter increases Add i=i+1, when i is not more than N, following steps are executed in each scale of notation:
Step (4.1) updates Bi=Bi-Ri
Step (5) returns to r:<N,B,G>.
The realization process of two benches virtual machine Placement is given below.
After having executed above-mentioned optimization process, next, SpongeNet will pass through effective and efficient virtual machine Placement It will be on the virtual machine Demand mapping to actual physics platform by optimization process.As shown in fig. 7, the present embodiment divides the step For two stages:One is phase sorting, and in this stage, the request of tenant is sorted by a certain specific algorithm;Second It is allocated phase, in the process, the request queue of sequence passes sequentially through a certain specific allocation algorithm and is allocated.
Optimal distribution is carried out to virtual machine and has proved to be np hard problem, nowadays First-Fit (first adaptive strategy) is The most common heuritic approach used when allocated phase distributes virtual machine.The present embodiment is in FCFS (prerequisite variable) strategies On the basis of extend and propose 4 kinds of ordering strategies again, and propose on the basis of First-Fit strategies other two kinds of distribution Strategy.The Different Strategies in the two stages are combined with each other, it can be found which is for the demand of cloud service provider is Best solution, which demand to tenant is best solution.
A, the queuing algorithm of first stage
When the rate that virtual machine request reaches is more than the speed of response of platform, not processed request, which can be overstock, is adjusting It spends in queue, may result in platform overload.At this moment, it needs to execute void with a suitable scheduling queue ordering strategy quickening Quasi- machine request and the rate of rise for reducing request queue.
The present embodiment provides 5 kinds of queuing policies according to the different request condition such as task size, stand-by period.Because renting The quantity and bandwidth demand for including virtual machine in the request at family, this embodiment introduces an existing pricing models to calculate each The price p of the virtual machine request of tenant, and use profit margin r=p/t as the parameter of unified measurement task size.5 kinds Strategy is as follows:
Prerequisite variable (FCFS) strategy:This is a simple and universal sort algorithm, and virtual machine arrives by them Sequence executes.
Minimum profit rate preferential (SRRF) strategy:The possessing minimum profit rate of the task first carries out, this algorithm load compared with When big, the response speed of sponge system can be improved.
Optimum Profit Rate preferential (LRRF) strategy:The possessing Optimum Profit Rate of the task first carries out.This algorithm can improve The throughput of system.
Weight limit preference strategy (including two kinds of strategies):This strategy be on the basis of SRRF and LRRF improve obtained by It arrives.SRRF and LRRF strategies are all likely to occur situation hungry to death, have in SRRF Optimum Profit Rate and have most in LRRF The task of lean profit rate is likely to be constantly in wait state in high-load situations, this.In order to solve this problem, this Introduce weight in this queue scheduling mechanism, the weight of each task is that the profit margin of task is multiplied by the stand-by period (LRRF) Or divided by the stand-by period (SRRF), this can make falling into a long wait for task have processed chance.
B, the allocation algorithm of second stage
Allocation algorithm is for determining which platform physical machine a virtual machine should be assigned in.One suitable allocation strategy The resource utilization of cloud platform can be optimized and further increase the performance of dispatcher.
By a FGVC model and a hose model is assigned to physical topology is the same, because the present embodiment only needs Consider the bandwidth limitation of the virtual machine-level of the FGVC models optimized.When selecting suitable allocation algorithm, fragment is main The considerations of factor because distribution one FGVC request may make the subtree in a physical topology there was only several virtual machines, but Only remaining seldom bandwidth can not continue that other FGVC is received to ask.It is classical in above-mentioned fragment problems and operating system Memory Allocation problem is quite similar.There are three types of common solutions for this problem:First-fit, best-fit and worst- fit.Work before mainly with first-fit algorithms distribution virtual machine request, the present embodiment memory best-fit and On the basis of worst-fit algorithms, best-fit the and worst-fit algorithms of virtual machine distribution are realized.The present embodiment uses 3 in allocation strategy it is as described below.
Adaptive strategy for the first time:This strategy finds first from bottom (physical machine layer) to top (root routing layer) can meet two The subtree (physical machine, a ToR interchanger, a convergence layer switch or a core layer switch) of a condition.One A condition is " the virtual machine number that idle virtual trough is more than or equal to tenant request in subtree ".Second condition is the " subtree Under bandwidth meet virtual machine request bandwidth demand ".To sum up, this strategy, which finds first, minimum can meet tenant's need The subtree asked.
Optimal adaptation strategy:As first-fit strategies, which is also to traverse each node the bottom of to top, is found The subtree of two conditions can be met.First condition is as first-fit.Second condition is the " residue under the subtree Bandwidth is minimum, and can meet the bandwidth demand of tenant ".This strategy searching can be such that bandwidth fragmentation minimizes and can meet The minimum subtree of tenant request.
Worst adaptive strategy:With best-fit strategies on the contrary, unique difference of the two is present in second condition:Subtree The sum of middle remaining bandwidth is maximum, and can meet the bandwidth demand in virtual machine request.That is, find can be with for this strategy Meet tenant request, and the tenant after being retains the minimum subtree of maximum bandwidth resource.Algorithm 2:Best-Fit is distributed Algorithm
The frame of Best-Fit algorithms is similar to First-Fit, and different is that Best-Fit selects optimal one Then subtree is recursively that tenant distributes virtual machine and bandwidth.
vBe subtree using node v as root can be the number that certain tenant accommodates virtual machine, it is empty by remaining bandwidth and residue The limitation of quasi- trough.NvMathematical definition it is as follows:
Nv={ n ∈ [0, min { kv,R}]
Wherein, BiIt is the bandwidth demand of the virtual machine i of tenant.A be all virtual machine bandwidth demands and,kvIt is The currently available virtual machine slot number of v subtrees, and kv∈ [0, K], K are the virtual machine slot number under subtree.R is that there is still a need for the virtual of distribution Machine quantity.RlFor the remaining bandwidth of link l.
For a tenant request r:<N,B>, execute following operation:
This method may need disposably to initialize following parameter:
T:3 layers of tree topology.
l:The number of plies of current traversal topology.0-2 respectively represents physical machine layer, ToR routing layer, Pod routing layer and root routing Layer.
Hv:Virtual machine slot number amount that can be idle as the subtree of root using node v.
Step (1) will currently traverse number of plies l initialization, l=0;
Step (2) executes always following operation:
Step (2.1) traverses using it as the subtree of root each l layers of node:
Step (2.1.1) counts the quantity H of idle virtual machine slot in subtree vv
Step (2.1.2) is if N are more than or equal to Hv, then following operation is executed:
Candidate subtree queue C is added in node v by step (2.1.2.1).
Step (2.2) is if what currently traversed is routing layer, i.e. l>0, then execute following operation:
Step (2.2.1) is by candidate subtree queue C by the upstream bandwidth and ascending sort of the node of subtree.
Otherwise, what is currently traversed is physical machine layer, i.e. l=0 to step (2.3), then executes following operation:
Step (2.3.1) is by candidate subtree queue C by the quantity H of the free virtual trough of subtreevAscending sort.
Step (2.4) distributed virtual machine number assigned=BestFitAlloc (r, v, N), and recursively distribution is virtual Machine and bandwidth.
Step (2.5) judges assigned=N:
Step (2.5.1) returns to True if it is true.
Otherwise parameter, is rolled back to the state executed before 2.4, and update l=l+1 by step (2.5.2).
Step (2.6) judges whether l is equal to 3.
Step (2.6.1) returns to False if it is true.
BestFitAlloc(r,v,m)
Layer where step (1) decision nodes v.
Step (1.1) executes following operation if level (v)=0.
M platform virtual machines are distributed to tenant by step (1.1.1), and are marked
Step (1.1.2) returns to m
Otherwise step (1.2), executes following operation:
Step (1.2.1) initializes allocated virtual machine number count=0.
Step (1.2.2) finds the node of all available free virtual troughs, is put into both candidate nodes queue C.
Step (1.2.3) works as count<M and length (C)!=0, then execute following operation:
Step (1.2.3.1) judges whether level (C)>0
Step (1.2.3.1.1) is if it is true, by candidate subtree queue C by the upstream bandwidth and liter of the node of subtree Sequence sorts.
Step (1.2.3.1.2) is by candidate subtree queue C by the quantity H of the free virtual trough of subtreevAscending sort.
Step (1.2.3.2) recurrence, count+=BestFitAlloc (r, C0, NC0)
Further, after the step of having executed above-mentioned tenant's level, the E-F operation opportunitys of application are given below System.
In this section, the present embodiment proposes one based on the improved of ElasticSwitch rate-allocation solutions Mechanism (mechanism when E-F is run) when operation.Mechanism compensates for ElasticSwitch and exists for not used bandwidth when E-F is run The problem of fair allocat being can not achieve between tenant that is guaranteed and not ensureing, and four mesh being mentioned above are realized simultaneously Mark.
In SpongeNet, the present embodiment proposes mechanism when taking into account efficiency and fair E-F operations, to liberally Not used bandwidth is liberally distributed between guaranteed tenant and unsecured tenant.It still may be used under extreme Network status To ensure the performance of the network of best effort.Evaluation part (chapter 5), which demonstrates SpongeNet, can more liberally distribute sky Not busy bandwidth, and realize better performance isolation between tenant.
Unassigned bandwidth is proportionally distributed to them by mechanism according to the payment expense of tenant when E-F is run.On The existing pricing model Cost=NkvT+NkbB stated consists of two parts.NkvT is that tenant uses N platform virtual machines, when operation Between be T expense.NkbB is the expense for ensureing bandwidth for N platform virtual machines.Mechanism has used this part conduct of Nkv when E-F is run The weight of tenant.Therefore, unwarranted tenant uses the bandwidth of distribution to input B as the Bandwidth guaranteed of function RX→Y, RX→Y= max(BX→Y,RW_TCP(BX→Y,FX→Y)).Therefore, unwarranted tenant can liberally utilize not used with guaranteed tenant Bandwidth.
In SpongeNet, if the expense of these three tenant requests is Nkv=10/hour, mechanism when E-F is run It can be by unappropriated bandwidth (L-BX→Y+BZ→T+BA→B=700Mbps) according to weight Nkv give tenants.In this way, each tenant The Bandwidth guaranteed new using them is as the input of function R.So the final speed limit result of three tenants is respectively RX→Y= 333Mbps,RA→B=233Mbps and RZ→T=666Mbps.
How it, referring to Fig. 8 a and Fig. 8 b, but be deployed to tree-shaped by mechanism operational excellence on physical link when E-F is run It is a challenge in topology.Because every server has the virtual machine of tenant A, mechanism can be all tenant A's when E-F is run The unwarranted link of virtual machine regards a guaranteed link as.This special guaranteed link, it has minimum bandwidth, Can be assigned to it is all on other physical links that there is the server of the virtual machine of tenant A to connect.Specifically, tenant t The Bandwidth guaranteed of server i be arranged to
Wherein, VtIt is the server of all virtual machines for having tenant t, Path (i, j) is between virtual machine i to virtual machine j Physical link set.In Fig. 9, there is the virtual machine for having tenant A on 4 servers.Server a has 3 physical links and its He has the server of the virtual machine of A to be connected.The minimum of this three links can bandwidth allocation be respectively 90Mbps, 60Mbps and 60Mbps.So the final bandwidth of the special Bandwidth guaranteed link of server a ensures to be 60Mbps.Remaining several servers, institute The physical link for being linked to other servers is the same.So the bandwidth of server b to d is also 60Mbps.
Specifically, it is that unsecured tenant sets Bandwidth guaranteed by server granularity, wherein being unsecured by server granularity Tenant sets the core of mechanism when Bandwidth guaranteed is E-F operations.It is unsecured rent when there are unassigned bandwidth resources Family sets Bandwidth guaranteed in server granularity, to keep the distribution between unsecured tenant and guaranteed tenant more fair.Following It is that unsecured tenant sets Bandwidth guaranteed algorithm by calculating by the unappropriated bandwidth of cost ratio distribution by server granularity, obtains To server s0It can be at every from s0To server sjLink how many bandwidth can be obtained, be used in combination minimum value as link Guarantee value.And it will be from s0Minimum guarantee value to other servers is assigned to tenant t in server s0In guarantee value.According to tree The function (being generally used for data center architecture) of shape topology, all leaf nodes are accessed since a certain leaf node to be meaned time Entire tree is gone through, is needed by each of which link.Therefore, stMiddle Servers-all has identical guarantee bandwidth Bt, choose St [0] it is used as server s0It is not essential for calculating guarantee value, can arbitrarily choose StIn server.
It is that unsecured tenant sets Bandwidth guaranteed algorithm to be given below by server granularity:
For unsecured tenant t, following operation is executed:
This method needs following parameter:
t:One unwarranted tenant;
T:The tenant of tenant t and other and t competitions;
Mi:In T, the payment of tenant i;
St:The server of virtual machine containing tenant t;
Not used bandwidth in link p.
Step (1) .servers0=St[0]
Step (2) initializes number counter j=1, with the propulsion of anabolic process, often passes through 1 number, counter increases Add j=j+1, works as server SjIn StWhen middle, following steps are executed in each scale of notation:
Step (2.1) is obtained from server s0To server sjGuarantee value:
Step (3) will be from s0Minimum guarantee value to other servers is set as tenant t in server s0In guarantee value:
Step (4) returns to Bt
During below, the experimental evaluation result of SpongeNet is given.
In this part, the present embodiment assessment 1) FGVC abstract models, 2) first stage queuing policy and second stage point With strategy optimum combination and 3) realized E-F operation when mechanism target.The present embodiment has evaluated from virtual machine level FGVC models save the effect of bandwidth.Furtherly, the experiment of the present embodiment has evaluated FGVC models respectively and two benches are virtual The validity and high efficiency of machine Placement.In addition, the present embodiment has evaluated throughput and the response time of each tenant.Most Afterwards, the present embodiment also demonstrate in practical cloud platform realize virtual machine to the Bandwidth guaranteed between virtual machine be feasible.
It is explained in terms of tenant's layer emulation below.
In terms of assessing the first two, the present embodiment realizes FGVC models, 5 queuing policies, 3 distribution with Python The VC models (a kind of hose model using the same band method of salary distribution) of strategy and Oktopus.The following table 1 is shown using type Distribution.
Table 1
Emulation setting:The emulator use of the present embodiment by 1 core layer switch, 4 convergence layer switch, 80 3 layers of tree topology of ToR interchangers and 1600 servers composition simulates actual cloud data center.In order to keep experiment succinct Be illustrated, the CPU of all servers and it is interior have identical configuration, and every server has 4 virtual troughs.Server, ToR The upstream bandwidth of routing and polyaluminium chloride PAC is respectively 100Mbps, 1Gbps and 10Gbps.
The data set of experiment derives from bing.com, including many groups of service datas.Service request is by multiple-task Type (interactive application or batch processing task) and communication pattern (such as linear, star, net form) composition.The present embodiment is from Bing Workflow in have chosen 20000 groups of service datas, be broadly divided into four classes, as shown in table 1.This 20000 groups of virtual machine requests Meet Poisson distribution, the arrival time (λ) that is averaged is 0.02, and the execution time of task meets exponential distribution, and task leaves rate (μ) is 0.00002.
First, the present embodiment has evaluated FGVC models, the bandwidth that then quantitative analysis is saved by Optimized model, and and VC models compare.
Bandwidth conservation:As described above, virtual machine request is divided into four classes.The first kind be batch processing task (such as MapReduce).Such topology is star-shaped, can pass through the bandwidth (Figure 10) of FGVC model optimizations about 77%.Second class is to hand over Mutual formula applies (such as 3 layer network applications), and the topology of 3 layer networks application is linear, and 18% bandwidth can be saved by FGVC. Other two kinds of topologys are that the communication pattern connected entirely and isolated, no interactions patterns do not save so compared with VC models Bandwidth-saving.FGVC models reach 48% to the bandwidth optimization rate of all 20000 tasks.In VC models, each node has Same Bandwidth guaranteed, this is easy to that certain nodes is made to become bottleneck.By being analyzed above it can be found that FGVC models are relatively collecting In network topology in have preferably save bandwidth performance.
Throughput:The present embodiment compares throughput according to the time that all tasks are completed, because what shorter task was completed Time means higher throughput under the scene of lasting task.Figure 11 illustrate 3 kinds of different allocation strategies from it is different The deadline of queuing policy combination.Best-fit is optimal with LRRF tenant, this combination of primer makes the fragment of platform most Smallization, to receive more arriving later for tasks.Worst-fit combined with SRRF it is optimal because this combination can preferably exist Minimum fragment is left for subsequent task in each unit interval.On the other hand, SRRF is combined with worst-fit allocation strategies It is optimal, because this combination is as far as possible that the big task to arrive later retains maximum space in each unit interval.This Embodiment completes experiment with 20000 virtual machine requests, and 20000 always spending under pricing model for request are consistent. The profit margin of cloud platform is bigger, and the deadline of task is shorter, and as LRRF is combined with first-fit, profit margin is It is maximum.
The present embodiment also compares the FGVC+LRRF+first- of best performance in terms of profit margin and virtual machine utilization rate Fit is combined and traditional VC+FCFS+first-fit is combined.In Figure 12 a, the present embodiment depicts both schemes each seconds Profit margin.Before reaching stable state, the profit margin of the two is essentially identical, because the resource of platform is sufficient at this time.But works as and reach When stable state, the average profit of the solution of the present embodiment is 17.60, and solution before is 15.34, and the present embodiment carries Go out d schemes and improves 12.84% than traditional scheme.The result of virtual machine utilization rate is also almost the same, as shown in Figure 12b, this The scheme that embodiment proposes utilization rate in stable state is 99.50%, and 32.20% is promoted than traditional scheme.
In order to assess the integrality and robustness of new departure, the present embodiment changes the big of bandwidth resources and platform loads It is small, compare the property of tri- kinds of schemes of VC+FCFS+first-fit, FGVC+FCFS+first-fit and FGVC+LRRF+first-fit Can, as a result as shown in 13a.In the case of bandwidth resources difference, experimental result is as shown in the figure.It is asked with the average bandwidth of task Increase is asked, the deadline of task is also elongated therewith, but the scheme of the present embodiment is always optimal.When the present embodiment changes platform It is as a result similar therewith when load, as illustrated in fig. 13b.From in figure it can be found that FGVC plays very important work in combination With.
Response time:The scheme of the present embodiment response time also from the point of view of tenant.Figure 14 a and Figure 14 b difference Illustrate average latency and the average queue length of 15 kinds of combined strategies.The present embodiment from figure is it can be concluded that FCFS So that the response time of platform is best, because scheduling mechanism is located the waiting for maximum duration of the task with greedy method at first every time Reason, this is with obvious effects for reducing average latency and waiting list length.The present embodiment is found, from the cloud platform response time Angle, FGVC+FCFS+best-fit is optimal tenant's strategy.
The present embodiment also analyzes the response time in more fine granularity.When Figure 15 a illustrate the waiting of each task Between.Figure 15 b illustrate the queue length of each task.It is determined in scheme based on VC solution to model, the stand-by period of virtual machine request It is continuously increased, and in the scheme based on FGVC models, the stand-by period stablizes.
In Figure 16 a and Figure 16 b, the present embodiment changes average bandwidth size and platform loads, compares three kinds of solutions Average latency and length of averagely babbling.The experimental result that change average bandwidth request size obtains is as illustrated in fig 16 a.With Average bandwidth request becomes larger, and the average latency also increases therewith, but FGVC+FCFS+best-fit is optimal always.Change When platform loads, trend be it is identical, as shown in fig 16b.In conclusion FGVC models are most important for the optimization response time Factor.
In addition, giving the experiment results of application.
Mechanism when the present embodiment is run by the deployment evaluation of small scale prototype E-F.The target of assessment has:1) it shows Mechanism can provide Bandwidth guaranteed in the worst case when E-F is run;2) mechanism has realized guarantor when displaying E-F operations Fair share 3 between card tenant and unsecured tenant) show that mechanism efficiently utilizes when E-F is run.The present embodiment is at two kinds The above target of efficiently fair operating mechanism is illustrated under situation:Many-one scene and MapReduce scenes, just as ElasticSwitch is the same.
Testing stand is arranged:The present embodiment realizes SpongeNet on small-sized data multi-center trial platform, it is by 7 physics Machine constitutes 2 layers of tree topology, such as Figure 17.The present embodiment is in this data center deployment OpenStack, including 1 Control node and 6 calculate nodes.Each server has 2GHz Intel Xeon E5-2620CUPs and 16GB memories.1 layer (between such as server and ToR interchangers) and 2 layers of bandwidth are 230 and 700Mbps respectively.
Many-one scene:Two virtual machines X and Z belong to two different tenants, the two tenants on the server Other virtual machines be on other server nodes, as shown in figure 18 a.Virtual machine Z is received from multiple virtual machines Data, and virtual machine X receives the data for coming from single virtual machine.The physical link of their contention greens, such as Figure 18 b.
In ElasticSwitch, X and Z suffer from identical 100Mb Bandwidth guaranteeds, and representative can carry on 230Mbps The maximum of confession ensures bandwidth.Figure 19 a compare throughputs of the X under four kinds of solutions:Unprotect, static reservations (Oktopus), ElasticSwitch and SpongeNet.SpongeNet in the scene of the two guaranteed tenants, with ElasticSwitch has similar performance.Even if when the sender of Z is when being continuously increased, SpongeNet can still provide for X Bandwidth guaranteed.Meanwhile when not having sender to be communicated with Z, whole physical links can be supplied to X by SpongeNet, this reality The static reservations of Oktopus are showed.The guaranteed tenant that Figure 19 b are shown and unsecured tenant and Figure 19 a are identical as setting, it Suffer from same expense ($ 5/ hour).In ElasticSwitch, X almost occupies all band width in physical, because having The tenant of guarantee has higher priority than unwarranted tenant.But mechanism can be public when E-F operations in SpongeNet Not used bandwidth is distributed in level land for them.Since their payment is identical, the two tenants can obtain half with everyone not It uses bandwidth (100Mbps).So no matter how many virtual machine are communicated with Z, Z obtains 50Mbps, and X obtains 150Mbps.
MapReduce scenes:The present embodiment uses the true MapReduce data simulations institute of MapReduce operations There is process, and measures the operation deadline of 4 kinds of different solutions.The present embodiment uses 6 all calculate nodes, Each node has 5 virtual machines, 30 in total.The present embodiment creates multiple tenants, their request is randomly set as 2 It is differed to 10 virtual machines;Wherein, half virtual machine is as mapper, and half is as reducer;Each mapper is connected to one A reducer.All virtual machines of each tenant provide FGVC models, and the stream between each virtual machine has 30Mbps's Ensure.The present embodiment tests nonequilibrium virtual machine Placement Strategy, and (mapper is placed on the right of tree, and reducers is placed on tree The left side).This nonequilibrium scene can give the bandwidth resources of data center network to apply maximum pressure.
Figure 20 illustrates the CDF figures under 4 different solutions:Unprotect, static reservations (Oktopus), ElasticSwitch and SpongeNet.The deadline of SpongeNet and ElasticSwitch is always shorter than static reservations, because Physical link resource cannot be fully utilized for static reservations.SpongeNet ratios ElasticSwitch has higher handle up Rate, because in this simple experiment, unsecured and guaranteed tenant exists simultaneously, and in ElasticSwitch, have The stream of guarantee can influence unwarranted stream.When using unprotect scheme, the operation deadline ratio under worst case SpongeNet long 1.75 ×.
Wherein, enterprise's application is deployed in cloud platform, and so that its performance stabilization is very important by Bandwidth guaranteed. For this purpose, the present embodiment proposes SpongeNet systems, including two layers, to realize that cloud data center is fair and efficiently utilizes Bandwidth guaranteed.Tenant's layer consists of two parts, FGCV models and two benches virtual machine Placement.FGVC models are one It is provided for tenant and more precisely, flexibly expresses network demand and save the model of bandwidth in demand level.Two benches virtual machine is put Algorithm is set, it considers ordering strategy and allocation strategy simultaneously, and different optimal tactful groups can be provided according to different targets It closes.Mechanism when application layer provides E-F operations, it not only realizes the Bandwidth guaranteed of FGVC models between virtual machine, also can basis The application demand on real-time upper layer liberally distributes not used bandwidth between guaranteed tenant and unsecured tenant.By complete Emulation and tested with the testing stand that truthful data is completed, it was demonstrated that it is better that SpongeNet can be such that cloud data center realizes Network resource management and predictable application performance.
Third embodiment of the invention provides a kind of two layers of bandwidth allocation system of cloud data center with Predicable performance System, referring to Figure 21, including:Cloud tenant's layer face treatment module 211 and application processing module 212;
The cloud tenant layer face treatment module 211 is used for according to fine granularity Virtual Cluster FGVC network abstractions model to renting The virtual machine request comprising network demand that family is sent carries out Bandwidth guaranteed optimization;
And for according to presetting, allocation algorithm to carry out physical machine to the virtual machine request after optimization and corresponding bandwidth provides Source is distributed;
Application processing module 212, for using mechanism when E-F operations that physical machine and corresponding bandwidth resources is fair Distribute to guaranteed tenant and unsecured tenant in ground.
Further, the cloud tenant layer face treatment module 211 is specifically used for:It is determined according to virtual machine request virtual The remaining bandwidth average mark of the virtual machine is given the unappropriated link of the virtual machine connection by the remaining bandwidth of machine, with And using the minimum value in the Bandwidth guaranteed of virtual machine both ends as Bandwidth guaranteed between virtual machine.
Further, the cloud tenant layer face treatment module 211 is specifically used for:
According to any one in following three kinds of default allocation algorithms to after optimization virtual machine request carry out physical machine and Corresponding bandwidth resource allocation:
First default allocation algorithm:First son that can meet two conditions is found from physical machine layer to root routing layer Tree, including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition It is the virtual machine number that virtual trough idle in subtree is more than or equal to tenant request;Second condition is that the bandwidth under the subtree is full The bandwidth demand of sufficient virtual machine request;
Second default allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, Including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition be Idle virtual trough is more than or equal to the virtual machine number of tenant request in subtree;Second condition is the remaining bandwidth under the subtree It is minimum, and the bandwidth demand of tenant can be met;
Third presets allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, Including a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition be Idle virtual trough is more than or equal to the virtual machine number of tenant request in subtree;Second condition is the total of remaining bandwidth in subtree Number is maximum, and can meet the bandwidth demand in virtual machine request.
Further, the application processing module specific 212 is used for:When there are unassigned bandwidth resources, It is that unsecured tenant sets Bandwidth guaranteed by server granularity.
System described in the present embodiment can be used for executing the method described in above-described embodiment, principle and technique effect class Seemingly, and will not be described here in detail.
Above example is only used to illustrate the technical scheme of the present invention, rather than its limitations;Although with reference to the foregoing embodiments Invention is explained in detail, it will be understood by those of ordinary skill in the art that:It still can be to aforementioned each implementation Technical solution recorded in example is modified or equivalent replacement of some of the technical features;And these are changed or replace It changes, the spirit and scope for various embodiments of the present invention technical solution that it does not separate the essence of the corresponding technical solution.

Claims (6)

1. a kind of two layers of bandwidth allocation methods of cloud data center with Predicable performance, which is characterized in that including:
In cloud tenant's level, according to fine granularity Virtual Cluster FGVC network abstractions model to tenant send comprising network demand Virtual machine request carries out Bandwidth guaranteed optimization;
And physical machine and corresponding bandwidth resource allocation are carried out to the virtual machine request after optimization according to default allocation algorithm;
In application, physical machine and corresponding bandwidth resources are distributed fairly to guaranteed rent by mechanism when being run using E-F Family and unsecured tenant;
Wherein, it is described tenant is sent according to fine granularity Virtual Cluster FGVC network abstractions model it is virtual comprising network demand Machine request carries out Bandwidth guaranteed optimization, including:The remaining bandwidth of determining virtual machine is asked according to the virtual machine, it will be described virtual The remaining bandwidth average mark of machine gives the unappropriated link of the virtual machine connection, and will be in the Bandwidth guaranteed of virtual machine both ends Minimum value as Bandwidth guaranteed between virtual machine;
Wherein, physical machine and corresponding bandwidth resources are distributed fairly to guaranteed tenant by mechanism when the operation using E-F Include with unsecured tenant:It is that unsecured tenant sets bandwidth by server granularity when there are unassigned bandwidth resources Ensure.
2. according to the method described in claim 1, it is characterized in that, being asked the virtual machine after optimization according to default allocation algorithm Physical machine and corresponding bandwidth resource allocation are carried out, including:
Physical machine and corresponding is carried out to the virtual machine request after optimization according to any one in following three kinds of default allocation algorithms Bandwidth resource allocation:
First default allocation algorithm:First subtree that can meet two conditions, packet are found from physical machine layer to root routing layer Include a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition is son Idle virtual trough is more than or equal to the virtual machine number of tenant request in tree;Second condition is that the bandwidth under the subtree meets void The bandwidth demand of quasi- machine request;
Second default allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, including One physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition is subtree The virtual trough of middle free time is more than or equal to the virtual machine number of tenant request;Second condition is that the remaining bandwidth under the subtree is most Small, and the bandwidth demand of tenant can be met;
Third presets allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, including One physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition is subtree The virtual trough of middle free time is more than or equal to the virtual machine number of tenant request;Second condition be in subtree remaining bandwidth sum most Greatly, and the bandwidth demand in virtual machine request can be met.
3. according to the method described in claim 1, it is characterized in that, presetting allocation algorithm to virtual after optimization in the basis Before machine request carries out physical machine and corresponding bandwidth resource allocation, the method further includes:According to predetermined order algorithm to excellent Virtual machine request after change is ranked up.
4. according to the method described in claim 3, it is characterized in that, it is described according to predetermined order algorithm to the virtual machine after optimization Request is ranked up, including:
The virtual machine request after optimization is ranked up according to any one in following five kinds of predetermined order algorithms:
Prerequisite variable FCFS:It is executed by arrival order;
The preferential SRRF of minimum profit rate:The possessing minimum profit rate of the task first carries out;
The preferential LRRF of Optimum Profit Rate:The possessing Optimum Profit Rate of the task first carries out;
Weight limit is preferential:Weight is introduced in queue scheduling mechanism, the weight of each virtual machine request is that the virtual machine is asked The profit margin asked is multiplied by stand-by period or divided by stand-by period.
5. a kind of two layers of bandwidth distribution system of cloud data center with Predicable performance, which is characterized in that including:Cloud tenant's layer Surface treatment module and application processing module;
The cloud tenant layer face treatment module, for what is sent to tenant according to fine granularity Virtual Cluster FGVC network abstractions model Including the virtual machine request of network demand carries out Bandwidth guaranteed optimization;
And for carrying out physical machine and corresponding bandwidth resources point to the virtual machine request after optimization according to default allocation algorithm Match;
Application processing module, mechanism liberally distributes physical machine and corresponding bandwidth resources when for using E-F to run To guaranteed tenant and unsecured tenant;
Wherein, the cloud tenant layer face treatment module is specifically used for:The tape remaining of determining virtual machine is asked according to the virtual machine The remaining bandwidth average mark of the virtual machine, is given the unappropriated link of virtual machine connection by width, and by virtual machine Minimum value in the Bandwidth guaranteed of both ends is as Bandwidth guaranteed between virtual machine;
The application processing module is specifically used for:It is nothing by server granularity when there are unassigned bandwidth resources Ensure that tenant sets Bandwidth guaranteed.
6. system according to claim 5, which is characterized in that the cloud tenant layer face treatment module is specifically used for:
Physical machine and corresponding is carried out to the virtual machine request after optimization according to any one in following three kinds of default allocation algorithms Bandwidth resource allocation:
First default allocation algorithm:First subtree that can meet two conditions, packet are found from physical machine layer to root routing layer Include a physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition is son Idle virtual trough is more than or equal to the virtual machine number of tenant request in tree;Second condition is that the bandwidth under the subtree meets void The bandwidth demand of quasi- machine request;
Second default allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, including One physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition is subtree The virtual trough of middle free time is more than or equal to the virtual machine number of tenant request;Second condition is that the remaining bandwidth under the subtree is most Small, and the bandwidth demand of tenant can be met;
Third presets allocation algorithm:Physical machine layer to root routing layer finds first subtree that can meet two conditions, including One physical machine, a ToR interchanger, a convergence layer switch or a core layer switch;First condition is subtree The virtual trough of middle free time is more than or equal to the virtual machine number of tenant request;Second condition be in subtree remaining bandwidth sum most Greatly, and the bandwidth demand in virtual machine request can be met.
CN201610083948.7A 2016-02-06 2016-02-06 Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system Active CN105577834B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610083948.7A CN105577834B (en) 2016-02-06 2016-02-06 Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610083948.7A CN105577834B (en) 2016-02-06 2016-02-06 Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system

Publications (2)

Publication Number Publication Date
CN105577834A CN105577834A (en) 2016-05-11
CN105577834B true CN105577834B (en) 2018-10-16

Family

ID=55887478

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610083948.7A Active CN105577834B (en) 2016-02-06 2016-02-06 Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system

Country Status (1)

Country Link
CN (1) CN105577834B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105827523B (en) * 2016-06-03 2019-04-30 无锡华云数据技术服务有限公司 A kind of virtual gateway for realizing dynamic adjustment to the bandwidth of multi-tenant in cloud storage environment
CN106301930A (en) * 2016-08-22 2017-01-04 清华大学 A kind of cloud computing virtual machine deployment method meeting general bandwidth request and system
CN106411678A (en) * 2016-09-08 2017-02-15 清华大学 Bandwidth guarantee type virtual network function (VNF) deployment method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104009904A (en) * 2014-05-23 2014-08-27 清华大学 Method and system for establishing virtual network for big data processing of cloud platform
CN104270421A (en) * 2014-09-12 2015-01-07 北京理工大学 Multi-user cloud platform task scheduling method supporting bandwidth guarantee

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104009904A (en) * 2014-05-23 2014-08-27 清华大学 Method and system for establishing virtual network for big data processing of cloud platform
CN104270421A (en) * 2014-09-12 2015-01-07 北京理工大学 Multi-user cloud platform task scheduling method supporting bandwidth guarantee

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Democratic Resolution of Resource Conflicts Between SDN Control Programs;Alvin AuYoung等;《Proceedings of the 10th ACM International on Conference on emerging Networking Experiments and Technologies》;20141205;全文 *
多租户数据库即服务模式***资源优化分配方法;亓开元等;《高技术通讯》;20130415;全文 *

Also Published As

Publication number Publication date
CN105577834A (en) 2016-05-11

Similar Documents

Publication Publication Date Title
CN104881325B (en) A kind of resource regulating method and resource scheduling system
CN109981438B (en) Satellite network load balancing method oriented to SDN and NFV collaborative deployment framework
CN112153700B (en) Network slice resource management method and equipment
Bari et al. CQNCR: Optimal VM migration planning in cloud data centers
Mao et al. Max–min task scheduling algorithm for load balance in cloud computing
CN102918499B (en) For application strategy with the method and apparatus of dispatch network bandwidth between virtual machine
CN105610715B (en) A kind of cloud data center multi-dummy machine migration scheduling method of planning based on SDN
CN113490254B (en) VNF migration method based on bidirectional GRU resource demand prediction in federal learning
CN104270421B (en) A kind of multi-tenant cloud platform method for scheduling task for supporting Bandwidth guaranteed
Tsai et al. Two-tier multi-tenancy scaling and load balancing
CN104521198A (en) System and method for virtual ethernet interface binding
CN104396187A (en) Bandwidth guarantee and work conservation
CN110221920B (en) Deployment method, device, storage medium and system
CN110753009B (en) Virtual machine and network bandwidth joint distribution method based on multi-QoS grouping
CN105577834B (en) Two layers of bandwidth allocation methods of cloud data center with Predicable performance and system
WO2020134133A1 (en) Resource allocation method, substation, and computer-readable storage medium
CN104881322A (en) Method and device for dispatching cluster resource based on packing model
CN111159859B (en) Cloud container cluster deployment method and system
CN104298539B (en) Scheduling virtual machine and dispatching method again based on network aware
Chai et al. A parallel placement approach for service function chain using deep reinforcement learning
Wang et al. Network-aware placement of virtual machine ensembles using effective bandwidth estimation
CN110113376A (en) A kind of Multipath Transmission load balance optimization algorithm based on mobile edge calculations
Li et al. Construction and resource allocation of cost-efficient clustered virtual network in software defined networks
CN105335376B (en) A kind of method for stream processing, apparatus and system
CN110958192B (en) Virtual data center resource allocation system and method based on virtual switch

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant