You are on page 1of 14

FUTURE INTERNET ARCHITECTURE AND TESTBEDS

Software Defined Traffic Engineering for Improving


Quality of Service
Xiaoming Li1, Jinyao Yan2,*, Hui Ren1
1
Key Laboratory of Acoustic Visual Technology and Intelligent Control System (Ministry of Culture) and Beijing Key Laboratory of Modern
Entertainment Technology, Communication University of China, Beijing, 100024, China
2
Key Lab of Media, Audio and Video, Communication University of China, Beijing, 100024, China
* The corresponding author, email: jyan@cuc.edu.cn

Abstract: The Software Defined Networking Keywords: SDN; traffic engineering/traffic


(SDN) paradigm separates the control plane scheduling; aggregated elephant flow; conges-
from the packet forwarding plane, and pro- tion; link utilization; QoS; video streaming
vides applications with a centralized view of
the distributed network state. Thanks to the I. INTRODUCTION
flexibility and efficiency of the traffic flow
management, SDN based traffic engineering The Visual Networking Index report from
increases network utilization and improves Cisco Systems predicts that Internet video
Quality of Service (QoS). In this paper, an will account for 82 percent of Internet traf-
SDN based traffic scheduling algorithm fic worldwide in 2020[1]. Global IP traffic
called CATS is proposed to detect and con- will increase roughly threefold over the next
trol congestions in real time. In particular, a five years. With the dramatically increasing
new concept of aggregated elephant flow is amounts of network traffic, traffic congestion
presented. And then a traffic scheduling opti- happens often and the performance degrades
mization model is formulated with the goal of in the network. For a long time in the past, the
minimizing the variance of link utilization and telecom operators increased the capacity of
improving QoS. We develop a chaos genetic the network by improving the network hard-
algorithm to solve this NP-hard problem. At ware using high-speed switches and routers.
the end of this paper, we use Mininet, Flood- However, this over-provisioning solution had
light and video traces to simulate the SDN a low and unbalanced utilization and can not
enabled video networking. We simulate both solve the congestion of hot spots effectively.
the case of live video streaming in the wide Congestion may appear in some links of net-
area backbone network and the case of video work while the rest of the network might be
file transferring among data centers. Simula- light loaded or idle. Traffic engineering (TE)
tion results show that the proposed algorithm analyzes and predicts the traffic, manages
CATS effectively eliminates network conges- the route of the traffic request to improve the
tions in subsecond. In consequence, CATS network utilization and to optimize the over-
Recieved: May 29, 2017
Revised: Sep. 5, 2017 improves the QoS with lower packet loss rate all performance of data network [2]. In the
Editor: Tao Huang and balanced link utilization. meantime, network congestions are eliminated

12 China Communications • October 2017


[3][4] which is critical to multimedia services timedia services. Section III describe SDN-
such as Netflix [5]. based congestion-aware traffic engineering
Multi-Protocol Label Switching (MPLS) including aggregated elephant flow detection
[6], as a solution of traffic engineering, explic- algorithm, network model and optimization
itly labels routing between source and destina- problem, and traffic scheduling algorithm. Ex-
tion which can control the traffic distribution. periments results are described and analyzed
However, labels in MPLS TE are configured in section IV. Section V concludes the paper.
statically without real time reconfiguration
ability and adaptability. Software Defined II. RELATED WORK
Networking (SDN) has become a promising
solution to enhance the flexibility and adapt- Traffic engineering has been an important
ability of traffic engineering[7][8]. Network mechanism and a research topic to improve
traffic can be flexibly scheduled by making the performance in Internet for decades. QoS
use of the centralized network view and dy- routing algorithms are kinds of mechanisms
namic configuration capabilities of SDN. The of IP based traffic engineering to find optimal
global view includes the state of network, the path in terms of network performance such as
utilization of the network and amount of cur- delay and bandwidth. OpenQoS [9] classifies
rent traffic which is maintained by the SDN the traffic into data and multimedia, and the
controller. SDN based TE controls and man- routes of multimedia flows are optimized with
ages the traffic in the network in real time, and a QoS routing algorithm. HiQoS [10] makes
obtains better QoS performance such as delay, use of multiple paths between source and des-
throughput and bandwidth utilization. tination and queuing mechanisms to optimize
In this paper, we study congestion-aware QoS. Equal-Cost-Multi-path routing (ECMP)
dynamic traffic engineering based on SDN and [11][12] is a solution to find multiple optimal
proposed a traffic scheduling algorithm called routes which is considered more efficient than
CATS to eliminate network congestion and to single path QoS routing. The main feature of
improve QoS. The main contributions of this ECMP is to equally split and forward flows to
paper are as follows: multiple paths for load balancing. The traffic
1) We propose the definition of aggregated el- load will be more balanced when the ECMP
ephant flow sharing congested links and its traffic scheduling is made in packet level in-
detection algorithm for traffic engineering. stead of flow level. However, the bandwidth,
2) We propose an optimization model for traf- latency, and reliability of each path may be not
fic scheduling with a goal to minimize the same in the actual network. WCMP (weight-
variance of link utilization and QoS. ed Equal-Cost-Multi-path) routing [13] was
3) B y using the chaos genetic algorithm to proposed to split traffic in proportion to the
solve the optimization problem, we propose capacity of paths, which is a special case of
SDN-based congestion-aware traffic sched- ECMP. This method is more complicated in
uling algorithm (CATS). the traditional switch with a high cost.
Simulations using video traffic traces show In the SWAN(software-driven wide area
that our proposed traffic scheduling algorithm network)[14] architecture, SWAN enables
is able to effectively detect and eliminate software driven inter-DC WANs to carry
network congestions in subsecond. In conse- significantly more traffic. SWAN leverages
quence, it improves the QoS for applications a small amount of scratch capacity on links
with lower packet loss rate and balanced link to apply updates in order to ensure that there
utilization. is no transient congestion. SWAN improves
The rest of this paper is organized as fol- bandwidth efficiency while providing prefer-
lows. Section II reviews related work of SDN ence for higher-priority services and fairness
based traffic engineering and QoS for mul- among similar services. In the Cisco CON-

China Communications • October 2017 13


