# Energy-Efficient User Association with Congestion Avoidance and Migration Constraint in Green WLANs

Authors: Wenjia Wu; Junzhou Luo; Kai Dong; Ming Yang; Zhen Ling
Journal: Wireless Communications and Mobile Computing
 (2018)

---

## Abstract

Green wireless local area networks (WLANs) have captured the interests of academia and industry recently, because they save energy by scheduling an access point (AP) on/off according to traffic demands. However, it is very challenging to determine user association in a green WLAN while simultaneously considering several other factors, such as avoiding AP congestion and user migration constraints. Here, we study the energy-efficient user association with congestion avoidance and migration constraint (EACM). First, we formulate the EACM problem as an integer linear programming (ILP) model, to minimize APs’ overall energy consumption within a time interval while satisfying the following constraints: traffic demand, AP utilization threshold, and maximum number of demand node (DN) migrations allowed. Then, we propose an efficient migration-constrained user reassociation algorithm, consisting of two steps. The first step removesk AP-DN associations to eliminate AP congestion and turn off as many idle APs as possible. The second step reassociates these k DNs according to an energy efficiency strategy. Finally, we perform simulation experiments that validate our algorithm’s effectiveness and efficiency.


---

## Body

## 1. Introduction

The IEEE 802.11-based wireless local area network (WLAN) is one of the most popular, widely used wireless access technologies in fog computing [1, 2]. WLANs are especially popular for campuses, enterprise environments, and public hotspots, serving a large number of users while satisfying their continuously growing traffic demands. Network operators usually deploy thousands of access points (APs) to achieve full coverage and provide enough capacity. Although each AP only consumes a little energy, the overall network’s energy consumption is significant due to the large-scale deployment. Escalating energy consumption increases greenhouse gas emissions and becomes a threat to environment protection and sustainable development. Moreover, it leads to higher energy costs, which is a critical component of network operational expenditures. Because the APs in a WLAN are overprovisioned with respect to peak traffic demands, but only handle peak traffic for small portions of time, energy is wasted when network traffic is low [3]. Thus, it is unnecessary to keep all resources active, which is why many researchers have pursued energy efficiency in the resource allocation and proposed many green scheduling strategies [4–6], and thus the concept of green WLANs is proposed [7–10]. In green WLANs, APs are scheduled on/off according to time-varying traffic demands, thereby saving energy.User association is an important issue in WLAN research, and it aims to determine AP selection for each user and optimize APs’ resource allocation. Most existing studies focus on performance optimization—such as load balancing, user fairness, and user quality of service (QoS)—and they propose several user association approaches [11–18]. However, little attention has been paid to energy efficiency and the impact of different association solutions on saving energy [19]. Taking the case in Figure 1 as an example, a WLAN with three APs needs to serve six users in the current scenario, and we assume that each AP has the ability to serve three users. When each AP serves two users, respectively, no AP can be turned off. However, when we migrate the users associated with the middle AP to other APs, the middle AP can be turned off. Hence, some of the less-utilized APs can be turned off by adjusting user association, and this saves energy.Figure 1
An example of energy-efficient user association.Energy efficiency is a necessity for user association in green WLANs, and finding the right balance is challenging. On one hand, to turn off as many APs as possible, adjusting user association inevitably increases other APs’ load, and these other APs could become congested. Therefore, we must find the tradeoff between energy efficiency and congestion avoidance. On the other hand, because of time-varying traffic demands, user association should be adjusted dynamically with several user migrations. These migrations will negatively impact the corresponding users’ experience. Hence, we must reduce user migrations in the process of dynamic user association.In this paper, we investigate the user association problem in green WLANs, to minimize the network’s energy consumption while satisfying time-varying traffic demands. Moreover, AP congestion avoidance and user migration constraints are both considered. The main contributions of this paper are as follows:(i)
We investigate the energy-efficient user association with congestion avoidance and migration constraint (EACM) in green WLANs and formulate the EACM problem as an integer linear programming (ILP) model.(ii)
We propose an efficient migration-constrained user reassociation algorithm (MURA), wherek AP-DN (DN stands for demand node) associations are removed to eliminate AP congestion and make as many APs as possible idle, and then the k DNs are reassociated according to an energy efficiency strategy.(iii)
We conduct simulation experiments to evaluate the performance of the proposed algorithm, and the results show its efficiency and effectiveness.The rest of the paper is structured as follows. In Section2, we discuss the related work. We then present the system model and problem formulation in Section 3. Next, we propose MURA, an efficient algorithm in Section 4. Section 5 evaluates MURA using simulations. Finally, Section 6 concludes the paper.


## 2. Related Work

User association optimization is of interest to many researchers, because it improves network performance significantly under current transmission technologies.Over the years, several user association approaches have been proposed. Bejerano et al. [11] propose an efficient algorithm to determine the AP-user associations that achieve load balancing and max-min fair bandwidth allocation, that is, maximizing the minimum user throughput. Li et al. [12] investigate the problem of optimizing AP-user association to achieve proportional fairness in multirate WLANs and present a centralized algorithm to derive the AP-user association. To handle the case of dynamic user membership, a distributed heuristic is proposed to provide an AP selection criterion for newcomers.Gong et al. [13] study the user association problem for 802.11n WLANs with heterogeneous clients (802.11a/b/g/n) and present solutions whereby each user achieves the throughput proportional to its usable data rate. Yu et al. [14] investigate the problem of optimal user association in wireless mesh networks, considering max-min fairness, proportional fairness, and link interference. The problem is formulated as two-step mixed ILP models, and then two rounding algorithms and their corresponding approximation ratio improvement algorithms are proposed to address the problem.Wong et al. [15] consider the cost of user migration in the process of user reassociation and propose an efficient approximation algorithm to achieve max-min fairness, while satisfying a certain total user migration cost constraint. Raschellà et al. [16] present a centralized network management framework for user association based on software-defined networking (SDN), where an AP section metric jointly considers the QoS requirements of a user joining the network, the bandwidth efficiency, and the QoS requirements of other users active in the networks.Chen et al. [17] explore the user association problem in SDN WLANs with some new features, such as centralized association, global network state awareness, seamless handoff, and flow-level association. The problem is formulated as a delay-minimized optimization problem to minimize the interpacket delay of individual flows, and the greedy algorithm and bounded local search algorithm are proposed to solve the problem. Kim et al. [18] consider the link interference and AP load and design a user association mechanism that is based on metrics derived by signal strength variance and a beacon collision rate.However, all the aforementioned works only take into consideration network performance, which does not translate well when applied in green WLANs. In green WLANs, there is an energy-saving mechanism that dynamically turns APs on/off to adapt to users’ resource demands [7]. Related to green WLANs, there are only a few recent works on user association. These works focus on improving energy efficiency by optimizing user association.Kumazoe et al. [19] propose a user reassociation scheme where an AP migrates its associated users to another AP and then switches its status to sleep when the AP finds that its utilization is lower than the predefined threshold. Wang et al. [20] consider user association in a heterogeneous network with hybrid energy supplies, where energy saving is subject to the constraints of a user data rate requirement, transmission power budget, and so forth. They formulate the energy cost saving optimization problem and present both centralized and distributed solutions.Chen et al. [21] propose an AP energy-saving mechanism using SDN, aiming to reduce the amount of idle APs while satisfying QoS requirements. In the mechanism, the user association problem is formulated as an ILP model. Lee et al. [22] present a centralized management mechanism to improve energy efficiency and avoid interference without sacrificing users demands, and jointly optimize the AP on/off scheduling, channel assignment, and user association.As discussed above, several energy-efficient user association solutions have been proposed in the past. However, to the best of our knowledge, no prior work exists that deals with the issues of AP congestion and user migration in the context of energy-saving optimization in WLANs. Hence, here we study the user association problem in green WLANs, which aims to achieve energy efficiency with AP congestion avoidance and user migration constraints.


