CN102710489A - Dynamic flow division scheduling system and method - Google Patents

Dynamic flow division scheduling system and method Download PDF

Info

Publication number
CN102710489A
CN102710489A CN2011100858127A CN201110085812A CN102710489A CN 102710489 A CN102710489 A CN 102710489A CN 2011100858127 A CN2011100858127 A CN 2011100858127A CN 201110085812 A CN201110085812 A CN 201110085812A CN 102710489 A CN102710489 A CN 102710489A
Authority
CN
China
Prior art keywords
stream
path
bandwidth
particular stream
feasible path
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
CN2011100858127A
Other languages
Chinese (zh)
Other versions
CN102710489B (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.)
NEC China Co Ltd
Original Assignee
NEC China Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC China Co Ltd filed Critical NEC China Co Ltd
Priority to CN201110085812.7A priority Critical patent/CN102710489B/en
Priority to JP2011244242A priority patent/JP5324637B2/en
Publication of CN102710489A publication Critical patent/CN102710489A/en
Application granted granted Critical
Publication of CN102710489B publication Critical patent/CN102710489B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention provides a dynamic flow division scheduling system and a dynamic flow division scheduling method for a data center network. A host machine applies for bandwidth reservation of specific flow for a flow scheduler of a data center; the flow scheduler checks the bandwidth using conditions of all paths which can be selected by the specific flow; if the sum of bandwidths retained on the paths meets the demand for the bandwidth of the specific flow, the flow is divided into one or more sub-flows, and then the sub-flows are forwarded on the corresponding paths; and if the bandwidths retained on all the paths cannot meet the demand for the bandwidth of the specific flow, the current flows on the paths are transferred to other paths, so that a space is reserved for forwarding the specific flow. According to the dynamic flow division scheduling system and the dynamic flow division scheduling method, the actual bandwidth demand of the flow can be timely and accurately obtained, and scheduling can be performed on the granularity which is thinner than the flow, so that the utilization rate of the whole data center network is balanced, and the convergence bandwidth of the whole data center network is increased.

Description