GA[15] architecture, TCP streams are divided flow is detected then it is rescheduled to light
into multiple flowlets and flowlets are allocat- loaded links that meet their bandwidth de-
ed to multiple paths. This enables CONGA to mand. By default, Hedera uses ECMP for flow
efficiently balance the load for data centers. forwarding. Different from Hedera, Mahout
HULA[16]} addresses the scalability issue of finds the large flow by detecting TCP buffer of
CONGA with P4-based switches maintaining end nodes[22]. In Hedera, flow is defined with
congestion state for the best next hop per des- the same 10-tuple of <src MAC, dst MAC,
tination instead of all paths to a destination. src IP, dst IP, EtherType, IP protocol, TCP src
MicroTe [17] minimizes the maximum link port, dst port, VLAN tag, input port>. Howev-
utilization with some modifications to hosts in er, Internet video flows as a whole usually ac-
the data center. Hosts in MicroTe collect and count for most network traffic while each flow
report their traffic matrix to the SDN control- is much less than 10% of link capacity. Aggre-
ler for optimization. Traffic Engineering in an gated flows such as video streaming are from
incrementally deployed SDN environment is the same video-sharing site may exceeds 10%
proposed in [18] where traditional networks of the link capacity and introduce congestions.
are mixed with a small number of SDN en- They may be considered as an elephant flow in
abled devices. In segment Routing, the routing some sense for traffic engineering to improve
path is broken up into segments. With the help QoS.
of SDN, segment routing controls the traffic
and online route selection in order to enable III. SDN BASED TRAFFIC ENGINEERING
better network utilization and QoS [19][20]. In
Hedera [21], a flow with flow rate more than As traditional traffic engineering could not ad-
10% of the link capacity is considered as large just traffic dynamically, we study real-time and
flow. The SDN controller sends a traffic statis- optimal traffic engineering based on SDN. The
tics request to edge switches in a certain peri- centralized controller in SDN first detects the
od to detect the large flow. Whenever a large aggregated flow traffic when link utilization is
high and congestions happen, then computes
the flow allocation on optimal routes and the
Traffic Engineering Application forwarding rules for the traffic scheduling,
StatisticsCollector Congestion-Aware Traffic Scheduling finally distribute the flow rules to SDN switch-
Module Module Module
es. Compared to traditional traffic engineering,
the main advantage of SDN based traffic engi-
Aggregate Flow Detection,
Flow Scheduling neering is: traffic are detected and rescheduled
from global view rather than local view of the
Northbound:RestfulAPI
traffic and the utilization of links. Moreover,
SDN Controller due to the flexibility of SDN, SDN based traf-
OFFlowStatsEntry(etc. fic engineering can detect and eliminate the
OFPortStatsEntry(etc.
Flow.bytes, flow match Link Static Flow
count,flow.srcDPID,flow.d
Port.no, port bandwidth
Discovery Entry Pusher
congestion in real-time. As shown in figure 1,
used)
stDPID) SDN-based traffic engineering includes three
layers and interaction between them.
Southbound:OpenFlow
In this section, we first define the aggre-
gated elephant flow and design the detection
algorithm for aggregated elephant flows. Then
SDN Switch SDN Switch
we design the congestion-aware dynamic traf-
fic scheduling including the network model,
SDN Switch
the optimization problem for balancing the
link utilization and the overall QoS, and a traf-
Fig. 1 The SDN-based traffic engineering fic scheduling algorithm to solve the optimiza-

14 China Communications • October 2017


tion problem. We make use of the passive detection of
congestion in SDN/OpenFlow network. The
3.1 Aggregated elephant flow
SDN controller defines the congestion level
detection
for OpenFlow switches. For example, when
Traditional flow and traffic engineering are the link utilization is higher than a threshold
based on IP. SDN/OpenFlow [23] defines of 90%, then switches will send a congestion
flows with various granularity such as source/ notification via the Packet_in message to the
destination switches, VLAN and application SDN controller [24]. The controller receives
types. In Hedera, each elephant flow is a sin- the message, and the message is parsed to ob-
gle large flow over a certain size (10% of the tain the following information:
link) and duration, identified with the same 1) T he location of congestion by “switch
10-tuple of <src MAC, dst MAC, src IP, dst ID”(data path identification or DPID);
IP, EtherType, IP protocol, TCP src port, dst 2) Big flows on the congested link by “byte
port, VLAN tag, input port>. Internet video counters”.
flows as a whole account for the most network The SDN controller calculates the counter
traffic as Cisco VNI report predicts. However, of the flow meter of the congested switch to
each video flow is usually much less than 10% find flows that occupies more than certain
of link capacity. As opposed to individual ele- amount of link utilization or video flows. In
phant flow, we use SDN/OpenFlow to aggre- the following, we summarize our algorithm to
gate some flows into a big flow termed aggre- detect the aggregated elephant flow for traffic
gated elephant flow: the flows are aggregated engineering.
into one aggregated elephant flow when Algorithm 1: Aggregated elephant flow de-
1) flows share the congested link and share tection algorithm
part of their path; Input: The flow Table entry set(OFFlow-
2) flows are video flows or big enough flows StatsEntry) of the congested switch which is
(for example: each flow is bigger than 1% collected through the StatisticsCollector mod-
of the congested link). ule of the SDN controller.
For example, we may bundle flows of video Output: An aggregated elephant flow:
or voip traffic from/to one campus network ret=1 when a single flow as an elephant flow;
as an aggregated elephant flow. Then we may ret=2 when aggregated flows as an aggregat-
want to provide QoS for the aggregated flow ed elephant flow. The flow set flowset F in the
to upgrade the video and voip service for the aggregated elephant flow.
campus costumer, or when we may want to
retour those traffic to avoid the congestion link Algorithm 1 Aggregated elephant flow detection algorithm
they sharing.
1: ret=0;
In this paper, we label the aggregated el- F=null;
ephant flow with the source SDN/OpenFlow flowentryset=StatisticsCollector.OF FlowStatsEntry;
switch DPID or destination SDN/OpenFlow flowentryset.sortbybytesize;
switch DPID of video flows for the simplicity 2: FOR flowj ∈ flowentryset do
reason. We assume that SDN/OpenFlow en- 3: IF (flowj.bytes ≥ THRESHOLD) THEN
abled switches and routers might coexist with 4: RETURN ret=1;
traditional ones in the network. SDN control- 5: FOR flowi ∈ flow entryset and flowj ∈ flowentryset do
6: IF (flowi.srcDPID=flowj.srcDPID)
ler communications with and controls only
or flowi.dstDPID=flowj.dstDPID THEN
SDN/OpenFlow enabled switches. As long as
7: F.add(flowi) and F.add(flowj);
Src_DPID or Dst_DPID is the same, they are 8: IF(F.bytes≥THRESHOLD)
in the same aggregated elephant flow, even THEN
their source IP and destination IP are not the 9: RETURN ret=2;
same. 

