CN105634974B - Route determining methods and device in software defined network - Google Patents

Route determining methods and device in software defined network Download PDF

Info

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
Application number
CN201511033267.1A
Other languages
Chinese (zh)
Other versions
CN105634974A (en
Inventor
毛坤
黄勇
叶涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Hangzhou Huawei Digital Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Huawei Digital Technologies Co Ltd filed Critical Hangzhou Huawei Digital Technologies Co Ltd
Priority to CN201511033267.1A priority Critical patent/CN105634974B/en
Publication of CN105634974A publication Critical patent/CN105634974A/en
Application granted granted Critical
Publication of CN105634974B publication Critical patent/CN105634974B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest 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

Route determining methods and device in software defined network
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.
CN201511033267.1A 2015-12-31 2015-12-31 Route determining methods and device in software defined network Active CN105634974B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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.