Dynamic shunt dispatching patcher and method
Technical field
The present invention relates to the data center network field, be specifically related to a kind of dynamic shunt dispatching patcher and method.
Background technology
Along with application and development such as the Internet and cloud computing services, the scale of data center increases day by day.Current, data center is comprising thousands of server and switch.In addition, data center supports multiple different application usually simultaneously, carries out lot of data communication between the different server of some of them application requirements data center inside.The increase of data center's scale and application and development have been brought new challenge to its network architecture.
Because the switch ports themselves limited in number, data center takes the topological structure of a kind of many trees usually.Fig. 1 shows the topological structure of a kind of many trees, and this topological structure is that the communication between the main frame provides many optional paths.Owing to have many optional paths, the problem of a key are exactly how on these many optional paths, to flow scheduling dynamically, to obtain big network polymerization bandwidth.
Current the most frequently used stream scheduling mechanism be equal cost multipath (Equal Cost Multipath, ECMP).Switch disposes a plurality of optional forward-paths to certain given destination address; When packet arrives switch; Switch carries out Hash operation to some field in the stem of packet; Carry out modular arithmetic according to total path number then, also transmit packet in the path of finally being selected from this path.Hash algorithm can be with data traffic being distributed on many feasible paths at random, thereby realize load balancing.
Yet ECMP is a kind of static mappings, belongs to being mapped on a certain paths that the packet of same stream all can be fixed.In addition, ECMP selects the path according to the Hash operation result fully and does not consider the size of network utilization and stream.Like this, in some cases, many big streams have been selected same paths, can form network bottleneck and cause the reduction of whole network utilization.Fig. 2 shows the example of two types stream conflict.As shown in Figure 2, stream A and stream B are owing to having selected same paths in the Hash operation conflict at switch A gg0 place.In addition, switch A gg1 and Agg2 independently convection current C transmit with the packet of stream D, but meet with conflict at switch Core2 place.Suppose that links all among Fig. 2 all is 1Gbps, because the stream conflict has taken place, all 4 streams all can only obtain the bandwidth of 500Mbps.If system adopts better stream scheduling strategy according to the situation of network resource usage and stream, be dispatched to switch Core1 such as flowing A, will flow D and be dispatched to switch Core3,4 all streams just can both reach 1Gbps.
Therefore, this static mappings mechanism of ECMP is not considered the size of network utilization and stream, thereby possibly cause the conflict of stream and the overall utilization rate of reduction network.
List of references 1 (et al, NSDI 2010 for " Hedera:Dynamic Flow Scheduling for Data Center Networks ", Mohammad Al-Fares) has proposed a kind of dynamic flow dispatching patcher that is used for data center network.This system switch place at first on the edge of detects big stream, estimates the bandwidth demand of these big streams then, and calculates the optimal path of these big streams.At last, these paths are installed on the switch.
Fig. 3 shows the system construction drawing of Hedera.As shown in Figure 3; Hedera be a kind of based on " fat tree " (Fat tree) network topology design and the stream dispatching patcher that realizes (referring to list of references 2: " A scalable; Commodity Data Center Network Architecture "; Mohammad Al-Fares, et al, SIGCOMM 2008).Switch among the Fat tree is divided into three layers from bottom to top: marginal layer, convergence-level and core layer.All switches all are identical in the different layers, and each switch comprises k port.Fig. 3 shows the Fat tree topology of k=4.Fat tree is divided into k independently piecemeal (pod), and shown in k frame of broken lines of marginal layer and convergence-level among the figure, k switch of each frame the inside formed a piecemeal.Fat tree topological structure can be supported k 3/ 4 main frames use 5k 2/ 4 k oral sexes are changed planes.Move OpenFlow on the switch, what the OpenFlow controller can access switch transmits, to the list item of transmitting inquire about, insert, operation such as modification.The stream scheduler is dispatched to stream on the not conflicting path according to current network condition.The OpenFlow controller is operated on the centre manager of concentrating in logic with the stream scheduler.
Fig. 4 shows the system block diagram of Hedera.As shown in Figure 4, this Hedera system 40 is made up of switch 410 and centre manager 420.
Switch 410 comprise transmit 4110, packet retransmission unit 4120 and flow statistic report unit 4130.Transmit 4110 mappings that are used between storage flow and the transmit port.Packet retransmission unit 4120 is transmitted packet according to transmitting in 4110 the stored mapping relation.Flow statistic is reported unit 4130 and is used for statistic flow information, and regularly sends (sending once in for example per 5 seconds) and give centre manager 420.
Centre manager 420 comprises exchange control unit 4210, stream scheduling unit 4220, stream demand estimation unit 4230, stream demand schedule 4240 and flow statistic collector unit 4250.Flow statistic collector unit 4250 is reported unit 4130 in each dispatching cycle (for example 5 seconds) from flow statistic and is received flow information, to detect big stream.The stream requirement matrix of stream demand schedule 4240 storage All hosts.Stream demand estimation unit 4230 uses the flow information of having added up to estimate the bandwidth demand that flows.Stream scheduling unit 4220 is the suitable path of big flow distribution from all feasible paths.Exchange control unit 4210 is created forwarding-table item according to the scheduling result of stream scheduling unit 4220 on corresponding switch, this stream is transmitted through the path of new choosing.
Particularly, when a new stream begins to transmit, the cryptographic hash that the default action of switch 410 is based on stream in equative route, select one (such as ECMP description).Switch 410 uses this path to transmit this stream always, surpasses certain predetermined threshold values up to the flow of this stream, such as 100Mbps (1GigE link bandwidth 10%).In each dispatching cycle, flow statistic collector unit 4250 obtains traffic statistics information to detect big stream from edge switch.Then, stream demand estimation unit 4230 is estimated the bandwidth demand of big stream.Next, stream scheduling unit 4220 is big the suitable path of flowmeter based on the bandwidth demand of big stream.At last, exchange control unit 4210 is installed in these paths on the corresponding switch, revises forwarding-table item these streams are transmitted through the new path of selecting.
The input of stream demand estimation unit 4230 is flow informations of current all big streams; It is safeguarding the matrix M of a N*N; Wherein N is the number of main frame, and (i j) has comprised the estimated value of the demand of the stream from main frame i to main frame j to be positioned at the element M of the capable and j of i row in the matrix M.4230 repetitions of stream demand estimation unit are operated as follows: increase the bandwidth demand of stream at source host, flow the bandwidth that is exceeded according to the bandwidth constraints minimizing of destination host, finally make all streams converge to their bandwidth demands own.
After the bandwidth demand of estimating big stream, stream scheduling unit 4220 is the suitable path of big flowmeter according to bandwidth demand.Two kinds of dispatching algorithms in list of references 1, have been used.First kind is " overall first coupling (Global First Fit) "; When detecting a new big stream; The all possible path of search that scheduler is linear, when finding all links all to satisfy the path of bandwidth demand, just selecting this path is scheduling result.Second kind is " simulated annealing (Simulated Annealing) ", and simulated annealing is a kind of general probabilistic algorithm, and state space search is sought one near optimized separating.In order to reduce the status number of search volume, Hedera system 40 distributes a core switch for each destination host, rather than is core switch of each flow distribution.
Yet there are following 2 deficiencies in the stream scheduling mechanism in the Hedera system:
The first, the actual bandwidth demand that can not promptly and accurately obtain flowing, this is because the bandwidth demand of stream is that the traffic statistics data estimation that measurement is come out according to edge switch is come out, and sometimes can accurately not reflect the actual bandwidth demand of application.In addition, scheduling is only carried out once in each dispatching cycle (for example 5 seconds).Therefore, in a dispatching cycle, very big variation possibly take place in traffic conditions.
The second, because the granularity of scheduling is a stream, therefore be not enough to realize the balance of network utilization and big network polymerization bandwidth in some cases.
Summary of the invention
In order to address the above problem, the invention provides a kind of dynamic shunt dispatching patcher that is used for data center network.Main frame is that particular stream is reserved to the stream scheduler bandwidth application of data center.The bandwidth usage in all paths that this particular stream of stream scheduler inspection can be selected; If the remaining bandwidth sum satisfies the bandwidth demand of this particular stream on these paths; Then this stream is divided into one or more son streams, then this a little stream is transmitted on corresponding path.If the remaining bandwidth on all paths can not satisfy the bandwidth demand of this particular stream, then existing circulation on these paths is moved on on other paths, thereby vacating space is in order to transmit this particular stream.
According to an aspect of the present invention, a kind of centre manager is provided, has comprised: the bandwidth demand collector unit is used for from the bandwidth demand of source host collection particular stream; Memory cell is used to store the bandwidth usage and the right feasible path of main frame of link; The stream scheduling unit; Be used for distributing one or more path from the feasible path of said particular stream for said particular stream according to the bandwidth usage of current link; Said source host is returned in the path of distributing, and receive sub-stream information from said source host; And exchange control unit, be used for corresponding switch being configured according to the scheduling result of stream scheduling unit.
Preferably, the stream scheduling unit is configured to: the idle bandwidth sum of calculating the feasible path of said particular stream; And if the idle bandwidth sum of the feasible path of said particular stream is then distributed one or more path for said particular stream more than or equal to the bandwidth demand of said particular stream from the feasible path of said particular stream.
Preferably; The stream scheduling unit also is configured to: if the idle bandwidth sum of the feasible path of said particular stream is more than or equal to the bandwidth demand of said particular stream; Then of the big or small descending of the feasible path of said particular stream according to its idle bandwidth; And from the feasible path after the ordering, choose the path successively, till the bandwidth demand of idle bandwidth sum more than or equal to said particular stream in selected path.
Preferably; The stream scheduling unit also is configured to: if the idle bandwidth sum of the feasible path of said particular stream is less than the bandwidth demand of said particular stream; Then search other streams, and calculate the idle bandwidth sum of the feasible path of said other streams through the feasible path of said particular stream; And if the idle bandwidth sum of the feasible path of said other streams is more than or equal to the bandwidth demand of said particular stream; Then said other streams are rescheduled, from the feasible path of said particular stream, distribute one or more path then for said particular stream.
Preferably; The stream scheduling unit also is configured to: if the idle bandwidth sum of the feasible path of said other streams is more than or equal to the bandwidth demand of said particular stream; Then of the idle bandwidth sum descending of said other streams according to its feasible path; From the stream after the ordering, choose stream successively and this stream rescheduled, till the bandwidth demand of idle bandwidth sum more than or equal to said particular stream of the feasible path of said particular stream.
Preferably; The stream scheduling unit also is configured to: if the idle bandwidth sum of the feasible path of said other streams is less than the bandwidth demand of said particular stream; Then be rescheduled to said other streams on its idle route the stream of the feasible path through said particular stream still after then the idle bandwidth of the feasible path of said particular stream being distributed to said particular stream and rescheduled according to maximum-minimum equity criterion.
Preferably, the stream scheduling unit also is configured to: be sent to destination host to the sub-stream information that receives from source host.
Preferably, memory cell is also stored said sub-stream information.
Preferably, sub-stream information comprises the port numbers of son stream.
According to a further aspect in the invention, a kind of stream scheduling method is provided, has comprised: the bandwidth demand of collecting particular stream from source host; According to the bandwidth usage of current link, from the feasible path of said particular stream, distribute one or more path for said particular stream, said source host is returned in the path of distributing, and receive sub-stream information from said source host; And corresponding switch is configured according to scheduling result.
Preferably, the step of dispense path comprises: the idle bandwidth sum of calculating the feasible path of said particular stream; And if the idle bandwidth sum of the feasible path of said particular stream is then distributed one or more path for said particular stream more than or equal to the bandwidth demand of said particular stream from the feasible path of said particular stream.
Preferably; If the idle bandwidth sum of the feasible path of said particular stream is more than or equal to the bandwidth demand of said particular stream; Then of the big or small descending of the feasible path of said particular stream according to its idle bandwidth; And from the feasible path after the ordering, choose the path successively, till the bandwidth demand of idle bandwidth sum more than or equal to said particular stream in selected path.
Preferably, if the idle bandwidth sum of the feasible path of said particular stream, is then searched other streams through the feasible path of said particular stream less than the bandwidth demand of said particular stream, and calculate the idle bandwidth sum of the feasible path of said other streams; And if the idle bandwidth sum of the feasible path of said other streams is more than or equal to the bandwidth demand of said particular stream; Then said other streams are rescheduled, from the feasible path of said particular stream, distribute one or more path then for said particular stream.
Preferably; If the idle bandwidth sum of the feasible path of said other streams is more than or equal to the bandwidth demand of said particular stream; Then of the idle bandwidth sum descending of said other streams according to its feasible path; From the stream after the ordering, choose stream successively and this stream rescheduled, till the bandwidth demand of idle bandwidth sum more than or equal to said particular stream of the feasible path of said particular stream.
Preferably; If the idle bandwidth sum of the feasible path of said other streams is less than the bandwidth demand of said particular stream; Then be rescheduled to said other streams on its idle route the stream of the feasible path through said particular stream still after then the idle bandwidth of the feasible path of said particular stream being distributed to said particular stream and rescheduled according to maximum-minimum equity criterion.
Preferably, this method also comprises: be sent to destination host to the sub-stream information that receives from source host.
Preferably, sub-stream information comprises the port numbers of son stream.
In accordance with a further aspect of the present invention, a kind of main frame is provided, has comprised: the RSVP unit is used for to the bandwidth of centre manager application to particular stream; And stream control unit, the scheduling result of returning according to centre manager is divided into one or more son stream with said particular stream, thereby and sets up corresponding the connection said one or more son stream is transmitted on the path that centre manager is distributed.
Preferably, this main frame also comprises: the data recombination unit is used for recombinating the data that receive through said one or more son stream.
Preferably, stream control unit is configured to: if receive the instruction that changes son stream from centre manager, then adjustment is corresponding connects.
The actual bandwidth demand that dynamic shunt dispatching patcher of the present invention and method can promptly and accurately obtain flowing, and can be on than the thinner granularity of stream (promptly son flows) operation dispatching.Therefore, dynamic shunt dispatching patcher of the present invention and method make the utilance of whole data center network obtain balance, and the aggregate bandwidth of whole data center network is increased.
Description of drawings
Through the hereinafter detailed description with the accompanying drawing, above-mentioned and further feature of the present invention will become more apparent, wherein:
Fig. 1 shows the sketch map of many tree topology structures of the prior art;
Fig. 2 shows the sketch map of stream conflict of the prior art two types;
Fig. 3 shows the sketch map of Hedera of the prior art system;
Fig. 4 shows the block diagram of Hedera of the prior art system;
Fig. 5 shows the block diagram of dynamic shunt dispatching patcher according to an embodiment of the invention;
Fig. 6 shows the flow chart of the operation of dynamic shunt dispatching patcher according to an embodiment of the invention;
Fig. 7 shows the flow chart that flows dispatching algorithm according to an embodiment of the invention;
Fig. 8 shows the block diagram of dynamic shunt dispatching patcher in accordance with another embodiment of the present invention; And
Fig. 9 shows the flow chart of the operation of dynamic shunt dispatching patcher in accordance with another embodiment of the present invention.
Embodiment
Below, in conjunction with the drawings to the description of specific embodiment of the present invention, principle of the present invention will become obvious with realizing.Should be noted in the discussion above that the present invention should not be limited to specific embodiment hereinafter described.In addition, for for simplicity, omitted the detailed description of the known technology that has nothing to do with the present invention.
Fig. 5 shows the block diagram of dynamic shunt dispatching patcher 50 according to an embodiment of the invention.As shown in Figure 5, dynamic shunt dispatching patcher 50 is made up of three types node: main frame 510, centre manager 520 and switch 530.
Switch 530 comprise transmit 5310 with packet retransmission unit 5320.Wherein transmit 5310 mappings that are used between storage flow and the transmit port.Packet retransmission unit 5320 is transmitted packet according to transmitting in 5310 the stored mapping relation.
Main frame 510 comprises stream control unit 5110 and RSVP unit 5120.Wherein, RSVP unit 5120 is used to certain specific centre manager 520 bandwidth application that flow to and reserves.The scheduling result that stream control unit 5110 is used for providing according to centre manager 520 flows this specific flow point for one or more son, then this a little stream is being transmitted on corresponding path.
Centre manager 520 comprises exchange control unit 5210, stream scheduling unit 5220, bandwidth use and routing information table memory cell 5230 and bandwidth demand collector unit 5240.Wherein, bandwidth demand collector unit 5240 is used for collecting from main frame 510 bandwidth demand of stream.Bandwidth use and routing information table memory cell 5230 are used to store bandwidth usage and any all right feasible paths of main frame of all links.Stream scheduling unit 5220 is one of certain specific flow distribution or many suitable paths from all feasible paths based on the bandwidth usage of the link on the current network.Exchange control unit 5210 is created forwarding-table item according to the scheduling result of stream scheduling unit 5220 on corresponding switch, transmit in order to convection current.
Below, describe the operation of dynamic shunt dispatching patcher 50 shown in Figure 5 in detail in conjunction with Fig. 6.
Fig. 6 shows the operational flowchart of dynamic shunt dispatching patcher 50 according to an embodiment of the invention.In Fig. 6, host A, host B and host C can be realized that all centre manager can be realized by the centre manager shown in Fig. 5 520 by the main frame shown in Fig. 5 510, and switch can be realized by the switch shown in Fig. 5 530.Concrete operations are following:
1.1: certain certain applications on the source host A is informed the bandwidth demand of using corresponding stream with this to the RSVP unit.
1.2: the RSVP unit among the source host A is reserved to the centre manager bandwidth application.
1.3: the stream scheduling unit in the centre manager flows scheduling according to dispatching algorithm (specific algorithm is described hereinafter), promptly is one of this specific flow distribution or mulitpath from all feasible paths.
1.4: centre manager is returned the bandwidth of reserving on path and the every paths of distribution to the source host A that bandwidth application is reserved.
1.5: the stream control unit of source host A is according to scheduling result, and the stream that this is specific is cut into one or more son stream.
1.6: source host A reports sub-stream information (for example comprising the port numbers that son stream uses) and gives centre manager.
1.7: the exchange control unit in the centre manager is created forwarding-table item on corresponding switch, switch is transmitted through the path of new choosing these streams.
1.8: in some cases, centre manager can require other main frames (for example host C) to change path and occupied bandwidth of some existing stream, so that be the particular stream vacating space of bandwidth application reservation.
1.9: receive that the host C of indication changes the path and the occupied bandwidth of existing some stream according to the requirement of centre manager.
1.10: source host A uses one or more to connect and sends data, and every connects a corresponding substreams.
1.11: destination host B receives data through one or more son stream.
Fig. 7 shows the flow chart that flows dispatching algorithm according to an embodiment of the invention.This dispatching algorithm can be carried out by the stream scheduling unit 5220 of centre manager shown in Figure 5 520, to realize the stream scheduling.
At first, at step S701, obtain stream F and bandwidth demand R thereof F
At step S702, find out all optional paths of stream F.Suppose that { Pi, 1<=i<=N}, the idle bandwidth of every paths Pi are Ci to total N paths.
At step S703; Calculate all N paths idle bandwidth with, i.e.
Figure BSA00000468310300101
Next, judge S at step S704 FWhether more than or equal to R FIf S FMore than or equal to R F, show that the idle bandwidth on the existing N paths can satisfy the bandwidth demand of stream F, turn to this moment step S705 to continue to carry out.If S FLess than R F, show that the idle bandwidth on the existing N paths can not satisfy the bandwidth demand of stream F, need other stream vacating spaces on these paths, turn to this moment step S707 to continue to carry out.
If S FMore than or equal to Rx, at step S705 every paths Pi is sorted according to the mode of its idle bandwidth Ci descending, from the descending path P i that chooses successively of idle bandwidth, up to satisfying condition
Figure BSA00000468310300102
Suppose and selected M paths Pi.Next, at step S706 the M paths of selecting is distributed to stream F, the idle bandwidth Ci on every paths is the bandwidth of reserving for stream F.Afterwards, stream finishing scheduling and returning.
If S FLess than R F, find through { Pi, { promptly this L stream is shared the path with stream F to all streams in any path among 1<=i<=N} for Fj, 1<=j<=L} at step S707.Because the idle bandwidth on the existing N paths can not satisfy the bandwidth demand of stream F, need this L several streams in the stream to vacate the bandwidth demand that certain space satisfies stream F.
At step S708, to every stream Fj, { wherein j bar stream Fj has the Nj paths for Hjk, 1<=k<=Nj}, and the idle bandwidth of supposing every paths Hjk is Cjk to find all optional paths of Fj.In addition, in that { Hjk in these paths of 1<=k<=Nj}, supposes a total T paths.Because the path Hjk of different Fj possibly have repetition, so the idle bandwidth of the every paths in
Figure BSA00000468310300103
supposition T paths is Ct.
At step S709, calculate the T paths idle bandwidth sum and every stream Fj idle bandwidth with
At step S710, whether the idle bandwidth sum Sum that judges the T paths is more than or equal to R FIf Sum is more than or equal to R F, show that the bandwidth demand of stream F can be satisfied in the space of vacateing if this L stream Fj is rescheduled on other paths, turn to this moment step S711 to continue to handle.If Sum is less than R FEven, show this L stream Fj is rescheduled to the bandwidth demand that also can't satisfy stream F on other paths, turn to this moment step S712 to continue to handle.
If Sum is more than or equal to R F, will flow Fj at step S711 and sort with the mode of the idle bandwidth Sj descending on its all paths, choose Fj successively and Fj is rescheduled on its idle route, and give stream F, up to S the allocated bandwidth of vacateing FMore than or equal to R FReschedule fractionation again, the polymerization that comprises existing son stream and change amount of bandwidth.Work as S FMore than or equal to R FThe time, turn to step S705 to continue to handle.
If Sum is less than R F, at step S712, because other paths of Fj possibly also have idle bandwidth Sj; And all paths { Pi of stream F; 1<=i<=N} so earlier Fj is rescheduled on its idle route, uses the bandwidth of those idle routes full because the adding of stream F no longer includes idle bandwidth.Then; At step S713; Even because L stream Fj is rescheduled to the bandwidth demand that also can't satisfy stream F on other paths, { Pi, the idle bandwidth of 1<=i<=N} distributed to flow according to maximum-minimum (max-min) equity criterion and still passed through { Pi after rescheduling among F and the step S712 with the path this moment; The stream Fj in any path among 1<=i<=N}, and give stream F with the path P i that calculates and corresponding bandwidth allocation.Afterwards, stream finishing scheduling and returning.
After the stream finishing scheduling, the stream control unit 5110 in the main frame 510 obtains scheduling result from centre manager 520, and this scheduling result comprises the bandwidth of reserving on the path distributed to particular stream and the every paths.Stream control unit 5110 is cut into one or more son stream (path of the corresponding distribution of every strip stream) according to the path of distributing with particular stream, creates one or more connection then, and every connects a corresponding substreams.Like this, stream control unit 5110 is sent corresponding data traffic according to the RSVP situation on the different paths.
In the process of transfer of data; If stream control unit 5110 receives the instruction of centre manager 520 certain bar stream is changed (for example comprise that cutting is carried out in convection current again, antithetical phrase stream merges and change bandwidth of certain substreams reservation or the like), stream control unit 5110 can be closed corresponding connection and possibly initiated new connection so.
In addition, in the process of transfer of data, the data traffic of 5110 pairs of upper layer application of stream control unit is controlled.If the data traffic of use sending surpasses the bandwidth of reserving to this applications, stream control unit 5110 can be carried out buffer memory to the data of upper layer application, and the speed transmission of the bandwidth of reserving according to centre manager 520.If reserved very big bandwidth for using, but the speed of sending data does not reach the bandwidth of being reserved for a long time, then stream control unit 5110 can notice centre manager 520 be revised the resource reservation situation.
After using end, stream control unit 5110 can the corresponding resource reservation of notice centre manager 520 cancellations.
Need explanation, in the stream scheduling process, the stream scheduling unit 5220 in the centre manager 520 need be known bandwidth usage and any all right feasible paths of main frame of all links.For this reason, the bandwidth use table of having stored the routing table of all feasible paths that comprise that any main frame is right and having comprised all sub bandwidth that flow the path of affiliated stream, process and on this path, reserve in bandwidth use and the routing information table memory cell 5230.The example that following table 1 and table 2 show routing table and bandwidth use table respectively:
(source, purpose) Feasible path
(host A, host B) Path 1, path 2 ...
(host A, host C) Path 2, path 3 ...
... ?...
Table 1 routing table
Son stream Stream The path Bandwidth reserved
Son stream 1 Stream 1 Path 1 100Mbps
Son stream
2 Stream 1 Path 2 100Mbps
?... ?... ?... ...
Table 2 bandwidth is used table
For some application-specific such as Streaming Media, the data that need receive keep succession.But,, can't guarantee the succession of data usually because data are cut into many substreams at the main frame place and transmit through many connections then.For this reason, the receiving terminal main frame need be realized data recombination.
Fig. 8 shows the block diagram of dynamic shunt dispatching patcher 80 in accordance with another embodiment of the present invention, can realize receiving the reorganization of data.Wherein, Dynamic shunt dispatching patcher 80 shown in Figure 8 only is with the difference of dynamic shunt dispatching patcher 50 shown in Figure 5: the main frame 810 in the dynamic shunt dispatching patcher 80 also comprises data recombination unit 8130, and the bandwidth in the centre manager 820 is used and the content of routing information table memory cell 8230 storages is different.Particularly; In the present embodiment; Data recombination unit 8130 is used for the data that receive through many substreams are recombinated; And bandwidth use and routing information table memory cell 8230 are not only stored bandwidth usage and any all right feasible paths of main frame of all links, also the information of storage stream, for example port or the like.Below, describe the operation of dynamic shunt dispatching patcher 80 shown in Figure 8 in detail in conjunction with Fig. 9.
Fig. 9 shows the operational flowchart of dynamic shunt dispatching patcher 80 in accordance with another embodiment of the present invention.In Fig. 9, host A, host B and host C can be realized that all centre manager can be realized by the centre manager shown in Fig. 8 820 by the main frame shown in Fig. 8 810, and switch can be realized by the switch shown in Fig. 8 830.
Can find out that the operation 1.1 to 1.11 shown in Fig. 9 is identical with the operation 1.1 to 1.11 shown in Fig. 6, therefore omit detailed description here operating 1.1 to 1.11.With respect to Fig. 6, Fig. 9 comprises two operations extraly: 1.12 and 1.13.
For destination host B is recombinated to guarantee that upper layer application can receive data in order to the data that receive through many substreams, the data recombination unit need know that which son stream belongs to same stream.Therefore, centre manager offers destination host B (operation 1.12) with sub-stream information.Then, destination host B receives data from many substreams, and according to sub-stream information that centre manager provided to the data that receive recombinate (operation 1.13).
Therefore, even data are cut into many substreams and transmit through many connections, the order of the data that dynamic shunt dispatching patcher 80 also can be recovered to receive, thus satisfied the for example requirement of the application-specific of Streaming Media etc.
Although below combined the preferred embodiments of the present invention to show the present invention, one skilled in the art will appreciate that under the situation that does not break away from the spirit and scope of the present invention, can carry out various modifications, replacement and change to the present invention.Therefore, the present invention should not limited the foregoing description, and should be limited accompanying claims and equivalent thereof.