China Communications • October 2017 15


Whenever congestion is detected, the ed-graph G = (V , E ) . The capacity C (u , v) of a
switch sends a congestion notification to the link from node u to v is defined as the phys-
controller via the Packet_in messages in the ical bandwidth of the link. The flow request
OpenFlow protocol. As described above in the vector FRV is a set of flows to be allocated.
aggregated elephant flow detection algorithm, Then the congestion-aware traffic scheduling
it is necessary to sort firstly all flows in the is to find the optimal flow allocation matrix
flow set of the switch flow table. Flows are FAM for flows in FRV . The main notations
sorted in terms of flow size or importance. are described in table 1.
Only important video flows may be consid- Definition 1: Flow request vector FRV
ered for simplicity or in case of limit network Flow request vector FRV represents the set
resource. Then the algorithm detects a single of flows to be allocated which includes flows
flow or flows as an aggregated elephant flow in flow set F in aggregated elephant flow
when their flow.bytes ≥ THRESHOLD. and incoming flows in traffic prediction. For
traffic scheduling of the aggregated elephant
3.2 Traffic scheduling
flow in this paper, flow request vector FRV
As described above, flows in the aggregated is the same as flow set F . Let N denotes the
elephant flow are detected by the aggregat- s i z e o f FRV . FRV = [ flow1 , flow2 , flowN ]T .
ed elephant flow detection algorithm. In this 1, 2...N .
flow j ∈ FRV , j =
subsection, we first find the set of optimal Definition 2: Flow allocation matrix FAM
candidate path for the flow allocation. Then, FAM is the flow allocation matrix for flow
we propose an optimization model for flow request vector FRV . Then FAM is a matrix
scheduling to optimize the link utilization of M × N , where M represents the number of
and overall QoS. To solve the optimization candidate paths.
problem, we use the chaos genetic algorithm  a11 a12  a1N 
to calculate the optimal distribution matrix for a a2 N 
 21 a22 
the aggregated elephant flow.      
 
1) Network model: V is a set of all switch  aM 1 aM 2  aMN 
nodes, and E is a set of links between switch-
0, flow j not select pathi
es. The network is represented by a direct- aij =   (1)
1, flow j select pathi
Table I Notations in the model M

1 ≤ i ≤ M ,1 ≤ j ≤ N , ∑ aij ≤ 1.  (2)
Notation Description i =1
M
V a set of all switch nodes As can be seen from the condition ∑a
i =1
ij ≤1 ,
E a set of links between switches
the allocation is based on the flow. Namely, a
V′ a set of optimal residual network nodes
flow is assigned to at most one candidate path.
E′ a set of edge of optimal residual network
Definition 3: Optimal residual network Gr
Cr (euv ) Residual capacity of a network link euv
Given the network G = (V , E ) and flow
PVe Path vector of link e
request set FRV , the optimal residual net-
BU Bandwidth Utilization
w o r k f o r FRV : Gr = (V ′ , E ′ ) i s f o r m e d
CPS Candidate path set
by the top M optimal paths between
F Flow set in aggregated elephant flow Src _ DPID and Dst _ DPID of aggregated
FAM Flow allocation matrix elephant flow. The top optimal paths are
FRV Flow request vector found with k-shortest path algorithm[25].
e Edge e ∈ E E ′ = {euv ∈ V ′ × V ′ : Cr (u , v) > 0}
Whether the path i is selected by flow j Definition 4: The maximum feasible capac-
aij
(0 for not selected or 1 for selected) ity of the optimal residual network maxC (Gr )
Whether the link e belong to a path i The maximum feasible capacity of the op-
bi
(0 for not selected or 1 for selected) timal residual network indicates that the maxi-

16 China Communications • October 2017


M
mum capacity in the residual network. We can Proof: Because max ∑ F AM × FRV =
0 , so
solve the maximum flow problem using Ford i =1

∀euv ∈ E ′ , ( PVeuv × ( FAM × FRV )) / Cr (euv ) > 1


Fulkerson algorithm [26]. In this model, the
top-M optimal candidate path set CPS (candi- Namely, for ∀flow ∈ FRV , there is no
date path set) is chosen as augmenting paths to ∃path ∈ CPS could allocate flow requests.

get the maximum flow maxC (Gr ) . By defini- As CPS is the optimal path set, there is no
tion, it satisfies the max flow/min cut theory. other path in the network with more available
Definition 5: The maximum admitta- bandwidth than path in CPS . Therefore, the
ble flows in the optimal residual network flows are not admitable to the current network.
maxCaccept ( FRV ) 2 ) O p t i m i z a t i o n p ro b l e m f o r f l o w
scheduling: Existing objectives for traffic op-
A s s u m i n g ∀euv ∈ E ′ i f ∃ ∩ik=1 pathi = euv
timization are minimizing the maximum link
and 1 ≤ i, k ≤ M , pathi ∈ CPS , then these paths
utilization [27] and minimizing link cost [28].
intersect at the link euv . Then link euv be-
The latter may lead to uneven distribution of
longs to the path vector can be expressed
traffic in the network and traffic congestion
as a column vector of 1× M dimension
in the low cost path. The objective in our op-
PVe = [b1 , b2 , b3 ,bM ] .
timization problem is close to the first one.
uv

0, e ∈ pathi
bi =  uv (3)
1, euv ∉ pathi
However, we consider that the variance of link
The maximum admittable flows utilization ratio is an important index of the
maxCaccept ( FRV ) are flows satisfying the fol- distribution of link bandwidth utilization as
lowing conditions opposed to the average link utilization and the
1) ( PVe × ( FAM × FRV )) / Cr (euv ) ≤ 1, ∀euv ∈ E ′ . maximum link utilization which are not suffi-
uv
M
cient to show the balance of the link utilization.
2) Maximizing ∑c
i =1
i1 ,∀ci1 ∈ FAM × FRV .
The smaller variance of link utilization, the
Condition 1 guarantees that the allocated closer utilization among links. Then, the over-
flow rate of the link is less than the avail- all utilization of the links is more balanced.
able bandwidth of the link. By definition, The higher link utilization, the higher packet
we can see that the maximum feasible flow loss rate of the link. Given the certain amount
is not necessarily the maximum admitta- of traffic, the balanced utilization of con-
ble aggregate flow. As shown in figure 2, gestion links produces lowest overall packet
the optimal residual network is composed loss rate. As a result, the overall performance
of the candidate optimal paths. The source and QoS of network are improved. Assume
is S1 , destination is S 4 , there are 4 routes ∀euv ∈ E ′ , BU=
uv ( PVe × ( FAM × FRV )) / Cr (euv ) ,
uv

path path1={e1,e2,e3,e4}, path2={e5,e6,e4}, BU uv represents the bandwidth utiliza-


path3={e1,e2,e7}, path4={e5,e6,e3,e7}. tion of the link euv . The sample space
According to the Ford Fulkerson algo-
rithm can find the maximum feasible flow:
28Mbps , assume flow request vector FRV is:
[11,9,8,5]T , its maximum admittable aggregat- S5
e6:15Mbps
S6
ed flows: [11,8,5] = 24Mbps .
e5:15Mbps e4:25Mbps
Deduction 1: maxCaccept ( FRV ) ≤ maxC (Gr ) . If
maxCaccept ( FRV ) = maxC (Gr ) , then according to
e3:10Mbp
10Mbps
S1 S4
the maximum flow and minimum cut theorem
∃euv ∈ E ′ , ( PVe × ( FAM × FRV )) / Cr (euv ) =
uv
1. e1:15Mbps e7:6Mbps
M
Deduction 2: If max ∑ F AM × FRV =
0,
i =1 e2:13Mbps
S2 S3
candidate paths could not allocate aggregated
flows.
Fig. 2 Optimal residual network composed of candidate optimal paths

China Communications • October 2017 17


M
of BU is S :{BU i } . Sample variance is max ∑ F AM × FRV =
0 , then it indicates that
N

∑ ( BU
i =1
− BU ) 2
i
the optimal candidate path can not meet all
D( BU ) = i =1
. Therefore, the
N −1 request of flows in the flow set.
objective of flow reallocation is to mini- 3) Chaos genetic algorithm to solve the
mize D( BU ) . optimization problem: Because the mathemat-
We form the optimization problem as fol- ical model (4) is a combinatorial optimization
lows: problem of NP hard (in particular, 0-1 integrat-
N

∑ ( BU i − BU ) 2
 (4)
ed linear programming problem). The genetic
Minimize D( BU ) = i =1
algorithm is more suitable for combinatorial
N −1
 optimization problem [30], and the crossover
subject to and mutation operators have typical combi-
M
nation features. In order to avoid the local
∑a i =1
ij ≤ 1,1 ≤ j ≤ N  (Constr. 1)
optimal solution, we use the genetic algorithm
M
=∑ ci1 maxCaccept ( FRV ), ∀ci1 ∈ FAM × FRV based on chaotic map [31]. The parameters for
i =1
the algorithm are set as follows:
 (Constr. 2)
Population number: popsize, each popula-
∑ f low(u, v) = 0 
v∈V
(Constr. 3)
tion represents a distribution matrix;
 Genetic times: GeneticNum;
Constraint 1 guarantees that each flow can N

∑ ( BU i − BU ) 2
only choose one path; Constraint 2 guarantees Fitness function: D( BU ) = i =1

that the flow allocation matrix can satisfy the N −1


Gene crossover probability: 0.6;
maximum acceptable capacity of the existing
Mutation probability: 0.1;
candidate paths; Constraint 3 guarantees the
When the population is initialized, the lo-
flow conservation in the residual network. The
gistic function is used as a chaotic map
net flow entering the node u is 0 except that
In this algorithm, the logistic function is
u is the source or the terminal of flows;
used as the initial value of the chaotic map
As the optimization problem (4) is a 0-1
with xn +1 = µ × xn × (1 − xn ) , where µ ∈[0, 4] is
integrated linear programming problem, it is
the parameter of logistic function. Our studies
an NP-Hard problem [29]. Please note that if
show that if x ∈[0,1] , logistic mapping is in
a chaotic state. And the iteration is consistent
Algorithm 2: Genetic algorithm for flow scheduling with a state of pseudo random distribution
Input: Flow request vector FRV , candidate path set CPS . when µ is close to 4.
Output: Flow allocation matrix FAM 4) SDN-based congestion-aware traffic
Algorithm 2: Genetic algorithm for flow scheduling scheduling algorithm (CATS): First SDN
1: According to candidate path set, ∀euv ∈ E ′ , obtain link euv belongs to the path controller collects the congestion switch
vector PVe uv OFFlowStatsEntry b y O p e n F l o w m o d u l e
2: v = Init ( popsize) StatisticsCollector . By aggregated elephant
v = logistic(v) flow detection algorithm, when the return ret
fitness (v)
is 2, it triggers aggregated traffic scheduling
3: FOR i ≤ GeneticNum do
algorithm which returns an aggregate flow al-
4: IF ( f .bytes ≥ THRESHOLD ) THEN
5: select (v) ; location matrix. SDN controller generates the
6: crossover (v) ; flow Table according to the matrix, and down-
7: mutation(v) ; loads flow Table to switches of candidate path.
8: fitness (v) ; The pseudo-code description of the algorithm
9: RETURN FAM ; is as follows:


18 China Communications • October 2017