## 3. System Model and Problem Formulation

### 3.1. System Model

Our IEEE 802.11-based multirate WLAN consists of multiple APs. The set of APs is denoted byA, and we use m to denote their number, i.e., A={a1,a2,…,am}. Because users are on the go and their traffic demands are dynamic in WLANs, we represent the distribution of user traffic demands by discrete points (that is DNs) that are the center of an area aggregating the traffic demands of several users [23]. Thus, AP-user associations can be represented by AP-DN associations. We use U to denote the set of DNs, and the number of DNs is represented by n—that is, U={u1,u2,…,un}. As shown in Figure 2, the AP-DN associations can be modeled as a directed graph G(A∪U,E), where E is the set of potential association relations between DNs and APs.Figure 2
AP-DN association model.Because multimedia content and downloads of mobile applications dominate the traffic demand, downlink traffic is much larger than uplink traffic, and thus we focus on downlink traffic (from the APs to DNs). For a DNuj∈U, we assume that its traffic demand is a constant for a certain time interval T, and the constant is denoted by rj.We assume that neighboring APs do not interfere with each other through allocating nonoverlapping channels. For the transmission betweenai∈A and uj∈U, its available transmission rate is denoted by cij. We exploit the PHY multirate capability and enable each device to select the best transmission rate according to the received signal noise ratio (SNR), which we obtain by (1)SNRij=pi-PLdij-Nwhere SNRi,j represents the SNR of signals that are transmitted from AP ai and received at DN uj; pi is the transmit power of AP ai; dij is the distance between AP ai and DN uj, and PL(dij) denotes the propagation path loss; N is the background noise power.To characterize energy consumption of APs correctly, we use a fine-grained power model where we ascribe the power consumed by APai to the following two elements [24, 25]:(i)
The baseline power (denoted bybi) is a constant, which quantifies power consumption when the AP neither sends nor receives traffic after it is powered on.(ii)
The traffic-related power, a variable part, is generated by the wireless interface and relevant components. Because we only consider downlink traffic in this paper, the traffic-related power pertains to AP transmitting wireless signals, and thus it positively correlates with AP transmit power and AP utilization. AP utilization is defined by the fraction of time during which the AP transmits traffic.Forai∈A, we define AP power as follows: (2)Pi=bi+ηipi∑j∈Uairjcijwhere the power of AP ai is denoted by Pi, U(ai) represents the set of DNs that are associated with AP ai, and ηi is an efficiency factor that accounts for the AP’s electrical model.The notations and their definitions are summarized in Table1.Table 1
Notations.
Symbol Definition A The set of access points (APs) U The set of demand nodes (DNs) E The set of potential association relations m The number of APs n The number of DNs ai An AP uj Am DN rj The traffic demand of DNuj T Time interval cij The available transmission rate between APai and DN uj SNRij The received SNR at DNuj when signal is from AP aj Pi The power of APai bi The baseline power of APai pi The transmit power of APai ηi The efficiency factor of APai dij The distance between APai and DN uj PL(dij) The propagation path loss N The background noise power U(ai) The set of DNs that are associated with APai βij The coverage indicator between APai and DN uj φ The threshold of AP utilization α(j) The previous association indicator k The maximum allowed number of migrations


### 3.2. Problem Formulation

In this section, we formulate the energy-efficient user association as an optimization problem based on an ILP model. Specifically, we not only consider energy optimization in the context of user association, but also take AP congestion avoidance and user migration constraints into account. We therefore define the problem as follows.Definition 1 (EACM).
Given the networkG(A∪U,E), the current traffic demands of DNs (i.e.,{rj∣uj∈U}), and the previous AP-DN associations, the problem is to minimize the overall energy consumption of the APs in the current time interval through optimizing the AP-DN associations; while the traffic demands of the DNs are satisfied, the utilization of each AP is limited by a threshold, and DN migrations are also constrained.To formulate the ILP model, we define the following sets of binary variables:(i)
xi, which is set to 1 if AP ai is turned on, or 0 otherwise.(ii)
yi,j, which is set to 1 if DN uj is associated with AP ai, or 0 otherwise.For eachai∈A and uj∈U, we also define a coverage indicator to denote whether DN uj is in the coverage range of AP ai; that is, (3)βi,j=1ci,j>00ci,j=0.In addition, letα(j) be the previous association indicator that represents the AP-DN association in the previous time interval for DN uj.The objective is to minimize the overall energy consumption of the APs in the current time interval, as described by(4)min⁡T∑i∈Abixi+ηipi∑j∈Urjyijcij.The minimization is subject to the following constraints:(5)yij≤βijxi∀i∈A,j∈U(6)∑i∈Ayij=1∀j∈U(7)∑j∈Uirjyijcij≤φxi∀i∈A(8)∑j∈Uyαjj≥n-k(9)xi∈0,1∀i∈A(10)yij∈0,1∀i∈A,j∈U.In the aforementioned formulation, the constraint (5) states that no DN is associated with powered-off APs and an AP does not provide services for DNs beyond its coverage range. The constraint (6) imposes that each DN must be associated with an AP only. The constraint (7) ensures that each AP can satisfy the traffic demands of its associated DNs, and its AP utilization is limited by the coefficient φ. The constraint (8) denotes the allowed maximum number of migrations that cannot be exceeded. Finally, the constraints (9) and (10) define the binary of the variables.The EACM problem is NP-hard, because it includes as a special case the set-covering problem, known to be NP-hard [26]. Although the schemes that solve the ILP model directly can find the optimal solution or at least bound it, they are impractical for a relatively large-scale scenario, because of computational complexity and memory limitations [27]. Thus, the better alternative here is to design a heuristic algorithm to solve the EACM problem efficiently.


