CN110365588A - Data stream scheduling method, device and SDN controller - Google Patents

Data stream scheduling method, device and SDN controller Download PDF

Info

Publication number
CN110365588A
CN110365588A CN201910642679.7A CN201910642679A CN110365588A CN 110365588 A CN110365588 A CN 110365588A CN 201910642679 A CN201910642679 A CN 201910642679A CN 110365588 A CN110365588 A CN 110365588A
Authority
CN
China
Prior art keywords
path
data
priority
stream
data flow
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910642679.7A
Other languages
Chinese (zh)
Other versions
CN110365588B (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.)
New H3C Technologies Co Ltd Hefei Branch
Original Assignee
New H3C Technologies Co Ltd Hefei Branch
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 New H3C Technologies Co Ltd Hefei Branch filed Critical New H3C Technologies Co Ltd Hefei Branch
Priority to CN201910642679.7A priority Critical patent/CN110365588B/en
Publication of CN110365588A publication Critical patent/CN110365588A/en
Application granted granted Critical
Publication of CN110365588B publication Critical patent/CN110365588B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • H04L45/3065Route determination based on the nature of the carried application for real time traffic
    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • 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/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The application provides a kind of data stream scheduling method, device and SDN controller, pass through the path computing scheme of priority dynamic processing, there is no when the forward-path that can be used for forwarding data to be forwarded stream in networking, priority by treating transmitting data flow carries out assuming adjustment analysis, it is flowed into the data with existing to high priority and calculates the available forward-path that whether there is data to be forwarded stream in the case where the adjustment of walking along the street diameter, if it exists, then the first forward-path of the data flow to be removed of forwarding high priority is originally used for for data to be forwarded stream distribution.Then, when there is the second forward-path that can be used for forwarding data flow to be removed in further determining that networking, data to be forwarded stream can be forwarded by the first forward-path, data flow to be removed is forwarded by the second forward-path.In this way, can allow more data flows can reasonable layout be forwarded into networking, improve the load capacity of networking, reduce the waste of bandwidth resources.

Description