IV. EXPERIMENTAL RESULTS AND for computing the shortest path. The shortest
ANALYSIS path from switch S1 to switch S 4 is (e8, e9) .
We use the 4K video trace of “Tears of Steel”
As mentioned above, we use the chaos genetic for streaming. The video trace is obtained
algorithm to solve the flow scheduling prob- from the video trace website (trace.eas.asu.
lem when congestion detected, and flows are edu). The arrival interval of video flows fol-
redistributed by the SDN controller. We con- lows Poisson distribution with λ = 2 . We use
duct two sets of experiments. The first groups D-ITG [33] to generate the background flow
of experiments are video streaming in a wide traffic with a Pareto distribution on/off model,
area backbone network such as video for a where the shape and scale parameters are set
live event. The second experiments are video to 1.5 and 200 respectively.
file transferring among data centers of CDN.
We use the virtual switch OVS, and floodlight
v1.2 as controller which supports OpenFlow Algorithm 3: SDN-based congestion-aware traffic scheduling algorithm (CATS)
1.3. We use video traces [32] to generate live Input: Flow Table entries of congested switch, OFFlowStatsEntry collected by the
UDP video streams in the first experiments Statistics Collector module of SDN controller.
and transfer video files over TCP in the second Output: The flow allocation matrix FAM
experiments. Algorithm 3: SDN-based congestion-aware traffic scheduling algorithm CATS
1: ret = 0 ;
4.1 Experiments of video streaming FAM = null ;
in a wide area backbone network 2: IF ( switch.congestion ≥ Congestion.THRESHOLD ) THEN
3: Aggregate Flow Detect Algorithm ;
The experimental topology of live video 4: RETURN ret ;
streaming is illustrated in figure 4. The OVS 5: IF ∃path satisfying flow.bytes < path.capacity and ret = 1 THEN
switches are S1, S2  S7. The capacity of 6: use path transfer flow
each link is 100Mbps . Video flows are steam- 7: IF ret = 2 THEN
ing from server h8 to clients h1 , h2 and h3 8: ChaosGeneticalgorithmforflowscheduling ;
and streaming from server h9 to clients h4 , 9: RETURN FAM ;
h5 , h6 and h7 respectively. By default, Dijk- 10: Generating a flow Table according to FAM
11: SDN controller send the flow Table according to the switch DPID of CPS
stra’s algorithm is used in the SDN controller

h 11

h 12 e6:100 Mbps
S5 S6
h1 h8
e5:100 Mbps e10 :100 Mbps e4:100 Mbps
100 Mbps e3:100 Mbps
h2 e8:100 Mbps e9:100 Mbps
S1 S7 S4

e1:100 Mbps e7:100 Mbps h9


h 15
h3

e2:100 Mbps
… S2 S3


h7 h 13 h 14
1

Fig. 3 Network topology generated in Mininet

China Communications • October 2017 19


At the time of 14th second in our exper- gregated elephant flow.
iment, congestion occurs and is detected on We select the top 4 candidate paths from S1
link e9 . The link e9 notifies the floodlight to S4 based on pre-k shortest paths algorithm
controller with Packet _ in message, then as follows.
triggers our SDN-based congestion-aware path 1={e1,e2,e3,e4}, path 2={e5,e6,e4},
traffic scheduling algorithm CATS. At time of path3={e1,e2,e7}, path4={e8,e9}.
congestion, the flow rates from server h8 to The path vector PVe , which is the link
i

h1, h 2 and h3 are 6.73Mbps, 6.82Mbps and ei belongs to, is expressed as follows:
0.988Mbps respectively, and flow rates from PVe = [1,0,1,0] , PVe = [1,0,1,0] , PVe = [1,0,0,0] ,
1 2 3

server h9 to h 4, h5, h6 and h7 are 6.8Mbps, PVe = [1,1,0,0] , PVe = [0,1,0,0] , PVe = [0,1,0,0] ,
4 5 6

8.68Mbps, 6.73Mbps and 0.165Mbps respec- PVe = [0,0,1,0] , PVe = [0,0,0,1] , PVe = [0,0,0,1]
7 8 9

tively. Table 2 shows the physical bandwidth The optimal residual network composed of
and residual bandwidth for each edge. The the candidate paths is shown in figure 4.
remaining bandwidth of edge e9 is 43.6Mbps, After the reallocation by our SDN-based
namely background traffic is 56.4Mbps. congestion-aware traffic scheduling algorithm
However total flow rate allocated by OSPF CATS, the flow allocation matrix FAM is as
is 36.913Mbps (where 6.73 + 0.165 + 0.988 follows:
+6.82 + 6.8 + 8.68 + 6.73 =36.913). As a re- 0 0 0 0 0 0 0
sult, the utilization rate of link e9 reaches up 0 0 0 1 1 0 0 

to 93.3% ((36.913+56.4)/100). About 36.913% 0 1 1 0 0 1 0
 
of the physical bandwidth is occupied by 1 0 0 0 0 0 1
flows going from S1 to S4. Then, flows to X-axis represents 7 flows from servers
h1, h 2, h3, h 4, h5, h6, h7 are aggregated as an ag- to h7, h6, h5, h4, h3, h 2, h1 respectively. Y-axis
indicates path1 , path2 , path3 , path4 , where 0 in-
Table II Residual bandwidth in the backbone network dicates the path is not selected, and 1 indicates
Edge Residual bandwidth Physical bandwidth selected.
E1 55.5 100 As ECMP is a commonly used meth-
e2 55.5 100 od to balance the traffic in the data cen-
e3 37.1 100 ters, we use ECMP with 4 candidate paths
e4 53.4 100 path1 , path2 , path3 , path4 for comparison. We
e5 58 100 also compare the performance of the proposed
e6 57.7 100 algorithm with OSPF [34] which is based on
e7 48.5 100 Dijkstra’s algorithm. The experimental results
e8 64.3 100 of link utilization of all candidate paths are
e9 43.6 100 shown in figure 5. It can be seen from the fig-
ure, the variance of link utilization based on
traditional OSPF is high, indicating that the
link utilization is not balanced. Our algorithm
e6:57.7
57 Mbps
57.7
S5 S6
is triggered at 14th second when congestion
e5:58Mbpss e4:53.4Mbps
bps happened, and then it reduces the variance of
e3:37.1M
1Mbps link utilization. The variance of link utiliza-
e9:43.6Mbps
S1
e8:64.3Mbpss S4 tion based on OSPF, ECMP and CATS right
S7
after 14th second is 0.032125, 0.008803 and
e1:55.5Mbps
bps e7:48.5Mbps
bps
0.0036928 respectively. The link utilization
improved with our proposed algorithm . There
e2:55.5Mbpss
S2 S3 is no fully loaded link and no idle link with
our algorithm. The overall variance of link
Fig. 4 Optimal residual network utilization based on OSPF, ECMP and CATS

20 China Communications • October 2017


is 0.040519,0.023269,0.022705 respectively. 10.558170 seconds in the sixty-fifth generation
The overall variance of link utilization based with the result of 0.0036928. Therefore, we
on ECMP and our proposed algorithm are al- propose the chaotic genetic algorithm to solve
most the same. the optimization problem of traffic scheduling
Figure 6 shows the link utilization of link as the convergence time is critical for real time
e9 with OSPF, ECMP and CATS. It can be
seen from the figure that based on the tradi-
tional OSPF algorithm, the utilization rate of 0.09

the e9 at the 14th second link is as high as


0.08 ECMP CATS OSPF
93.3085%, and in most cases the link utiliza-
tion is kept close to 100%, which will produce 0.07
high packet loss for video streaming. In our

Variance of link utilization


0.06
proposed algorithm, the link utilization over
90% triggers CATS scheduling algorithm. As 0.05
shown in the figure, the utilization of link e9
is significantly decreased after scheduling. 0.04

From figure 5 we can see that ECMP can bal-


0.03
ance the traffic significantly better than OSPF
because ECMP splits traffic based on flows on 0.02

four paths while OSPF does not balance the


0.01
traffic. However, the ECMP algorithm does
not take into account the volume of flows and 0
the real time state of the link. Therefor the link

103
109
115
121
127
133
139
145
151
157
163
169
175
181
187
193
199
13
19
25
31
37
43
49
55
61
67
73
79
85
91
97
1
7

Time(Second)
utilization reaches up to 100% sometimes.
From figure 7, we can see packet loss rate
on link e9 with traditional OSPF algorithm, Fig. 5 Variance of link utilization of candidate paths
ECMP and CATS. Packet loss occurs most
often with OSPF routing algorithm. This is
because OSPF does not take into account the
1.2
current link state and traffic load balance. Our
proposed algorithm CATS performs best in
terms of packet loss rate. 1
The convergence of the chaotic genetic al-
gorithm that we proposed is shown in figure 8.
Bandwidth Utilization of Link e9

0.8
The algorithm converges after 1.5362 seconds
in the sixtieth generation with the utilization
variance of 0.0036928, which is close to the 0.6

optimal solution. Indeed, the scheduling result


is good enough within a second and reduce the
0.4
traffic congestion in real time. We compare
the performance of chaotic genetic algorithm CA
CATS ECMP OSPF
with simulated annealing algorithm to solve 0.2

the same problem. In the simulated anneal-


ing algorithm, we set the initial temperature 0
T0 = 1000 , termination temperature Tend = e −3 ,
103
109

121
127
133
139
145
151
157
163
169
175
181
187
193
199
115
13
19
25
31
37
43
49
55
61
67
73
79
85
91
97
1
7

Time(Second)
chain length L = 200 and cooling rate q = 0.9 .
As shown in figure 8, the simulated annealing
algorithm is close to the optimal solution after Fig. 6 Bandwidth link utilization of link e9

China Communications • October 2017 21


traffic scheduling. tivity among Google data centers worldwide.
However we scale down the bandwidth and
4.2 Experiments of video file
delay for simplicity in Mininet.
transferring among data centers
In our experiments, we use Iperf to send
In this set of experiments, we setup our exper- TCP flow to simulate video file transferring
imental topology in figure 9 the same as Goo- and data synchronization. Flows go from serv-
gle B4 topology [35] which provides connec- ers h1, h 2, h3...h7 to h8, h9 through switches in
the network. Links are measuring the traffic
for congestion. Table 3 shows the physical
0.14 bandwidth and residual bandwidth for each
edge of Google B4 topology. When link e2 is
CATS OSPF ECMP
0.12 congested at 20th second in our experiments,
it sends Packet _ in messages to notify SDN
0.1 controller, then will trigger the SDN-based
Packet loss rate of Link e9

congestion-aware traffic scheduling algorithm


0.08 CATS. The flow rates of video file flows are
FRV = {1.93,1.68,1.44,1.31,0.762,0.989,1.32} i n
0.06 Mpbs at the time of 20th second. CATS algo-
rithm computes the top 3 candidate paths from
0.04 S6 to S10 based on k-shortest paths algorithm
as follows: path1={e6,e7,e8}, path2={e1,e2},
0.02 path3={e3,e4,e5}. Then, the optimal residual
network composed of the best candidate paths
0 is shown in figure 10.
106
113
120
127
134
141
148
155
162
169
176
183
190
197
15
22
29
36
43
50
57
64
71
78
85
92
99
1
8

After the reallocation by our SDN-based


Time(Second)
congestion-aware traffic scheduling algorithm
CATS, the flow allocation matrix RAM is as
Fig. 7 Packet loss rate of link e9 follows:
1 0 0 0 0 0 1 
0 1 1 0 0 0 0 
 
0 0 0 1 1 1 0 
−3
Comparison of convergence rate
4
x 10 X-axis represents flows from servers
Chotic genetic algorithm h1, h 2, h3, h 4, h5, h6, h7 to their destinations.
Simulated annealing algorithm
3.95 Y-axis indicates path1 , path2 , path3 , where 0 in-
dicates the path is not selected, and 1 indicates
3.9 selected.
The optimized value

Table III Residual bandwidth in the network


3.85
among data centers

3.8 Residual band- Physical band-


Edge
width width
3.75 e1 10 20
e2 0 10
3.7 e3 10 10
e4 15 15
3.65 e5 12 12
0 1 2 3 4 5 6 7 8 9
Time(Second) e6 10 10
e7 15 15
Fig. 8 Convergence time e8 16 16