Claims (20)

1. centre manager comprises:
The bandwidth demand collector unit is used for from the bandwidth demand of source host collection particular stream;
Memory cell is used to store the bandwidth usage and the right feasible path of main frame of link;
The stream scheduling unit is used for distributing one or more path from the feasible path of said particular stream for said particular stream according to the bandwidth usage of current link, said source host is returned in the path of distribution, and receive sub-stream information from said source host; And
Exchange control unit is used for according to the scheduling result of stream scheduling unit corresponding switch being configured.
2. centre manager according to claim 1, wherein, said stream scheduling unit is configured to:
Calculate the idle bandwidth sum of the feasible path of said particular stream; And
If the idle bandwidth sum of the feasible path of said particular stream is then distributed one or more path for said particular stream more than or equal to the bandwidth demand of said particular stream from the feasible path of said particular stream.
3. centre manager according to claim 2, wherein, said stream scheduling unit also is configured to:
If the idle bandwidth sum of the feasible path of said particular stream is more than or equal to the bandwidth demand of said particular stream; Then of the big or small descending of the feasible path of said particular stream according to its idle bandwidth; And from the feasible path after the ordering, choose the path successively, till the bandwidth demand of idle bandwidth sum more than or equal to said particular stream in selected path.
4. centre manager according to claim 2, wherein, said stream scheduling unit also is configured to:
If the idle bandwidth sum of the feasible path of said particular stream, is then searched other streams through the feasible path of said particular stream less than the bandwidth demand of said particular stream, and calculate the idle bandwidth sum of the feasible path of said other streams; And
If the idle bandwidth sum of the feasible path of said other streams is more than or equal to the bandwidth demand of said particular stream; Then said other streams are rescheduled, from the feasible path of said particular stream, distribute one or more path then for said particular stream.
5. centre manager according to claim 4, wherein, said stream scheduling unit also is configured to:
If the idle bandwidth sum of the feasible path of said other streams is more than or equal to the bandwidth demand of said particular stream; Then of the idle bandwidth sum descending of said other streams according to its feasible path; From the stream after the ordering, choose stream successively and this stream rescheduled, till the bandwidth demand of idle bandwidth sum more than or equal to said particular stream of the feasible path of said particular stream.
6. centre manager according to claim 4, wherein, said stream scheduling unit also is configured to:
If the idle bandwidth sum of the feasible path of said other streams is less than the bandwidth demand of said particular stream; Then be rescheduled to said other streams on its idle route the stream of the feasible path through said particular stream still after then the idle bandwidth of the feasible path of said particular stream being distributed to said particular stream and rescheduled according to maximum-minimum equity criterion.
7. centre manager according to claim 1, wherein, said stream scheduling unit also is configured to:
Be sent to destination host to the sub-stream information that receives from source host.
8. centre manager according to claim 7, wherein, said memory cell is also stored said sub-stream information.
9. according to claim 7 or 8 described centre manager, wherein, said sub-stream information comprises the port numbers of son stream.
10. stream scheduling method comprises:
Collect the bandwidth demand of particular stream from source host;
According to the bandwidth usage of current link, from the feasible path of said particular stream, distribute one or more path for said particular stream, said source host is returned in the path of distributing, and receive sub-stream information from said source host; And
According to scheduling result corresponding switch is configured.
11. method according to claim 10, wherein, the step of said dispense path comprises:
Calculate the idle bandwidth sum of the feasible path of said particular stream; And
If the idle bandwidth sum of the feasible path of said particular stream is then distributed one or more path for said particular stream more than or equal to the bandwidth demand of said particular stream from the feasible path of said particular stream.
12. method according to claim 11; Wherein, If the idle bandwidth sum of the feasible path of said particular stream is more than or equal to the bandwidth demand of said particular stream; Then of the big or small descending of the feasible path of said particular stream, and from the feasible path after the ordering, choose the path successively, till the bandwidth demand of idle bandwidth sum more than or equal to said particular stream in selected path according to its idle bandwidth.
13. method according to claim 11; Wherein, If the idle bandwidth sum of the feasible path of said particular stream, is then searched other streams through the feasible path of said particular stream less than the bandwidth demand of said particular stream, and calculate the idle bandwidth sum of the feasible path of said other streams; And if the idle bandwidth sum of the feasible path of said other streams is more than or equal to the bandwidth demand of said particular stream; Then said other streams are rescheduled, from the feasible path of said particular stream, distribute one or more path then for said particular stream.
14. method according to claim 13; Wherein, If the idle bandwidth sum of the feasible path of said other streams is more than or equal to the bandwidth demand of said particular stream; Then said other streams according to the idle bandwidth sum descending of its feasible path, from the stream after the ordering, choose stream successively and this stream rescheduled, till the bandwidth demand of idle bandwidth sum more than or equal to said particular stream of the feasible path of said particular stream.
15. method according to claim 13; Wherein, If the idle bandwidth sum of the feasible path of said other streams is less than the bandwidth demand of said particular stream; Then be rescheduled to said other streams on its idle route the stream of the feasible path through said particular stream still after then the idle bandwidth of the feasible path of said particular stream being distributed to said particular stream and rescheduled according to maximum-minimum equity criterion.
16. method according to claim 10 also comprises:
Be sent to destination host to the sub-stream information that receives from source host.
17. method according to claim 16, wherein, said sub-stream information comprises the port numbers of son stream.
18. a main frame comprises:
The RSVP unit is used for to the bandwidth of centre manager application to particular stream; And
Stream control unit, the scheduling result of returning according to centre manager is divided into one or more son stream with said particular stream, thereby and sets up corresponding the connection said one or more son stream is transmitted on the path that centre manager is distributed.
19. main frame according to claim 18, wherein, said stream control unit is configured to:
If receive the instruction that changes son stream from centre manager, then adjustment is corresponding connects.
20., also comprise according to claim 18 or 19 described main frames:
The data recombination unit is used for recombinating the data that receive through said one or more son stream.
CN201110085812.7A 2011-03-28 2011-03-28 Dynamic shunt dispatching patcher and method Expired - Fee Related CN102710489B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110085812.7A CN102710489B (en) 2011-03-28 2011-03-28 Dynamic shunt dispatching patcher and method
JP2011244242A JP5324637B2 (en) 2011-03-28 2011-11-08 Dynamic flowlet scheduling system, flow scheduling method, and flow scheduling program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110085812.7A CN102710489B (en) 2011-03-28 2011-03-28 Dynamic shunt dispatching patcher and method