Data stream scheduling method, device and SDN controller
Technical field
This application involves fields of communication technology, control in particular to a kind of data stream scheduling method, device and SDN Device.
Background technique
It is different in the network of SDN (Software Defined Network, software defined network) controller control Its significance level may be different for a user for data streaming service.For example, user, which may want to network, can preferentially ensure certain numbers The transmission of the significant datas such as quality, such as voice communication data, videoconference data according to stream business.Meanwhile it can also tolerate certain The quality of a little data streaming services is slightly worse, such as Online Video business etc..
Based on this, SDN controller can be by being respectively set priority to different business data flows, to preferentially ensure High-priority service is directed on the more sufficient forward-path of better quality, bandwidth by important service, and allows to occupy low preferential The bandwidth resources of grade business.
In above scheme, by ensure high-priority service preferentially select forward-path right can exist it is more serious Bandwidth wastage problems.The new business data flow issued after for example, may be since crucial forward-path be by the business of high priority Data occupy, and causing to detour to the path of higher path cost value is forwarded, and influences the transmission of new business data flow.Together When, it is also possible to it will cause bandwidth resources waste.
Summary of the invention
In view of this, the application provides a kind of data stream scheduling method, device and SDN controller, to allow more data Stream can reasonable layout into networking, improve the load capacity of networking, reduce the waste of bandwidth resources.
According to the one aspect of the application, a kind of SDN controller is provided, may include one or more storage mediums and one A or multiple processors communicated with storage medium.One or more storage mediums are stored with the executable machine of processor and can hold Row instruction.When the operation of SDN controller, processor executes the machine-executable instruction, to execute following data stream schedulings Method.
According to the another aspect of the application, a kind of data stream scheduling method is provided, is applied to SDN controller, the SDN control Device processed is used to control the forwarding data flow of networking, which comprises
Obtain the demand bandwidth and the first priority of data to be forwarded stream;
Judged according to the demand bandwidth and first priority described with the presence or absence of can be used for forwarding in the networking The forward-path of data to be forwarded stream;
If there is no the forward-paths that can be used for forwarding the data to be forwarded stream in the networking, if calculated described First priority of data to be forwarded stream, which is increased to after the second priority, can be used for forwarding first turn of the data to be forwarded stream Send out path;
First forward-path is obtained for forwarding the data flow to be removed when the data to be forwarded stream, wherein institute The sum of the occupied bandwidth of data flow to be removed and the remaining bandwidth of first forward-path are stated not less than the demand bandwidth;
Calculate the second forward-path that can be used for forwarding the data flow to be removed in the networking;
When calculating the second forward-path that can be used for forwarding the data flow to be removed, pass through first forwarding road Diameter forwards the data to be forwarded stream, and forwards the data flow to be removed by second forward-path.
According to the another aspect of the application, a kind of data stream scheduling device is provided, is applied to software defined network SDN and controls Device, the SDN controller are used to control the forwarding data flow of a plurality of networking, and described device includes:
First obtains module, for obtaining the demand bandwidth and the first priority of data to be forwarded stream;
Judgment module can be used for for judging to exist in the networking according to the demand bandwidth and first priority Forward the forward-path of the data to be forwarded stream;
First computing module, if for there is no the forwarding roads that can be used for forwarding the data to be forwarded stream in the networking Diameter, if the first priority for then calculating the data to be forwarded stream be increased to after the second priority can be used for forwarding it is described wait turn Send out the first forward-path of data flow;
Second obtains module, for obtain first forward-path for when forwarding the data to be forwarded stream wait move Except data flow, wherein the sum of the occupied bandwidth of the data flow to be removed and the remaining bandwidth of first forward-path be not small In the demand bandwidth;
Second computing module can be used for forwarding the second of the data flow to be removed to forward road for calculating in the networking Diameter;
Forwarding module, for passing through when calculating the second forward-path that can be used for forwarding the data flow to be removed First forward-path forwards the data to be forwarded stream, and forwards the data to be removed by second forward-path Stream.
According to the another aspect of the application, a kind of readable storage medium storing program for executing is provided, is stored with machine on the readable storage medium storing program for executing Executable instruction can execute the data stream scheduling method of above-mentioned any embodiment when the computer program is run by processor The step of.
Based on any of the above-described aspect, the application is not deposited in networking by the path computing scheme of priority dynamic processing When can be used for forwarding the forward-path of data to be forwarded stream, the priority by treating transmitting data flow carries out assuming adjustment point Analysis is calculated in the case where the data with existing to high priority flows into the adjustment of walking along the street diameter with the presence or absence of the available of data to be forwarded stream Forward-path, and if it exists, the of the data flow to be removed of forwarding high priority is then originally used for for data to be forwarded stream distribution One forward-path.Then, when there is the second forward-path that can be used for forwarding data flow to be removed in further determining that networking, Data to be forwarded stream can be forwarded by the first forward-path, data flow to be removed is forwarded by the second forward-path.In this way, can With allow more data flows can reasonable layout be forwarded into networking, improve the load capacity of networking, reduce bandwidth The waste of resource.
Detailed description of the invention
Technical solution in ord to more clearly illustrate embodiments of the present application, below will be to needed in the embodiment attached Figure is briefly described, it should be understood that the following drawings illustrates only some embodiments of the application, therefore is not construed as pair The restriction of range for those of ordinary skill in the art without creative efforts, can also be according to this A little attached drawings obtain other relevant attached drawings.
Fig. 1 shows a kind of networking schematic diagram of business data flow;
Fig. 2 shows the flow diagrams of data stream scheduling method provided by the embodiment of the present application;
Fig. 3 shows a kind of schematic diagram of exemplary networking;
Fig. 4 shows the component structure diagram of SDN controller provided by the embodiment of the present application.
Specific embodiment
To keep the purposes, technical schemes and advantages of the embodiment of the present application clearer, below in conjunction with the embodiment of the present application In attached drawing, the technical scheme in the embodiment of the application is clearly and completely described, it should be understood that attached drawing in the application The purpose of illustration and description is only played, is not used to limit the protection scope of the application.
In addition, it will be appreciated that schematical attached drawing does not press scale.Process used herein illustrates The operation realized according to some embodiments of the embodiment of the present application.It should be understood that the operation of flow chart can be real out of order Existing, the step of context relation of logic can not be implemented with reversal order or simultaneously.In addition, those skilled in the art are at this Under the guide for applying for content, other one or more operations can be added to flow chart, one can also be removed from flow chart Or multiple operations.
In addition, described embodiments are only a part of embodiments of the present application, instead of all the embodiments.Usually exist The component of the embodiment of the present application described and illustrated in attached drawing can be arranged and be designed with a variety of different configurations herein.Cause This, is not intended to limit claimed the application's to the detailed description of the embodiments herein provided in the accompanying drawings below Range, but it is merely representative of the selected embodiment of the application.Based on embodiments herein, those skilled in the art are not being done Every other embodiment obtained under the premise of creative work out, shall fall in the protection scope of this application.
Fig. 1 shows a kind of networking schematic diagram of business data flow, may include in the networking SDN controller 100 and with Multiple forward node 200 that SDN controller 100 communicates to connect.
Wherein, SDN controller 100 can collect the Various types of data information in the networking, these data informations may include Facility information, link information, tunnel information of forward node 200 etc., and these data informations are stored by topological graph structure. Northbound interface in SDN controller 100, which can permit, is defined the business data flow and its forward-path of forwarding, therefore can To configure the attribute for needing the business data flow forwarded, such as need bandwidth range, path constraints, the priority etc. of occupancy. SDN controller 100 can also search for suitable forward-path for business data flow to be forwarded on topological graph structure, the forwarding Path needs to meet the corresponding strategies of configuration.
Wherein, a kind of brief example network topology graph structure as shown in Figure 1, multiple forward node 200 respectively with A, B, C, D, E indicate that these forward node 200 respectively constitute three forward-paths, for example, forward-path ABE, forward-path ACE And forward-path ADE, SDN controller 100 can be distributed for the data flow in networking forward-path ABE, forward-path ACE with And the wherein forward-path in forward-path ADE carries out data forwarding.
For each forward node 200, except the source node for being located at forward-path head end and positioned at the purpose of end Outside node, usually there is out-degree link and in-degree link.Out-degree link can be understood as the direct-connected chain using certain node as starting point Road, by taking Fig. 1 as an example, the out-degree link of node A is AB, AC, AD;Similarly, the out-degree link of node B is BE.In-degree link can be with It is interpreted as the direct connected link using certain node as terminal, by taking Fig. 1 as an example, node A is source node, and in-degree link is sky, node B's In-degree link is AB.Node E is purpose node, and out-degree link is then empty.
Source forward node and purpose forward node are required when forwarding each data flow in usual networking, by taking Fig. 1 as an example, If desired one is forwarded from node A to the data flow of node E, then the source forward node of the data flow is A, purpose forward node For E.
Before being illustrated to detailed technology scheme provided by the embodiments of the present application, combine Fig. 1 to this Shen first below Please involved in basic conception be illustrated.
In example network topology graph structure shown in Fig. 1, SDN controller 100 can statistics network topology graph structure The occupied bandwidth of upper all data flows and the priority of each data flow.Assuming that priority number is bigger, priority is higher, root The priority arrived according to statistics, the bandwidth occupancy of 100 available every forward-paths divided with priority of SDN controller Table.Assuming that some data flows on certain conversion link l1 occupy bandwidth resources, as shown in table 1:
The data stream priority and the bandwidth table of comparisons of 1 conversion link l of table
Assuming that the total bandwidth of conversion link l1 is 1000M, then as known from Table 1, the remaining bandwidth of conversion link l1 is 100M is denoted as unreservedBandwidth.When calculating forward-path, the data flow of high priority can occupy low priority Data flow bandwidth, then the data flow of high priority can occupied bandwidth can be indicated by following formula:
Wherein, bandwidth (f, l) be data flow f on conversion link l1 can occupied bandwidth, Pri be the data Flow the priority of f.
For example, being directed to data flow f3, since its priority is 2, greater than the priority 1 of data flow f1, f2, therefore can account for With the bandwidth of data flow f1, f2, then data flow f3 can occupied bandwidth be then 200M, and so on, arrangement can obtain following table 2:
The data stream priority and the bandwidth table of comparisons of 2 conversion link l of table
In this way, can be that data flow selects forward-path with above-mentioned table 2, that is, can be accounted in the higher data flow of priority With the bandwidth of the lower data flow of priority.By taking table 2 as an example, when the priority of certain data stream is 4, then the data flow is also Have 600M can occupied bandwidth can be allocated.
By taking table 2 as an example, it is assumed that the priority of some data flow f is 4, and demand bandwidth is 200M, passes through conversion link at this time When l1, according to table 2, since the priority of data flow f is greater than the priority of f1, f2, f3, f1, f2, f3 can be seized Bandwidth resources.But since there are also 100M for the remaining bandwidth of conversion link l1, only need to seize the bandwidth money of f1, f2 Source can meet forwarding and require, therefore the data flow to be removed for obtaining conversion link l1 is f1, f2.
Similarly, when for data flow f path computation result be include the set of paths R of at least one forward-path when, It needs to handle every forward-path in set of paths R, obtains all data streams to be removed being preempted, summarize Bandwidth shown in table 3 can be obtained and seize list:
3 bandwidth of table seizes list
Further, every forward-path in networking can be carried out priority list, obtain one containing preferential The topology diagram of grade bandwidth information, it is subsequent some data flow to be obtained by topology diagram when carrying out path computing Path computation result list, as shown in table 4:
4 path computation result list of table
Wherein, path computation resultIt indicates in current priority PnThe path R of lower acquisitionm, due in most cases The forward-path more than one being calculated, so m can be the integer more than or equal to 1, for the data of different priorities For stream, different data streams to be removed can be obtained.
Fig. 2 shows the flow diagram of data stream scheduling method provided by the embodiments of the present application, the data stream scheduling sides Method can the SDN controller 100 as shown in Fig. 1 execute.It should be appreciated that in other embodiments, the data flow of the present embodiment The sequence of dispatching method part step can not be limitation with the sequence of Fig. 2 and following specific embodiments, such as can root It is exchanged with each other according to actual needs or part steps therein also can be omitted or delete.The data stream scheduling method it is detailed Step is described below.
Step S110 obtains the demand bandwidth and the first priority of data to be forwarded stream.
In the present embodiment, when networking data to be forwarded stream, SDN controller 100 obtains the demand of the data to be forwarded stream Bandwidth and the first priority, as subsequent progress path computing to treat the foundation that transmitting data flow is forwarded.This is to be forwarded The demand bandwidth and the first priority of data flow sent out under the data to be forwarded stream before by user by the SDN controller 100 It is pre-configured with to obtain, wherein the first priority usually can be according to the data to be forwarded stream for the significance level of user demand It determines, the data to be forwarded stream is allowed rationally to occupy the forwarding resource in networking according to first priority.
Step S120, bandwidth and the first priority judge to whether there is in networking and can be used for forwarding number to be forwarded according to demand According to the forward-path of stream.If entering step S130 there is no the forward-path that can be used for forwarding data to be forwarded stream in networking.
Step S130, if after the first priority for calculating data to be forwarded stream is increased to the second priority, can be used for turning Send out the first forward-path of data to be forwarded stream.
Step S140 obtains the data flow to be removed when the first forward-path is used to forward data to be forwarded stream.
Wherein, when data flow to be removed is that first forward-path is adjusted for forwarding data to be forwarded stream, this first The data with existing stream for having occupied the fractional bandwidth resource on first forward-path removed is needed on forward-path.Data to be removed The sum of remaining bandwidth of the occupied bandwidth of stream and the first forward-path is not less than the demand bandwidth of data to be forwarded stream.
Step S150 calculates the second forward-path that can be used for forwarding data flow to be removed in networking.
Step S160 passes through the first forwarding when calculating the second forward-path that can be used for forwarding data flow to be removed Path forwards data to be forwarded stream, and forwards data flow to be removed by the second forward-path.
In addition, step S120 is directed to, if there is at least one forwarding road that can be used for forwarding data to be forwarded stream in networking Diameter can be directly forwarded by that can treat transmitting data flow with forward-path present in networking.Forwarding road can be used in presence It, can be according to existing various path computing modes, according to the first priority and demand bandwidth of data to be forwarded stream, meter when diameter Calculation one preferably can treat transmitting data flow with forward-path and be forwarded.For example, at least one forwarding road can be passed through In diameter first can the maximum forward-path of occupied bandwidth or the maximum forward-path of remaining bandwidth forward data to be forwarded stream, Further to save bandwidth resources, the load capacity of networking is improved.
Based on above-mentioned steps, there is no the forward-paths that can be used for forwarding data to be forwarded stream in networking for the present embodiment When, the priority by treating transmitting data flow carries out assuming adjustment analysis, flows into walking along the street in the data with existing to high priority Diameter calculates the available forward-path that whether there is data to be forwarded stream in the case where adjusting, and if it exists, is then the data to be forwarded Stream distribution is originally used for the first forward-path of the data flow to be removed of forwarding high priority.Then, networking is being further determined that When middle presence can be used for forwarding the second forward-path of data flow to be removed, the first forward-path can be passed through and forward number to be forwarded According to stream, data flow to be removed is forwarded by the second forward-path.In this way, can allow more data flows can reasonable layout to group It is forwarded in net, improves the load capacity of networking, reduce the waste of bandwidth resources.
It is worth noting that, in the present embodiment, the path computing mode taken, which assumes that, promotes data to be forwarded stream herein The first priority can be used for forwarding the first forward-path of data to be forwarded stream to find, then by adjusting the first forwarding road Data to be removed on diameter flow to the mode of other available forward-path (the second forward-paths), realize networking to data to be forwarded The forwarding of stream, to rationally promote the bandwidth resources utilization rate of networking.It illustrates, it is following for data to be forwarded stream Priority lifting process all assumes that the first priority for promoting data to be forwarded stream carries out path computing, but reality is forwarding When data to be forwarded stream, there is no change for the relevant parameter for the first priority which carries.
Usual networking includes greater number of forward-path, for step S120, with the presence or absence of available in judging networking When forwarding the forward-path of data to be forwarded stream, if all carrying out path judgement for every forward-path, it may generate Great calculation amount increases the calculating pressure of SDN controller 100.
For this purpose, as a kind of possible embodiment, the present embodiment can be obtained from networking first meets preset path The target forward-path of constraint condition.Wherein, which can be including to time delay, shake, packet loss etc. The constraint condition of network status data, only meet the preset path constraint condition target forward-path can just participate in it is subsequent Path computing in.
On this basis, it can be determined that each conversion link is directed to the first of data to be forwarded stream in every target forward-path Can occupied bandwidth whether be less than demand bandwidth.Wherein, since the data flow of higher priority can occupy the number of more low priority According to the use bandwidth of stream, first can occupied bandwidth be in the remaining bandwidth and the conversion link of the conversion link priority lower than the The sum of the occupied bandwidth of data flow of one priority.
In the judgment process, if every target forward-path all include at least one the first can occupied bandwidth be less than demand band Wide conversion link then determines the first priority and demand bandwidth according to currently data flow to be turned, is not present in networking available In the forward-path of forwarding data to be forwarded stream.
In addition, if first of all conversion links at least one target forward-path can occupied bandwidth be not less than to The demand bandwidth of transmitting data flow then can determine that the forward-path for existing in networking and can be used for forwarding data to be forwarded stream.
It is worth noting that in other embodiments, one can also be carried out for all forward-paths in the networking One calculates.For example, can calculate each conversion link in all forward-paths in the networking is directed to the first of data to be forwarded stream Can occupied bandwidth whether be less than demand bandwidth.If each conversion link can for the first of data to be forwarded stream in all forward-paths Occupied bandwidth is both less than demand bandwidth, then determines that there is no the forward-paths that can be used for forwarding data to be forwarded stream in networking.
Further, as a kind of possible embodiment, to avoid increasing extra calculation amount, the present embodiment can be pre- First determine that if the first priority of data to be forwarded stream is improved to the highest priority of setting, with the presence or absence of can in the networking Available forward-path of the occupied bandwidth not less than the demand bandwidth of data to be forwarded stream.
In detail, if when the first priority of data to be forwarded stream is improved to the highest priority of setting in networking still not In the presence of can occupied bandwidth not less than data to be forwarded stream demand bandwidth available forward-path, then show no matter the number to be forwarded It is arranged to how many according to the first priority of stream, which is impossible to exist can forward the data to be forwarded stream with forward-path. In this case, it is possible to which the first priority without treating transmitting data flow carries out step by step calculation networking again after assuming to improve step by step In can be used for forwarding the first forward-path of data to be forwarded stream, to avoid extra calculation amount.
In addition, if when determining that the first priority of data to be forwarded stream is improved to the highest priority of setting, the networking It is middle exist can occupied bandwidth not less than data to be forwarded stream demand bandwidth available forward-path, then it represents that data to be forwarded stream If the first priority be increased to and certainly exist available forward-path in the networking after some priority and forward the number to be forwarded According to stream.Based on this, the present embodiment can calculate the priority motion interval of data to be forwarded stream according to the link information of networking, with Assume to be promoted the first priority of the data to be forwarded stream based on the priority motion interval to find the of data to be forwarded stream One forward-path, to reduce the subsequent calculation amount for calculating the first forward-path.
As a kind of alternative example, the link information of networking may include the link band of each link in every forward-path Data with existing stream has accounted for bandwidth and priority in wide and each link.It on this basis, can be according to above-mentioned link information meter Calculate data to be forwarded stream needed for lowest priority so that if the priority of data to be forwarded stream be lowest priority when, There is the available forward-path that can be used for forwarding data to be forwarded stream in networking.
In detail, it is assumed that the out-degree link set of source forward node is flsrc(i), the in-degree link set of purpose forward node It is combined into fldst(j), the out-degree link of source forward node shares n item, and the in-degree link of purpose forward node shares m item, to be forwarded Lowest priority needed for data flow is Pl.So, lowest priority PlFollowing relationship need to be met:
Determining that lowest priority is PlIt afterwards, then can be according to lowest priority PlIt is preferential with the first of data to be forwarded stream Grade Pri obtains the priority motion interval of data to be forwarded stream.
In detail, third priority Pri+1 is determined according to the first priority P ri, the third priority is than the first priority High level-one.On this basis, according to third priority Pri+1, to lowest priority PlAnd the highest priority P of settinghReally Determine priority motion interval, the minimum value of the priority motion interval is larger in third priority and lowest priority the two Value, maximum value are the highest priority of setting.
For example, the minimum value P of the priority motion intervals=max [Pri+1, Pl], so as to obtain priority dynamic Section is [Ps, Ph]。
On the basis of foregoing description, for step S130, if data to be forwarded stream be increased to from the first priority After two priority, then it is located in the priority motion interval.
It, can be according to the path computing knot of foregoing description part after the first forward-path of data to be forwarded stream is calculated Fruit list (such as table 4) obtains in the first forward-path for forwarding the data flow to be removed when data to be forwarded stream, works as removal After the data flow to be removed, first forward-path can occupied bandwidth be not less than data to be forwarded stream demand bandwidth, thus Data to be forwarded stream can be forwarded by first forward-path.
However, being since the priority of the data flow to be removed is higher than the first priority of the data to be forwarded stream originally Guarantee the normal forwarding for not influencing on the path allocation of the data to be forwarded stream data flow of higher priority, determines first After forward-path, it is also necessary to judge in current networking with the presence or absence of the second forwarding road that can be used for forwarding data flow to be removed Diameter.If there is the second forward-path that can be used for forwarding data flow to be removed in current networking, first turn can be passed through It sends out path and forwards data to be forwarded stream, and data flow to be removed is forwarded by the second forward-path.
If there is no can be used for forwarding the second forward-path of data flow to be removed in networking, need to recalculate as Second priority of fruit data to be forwarded stream is promoted to after next priority, can be used for forwarding the of data to be forwarded stream in networking Then one forward-path obtains the number to be removed when the first forward-path after recalculating is used to forward the data to be forwarded stream According to stream, and judge in networking with the presence or absence of the second forward-path that can be used for forwarding the data flow to be removed.
If there is the second forward-path that can be used for forwarding the data flow to be removed in networking, pass through the first forward-path Data to be forwarded stream is forwarded, and the data flow to be removed is forwarded by the second forward-path.
In this way, can be treated in the case where the available forward-path of data to be forwarded stream is not present in script by assuming The mode of the priority dynamic change of transmitting data flow calculates the first forwarding road that can be used for forwarding data to be forwarded stream in networking Diameter, and reasonably adjusting for path is carried out to the data flow of high priorities other in networking, more data flows can rationally be divided Cloth is forwarded into networking, and data to be forwarded stream is not necessarily to the path forwarding by the high path cost value that detours.Meanwhile which The normal forwarding for not influencing the data flow of higher priority, improves the load capacity of networking, reduces the waste of bandwidth resources.
It is worth noting that also can choose in other possible embodiments and do not calculate the data to be forwarded stream Dynamic priority.For example, it is also possible on the basis of the first priority of the data to be forwarded stream, to the first priority carry out by Grade assumes the mode promoted, gradually calculates in networking with the presence or absence of the first forward-path that can be used for forwarding data to be forwarded stream. If it exists, then it is continued to execute according to above-mentioned steps S130;If it does not exist, then the priority of data to be forwarded stream is again assumed that into promotion It repeats the above steps after level-one, until finding the first forward-path that can be used for forwarding data to be forwarded stream.
Optionally, in order to further reduce calculation amount, there is no can be used for forwarding number to be removed in current networking According to stream the second forward-path when, the data to be forwarded flow path calculated result being calculated, the path computing can be saved Result may include when the first forward-path being calculated and the first forward-path are used to forward the data to be forwarded stream wait move Except data flow, after the priority for continuing to lift up the data to be forwarded stream later, then recalculates the data to be forwarded stream and promoted Path computation result after priority.Then, the path computation result of the path computation result after recalculating and preservation is compared It is whether consistent: if consistent, it no longer can be used for forwarding the second forward-path of data flow to be removed in calculating networking, but after The continuous priority for promoting the data to be forwarded stream;If the path computation result after recalculating includes the path computing with preservation As a result different other first forward-paths, then obtain other first forward-paths for when forwarding data to be forwarded stream to Remove data flow.
In a kind of possible embodiment, the second forward-path that can be used for forwarding data flow to be removed in networking is calculated Mode be illustrated below:
For other every target forward-paths in addition to the first forward-path, calculate in every target forward-path Each conversion link for data flow to be removed second can occupied bandwidth whether be less than the occupied bandwidth of data flow to be removed.Its In, second can occupied bandwidth be in the remaining bandwidth and the conversion link of the conversion link priority lower than data flow to be removed The sum of occupied bandwidth of data flow of priority.
If in every target forward-path the second of each conversion link can occupied bandwidth be not less than data flow to be removed The target forward-path is then determined as the second forward-path by occupied bandwidth.
In addition, in other possible embodiments, if the second of each conversion link of certain target forward-path can account for It is not less than the occupied bandwidth of data flow to be removed with bandwidth, needs further to judge the path cost value of the target forward-path The target forward-path is determined as the second forwarding if being not more than by the path cost value for being whether not more than the first forward-path Path.It is designed in this way, it is ensured that when changing the forward-path of data flow to be removed, will not influence the forwarding of higher priority The path cost value in path.
It is worth noting that when above-mentioned judging result is that can choose second there are when two or more the second forward-paths Can maximum wherein second forward-path of occupied bandwidth forward the data flow to be removed, or can also therefrom randomly choose One the second forward-path forwards the data flow to be removed, and the present embodiment is not intended to be limited in any this.
Above-described embodiment can be fully understood for the ease of those of ordinary skill in the art, below with reference to Fig. 3 to the application The data stream scheduling method that embodiment provides illustrates.Networking shown in Fig. 3 is please referred to, including A, B, C, D, E etc. Forward node respectively constitutes forward-path ABE, ACE, ADE.Wherein, the path cost value of forward-path ABE, ACE, ADE is homogeneous Deng.
As shown in figure 3, already existing in the exemplary networking wrap respectively from source node A to the data flow of destination node E Include F1, F2, F3 and F4.Wherein, the occupied bandwidth BW=50M of F1, priority P ri=2;The occupied bandwidth BW=280M of F2, Priority P ri=3;The occupied bandwidth BW=120M of F3, priority P ri=5;The occupied bandwidth BW=150M of F4, priority P ri =5.The total bandwidth of out-degree link AB, AC, AD of source node A are respectively 200M, 300M, 500M.The in-degree link of destination node E The total bandwidth of BE, CE and DE are 1000M.
Assuming that this shows that the highest priority of data flow in networking is 6, one is now sent out from source node A to destination node E's Data to be forwarded stream F, demand bandwidth BW=280M of data to be forwarded stream F, the first priority P ri=1, then this is to be forwarded The data stream scheduling process example of data flow F is as follows:
In this example, it is assumed that forward-path ABE, ACE, ADE are the target forward-path for meeting preset path constraint condition.
One, judge in the exemplary networking with the presence or absence of the forward-path that can be used for forwarding the data to be forwarded stream F.
The priority of available data flow F1, F2, F3 and F4 are all than the number to be forwarded in example according to Fig.3, The first priority according to stream F is high, therefore data to be forwarded stream F cannot occupy the bandwidth resources of data flow F1, F2, F3 and F4, It is possible thereby to be calculated conversion link AB first can occupied bandwidth be 150M, conversion link AC first can occupied bandwidth be The first of 20M, conversion link AC can occupied bandwidth be 260M, the demand bandwidth 280M of respectively less than data to be forwarded stream F.Then, The first priority for needing to treat transmitting data flow F carries out priority dynamic adjustment and is possible to turn by networking shown in Fig. 3 Send out the data to be forwarded stream.
Two, since the highest priority in networking is 6, if the priority of judgement data to be forwarded stream F is increased to 6 When, in the networking with the presence or absence of can demand bandwidth (280M) of the occupied bandwidth not less than data to be forwarded stream F available forwarding road Diameter.As can be seen from FIG. 3, if the priority of data to be forwarded stream F is increased to 6, the first of conversion link AB can occupied bandwidth For 200M, conversion link AC first can occupied bandwidth be 300M, conversion link AD first can occupied bandwidth be 500M, forwarding The remaining bandwidth of link BE, CE and DE are enough, therefore forward-path ACE and forward-path ADE are used equally for forwarding should be to Transmitting data flow F.
Three, the priority motion interval of data to be forwarded stream F is calculated.As can be seen from FIG. 3, for the out-degree chain of source node A Road, when the priority of data to be forwarded stream F is increased to 4, the bandwidth of conversion link AC is enough, as data to be forwarded stream F Priority when being increased to 6, the bandwidth of conversion link AC, AD are enough;For the in-degree link of destination node E, when this is to be forwarded When the priority of data flow F is 1, the bandwidth of conversion link AB, AC, AD are enough, therefore available when the data to be forwarded When the priority of stream F is increased to 4, the in-degree link presence of the out-degree link and destination node E of source node A meets bandwidth requirement Link namely data to be forwarded stream F needed for lowest priority Pl=4.
Next the lowest priority Ps that priority motion interval can be calculated, according to Ps=max [Pri+1, Pl] calculate, P can be obtaineds=max [2,4]=4, then the priority motion interval of data to be forwarded stream F is then [4,6].
Four, the first priority of data to be forwarded stream F is increased to 4, is calculated and can be used for forwarding data to be forwarded stream F The first forward-path be forward-path ACE, and obtain the data flow to be removed in forward-path ACE be F2.
Since the first priority of the priority ratio data to be forwarded stream F of data flow F2 to be removed is high, it is therefore desirable to judge With the presence or absence of the second forward-path that can be used for forwarding the data flow F2 to be removed in networking.But as can be seen from FIG. 3, chain is forwarded The second of road AB can occupied bandwidth be 200M, conversion link AD second can occupied bandwidth be 230M, be below data to be removed The occupied bandwidth 280M of F2 is flowed, therefore at this time in networking and there is no can be used for forwarding the second of the data flow F2 to be removed to forward Path.
Five, it can not find since the first priority of data to be forwarded stream is increased to 4 for forwarding data flow F2 to be removed The second forward-path, therefore by the current priority of data to be forwarded stream F in the priority motion interval [4,6] again Level-one is promoted, namely is promoted to 5.Then, it is calculated and can be used for forwarding the first forward-path of data to be forwarded stream F be still Data flow to be removed in forward-path ACE, forward-path ACE is still F2, identical as above-mentioned path computation result, therefore When the priority of data to be forwarded stream F is promoted to 5, still there is no can be used for forwarding the data flow F2 to be removed in networking The second forward-path.
Six, it then, since the priority of data to be forwarded stream promotes level-one to after 5 again, can not also find for forwarding The second forward-path of data flow F2 to be removed, therefore by the current priority of data to be forwarded stream F in priority dynamic area Between level-one is continued to lift up in [4,6], namely promoted to 6, first turn for can be used for forwarding data to be forwarded stream F can be calculated Hair path is forward-path ACE and forward-path ADE.Data flow to be removed in forward-path ACE is F2, the forward-path Data flow to be removed in ADE is F3 and F4, since forward-path ACE is identical as above-mentioned path computation result, is abandoned.
Then, it only needs to remove F3 since the remaining bandwidth of conversion link AD is 230M for forward-path ADE The requirement of forwarding data to be forwarded stream F can be met with one of data flow in F4.Thus, it is possible to select occupied bandwidth more Small F3 is as data flow to be removed.Since the first priority of the priority ratio data to be forwarded stream F of F3 is high, it is therefore desirable to sentence With the presence or absence of the second forward-path that can be used for forwarding the data flow F3 to be removed in disconnected networking.
As can be seen from FIG. 3, the remaining bandwidth of conversion link AB be 150M, second can occupied bandwidth be 200M, conversion link The remaining bandwidth of AC be 20M, second can occupied bandwidth be 200M, be all satisfied forward the data flow F3 to be removed requirement, and The path cost value of forward-path ABE and forward-path ACE are identical as the forward-path ADE where the data flow F3 to be removed. It is thereby possible to select the bigger forward-path ABE of remaining bandwidth is as the second forward-path for forwarding the data flow F3 to be removed, And the path cost value of forward-path where not influencing the data flow F3 to be removed.It is used as alternatively, also can choose ACE for turning The second forward-path for sending out data flow F3 to be removed.
In this way, (the first forwarding road data to be forwarded stream F can be forwarded by forward-path ADE by the above process Diameter), after the data flow F3 in forward-path ADE is removed, pass through forward-path ABE or (the second forwarding road forward-path ACE Diameter) transmitting data flow F3.
By the path computing scheme of above-mentioned priority dynamic processing it can be concluded that, originally forward-path ABE, ACE, The first of the conversion link of ADE can occupied bandwidth when being respectively less than the demand bandwidth of data to be forwarded stream F, by by data to be forwarded Flow F the first priority since 1 ing in the priority motion interval carry out dynamic change, originally be not present can forward to It is again to be forwarded for this after the priority of data to be forwarded stream F is increased to 6 in the case where the path of transmitting data flow F Data flow F distribution is originally used for the first forward-path ADE of the data flow to be removed of forwarding high priority.Then, further It determines the second the forward-path ABE or ACE for existing in networking and can be used for forwarding data flow F3 to be removed, first turn can be passed through It sends out path ADE and forwards data to be forwarded stream F, data flow F3 to be removed is forwarded by the second forward-path ABE or ACE, thus Allow more data flows can reasonable layout be forwarded into networking, improve the load capacity of networking, reduce bandwidth money The waste in source.
Fig. 4 shows the structural schematic diagram of above-mentioned SDN controller 100 provided by the embodiments of the present application, in the present embodiment, The SDN controller 100 may include storage medium 110, processor 120 and data stream scheduling device 130.
Wherein, processor 120 can be a general central processing unit (Central Processing Unit, CPU), microprocessor, application-specific integrated circuit (Application-Specific Integrated Circuit, ASIC), Or the integrated circuit that one or more programs for controlling the data stream scheduling method of above method embodiment offer execute.
Storage medium 110 can be ROM or can store the other kinds of static storage device of static information and instruction, RAM or the other kinds of dynamic memory that can store information and instruction, are also possible to the read-only storage of electric erazable programmable Device (Electrically Erasable Programmabler-Only Memory, EEPROM), CD-ROM (Compactdisc Read-Only Memory, CD-ROM) or other optical disc storages, optical disc storage (including compression optical disc, swash Optical disc, optical disc, Digital Versatile Disc, Blu-ray Disc etc.), magnetic disk storage medium or other magnetic storage apparatus or can use In carry or storage have instruction or data structure form desired program code and can by computer access it is any its His medium, but not limited to this.Storage medium 110, which can be, to be individually present, and is connected by communication bus with processor 120.It deposits Storage media 110 can also be integrated with processor.Wherein, storage medium 110, which is used to store, executes answering for application scheme With program code, such as data stream scheduling device 130 shown in Fig. 4, and execution is controlled by processor 120.Processor 120 For executing the application code stored in storage medium 110, such as data stream scheduling device 130, to execute the above method The data stream scheduling method of embodiment.
The application can carry out the division of functional module, example according to above method embodiment to data flow dispatching device 130 Such as, each functional module of each function division can be corresponded to, two or more functions can also be integrated at one It manages in module.Above-mentioned integrated module both can take the form of hardware realization, can also use the form of software function module It realizes.It should be noted that be schematical, only a kind of logical function partition to the division of module in the application, it is practical There may be another division manner when realization.For example, in the case where each function division of use correspondence each functional module, figure Data stream scheduling device 130 shown in 4 is a kind of schematic device.Wherein, data stream scheduling device 130 may include first Module 131, judgment module 132, the first computing module 133, second is obtained to obtain module 134, the second computing module 135 and turn Module 136 is sent out, the function of each functional module of the data stream scheduling device 130 is described in detail separately below.
First obtains module 131, for obtaining the demand bandwidth and the first priority of data to be forwarded stream.It is appreciated that The acquisition module 131 can be used for executing above-mentioned steps S110, and the detailed implementation about the acquisition module 131 is referred to It is above-mentioned to the related content of step S110.
Judgment module 132, judging to exist in networking for bandwidth according to demand and the first priority can be used for forwarding wait turn Send out the forward-path of data flow.It is appreciated that the first judgment module 132 can be used for executing above-mentioned steps S120, about this The detailed implementation of first judgment module 132 is referred to above-mentioned to the related content of step S120.
First computing module 133, when for the forward-path that can be used for forwarding data to be forwarded stream to be not present in networking, If the first priority for then calculating data to be forwarded stream can be used for forwarding data to be forwarded stream after being increased to the second priority First forward-path.It is appreciated that first computing module 133 can be used for executing above-mentioned steps S130, about first meter The detailed implementation of calculation module 133 is referred to above-mentioned to the related content of step S130.
Second obtains module 134, for obtaining the first forward-path for forwarding the number to be removed when data to be forwarded stream According to stream, wherein the sum of remaining bandwidth of the occupied bandwidth of data flow to be removed and the first forward-path is not less than demand bandwidth.It can To understand, which can be used for executing above-mentioned steps S140, about the detailed of the second acquisition module 1343 Implementation is referred to above-mentioned to the related content of step S140.
Second computing module 135 can be used for forwarding the second forward-path of data flow to be removed for calculating in networking.It can To understand, which can be used for executing above-mentioned steps S150, about the detailed of second computing module 135 Implementation is referred to above-mentioned to the related content of step S150.
Forwarding module 136, for passing through when calculating the second forward-path that can be used for forwarding data flow to be removed One forward-path forwards data to be forwarded stream, and forwards data flow to be removed by the second forward-path.It is appreciated that the forwarding Module 136 can be used for executing above-mentioned steps S160, and the detailed implementation about the forwarding module 136 is referred to above-mentioned right The related content of step S160.
In a kind of possible embodiment, judgment module 132, which specifically can be used for obtaining from networking, meets default road Then the target forward-path of diameter constraint condition judges that each conversion link is directed to data to be forwarded stream in every target forward-path First can occupied bandwidth whether be less than demand bandwidth, wherein first can occupied bandwidth be the conversion link remaining bandwidth with Priority is lower than the sum of the occupied bandwidth of data flow of the first priority in the conversion link.If every target forward-path all wraps Include at least one the first can occupied bandwidth be less than the conversion link of demand bandwidth, then determine in networking there is no can be used for forwarding to The forward-path of transmitting data flow.If first of all conversion links at least one target forward-path can occupied bandwidth it is equal Not less than demand bandwidth, then determine there is the forward-path that can be used for forwarding data to be forwarded stream in networking.
In a kind of possible embodiment, if to improve the highest to setting excellent for the first priority of data to be forwarded stream First grade, judgment module 132 specifically can be also used for judging in networking with the presence or absence of available forward-path, wherein can use forwarding road Every conversion link on diameter for data to be forwarded stream first can occupied bandwidth be not less than the demand band of data to be forwarded stream Width, first can number of the occupied bandwidth for priority in the remaining bandwidth and the conversion link of the conversion link lower than the first priority According to the occupied bandwidth of stream.Forward-path can be used if it exists, then the first computing module 133 is further according to the link information meter of networking Calculate the priority motion interval of data to be forwarded stream, wherein the second priority bit is in the priority motion interval.
In a kind of possible embodiment, the first computing module 133 can specifically calculate to be forwarded in the following manner The priority motion interval of data flow:
Firstly, according to having number in the link bandwidth of each link and each of the links on every target forward-path in networking Bandwidth and priority are accounted for according to stream, lowest priority needed for calculating data to be forwarded stream, so that if data to be forwarded When the priority of stream is lowest priority, there is the available forward-path that can be used for forwarding data to be forwarded stream in networking.
Then, third priority is determined according to the first priority, third priority level-one higher than the first priority.
Finally, determining priority dynamic area according to the highest priority of third priority, lowest priority and setting Between, the minimum value of the priority motion interval is third priority and the larger value, maximum value in lowest priority the two are to set Fixed highest priority.
In a kind of possible embodiment, if it is determined that there is no can be used for forwarding the second of data flow to be removed in networking Forward-path, if the second priority that then the first computing module 133 further recalculates data to be forwarded stream is promoted under It can be used for forwarding the first forward-path of data to be forwarded stream after one priority, in networking.Second acquisition module 134 can also obtain Take the first forward-path after recalculating for forwarding the data flow to be removed when the data to be forwarded stream.Second computing module 135 can also calculate the second forward-path that can be used for forwarding the data flow to be removed in networking.
In a kind of possible embodiment, if there is at least one turn for can be used for forwarding data to be forwarded stream in networking Path is sent out, forwarding module 136 can also forward to be forwarded by any one forward-path at least one forward-path Data flow.
In a kind of possible embodiment, the second computing module 135 specifically can be used for for except the first forward-path Except other every target forward-paths, calculate every target forward-path in each conversion link be directed to data flow to be removed Second can occupied bandwidth whether be less than the occupied bandwidth of data flow to be removed.Wherein, second can occupied bandwidth be the forwarding chain In the remaining bandwidth on road and the conversion link priority lower than the data flow of the priority of data flow to be removed occupied bandwidth it With.If in every target forward-path the second of each conversion link can occupied bandwidth be not less than the occupancy band of data flow to be removed The target forward-path is then determined as the second forward-path by width.
In alternatively possible embodiment, the second computing module 135 specifically can also be for except the first forward-path Except other every target forward-paths, calculate every target forward-path in each conversion link be directed to data flow to be removed Second can occupied bandwidth whether be less than the occupied bandwidth of data flow to be removed.Wherein, second can occupied bandwidth be the forwarding chain In the remaining bandwidth on road and the conversion link priority lower than the data flow of the priority of data flow to be removed occupied bandwidth it With.If the second of each conversion link of every target forward-path can occupied bandwidth be not less than the occupancy band of data flow to be removed Width, then judge whether the path cost value of the target forward-path is not more than the path cost value of the first forward-path, if less In the target forward-path is then determined as the second forward-path.
Since data stream scheduling device 130 provided by the embodiments of the present application is the another kind of data stream scheduling method above-mentioned Way of realization, and data stream scheduling device 130 can be used for executing method provided by embodiment above-mentioned, therefore it can be obtained Technical effect can refer to preceding method embodiment, details are not described herein.
Further, based on the same inventive concept, the embodiment of the present application also provides a kind of computer readable storage medium, It is stored with computer program on the computer readable storage medium, which executes the above method when being run by processor The step of data stream scheduling method that embodiment provides.
Specifically, which can be general storage medium, such as mobile disk, hard disk, on the storage medium Computer program when being run, be able to carry out above-mentioned data stream scheduling method.
The embodiment of the present application be referring to according to the method for the embodiment of the present application, equipment (the SDN controller 100 of such as Fig. 4) and The flowchart and/or the block diagram of computer program product describes.It should be understood that flow chart can be realized by computer program instructions And/or the knot of the process and/or box in each flow and/or block and flowchart and/or the block diagram in block diagram It closes.These computer program instructions be can provide to general purpose computer, special purpose computer, Embedded Processor or other programmable numbers According to the processor of processing equipment to generate a machine, so that passing through the processing of computer or other programmable data processing devices The instruction that device executes generates for realizing in one box of one or more flows of the flowchart and/or block diagram or multiple sides The device for the function of being specified in frame.
Although the application is described in conjunction with each embodiment herein, however, implementing the application claimed In the process, those skilled in the art are by checking the attached drawing, disclosure and the appended claims, it will be appreciated that and it is real Other variations of the existing open embodiment.In the claims, one word of " comprising " is not excluded for other components or step, "a" or "an" is not excluded for multiple situations.Single processor or other units may be implemented to enumerate in claim several Item function.Mutually different has been recited in mutually different dependent certain measures, it is not intended that these measures cannot group close To generate good effect.
The above, the only various embodiments of the application, but the protection scope of the application is not limited thereto, it is any Those familiar with the art within the technical scope of the present application, can easily think of the change or the replacement, and should all contain Lid is within the scope of protection of this application.Therefore, the protection scope of the application shall be subject to the protection scope of the claim.