22 China Communications • October 2017


After the flow scheduling, the variance of
link utilization is 0.0028988 and TCP packet
S12
loss rate is reduced as shown in figure 11.
From figure 11, we can see that when the link e1:20M
0M e2:10M
e2 from S12 to S10 congested around at the
20th second, it triggers our proposed traffic S0 15M
15 M S4 18M
18 M S6
e6:10M
0M
S5
e7:15M
5M
S8
e8:16M
S10
scheduling algorithm. We find that the packet e3:10M
e3 e5:12M
e5

loss rate of the congestion link is obviously re- 20M


M 20M
20M
20M
20 M
duced. The link from S6 to S5 is not used be-
fore traffic scheduling in the beginning. When
20M
20 M S3 18M
18 M e4:15M
5M 15M
15 M S11
S1 S2 15M
15 S9
the traffic scheduling algorithm CATS is S7

triggered at the 20th second, TCP flows from


h1 ... h7 are reallocated to path1 with the link Fig. 9 The simulation topology of Google B4
from S6 to S5 , then introduce packet loss on
the link e6 from S6 to S5 as shown in figure
12. h7 h1
h3 e7::15M
e7
S5 S8
As the aggressiveness of TCP congestion
h8
control algorithm, the packet loss rate will e6:1
e6:10M
0M e8:16
e8:16M
M

never go to zero at the bottleneck link. How- h4 e1:2


e1:20M
0M e2:1
e2:10M
0M
S0 15
15M
M S4 18M
18M S6 S12
S1 2 S10
10
ever we balance the link utilization with the
e3:1
e3:10M
0M e5:1
e5:12M
2M h9
increase of overall link utilization and the re- 18M
18 M

duction of the overall congestion. Indeed, the h5 h2 e4:1


e4:15M
5M
S2 S7 S9
overall file transmission time is also reduced.
Therefore, the overall performance and QoS in h6

the network is much improved with our pro-


posed SDN traffic scheduling algorithm.
Fig. 10 Optimal residual network in video le transferring

V. CONCLUSION
0.08
In this paper, we study the SDN based traffic
Packetloss rate of link from S12 to S10
engineering to improve the QoS for applica- 0.07
tions such as video streaming and video file
transferring. We propose traffic scheduling 0.06

using SDN to redistribute flows when conges-


0.05
tion happens. We introduce first a new concept
Packet loss rate

No scheduling

of aggregated elephant flow and a method to 0.04


Scheduling at 20 second
detect aggregate elephant flow for scheduling.
Then we propose a new traffic optimization 0.03

model and form into an optimization problem


0.02
with the objective to minimize the variance of
link utilization and to improve overall QoS.
0.01
Since the optimization problem is an NP-
hard problem, we propose the use of genetic 0
1
8
15
22
29
36
43
50
57
64
71
78
85
92
99
106

120
127
134
141
148
155
162
169
176
183
190
197
204
113

algorithm based on chaos theory to solve the


Time(Second)
optimization problem.

Fig. 11 TCP packet loss rate of link from S12 to S10 before and after trac schedul-
ing

China Communications • October 2017 23


[8] T
. Dave, “Openfl ow: Enabling innovation in cam-
pus networks,” Acm Sigcomm Computer Com-
0.08
munication Review, vol. 38, no. 2, pp. 69–74,
Packet loss rate of link from S6 to S5 2008.
0.07
[9] H. E. Egilmez and A. M. Tekalp, “Distributed qos
architectures for multimedia streaming over
0.06 software defined networks,” IEEE Transactions
on Multimedia, vol. 16, no. 6, pp. 1597–1609,
0.05 2014.
Packet loos rate

[10] J. Yan, H. Zhang, Q. Shuai, B. Liu, and X. Guo,


Scheduling at 20 second
0.04 “Hiqos:an sdn- based multipath qos solution,”
China Communications, vol. 12, no. 5, pp. 123–
0.03 133, 2015.
[11] C. Hopps, Analysis of an Equal-Cost Multi-Path
0.02 Algorithm. RFC Editor, 2000.
[12] A. Dixit, P. Prakash, Y. C. Hu, and R. R.
0.01 Kompella, “On the impact of packet spraying in
data center networks,” in INFOCOM, 2013 Pro-
ceedings IEEE, pp. 2130–2138, 2013.
0
[13] J. Zhou, M. Tewari, M. Zhu, A. Kabbani, L.
1
8
15
22
29
36
43
50
57
64
71
78
85
92
99
106

120
127
134
141
148
155
162
169
176
183
190
197
204
113

Poutievski, A. S- ingh, and A. Vahdat, “Wcmp:


