CN105577729A - Load balancing method and device - Google Patents
Load balancing method and device Download PDFInfo
- Publication number
- CN105577729A CN105577729A CN201410555510.5A CN201410555510A CN105577729A CN 105577729 A CN105577729 A CN 105577729A CN 201410555510 A CN201410555510 A CN 201410555510A CN 105577729 A CN105577729 A CN 105577729A
- Authority
- CN
- China
- Prior art keywords
- switch
- controller
- characterization parameter
- data
- inext
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/645—Splitting route computation layer and forwarding layer, e.g. routing according to path computational element [PCE] or based on OpenFlow functionality
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention discloses a load balancing method and device. The method comprises that data of characterization parameters of multiple switches controlled by each of multiple SDN (Software Defined Network) controllers in an SDN controller cluster is collected; according to the data of characterization parameters of the multiple switches, data of the characterization parameters of the switches in the next time is pre-estimated, and according to the pre-estimated data of the characterization parameters of the switches in the next time, load balancing is carried out on the SDN controllers in the SDN controller cluster. According to the invention, the problem that the SDN controllers in the cluster are imbalanced in load is solved, load balancing is carried out via the pre-estimated data, the method is easy to realize, and the resource utilization rate of the SDN controller cluster is improved.
Description
Technical field
The present invention relates to the communications field, in particular to a kind of method and device of load balancing.
Background technology
Software defined network (SoftwareDefinedNetworks, referred to as SDN) technology is that a kind of new network proposed by cleanslate seminar of Stanford Univ USA innovates framework at first.The mode of its core technology Openflow (referred to as OF) agreement by network equipment chain of command and data surface being separated, achieves the flexible control of network traffics, for the innovation of core network and application provides good platform.
SDN is made up of three parts: comprise SDN controller, escape way and SDN switch.SDN controller is the network control software according to OpenFlow Protocol Design, for management traffic, configure network devices, formulation stream table (FlowTable), bears the communication of Network and LA Management Room.Multiple controller can be had in a territory, but generally only have a controller to be in control, controlled state.SDN switch, by the management and control of SDN controller, preserves the stream table that controller is formulated, and decides the processing mode to message by inquiry stream table list item, comprises forwarding, buffer memory, Submission control device or abandons.Escape way under OpenFlow agreement is used for connecting switch and controller, communicates for the two.
Along with the development of SDN technology, SDN controller Clustering have also been obtained increasing application.Under SDN multi-controller framework, each controller controls the switch of some, if the packet-in message that the switch of certain controller management and control reports too much or the stream table quantity issued and excessive with the OF transinformation content of switch, this controller will be caused to produce larger control flow check in certain moment, this situation will make this controller become the bottleneck of whole controller cluster processing network flow, affects the performance of whole controller cluster.
When network traffics fluctuation is larger, exchange opportunity under certain controller reports a large amount of packet-in message (special messages of one of OpenFlow agreement, be used for the flow of will fail to match specially, or specify the flow of coupling, send to controller) or other OF (OpenFlow) message, controller also may issue a large amount of stream table, and other controller receives only a small amount of packet-in message and other OF message, now the stream table quantity that issues of this controller is also few, this just may cause some controller to control overload, and some controller does not reach control load saturation condition far away.In order to alleviate the generation of this situation, needing the switch of moment to each controller management and control to adjust, the load balancing that the moment realizes controller, improving the control performance of whole controller cluster.
Correlation technique only proposes increases shared storage area to realize communicating between controller between multiple controller, and unrealized controller load balancing, but when network traffics fluctuation is larger, occur that the problem of controller load inequality is not yet resolved.
For the problem of cluster SDN controller load inequality in correlation technique, at present effective solution is not yet proposed.
Summary of the invention
The invention provides a kind of method and device of load balancing, at least to solve the problem of cluster SDN controller load inequality in correlation technique.
According to one embodiment of present invention, provide a kind of method of load balancing, comprising: the data of collecting the characterization parameter of multiple switches of management and control in each SDN controller of clustered software define grid SDN controller; According to the data of the characterization parameter of described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch; According to the described characterization parameter of the described multiple switch estimated in the data of subsequent time, load balancing is carried out to each SDN controller of described cluster SDN controller.
In the present embodiment, described characterization parameter comprise following one of at least: packet-in message, stream table number and other OF message.
In the present embodiment, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time: use least square method to estimate the data of described characterization parameter at subsequent time of described multiple switch.
In the present embodiment, the described characterization parameter using least square method to estimate described multiple switch comprises in the data of subsequent time: to each switch, following least square method calculated with mathematical model is used to draw the data of described characterization parameter at subsequent time of described each switch: y=alpha+beta * x, wherein x is the data of described characterization parameter at current time, and y is the data of described characterization parameter at subsequent time; Parameter alpha and β value are according to following formulae discovery:
Wherein n is the moment number in the current statistic cycle, and X is timestamp corresponding to moment, and Y is the value of the described characterization parameter of each switch.
In the present embodiment, the data of described characterization parameter comprise sample historical data and the data in described characterization parameter each moment in the current statistic cycle of characterization parameter; According to the data of the characterization parameter of described multiple switch, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time: according to sample historical data and the data in described characterization parameter each moment in the current statistic cycle of the characterization parameter of described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch.
In the present embodiment, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time: according to the data in described characterization parameter each moment in the current statistic cycle, estimates the data of described characterization parameter at subsequent time of described multiple switch; The sample historical data of described characterization parameter and the described characterization parameter estimated are sued for peace in the data of subsequent time and is averaged.
In the present embodiment, according to the described characterization parameter of the described multiple switch the estimated data at subsequent time, carry out load balancing to each SDN controller of described cluster SDN controller to comprise: according to the described characterization parameter of the described multiple switch the estimated data at subsequent time, calculate the ratio P of each controller for the discreet value of the described characterization parameter history maximum corresponding with it
yHi: calculate the total discreet value of whole controller cluster for described characterization parameter and the ratio P of total maximum
yHv: by P
yHiwith P
yHvcompare, and adjust the switch of controller management and control according to the result compared.
In the present embodiment, P
yHiby following formulae discovery:
wherein n is the switch number of each controller management and control, Y
inextfor the respective switch of controller management is for the discreet value of described characterization parameter, H
iymaxfor the respective switch of controller management is for the history maximum of described characterization parameter; And/or, P
yHvby following formulae discovery:
wherein m represents controller number, and n represents the switch number of each controller management and control, Y
inextfor the respective switch of controller management is for the discreet value of described characterization parameter, H
iymaxfor the respective switch controller of management is for the history maximum of described characterization parameter.
In the present embodiment, by P
yHiwith P
yHvcompare, and comprise according to the switch of the result adjustment controller management and control of comparing: to multiple different characterization parameter Set scale coefficient, wherein, described proportionality coefficient is for representing the proportion that each characterization parameter is shared in comparison procedure.
In the present embodiment, by P
yHiwith P
yHvcompare, and comprise according to the switch of the result adjustment controller management and control of comparing: for each controller, as its P
yHibe greater than P
yHvtime, calculate the switch that should recall, and recall switch according to result of calculation; And/or, for each controller, as its P
yHibe less than P
yHvtime, calculate the switch that should call in, and call in switch according to result of calculation.
In the present embodiment, calculate the switch that should recall, and recall switch according to result of calculation and comprise: controller is calculated
be set to B
yosize, and obtain B according to the proportionality coefficient arranged before
osize, wherein said proportionality coefficient is for representing the proportion that multiple characterization parameter is shared in comparison procedure; B is drawn according to the estimated data of each switch
inext=Y
inext; According to B
inextvalue the switch ascending order of this controller management and control is arranged, obtain switch queue; From described switch queue, select switch from top to bottom, and cumulative calculation to shift out the B of switch
inextsummation, if be not more than B
osizethen continue to select switch; Joined by the switch to be transferred selected and wait to transfer switch pond, wherein said waiting transfers switch pond for storing exchanger information to be transferred.
In the present embodiment, calculate the switch that should enter, and call in switch according to result of calculation and comprise: controller is calculated
be set to B
yisize, and obtain B according to the proportionality coefficient arranged before
isize, wherein said proportionality coefficient is for representing the proportion that multiple characterization parameter is shared in comparison procedure; According to B
isizevalue descending is done to controller, then call in switch according to controller load successively.
In the present embodiment, call in switch according to controller load successively and comprise: each waits to transfer the B of switch according to waiting to transfer in switch pond
inextvalue descending is done to switch, obtain switch queue, wherein said wait transfer switch pond for storing exchanger information to be transferred; For each controller, from above-mentioned queue, select switch from top to bottom, respectively by B
inextwith B
isizecompare, if B
inext>B
isize, then next switch is selected, if B
inext<B
isize, then the controller that proceeds to waiting to transfer element corresponding with this switch in switch pond number and is set to this controller and numbers, while B
isize=B
isize-B
inext, then check next switch, until last switch.
According to another embodiment of the present invention, provide a kind of device of load balancing, comprising: collection module, for collect clustered software define grid SDN controller each SDN controller in the data of characterization parameter of multiple switches of management and control; Estimate module, for the data of the characterization parameter according to described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch; Load balancing module, for according to the described characterization parameter of described multiple switch estimated in the data of subsequent time, load balancing is carried out to each SDN controller of described cluster SDN controller.
By the present invention, adopt the data of the characterization parameter of multiple switches of management and control in each SDN controller collecting clustered software define grid SDN controller; According to the data of the characterization parameter of described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch; According to the described characterization parameter of the described multiple switch the estimated data at subsequent time, each SDN controller of described cluster SDN controller is carried out to the mode of load balancing, solve the problem of cluster SDN controller load inequality in correlation technique, load balancing is carried out by the data estimated, which realizability is strong, improves the resource utilization of cluster SDN controller.
Accompanying drawing explanation
Accompanying drawing described herein is used to provide a further understanding of the present invention, and form a application's part, schematic description and description of the present invention, for explaining the present invention, does not form inappropriate limitation of the present invention.In the accompanying drawings:
Fig. 1 is the flow chart of the method for load balancing according to the embodiment of the present invention;
Fig. 2 is the structure money figure of the device of load balancing according to the embodiment of the present invention;
Fig. 3 is the structured flowchart of SDN controller according to the preferred embodiment of the invention;
Fig. 4 is the flow chart of according to the preferred embodiment of the invention switch being called in controller;
Fig. 5 is cluster controller load balance scheduling flow chart according to the preferred embodiment of the invention;
Fig. 6 distributes schematic diagram according to the territory internal controller of the preferred embodiment of the present invention 1 and switch;
Fig. 7 distributes schematic diagram according to the territory inner stacks controller of the preferred embodiment of the present invention 3 and switch.
Embodiment
Hereinafter also describe the present invention in detail with reference to accompanying drawing in conjunction with the embodiments.It should be noted that, when not conflicting, the embodiment in the application and the feature in embodiment can combine mutually.
Correlation technique only proposes increases shared storage area to realize communicating between controller between multiple controller, and unrealized controller load balancing, but when network traffics fluctuation is larger, occur that the problem of controller load inequality is not yet resolved, the present embodiment solves this problem by the method for predicting network flow and each controller management and control switch of scheduling.
In the present embodiment, provide a kind of method of load balancing, Fig. 1 is the flow chart of the method for load balancing according to the embodiment of the present invention, and as shown in Figure 1, the method comprises the steps:
Step S102, collects the data of the characterization parameter of multiple switches of management and control in each SDN controller of clustered software define grid (SDN) controller;
Step S104, according to the data of the characterization parameter of described multiple switch, estimates the data of described characterization parameter at subsequent time of described multiple switch;
Step S106, according to the described characterization parameter of the described multiple switch estimated in the data of subsequent time, carries out load balancing to each SDN controller of described cluster SDN controller.
The present embodiment passes through above-mentioned steps, the data of the characterization parameter of multiple switches of management and control in each SDN controller are collected, and estimate according to the data of data to subsequent time of collecting, then according to the data of the characterization parameter subsequent time estimated, load balancing is carried out to each SDN controller, thus achieve the load balancing of cluster SDN controller, solve the problem of cluster SDN controller load inequality in correlation technique, load balancing is carried out by the data estimated, which realizability is strong, improves the resource utilization of cluster SDN controller.
In the present embodiment, described characterization parameter comprise following one of at least: packet-in message, stream table number and other OF message.
In the present embodiment, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time: use least square method to estimate the data of described characterization parameter at subsequent time of described multiple switch.
In the present embodiment, the described characterization parameter using least square method to estimate described multiple switch comprises in the data of subsequent time: to each switch, following least square method calculated with mathematical model is used to draw the data of described characterization parameter at subsequent time of described each switch: y=alpha+beta * x, wherein x is the data of described characterization parameter at current time, and y is the data of described characterization parameter at subsequent time; Parameter alpha and β value are according to following formulae discovery:
Wherein n is the moment number in the current statistic cycle, and X is timestamp corresponding to moment, and Y is the value of the described characterization parameter of each switch.
In the present embodiment, the data of described characterization parameter comprise sample historical data and the data in described characterization parameter each moment in the current statistic cycle of characterization parameter; According to the data of the characterization parameter of described multiple switch, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time: according to sample historical data and the data in described characterization parameter each moment in the current statistic cycle of the characterization parameter of described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch.
In the present embodiment, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time: according to the data in described characterization parameter each moment in the current statistic cycle, estimates the data of described characterization parameter at subsequent time of described multiple switch; The sample historical data of described characterization parameter and the described characterization parameter estimated are sued for peace in the data of subsequent time and is averaged.
In the present embodiment, according to the described characterization parameter of the described multiple switch the estimated data at subsequent time, carry out load balancing to each SDN controller of described cluster SDN controller to comprise: according to the described characterization parameter of the described multiple switch the estimated data at subsequent time, calculate the ratio P of each controller for the discreet value of the described characterization parameter history maximum corresponding with it
yHi: calculate the total discreet value of whole controller cluster for described characterization parameter and the ratio P of total maximum
yHv: by P
yHiwith P
yHvcompare, and adjust the switch of controller management and control according to the result compared.
In the present embodiment, P
yHiby following formulae discovery:
wherein n is the switch number of each controller management and control, Y
inextfor the respective switch of controller management is for the discreet value of described characterization parameter, H
iymaxfor the respective switch of controller management is for the history maximum of described characterization parameter; And/or,
P
yHvby following formulae discovery:
wherein m represents controller number, and n represents the switch number of each controller management and control, Y
inextfor the respective switch of controller management is for the discreet value of described characterization parameter, H
iymaxfor the respective switch of controller management is for the history maximum of described characterization parameter.Wherein, Y here
inextbe the result y obtained by least square method calculated with mathematical model.
In the present embodiment, by P
yHiwith P
yHvcompare, and comprise according to the switch of the result adjustment controller management and control of comparing: to multiple different characterization parameter Set scale coefficient, wherein, described proportionality coefficient is for representing the proportion that each characterization parameter is shared in comparison procedure.
In the present embodiment, by P
yHiwith P
yHvcompare, and comprise according to the switch of the result adjustment controller management and control of comparing: for each controller, as its P
yHibe greater than P
yHvtime, calculate the switch that should recall, and recall switch according to result of calculation; And/or, for each controller, as its P
yHibe less than P
yHvtime, calculate the switch that should call in, and call in switch according to result of calculation.
In the present embodiment, calculate the switch that should recall, and recall switch according to result of calculation and comprise: controller is calculated
be set to B
yosize, and obtain B according to the proportionality coefficient arranged before
osize, wherein said proportionality coefficient is for representing the proportion that multiple characterization parameter is shared in comparison procedure; B is drawn according to the estimated data of each switch
inext=Y
inext; According to B
inextvalue the switch ascending order of this controller management and control is arranged, obtain switch queue; From described switch queue, select switch from top to bottom, and cumulative calculation to shift out the B of switch
inextsummation, if be not more than B
osizethen continue to select switch; Joined by the switch to be transferred selected and wait to transfer switch pond, wherein said waiting transfers switch pond for storing exchanger information to be transferred.
In the present embodiment, calculate the switch that should enter, and call in switch according to result of calculation and comprise: controller is calculated
be set to B
yisize, and obtain B according to the proportionality coefficient arranged before
isize, wherein said proportionality coefficient is for representing the proportion that multiple characterization parameter is shared in comparison procedure; According to B
isizevalue descending is done to controller, then call in switch according to controller load successively.
In the present embodiment, call in switch according to controller load successively and comprise: each waits to transfer the B of switch according to waiting to transfer in switch pond
inextvalue descending is done to switch, obtain switch queue, wherein said wait transfer switch pond for storing exchanger information to be transferred; For each controller, from above-mentioned queue, select switch from top to bottom, respectively by B
inextwith B
isizecompare, if B
inext>B
isize, then next switch is selected, if B
inext<B
isize, then the controller that proceeds to waiting to transfer element corresponding with this switch in switch pond number and is set to this controller and numbers, while B
isize=B
isize-B
inext, then check next switch, until last switch.
Corresponding to above-mentioned load-balancing method, additionally provide a kind of device of load balancing in the present embodiment, this device is used for realizing above-described embodiment and preferred implementation, has carried out repeating no more of explanation.As used below, term " module " can realize the software of predetermined function and/or the combination of hardware.Although the device described by following examples preferably realizes with software, hardware, or the realization of the combination of software and hardware also may and conceived.
Fig. 2 is the structure money figure of the device of load balancing according to the embodiment of the present invention, and as shown in Figure 2, this device comprises: collection module 22, estimate module 24 and load balancing module 26, is described in detail below to modules:
Collection module 22, for collect clustered software define grid SDN controller each SDN controller in the data of characterization parameter of multiple switches of management and control; Estimate module 24, be connected with collection module 22, for the data of the characterization parameter according to described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch; Load balancing module 26, and estimates module 24 and is connected, for according to the described characterization parameter of the described multiple switch estimated in the data of subsequent time, load balancing is carried out to each SDN controller of described cluster SDN controller.
Be described below in conjunction with preferred embodiment, following preferred embodiment mainly for above-mentioned characterization parameter for packet-in message number with issue stream table and other this three types of OF information are described in detail, the preferred embodiment combines above-described embodiment and preferred implementation thereof.
In following preferred embodiment, provide a kind of method and apparatus realizing SDN controller load balance optimization, namely in distributed SDN controller cluster scene, propose a kind of packet-in message number that controller is received and issue stream table and other OF information is carried out reasonable prediction and is optimized, make each controller realize load balancing.
This preferred embodiment is mainly used in SDN territory, multiple controller is had in this territory, the switch of each controller management and control some, only have a controller to be in management and control state for each switch, other is in stand-by state, according to the data prediction of packet_in message, stream table quantity and other OF message, then do on average with corresponding historical statistical data, carry out aggregation of data, as the foundation of adjusting and optimizing controller load, and the switch of dynamic conditioning controller management and control.The preferred embodiment comprises following two parts content, is newly-increased cluster controller dispatching device and detailed implementation step in SDN controller respectively:
Cluster controller dispatching device: Fig. 3 is the structured flowchart of SDN controller according to the preferred embodiment of the invention, as shown in Figure 3, has increased cluster controller dispatching device newly and mainly comprise following four internal modules in SDN controller:
Information collection module: the sample historical data of collecting the packet-in message of each switch of management and control, stream table number and other OF message according to Sampling time periods or the packet-in message collecting current each switch, stream table number and other OF message data.Time cycle can be that in one week, the timestamp of every day identical period also can be the timestamp of same period on the same day in a few week, determines according to actual use scenes.
Data processing module: mainly adopt related algorithm to carry out aggregation of data process according to the packet-in of each switch collected, stream table number and other OF Information Statistics, obtain the data expected.
Scheduler module: the load pressure of each controller drawn according to data processing module and the contrast of cluster controller load pressure, adjust the switch of each controller management and control, makes each controller load pressure balanced.
Handover module: according to the scheduling result of each controller to the switch of management and control, adopts slave-master (principal and subordinate's mechanism, also can be written as master-slave) mechanism to exchange the role of each controller for management and control switch.
Based on said structure, the performing step of this preferred embodiment is as follows:
S1, cluster controller scheduling starts: the history maximum that controller arranges packet-in quantity is H
ipmax, stream table number history maximum be H
ifmaxbe H with the history maximum of other OF message
immax, and be set to 0 respectively.
S2, adopt the information collection module in cluster controller to collect sample information, can be the sample data of every day identical period in one week, also can be the sample data of same period on the same day in a few week, according to practical application scene determination sample data.Collect sample data information to be realized by following sub-step:
S2.1, within the identical time interval, is initiated the information order of the controller of institute's management and control cluster by the super node in cluster; In cluster, all controllers start to collect packet-in message number and statistic fluid table quantity and other OF information to the switch of its management and control;
S2.2, when the statistical information of all management and control switches collected by controller, starts the statistical information sending stream table, packet_in and other OF message to cluster distributed shared memory systems, is designated as F respectively
i, P
iand M
i, wherein F
icomprise: controller is numbered, switch label, switch stream table is added up, timestamp; P
icomprise: packet-in message number, timestamp that controller numbering, switch label, switch are sent; M
icomprise: controller numbering, switch label, switch and controller other OF information, timestamps except packet_in.Described timestamp refers to the moment of the response message collecting all management and control switches.All information as history reference or can predict use in time.
S3, the stream table number that the packet-in message number that super node uses the data processing module in controller to report according to the switch under each controller in the mathematical model prediction of the least square method next time interval, controller issue and other OF message statistics, realize respectively by step S4, step S5 and step S6:
S4, according to timestamp, super node reads the packet-in counting messages information of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S4.1, determines timestamp number N here, namely attempts the complete packet-in counting messages information aggregate obtaining N number of timestamp; Described complete packet-in counting messages information aggregate refers to the packet-in counting messages information that all different switch of the same timestamp of same controller reports and timestamp is nearest;
If the complete packet-in counting messages information aggregate of S4.2 acquisition time stamp is less than N number of, circulation performs S2, until get the packet-in counting messages information aggregate of N number of timestamp;
S4.3, according to above-mentioned packet-in counting messages information aggregate, super node adds up the Information Statistics P of the packet-in message obtaining N number of timestamp for each switch
1, P
2..., P
n, namely obtain such data: P
i={ controller numbering, switch numbering, timestamp X, packet-in counting messages information Y}.
S4.4, if the packet-in message information of the controller of above-mentioned N number of timestamp adds up the history packet-in counting messages H that maximum that is greater than controller
ipmax, then
S4.5, to each switch under cluster controller management and control, uses least square method Mathematical Modeling:
Y=alpha+beta * x, (formula 1-1)
The packet-in counting messages information P of each switch under each controller management and control of next timestamp is calculated by regression analysis
inext, computing formula is as follows:
Wherein: n representative sample data amount check, X is equivalent to timestamp, and Y is the packet-in message number statistical value of each switch, obtains parameter alpha and β value respectively, then estimates the packet-in message information of subsequent time switch.
S4.6, in order to make discreet value more close to actual value, according to the sampling period of sample data, the actual value of the packet-in message amount of this timestamp switch interior of several cycle before actual measurement, then sue for peace with discreet value and be averaged, obtain more accurate discreet value.
S5, according to timestamp, super node reads the stream table statistical information of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S5.1, determines timestamp number N, namely attempts the complete stream table statistical information set obtaining N number of timestamp; The set of described complete stream table statistical information refers to stream table statistical information on all different switch of the same timestamp of same controller and timestamp is nearest;
S5.2, if the complete stream table statistical information set of acquisition time stamp is less than N number of, circulation performs S2, until get the stream table statistical information set of N number of timestamp;
S5.3, according to the set of above-mentioned stream table statistical information, super node adds up for each switch the stream table statistical information F obtaining N number of timestamp
1, F
2..., F
n, namely obtain such data: F
i={ controller numbering, switch numbering, timestamp X, stream table statistics Y}.
S5.4, if that maximum history stream table being greater than controller added up by the controller stream table of above-mentioned N number of timestamp add up H
ifmax, then
S5.5, to each switch of controller management and control each in cluster controller, uses least square method Mathematical Modeling (see formula 1-1) to be calculated the stream table statistical information F of the respective switch of future time stamp by regression analysis
inext, computing formula is shown in formula 1-2 and formula 1-3.
S5.6, in order to make discreet value more close to actual value, according to the sampling period of sample data, the actual value of the stream table statistical information of this timestamp switch interior of several cycle before getting actual measurement, then sue for peace with discreet value and be averaged, obtain more accurate discreet value.
S6, according to timestamp, super node reads other OF interactive information (being later called for short other OF information) except packet_in of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S6.1, determines timestamp number N, namely attempts other OF Information Statistics set complete obtaining N number of timestamp; Described other OF information aggregate complete refers to all different switch of the same timestamp of same controller and all OF interaction statistics information except packet_in of controller and timestamp is nearest;
S6.2, if other OF Information Statistics set complete of acquisition time stamp is less than N number of, circulation performs S2, until get other OF Information Statistics set of N number of timestamp;
S6.3, according to other OF Information Statistics set above-mentioned, super node adds up for each switch other OF Information Statistics M obtaining N number of timestamp
1, M
2..., M
n, namely obtain such data: M
i={ controller numbering, switch numbering, timestamp X, out of Memory statistics Y}.
S6.4, if maximum that of other OF Information Statistics of the controller of above-mentioned N number of timestamp is greater than other OF Information Statistics of history H of controller
immax, then
S6.5, to each switch of controller management and control each in cluster controller, uses least square method Mathematical Modeling (see formula 1-1) to be calculated other OF statistical information M of the respective switch of future time stamp by regression analysis
inext, computing formula is shown in formula 1-2 and formula 1-3.
S6.6, in order to make discreet value more close to actual value, according to the sampling period of sample data, the actual value of other OF statistical information of this timestamp switch interior of several cycle before getting actual measurement, then sue for peace with discreet value and be averaged, obtain more accurate discreet value.
S7, according to estimating controller packet-in message number at a time and stream table statistical information and other OF information, calculate the ratio of each controller for packet-in and stream table statistics and the discreet value of other OF information history maximum corresponding with it respectively, be designated as P respectively
pHi, P
fHiand P
mHi, that is:
Wherein, n represents the switch number of each controller management and control.And then calculate the ratio of packet-in message number that whole controller cluster always estimates and the ratio that the ratio of total maximum packet-in message number, the statistic fluid table always estimated and total max-flow table are added up and other OF message statistics always estimated and total maximum OF message statistics, be designated as P respectively
pHv, P
fHvand P
mHv, that is:
Wherein, m represents controller number, and n represents the switch number of each controller management and control.
S8, calculates P according to real data
pHi, P
fHiand P
mHi, respectively with the P calculated
pHv, P
fHvand P
mHvcompare, use internal schedule module to adjust the switch of each controller management and control according to the result sizes controller compared, realize load balancing, this step is realized by following sub-step:
S8.1, wait that transferring switch pond is set to sky, and treat that transfer switch pond is loaded such element EF::={ and produced controller numbering, switch is numbered, switch stream table statistical number, proceeds to controller numbering }; EP::={ produces controller numbering, and switch is numbered, packet-in message number, proceeds to controller numbering }; EM::={ produces controller numbering, and switch is numbered, other OF message statistics number, proceeds to controller numbering }.
S8.2, according to the embody rule scene of cluster controller, Set scale coefficient x, y, for characterizing the switch adjusting each controller management and control according to packet-in message number or stream table number or other OF message statistics quantity, to reach the object of each controller load balancing.Draw following formula:
P
i=(1-y) * (x*P
pHi+ (1-x) * P
mHi)+y*P
fHi(formula 1-10)
P
v=(1-y) * (x*P
pHv+ (1-x) * P
mHv)+y*P
fHv(formula 1-11)
Wherein: 0<=x<=1,0<=y<=1;
With reference to P
iwith descending, S8.3 is performed to each controller, after being finished, perform S8.6.
S8.3, for each controller, as its P
ibe greater than P
vtime, perform 8.4, otherwise perform S8.5.
S8.4, calculate the switch list that should recall, this step is realized by following sub-step:
S8.4.1, calculates respectively for controller
Be set to B
posize,
Be set to B
fosize,
be set to B
mosize, then can obtain according to the proportionality coefficient arranged before:
B
osize=(1-y) * (x*B
posize+ (1-x) * B
mosize)+y*B
fosize(formula 1-12)
Wherein 0<=x<=1,0<=y<=1;
S8.4.2, draws following formula according to the estimated data of each switch:
B
inext=(1-y) * (x*P
inext+ (1-x) * M
inext)+y*F
inext(formula 1-13)
According to B
inexthow many switch ascending order to this controller management and control arranges, and obtains switch queue;
S8.4.3, selects switch from top to bottom from above-mentioned queue;
S8.4.4, cumulative calculation will shift out the B of switch
inextsummation, if be not more than B
osizethen continue to perform S8.4.4, otherwise perform S8.4.5;
S8.4.5, numbers these switches to be transferred, together with controller numbering, and B
inextjoin and wait to transfer switch pond, wherein proceed to controller and be numbered sky.
S8.5, calculate the switch list that should call in, this step is realized by following sub-step:
S8.5.1, calculates respectively for controller
Be set to B
pisize,
Be set to B
fisize,
be set to B
misize.Then can obtain according to the proportionality coefficient arranged before:
B
isize=(1-y) * (x*B
pisize+ (1-x) * B
misize)+y*B
fisize(formula 1-14)
Wherein 0<=x<=1,0<=y<=1.
S8.5.2, according to B
isizesize does descending to controller, then calls in switch according to controller load successively, is specifically realized by following sub-step:
S8.5.2.1, transfers switch pond B according to waiting
inextsize does descending to switch, obtains switch queue.
S8.5.2.2, for each controller, selects switch from top to bottom, respectively by B from above-mentioned queue
inextwith B
isizecompare, if B
inext>B
isize, then next switch is selected, if B
inext<B
isize, then the controller that proceeds to waiting to transfer element corresponding with this switch in switch pond number and is set to this controller and numbers, while B
isize=B
isize-B
inext, then check next switch, until be checked through last switch, Fig. 4 is the flow chart of according to the preferred embodiment of the invention switch being called in controller, and concrete steps as shown in Figure 4.
S8.6, controller adopts the corresponding switch of inner switching controls Restructuring Module, and realize load balancing, this step is realized by following sub-step:
S8.6.1, super node is treated and is transferred each element in switch pond, if proceed to controller numbering not for empty, then to producing switch corresponding to controller numbering and proceeding to the transfer switch order of controller numbering and perform S8.6.2, otherwise skips over this element.
S8.6.2, exchanges according to slave-master mechanism, realizes switch scheduling; Described slave-master mechanism is exchanged OpenFlow protocol, for changing the role of different controller when multi-controller controls.
S9, this finishing scheduling, following time interval repeats S2.
This preferred embodiment proposes a solution for cluster controller load imbalance phenomenon, the core concept of solution is the Mathematical Modeling adopting least square method, to the packet-in message of future time instance respective switch, stream table number and other OF message are predicted, and the historical data of getting the same time cycle is reference, be averaging with discreet value, then the statistical information of each controller is tried to achieve according to new mean value, the load pressure value of the statistical information of controller and the ratio of historical statistics maximum and whole controller cluster compares, when network traffics shake is larger, the switch number of each controller management and control of timely adjustment, make the packet-in message that all controllers receive, the stream table issued and other mutual OF message reaches equilibrium state with switch, improve the control performance of whole controller cluster.Fig. 5 is cluster controller load balance scheduling flow chart according to the preferred embodiment of the invention, and whole handling process as shown in Figure 5.
Embodiment 1:
Fig. 6 distributes schematic diagram according to the territory internal controller of the preferred embodiment of the present invention 1 and switch, is illustrated in figure 6 example, is distributed with SDN controller node A, B, C in territory.The switch of A controller node management and control comprises sw1, sw2 and sw3; The switch of B controller node management and control comprises sw4 and sw5; The switch of C controller node management and control comprises sw6, sw7 and sw8; This preferred embodiment described in detail by associative list 1, table 2, table 3, table 4, table 5, table 6, table 7.
S1, cluster controller scheduling starts: the history maximum that controller arranges packet-in quantity is H
ipmax, stream table number history maximum be H
ifmaxbe H with the history maximum of other OF message
immax, and be set to 0 respectively.
S2, adopts information collection module in cluster controller to collect sample information, and the sample data of this example collection is the statistical information of certain a day time period different time stamp in a week.Actual measurement information in the last week of collection simultaneously in this period as a reference, makes to estimate information more close to actual value.Collect sample data information to be realized by following sub-step:
S2.1, within the identical time interval, is initiated the information order of the controller of institute's management and control cluster by the super node in cluster; The all controller A of cluster, B, C start to collect packet-in message number to the switch of its management and control and add up the stream table number and other OF message that issue to each switch;
S2.2, when the statistical information of all management and control switches collected by controller, starts the statistical information sending stream table, packet_in and other OF message to cluster distributed shared memory systems, is designated as F respectively
i, P
iand M
i, wherein F
icomprise: controller is numbered, switch label, switch stream table is added up, timestamp; P
icomprise: packet-in message number, timestamp that controller numbering, switch label, switch are sent; M
icomprise: controller numbering, switch label, switch and controller other OF information, timestamps except packet_in.Described timestamp refers to the moment of the response message collecting all management and control switches.All information as history reference or can predict use in time.
S3, the stream table number that the packet-in message number that super node uses the data processing module in controller to report according to the switch under each controller in the mathematical model prediction of the least square method next time interval, controller issue to switch and other OF message, realize respectively by step S4, step S5 and step S6:
S4, according to timestamp, super node A reads the packet-in counting messages information of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S4.1, gets timestamp number N=5 here, namely attempts the complete packet-in counting messages information aggregate of acquisition 5 timestamps; Described complete packet-in counting messages information aggregate refers to the packet-in counting messages information that all different switch of the same timestamp of same controller reports and timestamp is nearest;
S4.2, the complete packet-in counting messages information aggregate of acquisition time stamp is less than 5, and circulation performs S2, until get the packet-in counting messages information aggregate of 5 timestamps, the packet-in counting messages information obtained is as shown in table 1;
Table 1:packet-in message initial number statistical form
S4.3, according to above-mentioned packet-in counting messages information aggregate, super node adds up the Information Statistics P of the packet-in message of acquisition 5 timestamps for each switch
1, P
2, P
3, P
4, P
5, namely obtain such data: P
i={ controller numbering, switch numbering, timestamp X, packet-in counting messages information Y}.
S4.4, if maximum that of packet-in message information statistics summation is greater than the history packet-in counting messages H of controller in the controller of above-mentioned 5 timestamps
ipmax, then
S4.5, to each switch under cluster controller management and control, uses the least square method Mathematical Modeling of formula 1-1, and calculates the packet-in counting messages information P of the respective switch of next timestamp according to formula 1-2 and 1-3
inext, predict the outcome as shown in table 2.
The message amount in the packet-in message T6 moment that table 2 is predicted
S4.6, in order to make discreet value more close to actual value, get the packet-in message amount actual measured value received of this timestamp in a week, sue for peace with discreet value and be averaged, result is as shown in table 3;
The mean value of table 3 one week interior packet-in message number actual measured value and discreet value
S5, according to timestamp, super node A reads the stream table statistical information of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S5.1, gets timestamp number N=5 here, namely attempts the complete stream table statistical information set of acquisition 5 timestamps; The set of described complete stream table statistical information refers to the stream table statistical information that the same timestamp of same controller issues to all different switches and timestamp is nearest;
S5.2, if the complete stream table statistical information set of acquisition time stamp is less than 5, circulation performs S2, until get the stream table statistical information set of 5 timestamps;
S5.3, according to the set of above-mentioned stream table statistical information, super node adds up the stream table statistics F of acquisition 5 timestamps for each switch
1, F
2, F
3, F
4, F
5, namely obtain such data: F
i={ controller numbering, switch numbering, timestamp X, stream table statistics Y}.
S5.4, if H added up by that history stream table being greater than controller that in the controller flow of above-mentioned 5 timestamps, stream table statistics summation is maximum
ifmax, then
S5.5, to each switch of controller management and control each in cluster controller, uses the least square method Mathematical Modeling of formula 1-1, and calculates the stream table statistical information F of the respective switch of future time stamp according to formula 1-2 and 1-3
inext;
S5.6, in order to make discreet value more close to actual value, getting the stream table statistics actual measured value of this timestamp in a week, suing for peace be averaged with discreet value;
S6, according to timestamp, super node reads the statistics of other OF interactive information except packet_in (being later called for short other OF information) of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S6.1, determines timestamp number N, namely attempts other OF Information Statistics set complete obtaining N number of timestamp; Described other OF information aggregate complete refers to all different switch of the same timestamp of same controller and all OF interaction statistics information except packet_in of controller and timestamp is nearest;
S6.2, if other OF Information Statistics set complete of acquisition time stamp is less than N number of, circulation performs S2, until get other OF Information Statistics set of N number of timestamp;
S6.3, according to other OF Information Statistics set above-mentioned, super node adds up for each switch other OF Information Statistics M obtaining N number of timestamp
1, M
2..., M
n, namely obtain such data: M
i={ controller numbering, switch numbering, timestamp X, other OF Information Statistics Y}.
S6.4, if maximum that of other OF Information Statistics of the controller of above-mentioned N number of timestamp is greater than other OF Information Statistics of history H of controller
immax, then
S6.5, to each switch of controller management and control each in cluster controller, uses least square method Mathematical Modeling (see formula 1-1) to be calculated other OF statistical information M of the respective switch of future time stamp by regression analysis
inext, computing formula is shown in formula 1-2 and formula 1-3.
S6.6, in order to make discreet value more close to actual value, according to the sampling period of sample data, the actual value of other OF statistical information of this timestamp switch interior of several cycle before getting actual measurement, then sue for peace with discreet value and be averaged, obtain more accurate discreet value.
S7, uses formula 1-4,1-5 and 1-6 to calculate P according to real data
pHi, P
fHiand P
mHi, respectively with the P calculated by formula 1-7,1-8 and 1-9
pHv, P
fHvand P
mHvcompare, adjust the switch of each controller management and control, realize load balancing according to the result sizes compared, this step is realized by following sub-step:
S7.1, the present embodiment hypothesis coefficient x=1, y=0, the packet_in message namely reported according to each switch is foundation, adjusts the switch number of management and control;
S7.2, wait that transferring switch pond is set to sky; Calculated by the packet-in message number of 5 timestamps got: P
pH1=1.09, P
pH2=0.39, P
pH3=1.11; Computing controller always estimates the ratio P of packet-in message number and the total maximum packet-in message number received
pHv=0.95; The load pressure table of controller is respectively shown in table 4.Above-mentioned wait transfer switch pond load such element EP::={ produce controller numbering, switch number, packet-in message number, proceed to controller numbering.
The controller load pressure table that table 4 draws according to packet-in message
Controller is numbered | A | B | C | Summation |
Predicted flow rate | 75 | 13 | 62 | 150 |
Controller maximum stream flow | 69 | 33 | 56 | 158 |
P PHi | 1.09 | 0.39 | 1.11 | 0.95 |
S7.3, can obtain P according to formula 1-10 and 1-11
i=P
pHi, P
v=P
pHv, with reference to P
iwith descending, S7.4 is performed to each controller, after being finished, perform S7.7.
S7.4, for each controller, as its P
ibe greater than P
vtime, perform S7.5, otherwise perform S7.6;
S7.5, calculate the switch list that should recall, this step is realized by following sub-step:
S7.5.1, this enforcement is the packet_in message data of the respective switch received according to controller is foundation, adjusts the switch number of management and control, can obtain: B according to formula 1-12
osize=1*B
posize;
S7.5.2, then calculates B according to formula 1-13
inext, according to B
inextthe switch ascending order arrangement of this controller management and control multipair, obtains switch queue;
S7.5.3, selects switch from top to bottom from above-mentioned queue;
S7.5.4, cumulative calculation will shift out switch b
inextsummation, if be not more than B
osizethen continue to perform S7.5.4, otherwise perform S7.5.5;
S7.5.5, numbers these switches to be transferred, together with controller numbering, and B
inextjoin and wait to transfer switch pond, wherein proceed to controller and be numbered sky, what now obtain treats that list is as shown in table 5;
Table 5 example 1 adjusts front controller resource-sharing region and waits to transfer pond table
S7.6, calculate the switch list that should call in, this step is realized by following sub-step:
S7.6.1, the present embodiment is the packet_in message data that the respective switch received according to controller reports is foundation, adjusts the switch number of management and control, can obtain B according to formula 1-14
isize=1*B
pisize;
S7.6.2, according to B
isizesize does descending to controller, then calls in switch according to controller load successively, is specifically realized by following sub-step:
S7.6.2.1, transfers switch pond B according to waiting
inextsize does descending to switch, obtains switch queue;
S7.6.2.2, for each controller, selects switch from top to bottom, respectively by B from above-mentioned queue
inextwith B
isizecompare, if B
inext>B
isize, then next switch is selected, if B
inext<B
isize, then the controller that proceeds to waiting to transfer element corresponding with this switch in switch pond number and is set to this controller and numbers, while B
isize=B
isize-B
inext, then check next switch, until be checked through last switch, concrete steps are shown in shown in flow chart 4, and what now obtain treats that list is as shown in table 6;
Table 6 example 1 adjusts rear controller resource-sharing region and waits to transfer pond table
S7.7, reconstructs corresponding switch, realizes load balancing, and this step is realized by following sub-step:
S7.7.1, super node is treated and is transferred each element in switch pond, if proceed to controller numbering not for empty, then to producing switch corresponding to controller numbering and proceeding to the transfer switch order of controller numbering and perform S7.7.2, otherwise skips over this element;
S7.7.2, exchanges according to slave-master mechanism, realizes switch scheduling; Described slave-master mechanism is exchanged OpenFlow protocol, for changing the role of different controller when multi-controller controls; Flow status after end is as shown in table 7.
According to each controller load pressure table after the adjustment of packet_in message in table 7 example 1
S8, this finishing scheduling, following time interval repeats S2.
Embodiment 2:
For Fig. 6, in territory, be distributed with SDN controller node A, B, C.The switch of A controller node management and control comprises sw1, sw2 and sw3; The switch of B controller node management and control comprises sw4 and sw5; The switch of C controller node management and control comprises sw6, sw7 and sw8; Start below to describe this preferred embodiment in detail.
S1, cluster controller scheduling starts: the history maximum that controller arranges packet-in quantity is H
ipmax, stream table number history maximum be H
ifmaxbe H with the history maximum of other OF message
immax, and be set to 0 respectively.
S2, adopts information collection module in cluster controller to collect sample information, and the sample data of this example collection is the statistical information of certain a day time period different time stamp in a week.Actual measurement information in the last week of collection simultaneously in this period as a reference, makes to estimate information more close to actual value.Collect sample data information to be realized by following sub-step:
S2.1, within the identical time interval, is initiated the information order of the controller of institute's management and control cluster by the super node in cluster; The all controller A of cluster, B, C start to collect packet-in message number to the switch of its management and control and add up the stream table number and other OF message that issue to each switch;
S2.2, when the statistical information of all management and control switches collected by controller, starts the statistical information sending stream table, packet_in and other OF message to cluster distributed shared memory systems, is designated as F respectively
i, P
iand M
i, wherein F
icomprise: controller is numbered, switch label, switch stream table is added up, timestamp; P
icomprise: packet-in message number, timestamp that controller numbering, switch label, switch are sent; M
icomprise: controller numbering, switch label, switch and controller other OF information, timestamps except packet_in.Described timestamp refers to the moment of the response message collecting all management and control switches.All information as history reference or can predict use in time.
S3, the stream table number that the packet-in message number that super node uses the data processing module in controller to report according to the switch under each controller in the mathematical model prediction of the least square method next time interval, controller issue to switch and other OF message, realize respectively by step S4, step S5 and step S6:
S4, according to timestamp, super node A reads the packet-in counting messages information of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S4.1, gets timestamp number N=5 here, namely attempts the complete packet-in counting messages information aggregate of acquisition 5 timestamps; Described complete packet-in counting messages information aggregate refers to the packet-in counting messages information that all different switch of the same timestamp of same controller reports and timestamp is nearest;
S4.2, if the complete packet-in counting messages information aggregate of acquisition time stamp is less than 5, circulation performs S2, until get the packet-in counting messages information aggregate of 5 timestamps;
S4.3, according to above-mentioned packet-in counting messages information aggregate, super node adds up the Information Statistics P of the packet-in message of acquisition 5 timestamps for each switch
1, P
2, P
3, P
4, P
5, namely obtain such data: P
i={ controller numbering, switch numbering, timestamp X, packet-in counting messages information Y};
S4.4, if maximum that of packet-in message information statistics summation is greater than the history packet-in counting messages H of controller in the controller of above-mentioned 5 timestamps
ipmax, then
S4.5, to each switch under cluster controller management and control, uses the least square method Mathematical Modeling of formula 1-1, and calculates the packet-in counting messages information P of the respective switch of next timestamp according to formula 1-2 and 1-3
inext;
S4.6, in order to make discreet value more close to actual value, getting the packet-in message amount actual measured value received of this timestamp in a week, suing for peace be averaged with discreet value.
S5, according to timestamp, super node A reads the stream table statistical information of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S5.1, gets timestamp number N=5 here, namely attempts the complete stream table statistical information set of acquisition 5 timestamps; The set of described complete stream table statistical information refers to the stream table statistical information that the same timestamp of same controller issues to all different switches and timestamp is nearest;
S5.2, if the complete stream table statistical information set of acquisition time stamp is less than 5, circulation performs S2, until get the stream table statistical information set of 5 timestamps;
S5.3, according to the set of above-mentioned stream table statistical information, super node adds up the stream table statistics F of acquisition 5 timestamps for each switch
1, F
2, F
3, F
4, F
5, namely obtain such data: F
i={ controller numbering, switch numbering, timestamp X, stream table statistics Y};
S5.4, if H added up by that history stream table being greater than controller that in the controller flow of above-mentioned 5 timestamps, stream table statistics summation is maximum
ifmax, then
S5.5, to each switch of controller management and control each in cluster controller, uses the least square method Mathematical Modeling of formula 1-1, and calculates the stream table statistical information F of the respective switch of future time stamp according to formula 1-2 and 1-3
inext;
S5.6, in order to make discreet value more close to actual value, getting the stream table statistics actual measured value of this timestamp in a week, suing for peace be averaged with discreet value.
S6, according to timestamp, super node reads the statistics of other OF interactive information except packet_in (being later called for short other OF information) of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S6.1, determines timestamp number N, namely attempts other OF Information Statistics set complete obtaining N number of timestamp; Described other OF information aggregate complete refers to all different switch of the same timestamp of same controller and all OF interaction statistics information except packet_in of controller and timestamp is nearest;
S6.2, if other OF Information Statistics set complete of acquisition time stamp is less than N number of, circulation performs S2, until get other OF Information Statistics set of N number of timestamp;
S6.3, according to other OF Information Statistics set above-mentioned, super node adds up for each switch other OF Information Statistics M obtaining N number of timestamp
1, M
2..., M
n, namely obtain such data: M
i={ controller numbering, switch numbering, timestamp X, other OF Information Statistics Y}.
S6.4, if maximum that of other OF Information Statistics of the controller of above-mentioned N number of timestamp is greater than other OF Information Statistics of history H of controller
immax, then
S6.5, to each switch of controller management and control each in cluster controller, uses least square method Mathematical Modeling (see formula 1-1) to be calculated other OF statistical information M of the respective switch of future time stamp by regression analysis
inext, computing formula is shown in formula 1-2 and formula 1-3;
S6.6, in order to make discreet value more close to actual value, according to the sampling period of sample data, the actual value of other OF statistical information of this timestamp switch interior of several cycle before getting actual measurement, then sue for peace with discreet value and be averaged, obtain more accurate discreet value.
S7, uses formula 1-4,1-5 and 1-6 to calculate P according to real data
pHi, P
fHiand P
mHi, respectively with the P calculated by formula 1-7,1-8 and 1-9
pHv, P
fHvand P
mHvcompare, adjust the switch of each controller management and control, realize load balancing according to the result sizes compared, this step is realized by following sub-step:
S7.1, the present embodiment hypothesis coefficient x=0.5, y=0.5, the stream table that the packet_in message namely simultaneously reported according to each switch, each switch issue and other OF message are foundation, adjust the switch number of management and control;
S7.2, wait that transferring switch pond is set to sky; Calculated by the packet-in message number of 5 timestamps got: P
pH1, P
pH2and P
pH3; Calculated by the stream table statistical number of 5 timestamps got: P
fH1, P
fH2and P
fH3; Calculated by other OF message statistics of 5 timestamps got: P
mH1, P
mH2and P
mH3; It is P with the ratio of total maximum packet-in message number that computing controller always estimates the packet-in message number received
pHv; It is P that computing controller always estimates the stream table number that issues with the total maximum ratio issuing stream table number
fHv; Other OF message count of always estimating of computing controller is P with the ratio of total other OF message count maximum
mHv; Above-mentioned wait transfer switch pond load such element EP::={ produce controller numbering, switch number, packet-in message number, proceed to controller numbering; EF::={ produces controller numbering, and switch is numbered, and stream table number, proceeds to controller numbering }; EM::={ produces controller numbering, and switch is numbered, other OF message count, proceeds to controller numbering };
S7.3, can obtain P according to formula 1-10 and 1-11
iand P
v, with reference to P
iwith descending, S7.4 is performed to each controller, after being finished, perform S7.7.
S7.4, for each controller, as its P
ibe greater than P
vtime, perform S7.5, otherwise perform S7.6;
S7.5, calculate the switch list that should recall, this step is realized by following sub-step:
S7.5.1, the stream table number that this enforcement is the packet_in message of the respective switch simultaneously received according to controller, controller issues and other OF message data are foundation, adjust the switch number of management and control, can obtain according to formula 1-12:
B
osize=(1-0.5)*(0.5*B
posize+0.5*B
fosize)+0.5*B
mosize;
S7.5.2, then calculates B according to formula 1-13
inext, according to B
inextthe switch ascending order arrangement of this controller management and control multipair, obtains switch queue;
S7.5.3, selects switch from top to bottom from above-mentioned queue;
S7.5.4, cumulative calculation will shift out switch b
inextsummation, if be not more than B
osizethen continue to perform S7.5.4, otherwise perform 7.5.5;
S7.5.5, numbers these switches to be transferred, together with controller numbering, and B
inextjoin and wait to transfer switch pond, wherein proceed to controller and be numbered sky;
S7.6, calculate the switch list that should call in, this step is realized by following sub-step:
S7.6.1, the stream table number that the packet_in message that the respective switch received according to controller while that the present embodiment being reports, controller issue and other OF message data are foundation, adjust the switch number of management and control, can obtain according to formula 1-14
B
isize=(1-0.5)*(0.5*B
pisize+0.5*B
fisize)+0.5*B
misize;
S7.6.2, according to B
isizesize does descending to controller, then calls in switch according to controller load successively, is specifically realized by following sub-step:
S7.6.2.1, transfers switch pond B according to waiting
inextsize does descending to switch, obtains switch queue;
S7.6.2.2, for each controller, selects switch from top to bottom, respectively by B from above-mentioned queue
inextwith B
isizecompare, if B
inext>B
isize, then next switch is selected, if B
inext<B
isize, then the controller that proceeds to waiting to transfer element corresponding with this switch in switch pond number and is set to this controller and numbers, while B
isize=B
isize-B
inext, then check next switch, until be checked through last switch, concrete steps are shown in shown in flow chart 4.
S7.7, reconstructs corresponding switch, realizes load balancing, and this step is realized by following sub-step:
S7.7.1, super node is treated and is transferred each element in switch pond, if proceed to controller numbering not for empty, then to producing switch corresponding to controller numbering and proceeding to the transfer switch order of controller numbering and perform S7.7.2, otherwise skips over this element;
S7.7.2, exchanges according to slave-master mechanism, realizes switch scheduling; Described slave-master mechanism is exchanged OpenFlow protocol, for changing the role of different controller when multi-controller controls.
S8, this finishing scheduling, following time interval repeats S2.
Embodiment 3:
Fig. 7 distributes schematic diagram according to the territory inner stacks controller of the preferred embodiment of the present invention 3 and switch, is illustrated in figure 7 example, is distributed with SDN controller node A, B, C and super controller node D in territory.The switch of A controller node management and control comprises sw1, sw2 and sw3; The switch of B controller node management and control comprises sw4 and sw5; The switch of C controller node management and control comprises sw6, sw7 and sw8; Start below to describe this preferred embodiment in detail.
S1, cluster controller scheduling starts: the history maximum that controller arranges packet-in quantity is H
ipmax, stream table number history maximum be H
ifmaxbe H with the history maximum of other OF message
immax, and be set to 0 respectively.
S2, adopts information collection module in cluster controller to collect sample information, and the sample data of this example collection is the statistical information of certain a day time period different time stamp in a week.Actual measurement information in the last week of collection simultaneously in this period as a reference, makes to estimate information more close to actual value.Collect sample data information to be realized by following sub-step:
S2.1, within the identical time interval, is initiated the information order of the controller of institute's management and control cluster by the super node in cluster; The all controller A of cluster, B, C start to collect packet-in message number to the switch of its management and control and add up the stream table number and other OF message that issue to each switch;
S2.2, when the statistical information of all management and control switches collected by controller, starts the statistical information sending stream table, packet_in and other OF message to cluster distributed shared memory systems, is designated as F respectively
i, P
iand M
i, wherein F
icomprise: controller is numbered, switch label, switch stream table is added up, timestamp; P
icomprise: packet-in message number, timestamp that controller numbering, switch label, switch are sent; M
icomprise: controller numbering, switch label, switch and controller other OF information, timestamps except packet_in.Described timestamp refers to the moment of the response message collecting all management and control switches.All information as history reference or can predict use in time.
S3, the stream table number that the packet-in message number that super node D uses the data processing module in controller to report according to the switch under each controller in the mathematical model prediction of the least square method next time interval, controller issue to switch and other OF message, realize respectively by step 4, step 5 and step 6:
S4, according to timestamp, super node D reads the packet-in counting messages information of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S4.1, gets timestamp number N=5 here, namely attempts the complete packet-in counting messages information aggregate of acquisition 5 timestamps; Described complete packet-in counting messages information aggregate refers to the packet-in counting messages information that all different switch of the same timestamp of same controller reports and timestamp is nearest;
S4.2, if the complete packet-in counting messages information aggregate of acquisition time stamp is less than 5, circulation performs S2, until get the packet-in counting messages information aggregate of 5 timestamps;
S4.3, according to above-mentioned packet-in counting messages information aggregate, super node adds up the Information Statistics P of the packet-in message of acquisition 5 timestamps for each switch
1, P
2, P
3, P
4, P
5, namely obtain such data: P
i={ controller numbering, switch numbering, timestamp X, packet-in counting messages information Y};
S4.4, if maximum that of packet-in message information statistics summation is greater than the history packet-in counting messages H of controller in the controller of above-mentioned 5 timestamps
ipmax, then
S4.5, to each switch under cluster controller management and control, uses the least square method Mathematical Modeling of formula 1-1, and calculates the packet-in counting messages information P of the respective switch of next timestamp according to formula 1-2 and 1-3
inext;
S4.6, in order to make discreet value more close to actual value, getting the packet-in message amount actual measured value received of this timestamp in a week, suing for peace be averaged with discreet value.
S5, according to timestamp, super node D reads the stream table statistical information of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S5.1, gets timestamp number N=5 here, namely attempts the complete stream table statistical information set of acquisition 5 timestamps; The set of described complete stream table statistical information refers to the stream table statistical information that the same timestamp of same controller issues to all different switches and timestamp is nearest;
S5.2, if the complete stream table statistical information set of acquisition time stamp is less than 5, circulation performs S2, until get the stream table statistical information set of 5 timestamps;
S5.3, according to the set of above-mentioned stream table statistical information, super node adds up the stream table statistics F of acquisition 5 timestamps for each switch
1, F
2, F
3, F
4, F
5, namely obtain such data: F
i={ controller numbering, switch numbering, timestamp X, stream table statistics Y};
S5.4, if H added up by that history stream table being greater than controller that in the controller flow of above-mentioned 5 timestamps, stream table statistics summation is maximum
ifmax, then
S5.5, to each switch of controller management and control each in cluster controller, uses the least square method Mathematical Modeling of formula 1-1, and calculates the stream table statistical information F of the respective switch of future time stamp according to formula 1-2 and 1-3
inext;
S5.6, in order to make discreet value more close to actual value, getting the stream table statistics actual measured value of this timestamp in a week, suing for peace be averaged with discreet value.
S6, according to timestamp, super node D reads the statistics of other OF interactive information except packet_in (being later called for short other OF information) of each controller report from cluster distributed shared memory systems, is realized by following sub-step:
S6.1, determines timestamp number N, namely attempts other OF Information Statistics set complete obtaining N number of timestamp; Described other OF information aggregate complete refers to all different switch of the same timestamp of same controller and all OF interaction statistics information except packet_in of controller and timestamp is nearest;
S6.2, if other OF Information Statistics set complete of acquisition time stamp is less than N number of, circulation performs S2, until get other OF Information Statistics set of N number of timestamp;
S6.3, according to other OF Information Statistics set above-mentioned, super node adds up for each switch other OF Information Statistics M obtaining N number of timestamp
1, M
2..., M
n, namely obtain such data: M
i={ controller numbering, switch numbering, timestamp X, other OF Information Statistics Y}.
S6.4, if maximum that of other OF Information Statistics of the controller of above-mentioned N number of timestamp is greater than other OF Information Statistics of history H of controller
immax, then
S6.5, to each switch of controller management and control each in cluster controller, uses least square method Mathematical Modeling (see formula 1-1) to be calculated other OF statistical information M of the respective switch of future time stamp by regression analysis
inext, computing formula is shown in formula 1-2 and formula 1-3;
S6.6, in order to make discreet value more close to actual value, according to the sampling period of sample data, the actual value of other OF statistical information of this timestamp switch interior of several cycle before getting actual measurement, then sue for peace with discreet value and be averaged, obtain more accurate discreet value.
S7, uses formula 1-4,1-5 and 1-6 to calculate P according to real data
pHi, P
fHiand P
mHi, respectively with the P calculated by formula 1-7,1-8 and 1-9
pHv, P
fHvand P
mHvcompare, adjust the switch of each controller management and control, realize load balancing according to the result sizes compared, this step is realized by following sub-step:
S7.1, the present embodiment hypothesis coefficient x=0.5, y=0.5, the stream table that the packet_in message namely simultaneously reported according to each switch, each switch issue and other OF message are foundation, adjust the switch number of management and control;
S7.2, wait that transferring switch pond is set to sky; Calculated by the packet-in message number of 5 timestamps got: P
pH1, P
pH2and P
pH3; Calculated by the stream table statistical number of 5 timestamps got: P
fH1, P
fH2and P
fH3; Calculated by other OF message statistics of 5 timestamps got: P
mH1, P
mH2and P
mH3; It is P with the ratio of total maximum packet-in message number that computing controller always estimates the packet-in message number received
pHv; It is P that computing controller always estimates the stream table number that issues with the total maximum ratio issuing stream table number
fHv; Other OF message count of always estimating of computing controller is P with the ratio of total other OF message count maximum
mHv; Above-mentioned wait transfer switch pond load such element EP::={ produce controller numbering, switch number, packet-in message number, proceed to controller numbering; EF::={ produces controller numbering, and switch is numbered, and stream table number, proceeds to controller numbering }; EM::={ produces controller numbering, and switch is numbered, other OF message count, proceeds to controller numbering };
S7.3, can obtain P according to formula 1-10 and 1-11
iand P
v, with reference to P
iwith descending, S7.4 is performed to each controller, after being finished, perform S7.7.
S7.4, for each controller, as its P
ibe greater than P
vtime, perform S7.5, otherwise perform S7.6;
S7.5, calculate the switch list that should recall, this step is realized by following sub-step:
S7.5.1, the stream table number that this enforcement is the packet_in message of the respective switch simultaneously received according to controller, controller issues and other OF message data are foundation, adjust the switch number of management and control, can obtain according to formula 1-12:
B
osize=(1-0.5)*(0.5*B
posize+0.5*B
fosize)+0.5*B
mosize;
S7.5.2, then calculates B according to formula 1-13
inext, according to B
inextthe switch ascending order arrangement of this controller management and control multipair, obtains switch queue;
S7.5.3, selects switch from top to bottom from above-mentioned queue;
S7.5.4, cumulative calculation will shift out switch b
inextsummation, if be not more than B
osizethen continue to perform S7.5.4, otherwise perform S7.5.5;
S7.5.5, numbers these switches to be transferred, together with controller numbering, and B
inextjoin and wait to transfer switch pond, wherein proceed to controller and be numbered sky;
S7.6, calculate the switch list that should call in, this step is realized by following sub-step:
S7.6.1, the stream table number that the packet_in message that the respective switch received according to controller while that the present embodiment being reports, controller issue and other OF message data are foundation, adjust the switch number of management and control, can obtain according to formula 1-14;
B
isize=(1-0.5)*(0.5*B
pisize+0.5*B
fisize)+0.5*B
misize;
S7.6.2, according to B
isizesize does descending to controller, then calls in switch according to controller load successively, is specifically realized by following sub-step:
S7.6.2.1, transfers switch pond B according to waiting
inextsize does descending to switch, obtains switch queue;
S7.6.2.2, for each controller, selects switch from top to bottom, respectively by B from above-mentioned queue
inextwith B
isizecompare, if B
inext>B
isize, then next switch is selected, if B
inext<B
isize, then the controller that proceeds to waiting to transfer element corresponding with this switch in switch pond number and is set to this controller and numbers, while B
isize=B
isize-B
inext, then check next switch, until be checked through last switch, concrete steps are shown in shown in flow chart 4.
S7.7, reconstructs corresponding switch, realizes load balancing, and this step is realized by following sub-step:
S7.7.1, super node is treated and is transferred each element in switch pond, if proceed to controller numbering not for empty, then to producing switch corresponding to controller numbering and proceeding to the transfer switch order of controller numbering and perform S7.7.2, otherwise skips over this element
S7.7.2, exchanges according to slave-master mechanism, realizes switch scheduling; Described slave-master mechanism is exchanged OpenFlow protocol, for changing the role of different controller when multi-controller controls.
S8, this finishing scheduling, following time interval repeats S2.
In another embodiment, additionally provide a kind of software, this software is for performing the technical scheme described in above-described embodiment and preferred embodiment.
In another embodiment, additionally provide a kind of storage medium, store above-mentioned software in this storage medium, this storage medium includes but not limited to CD, floppy disk, hard disk, scratch pad memory etc.
Obviously, those skilled in the art should be understood that, above-mentioned of the present invention each module or each step can realize with general calculation element, they can concentrate on single calculation element, or be distributed on network that multiple calculation element forms, alternatively, they can realize with the executable program code of calculation element, thus, they can be stored and be performed by calculation element in the storage device, and in some cases, step shown or described by can performing with the order be different from herein, or they are made into each integrated circuit modules respectively, or the multiple module in them or step are made into single integrated circuit module to realize.Like this, the present invention is not restricted to any specific hardware and software combination.
The foregoing is only the preferred embodiments of the present invention, be not limited to the present invention, for a person skilled in the art, the present invention can have various modifications and variations.Within the spirit and principles in the present invention all, any amendment done, equivalent replacement, improvement etc., all should be included within protection scope of the present invention.
Claims (14)
1. a method for load balancing, is characterized in that, comprising:
Collect the data of the characterization parameter of multiple switches of management and control in each SDN controller of clustered software define grid SDN controller;
According to the data of the characterization parameter of described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch;
According to the described characterization parameter of the described multiple switch estimated in the data of subsequent time, load balancing is carried out to each SDN controller of described cluster SDN controller.
2. method according to claim 1, is characterized in that, described characterization parameter comprise following one of at least: packet-in message, stream table number and other OF message.
3. method according to claim 1, is characterized in that, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time:
Least square method is used to estimate the data of described characterization parameter at subsequent time of described multiple switch.
4. method according to claim 3, is characterized in that, the described characterization parameter using least square method to estimate described multiple switch comprises in the data of subsequent time:
To each switch, following least square method calculated with mathematical model is used to draw the data of described characterization parameter at subsequent time of described each switch: y=alpha+beta * x, wherein x is the data of described characterization parameter at current time, and y is the data of described characterization parameter at subsequent time; Parameter alpha and β value are according to following formulae discovery:
Wherein n is the moment number in the current statistic cycle, and X is timestamp corresponding to moment, and Y is the value of the described characterization parameter of each switch.
5. method according to claim 1, is characterized in that, the data of described characterization parameter comprise sample historical data and the data in described characterization parameter each moment in the current statistic cycle of characterization parameter; According to the data of the characterization parameter of described multiple switch, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time:
According to sample historical data and the data in described characterization parameter each moment in the current statistic cycle of the characterization parameter of described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch.
6. method according to claim 5, is characterized in that, the described characterization parameter estimating described multiple switch comprises in the data of subsequent time:
According to the data in described characterization parameter each moment in the current statistic cycle, estimate the data of described characterization parameter at subsequent time of described multiple switch;
The sample historical data of described characterization parameter and the described characterization parameter estimated are sued for peace in the data of subsequent time and is averaged.
7. method according to claim 1, is characterized in that, according to the described characterization parameter of the described multiple switch estimated in the data of subsequent time, carries out load balancing comprise each SDN controller of described cluster SDN controller:
According to the described characterization parameter of the described multiple switch the estimated data at subsequent time, calculate the ratio P of each controller for the discreet value of the described characterization parameter history maximum corresponding with it
yHi:
Calculate the total discreet value of whole controller cluster for described characterization parameter and the ratio P of total maximum
yHv:
By P
yHiwith P
yHvcompare, and adjust the switch of controller management and control according to the result compared.
8. method according to claim 7, is characterized in that,
P
yHiby following formulae discovery:
wherein n is the switch number of each controller management and control, Y
inextfor the respective switch of controller management is for the discreet value of described characterization parameter, H
iymaxfor the respective switch of controller management is for the history maximum of described characterization parameter; And/or,
P
yHvby following formulae discovery:
wherein m represents controller number, and n represents the switch number of each controller management and control, Y
inextfor the respective switch of controller management is for the discreet value of described characterization parameter, H
iymaxfor the respective switch of controller management is for the history maximum of described characterization parameter.
9. method according to claim 7, is characterized in that, by P
yHiwith P
yHvcompare, and comprise according to the switch of the result adjustment controller management and control of comparing:
To multiple different characterization parameter Set scale coefficient, wherein, described proportionality coefficient is for representing the proportion that each characterization parameter is shared in comparison procedure.
10. method according to claim 7, is characterized in that, by P
yHiwith P
yHvcompare, and comprise according to the switch of the result adjustment controller management and control of comparing:
For each controller, as its P
yHibe greater than P
yHvtime, calculate the switch that should recall, and recall switch according to result of calculation; And/or,
For each controller, as its P
yHibe less than P
yHvtime, calculate the switch that should call in, and call in switch according to result of calculation.
11. methods according to claim 10, is characterized in that, calculate the switch that should recall, and recall switch according to result of calculation and comprise:
Controller is calculated
be set to B
yosize, and obtain B according to the proportionality coefficient arranged before
osize, wherein said proportionality coefficient is for representing the proportion that multiple characterization parameter is shared in comparison procedure;
B is drawn according to the estimated data of each switch
inext=Y
inext;
According to B
inextvalue the switch ascending order of this controller management and control is arranged, obtain switch queue;
From described switch queue, select switch from top to bottom, and cumulative calculation to shift out the B of switch
inextsummation, if be not more than B
osizethen continue to select switch;
Joined by the switch to be transferred selected and wait to transfer switch pond, wherein said waiting transfers switch pond for storing exchanger information to be transferred.
12. methods according to claim 10, is characterized in that, calculate the switch that should enter, and call in switch according to result of calculation and comprise:
Controller is calculated
be set to B
yisize, and obtain B according to the proportionality coefficient arranged before
isize, wherein said proportionality coefficient is for representing the proportion that multiple characterization parameter is shared in comparison procedure;
According to B
isizevalue descending is done to controller, then call in switch according to controller load successively.
13. methods according to claim 12, is characterized in that, call in switch successively comprise according to controller load:
According to waiting to transfer in switch pond, each waits to transfer the B of switch
inextvalue descending is done to switch, obtain switch queue, wherein said wait transfer switch pond for storing exchanger information to be transferred;
For each controller, from above-mentioned queue, select switch from top to bottom, respectively by B
inextwith B
isizecompare, if B
inext>B
isize, then next switch is selected, if B
inext<B
isize, then the controller that proceeds to waiting to transfer element corresponding with this switch in switch pond number and is set to this controller and numbers, while B
isize=B
isize-B
inext, then check next switch, until last switch.
The device of 14. 1 kinds of load balancing, is characterized in that, comprising:
Collection module, for collect clustered software define grid SDN controller each SDN controller in the data of characterization parameter of multiple switches of management and control;
Estimate module, for the data of the characterization parameter according to described multiple switch, estimate the data of described characterization parameter at subsequent time of described multiple switch;
Load balancing module, for according to the described characterization parameter of described multiple switch estimated in the data of subsequent time, load balancing is carried out to each SDN controller of described cluster SDN controller.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410555510.5A CN105577729B (en) | 2014-10-17 | 2014-10-17 | Load balancing method and device |
PCT/CN2015/071446 WO2015131699A1 (en) | 2014-10-17 | 2015-01-23 | Load balancing method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410555510.5A CN105577729B (en) | 2014-10-17 | 2014-10-17 | Load balancing method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105577729A true CN105577729A (en) | 2016-05-11 |
CN105577729B CN105577729B (en) | 2020-09-29 |
Family
ID=54054547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410555510.5A Active CN105577729B (en) | 2014-10-17 | 2014-10-17 | Load balancing method and device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105577729B (en) |
WO (1) | WO2015131699A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106330558A (en) * | 2016-08-31 | 2017-01-11 | 哈尔滨工业大学(威海) | Controller load prediction system and method applied to software defined network |
CN106941456A (en) * | 2017-05-17 | 2017-07-11 | 华中科技大学 | The load-balancing method and system of control plane in a kind of software defined network |
CN107425987A (en) * | 2017-09-12 | 2017-12-01 | 中国联合网络通信集团有限公司 | A kind of Switch control method, apparatus and system |
WO2017219173A1 (en) * | 2016-06-20 | 2017-12-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and device for determining resource utilization |
CN110024340A (en) * | 2016-10-25 | 2019-07-16 | 极进网络公司 | It predicts to carry out approaches uniformity load balance in visibility network via using |
CN114338537A (en) * | 2021-12-29 | 2022-04-12 | 安徽大学 | SDN load balancing dual-weight switch migration method and system based on prediction |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112685170B (en) * | 2019-10-18 | 2023-12-08 | 伊姆西Ip控股有限责任公司 | Dynamic optimization of backup strategies |
CN114826923B (en) * | 2021-01-27 | 2023-04-28 | 华中科技大学 | Network stiffness evaluation method of SDN (software defined network) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030074449A1 (en) * | 2001-10-12 | 2003-04-17 | Rory Smith | Bandwidth allocation in a synchronous transmission network for packet oriented signals |
US20140078988A1 (en) * | 2012-09-17 | 2014-03-20 | Nishi Kant | Method and system for elastic and resilient 3g/4g mobile packet networking for subscriber data flow using virtualized switching and forwarding |
CN103795805A (en) * | 2014-02-27 | 2014-05-14 | 中国科学技术大学苏州研究院 | Distributed server load balancing method based on SDN |
CN103929333A (en) * | 2014-05-08 | 2014-07-16 | 陈桂芳 | Implementation method for SDN controller pool |
CN104065585A (en) * | 2014-07-16 | 2014-09-24 | 福州大学 | Method for dynamically adjusting load of controller in software-defined network |
CN104065509A (en) * | 2014-07-24 | 2014-09-24 | 大连理工大学 | SDN multi-controller deployment method for reducing management load overhead |
CN104092774A (en) * | 2014-07-23 | 2014-10-08 | 杭州华三通信技术有限公司 | Software defined network connection establishment control method and device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103731307B (en) * | 2013-12-30 | 2017-01-04 | 浙江大学 | A kind of for multiple services standardized data face dynamic reconfiguration method |
-
2014
- 2014-10-17 CN CN201410555510.5A patent/CN105577729B/en active Active
-
2015
- 2015-01-23 WO PCT/CN2015/071446 patent/WO2015131699A1/en active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030074449A1 (en) * | 2001-10-12 | 2003-04-17 | Rory Smith | Bandwidth allocation in a synchronous transmission network for packet oriented signals |
US20140078988A1 (en) * | 2012-09-17 | 2014-03-20 | Nishi Kant | Method and system for elastic and resilient 3g/4g mobile packet networking for subscriber data flow using virtualized switching and forwarding |
CN103795805A (en) * | 2014-02-27 | 2014-05-14 | 中国科学技术大学苏州研究院 | Distributed server load balancing method based on SDN |
CN103929333A (en) * | 2014-05-08 | 2014-07-16 | 陈桂芳 | Implementation method for SDN controller pool |
CN104065585A (en) * | 2014-07-16 | 2014-09-24 | 福州大学 | Method for dynamically adjusting load of controller in software-defined network |
CN104092774A (en) * | 2014-07-23 | 2014-10-08 | 杭州华三通信技术有限公司 | Software defined network connection establishment control method and device |
CN104065509A (en) * | 2014-07-24 | 2014-09-24 | 大连理工大学 | SDN multi-controller deployment method for reducing management load overhead |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017219173A1 (en) * | 2016-06-20 | 2017-12-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and device for determining resource utilization |
EP3472973A4 (en) * | 2016-06-20 | 2019-11-13 | Telefonaktiebolaget LM Ericsson (PUBL) | Method and device for determining resource utilization |
US10924357B2 (en) | 2016-06-20 | 2021-02-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and device for determining resource utilization |
CN106330558A (en) * | 2016-08-31 | 2017-01-11 | 哈尔滨工业大学(威海) | Controller load prediction system and method applied to software defined network |
CN110024340A (en) * | 2016-10-25 | 2019-07-16 | 极进网络公司 | It predicts to carry out approaches uniformity load balance in visibility network via using |
CN110024340B (en) * | 2016-10-25 | 2021-10-15 | 极进网络公司 | Near-uniform load balancing in visibility networks via use of prediction |
CN106941456A (en) * | 2017-05-17 | 2017-07-11 | 华中科技大学 | The load-balancing method and system of control plane in a kind of software defined network |
CN106941456B (en) * | 2017-05-17 | 2019-08-30 | 华中科技大学 | The load-balancing method and system of plane are controlled in a kind of software defined network |
CN107425987A (en) * | 2017-09-12 | 2017-12-01 | 中国联合网络通信集团有限公司 | A kind of Switch control method, apparatus and system |
CN107425987B (en) * | 2017-09-12 | 2019-11-01 | 中国联合网络通信集团有限公司 | A kind of Switch control method, apparatus and system |
CN114338537A (en) * | 2021-12-29 | 2022-04-12 | 安徽大学 | SDN load balancing dual-weight switch migration method and system based on prediction |
CN114338537B (en) * | 2021-12-29 | 2024-01-19 | 安徽大学 | SDN load balancing dual-weight switch migration method and system based on prediction |
Also Published As
Publication number | Publication date |
---|---|
CN105577729B (en) | 2020-09-29 |
WO2015131699A1 (en) | 2015-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105577729A (en) | Load balancing method and device | |
Ren et al. | Collaborative cloud and edge computing for latency minimization | |
CN106105117B (en) | Delamination software defines the traffic engineering controller in network | |
He et al. | Minimizing age of correlated information for wireless camera networks | |
CN103781118B (en) | Integrated processes is distributed with resource based on multiple services heterogeneous wireless network Access Control | |
CN101551661B (en) | Control method for multi-robot system | |
CN105186578B (en) | There is the distributed automatic scheduling method of power system accurately calculating network loss ability | |
CN108566659A (en) | A kind of online mapping method of 5G networks slice based on reliability | |
CN107918561B (en) | Task allocation method in industrial distributed data acquisition system | |
CN108848146A (en) | A kind of method for optimizing scheduling based on time trigger communication service | |
CN113535393B (en) | Computing resource allocation method for unloading DAG task in heterogeneous edge computing | |
CN103327542A (en) | QoS guarantee method and device applied to MSNET network | |
CN106453114B (en) | Flow distribution method and device | |
CN106447302A (en) | Intelligent order distributing method | |
CN101247556B (en) | Distribution method of data traffic wireless channel in GPRS/EDGE network | |
CN105517163B (en) | The method for virtualizing the reversed resource allocation of base station parallel task | |
CN104202263A (en) | Equitable distribution method of bandwidth resources of multi-tenant data center | |
US9510228B2 (en) | System and method of traffic engineering in a software defined radio access network | |
CN110351335B (en) | Communication efficiency and service balancing method for cloud computing | |
Khojasteh et al. | Prioritization of overflow tasks to improve performance of mobile cloud | |
CN106302226A (en) | A kind of service dynamic dispatching method of QoS perception | |
Miao et al. | A cooperative differential game model based on network throughput and energy efficiency in wireless networks | |
CN106535242B (en) | A kind of wireless cloud computing system performance prediction method | |
CN105120501A (en) | Green communication method with energy-renewable wireless Mesh network | |
Zhang et al. | Research on Autonomous 6TiSCH Network Resource Demand Calculation Based on Queuing Theory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |