âDepartment of Electrical and Computer Engineering, University of Houston, Houston, TX ..... [1] Cisco, âCisco visual networking index: Global mobile data traffic.
A Distributed ADMM Approach for Mobile Data Offloading in Software Defined Network Lanchao Liu∗ , Xianfu Chen† , Mehdi Bennis‡, Guoliang Xue§, and Zhu Han∗ ∗ Department
of Electrical and Computer Engineering, University of Houston, Houston, TX, 77004 † VTT Technical Research Center of Finland, Oulu, Finland, FI-90571 ‡ Center for Wireless Communications, University of Oulu, Oulu, Finland, FI-90014 § Ira A. Fulton Schools of Engineering , Arizona State University, Tempe, AZ, 85287
Abstract—Mobile data offloading has been introduced to alleviate the congestion of cellular networks and to improve the quality of service for mobile end users. This paper presents a distributed mechanism for mobile data offloading in software defined network (SDN) at the network edge. In SDN, the data traffic of base stations (BSs) can be dynamically offloaded to access points (APs), which is enabled by the SDN controller. The SDN controller formulates a revenue maximization problem to optimize the data offloading decision, and solves the problem in a fully distributed fashion. The proposed mechanism is based on the proximal Jacobian multi-block alternating direction method of multipliers (ADMM). BSs and APs perform the offloading decision update concurrently, and are coordinated by the SDN controller through dual variables to reach a consensus on the offloading demand and supply. Numerical simulations validate the effectiveness of the proposed algorithm.
IP Networks
OpenFlow enabled gateways
OpenFlow Controller ANDSF
Base station
Access network discovery and selection function
WiFi or small cell access points Mobile user
I. I NTRODUCTION Nowadays, people are used to access various services such as search engine, email, GPS navigation, streaming video and online games from their mobile terminals through wireless access networks. Wireless has become the primary or even the sole access method for more and more people. The global mobile data traffic has reached 1.5 exabytes per month at the end of 2013, and will increase nearly 11-fold between 2013 and 2018, reaching 15.9 exabytes per month by 2018 [1]. The rapid increase in mobile network traffic far exceeds the growth in service revenues as well as in the budgets required to address the new demands, and mobile service operators (MSOs) need to enhance their infrastructures and services in a timely and cost-effective manner to carry higher volumes of traffic and support more sophisticated services. Mobile data offloading [2], which refers to offloading traffic from cellular networks to alternate wireless technologies like WiFi or small cell networks, promises to address the tremendous growth in mobile data and rapidly evolving mobile services. Mobile data offloading can be enabled by software defined network (SDN) [3] at the edge, which is able to dynamically route the traffic in a mobile network. An illustration of mobile data offloading via SDN is shown in Fig. 1. In this model, the access network discovery and selection function (ANDSF) can discover wireless networks close to the mobile user and perform mobile data offloading. The ANDSF interacts with the virtual SDN centralized controller for the offloading management, which can be implemented
Fig. 1. An illustration of the network model. The mobile data offloading can be enabled by the SDN at the network edge to dynamically route the data traffic in a mobile network.
by standardized interfaces such as OpenFlow [4]. MSOs have already deployed their own WiFi access points or initiated collaboration with existing WiFi networks to enable mobile data offloading, and the SDN-at-the-edge can significantly alleviate both costs and operational difficulties incurred by the simultaneous operation of access networks over multiple wireless technologies. The benefits of mobile data offloading have been quantitatively studied in [2], [5], [6], which indicate that WiFi or small cell network can largely boost cellular network capacity, offload cellular data traffic, and save a huge amount of battery power for mobile end users. [7] proposed an incentive framework to motivate mobile users to leverage their delay tolerance for cellular data traffic offloading, which can opportunistically offload cellular data traffic to WiFi networks or small cells and relieve the cellular traffic overload. A dynamic resource allocation and parallel execution framework for mobile code offloading is presented in [8], which exploited the concept of smartphone virtualization in the cloud and provides methodlevel computation offloading. [9] utilized opportunistic communications to facilitate information dissemination and data offloading in mobile social networks, which can significantly
reduce the amount of mobile data traffic. [10] considered a market-based mobile data offloading solution, which utilized the non-cooperative game theory to decide how much traffic should each AP offload for each BS and what is the corresponding payment. [11] extended [10] by formulating the offloading problem based on the network utility maximization (NUM) [12] framework, and proposed an iterative double auction mechanism to solve it. In this work, we propose a distributed mechanism for mobile data offloading in SDN at the netowrk edge. The SDN controller dynamically routes the data traffic in a mobile network to decide how much data traffic should APs offload for BSs. A total revenue maximization problem is formulated by jointly considering the offloading utility of BSs and cost of APs. The optimization problem is solved in a distributed fashion based on the proximal Jacobian multi-block alternating direction method of multipliers (ADMM). The BSs and APs perform the offloading decision update concurrently, and are coordinated by the SDN controller through dual variables to reach a consensus on the offloading demand and supply. The proposed mechanism has the following characteristics: 1) Simple computation at the SDN controller: To alleviate the computation burden of mobile data offloading at the SDN controller, the operations at the SDN controller is designed to be simple one-time algebraic calculation instead of solving an optimization in related work [11]. 2) Privacy preserving: During the process of the optimization for offloading decision, the utility functions at BSs and cost functions at APs are only known to themselves. 3) Concurrent update at the BSs and APs: The updating process at the BSs and APs are performed concurrently. The proposed algorithm is evaluated by simulations and numerical results validate the effectiveness of the mechanism. The remaining of this paper is organized as follows. Section II presents the system model and problem formulation. The proposed distributed algorithm is described in Section III, and the numerical results are given in Section IV. Finally, Section V concludes the paper. II. S YSTEM M ODEL AND P ROBLEM F ORMULATION We consider a mobile network which consists of B cellular base stations (BSs) and A access points (APs). A BS b ∈ {1, . . . , B} serves a group of mobile users and has the demand to offload its traffic to APs. An AP a ∈ {1, . . . , A} is a WiFi or femtocell AP which operates in a different frequency band and supply its bandwidth for data offloading. The maximum available capacity for data offloading of each AP a is denoted by Ca . The SDN controller manages the BSs and APs through the ANDSF, and makes the mobile data offloading decisions according to various trigger criteria. Such criteria can be the number of mobile users per BS, available bandwidth/IP address of each BS, or aggregate number of flows on a specific port at a BS. Let xb = [xb1 , . . . , xbA ]⊤ represent the offloaded traffic of BS b, where xba denotes the data of BS b offloaded through AP
a. Correspondingly, ya = [ya1 , . . . , yaB ]⊤ represents the admitted traffic of AP a, where yab represents the admitted data traffic from BS b. Generally, a feasible mobile data offloading decision exists when BSs and APs reach an agreement on the amount of offloading data, i.e., xba = yab , ∀a and ∀b. We assume that the mobile data of BSs can be offloaded to all of the APs without loss of generality. Moreover, we assume that the time is slotted and during each slot duration the offloading demand from BSs is fixed. The SDN controller needs to find a feasible offloading schedule at the beginning of each time slot, while maximizing the utility of BSs at a reasonable cost of APs. We denote BS b’s utility of offloading its traffic to APs by Ub (xb ), where Ub (·) is designed to be a non-decreasing, non-negative and concave function in xb , ∀b. For example, the function can be logarithmic, and the concavity is justified because of diminishing returns of the resources allocated to the offload data. Likewise, we use function La (ya ) to describe the AP a’s cost of helping BSs offload data, where La (·) is a non-decreasing, non-negative and convex function in ya , ∀a. The cost function can be a linear cost function, which means the total cost of APs will increase as the amount of admitted mobile data increases. For the SDN controller, the revenue for mobile data Ptotal PA B offloading is expressed as U (x ) − b b b=1 a=1 La (ya ). To maximize the total revenue, the equivalent minimization optimization problem can be formulated as, min
{x1 ,...,xB },{y1 ,...,yA }
s.t
A X a=1 B X
La (ya ) −
B X
Ub (xb ),
(1)
b=1
yab ≤ Ca ,
∀a,
(2)
b=1
xba = yab ,
∀a, b,
(3)
where (2) stands for the capacity constraint at each AP, and (3) represents the consensus of BSs and APs on the amount of mobile data. In this paper, we propose an algorithm based on ADMM to solve the convex optimization problem (1) in a fully distributed fashion. III. P ROPOSED A LGORITHM We first introduce the background of the proximal Jacobian multi-block ADMM, and then we describe the proposed distributed optimization algorithm. A. Proximal Jacobian Multi-block ADMM The ADMM [13], [14] is a special case of primal-dual algorithms, and [14] surveyed the application of two-block ADMM in distributed optimization and statistical learning. For multi-block ADMM, the general form is expressed as min
x1 ,x2 ,...,xN
f (x) = fi (xi ) + . . . + fi (xN ),
s.t. Di xi + . . . + DN xN = c, xi ∈ Xi , i = 1, . . . , N,
(4)
ni ⊤ ⊤ where x = (x⊤ 1 , . . . , xN ) , Xi ⊂ R (i = 1, 2, . . . , N ) are m×ni closed convex set. Di ∈ R (i = 1, 2, . . . , N ) are given matrices, c ∈ Rm is a given vector, and fi : Rni → R (i = 1, 2, . . . , N ) are closed convex proper functions. The augmented Lagrangian function of (4) can be expressed as N N X ρ X Di xi −c)+ k fi (xi )−λ⊤ ( Lρ (x, λ) = Di xi −ck22 . 2 i=1 i=1 i=1 (5)
SDN Controller ①
N X
where λ ∈ Rm is the Lagrange multiplier and ρ > 0 is the penalty parameter. In proximal Jacobian Multi-block ADMM, the update of xi is 1 xk+1 = arg min(Lρ (xi , {xkj }j6=i , λk )+ kxi −xki k2Pi ) i 2 xi X ρ λk = arg min(fi (xi )+ kDi xi + Dj xkj − c − k22 2 ρ xi j6=i 1 + kxi −xki k2Pi ) 2
(6)
where kxi k2Pi = x⊤ i Pi xi for some symmetric and positive semi-definite matrix Pi 0. The involvement of the proximal term [15] can make the subproblem of xi strictly or strongly convex, and make the problem more stable. Moreover, multiple choice of Pi can make the subproblems easier to solve. The update of Lagrangian multiplier is N X Di xk+1 − c), λk+1 = λk − γρ( i
where γ > 0 is the damping parameter. The global convergence of the proximal Jacobian ADMM is proved in [16]. It enjoys a convergence rate of o(1/k) under conditions on Pi and γ. [17] presented a short survey on multi-block ADMM algorithms and its applications in big data optimizations. B. Distributed Mobile Data Offloading We propose a fully distributed algorithm to solve the optimization problem (1). The computing paradigm of the proposed algorithm is shown in Fig. 2 and can be described as follows. During each iteration, the BSs and APs update x and y concurrently. The updated x and y are gathered by the SDN controller, which performs a simple update on λ and scatters the dual variables back to the BSs and APs. The iteration goes on until a consensus on the offloading demand and supply is reached. Specifically, we fist calculate the partial Lagrangian of (1), which introduces the Lagrange multipliers only for constraint (3), A X
La (ya ) −
a=1
−
A X B X a=1 b=1
λab (xba − yab ) +
B X
Ub (xb ) b=1 A X B X
ρ 2 a=1
kxba − yab k22 ,
ܡ
②ࣅ
ࣅ②
…
①
…
Base Stations
Access Points
① Gather: BSs and APs concurrently update ܡܠǡwhich are gathered by controller. ② Scatter: Controller simply updates ࣅǡ
are scattered to BSs and APs
Fig. 2. Distributed computing paradigm of proposed algorithm.
concurrently according to the proximal Jacobian multi-block ADMM. We describe the update procedure of the BSs, APs and SDN controller as follows. Base Station Update: At each BS b, the update rule can be expressed as, ρ xk+1 = arg min(−Ub (xb )+ b 2 xb
A X
1 kxba −pkab k22 + kxb −xkb k2Pi ), 2 a=1 (9)
(7)
i=1
Lρ (x, y, λ) =
ܠ
(8)
b=1
where λ ∈ RAB is the Lagrange multiplier and ρ is the penalty parameter. The updates of BSs and APs can be performed
where Pi = 0.1I and I is the identity matrix, and pkab = λk k (yab + ρab ), ∀a is the ‘signal’ sent from the SDN controller to BS b. The update (9) is a small scale unconstrained convex optimization problem. For each round of the update, it sends xb of size A to the SDN controller. Note that the update of each BS b is performed independently and can be calculated locally. Once xb is updated, it is sent to the SDN controller while the utility function Ub (·) is kept confidential. Access Point Update: The update rule at each AP a can be expressed as, ρX k 2 kyab − qba k2 2 B
yk+1 = arg min(La (ya ) + a yb
1 + kya − yka k2Pi ), 2
b=1
s.t
B X
yab ≤ Ca ,
(10)
b=1 λk
k where Pi = 0.1I and qba = (xkba − ρab ), ∀b. qba is the ‘signal’ from the SDN controller to AP a. The update (10) is a small scale convex optimization problem with linear inequality constraints. For each round of the update, it sends ya of size B to the SDN controller. The update of y is also performed independently at each AP. During the update, the information of cost function La (·) is kept private. ya is sent to the SDN controller once updated. SDN Controller Update: At the SDN controller, the update
Algorithm 1 Distributed Mobile Data Offloading 1
Relative objective
Initialize: x0 ,y0 λ0 , ρ > 0, γ > 0; for k = 0, 1, . . . do {Update xb and ya for b = 1, . . . , B and a = 1, . . . , A, concurrently.} {Base station update, ∀b} PA λk k − ρab k22+ xk+1 = arg minxb −Ub (xb )+ ρ2 a=1 kxba −yab b 1 k 2 2 kxb −xb kPi ; {Access point update, ∀a} PB λk yk+1 = arg minyb La (ya )+ ρ2 b=1 kxkba −yab − ρab k22 + a 1 k 2 2 kya − ya kPi ; {SDN controller P update} B PA k+1 k+1 k λk+1 = λ − γρ ab ab b=1 a=1 (xba − yab ); end for Output x, y;
0.9 0.8 0.7 Proposed distributed algorithm. B =5, A =5. Proposed distributed algorithm. B =5, A =10. Optimal objective
0.6 0.5 0
10
20
30
40
50
Iteration Fig. 3. Convergence performance of the proposed algorithm by objective value when (B = 5, A = 5) and (B = 5, A = 10).
rule can be expressed as, k λk+1 ab = λab − γρ
B X A X
k+1 (xk+1 ba − yab ).
1
Proposed distributed algorithm.B =5, A =5 Proposed disrtibuted algorithm.B =5, A =10
(11)
After gathering x and y from the BSs and APs, the SDN controller performs a simple update on the dual variable λ by a simple algebra operation. After that, the ‘signal’ variables pba and qba are scattered back to the corresponding BSs and APs, respectively. For each round of the update, it sends pba , ∀a to each BS b, which is of size A, and sends qba , ∀b to each AP a, which is of size B. Remark that in the Jacobian type update, the iterations of the BSs and APs are performed concurrently instead of consecutively in the Gauss-Seidel type update. There is no direct communication between the BSs and APs, which kept the intermediated update results of x and y confidential to each other. The updates at iteration k + 1 only depends on its previous value at iteration k, which enables a fully distributed implementation. At each iteration, the update operations at BSs and APs are quite simple. The update at each BS b and AP a are simple small scale convex optimization problems, which can be quickly solved by many off-the-shelf tools like CVX [18]. As for the communication overhead, for each iteration the signaling between each BS and SDN controller is of the size 2A (size of xb and pba , ∀a). Likewise, the signaling between each AP and SDN controller is of the size 2B (size of ya and qba , ∀b). The sizes of those signaling messages are quite small compare with the offloading message body and can be communicated in the dedicated control channel. The proposed distributed algorithm is described in Algorithm 1. IV. N UMERICAL R ESULTS We first briefly introduce the evaluation setup, and then present the numerical results of the proposed algorithm.
Normalized residual
b=1 a=1
0.8 0.6 0.4 0.2 0 0
10
20
30
40
50
Iteration Fig. 4. Convergence performance of the proposed algorithm by residual when (B = 5, A = 5) and (B = 5, A = 10).
A. Evaluation Settings We consider a wireless access network consists of B = 5 base stations and A = {5, 10} access points coordinated by the SDN controller. The SDN controller will offload mobile data traffic of the BSs to APs, and the available capacity of each AP for offloading is Ca = 10M bps. The utility function of BS b is Ub (xb ) = log(x⊤ b 1+1), where 1 is the all one vector. The cost function of AP a is a linear cost expressed as La (ya ) = θa ∗y⊤ a 1, where θa > 0 is the cost coefficient. The value of θa is application specific. During the numerical tests, we assume θa is a Gaussian random variable which has a distribution N (0, 1) for simplicity. We perform the numerical tests on the offloading decision for one time slot, and simulation results are presented as follows. B. Convergence Performance We investigate the convergence performance of the proposed algorithm in the sense of optimization objective and residual.
C. Offloading Performance We study the performance of the mobile data offloading by considering the offloading gap between the BSs demand and APs supply. Here we only consider the scenario (B = 5, A = 5). Note that a feasible offloading P exists P when xba = B A yab , ∀a and ∀b. Thus the total market gap, a=1 b=1 (xba − yab ), is calculated here. To understand the efficiency of the proposed algorithm for each base station, we zoom in the gaps between BS 1 & AP 1 (y11 − x11 ), and BS 1 & AP 2 (y12 − x21 ), respectively. Due to the different scales of those gaps, we normalized their maximum to 1. The numerical results are shown in Fig. 5. It is shown in Fig. 5 that after several times of iterations, the total market gap reduces to zero, which means that the BSs and APs have reached on a consensus on the mobile data offloading demand and supply. The offloading gaps between BS 1 & AP 1 (y11 − x11 ), and BS 1 & AP 2 (y12 − x21 ) also gradually converge to zero. Note that the convergence of those gaps to zero are not necessary synchronized. When those gaps all converge to zero, the decision of the mobile data offloading is made and the maximal total revenue is achieved. V. C ONCLUSIONS In this paper, we have proposed a distributed approach for mobile data offloading in SDN. We have formulated a total revenue maximization problem by jointly considering the offloading utility of BSs and cost of APs for offloading decision. We have applied the proximal Jacobian multi-block ADMM to solve the optimization problem in a fully distributed fashion. We have evaluated the proposed algorithm through numerical simulations. R EFERENCES [1] Cisco, “Cisco visual networking index: Global mobile data traffic forecast update, 2013−2018,” Feb. 2014. [2] K. Lee, J. Lee, Y. Yi, I. Rhee, and S. Chong, “Mobile data offloading: How much can wifi deliver?” IEEE/ACM Transactions on Networking, vol. 21, no. 2, pp. 536–550, Apr. 2013.
1
Offloading gap between BS1 and AP1, y11−x11 Offloading gap between BS1 and AP2, y12−x21 Total offloading gap between BSs and APs
0.8
Normalized Gap
Two scenarios, (B = 5, A = 5) and (B = 5, A = 10), are considered here. Since different scenarios have different optimal objective, we use the relative objective ok /o∗ in our simulations. The ok is the objective value calculated by the proposed distributed algorithm during the iteration, and o∗ is the optimal objective obtained method. P through PB the centralized 2 The residual is defined as A kx − y k , ba ab 2 we also a=1 b=1 normalize the maximal residual to 1 for better readability. The convergence of the proposed distributed algorithm is shown in Fig. 3 and Fig. 4. Fig. 3 shows that the proposed algorithm converges to the optimal objective in a moderate number of iterations when B = 5 and A = 5. It takes a longer time for the proposed distributed algorithm to converge when A = 10. It indicates that when these is more APs in the access network, it will take a longer time for the SDN controller to coordinate BSs and APs for a consensus on the offloading demand and supply. The normalized residual is shown in Fig. 4. It is shown that after several times of iterations the residual of optimization problem (1) reduces to zero for both scenarios.
0.6 0.4 0.2 0 −0.2 0
10
20 30 Iterations
40
50
Fig. 5. The offloading gap of the proposed algorithm.
[3] Cisco, “Software-defined networking: The new norm for networks,” Apr. 2012. [4] N. Mckeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner, “Openflow: Enabling innovation in campus networks,” SIGCOMM Comput. Commun. Rev., vol. 38, no. 2, pp. 69–74, Mar. 2008. [5] A. Balasubramanian, R. Mahajan, and A. Venkataramani, “Augmenting mobile 3g using wifi,” in 8th International Conference on Mobile Systems, Applications, and Services, San Francisco, CA, Jun. 2010. [6] S. Dimatteo, P. Hui, B. Han, and V. O. K. Li, “Cellular traffic offloading through wifi networks,” in IEEE 8th International Conference on Mobile Adhoc and Sensor Systems (MASS), Valencia, Spain, Oct. 2011. [7] X. Zhuo, W. Gao, G. Cao, and Y. Dai, “Win-coupon: An incentive framework for 3g traffic offloading,” in 19th IEEE International Conference on Network Protocols (ICNP), Vancouver, Canada, Oct. 2011. [8] S. Kosta, A. Aucinas, P. Hui, R. Mortier, and X. Zhang, “Thinkair: Dynamic resource allocation and parallel execution in the cloud for mobile code offloading,” in IEEE INFOCOM, Orlando, FL, Mar. 2012. [9] B. Han, P. Hui, V. S. A. Kumar, M. V. Marathe, J. Shao, and A. Srinivasan, “Mobile data offloading through opportunistic communications and social participation,” IEEE Transactions on Mobile Computing, vol. 11, no. 5, pp. 821–834, May 2012. [10] L. Gao, G. Iosifidis, J. Huang, and L. Tassiulas, “Economics of mobile data offloading,” in IEEE SDP Workshop, Turin, Italy, Apr. 2013. [11] G. Iosifidis, L. Gao, J. Huang, and L. Tassiulas, “An iterative double auction for mobile data offloading,” in 11th International Symposium on Modeling Optimization in Mobile, Ad Hoc Wireless Networks (WiOpt), IIT Bombay, Mumbai, May 2013. [12] M. Chiang, S. H. Low, A. Calderbank, and J. C. Doyle, “Layering as optimization decomposition: A mathematical theory of network architectures,” Proceedings of the IEEE, vol. 95, no. 1, pp. 255–312, Jan. 2007. [13] D. Bertsekas and J. Tsitsiklis, Parallel and Distributed Computation: Numerical Methods (2nd ed.). Belmont, MA: Athena Scientific, 1997. [14] S. Boyd, N. Parikh, E. Chu, B. Peleato, and J. Eckstein, “Distributed optimization and statistical learning via the alternating direction method of multipliers,” Foundation and Trends in Machine Learning, vol. 3, no. 1, pp. 1–122, Nov. 2010. [15] N. Parikh and S. Boyd, “Proximal algorithms,” Foundation and Trends in Optimization, vol. 1, no. 3, pp. 123–231, 2013. [16] W. Deng, M. Lai, Z. Peng, and W. Yin, “Parallel multi-block ADMM with o(1/k) convergence,” online at http://arxiv.org/abs/1312.3040, 2014. [17] L. Liu and Z. Han, “Multi-block ADMM for big data optimization in smart grid,” in International Conference on Computing, Networking and Communications, Anaheim, CA, Feb. 2015. [18] M. Grant and S. Boyd, “CVX: Matlab software for disciplined convex programming, version 2.1,” http://cvxr.com/cvx, Mar. 2014.