## 3.1. System Model

Our IEEE 802.11-based multirate WLAN consists of multiple APs. The set of APs is denoted byA, and we use m to denote their number, i.e., A={a1,a2,…,am}. Because users are on the go and their traffic demands are dynamic in WLANs, we represent the distribution of user traffic demands by discrete points (that is DNs) that are the center of an area aggregating the traffic demands of several users [23]. Thus, AP-user associations can be represented by AP-DN associations. We use U to denote the set of DNs, and the number of DNs is represented by n—that is, U={u1,u2,…,un}. As shown in Figure 2, the AP-DN associations can be modeled as a directed graph G(A∪U,E), where E is the set of potential association relations between DNs and APs.Figure 2
AP-DN association model.Because multimedia content and downloads of mobile applications dominate the traffic demand, downlink traffic is much larger than uplink traffic, and thus we focus on downlink traffic (from the APs to DNs). For a DNuj∈U, we assume that its traffic demand is a constant for a certain time interval T, and the constant is denoted by rj.We assume that neighboring APs do not interfere with each other through allocating nonoverlapping channels. For the transmission betweenai∈A and uj∈U, its available transmission rate is denoted by cij. We exploit the PHY multirate capability and enable each device to select the best transmission rate according to the received signal noise ratio (SNR), which we obtain by (1)SNRij=pi-PLdij-Nwhere SNRi,j represents the SNR of signals that are transmitted from AP ai and received at DN uj; pi is the transmit power of AP ai; dij is the distance between AP ai and DN uj, and PL(dij) denotes the propagation path loss; N is the background noise power.To characterize energy consumption of APs correctly, we use a fine-grained power model where we ascribe the power consumed by APai to the following two elements [24, 25]:(i)
The baseline power (denoted bybi) is a constant, which quantifies power consumption when the AP neither sends nor receives traffic after it is powered on.(ii)
The traffic-related power, a variable part, is generated by the wireless interface and relevant components. Because we only consider downlink traffic in this paper, the traffic-related power pertains to AP transmitting wireless signals, and thus it positively correlates with AP transmit power and AP utilization. AP utilization is defined by the fraction of time during which the AP transmits traffic.Forai∈A, we define AP power as follows: (2)Pi=bi+ηipi∑j∈Uairjcijwhere the power of AP ai is denoted by Pi, U(ai) represents the set of DNs that are associated with AP ai, and ηi is an efficiency factor that accounts for the AP’s electrical model.The notations and their definitions are summarized in Table1.Table 1
Notations.
Symbol Definition A The set of access points (APs) U The set of demand nodes (DNs) E The set of potential association relations m The number of APs n The number of DNs ai An AP uj Am DN rj The traffic demand of DNuj T Time interval cij The available transmission rate between APai and DN uj SNRij The received SNR at DNuj when signal is from AP aj Pi The power of APai bi The baseline power of APai pi The transmit power of APai ηi The efficiency factor of APai dij The distance between APai and DN uj PL(dij) The propagation path loss N The background noise power U(ai) The set of DNs that are associated with APai βij The coverage indicator between APai and DN uj φ The threshold of AP utilization α(j) The previous association indicator k The maximum allowed number of migrations


## 3.2. Problem Formulation

In this section, we formulate the energy-efficient user association as an optimization problem based on an ILP model. Specifically, we not only consider energy optimization in the context of user association, but also take AP congestion avoidance and user migration constraints into account. We therefore define the problem as follows.Definition 1 (EACM).
Given the networkG(A∪U,E), the current traffic demands of DNs (i.e.,{rj∣uj∈U}), and the previous AP-DN associations, the problem is to minimize the overall energy consumption of the APs in the current time interval through optimizing the AP-DN associations; while the traffic demands of the DNs are satisfied, the utilization of each AP is limited by a threshold, and DN migrations are also constrained.To formulate the ILP model, we define the following sets of binary variables:(i)
xi, which is set to 1 if AP ai is turned on, or 0 otherwise.(ii)
yi,j, which is set to 1 if DN uj is associated with AP ai, or 0 otherwise.For eachai∈A and uj∈U, we also define a coverage indicator to denote whether DN uj is in the coverage range of AP ai; that is, (3)βi,j=1ci,j>00ci,j=0.In addition, letα(j) be the previous association indicator that represents the AP-DN association in the previous time interval for DN uj.The objective is to minimize the overall energy consumption of the APs in the current time interval, as described by(4)min⁡T∑i∈Abixi+ηipi∑j∈Urjyijcij.The minimization is subject to the following constraints:(5)yij≤βijxi∀i∈A,j∈U(6)∑i∈Ayij=1∀j∈U(7)∑j∈Uirjyijcij≤φxi∀i∈A(8)∑j∈Uyαjj≥n-k(9)xi∈0,1∀i∈A(10)yij∈0,1∀i∈A,j∈U.In the aforementioned formulation, the constraint (5) states that no DN is associated with powered-off APs and an AP does not provide services for DNs beyond its coverage range. The constraint (6) imposes that each DN must be associated with an AP only. The constraint (7) ensures that each AP can satisfy the traffic demands of its associated DNs, and its AP utilization is limited by the coefficient φ. The constraint (8) denotes the allowed maximum number of migrations that cannot be exceeded. Finally, the constraints (9) and (10) define the binary of the variables.The EACM problem is NP-hard, because it includes as a special case the set-covering problem, known to be NP-hard [26]. Although the schemes that solve the ILP model directly can find the optimal solution or at least bound it, they are impractical for a relatively large-scale scenario, because of computational complexity and memory limitations [27]. Thus, the better alternative here is to design a heuristic algorithm to solve the EACM problem efficiently.


## 4. MURA

In this section, we propose MURA, our efficient two-step algorithm to solve the EACM problem. The basic idea is to migrate at mostk DNs from their original APs to neighboring APs, while considering energy saving and congestion avoidance. We solve this in two steps. In Step 1, we select k DNs that are associated with heavily loaded or idle APs and remove them from the current associations. In Step 2, we reassociate the removed DNs according to the energy efficiency strategy.


### 4.1. Step 1: DN Removal

In this step, we need to determine whichk DNs to remove from the current associations. As described in Algorithm 1, we first initialize the set of APs that are turned on (A_on), the utilization of each AP (P_Util), the number of associated DNs for each AP (AP_UNum), the set of current AP-DN associations (UA_fxd), the set of removed DNs (U_rmv), and the required number of DN removals (rm_cnt). Then, we remove DNs from the current associations, successively considering AP congestion avoidance and energy saving. Specifically, we divide the process of DN removal into two parts. In the first part (lines (7) to (23)), we iteratively remove DNs to address the issue of AP congestion. In each iteration, we find the AP with the maximum utilization and select a DN migrating from it if its utilization exceeds the threshold φ. The DN selection strategy is to make AP utilization lower than the threshold or nearer to the threshold. In the second part (lines (24) to (32)), we remove DNs so as to turn off as many APs as possible for energy saving. In each iteration, we find the AP with the minimum number of associated DNs, remove these DNs, and turn off the APs. The step stops when the total number of removed DNs reaches k and returns UA_fxd and U_rmv.Algorithm 1:DN removal.
Input: A, U, E, UA_prek, φ, {rj∣uj∈U}, { c i j ∣ a i ∈ A , u j ∈ U } Output: U A _ f x d, U_rmv ( 1 ) Initialize A_on // Set of APs that are turned on ( 2 ) Initialize AP_Util // AP utilization ( 3 ) Initialize AP_UNum // Number of associated DNs for each AP ( 4 )  U A _ f x d ← U A _ p r e // Set of fixed AP-DN associations ( 5 )  U _ r m v ← ∅ ( 6 )  r m _ c n t ← k // Limitation of DN removal ( 7 )  while  true  do ( 8 )  a q ← a r g m a x a i ∈ A A P _ U t i l ( a i ) // Find the AP with the maximum utilization ( 9 )  if A P _ U t i l ( a q ) > φ then ( 10 )  if  rm_cnt=0then ( 11 )  return null,null  //  Failure of AP congestion avoidance ( 12 )  else ( 13 )  U _ a ← { u ∣ ( a q , u j ) ∈ U A _ f x d , ∀ u j ∈ U } ( 14 )  Select a proper DN up from U_a ( 15 )  Remove (aq,up) from UA_fxd ( 16 )  U _ r m v ← U _ r m v ∪ { u p } ( 17 )  Update AP_Util(aq), AP_UNum(aq) ( 18 )  r m _ c n t = r m _ c n t - 1 ( 19 )  else ( 20 )  if r m _ c n t = 0  then return  UA_fxd, U_rmv ( 21 ) ( 22 )  elsebreak ( 23 ) ( 24 )  while true do ( 25 )  a _ q ← a r g  m i n a i ∈ A _ o n A P _ U N u m ( a i ) ( 26 )  U _ a ← { u j ∣ ( a q , u j ) ∈ U A _ f x d , ∀ u j ∈ U } ( 27 )  foreach u j ∈ U _ a do ( 28 )  Remove (aq,uj) from UA_fxd ( 29 )  r m _ c n t = r m _ c n t - 1 ( 30 )  if r m _ c n t = 0 then return U A _ f x d, U_rmv ( 31 ) ( 32 )  A _ o n = A _ o n ∖ { a q } // Turn off as many APs as possible


### 4.2. Step 2: DN Reassociation

As DNs in setU_rmv are removed from the current associations, we need to reassociate them in this step. As described in Algorithm 2, first we initialize the set of APs turned on (A_on), the utilization of each AP (AP_Util), and the set of current AP-DN associations (UA). Then, we determine the new reassociations of these DNs in sequence and prioritize the DN with greater traffic demand. For each DN, we choose an AP with the lowest increment of network energy consumption and assign the new association. The increment of network energy consumption is the additional energy consumption caused by the AP-DN association. If the AP is not active, it should be turned on first, and its baseline power should be involved in the increment of network energy consumption. After each reassociation, the set U_rmv and AP_Util are updated.Algorithm 2:DN reassociation.
Input:  A, U, E, U_rmv, UA_fxd, φ, {rj∣uj∈U}, { c i j ∣ a i ∈ A , u j ∈ U }, {bi,pi,ηi∣ai∈A} Output:  UA ( 1 ) Initialize A_on // Set of APs that are turned on ( 2 ) Initialize AP_Util // AP utilization ( 3 )  U A ← U A _ f x d // Set of AP-DN associations ( 4 ) Sort U_rmv in descending order by traffic demand ( 5 )  while  U_rmv≠∅  do ( 6 ) obtain DN up from U_rmv in sequence ( 7 )  a _ w e i g h t ( i ) ← ∞   ∀ a i ∈ A ( 8 )  if  AP_Util(ai)+rp/cip≤φ  then ( 9 )  if  ai∈A_on  then ( 10 )  a _ w e i g h t ( i ) ← η i p i r p / c i p // increment of energy consumption ( 11 )  else ( 12 )  a _ w e i g h t ( i ) ← b i + η i p i r p / c i p ( 13 )  a q ← a r g m i n a i ∈ A a _ w e i g h t ( i ) ( 14 )  if  a_weight(q)≠∞  then ( 15 )  if  aq∉A_on  then ( 16 )  A _ o n ← A _ o n ∪ { a q } ( 17 )  U A ← U A ∪ { ( a q , u p ) } ( 18 )  U _ r m v ← U _ r m v ∖ { u p } ( 19 )  Update AP_Util(aq) ( 20 )  else ( 21 )  return  null // Reassociation failed ( 22 )  return U A


### 4.3. Time Complexity

In the following, we analyze the time complexity of the MURA algorithm. This includes the two steps for DN removal and DN reassociation.In the first step, the algorithm is initialized in O(mn), and DN removal iterates at most k times. For each iteration (lines (8) to (23) or lines (25) to (32)), the time complexity is O(m+n+|U_a|). Because m<n and |U_a|<n, the time complexity of this step is O((m+k)n).In the second step, again the initialization completes within O(mn), and the sorting of U_rmv can be accomplished in O(klgk). DN reassociation iterates at most k times. For each iteration (lines (5) to (20)), the time complexity is O(m). Because k<n, the time complexity of this step is O(mn+klgk).Therefore, as discussed, the time complexity of the MURA algorithm is O((m+k)n).


## 4.1. Step 1: DN Removal

In this step, we need to determine whichk DNs to remove from the current associations. As described in Algorithm 1, we first initialize the set of APs that are turned on (A_on), the utilization of each AP (P_Util), the number of associated DNs for each AP (AP_UNum), the set of current AP-DN associations (UA_fxd), the set of removed DNs (U_rmv), and the required number of DN removals (rm_cnt). Then, we remove DNs from the current associations, successively considering AP congestion avoidance and energy saving. Specifically, we divide the process of DN removal into two parts. In the first part (lines (7) to (23)), we iteratively remove DNs to address the issue of AP congestion. In each iteration, we find the AP with the maximum utilization and select a DN migrating from it if its utilization exceeds the threshold φ. The DN selection strategy is to make AP utilization lower than the threshold or nearer to the threshold. In the second part (lines (24) to (32)), we remove DNs so as to turn off as many APs as possible for energy saving. In each iteration, we find the AP with the minimum number of associated DNs, remove these DNs, and turn off the APs. The step stops when the total number of removed DNs reaches k and returns UA_fxd and U_rmv.Algorithm 1:DN removal.
Input: A, U, E, UA_prek, φ, {rj∣uj∈U}, { c i j ∣ a i ∈ A , u j ∈ U } Output: U A _ f x d, U_rmv ( 1 ) Initialize A_on // Set of APs that are turned on ( 2 ) Initialize AP_Util // AP utilization ( 3 ) Initialize AP_UNum // Number of associated DNs for each AP ( 4 )  U A _ f x d ← U A _ p r e // Set of fixed AP-DN associations ( 5 )  U _ r m v ← ∅ ( 6 )  r m _ c n t ← k // Limitation of DN removal ( 7 )  while  true  do ( 8 )  a q ← a r g m a x a i ∈ A A P _ U t i l ( a i ) // Find the AP with the maximum utilization ( 9 )  if A P _ U t i l ( a q ) > φ then ( 10 )  if  rm_cnt=0then ( 11 )  return null,null  //  Failure of AP congestion avoidance ( 12 )  else ( 13 )  U _ a ← { u ∣ ( a q , u j ) ∈ U A _ f x d , ∀ u j ∈ U } ( 14 )  Select a proper DN up from U_a ( 15 )  Remove (aq,up) from UA_fxd ( 16 )  U _ r m v ← U _ r m v ∪ { u p } ( 17 )  Update AP_Util(aq), AP_UNum(aq) ( 18 )  r m _ c n t = r m _ c n t - 1 ( 19 )  else ( 20 )  if r m _ c n t = 0  then return  UA_fxd, U_rmv ( 21 ) ( 22 )  elsebreak ( 23 ) ( 24 )  while true do ( 25 )  a _ q ← a r g  m i n a i ∈ A _ o n A P _ U N u m ( a i ) ( 26 )  U _ a ← { u j ∣ ( a q , u j ) ∈ U A _ f x d , ∀ u j ∈ U } ( 27 )  foreach u j ∈ U _ a do ( 28 )  Remove (aq,uj) from UA_fxd ( 29 )  r m _ c n t = r m _ c n t - 1 ( 30 )  if r m _ c n t = 0 then return U A _ f x d, U_rmv ( 31 ) ( 32 )  A _ o n = A _ o n ∖ { a q } // Turn off as many APs as possible


## 4.2. Step 2: DN Reassociation

As DNs in setU_rmv are removed from the current associations, we need to reassociate them in this step. As described in Algorithm 2, first we initialize the set of APs turned on (A_on), the utilization of each AP (AP_Util), and the set of current AP-DN associations (UA). Then, we determine the new reassociations of these DNs in sequence and prioritize the DN with greater traffic demand. For each DN, we choose an AP with the lowest increment of network energy consumption and assign the new association. The increment of network energy consumption is the additional energy consumption caused by the AP-DN association. If the AP is not active, it should be turned on first, and its baseline power should be involved in the increment of network energy consumption. After each reassociation, the set U_rmv and AP_Util are updated.Algorithm 2:DN reassociation.
Input:  A, U, E, U_rmv, UA_fxd, φ, {rj∣uj∈U}, { c i j ∣ a i ∈ A , u j ∈ U }, {bi,pi,ηi∣ai∈A} Output:  UA ( 1 ) Initialize A_on // Set of APs that are turned on ( 2 ) Initialize AP_Util // AP utilization ( 3 )  U A ← U A _ f x d // Set of AP-DN associations ( 4 ) Sort U_rmv in descending order by traffic demand ( 5 )  while  U_rmv≠∅  do ( 6 ) obtain DN up from U_rmv in sequence ( 7 )  a _ w e i g h t ( i ) ← ∞   ∀ a i ∈ A ( 8 )  if  AP_Util(ai)+rp/cip≤φ  then ( 9 )  if  ai∈A_on  then ( 10 )  a _ w e i g h t ( i ) ← η i p i r p / c i p // increment of energy consumption ( 11 )  else ( 12 )  a _ w e i g h t ( i ) ← b i + η i p i r p / c i p ( 13 )  a q ← a r g m i n a i ∈ A a _ w e i g h t ( i ) ( 14 )  if  a_weight(q)≠∞  then ( 15 )  if  aq∉A_on  then ( 16 )  A _ o n ← A _ o n ∪ { a q } ( 17 )  U A ← U A ∪ { ( a q , u p ) } ( 18 )  U _ r m v ← U _ r m v ∖ { u p } ( 19 )  Update AP_Util(aq) ( 20 )  else ( 21 )  return  null // Reassociation failed ( 22 )  return U A


## 4.3. Time Complexity