Publications (2)

Publication Number Publication Date
CN102710489A true CN102710489A (en) 2012-10-03
CN102710489B CN102710489B (en) 2015-07-29

Family

ID=46903059

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110085812.7A Expired - Fee Related CN102710489B (en) 2011-03-28 2011-03-28 Dynamic shunt dispatching patcher and method

Country Status (2)

Country Link
JP (1) JP5324637B2 (en)
CN (1) CN102710489B (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103729427A (en) * 2013-12-25 2014-04-16 南京未来网络产业创新有限公司 User-defined multistage flow table incremental updating based flow table transformation method
CN103825838A (en) * 2014-02-24 2014-05-28 上海交通大学 Method for flow dispatch for removing bandwidth fragmentization from data center
WO2014198053A1 (en) * 2013-06-14 2014-12-18 Microsoft Corporation Fault tolerant and load balanced routing
CN104426792A (en) * 2013-09-05 2015-03-18 中兴通讯股份有限公司 Scheduler support ability query method, scheduler support ability notification method and scheduler support ability query device
CN104468352A (en) * 2014-12-26 2015-03-25 深圳市新格林耐特通信技术有限公司 SDN based special flow QOS guaranteeing method
CN104579722A (en) * 2013-10-11 2015-04-29 中兴通讯股份有限公司 Flow statistics capability negotiation method and apparatus
CN104618157A (en) * 2015-01-27 2015-05-13 华为技术有限公司 Network management method, device and system
CN105610709A (en) * 2016-02-03 2016-05-25 西安电子科技大学 SDN-based high-volume data stream load balancing system and method
CN105814848A (en) * 2013-12-13 2016-07-27 国际商业机器公司 Trill network with multipath redundancy
CN106027416A (en) * 2016-05-23 2016-10-12 北京邮电大学 Data centre network flow dispatching method and system based on space and time combination
CN106416158A (en) * 2013-12-23 2017-02-15 谷歌公司 Traffic engineering for large scale data center networks
WO2018014569A1 (en) * 2016-07-19 2018-01-25 华为技术有限公司 Method, apparatus and device for balancing load
CN108199966A (en) * 2018-01-09 2018-06-22 莫毓昌 The network flow dynamic dispatching method and system at a kind of high-performance data center
WO2019024759A1 (en) * 2017-08-01 2019-02-07 华为技术有限公司 Data communication method and data communication network
CN109361603A (en) * 2018-11-26 2019-02-19 浪潮思科网络科技有限公司 The method and system of equative route flow are adjusted based on programmable exchange chip dynamic
CN109905329A (en) * 2019-01-04 2019-06-18 东南大学 The flow queue adaptive management method that task type perceives under a kind of virtualized environment

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10257423A1 (en) 2002-12-09 2004-06-24 Europäisches Laboratorium für Molekularbiologie (EMBL) Microscope used in molecular biology comprises a focussing arrangement producing an extended planar object illumination region, a detection device, and a movement arrangement
CN106254273A (en) * 2016-08-09 2016-12-21 清华大学深圳研究生院 The dispatching method of a kind of data center network stream and system
CN110061935B (en) * 2019-03-13 2022-02-18 平安科技(深圳)有限公司 Flow source ratio adjusting method and device, computer equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1622524A (en) * 2004-12-17 2005-06-01 北京邮电大学 Alleviation adjusting method for mobile IP burst flow
CN101072171A (en) * 2006-05-09 2007-11-14 薄明霞 Integrated routing method for multi-fiber IP over WDM net
US20100020806A1 (en) * 2008-07-22 2010-01-28 Amin Vahdat Scalable Commodity Data Center Network Architecture

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3769544B2 (en) * 2003-01-31 2006-04-26 富士通株式会社 Transmission band control device
JP2006081086A (en) * 2004-09-13 2006-03-23 Matsushita Electric Ind Co Ltd Routing apparatus, routing method, communication terminal device and packet communication system
JP2010245640A (en) * 2009-04-01 2010-10-28 Mitsubishi Electric Corp Simulation method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1622524A (en) * 2004-12-17 2005-06-01 北京邮电大学 Alleviation adjusting method for mobile IP burst flow
CN101072171A (en) * 2006-05-09 2007-11-14 薄明霞 Integrated routing method for multi-fiber IP over WDM net
US20100020806A1 (en) * 2008-07-22 2010-01-28 Amin Vahdat Scalable Commodity Data Center Network Architecture

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M. AL-FARES ET AL: ""Hedera: Dynamic flow scheduling for data center"", 《USENIX NSDI 2010 》 *

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014198053A1 (en) * 2013-06-14 2014-12-18 Microsoft Corporation Fault tolerant and load balanced routing
US10735327B2 (en) 2013-06-14 2020-08-04 Microsoft Technology Licensing, Llc Fault tolerant and load balanced routing
CN104426792A (en) * 2013-09-05 2015-03-18 中兴通讯股份有限公司 Scheduler support ability query method, scheduler support ability notification method and scheduler support ability query device
CN104579722A (en) * 2013-10-11 2015-04-29 中兴通讯股份有限公司 Flow statistics capability negotiation method and apparatus
CN105814848A (en) * 2013-12-13 2016-07-27 国际商业机器公司 Trill network with multipath redundancy
CN105814848B (en) * 2013-12-13 2018-11-23 国际商业机器公司 Transparent interconnection of lots of links internet with multipath redundancy
CN106416158A (en) * 2013-12-23 2017-02-15 谷歌公司 Traffic engineering for large scale data center networks
CN106416158B (en) * 2013-12-23 2019-08-16 谷歌有限责任公司 For the traffic engineered of large-scale data central site network
CN103729427A (en) * 2013-12-25 2014-04-16 南京未来网络产业创新有限公司 User-defined multistage flow table incremental updating based flow table transformation method
CN103729427B (en) * 2013-12-25 2017-08-29 南京未来网络产业创新有限公司 A kind of flow table conversion method based on self-defined multilevel flow table incremental update
CN103825838A (en) * 2014-02-24 2014-05-28 上海交通大学 Method for flow dispatch for removing bandwidth fragmentization from data center
CN103825838B (en) * 2014-02-24 2017-11-10 上海交通大学 A kind of data center removes bandwidth fragmentation stream scheduling method
CN104468352B (en) * 2014-12-26 2018-05-01 深圳市新格林耐特通信技术有限公司 Special flow QOS support methods based on SDN
CN104468352A (en) * 2014-12-26 2015-03-25 深圳市新格林耐特通信技术有限公司 SDN based special flow QOS guaranteeing method
CN104618157B (en) * 2015-01-27 2018-05-18 华为技术有限公司 Network management, equipment and system
US10476746B2 (en) 2015-01-27 2019-11-12 Huawei Technologies Co., Ltd. Network management method, device, and system
CN104618157A (en) * 2015-01-27 2015-05-13 华为技术有限公司 Network management method, device and system
CN105610709A (en) * 2016-02-03 2016-05-25 西安电子科技大学 SDN-based high-volume data stream load balancing system and method
CN105610709B (en) * 2016-02-03 2018-09-11 西安电子科技大学 Big current load equilibrium System and method for based on SDN
CN106027416B (en) * 2016-05-23 2019-03-01 北京邮电大学 A kind of data center network traffic scheduling method and system based on space-time combination
CN106027416A (en) * 2016-05-23 2016-10-12 北京邮电大学 Data centre network flow dispatching method and system based on space and time combination
CN107634912A (en) * 2016-07-19 2018-01-26 华为技术有限公司 Load-balancing method, device and equipment
CN107634912B (en) * 2016-07-19 2020-04-28 华为技术有限公司 Load balancing method, device and equipment
WO2018014569A1 (en) * 2016-07-19 2018-01-25 华为技术有限公司 Method, apparatus and device for balancing load
US11134014B2 (en) 2016-07-19 2021-09-28 Huawei Technologies Co., Ltd. Load balancing method, apparatus, and device
WO2019024759A1 (en) * 2017-08-01 2019-02-07 华为技术有限公司 Data communication method and data communication network
US11303571B2 (en) 2017-08-01 2022-04-12 Huawei Technologies Co., Ltd. Data communication method and data communications network
CN108199966A (en) * 2018-01-09 2018-06-22 莫毓昌 The network flow dynamic dispatching method and system at a kind of high-performance data center
CN109361603A (en) * 2018-11-26 2019-02-19 浪潮思科网络科技有限公司 The method and system of equative route flow are adjusted based on programmable exchange chip dynamic
CN109905329A (en) * 2019-01-04 2019-06-18 东南大学 The flow queue adaptive management method that task type perceives under a kind of virtualized environment
CN109905329B (en) * 2019-01-04 2021-06-08 东南大学 Task type aware flow queue self-adaptive management method in virtualization environment

Also Published As

Publication number Publication date
CN102710489B (en) 2015-07-29
JP5324637B2 (en) 2013-10-23
JP2012209928A (en) 2012-10-25

Similar Documents

Publication Publication Date Title
CN102710489B (en) Dynamic shunt dispatching patcher and method
CN107579922B (en) Network load balancing device and method
CN105379196B (en) Method, system and computer storage medium for the routing of fault-tolerant and load balance
CN107959633A (en) A kind of load balance method based on price mechanism in industry real-time network
CN106209669B (en) Towards SDN data center network maximum probability path stream scheduling method and device
CN106533960A (en) Data center network routing method based on Fat-Tree structure
CN108566659A (en) A kind of online mapping method of 5G networks slice based on reliability
CN105765928B (en) For handling the method and the network equipment of network packet
CN105610715B (en) A kind of cloud data center multi-dummy machine migration scheduling method of planning based on SDN
CN105897575A (en) Path computing method based on multi-constrained path computing strategy under SDN
CN105227481A (en) The SDN congestion control method for routing of cost minimization is dispatched based on path cost and stream
CN108289064A (en) Mixed load equalization methods in a kind of data center net
CN103259739A (en) Load balancing device and load balancing method
CN103685053B (en) Network processor load balancing and scheduling method based on residual task processing time compensation
CN102571571A (en) Multilayer effective routing method applied to delay tolerant network (DTN)
CN104579962A (en) Method and device for differentiating QoS strategies of different messages
CN103560967A (en) Virtual data center mapping method sensing service requirement
CN108174394A (en) A kind of Arrangement algorithm of 5G networks slice
CN106559330A (en) A kind of dynamic path planning method based on SDN
CN109286528A (en) A kind of SDN network multi-controller dispositions method based on time delay
Ren et al. A sdn-based dynamic traffic scheduling algorithm
CN102186211A (en) Load distribution method for end-to-end multilink parallel transmission
KR20150080183A (en) Method and Apparatus for dynamic traffic engineering in Data Center Network
CN104883321A (en) Intra-domain load balancing method based on switch load
Jiang et al. Tailor: Trimming coflow completion times in datacenter networks

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150729

Termination date: 20170328

CF01 Termination of patent right due to non-payment of annual fee