CN105634974B - Route determining methods and device in software defined network - Google Patents
Route determining methods and device in software defined network Download PDFInfo
- Publication number
- CN105634974B CN105634974B CN201511033267.1A CN201511033267A CN105634974B CN 105634974 B CN105634974 B CN 105634974B CN 201511033267 A CN201511033267 A CN 201511033267A CN 105634974 B CN105634974 B CN 105634974B
- Authority
- CN
- China
- Prior art keywords
- allocated
- business
- path
- weight
- paths
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- 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/12—Shortest path evaluation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The present invention provides the route determining methods and device in a kind of software defined network, it include: the initial path according to business to be allocated each in multiple business to be allocated, determine the weight of multiple summits in software defined network, according to weight, take turns is carried out respectively to each of multiple business to be allocated business to be allocated to iterate to calculate more, to obtain the set of minimal paths of multiple business to be allocated, the optimal path set of multiple business to be allocated is determined from the set of minimal paths of multiple business to be allocated.According to the set of minimal paths of the multiple business to be allocated of the right value update of each edge, so as to obtain the optimal path set of multiple business to be allocated according to the set of minimal paths of updated multiple business to be allocated, according to the optimal path set to the business to be allocated carry out route assignment can in the customized network of balanced software each side load, to improve the resource utilization of the customized network of software.
Description
Technical field
The present embodiments relate to the route determining methods and dress in the communication technology more particularly to a kind of software defined network
It sets.
Background technique
Software defined network (Software Defined Network, referred to as: SDN) is a kind of novel computer network
Framework, its main feature is that by router and interchanger control function and data forwarding capability separate, the former composition control
Plane, the latter form Forwarding plane, and control plane is realized that Forwarding plane is realized by the network equipment by software and server.
The control plane of SDN manages routing concentratedly, and concentrating routing algorithm is the brain of entire SDN, determines that network provides
The utilization rate and the degree of reliability in source, it is thus also avoided that traditional routing algorithms calculate shortest path make data flow concentrate on same path into
Row forwarding, causes the deficiency of network congestion.The concentration routing algorithm of SDN is particularly suitable for being saturated network, equalising network on a large scale
Load optimizes Internet resources, cuts operating costs.
But a large number of services corresponds to different beginning and ends in SDN, is the more commodity nets that can not typically shunt
Network stream (Multi-Commodity network Flow, referred to as: MCF) problem, that is, have the data flow of multiple business in a network
Flow to different terminals from different starting points, the concentration routing algorithm of SDN to multiple business how in software defined network really
Make that meet the routing of business demand and load balancing be sixty-four dollar question in SDN.
Summary of the invention
The embodiment of the present invention provides the route determining methods and device in a kind of software defined network, to overcome the prior art
In determine to meet business demand routing to multiple business in software defined network the lower problem of load balancing rate.
In a first aspect, the embodiment of the present invention provides the route determining methods in a kind of software defined network, wherein software is fixed
For adopted network for carrying multiple business, and including mulitpath, each path includes at least one side, and side indicates software defined network
Connection relationship in the corresponding network topology of network between two routing nodes of direct communication, the above method include: according to it is multiple to
The initial path of each business to be allocated, determines the weight of multiple summits in software defined network, wherein weight table in distribution business
Show that multiple business to be allocated use the load of machinery systems of a line in the case where respective initial path;According to weight, to it is multiple to
Each of distribution business business to be allocated carries out take turns more respectively and iterates to calculate, to obtain the shortest path of multiple business to be allocated
Gather, every shortest path in set of minimal paths indicates the corresponding business to be allocated of shortest path in a wheel iterative calculation
Obtained resource occupation amount is minimum and meets the path of business demand, and set of minimal paths includes each in multiple business to be allocated
All shortest paths of business to be allocated, set of minimal paths further include the first of each business to be allocated in multiple business to be allocated
Beginning path;The optimal path set of multiple business to be allocated is determined from the set of minimal paths of multiple business to be allocated, it is optimal
Path and multiple business to be allocated in set of paths correspond, and the path in optimal path set meets corresponding to be allocated
The resource occupation total amount in all paths is minimum in the business demand and optimal path set of business, and resource occupation total amount is root
It is determined according to the resource occupation amount of each path in optimal path set.
In the present embodiment, firstly, being determined soft according to the initial path of business to be allocated each in multiple business to be allocated
Part defines the weight of multiple summits in network, in turn, according to weight, distinguishes each of multiple business to be allocated business to be allocated
More wheel iterative calculation are carried out, to obtain the set of minimal paths of multiple business to be allocated, finally most from multiple business to be allocated
The optimal path set of multiple business to be allocated is determined in short path set.Wherein, due to industry in the customized network of software
Business increases, and the load of machinery systems on each side is also changing namely the weight on each side is also changing in the customized network of software, leads to
The weight for updating each edge is crossed, and according to the set of minimal paths of the multiple business to be allocated of the right value update of each edge, so as to
To obtain the optimal path set of multiple business to be allocated according to the set of minimal paths of updated multiple business to be allocated, according to
Carrying out route assignment to the business to be allocated according to the optimal path set can bear on each side in the customized network of balanced software
It carries, to improve the resource utilization of the customized network of software.
In some embodiments of the invention, according to weight, to each of multiple business to be allocated business to be allocated point
Jin Hang not iterative calculation be taken turns more, include: according to weight, to multiple wait divide to obtain the set of minimal paths of each business to be allocated
First round iterative calculation is carried out with each of business business to be allocated, it is corresponding multiple wait divide to obtain first round iterative calculation
The first set of minimal paths with business, wherein the first set of minimal paths of multiple business to be allocated includes multiple to be allocated
The initial path of business and at least one of multiple business to be allocated other paths, every other path are identical as correspondence to be allocated
The initial path of business is different, and at least one other paths are in the multiple business to be allocated iterated to calculate according to the first round
The shortest path of at least one business to be allocated;According to the first set of minimal paths of multiple business to be allocated, the second wheel is determined
The real-time weight of iterative calculation;According to the real-time weight of the second wheel iterative calculation, at least one business to be allocated is carried out at least
One wheel iterative calculation iterates to calculate corresponding multiple business to be allocated most to obtain last wheel at least one wheel iterative calculation
Short path set, wherein last wheel iterates to calculate road included by the set of minimal paths of corresponding multiple business to be allocated
Diameter is identical as the set of minimal paths that the previous round iterative calculation of last wheel iterative calculation obtains.
The wherein iterative process of the first round and the second wheel are as follows: according to the weight, obtain the business to be allocated
The corresponding shortest path of first round iteration, the corresponding shortest path of first round iteration of the business to be allocated is is not included in institute
State the shortest path in the initial path of business to be allocated.According to the corresponding shortest path of first round iteration of the business to be allocated
Diameter determines the corresponding real-time weight of the second wheel iteration for the business to be allocated, and according to the second of the business to be allocated
The corresponding real-time weight of wheel iteration obtains the corresponding shortest path of the second wheel iteration of the business to be allocated, the industry to be allocated
The second corresponding shortest path of wheel iteration of business is be not included in the obtained business to be allocated of first round iteration most short
Shortest path in set of paths.Wherein, if the second wheel iteration does not obtain the second wheel iteration pair of the business to be allocated
The shortest path answered, then iterative process terminates.
Further, the process of every wheel iterative calculation and the first round iterate to calculate calculating side at least one wheel iterative calculation
Method is similar, judges that the condition that iterative process terminates is similar with the second wheel iterative calculation method.
In the present embodiment, by iterating to calculate obtained set of minimal paths according to last round of, next round iteration is determined
The real-time weight calculated, to be not included in shortest path collection obtained in last round of iterative calculation according to the real-time weight determination
Shortest path in conjunction, until determining all shortest paths, thus in the optimal path collection for determining multiple business to be allocated
It, can be in conjunction with all shortest paths of multiple business to be allocated, so as to each side in the customized network of balanced software when conjunction
Load, improve the resource utilization of the customized network of software.
In some embodiments of the invention, according to the first set of minimal paths, the real-time of the second wheel iterative calculation is determined
Weight, comprising: traffic matrix and business constraint vector are constructed according to the first set of minimal paths;According to the first shortest path collection
The demand bandwidth of conjunction, the topological structure of software defined network and multiple business to be allocated constructs side matrix;According at least one
While bandwidth information construction while constrained vector;According to traffic matrix and side matrix construction route matrix, and according to business constraint to
Amount and side constrained vector structure constraint vector;Determine that the second wheel changes using preset weights algorithm according to route matrix and constrained vector
The real-time weight that generation calculates.
In the present embodiment, by construction route matrix and constrained vector, the reality for updating at least a line can effectively be promoted
When weight efficiency and accuracy, and then effectively promote optimal path computation efficiency, and improve the rate that is put into of business, finally mention
Rise the resource utilization of the whole network.
In some embodiments of the invention, according to the first set of minimal paths construct traffic matrix and business constraint to
Amount, comprising:
Traffic matrix A is constructed according to formula (1)1:
A1=(ai,j)N×P (1)
Wherein, N=| Ω |, Ω indicates the set of all business, and N indicates the total number of all business;Pi
The shortest path of expression business i, P indicate the total number of all shortest paths;ai,jIndicate shortest path
J whether the shortest path for being business i, when shortest path j is the shortest path of business i, ai,jIt is 1, otherwise ai,jIt is 0;
Business constraint vector b is constructed according to formula (2)1:
b1=(1)N×1 (2)
According to first set of minimal paths, the topological structure of the software defined network and the multiple to be allocated
The demand bandwidth of business constructs side matrix, comprising:
Side matrix A is constructed according to formula (3)2:
Wherein, L indicates the total number on all sides;J-th of shortest path i of expression business ijWhether by side k, when
J-th of shortest path i of business ijWhen by side k,OtherwiseViThe demand bandwidth of expression business i;
According to described at least one while bandwidth information construction while constrained vector, comprising:
Side constrained vector b is constructed according to formula (4)2:
b2=(ck)L×1 (4)
Wherein, ckIndicate the total bandwidth of side k;
According to the traffic matrix and the side matrix construction route matrix, and according to the business constraint vector sum
Side constrained vector structure constraint vector, comprising:
Route matrix A is constructed according to formula (5):
According to formula (6) structure constraint vector b:
The second wheel iterative calculation is determined using preset weights algorithm according to the route matrix and the constrained vector
Real-time weight, comprising:
Obtain default iteration wheel number T, and initial t=0;
Repeat following steps:
The real-time weight for obtaining at least one side is calculated according to formula (7):
yt+1=yt+γ(yt-Yt) (7)
Wherein,B=Axt-b;Indicate vector ytIn i-th of element;Bi
Indicate i-th of element in vector B;γ indicates preset step-length overall shrinkage coefficient;The right value update step-length on s expression side;
xt+1=xt+γ(xt-Xt),
Wherein, Indicate vector ztIn i-th
A element;WiIndicate i-th of element in vector W,It indicates
The path weight value vector of the weight coefficient composition of all shortest paths of all business,It indicates
The weight coefficient of shortest path, LINK indicate the set on side, λ=1/ (VmaxIt R) is the weight compressed coefficient, Vmax=max { Vi|i∈
Ω }, wkIndicate the initial weight of side k;Indicate that all sides are weight summations;R indicates the right value update on candidate side
Step-length;
When t=T, the real-time weight y of the second wheel iterative calculation is determinedT。
In the present embodiment, the real-time weight of the second wheel iterative calculation, effectively promotion optimal path are determined by above-mentioned formula
Computational efficiency, and that improves business is put into rate, the final resource utilization for promoting the whole network.
Further, second wheel is determined using preset weights algorithm according to the route matrix and the constrained vector
Iterative calculation real-time weight include:
Judge whether the shortest path of at least one business to be allocated meets dual problem constraint item according to formula (8)
Part:
yA≤W (8)
Wherein, A is the route matrix, and W is the path weight value vector, and y is to calculate first round iteration corresponding first
The weight of set of minimal paths;
If being unsatisfactory for the dual problem constraint condition of the formula (8), stop according to the route matrix and it is described about
Shu Xiangliang determines the real-time weight of the second wheel iterative calculation using preset weights algorithm, and at least one side is real-time
Weight is the weight;
If meeting the dual problem constraint condition of the formula (8), according to the route matrix and the constrained vector
The real-time weight of the second wheel iterative calculation is determined using preset weights algorithm.
In the present embodiment, item is constrained by judging whether that the shortest path of at least one business to be allocated meets dual problem
Part determines the real-time weight of the second wheel iterative calculation if meeting, is unsatisfactory for stopping updating, to improve at least one side
Real-time right value update accuracy and efficiency, and then promoted the whole network resource utilization.
Further, each round iterative calculation in more wheel iterative calculation all uses Dijkstra's algorithm or Bell
Graceful-Ford algorithm.
In the present embodiment, it can more accurate and more quickly determine that at least one is waited for point by above two algorithm
With business in epicycle iteration corresponding shortest path, and then promoted the whole network resource utilization.
In some embodiments of the invention, after obtaining other paths that epicycle iteration obtains, epicycle iteration is obtained
Other paths be added in the set of minimal paths that the corresponding last round of iteration of business to be allocated obtains.
Further, the optimal path of multiple business to be allocated is determined from the set of minimal paths of multiple business to be allocated
Set, comprising: according to the hop count on the side in path and initial path in the set of minimal paths of all business to be allocated to most short
Path in set of paths is ranked up to obtain First ray according to ascending order, and the path in set of minimal paths includes multiple wait divide
The initial road of each business to be allocated in all shortest paths and multiple business to be allocated with business to be allocated each in business
Diameter;To the path in the identical set of minimal paths of the quantity on side in First ray, according to the identical shortest path of the quantity on side
The sum of service traffics on side that path in set separately includes are ranked up to obtain the second sequence by ascending order;To in the second sequence
Path in the identical set of minimal paths of the sum of the service traffics on side, according to the identical shortest path of the sum of the service traffics on side
Path in set arranges to obtain third sequence according to the size ascending order of the weights sum on side;According to the industry of each business to be allocated
The sequence in the path in business demand and third sequence in set of minimal paths determines the optimal path of multiple business to be allocated.
In the present embodiment, above-mentioned more schedules are executed by each paths of the set of minimal paths to all business to be allocated
Sequence so as to effectively determine the optimal path of multiple business to be allocated, and then effectively promotes optimal path computation efficiency, and
Raising business is put into rate, the final resource utilization for promoting the whole network.
Second aspect, the present invention provide the routing determining device in a kind of software defined network, the software defined network
For carrying multiple business, the software defined network includes mulitpath, and every path includes at least one side, described
While the connection relationship between indicating two routing nodes of direct communication in the corresponding network topology of the software defined network, described
Device includes: weight determining module, for the initial path according to business to be allocated each in multiple business to be allocated, determines institute
The weight of multiple summits in software defined network is stated, the weight indicates that the multiple business to be allocated uses respective initial path
In the case where a line the load of machinery systems;Set of minimal paths obtains module, is used for according to the weight, to the multiple wait divide
It carries out take turns respectively with each of business business to be allocated to iterate to calculate, to obtain the shortest path of the multiple business to be allocated more
Diameter set, every shortest path in the set of minimal paths indicate the corresponding business to be allocated of the shortest path in a wheel
Resource occupation amount obtained in iterative calculation is minimum and meets the path of business demand, and the set of minimal paths includes described more
All shortest paths of each business to be allocated in a business to be allocated, the set of minimal paths further include the multiple wait divide
Initial path with business to be allocated each in business;Optimal path set determining module is used for from the multiple industry to be allocated
The optimal path set of the multiple business to be allocated, the road in the optimal path set are determined in the set of minimal paths of business
Diameter and the multiple business to be allocated correspond, and the path in the optimal path set meets corresponding business to be allocated
The resource occupation total amount in all paths is minimum in business demand and the optimal path set, and the resource occupation total amount is
It is determined according to the resource occupation amount of each path in the optimal path set.
Further, the set of minimal paths obtains module and is specifically used for: according to the weight, to the multiple wait divide
First round iterative calculation is carried out with each of business business to be allocated, it is corresponding described to obtain the first round iterative calculation
First set of minimal paths of multiple business to be allocated, wherein the first set of minimal paths packet of the multiple business to be allocated
Initial path and at least one of the multiple business to be allocated other paths for including the multiple business to be allocated, described in every
The initial path of other paths business to be allocated identical as correspondence is different, and described at least one other paths are according to described first
The shortest path of at least one business to be allocated in the multiple business to be allocated that wheel iterative calculation obtains;According to the multiple
First set of minimal paths of business to be allocated determines the real-time weight of the second wheel iterative calculation;According to the second wheel iteration
The real-time weight calculated carries out at least one wheel at least one described business to be allocated and iterates to calculate, to obtain described at least one
Last wheel iterates to calculate the set of minimal paths of corresponding the multiple business to be allocated in wheel iterative calculation, wherein described
Last wheel iterates to calculate path included by the set of minimal paths of corresponding the multiple business to be allocated and described last
The set of minimal paths that the previous round iterative calculation of one wheel iterative calculation obtains is identical.
Further, the real-time weight of second wheel iterative calculation is determined according to first set of minimal paths described
Aspect, the set of minimal paths obtains module and is specifically used for: constructing traffic matrix according to first set of minimal paths
With business constraint vector;According to first set of minimal paths, the topological structure of the software defined network and described more
The demand bandwidth of a business to be allocated constructs side matrix;According to described at least one while bandwidth information construction while constrained vector;
According to the traffic matrix and the side matrix construction route matrix, and the side according to the business constraint vector sum constrain to
Measure structure constraint vector;Determine that second wheel changes using preset weights algorithm according to the route matrix and the constrained vector
The real-time weight that generation calculates.
Further, described in being determined according to the route matrix and the constrained vector using preset weights algorithm described
The aspect of the real-time weight of second wheel iterative calculation, the set of minimal paths obtain module and are specifically used for:
Obtain default iteration wheel number T, and initial t=0;
Repeat following steps:
According to formula yt+1=yt+γ(yt-Yt) and xt+1=xt+γ(xt-Xt) calculate the reality for obtaining at least one side
When weight:
Wherein, describedThe B=Axt-b;It is describedIndicate vector ytIn
I-th of element;The BiIndicate i-th of element in vector B;The γ indicates preset step-length overall shrinkage coefficient;The s table
Show the right value update step-length on side;The A is the route matrix, and the b is the constrained vector;
Wherein, Indicate vector ztIn i-th
A element;WiIndicate i-th of element in vector W,It indicates
The path weight value vector of the weight coefficient composition of all shortest paths of all business to be allocated,
Indicate that the weight coefficient of shortest path, LINK indicate the set on side, λ=1/ (VmaxIt R) is the weight compressed coefficient, Vmax=max { Vi
| i ∈ Ω }, wkIndicate the initial weight of side k;Indicate all side right value summations;R indicates the weight on candidate side more
New step-length;
When t=T, determine that the real-time weight of the second wheel iterative calculation is yT。
Further, described device further include: judgment module, the judgment module are used to judge institute according to formula yA≤W
Whether the shortest path for stating at least one business to be allocated meets dual problem constraint condition;Wherein, A is the route matrix, W
For the path weight value vector, y is the weight;If being unsatisfactory for the dual problem constraint condition, to the shortest path
Set acquisition module sends the first instruction, and first instruction is used to indicate the set of minimal paths and obtains module stopping basis
The route matrix and the constrained vector determine the real-time weight of the second wheel iterative calculation using preset weights algorithm, and
The real-time weight at least one side is the weight;If meeting the dual problem constraint condition, to the shortest path
Diameter set obtains module and sends the second instruction, and second instruction is used to indicate the set of minimal paths and obtains module according to institute
State the real-time weight that route matrix and the constrained vector determine the second wheel iterative calculation using preset weights algorithm.
Further, each round that the set of minimal paths obtains that module is also used in more wheel iterative calculation changes
Generation, which calculates, all uses Dijkstra's algorithm or Bellman Ford algorithm.
Further, the optimal path set determining module, is specifically used for: most according to all business to be allocated
The hop count on the side in path and the initial path in short path set is to the path in the set of minimal paths according to ascending order
It is ranked up to obtain First ray, the path in the set of minimal paths includes in the multiple business to be allocated each wait divide
The initial path of each business to be allocated in all shortest paths and the multiple business to be allocated with business;To described first
Path in sequence in the identical set of minimal paths of the quantity on side, according to the identical shortest path of the quantity on the side
The sum of the service traffics on the side that path in diameter set separately includes are ranked up to obtain the second sequence by ascending order;To described
Path in second sequence in the identical set of minimal paths of the sum of the service traffics on side, according to the service traffics on the side
The sum of path in the identical set of minimal paths arrange to obtain third according to the size ascending order of the weights sum on the side
Sequence;According to the road in set of minimal paths described in the business demand of each business to be allocated and the third sequence
The sequence of diameter determines the optimal path of the multiple business to be allocated.
Third aspect present invention provides the routing determining device in a kind of software defined network, comprising: processor, memory
And communication interface;The memory, for storing program code;The processor, the memory and the communication interface are logical
Bus is crossed to be in communication with each other;The processor executes above-mentioned first aspect for reading the program code stored in the memory
The route determining methods of software defined network in embodiment corresponding with first aspect.
In the present invention, firstly, determining software according to the initial path of business to be allocated each in multiple business to be allocated
Define the weight of multiple summits in network, in turn, according to weight, to each of multiple business to be allocated business to be allocated respectively into
The more wheel iterative calculation of row, to obtain the set of minimal paths of multiple business to be allocated, finally from the most short of multiple business to be allocated
The optimal path set of multiple business to be allocated is determined in set of paths.Wherein, due to business in the customized network of software
Increase, the load of machinery systems on each side is also changing namely the weight on each side is also changing in the customized network of software, passes through
The weight of each edge is updated, and according to the set of minimal paths of the multiple business to be allocated of the right value update of each edge, so as to
The optimal path set that multiple business to be allocated are obtained according to the set of minimal paths of updated multiple business to be allocated, according to
The optimal path set to the business to be allocated carry out route assignment can in the customized network of balanced software each side load,
To improve the resource utilization of the customized network of software.
Detailed description of the invention
In order to more clearly explain the embodiment of the invention or the technical proposal in the existing technology, to embodiment or will show below
There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is this hair
Bright some embodiments for those of ordinary skill in the art without any creative labor, can be with
It obtains other drawings based on these drawings.
Fig. 1 show the configuration diagram of SDN in the embodiment of the present invention;
Fig. 2 show the hierarchical diagram of SDN in the embodiment of the present invention;
Fig. 3 show the flow chart that invention software defines one embodiment of route determining methods in network;
Fig. 4 show the example network topology structural schematic diagram of one network topology of adaptable the application method;
Fig. 5 is the optimal path schematic diagram of 3 business to be allocated;
Fig. 6 show the structural schematic diagram of the routing determining device in software defined network provided in an embodiment of the present invention;
Fig. 7 show another embodiment of the present invention provides software defined network in routing determining device structural representation
Figure;
Fig. 8 show the structural representation of the routing determining device in the software defined network of further embodiment of this invention offer
Figure;
Fig. 9 show the structural representation of the routing determining device in the software defined network of yet another embodiment of the invention offer
Figure.
Specific embodiment
In order to make the object, technical scheme and advantages of the embodiment of the invention clearer, below in conjunction with the embodiment of the present invention
In attached drawing, technical scheme in the embodiment of the invention is clearly and completely described, it is clear that described embodiment is
A part of the embodiment of the present invention, instead of all the embodiments.Based on the embodiments of the present invention, those of ordinary skill in the art
Every other embodiment obtained without creative efforts, shall fall within the protection scope of the present invention.
The explanation of relevant technical term in the present invention:
Initial path: shifting to an earlier date preset according to the business demand of the actual conditions of network and business to be allocated, is also possible to
It is determined according to the initial weight of multiple summits in the network, it will be understood by those skilled in the art that actual conditions include for example adjacent
The bandwidth etc. of the distance between node and each side, the present invention is without limitation.And in the present invention, initial path is to execute sheet
Before the method for invention, the path of each business to be allocated is distributed to.
Initial weight: in the case where not being put into business to be allocated, the amount of the load of machinery systems for indicating side, and the side
Initial weight shows that more greatly the load on the side is bigger.It will be understood by those skilled in the art that considering for example a node in actual conditions
Physical distance, be not put into bandwidth on each side etc. in the case where business to be allocated, the present invention is without limitation.
Resource occupation amount: stock number needed for business when transmission services.It will be understood by those skilled in the art that can be packet
Include at least one of bandwidth, flow, rate etc..
The load of machinery systems: when transmission services, the occupancy degree for the maximum resource amount that can be distributed when the business of carrying is to this.
Fig. 1 show the configuration diagram of SDN in the embodiment of the present invention.As shown in Figure 1, SDN network include controller and
Multiple forwarding devices, forwarding device are only responsible for the forwarding of data, and controller is responsible for each business configuration routed path, and updates
The routing table of update is handed down to each forwarding device by routing table, and each forwarding device is when receiving business datum, according to routing table
It is forwarded.Controller can be long-range server and be also possible to install software on the remote server, including SDN
It controls software (such as network operating system), various network services is provided.Controller manages all devices in network concentratedly, virtually
Whole network is resource pool, according to the different needs of the user and overall network topology, flexibly dynamically distributes resource, SDN control
Device processed has the global view of network, is responsible for management whole network and is led to lower layer by the agreement and basic network of standard
Letter;To upper layer, by open interface to application layer offer to the control ability of Internet resources.It should be noted that work is in base
Although the hardware devices such as the SDN switch of Infrastructure layer are not needing excessively to consider logic control, as SDN network
In be responsible for the equipment of specific data transmission disposal, in order to complete high-speed data forwarding, still to follow interchanger working principle.This
It is seen in matter, either interchanger or router, working principle are all when receiving data packet, by data packet in traditional equipment
In certain property fields be compared with some list items that equipment itself stores, when a match has been found then according to the requirement of list item into
Row respective handling.SDN switch is also similar principle, but is had differences with traditional equipment, each table in equipment
Item is not locally voluntarily to be generated by equipment itself according to the network environment on periphery, but uniformly issued by remote controllers
, therefore the control logic (such as link discovery, address learning, router-level topology etc.) of various complexity in SDN all without exchanging
It is realized in machine.
Route computing method and device provided in an embodiment of the present invention for SDN network framework is deployed in control layer.It needs
It is noted that control layer and infrastructure layer can be not necessarily physically isolated, that is to say, that application layer, control layer may
(such as SDN switch) is just set in a certain of infrastructure layer even several SDN network equipment without special SDN
Hardware control device, it is also possible to which controller, which is independently of infrastructure layer, which is responsible for the server of the data forwarding network equipment, (can claim
Be control server) or be mounted in control server in a software form, or even be mounted on control service in a software form
On the virtual machine of device.Currently, the implementation and agreement of the SDN controller of multiple producers are different, the mainstream of SDN controller
Implementation method is pure software, and pure soft SDN controller lands in the market in network virtualization field, such as VMware
NSX controller, separates with physical network, and VMware claims that NSX is the product of a Full-virtualization, simultaneous with any network hardware
Hold.And hardware SDN is related with flow lead at present, such as traffic engineering, video monitoring, security fields etc. have hardware net
The SDN controller (i.e. control server) of equipment entity is connect with one in SDN network or more SDN switches, specifically
Connection type depending on the scale of specific SDN network and demand, it is to be understood that, since performance limits, control server has
How maximum connection interchanger quantity, control server connect with interchanger, and how networking is not in the embodiment of the present invention for SDN network
Research range in, in order to make it easy to understand, referring to Fig. 1, Fig. 1 be in SDN network SDN controller have it is corresponding independent hard
A kind of networking schematic diagram in the case where part equipment (a such as server).The embodiment of the present invention to the implementation of control layer not
It is restricted, such as can be pure software (such as network operating system) realization, can also be in independent network equipment entity hardware
(being implemented in control server or computer cluster independently of infrastructure layer network node) etc. realized.
Fig. 2 show the hierarchical diagram of SDN in the embodiment of the present invention.As shown in Fig. 2, the typical architecture of SDN is divided into three
Layer, top layer are application layer (Application Layer), including a variety of different applications, network simulation, the network planning etc..
Intermediate control layer (Control Layer) is mainly responsible for the layout of data-plane resource, the dimension of network topology and status information
Shield etc., physically, which can be placed on an individual physical server, can also be placed on more physics in a distributed manner
On server.The network equipment layer (Infrastructure Layer) of the bottom be mainly responsible for data processing based on flow table,
Forwarding and state collection, including router, interchanger etc..
The present invention determines the reality of next round iterative calculation by iterating to calculate obtained set of minimal paths according to last round of
When weight, to be not included in set of minimal paths obtained in last round of iterative calculation most according to real-time weight determination
Short path, can be with thus when determining the optimal path set of multiple business to be allocated until determining all shortest paths
It is mentioned in conjunction with all shortest paths of multiple business to be allocated so as to the load on each side in the customized network of balanced software
The resource utilization of the customized network of software is risen.
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete
Site preparation description, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on
Embodiment in the present invention, those skilled in the art's every other implementation obtained without creative efforts
Example, shall fall within the protection scope of the present invention.
Fig. 3 show the flow chart that invention software defines one embodiment of route determining methods in network, software
It includes mulitpath that network, which is defined, for carrying multiple business, software defined network, and each path includes at least one side, side table
Show the connection relationship between two routing nodes of direct communication in the corresponding network topology of software defined network, above method packet
It includes:
Step 101, according to the initial path of business to be allocated each in multiple business to be allocated, determine the software definition
The weight of multiple summits in network, the weight indicate one under the case where the multiple business to be allocated uses respective initial path
The load of machinery systems on side.
Specifically, in practical applications, multiple business to be allocated can be obtained according to path calculation method in the prior art
In each business to be allocated initial path, and then software definition is determined according to the initial path of each of determining business to be allocated
The weight of multiple summits in network, in a step 102 according to the weight of a plurality of change determine in multiple business to be allocated each to
The set of minimal paths of distribution business.
Step 102, according to weight, each of multiple business to be allocated business to be allocated is carried out respectively to take turns iteration meters more
It calculates, to obtain the set of minimal paths of multiple business to be allocated, every shortest path in set of minimal paths indicates shortest path
The corresponding business to be allocated of diameter resource occupation amount obtained in a wheel iterative calculation is minimum and meets the path of business demand, most
Short path set includes all shortest paths of each business to be allocated in multiple business to be allocated, and set of minimal paths further includes
The initial path of each business to be allocated in multiple business to be allocated.
Wherein, each of the multiple business to be allocated business to be allocated is distinguished according to the weight in step 102
More wheel iterative calculation are carried out, are specifically included with obtaining the set of minimal paths of each business to be allocated:
According to weight, first round iterative calculation is carried out to each of multiple business to be allocated business to be allocated, to obtain
The first round iterates to calculate the first set of minimal paths of corresponding multiple business to be allocated, wherein the of multiple business to be allocated
One set of minimal paths includes initial path and at least one of multiple business to be allocated other paths of multiple business to be allocated,
The initial path of every other path business to be allocated identical as correspondence is different, and at least one other paths were changed according to the first round
The shortest path of at least one business to be allocated in multiple business to be allocated that generation is calculated;
According to the first set of minimal paths of multiple business to be allocated, the real-time weight of the second wheel iterative calculation is determined;
According to the real-time weight of the second wheel iterative calculation, at least one wheel iteration meter is carried out at least one business to be allocated
It calculates, to obtain the shortest path collection that last wheel at least one wheel iterative calculation iterates to calculate corresponding multiple business to be allocated
It closes, wherein last wheel iterates to calculate path included by the set of minimal paths of corresponding multiple business to be allocated and last
The set of minimal paths that the previous round iterative calculation of one wheel iterative calculation obtains is identical.
Further, above-mentioned according to the first set of minimal paths, determine the real-time weight of the second wheel iterative calculation, comprising:
Traffic matrix and business constraint vector are constructed according to the first set of minimal paths;
According to the demand band of the first set of minimal paths, the topological structure of software defined network and multiple business to be allocated
Width construction side matrix;
According at least one while bandwidth information construction while constrained vector;
According to traffic matrix and side matrix construction route matrix, and about according to business constraint vector sum side constrained vector construction
Shu Xiangliang;
The real-time weight of the second wheel iterative calculation is determined using preset weights algorithm according to route matrix and constrained vector.
Specifically, constructing traffic matrix and business constraint vector according to the first set of minimal paths, comprising:
Traffic matrix A is constructed according to formula (1)1:
A1=(ai,j)N×P (1)
Wherein, N=| Ω |, Ω indicates the set of all business to be allocated, and N indicates the total number of all business to be allocated;Pi indicates that the shortest path of business i to be allocated, P indicate the total number of all shortest paths;
ai,jIndicate shortest path j whether the shortest path for being business i to be allocated, when shortest path j is the shortest path of business i to be allocated
When diameter, ai,jIt is 1, otherwise ai,jIt is 0;
Business constraint vector b is constructed according to formula (2)1:
b1=(1)N×1 (2)
According to the demand band of the first set of minimal paths, the topological structure of software defined network and multiple business to be allocated
Width construction side matrix, comprising:
Side matrix A is constructed according to formula (3)2:
Wherein, L indicates the total number on all sides;Indicate j-th of shortest path i of business i to be allocatedjWhether pass through
Side k, as j-th of shortest path i of business i to be allocatedjWhen by side k,OtherwiseViIndicate industry to be allocated
The demand bandwidth of business i;
According at least one while bandwidth information construction while constrained vector, comprising:
Side constrained vector b is constructed according to formula (4)2:
b2=(ck)L×1 (4)
Wherein, ckIndicate the total bandwidth of side k;
According to traffic matrix and side matrix construction route matrix, and about according to business constraint vector sum side constrained vector construction
Shu Xiangliang, comprising:
Route matrix A is constructed according to formula (5):
According to formula (6) structure constraint vector b:
The real-time weight of the second wheel iterative calculation, packet are determined using preset weights algorithm according to route matrix and constrained vector
It includes:
Obtain default iteration wheel number T, and initial t=0;
Repeat following steps:
The real-time weight for obtaining at least one side is calculated according to formula (7):
yt+1=yt+γ(yt-Yt) (7)
Wherein,B=Axt-b;Indicate vector ytIn i-th of element;Bi
Indicate i-th of element in vector B;γ indicates preset step-length overall shrinkage coefficient;The right value update step-length on s expression side;
xt+1=xt+γ(xt-Xt),
Wherein, Indicate vector ztIn i-th
A element;WiIndicate i-th of element in vector W,Indicate institute
Need the path weight value vector of the weight coefficient composition of all shortest paths for the business of being distributed,Table
Show that the weight coefficient of shortest path, LINK indicate the set on side, λ=1/ (VmaxIt R) is the weight compressed coefficient, Vmax=max { Vi|i
∈ Ω }, wkIndicate the initial weight of side k;Indicate that all sides are weight summations;R indicates the right value update on candidate side
Step-length;
When t=T, the real-time weight y of the second wheel iterative calculation is determinedT。
Before the above-mentioned real-time weight for calculating at least one side of acquisition according to formula (7), further includes:
According to formula yA≤WJudge whether the shortest path of at least one business to be allocated meets dual problem constraint item
Part;
Wherein, A is route matrix, and W is routine weight value vector, and y is weight;
If being unsatisfactory for dual problem constraint condition, stop using preset weights algorithm according to route matrix and constrained vector
Determine the real-time weight of the second wheel iterative calculation, and the real-time weight at least one side is weight;
If meeting dual problem constraint condition, the is determined using preset weights algorithm according to route matrix and constrained vector
The real-time weight of two wheel iterative calculation.
Wherein, each round iterative calculation in more wheel iterative calculation all using Dijkstra's algorithm or Bell it is graceful-
Ford algorithm.
It is worth noting that, foregoing merely illustrates the implementation of first round iterative calculation and the second wheel iterative calculation,
In practical applications, the implementation of other wheel iterative calculation is iterated to calculate with the first round and the second wheel iterative calculation is identical, tool
Body refers to foregoing description, and details are not described herein again.
Step 103, the optimal path that multiple business to be allocated are determined from the set of minimal paths of multiple business to be allocated
Gather, the path and multiple business to be allocated in optimal path set correspond, the path satisfaction pair in optimal path set
The resource occupation total amount in all paths is minimum in the business demand and optimal path set of the business to be allocated answered, and resource accounts for
It with total amount is determined according to the resource occupation amount of each path in optimal path set.
Specifically, determining the optimal path collection of multiple business to be allocated from the set of minimal paths of multiple business to be allocated
It closes, comprising:
According to the hop count on the side in path and initial path in the set of minimal paths of all business to be allocated to shortest path
Path in diameter set is ranked up to obtain First ray according to ascending order, and the path in set of minimal paths includes multiple to be allocated
In business in all shortest paths of each business to be allocated and multiple business to be allocated each business to be allocated initial path;
It is identical most short according to the quantity on side to the path in the identical set of minimal paths of the quantity on side in First ray
The sum of service traffics on side that path in set of paths separately includes are ranked up to obtain the second sequence by ascending order;
Path in the identical set of minimal paths of the sum of service traffics to side in the second sequence, according to the Business Stream on side
Path in the identical set of minimal paths of the sum of amount arranges to obtain third sequence according to the size ascending order of the weights sum on side;
According to the sequence in the path in the business demand and third sequence of each business to be allocated in set of minimal paths
Determine the optimal path of multiple business to be allocated.
In the present embodiment, firstly, being determined soft according to the initial path of business to be allocated each in multiple business to be allocated
Part defines the weight of multiple summits in network, in turn, according to weight, distinguishes each of multiple business to be allocated business to be allocated
More wheel iterative calculation are carried out, to obtain the set of minimal paths of multiple business to be allocated, finally most from multiple business to be allocated
The optimal path set of multiple business to be allocated is determined in short path set.Wherein, due to industry in the customized network of software
Business increases, and the load of machinery systems on each side is also changing namely the weight on each side is also changing in the customized network of software, leads to
The weight for updating each edge is crossed, and according to the set of minimal paths of the multiple business to be allocated of the right value update of each edge, so as to
To obtain the optimal path set of multiple business to be allocated according to the set of minimal paths of updated multiple business to be allocated, according to
Carrying out route assignment to the business to be allocated according to the optimal path set can bear on each side in the customized network of balanced software
It carries, s is to improve the resource utilization of the customized network of software.
In order to make it easy to understand, use a specific embodiment below, to the technical solution of embodiment of the method shown in Fig. 3 into
Row is described in detail.
Fig. 4 show the example network topology structural schematic diagram of one network topology of adaptable the application method,
As shown in figure 4, the network shares 8 nodes, 13 sides, each while total bandwidth and initial weight such as Fig. 4 in it is each while on
It marks shown in (total bandwidth, initial weight).
3 business to be allocated are shared in the present embodiment, the starting point of business 1 to be allocated is A, and terminal is H, and demand bandwidth is 4,
The starting point of business 2 to be allocated is A, and terminal is E, and demand bandwidth is 4, and the starting point of business 3 to be allocated is A, and terminal is G, demand band
Wide is 4.
Table 1 is the number on each side, then the set LINK={ k | k=1,2 ..., 13 } on side, the total number L=on all sides |
LINK |=13.
Table 1
Number | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
Side | A-B | A-D | A-F | B-C | B-D | C-E | C-H |
Number | 8 | 9 | 10 | 11 | 12 | 13 | |
Side | D-E | D-F | E-G | E-H | F-G | G-H |
The initial weight on each sideNumbering the initial weight on the side for being 1,4,7 is 2,
The initial weight on remaining side is 1.All side right value summations
The total bandwidth c on each sidek=4 (k ∈ Link).The set omega of all business to be allocated={ 1,2,3 }, number is 1,2,3 respectively.
The total number N=of all business to be allocated | Ω |=3.The demand bandwidth V of business i to be allocatedi=4 (i ∈ Ω).It is all to be allocated
The greatest requirements bandwidth V of businessmax=max { Vi| i ∈ Ω }=4.The weight compressed coefficient
Wherein initial weight can be according to the determination of the initial path of business to be allocated each in multiple business to be allocated,
It is also possible to preset in network, specifically obtaining the method for initial weight, details are not described herein again.
According to the weight, first round iteration meter is carried out to each of the multiple business to be allocated business to be allocated
It calculates, comprising:
The first round determines the shortest path of 3 business to be allocated:
Assuming that the weight on whole sides is initial weight, y under original state0=0, x0=0, for ease of description in this implementation
The set of minimal paths that each business to be allocated before first round iterative calculation is assumed in example is empty set.
Industry to be allocated is determined using Dijkstra's algorithm or Bellman Ford algorithm according to the real-time weight on whole sides
The shortest path of business 1 is A-D-E-H, and the shortest path of business 2 to be allocated is A-D-E, and the shortest path of business 3 to be allocated is A-
F-G.Since business 1 to be allocated, the set of minimal paths of business to be allocated 2 and business to be allocated 3 before this step are empty set,
Therefore three paths can be added to the shortest path of business 1 to be allocated, business to be allocated 2 and business to be allocated 3 at this time
In set, the first set of minimal paths is obtained.
And then execute, traffic matrix and business constraint vector are constructed according to first set of minimal paths, that is, according to
Formula (1) constructs traffic matrix:
A1=(ai,j)N×P (1)
Wherein, N=3, P=3, shortest path 1 are the shortest paths of business 1 to be allocated, and shortest path 2 is business to be allocated
2 shortest path, shortest path 3 are the shortest path of business 3 to be allocated, ai,jIndicate whether shortest path j is business to be allocated
The shortest path of i, when shortest path j is the shortest path of business i to be allocated, ai,jIt is 1, otherwise ai,jIt is 0.It therefore, can be with
Obtain traffic matrix:
Business constraint vector is constructed according to formula (2):
b1=(1)N×1(2).Therefore, available business constraint vector:
Side matrix is constructed according to formula (3):
Wherein, L=13,Indicate j-th of shortest path i of business i to be allocatedjWhether by side k, when industry to be allocated
J-th of shortest path i of business ijWhen by side k,Otherwise
In turn, according to first set of minimal paths, the topological structure of the software defined network and the multiple
The demand bandwidth of business to be allocated constructs side matrix, specific:
First shortest path P of business 1 to be allocated11By this 3 sides A-D, D-E, E-H, corresponding number is respectively
2,8,11, then first shortest path P of business 1 to be allocated11The the 2nd, 8,11 element be 4, remaining element be 0;It is to be allocated
First shortest path P of business 221By this 2 sides A-D, D-E, corresponding number is 2,8 respectively, then business 2 to be allocated
First shortest path P21The the 2nd, 8 element be 4, remaining element be 0;First shortest path P of business 3 to be allocated31Through
This 2 sides A-F, F-G are crossed, corresponding number is 3,12 respectively, then first shortest path P of business 3 to be allocated31The 3rd, 12
A element is 4, remaining element is 0.Therefore available side matrix:
In turn, according to described at least one while bandwidth information construct while constrained vector, it is specific:
Side constrained vector is constructed according to formula (4):
b2=(ck)L×1 (4)
Further, according to the traffic matrix and the side matrix construction route matrix, and according to the business constraint
Constrained vector structure constraint vector in side described in vector sum, specific:
Wherein, ck=4 (k ∈ Link).Therefore available side constrained vector:
Route matrix is constructed according to formula (5):
According to formula (6) structure constraint vector:
Finally, determining the second wheel iteration using preset weights algorithm according to the route matrix and the constrained vector
The real-time weight calculated.
Specifically, determining that second wheel changes using preset weights algorithm according to the route matrix and the constrained vector
Before the real-time weight that generation calculates, further includes:
According to formula yA≤WJudge whether the shortest path of at least one business to be allocated meets dual problem constraint
Condition;
Wherein, A is the route matrix, and W is the path weight value vector, and y is the weight;
If being unsatisfactory for the dual problem constraint condition, stop being used according to the route matrix and the constrained vector
Preset weights algorithm determines the real-time weight of the second wheel iterative calculation, and the real-time weight at least one side is described
Weight;
If meeting the dual problem constraint condition, according to the route matrix and the constrained vector using default power
Value-based algorithm determines the real-time weight of the second wheel iterative calculation.
It is specific: first to judge whether the above-mentioned shortest path of 3 business to be allocated meets dual problem constraint condition, be
It is no to meet formula (8):
YA≤W, y=[0 0 0] (8)
Calculate this corresponding path weight value vector of three shortest paths:
The weight coefficient of first shortest path of business 1 to be allocated
The weight coefficient of first shortest path of business 2 to be allocated
The weight coefficient of first shortest path of business 3 to be allocated
Then path weight value vector:
W=[W11 W21 W31]=[13 14 14]
As it can be seen that yA=[0 0 0]≤[13 14 14]=W indicates exist newly due to meeting dual problem constraint condition
Path candidate can continue to calculate downwards, namely the real-time power of the second wheel iterative calculation is determined using preset weights algorithm
Value.
Further, second wheel is determined using preset weights algorithm according to the route matrix and the constrained vector
The real-time weight of iterative calculation, comprising:
Obtaining default iteration wheel number T, and initial t=0, it is assumed that T 1000, every wheel t add 1, repeat following steps,
Until t=T=1000:
The real-time weight for obtaining 13 sides is calculated according to formula (7):
yt+1=yt+γ(yt-Yt) (7)
Wherein,B=Axt- b,Indicate vector ytIn i-th of element, BiTable
Show that i-th of element in vector B, γ are assumed to be the right value update step-length on 1.5, s expression side, epicycle iteration s=0.205475;
xt+1=xt+γ(xt-Xt),
Wherein, Indicate vector ztIn i-th
A element, λ=0.0156 are the weight compressed coefficient,R=16, r 168.714652.
Due to y0=0, x0=0, therefore y when can calculate based on above-mentioned formula and parameter t=11And x1。
Due to t < T at this time, so also needing to be iterated calculating by above-mentioned formula and parameter, y when t=2 is obtained2With
x2。
When t=T=1000, indicate that iteration wheel number has met, it is determined that updated real-time weight is yT。
At this point, y=yt=[0,0.0149,0.4242,0,1.6845,1.6970,0,0,0,0,1.6845,0,0,0,
1.6970,0]
X=xt=[0,1,1]
By the initial weight of rear 13 elements and each side in yIt is separately summed, obtains
The final updated real-time weight on each side.
And then the second wheel iterative process is executed, namely execute second and take turns the mistake for determining the shortest path of 3 business to be allocated
Journey:
Calculating at this time based on last round of shortest path, the real-time weight y on whole sides, x are last round of calculated result.Root
The most short of business 1 to be allocated is determined using Dijkstra's algorithm or Bellman Ford algorithm according to the real-time weight on whole sides
Path is A-B-C-H, and the shortest path of business 2 to be allocated is A-B-C-E, and the shortest path of business 3 to be allocated is A-B-C-E-
G.This three shortest paths are not included in business 1 to be allocated, business to be allocated 2, the first set of minimal paths of business to be allocated 3
In, thus respectively by this three shortest paths be added business 1 to be allocated, business to be allocated 2, business to be allocated 3 it is first most short
The second set of minimal paths is obtained in set of paths.
Traffic matrix is constructed according to formula (1):
A1=(ai,j)N×P (1)
Wherein, N=3, in addition three shortest path P=6 of the first round, newly-increased shortest path 1 be business 1 to be allocated most
Short path, newly-increased shortest path 2 are the shortest paths of business 2 to be allocated, and increasing shortest path 3 newly is the most short of business 3 to be allocated
Path, ai,jIndicate shortest path j whether the shortest path for being business i to be allocated, when shortest path j be business i to be allocated most
When short path, ai,jIt is 1, otherwise ai,jIt is 0.Therefore, available traffic matrix:
Business constraint vector is constructed according to formula (2):
b1=(1)N×1(2).Therefore, available business constraint vector:
Side matrix is constructed according to formula (3):
Wherein, L=13,Indicate j-th of shortest path i of business i to be allocatedjWhether by side k, when industry to be allocated
J-th of shortest path i of business ijWhen by side k,Otherwise
The Article 2 shortest path P of business 1 to be allocated12By this 3 sides A-B, B-C, C-H, corresponding number is respectively
1,4,7, then the Article 2 shortest path P of business 1 to be allocated12The the 1st, 4,7 element be 4, remaining element be 0;Industry to be allocated
The Article 2 shortest path P of business 222By this 3 sides A-B, B-C, C-E, corresponding number is 1,4,6 respectively, then industry to be allocated
The Article 2 shortest path P of business 222The the 1st, 4,6 element be 4, remaining element be 0;The Article 2 shortest path of business 3 to be allocated
Diameter P32By this 4 sides A-B, B-C, C-E, E-G, corresponding number is 1,4,6,10 respectively, then the Article 2 of business 3 to be allocated
Shortest path P32The the 1st, 4,6,10 element be 4, remaining element be 0.Therefore available side matrix:
Side constrained vector is constructed according to formula (4):
b2=(ck)L×1 (4)
Wherein, ck=4 (k ∈ Link).Therefore available side constrained vector:
Route matrix is constructed according to formula (5):
According to formula (6) structure constraint vector:
So far, first judge whether the above-mentioned shortest path of 3 business to be allocated meets dual problem constraint condition, i.e., whether
Meet formula (8):
ytA≤W (8)
Calculate this corresponding path weight value vector of three shortest paths:
The weight coefficient of the Article 2 shortest path of business 1 to be allocated
The weight coefficient of the Article 2 shortest path of business 2 to be allocated
The weight coefficient of the Article 2 shortest path of business 3 to be allocated
Then path weight value vector:
W=[W11 W21 W31 W12 W22 W32]=[13 14 14 10 11 10]
As it can be seen thatMeet dual problem constraint condition,
It indicates to continue to calculate downwards, update the real-time weight on each side there are new path candidate.
Obtaining default iteration wheel number T, and initial t=0, it is assumed that T 1000, every wheel t add 1, repeat following steps,
Until t=T=1000:
The real-time weight for obtaining 13 sides is calculated according to formula (7):
yt+1=yt+γ(yt-Yt) (7)
Wherein,B=Axt- b,Indicate vector ytIn i-th of element, Bi
Indicate i-th of element in vector B, γ, which is assumed to be 1.5, s, indicates side right value update step-length, epicycle iteration s=0.183499;
xt+1=xt+γ(xt-Xt),
Wherein, Indicate vector ztIn i-th
A element, λ=0.0156 are the weight compressed coefficient,R=16, r indicate candidate chains right of way
Value updates step-length, epicycle iteration r=370.574950.
Therefore y when t=1 can be calculated based on above-mentioned formula and parameter1And x1。
Due to t < T=1000 at this time, so also needing to be iterated calculating by above-mentioned formula and parameter, when obtaining t=2
Y2And x2。
As t=T=1000, indicate that iteration wheel number has met, it is determined that updated real-time weight is yT。
Y=yT=[1.0532,2.0504,10.4251,1.1183,1.4933,0.3357,1.1183,0,0,0,
1.4933,0,0,0,0.3357,0] x=xT=[0.2507,0.7495,1.0000,0.7485,0.2517,0]
By the initial weight of rear 13 elements and each side in yIt is separately summed, obtains
The final updated real-time weight in each side.
And then third round iterative process is executed, namely execute the mistake that third round determines the shortest path of 3 business to be allocated
Journey:
Calculating at this time based on the second wheel shortest path, the real-time weight y on whole sides, x are last round of calculated result.Root
The most short of business 1 to be allocated is determined using Dijkstra's algorithm or Bellman Ford algorithm according to the real-time weight on whole sides
Path is A-F-G-H, and the shortest path of business 2 to be allocated is A-F-G-E, and business 3 to be allocated is without corresponding shortest path.This
Two shortest paths are not included in the second set of minimal paths of business 1 and business to be allocated 2 to be allocated, therefore respectively by this
Two shortest paths are added in the second set of minimal paths of business 1 and business to be allocated 2 to be allocated to obtain third shortest path
Diameter set.
Traffic matrix is constructed according to formula (1):
A1=(ai,j)N×P (1)
Wherein, N=3, in addition six shortest path P=8 of preceding two-wheeled, newly-increased shortest path 1 be business 1 to be allocated most
Short path, newly-increased shortest path 2 are the shortest path of business 2 to be allocated, ai,jIndicate whether shortest path j is business i to be allocated
Shortest path, when shortest path j is the shortest path of business i to be allocated, ai,jIt is 1, otherwise ai,jIt is 0.Therefore, it can obtain
To traffic matrix:
Business constraint vector is constructed according to formula (2):
b1=(1)N×1(2).Therefore, available business constraint vector:
Side matrix is constructed according to formula (3):
Wherein, L=13,Indicate j-th of shortest path i of business i to be allocatedjWhether by side k, when industry to be allocated
J-th of shortest path i of business ijWhen by side k,Otherwise
The Article 3 shortest path P of business 1 to be allocated13By this 3 sides A-F, F-G, G-H, corresponding number is respectively
3,12,13, then the Article 3 shortest path P of business 1 to be allocated13The the 3rd, 12,13 element be 4, remaining element be 0;Wait divide
Article 3 shortest path P with business 223By this 3 sides A-F, F-G, G-E, corresponding number is 3,12,10 respectively, then to
The Article 3 shortest path P of distribution business 223The the 3rd, 12,10 element be 4, remaining element be 0.Therefore available side square
Battle array:
Side constrained vector is constructed according to formula (4):
b2=(ck)L×1 (4)
Wherein, ck=4 (k ∈ Link).Therefore available side constrained vector:
Route matrix is constructed according to formula (5):
According to formula (6) structure constraint vector:
So far, first judge whether the above-mentioned shortest path of 3 business to be allocated meets dual problem constraint condition, i.e., whether
Meet formula (8):
ytA≤W (8)
Calculate this corresponding path weight value vector of three shortest paths:
The weight coefficient of the Article 2 shortest path of business 1 to be allocated
The weight coefficient of the Article 2 shortest path of business 2 to be allocated
Then path weight value vector:
W=[W11 W21 W31 W12 W22 W32 W13 W23]
=[13 14 14 10 11 10 13 13]
As it can be seen that
YA=[12.9996,13.9968,13.1105,9.9996,10.9968,19.3715,3.7386,4.7358],
≤ [13 14 14 10 11 10 13 13]=W
Meet dual problem constraint condition, indicates to continue to calculate downwards, update each side there are new path candidate
Real-time weight.
Obtaining default iteration wheel number T, and initial t=0, it is assumed that T 1000, every wheel t add 1, repeat following steps,
Until t=T=1000:
The real-time weight for obtaining 13 sides is calculated according to formula (7):
yt+1=yt+γ(yt-Yt) (7)
Wherein,B=Axt- b,Indicate vector ytIn i-th of element, Bi
Indicate i-th of element in vector B, γ, which is assumed to be 1.5, s, indicates side right value update step-length, epicycle iteration s=0.169204;
xt+1=xt+γ(xt-Xt),
Wherein, Indicate vector ztIn i-th
A element, λ=0.0156 are the weight compressed coefficient,R=16, r indicate candidate chains right of way
Value updates step-length, epicycle iteration r=401.882292.
Therefore y when t=1 can be calculated based on above-mentioned formula and parameter1And x1。
Due to t < T at this time, so also needing to be iterated calculating by above-mentioned formula and parameter, y when t=2 is obtained2With
x2。
As t=T=1000, indicate that iteration wheel number has met, it is determined that updated real-time weight is yT。
Y=yT=[3.9437,4.9450,4.6615,0.7570,1.1320,1.1440,0.7570,0,0,0,
1.1320,0,0,0,1.1440,0]
X=xT=[0.2512,0.7487,1.0000,0.7490,0.2509,0,0,0]
By the initial weight of rear 13 elements and each side in yIt is separately summed, obtains
The final updated real-time weight in each side.
And then fourth round iterative process is executed, namely execute the mistake that fourth round determines the shortest path of 3 business to be allocated
Journey, the real-time weight y on whole sides, x are last round of calculated result.Due to being executed in above-mentioned iterative process in fourth round, according to
The real-time weight on whole sides determines the shortest path of business 1 to be allocated using Dijkstra's algorithm or Bellman Ford algorithm
It is corresponding that diameter, the shortest path of business 2 to be allocated and the shortest path of business to be allocated 3 are all contained in these three business to be allocated
Third set of minimal paths in, that is, so far, 3 business to be allocated are not not included in third set of minimal paths again
New shortest path, therefore stop above-mentioned the step of repeating.Then according to the business to be allocated 1 determined, wait divide
The optimal path of each business to be allocated is determined with business 2, the third set of minimal paths of business to be allocated 3.
Specifically, the quantity on the side for 8 shortest paths elected according to the above process to all shortest paths according to
Ascending order is ranked up to form First ray;Then the quantity on side identical two or more shortest paths in First ray, according to this
The sum of the service traffics to be allocated on side that two or more shortest paths separately include are ranked up to form the second sequence by ascending order;Again
To identical two or more shortest paths of the service traffics to be allocated on the second sequence side, according to this two or more shortest path packets
The weights sum on the side contained is ranked up to form third sequence by ascending order.Table 2 is the third sequence of 8 shortest paths.
Table 2
Sequence, determines the optimal of 3 business to be allocated in conjunction with the demand bandwidth of 3 business to be allocated according to shown in table 2
Path, so that it is determined that the optimal path of business 1 to be allocated is A-B-C-H out, the optimal path of business 2 to be allocated is A-D-E, to
The optimal path of distribution business 3 is A-F-G, and Fig. 5 is the optimal path schematic diagram of 3 business to be allocated.
Further, after the optimal path for determining 3 business to be allocated according to the method described above, base can also be used
Optimal path is optimized in the taboo search method of replacement operator.Detailed process is as follows:
Initialize feasible solution M={ mi=-1 | i ∈ Ω }, wherein collection of services to be allocated is Ω;Initialize taboo list N=
{ni=0 | i ∈ Ω }, for business i to be allocated, it is less than or equal to n in iteration wheel numberiWhen, do not allow to treat the optimal of distribution business i
Path changes.
Judge whether all business to be allocated have determined that optimal path, if business i to be allocated has determined that optimal path
For j-th of shortest path of the business i to be allocated, then setting the corresponding feasible solution of business i to be allocated is mi=j;
According to collection of services sequence to be allocated, successively judge whether the business to be allocated can be with alternative routing;
If 4.1) the corresponding solution of the business i to be allocated is mi=j, and the taboo value n of the business to be allocatediIt is less than
The business to be allocated is then taken out from having determined that in the optimal path set, records taking-up by current iteration wheel number iter
It is j-th of shortest path of business i to be allocated, and restores the band on side in the topology according to the business demand bandwidth to be allocated
Wide information, while setting the corresponding solution m of the business to be allocatedi=-1, wherein restored according to the business demand bandwidth to be allocated
If the bandwidth information on side includes: to be put into business to be allocated in the topology, the band that business to be allocated occupies is subtracted in topology
It is wide;On the contrary, the bandwidth for needing to occupy plus business to be allocated if taking out business to be allocated.
4.2) sequence added in 8 as required in the set of minimal paths of the business to be allocated,
Judge in addition to j-th of shortest path of the business i to be allocated just taken out, determining described can be put into described open up
The shortest path k for flutterring middle residue of network organization bandwidth information is the optimal path of the business to be allocated, and remembers ni=iter+Tabu,
Wherein Tabu can be fixed value, also can be random value, while recording mi=k;
The shortest path if business to be allocated, in addition to j-th of shortest path of the business i to be allocated just taken out
It cannot all be reentered into topology, then be reentered into j-th of shortest path for just taking out business i to be allocated, and remember ni=iter+
Tabu+1, while recording mi=j;
4.3) until all business to be allocated have been performed both by, judge current feasible solution whether be better than when circulation starts can
Row solves, if the feasible solution when feasible solution starts better than the circulation, updating feasible solution is the feasible of current iteration completion
Solution.
Judge whether current iteration wheel number iter is less than greatest iteration wheel number, if being less than the greatest iteration wheel number, returns
It returns 4), otherwise executes 6), can be executed in advance 6) if all business to be allocated have found optimal path;
End loop, available current feasible solution M={ mi| i ∈ Ω } be described problem optimal solution.
Fig. 6 show the structural schematic diagram of the routing determining device in software defined network provided in an embodiment of the present invention,
The software defined network includes mulitpath, the every path packet for carrying multiple business, the software defined network
At least one side is included, the side indicates two routing nodes of direct communication in the corresponding network topology of the software defined network
Between connection relationship, as shown in fig. 6, the device of the present embodiment may include:
Weight determining module 11 is determined for the initial path according to business to be allocated each in multiple business to be allocated
The weight of multiple summits in the software defined network, the weight indicate that the multiple business to be allocated uses respective initial road
The load of machinery systems of a line in the case where diameter;
Set of minimal paths obtains module 12, is used for according to the weight, to each of the multiple business to be allocated
Business to be allocated carry out respectively take turns iterative calculation, to obtain the set of minimal paths of the multiple business to be allocated, it is described most
Every shortest path in short path set indicates that the corresponding business to be allocated of the shortest path obtains in a wheel iterative calculation
To resource occupation amount it is minimum and meet the path of business demand, the set of minimal paths includes the multiple business to be allocated
In each business to be allocated all shortest paths, the set of minimal paths further includes each in the multiple business to be allocated
The initial path of business to be allocated;
Optimal path set determining module 13, for determining institute from the set of minimal paths of the multiple business to be allocated
The optimal path set of multiple business to be allocated is stated, the path in the optimal path set and the multiple business one to be allocated
One is corresponding, the path in the optimal path set meet corresponding business to be allocated business demand and the optimal road
The resource occupation total amount in all paths is minimum in diameter set, and the resource occupation total amount is according to every in the optimal path set
What the resource occupation amount of paths determined.
Further, the set of minimal paths obtains module 12 and is specifically used for:
According to the weight, first round iteration meter is carried out to each of the multiple business to be allocated business to be allocated
It calculates, to obtain the first set of minimal paths that the first round iterates to calculate corresponding the multiple business to be allocated, wherein institute
The first set of minimal paths for stating multiple business to be allocated includes the initial path of the multiple business to be allocated and the multiple
Other paths of at least one of business to be allocated, the initial path of the business to be allocated identical as correspondence of other paths described in every is not
Together, described at least one other paths be in the multiple business to be allocated iterated to calculate according to the first round at least
The shortest path of one business to be allocated;
According to the first set of minimal paths of the multiple business to be allocated, the real-time power of the second wheel iterative calculation is determined
Value;
According to the real-time weight of the second wheel iterative calculation, at least one wheel is carried out at least one described business to be allocated
Iterative calculation iterates to calculate corresponding the multiple business to be allocated to obtain last wheel in at least one wheel iterative calculation
Set of minimal paths, wherein last described wheel iterates to calculate the shortest path collection of corresponding the multiple business to be allocated
It is identical as the set of minimal paths that the previous round iterative calculation of last wheel iterative calculation obtains to close included path.
Further, the real-time weight of second wheel iterative calculation is determined according to first set of minimal paths described
Aspect, the set of minimal paths obtains module 12 and is specifically used for:
Traffic matrix and business constraint vector are constructed according to first set of minimal paths;
According to first set of minimal paths, the topological structure of the software defined network and the multiple to be allocated
The demand bandwidth of business constructs side matrix;
According to described at least one while bandwidth information construction while constrained vector;
According to the traffic matrix and the side matrix construction route matrix, and according to the business constraint vector sum
Side constrained vector structure constraint vector;
The second wheel iterative calculation is determined using preset weights algorithm according to the route matrix and the constrained vector
Real-time weight.
Further, described in being determined according to the route matrix and the constrained vector using preset weights algorithm described
The aspect of the real-time weight of second wheel iterative calculation, the set of minimal paths obtain module 12 and are specifically used for:
Obtain default iteration wheel number T, and initial t=0;
Repeat following steps:
According to formula yt+1=yt+γ(yt-Yt) and xt+1=xt+γ(xt-Xt) calculate the reality for obtaining at least one side
When weight:
Wherein, describedThe B=Axt-b;It is describedIndicate vector ytIn
I-th of element;The BiIndicate i-th of element in vector B;The γ indicates preset step-length overall shrinkage coefficient;The s table
Show the right value update step-length on side;The A is the route matrix, and the b is the constrained vector;
Wherein, Indicate vector ztIn i-th
A element;WiIndicate i-th of element in vector W,Indicate institute
Need the path weight value vector of the weight coefficient composition of all shortest paths for the business of being distributed,
Indicate that the weight coefficient of shortest path, LINK indicate the set on side, λ=1/ (VmaxIt R) is the weight compressed coefficient, Vmax=max { Vi
| i ∈ Ω }, wkIndicate the initial weight of side k;Indicate all side right value summations;R indicates the weight on candidate side more
New step-length;
When t=T, determine that the real-time weight of the second wheel iterative calculation is yT。
Further, as shown in fig. 7, above-mentioned device further include: judgment module 14, the judgment module 14 are used for basis
Formula yA≤W judges whether the shortest path of at least one business to be allocated meets dual problem constraint condition;
Wherein, A is the route matrix, and W is the path weight value vector, and y is the weight;
If being unsatisfactory for the dual problem constraint condition, module 12 is obtained to the set of minimal paths and sends the first finger
Enable, first instruction be used to indicate the set of minimal paths obtain module 12 stop according to the route matrix and it is described about
Shu Xiangliang determines the real-time weight of the second wheel iterative calculation using preset weights algorithm, and at least one side is real-time
Weight is the weight;
If meeting the dual problem constraint condition, module 12 is obtained to the set of minimal paths and sends the second finger
Enable, second instruction be used to indicate the set of minimal paths obtain module 12 according to the route matrix and it is described constrain to
Amount determines the real-time weight of the second wheel iterative calculation using preset weights algorithm.
Further, the set of minimal paths obtains each round that module 12 is also used in more wheel iterative calculation
Iterative calculation all uses Dijkstra's algorithm or Bellman Ford algorithm.
Further, the optimal path set determining module 13, is specifically used for:
According to the hop count on the side in path and the initial path in the set of minimal paths of all business to be allocated
Path in the set of minimal paths is ranked up to obtain First ray according to ascending order, the road in the set of minimal paths
Diameter includes in the multiple business to be allocated in all shortest paths of each business to be allocated and the multiple business to be allocated
The initial path of each business to be allocated;
To the path in the identical set of minimal paths of the quantity on side in the First ray, according to the number on the side
The sum of the service traffics for measuring the side that the path in the identical set of minimal paths separately includes are ranked up by ascending order
Obtain the second sequence;
Path in the identical set of minimal paths of the sum of service traffics to side in second sequence, according to institute
State while the identical set of minimal paths of the sum of service traffics in path according to it is described while weights sum size liter
Sequence arranges to obtain third sequence;
According in set of minimal paths described in the business demand of each business to be allocated and the third sequence
The sequence in path determine the optimal path of the multiple business to be allocated.
The device of the present embodiment can be used for executing the technical solution of embodiment of the method shown in Fig. 3, realization principle and skill
Art effect is similar, and details are not described herein again.
Fig. 8 show the structural representation of the routing determining device in the software defined network of further embodiment of this invention offer
Figure, referring to Fig. 8, which includes:
Transceiving device, software components and hardware device three parts;
Transceiving device is the hardware circuit for completing pack receiving and transmitting;
Hardware device can also claim " hardware processing module " or simpler, can be also simply referred to as " hardware ", hardware device master
It to include certain to realize based on FPGA, ASIC etc special hardware circuit (can also cooperate other support devices, such as memory)
The hardware circuit of specific function, processing speed is often many fastly compared to general processor, but function one is customized, is just difficult
Change, therefore, implements and not flexible, commonly used to handle the function of some fixations.It should be noted that hardware device exists
It also may include MCU (microprocessor, such as single-chip microcontroller) or CPU processor in practical application, but the master of these processors
Wanting function is not to complete the processing of big data, and be mainly used for carrying out some controls, under this application scenarios, by these devices
The system of part collocation is hardware device.
Software components (or also simple " software ") mainly include that general processor (such as CPU) and some are matched
Device (such as memory, hard disk store equipment), can allow processor to have corresponding processing function by programming, with software come
It, can speed be slow compared to for hardware device according to business flexible configuration, but often when realization.It, can be with after software has been handled
The data handled are sent by transceiving device by hardware device, can also be connected by one with transceiving device
Interface sends the data handled to transceiving device.
Wherein, processor is specifically used for executing following operation:
According to the initial path of business to be allocated each in multiple business to be allocated, determine more in the software defined network
The weight on side, the weight indicate the multiple business to be allocated using in the case where respective initial path a line it is negative
Lotus degree;
According to the weight, more wheel iteration meters are carried out respectively to each of the multiple business to be allocated business to be allocated
It calculates, the every shortest path table to obtain the set of minimal paths of the multiple business to be allocated, in the set of minimal paths
Show that the corresponding business to be allocated of shortest path resource occupation amount obtained in a wheel iterative calculation is minimum and meets business
The path of demand, the set of minimal paths include all shortest paths of each business to be allocated in the multiple business to be allocated
Diameter, the set of minimal paths further include the initial path of each business to be allocated in the multiple business to be allocated;
The optimal path of the multiple business to be allocated is determined from the set of minimal paths of the multiple business to be allocated
Gather, the path and the multiple business to be allocated in the optimal path set correspond, in the optimal path set
Path meet the resource occupation in all paths in the business demand and the optimal path set of corresponding business to be allocated
Total amount is minimum, and the resource occupation total amount is determined according to the resource occupation amount of each path in the optimal path set.
Optionally, described according to the weight, to each of the multiple business to be allocated business to be allocated respectively into
The more wheels of row iterate to calculate, and include: to obtain the set of minimal paths of each business to be allocated
According to the weight, first round iteration meter is carried out to each of the multiple business to be allocated business to be allocated
It calculates, to obtain the first set of minimal paths that the first round iterates to calculate corresponding the multiple business to be allocated, wherein institute
The first set of minimal paths for stating multiple business to be allocated includes the initial path of the multiple business to be allocated and the multiple
Other paths of at least one of business to be allocated, the initial path of the business to be allocated identical as correspondence of other paths described in every is not
Together, described at least one other paths be in the multiple business to be allocated iterated to calculate according to the first round at least
The shortest path of one business to be allocated;
According to the first set of minimal paths of the multiple business to be allocated, the real-time power of the second wheel iterative calculation is determined
Value;
According to the real-time weight of the second wheel iterative calculation, at least one wheel is carried out at least one described business to be allocated
Iterative calculation iterates to calculate corresponding the multiple business to be allocated to obtain last wheel in at least one wheel iterative calculation
Set of minimal paths, wherein last described wheel iterates to calculate the shortest path collection of corresponding the multiple business to be allocated
It is identical as the set of minimal paths that the previous round iterative calculation of last wheel iterative calculation obtains to close included path.
Optionally, described according to first set of minimal paths, determine the real-time weight of the second wheel iterative calculation, packet
It includes:
Traffic matrix and business constraint vector are constructed according to first set of minimal paths;
According to first set of minimal paths, the topological structure of the software defined network and the multiple to be allocated
The demand bandwidth of business constructs side matrix;
According to described at least one while bandwidth information construction while constrained vector;
According to the traffic matrix and the side matrix construction route matrix, and according to the business constraint vector sum
Side constrained vector structure constraint vector;
The second wheel iterative calculation is determined using preset weights algorithm according to the route matrix and the constrained vector
Real-time weight.
Optionally, described to determine described second using preset weights algorithm according to the route matrix and the constrained vector
Take turns the real-time weight of iterative calculation, comprising:
Obtain default iteration wheel number T, and initial t=0;
Repeat following steps:
According to formula yt+1=yt+γ(yt-Yt) and xt+1=xt+γ(xt-Xt) calculate the reality for obtaining at least one side
When weight:
Wherein, describedThe B=Axt-b;It is describedIndicate vector ytIn
I-th of element;The BiIndicate i-th of element in vector B;The γ indicates preset step-length overall shrinkage coefficient;The s table
Show the right value update step-length on side;The A is the route matrix, and the b is the constrained vector;
Wherein, Indicate vector ztIn i-th
A element;WiIndicate i-th of element in vector W,Indicate institute
Need the path weight value vector of the weight coefficient composition of all shortest paths for the business of being distributed,Table
Show that the weight coefficient of shortest path, LINK indicate the set on side, λ=1/ (VmaxIt R) is the weight compressed coefficient, Vmax=max { Vi|i
∈ Ω }, wkIndicate the initial weight of side k;Indicate all side right value summations;R indicates the right value update on candidate side
Step-length;
When t=T, determine that the real-time weight of the second wheel iterative calculation is yT。
Optionally, judge whether the shortest path of at least one business to be allocated meets antithesis according to formula yA≤W
Problem constraint condition;
Wherein, A is the route matrix, and W is the path weight value vector, and y is the weight;
If being unsatisfactory for the dual problem constraint condition, stop being used according to the route matrix and the constrained vector
Preset weights algorithm determines the real-time weight of the second wheel iterative calculation, and the real-time weight at least one side is described
Weight;
If meeting the dual problem constraint condition, according to the route matrix and the constrained vector using default power
Value-based algorithm determines the real-time weight of the second wheel iterative calculation.
Optionally, each round iterative calculation in more wheel iterative calculation all using Dijkstra's algorithm or Bell it is graceful-
Ford algorithm.
Optionally, described that the multiple business to be allocated is determined from the set of minimal paths of the multiple business to be allocated
Optimal path set, comprising:
According to the hop count on the side in path and the initial path in the set of minimal paths of all business to be allocated
Path in the set of minimal paths is ranked up to obtain First ray according to ascending order, the road in the set of minimal paths
Diameter includes in the multiple business to be allocated in all shortest paths of each business to be allocated and the multiple business to be allocated
The initial path of each business to be allocated;
To the path in the identical set of minimal paths of the quantity on side in the First ray, according to the number on the side
The sum of the service traffics for measuring the side that the path in the identical set of minimal paths separately includes are ranked up by ascending order
Obtain the second sequence;
Path in the identical set of minimal paths of the sum of service traffics to side in second sequence, according to institute
State while the identical set of minimal paths of the sum of service traffics in path according to it is described while weights sum size liter
Sequence arranges to obtain third sequence;
According in set of minimal paths described in the business demand of each business to be allocated and the third sequence
The sequence in path determine the optimal path of the multiple business to be allocated.
The device of the present embodiment can be used for executing the technical solution of embodiment of the method shown in Fig. 3, realization principle and skill
Art effect is similar, and details are not described herein again.
Just obtaining module with reference to the accompanying drawing can be by input/output I/O equipment (such as network interface card) Lai Shixian, and weight is true
Cover half block, set of minimal paths obtain module, optimal path set determining module and judgment module and can be and executed by processor
Program or instruction in memory do detailed introduction come the technical solution realized:
Fig. 9 show the structural representation of the routing determining device in the software defined network of yet another embodiment of the invention offer
Figure.Routing determining device 20 in software defined network is applied to software defined network SDN, the road in the software defined network
It include processor 210, memory 250 and input/output I/O equipment 230 by determining device 20, memory 250 may include only
Memory and random access memory are read, and provides operational order and data to processor 210.A part of memory 250 is also
It may include nonvolatile RAM (NVRAM).
In some embodiments, memory 250 stores following element, executable modules or data structures, or
Their subset of person or their superset:
In embodiments of the present invention, operational order (operational order that processor 210 is stored by calling memory 250
It is storable in operating system),
Processor 210 controls the operation of the routing determining device 20 in software defined network, and processor 210 can also be known as
CPU (Central Processing Unit, central processing unit).Memory 250 may include read-only memory and deposit at random
Access to memory, and instruction and data is provided to processor 210.The a part of of memory 250 can also include non-volatile random
It accesses memory (NVRAM).The various components of routing determining device 20 in specific application in software defined network pass through total
Linear system system 220 is coupled, and wherein bus system 220 can also include power bus, control in addition to including data/address bus
Bus and status signal bus in addition etc..But for the sake of clear explanation, various buses are all designated as bus system 220 in figure.
The method that the embodiments of the present invention disclose can be applied in processor 210, or be realized by processor 210.
Processor 210 may be a kind of IC chip, the processing capacity with signal.During realization, the above method it is each
Step can be completed by the integrated logic circuit of the hardware in processor 210 or the instruction of software form.Above-mentioned processing
Device 210 can be general processor, digital signal processor (DSP), specific integrated circuit (ASIC), ready-made programmable gate array
(FPGA) either other programmable logic device, discrete gate or transistor logic, discrete hardware components.May be implemented or
Person executes disclosed each method, step and the logic diagram in the embodiment of the present invention.General processor can be microprocessor or
Person's processor is also possible to any conventional processor etc..The step of method in conjunction with disclosed in the embodiment of the present invention, can be straight
Connect and be presented as that hardware decoding processor executes completion, or in decoding processor hardware and software module combination executed
At.Software module can be located at random access memory, and flash memory, read-only memory, programmable read only memory or electrically-erasable can
In the storage medium of this fields such as programmable memory, register maturation.The storage medium is located at memory 250, and processor 210 is read
The following operation of instruction and execution in access to memory 250:
According to the initial path of business to be allocated each in multiple business to be allocated, determine more in the software defined network
The weight on side, the weight indicate the multiple business to be allocated using in the case where respective initial path a line it is negative
Lotus degree;
According to the weight, more wheel iteration meters are carried out respectively to each of the multiple business to be allocated business to be allocated
It calculates, the every shortest path table to obtain the set of minimal paths of the multiple business to be allocated, in the set of minimal paths
Show that the corresponding business to be allocated of shortest path resource occupation amount obtained in a wheel iterative calculation is minimum and meets business
The path of demand, the set of minimal paths include all shortest paths of each business to be allocated in the multiple business to be allocated
Diameter, the set of minimal paths further include the initial path of each business to be allocated in the multiple business to be allocated;
The optimal path of the multiple business to be allocated is determined from the set of minimal paths of the multiple business to be allocated
Gather, the path and the multiple business to be allocated in the optimal path set correspond, in the optimal path set
Path meet the resource occupation in all paths in the business demand and the optimal path set of corresponding business to be allocated
Total amount is minimum, and the resource occupation total amount is determined according to the resource occupation amount of each path in the optimal path set.
Optionally, described according to the weight, to each of the multiple business to be allocated business to be allocated respectively into
The more wheels of row iterate to calculate, and include: to obtain the set of minimal paths of each business to be allocated
According to the weight, first round iteration meter is carried out to each of the multiple business to be allocated business to be allocated
It calculates, to obtain the first set of minimal paths that the first round iterates to calculate corresponding the multiple business to be allocated, wherein institute
The first set of minimal paths for stating multiple business to be allocated includes the initial path of the multiple business to be allocated and the multiple
Other paths of at least one of business to be allocated, the initial path of the business to be allocated identical as correspondence of other paths described in every is not
Together, described at least one other paths be in the multiple business to be allocated iterated to calculate according to the first round at least
The shortest path of one business to be allocated;
According to the first set of minimal paths of the multiple business to be allocated, the real-time power of the second wheel iterative calculation is determined
Value;
According to the real-time weight of the second wheel iterative calculation, at least one wheel is carried out at least one described business to be allocated
Iterative calculation iterates to calculate corresponding the multiple business to be allocated to obtain last wheel in at least one wheel iterative calculation
Set of minimal paths, wherein last described wheel iterates to calculate the shortest path collection of corresponding the multiple business to be allocated
It is identical as the set of minimal paths that the previous round iterative calculation of last wheel iterative calculation obtains to close included path.
Optionally, described according to first set of minimal paths, determine the real-time weight of the second wheel iterative calculation, packet
It includes:
Traffic matrix and business constraint vector are constructed according to first set of minimal paths;
According to first set of minimal paths, the topological structure of the software defined network and the multiple to be allocated
The demand bandwidth of business constructs side matrix;
According to described at least one while bandwidth information construction while constrained vector;
According to the traffic matrix and the side matrix construction route matrix, and according to the business constraint vector sum
Side constrained vector structure constraint vector;
The second wheel iterative calculation is determined using preset weights algorithm according to the route matrix and the constrained vector
Real-time weight.
Optionally, described to determine described second using preset weights algorithm according to the route matrix and the constrained vector
Take turns the real-time weight of iterative calculation, comprising:
Obtain default iteration wheel number T, and initial t=0;
Repeat following steps:
According to formula yt+1=yt+γ(yt-Yt) and xt+1=xt+γ(xt-Xt) calculate the reality for obtaining at least one side
When weight:
Wherein, describedThe B=Axt-b;It is describedIndicate vector ytIn
I-th of element;The BiIndicate i-th of element in vector B;The γ indicates preset step-length overall shrinkage coefficient;The s table
Show the right value update step-length on side;The A is the route matrix, and the b is the constrained vector;
Wherein, Indicate vector ztIn i-th
A element;WiIndicate i-th of element in vector W,Indicate institute
Need the path weight value vector of the weight coefficient composition of all shortest paths for the business of being distributed,
Indicate that the weight coefficient of shortest path, LINK indicate the set on side, λ=1/ (VmaxIt R) is the weight compressed coefficient, Vmax=max { Vi
| i ∈ Ω }, wkIndicate the initial weight of side k;Indicate all side right value summations;R indicates the weight on candidate side more
New step-length;
When t=T, determine that the real-time weight of the second wheel iterative calculation is yT。
Optionally, judge whether the shortest path of at least one business to be allocated meets antithesis according to formula yA≤W
Problem constraint condition;
Wherein, A is the route matrix, and W is the path weight value vector, and y is the weight;
If being unsatisfactory for the dual problem constraint condition, stop being used according to the route matrix and the constrained vector
Preset weights algorithm determines the real-time weight of the second wheel iterative calculation, and the real-time weight at least one side is described
Weight;
If meeting the dual problem constraint condition, according to the route matrix and the constrained vector using default power
Value-based algorithm determines the real-time weight of the second wheel iterative calculation.
Optionally, each round iterative calculation in more wheel iterative calculation all using Dijkstra's algorithm or Bell it is graceful-
Ford algorithm.
Optionally, described that the multiple business to be allocated is determined from the set of minimal paths of the multiple business to be allocated
Optimal path set, comprising:
According to the hop count on the side in path and the initial path in the set of minimal paths of all business to be allocated
Path in the set of minimal paths is ranked up to obtain First ray according to ascending order, the road in the set of minimal paths
Diameter includes in the multiple business to be allocated in all shortest paths of each business to be allocated and the multiple business to be allocated
The initial path of each business to be allocated;
To the path in the identical set of minimal paths of the quantity on side in the First ray, according to the number on the side
The sum of the service traffics for measuring the side that the path in the identical set of minimal paths separately includes are ranked up by ascending order
Obtain the second sequence;
Path in the identical set of minimal paths of the sum of service traffics to side in second sequence, according to institute
State while the identical set of minimal paths of the sum of service traffics in path according to it is described while weights sum size liter
Sequence arranges to obtain third sequence;
According in set of minimal paths described in the business demand of each business to be allocated and the third sequence
The sequence in path determine the optimal path of the multiple business to be allocated.
The device of the present embodiment can be used for executing the technical solution of embodiment of the method shown in Fig. 3, realization principle and skill
Art effect is similar, and details are not described herein again.
Those of ordinary skill in the art will appreciate that: realize that all or part of the steps of above-mentioned each method embodiment can lead to
The relevant hardware of program instruction is crossed to complete.Program above-mentioned can be stored in a computer readable storage medium.The journey
When being executed, execution includes the steps that above-mentioned each method embodiment to sequence;And storage medium above-mentioned include: ROM, RAM, magnetic disk or
The various media that can store program code such as person's CD.
Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present invention., rather than its limitations;To the greatest extent
Pipe present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that: its according to
So be possible to modify the technical solutions described in the foregoing embodiments, or to some or all of the technical features into
Row equivalent replacement;And these are modified or replaceed, various embodiments of the present invention technology that it does not separate the essence of the corresponding technical solution
The range of scheme.
Claims (15)
1. the route determining methods in a kind of software defined network, which is characterized in that the software defined network is more for carrying
A business, the software defined network include mulitpath, and every path includes at least one side, described in the side expression
Connection relationship in the corresponding network topology of software defined network between two routing nodes of direct communication, which comprises
According to the initial path of business to be allocated each in multiple business to be allocated, multiple summits in the software defined network are determined
Weight, the weight indicates that the multiple business to be allocated uses the load journey of a line in the case where respective initial path
Degree;
According to the weight, take turns is carried out to each of the multiple business to be allocated business to be allocated more respectively and is iterated to calculate,
To obtain the set of minimal paths of the multiple business to be allocated, every shortest path in the set of minimal paths indicates institute
It states the corresponding business to be allocated of shortest path resource occupation amount obtained in a wheel iterative calculation at least and meets business demand
Path, the set of minimal paths includes all shortest paths of each business to be allocated in the multiple business to be allocated,
The set of minimal paths further includes the initial path of each business to be allocated in the multiple business to be allocated;
The optimal path set of the multiple business to be allocated is determined from the set of minimal paths of the multiple business to be allocated,
Path and the multiple business to be allocated in the optimal path set correspond, the path in the optimal path set
Meet the resource occupation total amount in all paths in the business demand and the optimal path set of corresponding business to be allocated most
Small, the resource occupation total amount is determined according to the resource occupation amount of each path in the optimal path set.
2. the method according to claim 1, wherein described according to the weight, to the multiple industry to be allocated
Each of business business to be allocated carries out take turns more respectively and iterates to calculate, to obtain the shortest path collection of each business to be allocated
Conjunction includes:
According to the weight, first round iterative calculation is carried out to each of the multiple business to be allocated business to be allocated, with
Obtain the first set of minimal paths that the first round iterates to calculate corresponding the multiple business to be allocated, wherein described more
First set of minimal paths of a business to be allocated include the multiple business to be allocated initial path and it is the multiple to point
The initial path at least one other paths with business, the business to be allocated identical as correspondence of other paths described in every is different,
Described at least one other paths are at least one in the multiple business to be allocated iterated to calculate according to the first round
The shortest path of a business to be allocated;
According to the first set of minimal paths of the multiple business to be allocated, the real-time weight of the second wheel iterative calculation is determined;
According to the real-time weight of the second wheel iterative calculation, at least one wheel iteration is carried out at least one described business to be allocated
It calculates, iterates to calculate corresponding the multiple business to be allocated most to obtain last wheel in at least one wheel iterative calculation
Short path set, wherein last described wheel iterates to calculate the set of minimal paths institute of corresponding the multiple business to be allocated
Including path with it is described last wheel iterative calculation previous round iterative calculation obtain set of minimal paths it is identical.
3. according to the method described in claim 2, determining it is characterized in that, described according to first set of minimal paths
The real-time weight of two wheel iterative calculation, comprising:
Traffic matrix and business constraint vector are constructed according to first set of minimal paths;
According to first set of minimal paths, the topological structure of the software defined network and the multiple business to be allocated
Demand bandwidth construct side matrix;
According to described at least one while bandwidth information construction while constrained vector;
According to the traffic matrix and the side matrix construction route matrix, and the side according to the business constraint vector sum is about
Shu Xiangliang structure constraint vector;
The reality of the second wheel iterative calculation is determined using preset weights algorithm according to the route matrix and the constrained vector
When weight.
4. according to the method described in claim 3, it is characterized in that, described adopt according to the route matrix and the constrained vector
The real-time weight of the second wheel iterative calculation is determined with preset weights algorithm, comprising:
Obtain default iteration wheel number T, and initial t=0;
Repeat following steps:
According to formula yt+1=yt+γ(yt-Yt) and xt+1=xt+γ(xt-Xt) calculate the real-time power for obtaining at least one side
Value:
Wherein, describedThe B=Axt-b;It is describedIndicate vector ytIn i-th
Element;The BiIndicate i-th of element in vector B;The γ indicates preset step-length overall shrinkage coefficient;The s indicates side
Right value update step-length;The A is the route matrix, and the b is the constrained vector;The t indicates the number of iterations, described
xtIndicate routine weight value vector, the ytIndicate the weight vector on side;
Wherein, Indicate vector ztIn i-th yuan
Element;WiIndicate i-th of element in vector W,Indicate all
The path weight value vector of the weight coefficient composition of all shortest paths of business to be allocated,Table
Show that the weight coefficient of shortest path, LINK indicate the set on side, λ=1/ (VmaxIt R) is the weight compressed coefficient, Vmax=max { Vi|i
∈ Ω }, wkIndicate the initial weight of side k;Indicate all side right value summations;R indicates the right value update on candidate side
Step-length;ATIndicate the transposition of A;
When t=T, determine that the real-time weight of the second wheel iterative calculation is yT。
5. according to the method described in claim 4, it is characterized in that, the method also includes:
According to formula yA≤WJudge whether the shortest path of at least one business to be allocated meets dual problem constraint item
Part;
Wherein, A is the route matrix, and W is the path weight value vector, and y is the weight;
If being unsatisfactory for the dual problem constraint condition, stop according to the route matrix and the constrained vector using default
Weights-selected Algorithm determines the real-time weight of the second wheel iterative calculation, and the real-time weight at least one side is the power
Value;
If meeting the dual problem constraint condition, calculated according to the route matrix and the constrained vector using preset weights
Method determines the real-time weight of the second wheel iterative calculation.
6. the method according to any one of claim 2~5, which is characterized in that each in more wheel iterative calculation
Wheel iterative calculation all uses Dijkstra's algorithm or Bellman Ford algorithm.
7. method according to any one of claims 1 to 5, which is characterized in that described from the multiple business to be allocated
Set of minimal paths in determine the optimal path set of the multiple business to be allocated, comprising:
According to the hop count on the side in path and the initial path in the set of minimal paths of all business to be allocated to institute
It states the path in set of minimal paths to be ranked up to obtain First ray according to ascending order, the path packet in the set of minimal paths
It includes each in all shortest paths of each business to be allocated and the multiple business to be allocated in the multiple business to be allocated
The initial path of business to be allocated;
To the path in the identical set of minimal paths of the quantity on side in the First ray, according to the quantity phase on the side
The sum of the service traffics on the side that the path in the same set of minimal paths separately includes are ranked up to obtain by ascending order
Second sequence;
Path in the identical set of minimal paths of the sum of service traffics to side in second sequence, according to the side
The identical set of minimal paths of the sum of service traffics in path arranged according to the size ascending order of the weights sum on the side
Column obtain third sequence;
According to the road in set of minimal paths described in the business demand of each business to be allocated and the third sequence
The sequence of diameter determines the optimal path of the multiple business to be allocated.
8. the routing determining device in a kind of software defined network, which is characterized in that the software defined network is more for carrying
A business, the software defined network include mulitpath, and every path includes at least one side, described in the side expression
Connection relationship in the corresponding network topology of software defined network between two routing nodes of direct communication, described device include:
Weight determining module determines described soft for the initial path according to business to be allocated each in multiple business to be allocated
Part defines the weight of multiple summits in network, and the weight indicates that the multiple business to be allocated uses the feelings of respective initial path
The load of machinery systems of a line under condition;
Set of minimal paths obtains module, is used for according to the weight, to be allocated to each of the multiple business to be allocated
Business carries out take turns more respectively and iterates to calculate, to obtain the set of minimal paths of the multiple business to be allocated, the shortest path
Every shortest path in set indicates the corresponding business to be allocated of shortest path money obtained in a wheel iterative calculation
Source occupancy is minimum and meets the path of business demand, and the set of minimal paths includes each in the multiple business to be allocated
All shortest paths of business to be allocated, the set of minimal paths further include each to be allocated in the multiple business to be allocated
The initial path of business;
Optimal path set determining module, for determining the multiple from the set of minimal paths of the multiple business to be allocated
The optimal path set of business to be allocated, the path and the multiple business to be allocated one in the optimal path set are a pair of
Answer, the path in the optimal path set meet corresponding business to be allocated business demand and the optimal path collection
The resource occupation total amount in all paths is minimum in conjunction, and the resource occupation total amount is according to the road optimal path set Zhong Meitiao
What the resource occupation amount of diameter determined.
9. device according to claim 8, which is characterized in that the set of minimal paths obtains module and is specifically used for:
According to the weight, first round iterative calculation is carried out to each of the multiple business to be allocated business to be allocated, with
Obtain the first set of minimal paths that the first round iterates to calculate corresponding the multiple business to be allocated, wherein described more
First set of minimal paths of a business to be allocated include the multiple business to be allocated initial path and it is the multiple to point
The initial path at least one other paths with business, the business to be allocated identical as correspondence of other paths described in every is different,
Described at least one other paths are at least one in the multiple business to be allocated iterated to calculate according to the first round
The shortest path of a business to be allocated;
According to the first set of minimal paths of the multiple business to be allocated, the real-time weight of the second wheel iterative calculation is determined;
According to the real-time weight of the second wheel iterative calculation, at least one wheel iteration is carried out at least one described business to be allocated
It calculates, iterates to calculate corresponding the multiple business to be allocated most to obtain last wheel in at least one wheel iterative calculation
Short path set, wherein last described wheel iterates to calculate the set of minimal paths institute of corresponding the multiple business to be allocated
Including path with it is described last wheel iterative calculation previous round iterative calculation obtain set of minimal paths it is identical.
10. device according to claim 9, which is characterized in that described according to first set of minimal paths, determine
The aspect of the real-time weight of second wheel iterative calculation, the set of minimal paths obtain module and are specifically used for:
Traffic matrix and business constraint vector are constructed according to first set of minimal paths;
According to first set of minimal paths, the topological structure of the software defined network and the multiple business to be allocated
Demand bandwidth construct side matrix;
According to described at least one while bandwidth information construction while constrained vector;
According to the traffic matrix and the side matrix construction route matrix, and the side according to the business constraint vector sum is about
Shu Xiangliang structure constraint vector;
The reality of the second wheel iterative calculation is determined using preset weights algorithm according to the route matrix and the constrained vector
When weight.
11. device according to claim 10, which is characterized in that it is described according to the route matrix and it is described constrain to
Amount determines that the aspect of the real-time weight of the second wheel iterative calculation, the set of minimal paths are obtained using preset weights algorithm
Module is specifically used for:
Obtain default iteration wheel number T, and initial t=0;
Repeat following steps:
According to formula yt+1=yt+γ(yt-Yt) and xt+1=xt+γ(xt-Xt) calculate the real-time power for obtaining at least one side
Value:
Wherein, describedThe B=Axt-b;It is describedIndicate vector ytIn i-th
Element;The BiIndicate i-th of element in vector B;The γ indicates preset step-length overall shrinkage coefficient;The s indicates side
Right value update step-length;The A is the route matrix, and the b is the constrained vector;The t indicates the number of iterations, described
xtIndicate routine weight value vector, the ytIndicate the weight vector on side;
Wherein, Indicate vector ztIn i-th yuan
Element;WiIndicate i-th of element in vector W,Indicate all
The path weight value vector of the weight coefficient composition of all shortest paths of business to be allocated,Table
Show that the weight coefficient of shortest path, LINK indicate the set on side, λ=1/ (VmaxIt R) is the weight compressed coefficient, Vmax=max { Vi|i
∈ Ω }, wkIndicate the initial weight of side k;Indicate all side right value summations;R indicates the right value update on candidate side
Step-length;ATIndicate the transposition of A;
When t=T, determine that the real-time weight of the second wheel iterative calculation is yT。
12. device according to claim 11, which is characterized in that described device further include: judgment module,
The judgment module be used for according to formula yA≤WJudge whether the shortest path of at least one business to be allocated meets
Dual problem constraint condition;
Wherein, A is the route matrix, and W is the path weight value vector, and y is the weight;
If being unsatisfactory for the dual problem constraint condition, module is obtained to the set of minimal paths and sends the first instruction, institute
It states the first instruction and is used to indicate the set of minimal paths acquisition module stopping according to the route matrix and the constrained vector
The real-time weight of the second wheel iterative calculation is determined using preset weights algorithm, and the real-time weight at least one side is
The weight;
If meeting the dual problem constraint condition, module is obtained to the set of minimal paths and sends the second instruction, it is described
Second instruction is used to indicate the set of minimal paths and obtains module according to the route matrix and the constrained vector using pre-
If Weights-selected Algorithm determines the real-time weight of the second wheel iterative calculation.
13. the device according to any one of claim 9~12, which is characterized in that the set of minimal paths obtains mould
Block is also used to each round iterative calculation in more wheel iterative calculation all using Dijkstra's algorithm or Bellman Ford
Algorithm.
14. the device according to any one of claim 8~12, which is characterized in that the optimal path set determines mould
Block is specifically used for:
According to the hop count on the side in path and the initial path in the set of minimal paths of all business to be allocated to institute
It states the path in set of minimal paths to be ranked up to obtain First ray according to ascending order, the path packet in the set of minimal paths
It includes each in all shortest paths of each business to be allocated and the multiple business to be allocated in the multiple business to be allocated
The initial path of business to be allocated;
To the path in the identical set of minimal paths of the quantity on side in the First ray, according to the quantity phase on the side
The sum of the service traffics on the side that the path in the same set of minimal paths separately includes are ranked up to obtain by ascending order
Second sequence;
Path in the identical set of minimal paths of the sum of service traffics to side in second sequence, according to the side
The identical set of minimal paths of the sum of service traffics in path arranged according to the size ascending order of the weights sum on the side
Column obtain third sequence;
According to the road in set of minimal paths described in the business demand of each business to be allocated and the third sequence
The sequence of diameter determines the optimal path of the multiple business to be allocated.
15. the routing determining device in a kind of software defined network characterized by comprising processor, memory and communication connect
Mouthful;
The memory, for storing program code;
The processor, the memory and the communication interface are in communication with each other by bus;
The processor is executed for reading the program code stored in the memory as any one in claim 1~7
The route determining methods in software defined network described in.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511033267.1A CN105634974B (en) | 2015-12-31 | 2015-12-31 | Route determining methods and device in software defined network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511033267.1A CN105634974B (en) | 2015-12-31 | 2015-12-31 | Route determining methods and device in software defined network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105634974A CN105634974A (en) | 2016-06-01 |
CN105634974B true CN105634974B (en) | 2019-03-01 |
Family
ID=56049491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511033267.1A Active CN105634974B (en) | 2015-12-31 | 2015-12-31 | Route determining methods and device in software defined network |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105634974B (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107872338B (en) * | 2016-09-26 | 2022-06-07 | 中兴通讯股份有限公司 | Network management system, service configuration method, service configuration request method and device |
CN107070792A (en) * | 2017-04-24 | 2017-08-18 | 东华大学 | A kind of route selection method based on SDN |
CN109086467B (en) * | 2017-06-14 | 2023-05-02 | 上海复旦微电子集团股份有限公司 | I/O unit layout method and device, medium and equipment of programmable logic device |
CN107508730B (en) * | 2017-09-29 | 2022-02-18 | 刘昱 | SDN network-based data center interconnection method and device |
CN110661715B (en) * | 2018-06-28 | 2022-04-19 | 中兴通讯股份有限公司 | Service path optimization method, device, equipment and readable storage medium |
CN112217727B (en) * | 2019-07-11 | 2022-07-29 | 奇安信科技集团股份有限公司 | Multi-metric-dimension routing method and device, computer equipment and storage medium |
CN117527675A (en) * | 2022-07-27 | 2024-02-06 | 华为技术有限公司 | Path determination method and related equipment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103731307A (en) * | 2013-12-30 | 2014-04-16 | 浙江大学 | Method for standardized data surface dynamic reconstruction for multiple services |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9680870B2 (en) * | 2012-12-28 | 2017-06-13 | Verizon Patent And Licensing Inc. | Software-defined networking gateway |
KR20140090769A (en) * | 2013-01-10 | 2014-07-18 | 한국전자통신연구원 | Network control system based on continuous query language |
-
2015
- 2015-12-31 CN CN201511033267.1A patent/CN105634974B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103731307A (en) * | 2013-12-30 | 2014-04-16 | 浙江大学 | Method for standardized data surface dynamic reconstruction for multiple services |
Non-Patent Citations (1)
Title |
---|
Load Balancing for Multicast Traffic in SDN using;Alexander Craig;《Communications(ICC),2015 IEEE International Conference on》;20150612;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN105634974A (en) | 2016-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105634974B (en) | Route determining methods and device in software defined network | |
CN105049353B (en) | A kind of method and controller for business configuration routed path | |
US8819611B2 (en) | Asymmetric mesh NoC topologies | |
CN103036792B (en) | Transmitting and scheduling method for maximizing minimal equity multiple data streams | |
CN104734954B (en) | A kind of route determining methods and device for software defined network | |
CN108989122B (en) | Virtual network requests mapping method, device and realization device | |
CN107710237A (en) | Deep neural network divides on server | |
CN104683488B (en) | Streaming computing system and its dispatching method and device | |
CN106649391A (en) | Graph data processing method and apparatus | |
CN108027789A (en) | The service quality of interconnection piece with multistage arbitration | |
CN103560967A (en) | Virtual data center mapping method sensing service requirement | |
CN109587072A (en) | Distributed system overall situation speed limiting system and method | |
CN113992259B (en) | Method for constructing time slot resource expansion graph | |
WO2022012576A1 (en) | Path planning method and apparatus, path planning device, and storage medium | |
Tang et al. | The repetitive turn model for adaptive routing | |
CN105591895A (en) | Network device and method for managing network traffic | |
Glantz et al. | Algorithms for mapping parallel processes onto grid and torus architectures | |
CN104104621A (en) | Dynamic adaptive adjustment method of virtual network resources based on nonlinear dimensionality reduction | |
Smith et al. | Target assignment for robotic networks: Asymptotic performance under limited communication | |
CN105610707A (en) | Implementation method of AntNet routing algorithm in two-dimensional mesh topology network-on-chip | |
WO2018166249A1 (en) | Network service transmission method and system | |
CN108259195A (en) | The determining method and system of the coverage of anomalous event | |
Farahnakian et al. | Bi-LCQ: A low-weight clustering-based Q-learning approach for NoCs | |
CN110958192B (en) | Virtual data center resource allocation system and method based on virtual switch | |
Sahu et al. | Application mapping onto mesh-of-tree based network-on-chip using discrete particle swarm optimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200417 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 301, A building, room 3, building 301, foreshore Road, No. 310053, Binjiang District, Zhejiang, Hangzhou Patentee before: Huawei Technologies Co.,Ltd. |