Claims (10)

1. a kind of data stream scheduling method, which is characterized in that be applied to SDN controller, the SDN controller is for controlling networking Forwarding data flow, which comprises
Obtain the demand bandwidth and the first priority of data to be forwarded stream;
Judged according to the demand bandwidth and first priority described wait turn with the presence or absence of can be used for forwarding in the networking Send out the forward-path of data flow;
If there is no the forward-paths that can be used for forwarding the data to be forwarded stream in the networking, if calculated described wait turn First priority of hair data flow can be used for forwarding the first of the data to be forwarded stream to forward road after being increased to the second priority Diameter;
First forward-path is obtained for the data flow to be removed when forwarding the data to be forwarded stream, wherein it is described to It removes the sum of the occupied bandwidth of data flow and the remaining bandwidth of first forward-path and is not less than the demand bandwidth;
Calculate the second forward-path that can be used for forwarding the data flow to be removed in the networking;
When calculating the second forward-path that can be used for forwarding the data flow to be removed, turned by first forward-path It sends out data to be forwarded stream described, and passes through second forward-path and forward the data flow to be removed.
2. data stream scheduling method according to claim 1, which is characterized in that described according to the demand bandwidth and described First priority judges in the networking with the presence or absence of the forward-path that can be used for forwarding the data to be forwarded stream, comprising:
The target forward-path for meeting preset path constraint condition is obtained from the networking;
Judge that each conversion link can occupied bandwidth for the first of the data to be forwarded stream in every target forward-path Whether be less than the demand bandwidth, wherein described first can occupied bandwidth be the conversion link remaining bandwidth and the forwarding chain Priority is lower than the sum of the occupied bandwidth of data flow of first priority in road;
If every target forward-path all include at least one the first can occupied bandwidth be less than the forwarding of the demand bandwidth Link then determines that there is no the forward-paths that can be used for forwarding the data to be forwarded stream in the networking;
If first of all conversion links at least one target forward-path can occupied bandwidth be not less than the demand band Width then determines there is the forward-path that can be used for forwarding the data to be forwarded stream in the networking.
3. data stream scheduling method according to claim 2, which is characterized in that described calculate can be used for turning in the networking The second forward-path for sending out data flow to be removed described, comprising:
For other every target forward-paths in addition to first forward-path, calculate in every target forward-path Each conversion link for the data flow to be removed second can occupied bandwidth whether be less than the occupancy of the data flow to be removed Bandwidth;Wherein, described second can occupied bandwidth be the conversion link remaining bandwidth and the conversion link in priority be lower than institute State the sum of the occupied bandwidth of data flow of priority of data flow to be removed;
If in every target forward-path the second of each conversion link can occupied bandwidth be not less than the data flow to be removed The target forward-path is then determined as second forward-path by occupied bandwidth.
4. data stream scheduling method according to claim 2, which is characterized in that described calculate can be used for turning in the networking The second forward-path for sending out data flow to be removed described, comprising:
For other every target forward-paths in addition to first forward-path, calculate in every target forward-path Each conversion link for the data flow to be removed second can occupied bandwidth whether be less than the occupancy of the data flow to be removed Bandwidth;Wherein, described second can occupied bandwidth be the conversion link remaining bandwidth and the conversion link in priority be lower than institute State the sum of the occupied bandwidth of data flow of priority of data flow to be removed;
If the second of each conversion link of every target forward-path can occupied bandwidth be not less than the data flow to be removed Occupied bandwidth, then judge whether the path cost value of the target forward-path is not more than the path cost of first forward-path Value, if being not more than, is determined as second forward-path for the target forward-path.
5. data stream scheduling method according to claim 1, which is characterized in that described according to the demand bandwidth and described It is described before first priority judges to whether there is the forward-path that can be used for forwarding the data to be forwarded stream in the networking Method further include:
If the first priority of the data to be forwarded stream is improved to the highest priority of setting, judge in the networking whether In the presence of forward-path can be used, wherein it is described can be with every conversion link on forward-path for the data to be forwarded stream First can occupied bandwidth be not less than the data to be forwarded stream demand bandwidth, described first can occupied bandwidth be the conversion link Remaining bandwidth and the conversion link in priority lower than first priority data flow occupied bandwidth;
Forward-path can be used if it exists, then the priority for calculating the data to be forwarded stream according to the link information of the networking is dynamic State section, wherein second priority bit is in the priority motion interval.
6. data stream scheduling method according to claim 5, which is characterized in that the link information according to the networking Calculate the priority motion interval of the data to be forwarded stream, comprising:
According to data with existing stream in the link bandwidth of each link and each of the links on every target forward-path in the networking Accounted for bandwidth and priority, lowest priority needed for calculating the data to be forwarded stream, so that if the number to be forwarded Priority according to stream is the lowest priority, exists in the networking and can be used for forwarding the available of the data to be forwarded stream to turn Send out path;
Third priority is determined according to first priority, third priority level-one higher than the first priority;
The priority is determined according to the highest priority of the third priority, the lowest priority and the setting Motion interval, the minimum value of the priority motion interval are larger in the third priority and described lowest priority the two Value, the highest priority that maximum value is the setting.
7. data stream scheduling method described in -6 any one according to claim 1, which is characterized in that the method also includes:
If it is determined that then being recalculated in the networking there is no the second forward-path that can be used for forwarding the data flow to be removed If the second priority of the data to be forwarded stream promoted to after next priority, can be used for forwarding in the networking it is described to First forward-path of transmitting data flow;
Obtain the data flow to be removed when the first forward-path after recalculating is used to forward the data to be forwarded stream;
Calculate the second forward-path that can be used for forwarding the data flow to be removed in the networking;
If there is the second forward-path that can be used for forwarding the data flow to be removed in the networking, forwarded by described first Path forwards the data to be forwarded stream, and forwards the data flow to be removed by second forward-path.
8. data stream scheduling method described in any one of -6 according to claim 1, which is characterized in that the method is also wrapped It includes:
If there is at least one forward-path that can be used for forwarding the data to be forwarded stream in the networking, at least by this Any one forward-path in one forward-path forwards the data to be forwarded stream.
9. a kind of data stream scheduling device, which is characterized in that be applied to software defined network SDN controller, the SDN controller For controlling the forwarding data flow of a plurality of networking, described device includes:
First obtains module, for obtaining the demand bandwidth and the first priority of data to be forwarded stream;
Judgment module can be used for forwarding for judging to exist in the networking according to the demand bandwidth and first priority The forward-path of the data to be forwarded stream;
First computing module, for there is no the forward-paths that can be used for forwarding the data to be forwarded stream in the networking When, if the first priority for calculating the data to be forwarded stream be increased to after the second priority can be used for forwarding it is described to be forwarded First forward-path of data flow;
Second obtains module, for obtaining first forward-path for forwarding the number to be removed when the data to be forwarded stream According to stream, wherein the sum of remaining bandwidth of the occupied bandwidth of the data flow to be removed and first forward-path is not less than institute State demand bandwidth;
Second computing module can be used for forwarding the second forward-path of the data flow to be removed for calculating in the networking;
Forwarding module, for when calculating the second forward-path that can be used for forwarding the data flow to be removed, by described First forward-path forwards the data to be forwarded stream, and forwards the data flow to be removed by second forward-path.
10. a kind of SDN controller, which is characterized in that the SDN controller includes machine readable storage medium and processor, institute It states machine readable storage medium and is stored with machine-executable instruction, the processor makes when executing the machine-executable instruction The SDN controller realizes data stream scheduling method described in any one of claim 1-8.
CN201910642679.7A 2019-07-16 2019-07-16 Data flow scheduling method and device and SDN controller Active CN110365588B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910642679.7A CN110365588B (en) 2019-07-16 2019-07-16 Data flow scheduling method and device and SDN controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910642679.7A CN110365588B (en) 2019-07-16 2019-07-16 Data flow scheduling method and device and SDN controller

