Dynamic stream scheduling method and system based on software defined network
Technical field
The present invention relates to a kind of dynamic stream scheduling method based on software defined network and system, belong to computer network neck
Domain.
Background technology
Network traffics remain the growth of exponential form, the deployment to existing network along with the high speed development of Internet technology
Pressure is added with maintenance.Especially the streaming media service of big data quantity, the mad of VOD service increase to network performance
Propose higher requirement.Continual and steady flow proportion is incrementally increased, existing network it is poorly efficient, in this case, lifting
Network performance, increase link utilization, raising data transmission credibility, quickening flow forward efficiency turn into network urgently to be resolved hurrily
Problem.
IETF proposes the solution-traffic engineering of oneself for the problem.Traffic engineering is used as research computer network
The main stream approach of network congestion problems, its main flow is:Flow analysis, modeling, strategy scheduling, so traffic engineering is often most normal
Occur in the form of flow scheduling.Its core concept is to solve network congestion, lifts bandwidth availability ratio, and accomplish as far as possible
Internet architecture is optimized.It carries out evaluating and optimizing for correlation for the performance of internet, to lift link utilization as mesh
Mark, optimizes the configuration of network forwarding equipment, the problems for finally avoiding the preceding paragraph from proposing.
For flow scheduling, it is concentrated mainly on using IP virtualized nature legacy network near Internet to its solution party
Case is studied.Legacy network does not possess detection the whole network status information in real time, causes network flow when solving traffic engineering problem
Amount can not be transmitted at the moment on optimal path, i.e., can not be according to real-time link state change forwarding strategy.
Realize that flow scheduling makes current main flow using multiple label switching technology MPLS is one of solution.
The routing configuration of MPLS network includes static routing, strategy forwarding, three kinds of manual configuration.Most common of which is static routing,
Difficulty is less to be used because webmaster person works measure and configured for strategy forwarding, manual configuration method.And institute in the network
Some routing configurations are generally static state, limited for forwarding unit if being also required to be coordinated between router using dynamic configuration
Mininet still will not only be lifted so but to network performance in a wide range of forwarding unit using the method, be caused on the contrary
Very big delay.
Because the forwarding unit control logic and data forwarding under distributed structure/architecture are focused on one, can not be to whole
Network carries out unified management and control.In this case, unified to the Link State of whole network can not obtain first, so for
The health status in control whole network path is unfavorable, if for example, the bandwidth availability ratio almost saturation in the network path 2 in Fig. 1,
And path 1 rarely has flow process, at this moment legacy network has occurred as soon as problem, because obvious optimal path at this moment is path 1,
But because legacy network can not go to change corresponding forwarding strategy according to real-time Link State, cause the poorly efficient of Internet resources
Rate is utilized, and has run counter to the original intention of traffic engineering.
And currently available technology is also in the connection for how making packet realize equipment in software defined network, efficient
Enough liftings are not obtained in property.
The content of the invention
It is an object of the invention to provide a kind of dynamic stream scheduling method based on software defined network, based on real-time link
State formulates All Policies, different from the manual configuration of legacy network, it is ensured that the real-time and validity of policy development, solves
Legacy network solve traffic engineering problem when, do not possess in real time detection the whole network status information, cause network traffics can not when
Be engraved on optimal path and transmit, i.e., can not be according to the problem of real-time link state change forwarding strategy.
The present invention technical solution be:
A kind of dynamic stream scheduling method based on software defined network,
The parsing of flow is carried out by the flow information uploaded to interchanger, flow identification diversity module is pressed to discharge pattern
Classified according to priority;
Call statistics management module to obtain switch ports themselves information, calculate the connecting link of interchanger, and link is believed
Breath passes to Topology Management module;
Call Topology Management module to obtain the feasible path of flux and flow direction, calculate the real-time status system of feasible path link
Count information;
These link attributes are analyzed, weight of the path in integrally selection is converted into, is made most by the weight
Excellent scheduling strategy, and carry out policy distribution.
Further, unidentified to interchanger to report flow to carry out discharge pattern identification, flow identification diversity module is first
First the protocol information that packet in flow is carried is extracted, then existing discharge pattern table in inquiry system, last essence
Determine bit traffic type.
Further, Topology Management module is by periodically traveling through all of the port of interchanger, and sends link detection
Bag, the link structure for detecting physical switches network, the link information of acquisition is by calculating network topology.
Further, the real time status information and configuration information of interchanger are obtained, and these information are subjected to secondary operation,
Link weight is obtained;
It is combined comprising link information according to the path that feasible path computing module is calculated, outbound path is just calculated
Status information.
Further, the parameter provided with Link State statistical module is calculated using feasible path to be evaluated and tested;According to
Linkage length, the different weights of link utilization are calculated, and result of calculation carried out into sort descending, result value it is maximum i.e.
For optimal flux transmission path.
Further, the optimal path drawn according to optimal path computation module, with reference to actual physics network, statistics and road
The related switching equipment in footpath, issuing for forwarding strategy is carried out for different switching equipment;
Specially:
Obtain after optimal path, call statistics management module, obtain related link information, obtained in Topology Management module
Related exchange machine information, according to the data Layer identity map actual physical device of interchanger, device management module determines interchanger
Network connection port number, and determine distributing policy port, specific aim editor's flow table, Protocol Plug management module carries out message envelope
After dress, forwarding strategy is issued.
A kind of dynamic stream scheduling system based on software defined network, including network control layer, scheduling strategy layer, interface
Layer,
Network control layer:Including Protocol Plug manager, equipment control, Topology Management, statistical management, there is provided management clothes
Business, makes network normal communication;
Scheduling strategy layer:Including flow quantity intelligent identification classification, feasible path calculating, link state analysis, optimal path meter
Calculate, scheduling strategy is formulated, be specially:
Flow quantity intelligent identification classification:Deep analysis is carried out to the packet that Protocol Plug management module is parsed, its class is determined
Type, service is provided for upper layer module;
Feasible path is calculated:Passage path computational algorithm calculates the feasible path of outflow in a network;
Link state analysis:The state of each of the links in path is analyzed according to the feasible path of flow, including chain
The information such as road bandwidth, link throughput, link utilization;
Optimal path computation:Based on feasible path and Link State, optimal road is calculated according to optimal path algorithm
Footpath;
Scheduling decision:Optimal path according to calculating is scheduled to flow;
Interface layer is the interface that extraneous flowing of access dispatches system.
Further, Protocol Plug is managed:A variety of different procotols are supported by Plugin Mechanism, are inserted by agreement
Part provides link control and data Packet Control Function to upper strata.Each agreement that the module is used to be loaded into registration upon actuation is inserted
Part, is decoded or encoded according to protocol type when receiving or sending message using different Protocol Plugs to message;
Equipment control:Terminal device in network is managed, includes configuration information, the status information of storage device;
Topology Management:Calculate topological structure and safeguard topology information;
Statistical management:Start needs to initialize the resource as stored and gathering needs that statistical module needs after the module,
Statistical fractals are provided to other modules.
Further, when the packet for entering interchanger can not be matched, data envelope is mounted in by interchanger
Controller is sent in PacketIn message;
Protocol analysis is carried out to it first after southbound interface protocol message is received, discharge pattern identification is determined that it is
After message, its data data segment will be parsed, this section storage is True Data package informatin;
Controller will be parsed to packet, determine type of data packet, and discharge pattern is classified.
Further, interface layer is by the access tool of local method call procedure-oriented, or by meeting REST frameworks
The access tool of the object-oriented of style.
The beneficial effects of the invention are as follows:Inventive algorithm improves network link utilization rate, balanced to link bandwidth negative
Carry, packet transmission time can be saved.The forwarding strategy of the present invention is according to flow attribution and the progress of real-time link circuit condition
Formulate.Discharge pattern is classified according to priority by flow detection diversity module, calculate the flow can walking along the street
Footpath, obtains the real-time status statistical information of feasible path link.These link attributes are analyzed, path are converted into whole
Weight in body selection, optimal flux and flow direction is determined by the weight.In this process, the formulation of All Policies is all base
In real-time Link State, different from the manual configuration of legacy network, it is ensured that the real-time and validity of policy development.
Brief description of the drawings
Fig. 1 is the MPLS network figure for starting traffic engineering.
Fig. 2 is the schematic flow sheet for the datum plane forwarding that embodiment software-oriented defines network.
Fig. 3 is the overall structure diagram of embodiment system.
Fig. 4 is scheme total algorithm analysis chart.
Fig. 5 is embodiment system overall information interaction schematic diagram.
Fig. 6 is the crucial process chart of hard core control module.
Fig. 7 is the crucial process chart of Topology Management module.
Fig. 8 is flow quantity intelligent identification diversity module flow chart.
Fig. 9 is Link State statistical flowsheet figure.
Figure 10 is optimal path computation flow chart.
Figure 11 is experiment test topological diagram.
Figure 12 is that the running situation of embodiment and legacy network simulates the optimal path figure at initial stage.
Figure 13 is embodiment and optimal path figure of the legacy network after handling capacity reaches certain threshold value.
Figure 14 is the throughput ratio relatively figure of embodiment and legacy network.
Figure 15 is that embodiment is compared figure with the bandwidth availability ratio of legacy network.
Embodiment
The preferred embodiment that the invention will now be described in detail with reference to the accompanying drawings.
Embodiment premise based on software defined network, the phase of flow scheduling is formulated using the characteristic of software defined network
Close algorithm.Strategy described by the algorithm is embodied in flow scheduling system end, is used as the commanding officer of whole network.
Embodiment is realized to flow in the case where ensureing network proper communication by deep packet analysis protocol matching algorithm
Accurate matching, and according to traffic characteristic to flow carry out priority classification;Realized by feasible path parser end-to-end
Comprehensive grasp of feasible path;Real-time update is carried out to link-state information, the whole network chain is calculated using link information parser
The congestion condition on road;With feasible path, link-state information etc. for parameter, realize optimal path really by optimal path algorithm
It is vertical;Issued finally by scheduling decision algorithm implementation strategy, it is ensured that the forwarding strategy of formulation meets under real-time link state status
Optimal path, as shown in Figure 2.
When OpenFlow interchangers can not be matched on the result of flow or the flow originally in a switch is
Flow scheduling system is transmitted to, this is that interchanger will give two kinds of flow scheduling system comprising flow information PacketIn packets
Mode.
Embodiment using the overall arrangement of software defined network characteristic, when flow information is passed through PacketIn by interchanger
When message is uploaded to flow scheduling system, system can carry out discharge pattern identification to it.Identified flow is directed to
Property traffic grooming policy development, strategy determine after implemented correlation forwarding unit on, forwarding unit here refers to
Interchanger based on software defined network.
It is not that can only be directed to one of interchanger that the system, which issues forwarding strategy, and it can determine the SDN nets of its administration
The forwarding strategy of the interchanger of each in network.These interchangers can be under offline mode by static forwarding table, but more
It is to go configuration by flow scheduling system, efficient automatic phasing is closed interchanger and carries out forwarding strategy configuration, this foot by the system
To embody the odds for effectiveness in terms of its dynamic configuration policy.
The detailed construction of embodiment system is as shown in Figure 3.It is broadly divided into three parts, respectively base control layer, scheduling
Strategic layer, interface layer, physical equipment are the environment of the system operation.
The function of base control layer is to provide some basic management services, it is ensured that the proper communication of network.The layer is main
Including Protocol Plug manager, equipment control, Topology Management, statistical management.Wherein:
Protocol Plug is managed:A variety of different procotols are supported by Plugin Mechanism, by Protocol Plug to upper strata
Link control and data Packet Control Function are provided.The module is used for each Protocol Plug for being loaded into registration upon actuation, is receiving
Or message is decoded or encoded using different Protocol Plugs according to protocol type when sending message;
Equipment control:The terminal device such as interchanger, main frame in access SDN is managed, in the controller for
Each interchanger one interchanger example of establishment, the status information of record interchanger, port (type, state, mode of operation,
Amount of bandwidth etc.), and maintain the state between this interchanger example and physical switches to connect, on the various influence networks of appearance
Topological event (such as interchanger is offline, port down etc.) is quickly timely responded to.
Topology Management:It is mainly used in the link information between all physical switches in management and control whole network.Interchanger connects
It is connected to after controller, its all port information included is reported to physical switches management module.Physical network topology is managed
The all of the port of interchanger is traveled through, and sends link detection bag, the topological link structure for detecting physical switches network.When
When thering is the new interchanger to be added in network, it can add it in switch queue, and triggering sends LLDP messages immediately, surveys
Measure the annexation of itself and other interchangers.In addition, be exactly periodically to travel through all interchangers to send LLDP messages, even if with
Reflect the change in topology of physical network into flow scheduling system.In addition, when physical switches and controller are disconnected
When, it is necessary to be changed accordingly physical network topology.
Statistical management:Start needs to initialize the resource as stored and gathering needs that statistical module needs after the module,
Statistical fractals are provided to other modules.
Hard core control:The module is the core of base control module and scheduling strategy layer, and the OF of consultative management plug-in unit is disappeared
Breath converts the event that other modules are used to monitor, and maincenter is changed as the event of flow scheduling system.
Scheduling strategy layer is the core of the system, carries the policy development of whole traffic engineering solution.Should
Layer mainly includes flow classification, feasible path calculating, link state analysis, optimal path computation, scheduling strategy formulation.Wherein:
1) flow quantity intelligent identification classification
Due to there is the abundant flow of protocol type in network, the frequency of use of different types of flow user is also different.
This problem is classified according to the analysis result of network data to discharge pattern by user's frequency of use, and formulates related excellent
First level, deep analysis is carried out to the packet that Protocol Plug management module is parsed, and determines its type, and be mapped as corresponding preferential
Level, service is provided for upper layer module.
2) feasible path is calculated
After traffic prioritization is determined, end-to-end specifying information is determined according to flow, it is logical according to source and the information of destination
Cross path computation algorithm and calculate the feasible path of outflow in a network;
3) link state analysis
The state of each of the links in path is analyzed according to the feasible path of flow, including link bandwidth, link are gulped down
The information such as the amount of telling, link utilization;
4) optimal path computation
Based on feasible path and Link State, optimal path is calculated according to optimal path algorithm.
5) scheduling decision
Optimal path according to calculating is scheduled to flow.
Interface layer:The interface of system is dispatched for extraneous flowing of access, can be by local method call, RPC etc. towards mistake
The access tool of journey, also can be by the access tool of the object-oriented for meeting REST framework styles.Use the framework for meeting REST
Style, can effectively utilize URL general-purpose interfaces as defined in http protocol, be easy to network-caching, local cache, proxy server etc.
The multiplexing of technology.REST emphasis be using resource as core, and URL can be competent at completely this work, all Internet resources
Positioning work undertaken by URL.As the maincenter of whole resource, URL definition and coordination are particularly important, and are not only needed
It is simple in construction, and level is also clearly demarcated.From the angle of user, URL definition is it is expected that realize quick operating mesh
's.
As shown in figure 4, being the total algorithm flow of the system.After system starts startup, load-on module, each module first
It is standby.Next step opens nucleus module, the normal operation of these module principal security systems, including system event prison
Listen, southbound interface protocol processes, timer, RESTAPI provide etc..Next event sniffer will be opened, the system is to be based on
Action listener mechanism, the event that all module operations are produced, which adds, to be placed in event pond.Each module includes event sniffer,
When the monitoring event for monitoring to have matching module in event pond, module just performs dependent event treatment mechanism.This model meets
Producer consumer thought.
Based on the main thread of system is monitored with message, the message that the system is related generally to have PacketIn, PacketOut,
FlowMod、FeatureRequest、FeatureReply、PortStatusRequest、PortStatus Reply。
According to the thinking of system algorithm, the system carries out active measurement to the link of network, using the port of interchanger as base
This unit.The data conversion transmission information of switch ports themselves is obtained by certain cycle, and these data are subjected to secondary operation.End
The data that message breath is related generally to have port bandwidth, the data packet number of port forwarding, the data packet number of port reception, port
The packet total data that the total amount of data of forwarding, the data packet number of port discarding, the total amount of data of port reception, port are abandoned
Amount, wrong data bag quantity, mistake total amount of data.Port bandwidth is obtained by Feature message.Port data forwarding information has
PortStatus is obtained.
Referred to herein as the secondary operation of data, because port information data volume is huge, need exist for extracting having for port
Information is imitated, and is analyzed.After port status data processing, the status information of link, i.e. link utilization will be obtained.Link
Utilization rate can finally be converted into link weight information.
The algorithm resolving ideas of embodiment is the system when interchanger has unidentified flow to report flow scheduling system
Thread is opened discharge pattern is identified.Recognizer is extracted to the protocol information that packet in flow is carried first,
Then existing discharge pattern table in inquiry system, is finally accurately positioned discharge pattern.Flow is divided into two types, one is
Lasting and the higher regime flow of load, referred to as elephant flow, and another is the burst flow that shallow bid data flow is constituted, and is referred to as
Mouse is flowed.
Due to consideration that the continuation and stability of elephant stream, so the processing method flowed herein for elephant is that had
The optimal route selection of weight.And mouse stream considers that its sudden and data volume is granularity, so for doing that mouse is flowed
Method is to carry out the selection of the optimal path without weight.
Final system can formulate different flow scheduling strategies according to different types of flow, and strategy is carried out
Onto related forwarding unit.Here the tactful dispatching algorithm of a large period has just been completed.Fig. 5 is whole flow scheduling system
Overall information interaction figure.
Hard core control module controls linking and OF message (i.e. OpenFlow between flow scheduling system and interchanger
Message, behind substituted with OF message) be converted into the event that other modules can be monitored, allocating event to each monitoring module at
Reason, event processing module can allow message to be transmitted to next processing module accordingly or stopping is handled.The module major function
There is provided by Controller classes, when flow scheduling system starts, Controller starts Netty and monitors service, monitors 6633 ends
The OF message of mouth, the processOFMessage methods for recalling OFChannelHandler classes open OF Message Processings and group
Hair.Its crucial handling process is as shown in Figure 6.
Implementation process is as shown in fig. 6, after OFMessage message access methods, first judge type of message, if HELLO
Message, then send FEATURES_REQUEST requests;The message has a variety of response modes to need parsing.
If ECHO_REQUEST message, then ECHO_REPLY message is responded;If ECHO_REPLY then terminates stream
Journey;If FEATURES_REPLY message, then send SET_GET_CONFIG_REQUEST message or handle asynchronous
OFFeaturesReply (on condition that when connection status is non-HandshakeState.HELLO);If VENDOR message, then
Call method handles the message or abandoned;If ERROR message or STATS_REPLY message, then call correlation method to handle;
If PORT_STATUS message, then by increasing, delete, change three kinds of state classifications processing;Continue with if desired, then judge to hand over
Change planes and whether be in not-connected status, be to terminate flow, if judging whether it is SBR of shaking hands again in connection status
And whether be standby host, then terminate flow if not SBR or standby host, otherwise judge whether it is that PACKET_IN disappears
Breath, is that otherwise unserializing message skip over;The type message listener is obtained again, notifies correlation module processing message event;Most
Cleaning flow scheduling system context is cached afterwards.
Topology Management module sends link detection bag by traveling through all of the port of interchanger, is handed over for detecting physics
Change planes the link structure of network.The link information of acquisition travels through all interchangers by calculating network topology, periodically
LLDP messages are sent, even if to reflect the change in topology of physical network into flow scheduling system.Flow scheduling system can be with
A point domain is carried out to OF interchangers.Need exist for introduce a critically important concept be called OpenFlow domains (abbreviation OF domains, below will
Directly using this referred to as), OF domains refer to one group of interchanger being connected with controller example in same flow scheduling system.
It can be connected between OF domains with two layers of non-OF interchangers, for example:For OFSwitch1--OFSwitch2-
TraditionalSwitch-OFSwitch3 network designs, it will be seen as two OF domains, first by OFSwitch1 and
OFSwitch2 is constituted, and the 3rd is made up of OFSwitch3.Topology Management module can all be deposited current all topology informations
Storage is in a topology example, and any Topo changes can all set up a new topology example, and notify listener topology hair
Changing, if other modules need to monitor topology change, the module will realize ITopologyListener interfaces, and note
Volume is monitored.The core process of the module is that network topology calculates, updates operation.Its crucial handling process is as shown in Figure 7.
As shown in fig. 7, the flow first determines whether whether link has renewal, if then judging link increase or deleting simultaneously
Corresponding operating being performed, all OpenFlow link informations that tunnel and broadcast domain are connected are excluded if obtained without if, then
Start to recalculate topology;Calculation procedure is to first pass through recursive fashion to carry out OF domain divisions to OF interchangers, then addition link
Into OF domains, shortest path is calculated using dijkstra algorithm, then calculates OF domains broadcast tree, finally notifies to monitor module topology hair
Changing.
Device management module learns acquisition facility information from PacketIn requests, is carried out equipment by entity classification device
Classification, and index is set up, the entity classification device of acquiescence identifies an equipment using MAC Address and VLAN.Device management module
Other attributes, such as IP address, the timestamp being observed for the last time can be got, or even the equipment last time can also be obtained
The DPID of access switch and port.Device management module is responsible for safeguarding the installation that another important information is equipment simultaneously
Point, in an OF domain, an equipment can only have a mount point.
Device management module key handling process:PacketIn message enters after the flow, from the upper of flow scheduling system
Ethernet objects are hereinafter obtained, source entity is built.Obtained by source entity information from primaryIndex
deviceKey.If deviceKey is sky, deviceKey is searched from entity classification device.If deviceKey is not looked for yet
Arrive, then create deviceKey.The new device objects are built, are added to cluster tool, and update index and renewal of the equipment row
Table.If finding deviceKey, corresponding device is searched by deviceKey.Judge whether the equipment includes the entity
(entity) information.If it is attachment point is updated, new device objects is otherwise built and replaces old object, then update cluster tool
And index.Addition change list is updated if queue to be deleted then builds equipment and deleted, notifies that monitoring module has equipment
Change;Destination address facility information is obtained, terminates flow.
Flow quantity intelligent identification classification:Including elephant stream, mouse stream.The present main flow of most of users concentrates on sound and regarded
In the application scenarios such as frequency stream, the file transmission of big data quantity, these streams are lasting and the higher regime flow of load.According to user
Use habit.So in terms of the identification of these data being concentrated on into audio/video flow, high amount of traffic file according to agreement, now
The transmission of video agreement of main flow has RTP, RTSP.Therefore it is feasible that two class streams, which are made a distinction, by agreement.
Most of data are to be transmitted using UDP and TCP as carrier, therefore are entered using TCP and UDP port numbers as judgment criteria
Row identification of data packets.Elephant stream protocol list is as shown in table 1.
The elephant stream protocol list of table 1
Protocol type |
Port numbers |
TP |
20/TCP、UDP |
RTSP |
554/TCP,UDP |
FTPProtocol(data)overTLS/SSL |
989/TCP,UDP |
RDP (RDP) |
3389/TCP |
RTPReal-timeTransportProtocol |
5004、5005/UDP |
X11 |
6000/TCP、6001/UDP |
PPS Web TVs |
17788/UDP |
To the carry out deep-packet detection of PacketIn message, according to the information logarithm such as protocol version, protocol type, signaling
It is identified according to the type of bag.It may be noted that PaketIn Payload default-lengths are 128, be by controller to Payload
Length be defined as 65535.
As shown in figure 8, when the packet for entering interchanger can not be matched, data envelope is mounted in by interchanger
Controller is sent in PacketIn message.Protocol analysis is carried out to it first after OpenFlow message is received, is defined as
After PacketIn message, its data data segment will be parsed, this section storage is True Data package informatin.Controller will be to packet
Parsed, determined that it is after TCP or udp protocol layer by layer, will be carried out according to its lizard port numbers in investigation table set in advance
In table look-up matching, transfer route selection module to for the packet (i.e. elephant is flowed) of matching.
Link State is counted:Controller is exchanged by the real time status information of StatsRequest acquisition of information interchangers
The StatsReply that machine is replied contains the quantity that port forwards packet, and these information have been collected in statistical module, root
The handling capacity of exit port can be calculated according to these information.Controller can pass through FeaturesRequest acquisition of information interchangers
Configuration information, mainly obtains the port bandwidth information of interchanger.Link utilization can be calculated by being divided by by handling capacity and bandwidth
Rate.The data transfer threshold value of link can be set according to the data calculated, foundation is provided for next step routing policy.Realize
The state of one link is obtained, and is combined it comprising link information according to the path that feasible path computing module is calculated,
Just path state information is calculated, path state information is using the maximum link of handling capacity as judgment criteria.
Throughput calculation formula:S=(N1-N2)/T;
Link utilization calculation formula:U=S/B;
Optimal route selection:The parameter provided with Link State statistical module is calculated using feasible path to be evaluated and tested.
Different weights according to linkage length, link utilization are calculated, and result of calculation is carried out into sort descending, and result value is maximum
Be optimal flux transmission path.Above scheme need to only not removed weight and can be achieved by the optimal path scheme of Weight.
Figure 10 is optimal path computation flow.
1) Path selection parameter
The algorithm of optimal route selection is based on the letters such as some parameters, including path length, link bandwidth, link utilization
Breath.These parameters will be described in detail below:
Based on path length:The routing is flowed mainly for elephant, due to its data volume greatly and persistently to reaching destination host
Link carry out Statistical Comparison, most short path will be selected to be transmitted on strategy.
Based on link utilization:The strategy of the link selection is based on the multilink for reaching destination host, and strategy is first
The select chain road headed by wherein one link, all data forwardings pass through the link, and it is retransferred when handling capacity reaches threshold value
His link, and so on.
2) weight calculation
Path length N weight is set to 10, the weight of link circuit condition is set to link utilization U inverse, if the road
Footpath number of links is n, then optimal route selection coefficient W calculation formula is:
3) threshold strategies
Whether the Determines of link elephant stream can pass through, so needing to set a threshold value (to be defaulted as link profit
Reached 80%) to ensure passing through for elephant stream with rate.That is the size of link bandwidth utilization rate determines this chain
Within the scope of whether road is alternative in path.Situation is done into a subdivision below according to threshold value, and difference is performed for different situations
Strategy.
A, all links are not less than threshold value:Link utilization and path length are calculated as weight to obtain
The path of the maximum arrived is optimal path;
B, part of links exceed threshold value, partly not less than:At this moment there are two kinds of situations in the path more than threshold value:Have path without
The link (situation (1)) and all feasible paths crossed more than threshold value all pass through the link (situation (2))
(1) link more than threshold value is will not pass through to calculate according to method in 1;
(2) set the stand-by period to be waited, link circuit condition is analyzed after a latent period, if being returned from threshold value
Fall, then handle, continued waiting for if not falling after rise, if still without falling after some cycles, abandoning by situation (1).
4) basic algorithm is analyzed
Optimal path computation based on weight, uses optimal path algorithm-Dijkstr_flyye1 algorithms.Use the calculation
Method first obtains optimal path, then obtains sub-optimal path, by that analogy.Algorithm idea is as follows:
Using digraph as algorithm reference picture, two set are set, one of set stores the optimal path to calculate,
Another set calculates the optimal path not calculated.The weight on each summit has been marked in from origin to set.Reference picture
Preferably think do not have bar link to be bi-directional link in figure, and the both direction of link uses same weight information.
The digraph of Weight is represented with G=(V, E).Weighting function is w, has d [u]=δ (s, u) to use to all u ∈ V
Algorithm carries out successive ignition, has d [u]=δ (s, u) to each vertex v ∈ S to each summit u ∈ V, when u adds set S, d
[u]=δ (s, u), is represented with adjacency matrix in the implementation.
This algorithm is outwards traveled through centered on starting point, is terminated having traveled through all node algorithms.
Decision-making is dispatched:The optimal path drawn according to optimal path computation module, with reference to actual physics network, statistics and road
The related switching equipment in footpath.Issuing for forwarding strategy is carried out for different switching equipment.Obtain after optimal path, call statistics
Management module, obtains related link information, related exchange machine information is obtained in Topology Management module, according to the dpid of interchanger
Actual physical device is mapped, device management module determines the TCP port number of interchanger, and determines to issue flow table port, specific aim
Flow table is edited, Protocol Plug management module is carried out after message encapsulation, sends FlowMod message.
Testing process and data analysis
An experiment topology is created using Mininet, as shown in figure 11, three interchangers, 10 masters are included in the topology
Machine, because space is limited, therefore main frame is represented with omission figure.Wherein three interchangers are linked to be ring-type by the way of being connected two-by-two
Topology.The default bandwidth of each port of main frame and interchanger is 10Gbps in the topology.The topological Mininet creates code
It is as follows:
Wherein, the IP address of main frame is respectively 10.0.0.1-10.0.0.10,10.0.0.1-10.0.0.5 and interchanger
S1 1-5 ports are connected.1.0.0.6-1.0.0.10 is connected with interchanger S3 1-5 ports.
Iperf is tested
Client command row, 5 orders below are respectively acting on H1-H5 main frame, the rule for plus 5 according to host number
Rule is sequentially connected.
Iperf–c10.0.0.6–I1–n1000000000
Iperf–c10.0.0.7–I1–n1000000000
Iperf–c10.0.0.8–n1000000000
Iperf–c10.0.0.9–n1000000000
Iperf–c10.0.0.10–n1000000000
Service end order line
Iperf–s-I1
Running situation is as follows
Running situation is simulated:As shown in figure 12, at system operation initial stage, legacy network and flow scheduling system have selected
Shortest path first.But when S1-S2 link flow increases, link throughput length rises situation.As shown in figure 13, when
Handling capacity reaches after certain threshold value that legacy network still uses original path, but SDN TE have selected an other feasible road
Line, directly promotes the transmission of data.
The time of the test data of table 2-throughput concerns table
Time (S) |
Legacy network TE (Gbit/s) |
SDNTE(Gbit/s) |
0 |
0 |
0 |
1 |
0.7 |
0.7 |
2 |
1.3 |
1.3 |
3 |
1.9 |
1.9 |
4 |
2.5 |
2.5 |
5 |
3 |
3 |
6 |
3.4 |
3.5 |
7 |
3.7 |
4 |
8 |
3.9 |
4.4 |
9 |
4.1 |
4.9 |
10 |
4.25 |
5.3 |
11 |
4.35 |
5.7 |
12 |
4.35 |
6.1 |
13 |
4.35 |
6.5 |
14 |
4.35 |
6.8 |
15 |
4.35 |
7.1 |
16 |
4.35 |
7.35 |
17 |
4.35 |
7.55 |
18 |
4.35 |
7.7 |
The data of experiment test have embodiment in table 2, and the curve that time-throughput concerns figure is presented in fig. 14 is walked
Gesture.5 client hosts are according to time of 20 seconds is amounted in experiment, are divided into 5 moment and are loaded on link.In Figure 14,
The TE curves of legacy network and the TE curves of SDN are almost overlapped in incipient 0-8s.Traditional net over time
The TE curves of network are separated in 8s with the TE curves of SDN, and the TE curves of legacy network tend towards stability, handling capacity
It is final to tend to 4Gbps, and the TE curves of SDN remain unchanged presentation growing trend, untill being intended to 8Gbps.
According to data analysis in Figure 14, legacy network and SDN TE are just starting to use same link.Use tradition
The TE of network shortest paths in 8s have approached to saturation state, so volume index of handling up tends towards stability.But using SDN
After the TE of network, system senses the change of Link State in real time, have selected optimal path S1-S2-S3, at this moment link
Equivalent handling capacity also rise.
The handling capacity of the test data of table 3-bandwidth availability ratio relation table
Handling capacity (G) |
Legacy network TE (%) |
SDNTE (%) |
0 |
0 |
0 |
0.5 |
11 |
11 |
1 |
22 |
22 |
1.5 |
32 |
31 |
2 |
44 |
41 |
2.5 |
55 |
50 |
3 |
65 |
59 |
3.5 |
74 |
68 |
4 |
80 |
71 |
4.5 |
85 |
72.5 |
5 |
88 |
73.5 |
5.5 |
90 |
74 |
6 |
91 |
74 |
6.5 |
92 |
74 |
7 |
92.5 |
74 |
7.5 |
92.5 |
74 |
8 |
92.5 |
74 |
8.5 |
92.5 |
74 |
9 |
92.5 |
74 |
9.5 |
92.5 |
74 |
The data of experiment test have embodiment in table 3, and handling capacity-bandwidth availability ratio graph of a relation is presented in fig .15
Curve tendency.The TE curves of network in figure represent the TE of legacy network, and the TE curves of SDN represent the TE of SDN,
The TE curves of network and the TE curves of SDN are almost overlapped in incipient 0-3.5Gbps.With the increase net of handling capacity
The TE curves of network are separated in 3.5Gbps with the TE curves of SDN, and the TE curves of network tend towards stability, bandwidth
Utilization rate finally tends to 92.5%, the presentation growing trend and the TE curves of SDN remain unchanged, untill being intended to 74%.
According to data analysis in Figure 15, legacy network and SDN TE are just starting to use same link.Use tradition
The TE of network shortest paths in 3.5Gbps have approached to saturation state, so volume index of handling up tends towards stability.But using
After the TE of SDN, system senses the change of Link State in real time, have selected optimal path S1-S2-S3, this
When link equivalent handling capacity also rise.