In the following, we analyze the time complexity of the MURA algorithm. This includes the two steps for DN removal and DN reassociation.In the first step, the algorithm is initialized in O(mn), and DN removal iterates at most k times. For each iteration (lines (8) to (23) or lines (25) to (32)), the time complexity is O(m+n+|U_a|). Because m<n and |U_a|<n, the time complexity of this step is O((m+k)n).In the second step, again the initialization completes within O(mn), and the sorting of U_rmv can be accomplished in O(klgk). DN reassociation iterates at most k times. For each iteration (lines (5) to (20)), the time complexity is O(m). Because k<n, the time complexity of this step is O(mn+klgk).Therefore, as discussed, the time complexity of the MURA algorithm is O((m+k)n).


## 5. Simulation Evaluation

In this section, we evaluate the performance of the proposed MURA algorithm via simulations and compare its solutions with the solutions of the ILP-based association scheme and the solutions of the received signal strength indication- (RSSI-) based association scheme. First, we validate the MURA algorithm’s effectiveness in terms of energy consumption and execution time. Then, we evaluate how the performance of the MURA algorithm is affected by the AP utilization threshold, number of allowed migrations, AP types, and traffic patterns.


### 5.1. Performance Metrics

We are interested primarily in energy consumption and execution time as performance metrics. Here,energy consumption is the overall energy consumption of all APs in a time interval. Byexecution time, we mean the algorithm’s execution time within a time interval. In addition, we compare MURA to the following schemes:(i)
ILP-based association scheme: in this scheme, our EACM model is solved by an ILP solver, such as Gurobi.(ii)
RSSI-based association scheme: in this scheme, each DN is associated with the AP that offers the best signal strength.


### 5.2. Simulation Setup and Parameters

In the simulation, we consider small-scale scenarios, medium-scale scenarios, and large-scale scenarios, respectively. As shown in Table2, the network field is divided by grids, and APs are deployed at the center of grids to provide full coverage to the field. In addition, the same number of DNs are randomly placed in each grid.Table 2
Network scenarios.
Network size Number of APs Number of DNs Small (100×100m2) 4 20 Medium (250×250m2) 25 125 Large (1000×1000m2) 400 2000To characterize the indoor environment, we define the path loss calculation as follows [28]: (11)PLdij=40+10×3.3lgdij.After the transmit power of AP is set to be 20 dBm (i.e., 0.1 W) and the background noise level is set to −93 dBm, we can compute the SNR of DNs. In this paper, we consider an IEEE 802.11n WLAN with 40 MHz channel, and we list the corresponding link rates in Table3 [29, 30].Table 3
SNR and link rates.
SNR range(dB) Link rate (Mbps) 5,8 15 8,12 30 12,14 45 14,18 60 18,21 90 21,23 120 23,28 135 28,∞ 150We take the traffic pattern shown in Table4, where the time duration is three hours, and assign a probability probt of DNs requesting demands in each interval t [31]. Moreover, we use two different traffic demand profiles:(i)
Standard mode, where each DN’s traffic demands randomly are generated in intervals of 1 to 10 Mbps.(ii)
Busy mode, where each DN’s traffic demand varies between 8 and 10 Mbps.Table 4
Traffic pattern.
Indext Starting Ending Duration(h) p r o b t 1 0 3 3 0.35 2 3 6 3 0.1 3 6 9 3 0.45 4 9 12 3 1 5 12 15 3 0.7 6 15 18 3 0.85 7 18 21 3 0.6 8 21 24 3 0.5For each setting, we execute these schemes 20 times with different scenarios and use the average results as the final results. We conduct the simulation experiments on a PC equipped with an Intel Core i7 3.40 GHz processor, 8 GB RAM, Microsoft Windows 7, and MATLAB environment, where the proposed ILP model is solved by Gurobi.


### 5.3. Verification of Energy Efficiency

We compare the solutions obtained from the MURA algorithm with those obtained from the ILP-based association scheme and the RSSI-based association scheme. For the AP power model, we set the baseline power (bi) to be 9 W and the efficiency factor (ηi) to be 30. For the traffic pattern, we adopt the standard mode. We set the AP utilization threshold (φ) to be 0.8 and the maximum allowed number of migrations (k) to be 30 percent of the DN amount. We perform the simulations for small-scale, medium-scale, and large-scale scenarios, respectively.Figure3 shows the performance of the MURA algorithm, the ILP-based association scheme, and the RSSI-based association scheme. From this figure, we can see that the MURA algorithm achieves significant energy savings comparing to the RSSI-based association scheme. Also, there is only a small gap in performance between our solution and the optimal solutions obtained by the ILP-based association scheme, which validates the near optimality of our algorithm. When the network scenarios become large, the ILP model cannot be solved by Gurobi directly, but our algorithm provides solutions within an acceptable time, as shown in Table 5. Moreover, the curves of our algorithm in Figure 3 show that an interval’s energy consumption is proportional to the traffic demand, and energy consumption greatly diminishes when traffic demand is low.Table 5
Execution Time.
Time intervals Execution time (Sec.) Small scenarios Medium scenarios Large scenarios MURA ILP-based RSSI-based MURA ILP-based RSSI-based MURA ILP-based RSSI-based 1 0.0013 0.0086 0.0005 0.0057 0.4928 0.0017 0.2718 - 0.0176 2 0.0004 0.0068 0.0002 0.0015 0.0235 0.0009 0.0524 - 0.0127 3 0.0008 0.0099 0.0003 0.0051 0.7347 0.0013 0.3151 - 0.0193 4 0.0008 0.0124 0.0003 0.0052 0.5227 0.0016 0.4825 - 0.0306 5 0.0007 0.0120 0.0004 0.0042 3.8941 0.0014 0.2137 - 0.0239 6 0.0008 0.0137 0.0003 0.0051 6.8822 0.0015 0.4613 - 0.0276 7 0.0007 0.0128 0.0003 0.0043 2.6668 0.0013 0.2814 - 0.0219 8 0.0008 0.0122 0.0003 0.0045 1.0751 0.0012 0.3111 - 0.0202Figure 3
Validation of energy efficiency.
(a)
Small scenarios (b)
Medium scenarios (c)
Large scenarios


### 5.4. Varying the Maximum Allowed Number of Migrations