Publications (2)

Publication Number Publication Date
CN110365588A true CN110365588A (en) 2019-10-22
CN110365588B CN110365588B (en) 2021-11-09

Family

ID=68219740

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910642679.7A Active CN110365588B (en) 2019-07-16 2019-07-16 Data flow scheduling method and device and SDN controller

Country Status (1)

Country Link
CN (1) CN110365588B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116232997A (en) * 2023-02-10 2023-06-06 中国联合网络通信集团有限公司 Data forwarding method, device and storage medium
CN117081984A (en) * 2023-09-27 2023-11-17 新华三技术有限公司 Route adjustment method and device and electronic equipment

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6449702B1 (en) * 1999-12-30 2002-09-10 Intel Corporation Memory bandwidth utilization through multiple priority request policy for isochronous data streams
CN101127689A (en) * 2006-08-15 2008-02-20 中国电信股份有限公司 Method for minimizing priority seizing cost
CN101227747A (en) * 2008-02-04 2008-07-23 华为技术有限公司 System, base station and method for allocating demodulation resource
CN102333350A (en) * 2011-10-19 2012-01-25 华为技术有限公司 Method, device and system for improving experiences of low-traffic user
CN103823780A (en) * 2014-03-03 2014-05-28 东南大学 Real-time field bus controlling and dispatching method
CN103841646A (en) * 2012-11-23 2014-06-04 北京信威通信技术股份有限公司 Wireless resource allocation method capable of ensuring service quality
CN106559273A (en) * 2017-01-19 2017-04-05 中国人民解放军国防科学技术大学 Towards the self-adaptive service quality priority dispatching method of Time Triggered Ethernet
CN108199961A (en) * 2018-01-17 2018-06-22 新华三技术有限公司 A kind of flow transmission control method and device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6449702B1 (en) * 1999-12-30 2002-09-10 Intel Corporation Memory bandwidth utilization through multiple priority request policy for isochronous data streams
CN101127689A (en) * 2006-08-15 2008-02-20 中国电信股份有限公司 Method for minimizing priority seizing cost
CN101227747A (en) * 2008-02-04 2008-07-23 华为技术有限公司 System, base station and method for allocating demodulation resource
CN102333350A (en) * 2011-10-19 2012-01-25 华为技术有限公司 Method, device and system for improving experiences of low-traffic user
CN103841646A (en) * 2012-11-23 2014-06-04 北京信威通信技术股份有限公司 Wireless resource allocation method capable of ensuring service quality
CN103823780A (en) * 2014-03-03 2014-05-28 东南大学 Real-time field bus controlling and dispatching method
CN106559273A (en) * 2017-01-19 2017-04-05 中国人民解放军国防科学技术大学 Towards the self-adaptive service quality priority dispatching method of Time Triggered Ethernet
CN108199961A (en) * 2018-01-17 2018-06-22 新华三技术有限公司 A kind of flow transmission control method and device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116232997A (en) * 2023-02-10 2023-06-06 中国联合网络通信集团有限公司 Data forwarding method, device and storage medium
CN116232997B (en) * 2023-02-10 2024-04-09 中国联合网络通信集团有限公司 Data forwarding method, device and storage medium
CN117081984A (en) * 2023-09-27 2023-11-17 新华三技术有限公司 Route adjustment method and device and electronic equipment
CN117081984B (en) * 2023-09-27 2024-03-26 新华三技术有限公司 Route adjustment method and device and electronic equipment

