Professional Documents
Culture Documents
Energy-Aware Routing Algorithms in Software-Defined Networks: June 2014
Energy-Aware Routing Algorithms in Software-Defined Networks: June 2014
net/publication/286561864
CITATIONS READS
47 590
6 authors, including:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Rui Wang on 20 May 2016.
Abstract—The feature of centralized network control logic in dynamic supply of network power according to business.
Software-Defined Networks (SDNs) paves a way for green energy
saving. Router power consumption attracts a wide spread The first two methods are static. Once implemented, the
attention in terms of energy saving. Most research on it is at effect of energy saving is fixed and unable to optimize
component level or link level, i.e. each router is independent of continually. Most operators and equipment providers take this
energy saving. In this paper, we study global power management energy saving manner at present. In this paper, we design
at network level by rerouting traffic through different paths to
energy saving optimization algorithm in Software-Defined
adjust the workload of links when the network is relatively idle.
We construct the expand network topology according to routers’ Networks (SDNs) from the third way. SDN[2][3] is an
connection. A 0-1 integer linear programming model is innovative network architecture in which the network control
formulated to minimize the power of integrated chassis and line- plane logic is decoupled from the network forwarding
cards that are used while putting idle ones to sleep under hardware and given to the controller. It allows network control
constraints of link utilization and packet delay. We proposed two logic to be designed and operated on a global network view.
algorithms to solve this problem: alternative greedy algorithm
Besides all the benefits above, SDN paves a way for green
and global greedy algorithm. For comparison, we also use Cplex
method just as GreenTe does since GreenTe is state of the art energy saving for the whole network: it can collect the whole
global traffic engineering mechanism. Simulation results on network topology and information of real time traffic of every
synthetic topologies and real topology of CERNET show the device; what’s more, it can get information of users’ requests
effectiveness of our algorithms. conveniently by northbound API interface.
Keywords—energy-aware; algorithms; integer linear In SDN controller, Energy saving mainly involves
programming; Software-Defined Networks. following components: network topology information module,
device statistics module, northbound API (containing users’
I. INTRODUCTION requests information API) module, energy-aware algorithm
module, flow table module, intelligent device management
The total revenue of global operators is about 2 trillion module, Openflow protocol agent module, just as shown in
dollars in 2012, and CAPEX expense 3.2 trillion dollars, Fig. 1. SDN controller first gets information of topology,
OPEX expense 1.36 trillion dollars, while energy expenditure traffic statistics and users’ requests. When there are multiple
accounts ranging from 15 to 50 percentages in OPEX[1]. requests routing between same origin-destination (OD) pair
Besides huge electricity bills, energy expenditure includes fuel and the traffic of each request path is low, it move the traffic
oil, batteries, energy device, and energy maintenance, and so to a fewer number of paths using energy-aware algorithm.
on. Meanwhile, data service of telecommunication network After adjusting the users’ traffic to reasonable paths, it put idle
explosively grows, leading to constantly expansion of network links and line-cards to sleep. And this can save considerable
scale inevitably. And energy expenditure will rise as network energy.
expands. Non-renewable resources such as oil will remain
The main contributions of this paper are as follows. We
more and more higher price in the future. The black hole of
consider how to optimize power management globally at
energy effect will become larger, forcing operators to carry
network level, rerouting traffic through different paths to
out energy conservation to maintain profit.
There are three ways of energy conservation from the Users’ Requests Information API
perspective of operators:
1. Reduce duplication of unreasonable network through Energy-aware Algorithm
network planning and optimization of resources Topology Statistics
combination. Informati Informati
on Intelligent Device Management on
2. Purchase energy-efficient equipment.
3. Intelligent sleep or regular optimization to realize
This work is supported by the National Natural Science Foundation of Openflow Protocol Agent
China (71171189), the key project of the National Natural Science Foundation
(11331012), 973 project (2011CB706901) and Huawei Technology Co. Ltd.
Fig. 1. Energy Saving Components of SDN controller
adjust the workload of links in an unsplittable way when the network design and routing in wire-line networks without a
network is relatively idle. A 0-1 integer linear programming specific routing design. Heller et al. [10] proposed ElasticTree
model is formulated to interpret the goal of minimizing the to manage power by adjusting active links and switches to
power of used integrated chassis and line-cards while putting satisfy changing data center traffic loads using OpenFlow,
idle ones to sleep under performance constraints such as link which was focus on tree-based topologies. It made full use of
utilization and packet delay. We proposed two algorithms to fat tree topology of data center and simply kept single root tree
solve this problem: alternative greedy algorithm and global structure when energy saving. This method was not applicable
greedy algorithm. Using network topologies and traffic data for general network topology. Vasić et al. [11] proposed EATe
from synthetic networks and a real network of CERNET, we to reduce energy consumption of Internet which worked in
conjunction with local measures such as sleeping and rate
compare our algorithms with Cplex used in GreenTE since
adaptation and required routers coordination. While in SDN,
GreenTe is state of the art global traffic engineering
this is not needed because of centralized controller. Zhang et al.
mechanism. Simulation results show the effectiveness of our
[12] proposed a state of the art global traffic engineering
algorithms. And global greedy algorithm can reduce line-cards mechanism, GreenTE. GreenTE considered how to maximize
power consumption by up to 67% of CERNET. the total power saving of idle links under maximum link
The rest of the paper is organized as follows. Section II utilization and network delay by rerouting in a splittable way.
shows the related work of energy saving. Section III gives the A Mixed Integer Programming problem was formulated and
basic background and its assumptions, and constructs the Cplex, commercial software, was used to solve this problem
expand network and formulates the global energy saving with a time limit of 300s. This method could not ensure a
problem as a 0-1 integer programming model. Section IV feasible solution in limited time. They did not propose practical
proposes practical solutions with time complexity analysis: algorithms as well. While our algorithm is more practical and
alternative greedy algorithm and global greedy algorithm. Time can be scalable to any network topology, especially large
complexity analysis is also presented. Cplex heuristic is built as complicated network that cannot turn off links manually.
GreenTE does for a better comparison. Section V shows the
experimental results. Section VI gives the conclusion. III. NETWORK MODEL AND PROBLEM STATEMENT
1) Problem Statement A4 B4
are denoted as ce , we and dele . There are D requests LSP Fig. 4. Expand topology of Fig 2.
{(si , ti , di , delayi ), i 1,, D} routed in the network, where
si , ti , di , delayi represent the origin, destination, demand, delay 3) The 0-1 Integer Programming Model
of request i respectively. And request i is transported on path We formulate the model of global energy saving problem
as 0-1 integer programming model P1 based on the expand
Pi . The power consumption of each integrated chassis and
topology. The notation used is shown in TABLE II.
line-cards is given, denoted by PC 0 , PCv .The goal is to
v
minimize the power consumption of used integrated chassis TABLE II. NOTATION USED IN THIS PAPER
and line-cards by rerouting traffic in an unsplittable way so
Notation Meaning
that the maximum link utilization is no more than 50%.
We take a 3-nodes network as simple example to yj 1 if integrated chassis j is in use,0 otherwise
illustrate this problem. Each router has 4 line-cards and xv 1 if line-card v is in use,0 otherwise
connection among line-cards is shown in Fig. 2(b). Assume
si The origin of request i
that the cost and capacity of each link is 1 and 10M
respectively. There are 3 requests on the network now. They ti The destination of request i
are routed as follows. The number of used line-cards is 7. di The demand of request i
Maximum link utilization is 50%.
Lsp1:{A,B,5M}, P1 : link AB ,line-cards: A1-B2; delayi The delay threshold of request i
Lsp2:{A,C,5M}, P2 : link AB-BC,line-cards: A2-B4,B3-C1; xv i
1 if line-card v is used by request i ,0 otherwise
Lsp3:{B,C,5M}, P3 : link BC,line-cards: B4 -C4 . xuv i
1 if link uv is used by request i ,0 otherwise
We can reroute the traffic for energy saving as follows. cuv The capacity of link uv
Lsp1:{A,B,5M}, P1 : link AB ,line-cards: A1-B2; PCv The power consumption of line-card v
Lsp2:{A,C,5M}, P2 : link AC,line-cards: A1-C1; PC 0j The power consumption of integrated chassis j
Lsp3:{B,C,5M}, P3 : link BC,line-cards: B2-C1. k Maximum number of candidate paths for each request
After rerouting, the number of used line-cards is 3. X ij 1 if request i uses the jth candidate path Pji , 0 otherwise
And maximum link utilization is 50%. eij 1 if link e is on the path Pji of request i , 0 otherwise
A A B C
1 1 1 The goal is to minimize the power consumption of
2 2 2
3 3 3 used integrated chassis and line-cards. Equation 1
B C 4 4 4 demonstrates that an integrated chassis can be asleep unless all
(a).router network (b). inner topology of its line-cards are asleep. That means y j must be 1 if a
Fig. 3. A simple example of energy saving problem
min PC 0
j yj PC x v v P1 4. Calculate the residual network G 'f for request i* : release
jV vV 1
1 the bandwidth of Pi* , subtract the bandwidth of
s.t. xv y j , j V
| V 1| vStar ( j )
(1)
Paths {Pi } , calculate available bandwidth of each link.
*
1 D
xi xv , v V 1
D i 1 v
(2) Delete corresponding links of if residual bandwidth is
lower than d i . Then let the weight of inbound link of
1, u si
used line-card be 0, other inbound link be PCv . Process
uv (v x i
x i
vu
1, u ti , u V ', i 1,, D (3)
( u , v ) A , u ) A 0, else the weight of inbound links of integrated chassis in the
uv
( u , v ) A
x i
1, u N \ {si , ti }, i 1,, D (4) same way. Denote the new network as G 'f . There are two
1 attributes for each link in G 'f : weight and delay.
xuvi ( xui xvi ) (u , v) A1, i 1,, D (5)
D
2 5. Find the shortest path Pi ' in G 'f using Dijkstra algorithm
*
xuvi di 50%cuv
i 1
(u , v) A1 (6)
so that Pi arg min f ( Paths {Pi }) {P} , where P is a
'
* *
P
xuvi deluv delayi i 1,, D (7)
( u , v ) A path from si to ti under demand and delay constraints.
y j , xv , x iv , x uvi {0,1}
Give priority to weight when using Dijkstra. Select the
xv (v Star ( j )) equals 1.Equation 2 ensures that a line-card link with smaller weight if delay constraint is satisfied.
cannot put to be sleep if at least one request uses it. Equation 3 Let fnew f ( Paths {Pi } {Pi ' } ;
* *
we cannot solve in polynomial time. Consequently, we bandwidth of Pi* . The shortest path in step 5 means the
propose heuristic algorithms to tackle this problem.
minimum power consumption path based on the weight of
IV. HEURISTIC ALGORITHMS links. Step 2 and 7 are stopping rules. The former represents
We propose two heuristic algorithms to solve P1 : the loop num limit. The latter represents the process stops if
alternative greedy algorithm and global greedy algorithm. the goal is not improved much.
Then we analyze the time complexity of them. And we also B. Global greedy Algorithm
formulate a model in order to use Cplex as a comparison. The effect of energy saving can be better if there is no
A. Alternative Greedy Algorithm limit on adjusting requests as few as possible. So we propose
The idea of alternative greedy algorithm is based on the global greedy algorithm. The idea is as follows: sort all
original routing of requests, pretend to adjust requests as few requests according to priority order; construct the residual
as possible. Find the corresponding request that the total network for each request; reroute request one by one until all
consumption is minimum after releasing the traffic of it. requests are arranged. The algorithm is given in Algorithm2.
Reroute this request in residual network. Renewing paths if Algorithm2. Global Greedy Algorithm (GGA)
the goal value becomes smaller. Repeat the same process until 1. Sort all requests according to priority order. Assume the
all requests are done. This is one loop. Repeat this until two new order is 1,…, D . Let fbest 0 , Paths , i 1 ;
goal values of adjacent loops are close. Let f ( P) denote the 2. If Paths D , stop. fbest is the total power consumption.
total power consumption of the set of paths P .The algorithm
Else , go to step 3;
is given in Algorithm 1.
3. Construct residual network G 'f of expand network G ' for
Algorithm1. Alternative Greedy Algorithm (AGA) request i : calculate the residual bandwidth for each link,
1. Calculate the initial total power consumption delete corresponding links if residual bandwidth is lower
fbest f ( Paths) . Let initial set S {1,, D} , num 1 ; than d i .Then let the weight of inbound link of used line-
2. If num 10 , go to step 3; else, stop. card be 0, other inbound link be PCv . Process the weight
3. If S , calculate i* arg min f ( Paths {Pi }) , of inbound links of integrated chassis in the same way.
1 i D , iS
Denote the new network as G 'f . There are two attributes
S S \{i*} ,go to step 4; else, num num 1 , go to step 7;
for each link in G 'f : weight and delay.
4. Find the shortest path Pi in G 'f using Dijkstra algorithm fewer variables. Using Cplex for solution is time consuming,
though the search space is reduced. What’s more, Cplex
so that Pi arg min f ( P) , where P is a path from si to
P cannot ensure an optimal solution in limited time.
ti under demand and delay constraints. Give priority to
weight when using Dijkstra. Select the link with smaller V. EXPERIMENTAL EVALUATION
weight if delay constraint is satisfied.
5. fbest f ( Path {Pi }) , Paths Paths {Pi } , i i 1 ,go A. Experimental Setup
to step 2. We have run simulations on 3 several synthetic networks
with different size and real network of CERNET[14].
In step 3, the residual available bandwidth of link e in Topologies and demand are generated using Matlab, assuming
G 'f equals 50% Ce minus the bandwidth used by Paths . that a router has 4 or 8 line-cards. Greedy algorithms are
implemented in VC++. For synthetic networks, the capacity is
C. Time Complexity of Heuristic Algorithms set to be 5M and demand of requests is uniformly chosen at
For Algorithm1, step 1 calculates in O( D * n) in the worst random from interval [0, 1].
case. In each loop, step 3~6 are repeated at most D times.
We get a minimum cost routing using greedy algorithm
Step 3 takes O( D2 * n) time. Step 4 requires searching all links
as an initial solution. For sake of testing the effectiveness of
in G ' and thus has time complexity of O( Dn m) . Step 5 our algorithms, we compare alternative greedy algorithm,
requires running Dijkstra algorithm in O(n2 ) time. Thus, global greedy algorithm, Cplex method and initial solution.
Algorithm 1 has worst case time complexity of We assume that the power consumptions of different line-
O( Dn 10D( D2n ( Dn m) n2 )) O( D3n D(m n2 )) . cards are the same and target at minimizing the number of
Similarly, Algorithm2 has worst case time complexity used line-cards which is denoted by Lc#.
of O( D( Dn m n2 )) O( D2 n D(m n2 )) . B. Simulation Results
D. Using Cplex 1) Synthetic Networks
The size of synthetic networks is 6, 25 and 400,
For comparison, we also use Cplex to solve this
respectively. Fig. 5 shows a 6 nodes router network with 36
problem just as GreenTe does. This method is based on
line-cards. The requests’ num is 20. Fig.5 and TABLE III.
searching solution in candidate paths instead of all possible
show different results of four solutions. Lc# of initial solution
paths. First of all, we calculate k-short paths {P1i , P2i ,, Pki } as is 21. Global greedy algorithm reduces Lc# by 61% while
candidate paths for each request i in G ' using k-shortest paths alternative greedy reduces by 28%. The optimal number of
algorithm[14]. After that, we formulate the model P2 as follows line-cards using Cplex is gradually decreasing when the
based on candidate paths. Finally, use Cplex to solve P2. candidate paths’ number k becomes larger. Line-cards’
number is still 7 when k is larger than 17. So we can deduce
min PC
jV
0
j yj PC x
vV 1
v v P2
that 7 is optimal and global greedy solution is close to optimal.
k
s.t. X
j 1
ij 1, i 1,, D (8)
D k
i 1 j 1
eij di X ij 50%ce,e A1 (9)
delay ( Pji ) * X ij delayi ,i 1,, D (10) (a).router network (b).expand network
1
e ( xv xu ), e (v, u ) A1 (11) Fig. 5. A six nodes network
2 D k
1
e eij X ij , e A1 (12)
D i 1 j 1
1
xv y j , j V
| V 1| vStar ( j )
(13)
xv ,e , X ij {0,1}
(a).initial (b).alternative greedy (c).global greedy
Each request is required to select only one path from k Fig. 6. Results for six nodes network
candidate paths. One change in the model is the addition of
variable X ij . If it equals 1, request i uses candidate TABLE III. RESULT FOR SIX NODES NETWORK USING CPLEX