Time(Second)
weighted cost multipathing for improved fair-
ness in data centers,” in European Conference
on Computer Systems, p. 5, 2014.
Fig. 12 Packet loss rate of link from S6 to S5 before and after trac scheduling at [14] C. Y. Hong, S. Kandula, R. Mahajan, M. Zhang, V.
the 20th second Gill, M. Nanduri, and R. Wattenhofer, “Achieving
high utilization with software-driven wan,” ACM
SIGCOMM Computer Com- munication Review,
ACKNOWLEDGEMENT vol. 43, no. 4, pp. 15–26, 2013.
[15] M. Alizadeh, T. Edsall, S. Dharmapurikar, R.
This work is partly supported by NSFC under Vaidyanathan, K. Chu, A. Fingerhut, V. T. Lam, F.
grant No.61371191 and No.61472389. Matus, R. Pan, and N. Ya- dav, “Conga: distrib-
uted congestion-aware load balancing for data-
centers,” Acm Sigcomm Computer Communica-
References
tion Review, vol. 44, no. 4, pp. 503–514, 2015.
[1] “Cisco visual networking index.,” 2016. http:// [16] N. Katta, M. Hira, C. Kim, A. Sivaraman, and J.
www.cisco.com/c/en/us/solutions/service- pro- Rexford, “Hula:scalable load balancing using
vider/visual-networking-index-vni/index.html. programmable data planes,” pp. 1–12, 2016.
[2] N. Wang, K. Ho, G. Pavlou, and M. How- [17] T. Benson, A. Anand, A. Akella, and M. Zhang,
arth, “An overview of routing optimization for “Microte:fine grained traffic engineering for
internet traffi c engineering,” IEEE Communica- data centers,” in Conference on Emerging NET-
tions Surveys and Tutorials, vol. 10, no. 1, pp. WORKING Experiments and Technologies, p- p.
36– 56, 2008. 1–12, 2011.
[3] D. Awduche, A. Chiu, A. Elwalid, I. Widjaja, and [18] S. Agarwal, M. Kodialam, and T. V. Lakshman,
X. Xiao, “Overview and principles of internet “Traffi
c en- gineering in software defi ned net-
traffic engineering,” Heise Zeitschriften Verlag, works,” in INFOCOM, 2013 Proceedings IEEE, pp.
vol. 121, no. 6, pp. 239–242, 2002. 2211–2219, 2013.
[4] D. Awduche, J. Malcolm, J. Agogbua, M. [19] R. Bhatia, H. Fang, M. Kodialam, and T. V. Laksh-
O’Dell, and J. Mc- manus, “Requirements for man, “Op- timized network traffi c engineering
traffic engineering over mpls,” Jour- nal of using segment routing,” in Computer Commu-
evidence-based social work, vol. 10, no. 2, pp. nications, pp. 657–665, 2015.
63–72, 1999. [20] S. Bidkar, A. Gumaste, P. Ghodasara, and S. Hote,
[5] “Netfl ix.” https://www.netfl ix.com. “Field trial of a software defi ned network (sdn)
[6] D. O. Awduche and B. Jabbari, “Internet traffic using carrier ethernet and segment routing in a
engineering us- ing multi-protocol label switch- tier-1 provider,” in Global Communications Con-
ing (mpls),” Computer Networks, vol. 40, no. 1, ferece, pp. 2166–2172, 2014.
pp. 111–129, 2002. [21] M. Al-Fares, S. Radhakrishnan, B. Raghavan, N.
[7] M. Casado, M. J. Freedman, J. Pettit, J. Luo, N. Huang, and A. Vahdat, “Hedera: dynamic flow
Mckeown, and S. Shenker, Ethane: taking control scheduling for data center networks,” in Usenix
of the enterprise. ACM, 2007. Symposium on Networked Systems Design and

24 China Communications • October 2017


Implementation, NSDI 2010, April 28-30, 2010, Biographies
San Jose, Ca, Usa, pp. 281–296, 2010. Xiaoming Li, is currently a
[22] A. R. Curtis, W. Kim, and P. Yalagandula, “Ma- PhD student in Communication
hout: Low- overhead datacenter traffic man- University of China (CUC), his
agement using end-host-based elephant detec- current research interests in-
tion,” in INFOCOM, 2011 Proceedings IEEE, pp. clude but not limited Software
1629–1637, 2011. Defined Networking (SDN),
[23] “ The openflow switch,” 2014. http://www.open- Multimedia Cloud, Quality of
networking.org. Service, Quality of Experience,
[24] L. Long, F. Binzhang, and C. mingyu ., “Nimble: Network Management.
A fast flow scheduling strategy for openflow
networks.,” Journal of Com- puter Science, vol. Jinyao Yan, the corresponding
38, pp. 1056–1068, 2015. author, received the B.S. degree
[25] J. Y. Yen, “Finding the k shortest loopless paths from Tianjin University, the M.S.
in a network,” Management Science, vol. 17, no. and Doctor (in engineering) de-
11, pp. 712–716, 1971. grees from Beijing Broadcasting
[26] J. Ford, L. R. and D. R. Fulkerson, “Maximal flow Institute, the Ph.D (in science)
through a network,” Canadian Journal of Math- degree from Swiss Federal Insti-
ematics, vol. 8, no. 3, pp. 399–404, 1956. tute of Technology (ETH Zurich).
[27] J. Kennington and A. Madhavan, “Optimization He is a Professor at Commu-
models and algorithms for minimizing the nication University of China, Beijing, P.R.China.His
maximum link utilization in ospf data networks,” research interests are in the areas of future network,
2007. data-driven multimedia computing and networking.
[28] R. M and P. P, “Handbook of optimization in
telecommunica- tions,” Springer Science +Busi- Hui Ren, received the B.S. de-
ness Media., pp. 679–700, 2006. gree from Liaoning Technical
[29] H. Williams, Logic and integer programming. In- University, the M.S. and Doctor
ternational Se- ries in Operations Research and (in engineering) degrees from
Management Science, Springer US, 2009. China University of Mining and
[30] W. Lin., Intelligent optimization algorithm and Technology. He is currently
its application. Tsinghua University Press, 2001. a member of the Institute of
[31] M. Javidi and R. Hosseinpourfard, “Chaos ge- Automation, a member of the
netic algorithm instead genetic algorithm,” China Society of Electronics, a member of the Beijing
International Arab Journal of In- formation Tech- Institute of Electrical Engineering, a member of the
nology, vol. 12, no. 2, pp. 163–168, 2015. National Theater Standardization Technical Commit-
[32] P. Seeling and M. Reisslein, “Video traffic char- tee and a panel of science and technology projects in
acteristics of modern encoding standards: Chaoyang District, Beijing. He is a Professor at Com-
H.264/avc with svc and mvc exten- sions and munication University of China, Beijing, P.R.China.
h.265/hevc,” The Scientific World Journal, vol.
2014, p. 189481, 2014.
[33] M. E. Crovella and A. Bestavros, “Self-similarity
in world wide web traffic: evidence and possible
causes,” IEEE/ACM Trans- actions on Networking,
vol. 5, no. 6, pp. 835–846, 1997.
[34] J. Moy, “Rfc 2328: Ospf version 2,” vol. 28, p. 1,
1998. http- s://tools.ietf.org/html/rfc2328.
[35] S. Jain, A. Kumar, S. Mandal, J. Ong, L. Pouti-
evski, A. Singh, S. Venkata, J. Wanderer, J. Zhou,
and M. Zhu, “B4: experience with a globally-de-
ployed software defined wan,” Acm Sigcomm
Computer Communication Review, vol. 43, no. 4,
pp. 3–14, 2013.

China Communications • October 2017 25

You might also like