Here, we evaluate the performance of the MURA algorithm, while varying the maximum allowed number of migrations (the parameterk). We perform simulations on large-scale scenarios and set the AP utilization threshold (φ) to be 0.8. For the AP power model, we again set the baseline power (bi) to be 9 W and the efficiency factor (ηi) to be 30. For the traffic pattern, we adopt the standard mode. We set the maximum allowed number of migrations (k) to be 50, 100,…, and 550.Figures4 and 5 show the results. From the two figures, we can see that energy consumption decreases as the maximum allowed number of migrations relaxes, because we can further optimize energy consumption through more DN migrations. We also find that the decrement of energy consumption is extremely limited once the parameter k has reached 350. This substantiates why we set 350 as the maximum number of migrations allowed.Figure 4
Energy consumption varying parameterk.Figure 5
DN migrations varying parameterk.


### 5.5. Varying the AP Utilization Threshold

Next, we evaluate the MURA algorithm’s performance while varying the AP utilization threshold (the parameterφ). In performing simulations on large-scale scenarios, we set the maximum allowed number of migrations (k) to be 350. For the AP power model, we set the baseline power (bi) to be 9 W and the efficiency factor (ηi) to be 30. For the traffic pattern, we adopt the standard mode. We set the AP utilization threshold to be 0.7, 0.75,…, and 1.0.Figures6 and 7 show the results. We can see that energy consumption decreases as the AP utilization threshold relaxes, because each AP is able to serve more DN migrations and thus we can turn off more APs. Hence, φ is an adjustable parameter that can provide a tradeoff between energy efficiency and congestion avoidance.Figure 6
Energy consumption varying parameterφ.Figure 7
Average AP utilization varying parameterφ.


### 5.6. Impacts of AP Types

Now, we evaluate the MURA algorithm’s performance while varying AP types. We perform simulations on large-scale scenarios, setting the AP utilization threshold to be 0.8 and the maximum allowed number of migrations (k) to be 350. For the traffic pattern, we adopt the standard mode. Table 6 shows parameter settings of the AP power model [25].Table 6
Parameters of the AP power model.
Type ID Baseline power (bi) Efficiency factor (ηi) 1 9 30 2 7 50 3 6 60 4 3 90As shown in Figure8, no matter which APs we use, our algorithm’s solutions perform better on energy consumption than the RSSI-based association scheme does. In addition, type 1 APs show greater energy savings, because any baseline power that can be eliminated by turning off APs plays a decisive role in AP power.Figure 8
Energy consumption varying AP types.


### 5.7. Impacts of Traffic Pattern

Here, we evaluate the performance of the MURA algorithm under different traffic patterns, such as standard mode and busy mode. We perform simulations on large-scale scenarios, set the AP utilization threshold to be 0.8, and set the maximum allowed number of migrations (k) to be 350. For the AP power model, we set the baseline power (bi) to be 9 W and the efficiency factor (ηi) to be 30.As shown in Table7, no matter which traffic pattern we adopt, the solutions of our algorithm perform better on energy consumption than that of the RSSI-based association scheme. In addition, we find that when a traffic pattern switches from the busy mode to the standard mode, the decrement of our algorithm’s energy consumption is more than the RSSI-based association scheme’s, because some APs will turn off while executing our algorithm.Table 7
Energy consumption affected by traffic pattern.
Traffic pattern Energy consumption in a day (W⋅ h) MURA algorithm RSSI-based association Standard 36752 89237 Busy 48934 91501


## 5.1. Performance Metrics

We are interested primarily in energy consumption and execution time as performance metrics. Here,energy consumption is the overall energy consumption of all APs in a time interval. Byexecution time, we mean the algorithm’s execution time within a time interval. In addition, we compare MURA to the following schemes:(i)
ILP-based association scheme: in this scheme, our EACM model is solved by an ILP solver, such as Gurobi.(ii)
RSSI-based association scheme: in this scheme, each DN is associated with the AP that offers the best signal strength.


## 5.2. Simulation Setup and Parameters

In the simulation, we consider small-scale scenarios, medium-scale scenarios, and large-scale scenarios, respectively. As shown in Table2, the network field is divided by grids, and APs are deployed at the center of grids to provide full coverage to the field. In addition, the same number of DNs are randomly placed in each grid.Table 2
Network scenarios.
Network size Number of APs Number of DNs Small (100×100m2) 4 20 Medium (250×250m2) 25 125 Large (1000×1000m2) 400 2000To characterize the indoor environment, we define the path loss calculation as follows [28]: (11)PLdij=40+10×3.3lgdij.After the transmit power of AP is set to be 20 dBm (i.e., 0.1 W) and the background noise level is set to −93 dBm, we can compute the SNR of DNs. In this paper, we consider an IEEE 802.11n WLAN with 40 MHz channel, and we list the corresponding link rates in Table3 [29, 30].Table 3
SNR and link rates.
SNR range(dB) Link rate (Mbps) 5,8 15 8,12 30 12,14 45 14,18 60 18,21 90 21,23 120 23,28 135 28,∞ 150We take the traffic pattern shown in Table4, where the time duration is three hours, and assign a probability probt of DNs requesting demands in each interval t [31]. Moreover, we use two different traffic demand profiles:(i)
Standard mode, where each DN’s traffic demands randomly are generated in intervals of 1 to 10 Mbps.(ii)
Busy mode, where each DN’s traffic demand varies between 8 and 10 Mbps.Table 4
Traffic pattern.
Indext Starting Ending Duration(h) p r o b t 1 0 3 3 0.35 2 3 6 3 0.1 3 6 9 3 0.45 4 9 12 3 1 5 12 15 3 0.7 6 15 18 3 0.85 7 18 21 3 0.6 8 21 24 3 0.5For each setting, we execute these schemes 20 times with different scenarios and use the average results as the final results. We conduct the simulation experiments on a PC equipped with an Intel Core i7 3.40 GHz processor, 8 GB RAM, Microsoft Windows 7, and MATLAB environment, where the proposed ILP model is solved by Gurobi.


## 5.3. Verification of Energy Efficiency