Also Published As

Publication number Publication date
CN110365588B (en) 2021-11-09

Similar Documents

Publication Publication Date Title
US10680928B2 (en) Multi-stream transmission method and device in SDN network
Maheshwari et al. Scalability and performance evaluation of edge cloud systems for latency constrained applications
US9705783B2 (en) Techniques for end-to-end network bandwidth optimization using software defined networking
US7898953B2 (en) Deficit and group round robin scheduling for efficient network traffic management
CN104396187B (en) The method and device that Bandwidth guaranteed and work are kept
US20150188837A1 (en) Hierarchical Software-Defined Network Traffic Engineering Controller
CN109614215B (en) Deep reinforcement learning-based stream scheduling method, device, equipment and medium
CN107332766B (en) Method for improving network throughput based on software defined network flow scheduling
JP2001077848A (en) Band allocating method
CN113032096B (en) SFC mapping method based on node importance and user demand dual perception
CN101119308A (en) Routing device and method of wireless mobile self-organizing network of dynamic assurance service quality
CN110365588A (en) Data stream scheduling method, device and SDN controller
CN109617810A (en) Data transmission method and device
CN114071582A (en) Service chain deployment method and device for cloud-edge collaborative Internet of things
CN112422427B (en) Traffic engineering implementation method, device and controller based on segmented routing
Yu et al. Deterministic latency/jitter-aware service function chaining over beyond 5G edge fabric
CN113300861B (en) Network slice configuration method, device and storage medium
CN110535705B (en) Service function chain construction method capable of adapting to user time delay requirement
WO2023019604A1 (en) Minimum network energy consumption optimization method and system based on traffic grooming
CN111211996A (en) Flow scheduling method
CN116684349A (en) Method, system, electronic equipment and storage medium for distributing computing power network resources
CN113965616B (en) SFC mapping method based on VNF resource change matrix
CN108156078B (en) Flow table construction method and system
CN115883490A (en) SDN-based distributed computing and communication integrated scheduling method and related components
Demirci et al. Fair allocation of substrate resources among multiple overlay networks

Legal Events

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