We compare the solutions obtained from the MURA algorithm with those obtained from the ILP-based association scheme and the RSSI-based association scheme. For the AP power model, we set the baseline power (bi) to be 9 W and the efficiency factor (ηi) to be 30. For the traffic pattern, we adopt the standard mode. We set the AP utilization threshold (φ) to be 0.8 and the maximum allowed number of migrations (k) to be 30 percent of the DN amount. We perform the simulations for small-scale, medium-scale, and large-scale scenarios, respectively.Figure3 shows the performance of the MURA algorithm, the ILP-based association scheme, and the RSSI-based association scheme. From this figure, we can see that the MURA algorithm achieves significant energy savings comparing to the RSSI-based association scheme. Also, there is only a small gap in performance between our solution and the optimal solutions obtained by the ILP-based association scheme, which validates the near optimality of our algorithm. When the network scenarios become large, the ILP model cannot be solved by Gurobi directly, but our algorithm provides solutions within an acceptable time, as shown in Table 5. Moreover, the curves of our algorithm in Figure 3 show that an interval’s energy consumption is proportional to the traffic demand, and energy consumption greatly diminishes when traffic demand is low.Table 5
Execution Time.
Time intervals Execution time (Sec.) Small scenarios Medium scenarios Large scenarios MURA ILP-based RSSI-based MURA ILP-based RSSI-based MURA ILP-based RSSI-based 1 0.0013 0.0086 0.0005 0.0057 0.4928 0.0017 0.2718 - 0.0176 2 0.0004 0.0068 0.0002 0.0015 0.0235 0.0009 0.0524 - 0.0127 3 0.0008 0.0099 0.0003 0.0051 0.7347 0.0013 0.3151 - 0.0193 4 0.0008 0.0124 0.0003 0.0052 0.5227 0.0016 0.4825 - 0.0306 5 0.0007 0.0120 0.0004 0.0042 3.8941 0.0014 0.2137 - 0.0239 6 0.0008 0.0137 0.0003 0.0051 6.8822 0.0015 0.4613 - 0.0276 7 0.0007 0.0128 0.0003 0.0043 2.6668 0.0013 0.2814 - 0.0219 8 0.0008 0.0122 0.0003 0.0045 1.0751 0.0012 0.3111 - 0.0202Figure 3
Validation of energy efficiency.
(a)
Small scenarios (b)
Medium scenarios (c)
Large scenarios


## 5.4. Varying the Maximum Allowed Number of Migrations

Here, we evaluate the performance of the MURA algorithm, while varying the maximum allowed number of migrations (the parameterk). We perform simulations on large-scale scenarios and set the AP utilization threshold (φ) to be 0.8. For the AP power model, we again set the baseline power (bi) to be 9 W and the efficiency factor (ηi) to be 30. For the traffic pattern, we adopt the standard mode. We set the maximum allowed number of migrations (k) to be 50, 100,…, and 550.Figures4 and 5 show the results. From the two figures, we can see that energy consumption decreases as the maximum allowed number of migrations relaxes, because we can further optimize energy consumption through more DN migrations. We also find that the decrement of energy consumption is extremely limited once the parameter k has reached 350. This substantiates why we set 350 as the maximum number of migrations allowed.Figure 4
Energy consumption varying parameterk.Figure 5
DN migrations varying parameterk.


## 5.5. Varying the AP Utilization Threshold

Next, we evaluate the MURA algorithm’s performance while varying the AP utilization threshold (the parameterφ). In performing simulations on large-scale scenarios, we set the maximum allowed number of migrations (k) to be 350. For the AP power model, we set the baseline power (bi) to be 9 W and the efficiency factor (ηi) to be 30. For the traffic pattern, we adopt the standard mode. We set the AP utilization threshold to be 0.7, 0.75,…, and 1.0.Figures6 and 7 show the results. We can see that energy consumption decreases as the AP utilization threshold relaxes, because each AP is able to serve more DN migrations and thus we can turn off more APs. Hence, φ is an adjustable parameter that can provide a tradeoff between energy efficiency and congestion avoidance.Figure 6
Energy consumption varying parameterφ.Figure 7
Average AP utilization varying parameterφ.


## 5.6. Impacts of AP Types

Now, we evaluate the MURA algorithm’s performance while varying AP types. We perform simulations on large-scale scenarios, setting the AP utilization threshold to be 0.8 and the maximum allowed number of migrations (k) to be 350. For the traffic pattern, we adopt the standard mode. Table 6 shows parameter settings of the AP power model [25].Table 6
Parameters of the AP power model.
Type ID Baseline power (bi) Efficiency factor (ηi) 1 9 30 2 7 50 3 6 60 4 3 90As shown in Figure8, no matter which APs we use, our algorithm’s solutions perform better on energy consumption than the RSSI-based association scheme does. In addition, type 1 APs show greater energy savings, because any baseline power that can be eliminated by turning off APs plays a decisive role in AP power.Figure 8
Energy consumption varying AP types.


## 5.7. Impacts of Traffic Pattern

Here, we evaluate the performance of the MURA algorithm under different traffic patterns, such as standard mode and busy mode. We perform simulations on large-scale scenarios, set the AP utilization threshold to be 0.8, and set the maximum allowed number of migrations (k) to be 350. For the AP power model, we set the baseline power (bi) to be 9 W and the efficiency factor (ηi) to be 30.As shown in Table7, no matter which traffic pattern we adopt, the solutions of our algorithm perform better on energy consumption than that of the RSSI-based association scheme. In addition, we find that when a traffic pattern switches from the busy mode to the standard mode, the decrement of our algorithm’s energy consumption is more than the RSSI-based association scheme’s, because some APs will turn off while executing our algorithm.Table 7
Energy consumption affected by traffic pattern.
Traffic pattern Energy consumption in a day (W⋅ h) MURA algorithm RSSI-based association Standard 36752 89237 Busy 48934 91501


## 6. Conclusion

We investigated the energy-efficient user association in green WLANs while considering AP congestion avoidance and user migration constraints. First, we formulated the EACM problem as an ILP model, to minimize APs’ overall energy consumption in a current time interval under the constraints of traffic demand, the AP utilization threshold, and the maximum number of migrations allowed. Then, we proposed MURA, a two-step algorithm that efficiently solves the problem. Finally, we conducted simulation experiments to evaluate the performance of our proposed algorithm. The results demonstrate that MURA effectively saves energy—beyond that, the algorithm can obtain the tradeoff between energy efficiency, congestion avoidance, and migration cost.In the future, we plan to measure traffic patterns in real-world scenarios through crowdsourcing and propose a data-driven user association algorithm that applies well to a real network.



---

*Source: 9596141-2018-06-28.xml*