Per-Flow Radio Resource Management to Mitigate Interference in Dense IEEE 802.11 Wireless LANs

Current interference management solutions for dense IEEE 802.11 Wireless Local Area Networks (WLANs) rely on locally measuring the cumulative interference at the Acess Point (AP) in charge of adjusting the spectrum resources to its clients. These solutions often result in coarse-grained spectrum allocation that often leaves many wireless users unsatisfied and increases the spectrum congestion problem instead of easing it. In this paper, we present a centralized interference management algorithm that treats the network-wide interference impact of each channel individually and allows the controller to adjust the radio resource of each AP while it is utilised. This coordinated allocation takes into account the Quality of Service (QoS) requirements of downlink flows while minimizing its effect on neighbouring APs. Therefore, this paper proposes a novel approach for quantifying the interference impact of each employed channel and jointly addressing the user-side quality requirements and the network-side interference management. The algorithm is tailored for operator-agnostic Software-Defined Networking (SDN)-based Radio Resource Management (RRM) in dense Wireless Fidelity (Wi-Fi) networks and adopts a fine-grained per-flow approach. Simulation results show that our algorithm outperforms existing solutions in terms of reducing the overall interference, increasing the capacity of the wireless channel, and improving the users’ satisfaction.

Abstract-Current interference management solutions for dense IEEE 802.11 Wireless Local Area Networks (WLANs) rely on locally measuring the cumulative interference at the Acess Point (AP) in charge of adjusting the spectrum resources to its clients. These solutions often result in coarse-grained spectrum allocation that often leaves many wireless users unsatisfied and increases the spectrum congestion problem instead of easing it. In this paper, we present a centralized interference management algorithm that treats the network-wide interference impact of each channel individually and allows the controller to adjust the radio resource of each AP while it is utilised. This coordinated allocation takes into account the Quality of Service (QoS) requirements of downlink flows while minimizing its effect on neighbouring APs. Therefore, this paper proposes a novel approach for quantifying the interference impact of each employed channel and jointly addressing the user-side quality requirements and the network-side interference management. The algorithm is tailored for operatoragnostic Software-Defined Networking (SDN)-based Radio Resource Management (RRM) in dense Wireless Fidelity (Wi-Fi) networks and adopts a fine-grained per-flow approach. Simulation results show that our algorithm outperforms existing solutions in terms of reducing the overall interference, increasing the capacity of the wireless channel, and improving the users' satisfaction.
Index Terms-Context-aware QoS model, power management, network communications, wireless, wireless communication Ç

INTRODUCTION
T HE overwhelming success of wireless devices such as tablets and smartphones has resulted in the dense and often uncoordinated deployment of Wireless Fidelity (Wi-Fi) networks. Today, most houses, offices and shops have at least one Wi-Fi Access Point (AP) that provides coverage to many wireless users. The fact that these APs are so densely deployed without proper coordination, coupled with the unlicensed nature of the Wi-Fi frequency bands, has resulted in rising levels of unwanted adjacent and co-channel interference.
Solutions that offer to manage large scale IEEE 802.11 Wireless Local Area Networks (WLANs) already exist, but lack the flexibility, scalability, and dynamism necessary to fully optimise the utilisation of Wi-Fi networks and alleviate the spectrum congestion that occurs in these situations. This is largely due to limitations in current generation Wi-Fi APs' functionality as they are not equipped with mechanisms to optimise the use of spectrum on a macro-level. Although the IEEE 802.11h [1] amendment now defines Dynamic Channel Assignment (DCA) and Transmit Power Control (TPC), these mechanisms are not exploited effectively to address interference in dense IEEE 802.11 WLANs. More specifically, volatile spectrum utilisation caused by the heterogeneity of wireless applications and their requirements as well as changes in the number of wireless users, has not been addressed properly.
Unlike wired networks where the size of the network is often fixed and the amount of traffic can be predicted, IEEE 802.11 networks are very dynamic as wireless users can join and leave at any moment. More importantly, the traffic within these networks is characterised by heterogeneous Quality of Service (QoS) demands and different transmission rate requirements, as each wireless user might be running a different application. These demands are increasing over time as more bandwidth-hungry services are introduced. In addition to the wireless users, mobile operators are now looking to offload data from their cellular networks to Wi-Fi networks. However, since the Wi-Fi spectrum is a finite resource, significant increases in wireless traffic will ultimately result in congestion within the network, affecting the overall quality of coverage and reducing the network performance as shown by the results obtained from the study conducted by the authors in [2].
Addressing this problem necessitates new Radio Resource Management (RRM) approaches that can manage and allocate Wi-Fi spectrum at a macro-level and that can react effectively to changes in wireless traffic and adapt to new flow demands. The management of the radio frequency spectrum alongside the APs' transmission power has recently become two crucial aspects of resource utilisation to achieve global network performance optimisation. Recently, Software-Defined Networking (SDN) [3] has emerged as an open, efficient and flexible network management concept for large networks. By decoupling the control plane from the data plane, SDN centralises the network management in a single entity, referred to as a controller. Due to its flexibility, SDN is also now being adopted for wireless network management, including IEEE 802.11 WLANs.
In this paper we present a Per-Flow RRM algorithm that aims to address interference in dense IEEE 802.11 WLANs by adjusting utilisation of the spectrum according to the transmission rate of each flow the AP serves. The proposed algorithm exploits the centralised and cross-layer management capabilities offered by SDN, and we use the framework developed in the context of the Horizon 2020 (H2020) funded Wi-5 (What to do With the Wi-Fi Wild West) project [4] to establish the feasibility of our approach. Specifically, the Wi-5 project addresses spectrum congestion in the most popular Wi-Fi networks, such as 802.11 b/h/g/n Wi-Fi standards, without modifying the user equipment, by adopting the architecture defined in [5] based on SDN as an approach to manage only the APs and, therefore, downlink communications. Moreover, the inclusion of downlink transmissions only is a reasonable assumption as in today's typical Wi-Fi networks, the amount of downlink flows is much greater than the amount of uplink flows. Further details about this implementation will be provided in Section 4. With respect to previous works in this area found in the literature and to the best of our knowledge, this paper presents a novel centralized approach to address joint per-flow power adjustment and channel assignment applicable in a multi-cell network considering both the network-wide and user-side qualities.
The rest of this paper is structured as follows. In Section 2 we provide a comprehensive analysis of the state of the art in the context of RRM solutions in IEEE 802.11 WLANs and set out the motivation and ideas for our new RRM algorithm. In Section 3 we formulate the interference management problem and identify the general approach to design the per-flow RRM algorithm. In Section 4, we discuss the main issues that need to be considered to design the approach, and present the SDN framework used to implement it. In Section 5, we describe the channel assignment model used. In Section 6, we present our per-flow RRM algorithm. In Section 7, we evaluate the algorithm and analyse its performance results. Finally our conclusions are presented in Section 8.

MOTIVATION AND RELATED WORK
RRM plays a central role in optimising the wireless spectrum, especially in congested IEEE 802.11 WLAN environments. Certain solutions found in the literature proposed a finegrained scheduling of the access to the channels in order to avoid spectrum congestion [6]. Other solutions, however, tried to mitigate this problem through a better allocation of spectrum resources using the DCA and TPC resembling the approach proposed in the IEEE 802.11h amendment [1]. These primitives allow us to manage the channel where the transmission takes place, and control the transmission power.
Early efforts in this domain explored the possibility of adapting the radio resources of an AP to alleviate interference by estimating the quality of the channel with the wireless station (STA) it serves. Such solutions, however, required the ability to access the STA in order to obtain the necessary information to estimate the channel's quality, as illustrated in Fig. 1. However, this is not always possible, as Wi-Fi network operators cannot always access the devices they are serving. Later contributions tried to address the problem by relying on the AP's measurements only to adjust its radio parameters.
Some of these solutions focused on a per-cell approach with the aim to optimise spectrum usage within the AP's cell as is the case in [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [17], [18], [19], [20], [21], [22], while others were based on a per-link approach where the main focus was to optimise the quality of communication with the STA using power adjustment such as the works presented in [23], [24], [25], [26]. Specifically, the percell solutions relied on TPC to provide higher transmit power to the cells with a higher number of STAs or a poor quality of the channel [7], or to reduce the transmit power and, consequently, the caused interference in not overloaded APs [8]. The work presented in [9] demonstrates through a real-time experiment how per-cell TPC helps reduce the interference and increase the throughput; while, [10] proposes a per-cell TPCbased solution to maximize the Signal-to-Interference-plus-Noise Ratio (SINR) of the STAs. Solutions that rely on DCA allow to move an AP to another less-congested channel as is the case in [11], or exploit partially overlapping channels [12]. The work proposed in [13] improves the performance of such approaches through a weighted vertex coloring problem. In [14] the authors discuss the importance of DCA for the co-existence between residential APs and service provider APs in dense urban enviroments. Furthermore, [15], [16], [17] address per-cell DCA, proposing solutions that rely on an Adversarial Multi-Armed Bandit (AMAB) framework based on local measurements, a cloud based approach to manage APs in dense residential deployments, and a min-max optimization problem of channel utilization, respectively. Finally, a combination of both solutions is considered in [18], [19], [20], [21]. In detail, in [18] and [19] authors propose distributed algorithms to perform DCA and TPC in real-time, adjusting power and channels according to network dynamics; while [20] and [21] propose combined DCA and TPC solutions for mesh networks and IEEE 802.11 a/h WLANs, respectively.
It is also important to note that in some of these contributions, such as in [11], the AP is also responsible for the configuration of the radio resource in order to mitigate the interference. The main limitation of these localised per-cell solutions is the lack of coordination among APs, which limits the overall efficiency of the solution in dense environments. Other centralised or coordination based solutions such as [22] and [23] provided a framework for inter-AP cooperation that helped to achieve better spectrum allocation between interfering IEEE 802.11 WLANs. Despite this advantage, these solutions still share a similar drawback with distributed per-cell solutions since both rely on the assessment of the cumulative interference of all neighbouring APs, as illustrated in Fig. 2. Despite the fact that a central controller in these solutions is able to manage all interfering APs and apply a suitable radio configuration, the cumulative interference assessment does not provide the necessary information that helps in identifying the best configuration for each affected AP in order to establish an optimal configuration for the whole network.
Although per-link solutions aim to optimise the transmission power between an AP and the STAs it is serving, they suffer from a similar problem where the power adjustment relies on the cumulative interference the serving AP measures locally [23], [24], [25], [26]. Such a cumulative interference is considered to design approaches in order to increase IEEE 802.11 networks capacity and battery life of mobile devices in [23], to obtain proportional fairness in multi-rate WLANs in [24], or to increase the throughput of IEEE 802.11 networks and their radio spectrum use efficiency in [25] and [26]. However, since the AP cannot cooperate with adjacent-channel APs, an increase of its transmission power might harm their channels' quality, triggering these APs to try to adjust their transmission power as well. Such a lack of cooperation may have severe consequences on the performance of all the IEEE 802.11 WLANs involved.
The algorithm proposed in this paper aims to address the above limitations via the following new contributions: Centralise the management of spectrum allocation in IEEE 802.11 WLANs by controlling all interfering WLANs through IEEE 802.11 TPC and DCA functions. This centralised management will provide a globally coordinated spectrum allocation process and mitigate interference more efficiently. This control will not necessitate the involvement of STAs, but will rely on the APs only. Unlike existing solutions such as [20] and [23], our algorithm will allocate spectrum to an STA such that it can satisfy the user's requirement while at the same time minimising the impact of any change on the rest of the network. Specifically, the algorithm will start by adjusting the transmission power between an AP and the STA it is serving through TPC functionality, taking into account the airtime occupancy of the AP. This is realised through the co-channel contention consideration throughout the network. Then, the algorithm will assess the interference impact of this power adjustment on the adjacent-channel APs. If the power adjustment results in an interference that exceeds an acceptable level defined in the algorithm, the DCA functionality is triggered to reassign the channels to the APs in order to minimise the interference. Unlike existing solutions such as [11] and [21], our algorithm will estimate the interference impact of each AP's configuration on its adjacent-channel APs separately, instead of cumulatively. Accordingly, the algorithm will be able to find an optimal configuration that could achieve the dual objective of both satisfying the user requirements and minimising the interference impact on each adjacent-channel AP. To optimise the utilisation of the spectrum and provide fine-grained RRM, the algorithm will process the transmission power adjustment according to the demands of the STA it is serving at a specific time, i.e., the rate required by the active downlink flow the AP is exchanging with the STA, in addition to the estimated channel quality at the AP as well as the airtime share of the STA. This is different from other TPC approaches that rely on channel quality to determine the power level when communicating with the STA. Therefore, our approach addresses the limitations found in the state of the art as follows: 1. It allows for a per-flow power adjustment to address a user's requirements, while optimizing its networkwide impact in terms of interference. 2. It offers an innovative coordination among APs through centralized spectrum management control and novel quantification to represent the networkwide impact of each AP.

System Model Analysis
To better formulate the problem of interference in dense Wi-Fi networks, let us consider W as a set of IEEE 802.11 APs and F as a set of available channels that each AP can use, with jF j < jW j, where F includes F non non-overlapping channels. The sizes of sets W and F are allowed to change dynamically. In this model we assume that an access point AP i in W, operating on a channel f i in F, is trying to communicate with its associated STA. We also assume that at the same time, n À 1 other APs in W (n jW j) are transmitting and causing interference to the downlink communication between the AP and the STA it is serving, as illustrated in Fig. 2. A summary of the symbols considered in this paper is provided in Table 1. In general, the quality of wireless communication between an AP and the STA it serves is represented by the SINR. Therefore, based on the definition of SINR and assuming that the quality of the wireless communication required from the AP to serve its STA is S i , the following condition needs to be verified [24]: Here, G i is the channel gain from AP i serving its STA, including the transmitter gain, receiver gain and path loss between the AP and the STA. T i is the transmit power of AP i . a ij is a coefficient representing the overlap between the channels assigned to AP i and AP j . b e represents a source of interference generated by external devices and sensed at the STA. We assume that the number of external sources of interference, b e , is unknown and that h 0 is the additive noise at the STA frontend. In reality, condition (1) expresses the reception quality that is high enough to satisfy the user, given an optimised assignment of channels and the corresponding adjusted power levels in the presence of external and inaccessible sources of interference. To address the interference problem, it is therefore necessary to find an optimal configuration that verifies condition (1) for all STAs associated with each AP in the network.
We assume that the locations of the users, their required qualities and the inaccessible sources of interference and noise are mutually independent. We further assume that the number of interfering signals in a dense IEEE 802.11 network is large enough to apply the Central Limit Theorem (CLT) to (1) and substitute the collective impact of b with a normally distributed random variable, h e . Note that this is applicable regardless of the actual distribution of the interfering signals. Subsequently, recasting the variables in (1) as random variables and applying the CLT yield: Here, h t ¼ h e þ h 0 represents the collective impact of the inaccessible interference and noise. The expected value of (3) yields the following: which in turn yields: Considering the mean of the probability distribution m and the covariance cov between random variables, the expected value can be defined as follows: Index 'a' represents the expected values corresponding to the APs which are associated with the STAs and appear in (1) to (3) with index 'i'. Using condition (4) we can conclude that the average reception quality, m S , will be bounded as follows: Parameters m Ga , m Ta , cov G a ;T a in the upper part of (5) are directly related to the channel gain of the signals, G, or the status of the user's reception frontend, which are mainly dependent on the radio environment conditions and therefore could be replaced by a function we call f. Similarly, parameter cov S;fGaT g in the upper part of (5) is directly related to the AP's downlink transmit power, T. Since we assume that the demand of the user, S, is independent from these parameters, cov S;fGaT g could be replaced by a function we call g, which takes as a parameter the correlation between S and T. The same principle is applied to the lower part of (5) where m fGaT g is replaced by a function, called h, that takes as parameters m T and m a . Therefore, we consider only the parameters related to S, which should be jointly controlled, simplifying condition (5) as follows: Where f, g and h are the functions of their respective arguments that will be discussed in the next section, and r represents the correlation between its denoted variables.

Problem Analysis
In order to achieve the required communication quality for all STAs, we aim to maximise the upper bound of the condition in (6) higher than the actual average demands of the users throughout the network. To achieve this, the following considerations will need to be taken into account: a) Increasing m Ta that will increase the transmission power of associated APs towards the STAs they serve; b) Decreasing n À 1 that will decrease the number of interfering APs; c) Decreasing m a that will reduce the amount of overlap between interfering APs; d) Decreasing m T as well as r S;T that means decreasing the average power level of the interfering APs while avoiding a strong correlation between Mean of the collective impact of the inaccessible interference and noise h T co cov v G G;T T Covariance between G and T r r G G:T T Correlation coefficient between G and T u uðf f i i ; f f j j Þ Interference/contention impact of the channel assigned to AP i over the channel assigned to AP j Number of active flows in AP i these power levels and the required quality of a certain associated STA (i.e., prioritizing the adjustment of the associated AP over the adjustment of the interfering power levels to avoid instability); and e) Increasing r Ga;Ta that reinforces a strong correlation between the transmission power level of the AP and the channel gain towards the STA it serves. Our aim is to define a RRM algorithm that will provide an interference management approach to fulfil the conditions identified above. Specifically, the interference control formulated in (6) helps to identify a set of conditions that need to be considered in order to provide an acceptable quality of communication in dense IEEE 802.11 WLANs. However, devising an interference management approach that considers all of these points is not straightforward, due to the following reasons: 1. Although increasing the transmission power of APs is suggested in a) to reach an acceptable communication quality, it contradicts with c) which suggests decreasing the overlap between interfering APs. In fact, raising the transmission power results in an increase in the transmission range, which might subsequently result in increased interfering APs' overlap. 2. Decreasing the number of interfering APs suggested in b) motivates more frequent reuse of non-overlapping RF channels such as 1, 6, and 11. This results in less diversity of the available channels and subsequently an increase of competing co-channel APs. 3. Conditions d) and e) suggest a weakened correlation between transmission power and the STA's required quality of communication, and a strengthened relationship between the transmission power and the channel gain. In reality, many approaches including the IEEE 802.11 standard use Received Signal Strength Indication (RSSI) as the main metric to adjust transmit power to improve the quality of communication with the STA. This means that an AP only reacts to the quality of communication when serving its STA by increasing the transmit power, without considering the effect of this increase on the quality of neighbouring communications. Such transmit power adjustments might result in harmful interference to adjacent-channel APs by widening the range of the coverage. Hence, conditions d) and e) imply moving away from the current RSSI-based transmit power level adjustment to an approach that reacts to the requirements of the flow served by an AP from a network-wide perspective.

General Approach
The discussion above helps to identify the main components of an interference management approach for our RRM algorithm according to the objectives set out in the previous subsection. More specifically, the approach should consist of the following processes: Flow Management Process. For each downlink flow the AP is serving, this process identifies the rate necessary for this flow to achieve its required QoS. This process will be per-flow and quality-oriented, i.e., it will be triggered each time the associated STA changes to a new flow with new QoS requirements. AP Power Adjustment Process. For each downlink flow, a certain AP is serving to its associated STAs, this process uses the required rate to identify the transmission power level required to achieve it. Moreover, the process will take into account other associated flow requirements in the same AP and all other co-channel APs which are contending for airtime. This process will be triggered by the Flow Management Process. Per-AP Quality Assessment Process. This process assesses the interference impact of transmission power adjustments on each AP located in the vicinity of the AP that needs a new transmit power, and configured to work on an adjacent-channel. Channel Assignment Process. This is triggered by the Per-AP Quality Assessment Process if the power adjustment results in interference on one of the adjacent-channel APs which exceeds a specific threshold. It will determine a new optimal configuration for the channel assignment. Fig. 3 illustrates the interactions between these processes in our Per-Flow RRM algorithm.

DESIGN CONSIDERATIONS AND FEASIBILITY
In theory, the general approach of the RRM algorithm presented in Fig. 3 could be applied "offline", with each AP manager manually configuring the radio parameters according to the needs of its current wireless users' application demands. However, the optimal radio configuration will change over time, which would require rather cumbersome repetitive manual configuration. In addition, as new configurations will be triggered by new interference situations (e.g., new devices and new services used at different times), the algorithm needs to obtain that information somehow, preferably not by manual input from the Wi-Fi network operators who are managing the APs. Finally, the algorithm will need to adjust the transmit power of some APs, which is hard to configure manually.
Therefore, it would be more practical to implement the Per-Flow RRM algorithm in real-time on an intelligent central controller which measures the usage of the spectrum and automatically configures the APs. However, the implementation of the algorithm will raise a number of design issues, which we address in this paper: 1. Ability to Measure Inter-AP Interference: The central controller will need to implement the Per-AP Quality Assessment Process, which assesses the impact of any radio configuration of one AP on each of the other APs within the network. Unlike existing solutions that measure the overall interference within the network, the central algorithm needs to be able to measure the interference impact of each individual AP. 2. Ability to Manage Flows: The central controller will need to implement the Flow Management Process that detects the QoS requirements of the active flow within the STA it is serving. It therefore needs to identify the class of the downstream flows and the rate the connection between the AP and the STA needs in order to satisfy this requirement. 3. Ability to Compute the Required Transmit Power Level: To implement the AP Power Adjustment Process, the central controller will need to calculate the required transmit power for each wireless connection. Since the dense IEEE 802.11 WLANs considered in this paper are usually characterised by a large number of STAs served by their respective associated APs, it is necessary to guarantee that the central controller is able to calculate the transmit power for each connection in real-time, before activating the new flow of the STA and subsequently handling its requirement changes. 4. Ability to Configure Radio Parameters of all APs: To implement the AP Power Adjustment Process and Channel Assignment Process, the central controller will need to have access to all APs and be able to configure their transmission channels and transmit power. 5. Ability for Inter-AP Cooperation: Although there is a possibility that APs could interfere on the same channel while managed by the same entity, adjacent channel interference mainly occurs when APs are managed by separate entities. In this case, monitoring the quality of the channel and configuring AP radio parameters require a shared cooperation platform among operators that manage different Wi-Fi networks.

Centralized Management Using SDN
Currently, there are a number of remote and centralised management products for large enterprise Wi-Fi networks available in the market [27]. While they allow administrators to configure APs, including transmission channels, these solutions are not well standardised and are based on closed source technology. As a result, they require users to deploy a specific vendor's AP, which we cannot implement the proposed channel assignment algorithm on top of, and there is no northbound interface available for the input of policies, user preferences, etc. Hence, we propose to implement the algorithm using an SDN-based framework where the control plane of an AP is decoupled from the data plane [28], [29], [30], [31]. Accordingly, the SDN controller configures the APs, and the RRM algorithm runs on top of the controller, as shown in Fig. 4a. The contribution presented in this paper represents part of the work carried out in the Wi-5 project, which aims to address spectrum congestion in the most popular Wi-Fi networks [4]. The project proposes an architecture [5] for RRM and optimisation in the considered Wi-Fi networks as shown in Fig. 4 that is suitable for covering dense environments such as airports, apartment buildings and enterprises. Note that this architecture can achieve a seamless change of the channel allocated to a certain AP without noticeable data loss for the STAs, even for real-time services. For example, in the work presented in [32], the Wi-5 SDN-based architecture has been evaluated to demonstrate how it is able to provide seamless inter-channel handovers.
The interference management approach proposed in this paper can be implemented as an application on top of the SDN controller as illustrated in Fig. 4a. The Wi-5 SDN architecture helps to address the abovementioned design considerations of the interference management as follows: Monitoring and Radio Configuration: The Wi-5 architecture defines a Spectrum Plane which enhances the operational capabilities of IEEE 802.11 APs by defining new monitoring and configuration primitives, and making APs programmable, thereby enabling fine-grained spectrum allocation and management. As shown in Fig. 4b, this plane is an addition to the data plane that is part of traditional SDN architectures, where data traffic management policies reside. The Spectrum Plane provides an implementation of DCA and TPC as defined in [1]. It also provides a monitoring function that measures the performance of the IEEE 802.11 WLANs, including the interference level and the load in each channel [32], [33]. In the context of the Wi-5 project, we are investigating the scalability of this architecture in terms of monitoring and configuration and any complexity issues that might arise. Specifically, our work will focus on a set of use-cases where spectrum congestion and interference are common and we will test the performance of Wi-5 architecture. Per-Flow Management: The monitoring function of the Spectrum Plane keeps track of the number of clients associated with each AP, the amount of traffic and its nature. Hence, this capability allows it to determine the QoS requirements of the traffic each station is sending and receiving, and implement intra-AP power adjustments according to the requirements of each flow. The details of QoS requirement detection are outside the scope of this paper and can be found in [33]. Therefore, in the rest of the paper, we assume that the information used by this process to compute the QoS requirements is available.
Inter-AP Cooperation: The Wi-5 architecture acknowledges the heterogeneity of Wi-Fi network operators and defines a cooperation platform that allows entities that manage APs, called operators, to define spectrum sharing policies. These spectrum sharing policies are then developed using the spectrum management applications implemented on top of the controller.  Fig. 4b, where the SDN controller collects information about the signal quality and strength at each interfering AP. Note that such information is used to quantify the interference impact, which addresses the limitation of the cumulative interference illustrated in Fig. 2 and explained in Section 2. The controller evaluates the interference impact of each AP based on the strength of its signal received at all other AP locations. Therefore, the greater the number of accessible APs and the density of the network, the greater the accuracy of the evaluation, which is helpful in terms of the scalability of the proposed approach. Conversely, the evaluation will be less accurate in sparse networks.

Quantifying Per-AP Channel Interference
Using this approach, we can quantify the network-wide quality by measuring the interference impact of each AP at each point in the network. The interference impact therefore represents the network-wide effect of a selected interfering signal. In this way, the interference impact of operating AP i on channel f i at transmission power T i can be formulated as follows: Where: Here, uðf i ; f j Þ represents the impact of AP i on AP j and is quantified based on their channel overlap ratio, a ij , if they are assigned different Radio Frequency (RF) channels. In the case of co-channel interference (i.e., f i ¼ f j ), the value of uðf i ; f j Þ represents the contention impact of the co-channel reuse, given the APs' number of active flows, v: In addition, w i;j ðf i ; f j Þ is the weighting coefficient of uðf i ; f j Þ and is a function of T i (i.e., the transmission power level at AP i ) and G i;j (i.e., the channel gain between AP i and AP j ). A reused signal will result in contention as long as it is sensed above the sensing threshold of the receiver. Therefore, the weight w for co-channels is independent from T i and G i;j and set for normalization purposes as: w max ¼ max ðfw i;k j 1 k ngÞ.

Per-Flow Power Adjustment Computation
The power level of each flow needs to be set proportionally to the rate served by its AP for the given flows, co-channel APs, and also the modulation and coding scheme (MCS) supported by the system. The configuration in each AP remains unchanged until a change in the active flows or assigned channels triggers an adjustment.
It is well known that the IEEE 802.11 standard uses coordination functions that enable a subset of STAs to share the channel simultaneously. For an AP to be able to adjust its transmission power according to each STA's flow requirements in real-time, it needs to run the per time-slot adjustment process frequently to include all the active flows. It also needs to process this fast enough to avoid delaying the transmission power adjustment too long.
Utilising subsets of the flows based on their assigned RF channels needs less frequent readjustment and provides a lower computational complexity compared to the above time-domain process. Specifically, let us consider a network of a APs, with k APs allocated to separate channels ðk < jF jÞ and the rest of the APs allocated to reused channels, i.e., ða À kÞ APs assigned to ðjF j À kÞ channels. Since we are considering downlink flows, the highest number of simultaneous transmissions per time slot can therefore be formulated as follows: Since our work considers dense Wi-Fi environments where the number of APs typically far exceeds the number of channels, i.e., a ) jF j, the number of simultaneous transmissions per time slot is always bound by the number of channels, i.e., M jF j, regardless of the density of the network and the total number of active flows in the network. This finding means that a real-time and per-flow power adjustment of the simultaneous flows is always computationally predictable and undemanding regardless of the density of the network and the population of the users. A detailed description of our channel assignment model is given in the next section, while its inclusion in the RRM algorithm along with the transmit power adjustment is explained in Section 6.

CHANNEL ASSIGNMENT MODEL
Channel assignment is an important element of the proposed interference management approach, and illustrated in Fig. 3. Its objective is to minimise the network-wide interference between APs and it is triggered each time a transmit power adjustment results in interference at any of the APs which exceeds a fixed threshold d. In this section, we present the channel assignment model used as part of the presented perflow RRM algorithm. Since our work is based on the SDN architecture outlined in Section 4.1, we assume that the following information required for our channel assignment model is available: 1) The topology of the network and arrangement of all the APs; 2) The current channel assignments across all the APs; and 3) The characteristics of the IEEE 802.11 RF channels and their impact on the interference due to a combination of orthogonality and overlapping of channels. We define the network topology matrix as G 2 f0; 1g nÂn , where [34], [35]: at the vicinity of AP j exceeds threshold d 0; otherwise: We define the channel assignment matrix as A 2 f0; 1g nÂF , where: We define the interference impact matrix as I 2 R nÂF , where I i;j represents the interference on the network, resulting from assigning channel j to AP i , and is calculated using (7). Matrix I embodies the interference impact of assigning each RF channel to each AP, given the channel assignment of other APs. I relies on the measurements collected from the APs and processed at the controller, and represents a-priori information. Note that such measurements consider the physical layer activities of all the elements involved in the network, which include the effect of features such as hidden node control and its allocation vector.
Finally, we define U as an objective function that represents the interrelation between APs, resulting from their respective assigned channels and mutual interference impacts. U is formulated as follows: Here 'Â' denotes the matrix multiplication operator, and 'Á' denotes element-wise matrix multiplication operator. Note that since I is a matrix with real values, i.e., I 2 R nÂF , U is also a matrix with real values where U 2 R nÂF . Matrix U can be described as an objective function representing the magnitude of the interference in the whole network and encompassing the scale at which APs are conflicting and contending with one another, i.e.,

U G represents the APs interrelations with or without interference conflict ð Þ
A zfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl}|fflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl{ encapsulates the scale by which APs conflict in each specific channel I |fflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl ffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl ffl} represents the magnitude of the interference which the whole system is facing: By applying the actual interference of the channels through I in (11), the objective function U provides the network-wide interference quantities which need to be minimised through an optimised channel assignment. We, therefore, define A Ã as the optimised channel assignment matrix that provides the minimum accumulated interference impacts and can be obtained with the following: The channel assignment optimisation problem and constraints can be expressed by: Here, j j . j j 1 represents 1-norm, i.e., the summation of the elements in each column on a given row of A. The constraints in (14) are based on the fact that each AP will be assigned only one channel and in total exactly n channel selections should be made for n APs. By representing all elements of matrix A in the form of a vector x of unknown values, i.e. ,x 2 f0; 1g nÃF Â1 ; we have: . .
The optimisation problem shown in (14) can be solved using binary Integer Linear Programing (ILP) as follows: Here, c is a coefficient matrix resulting from the elementwise expansion of (14) and F represents its dependency on matrices G and I. x provides the desired channel assignment (i.e., the elements of matrix A Ã ).

PER-FLOW RRM ALGORITHM
The algorithm proposed in this paper also aims to adjust the radio resources of the APs according to the requirements of the downlink flows they are serving. It is implemented using three tasks J1-J3 based on the processes introduced in Section 3.3. Task J1 is implemented in the AP Power Adjustment Process to determine what rate a flow will be given when an AP adjusts its transmit power to a specific level, given the airtime share of the AP when considering the presence of co-channel interfering APs. Task J2 is implemented in the Per-AP Quality Assessment Process to determine the interference impact of the chosen transmit power level on each of the adjacent-channel APs, given the current channel assignment. Task J3 is implemented in the Channel Assignment Process to find a new optimal channel assignment for a given set of APs in order to decrease their interference levels below a set threshold d. The channel assignment is performed according to the model presented in the previous section. For the sake of simplicity we assume that the initial channel assignment configuration of the APs results in an interference level below threshold d, i.e., the system is stable. The algorithm is then triggered every time the QoS of the downlink flow served by an AP changes. We also assume that the rate required by the flow is known to the algorithm, as discussed in Section 4.1. Finally, we assume that there are L discrete applicable power levels available for the algorithm to choose from.

Algorithm 1. Per-Flow RRM Algorithm
We now explain the proposed per-flow RRM algorithm, depicted in Algorithm 1 below. It starts upon the arrival of a new flow i with a required flow rate rate i , which is to be served by access point AP i 2 W .
The algorithm includes the following steps: 1) Form W coÀchannel; AP i W as the set of APs that are collocated on the same channel together with AP i (line 1 of Algorithm 1). 2) Determine the airtime share of flow i, Time i , based on formed W coÀchannel; AP i (line 2 of Algorithm 1). 3) Generate W adjacentÀchannel;AP i W as the set of adjacent-channel APs to AP i (line 3 of Algorithm 1). 4) Execute J1 based on Time i to find the lowest transmit power level, denoted as T req;i , which can achieve required rate i , by trying L applicable power levels in ascending order. The algorithm stops executing J1 once a transmit power level T req;i has been found to sastify required rate i or reached to the highest level. T req;i is then applied to AP i (lines 4-10 of Algorithm 1). 5) Execute J2 using W adjacentÀchannel;AP i and T req;i to determine whether the adjustment of AP i 's transmit power to T req;i causes an adjacent-channel AP in W adjcentÀchannel;AP i ; denoted as AP j ; experiencing its interference, denoted as I j;T req;i , higher than given threshold d (lines 11-16 of Algorithm 1). Note that this phase will also be used to populate the Interference Matrix I, using the interference impact on each of the adjacentchannel APs ðI j;T req;i Þ. The matrix will be used by the channel assignment process in J3, if AP i is flagged. 6) Execute J3 to reassign channels to the APs in W adjecentÀchannel;AP i only if one of them is identified in (5) to suffer AP i 's interference beyond d (lines 17-20 of Algorithm 1). Since there are L transmit power levels to choose from, the loop described in lines 5-9 will be executed at most L times. Also, assuming that jW overlapÀchannel;AP i j ¼ K, the loop described in lines 11-16 will be executed K times. Therefore, the time complexity for each flow will be OðK þ LÞ.

EVALUATION
To demonstrate the achievement of the design goals outlined in Section 2, we have carried out a systematic and extensive set of experiments based on a dense IEEE 802.11 environment in which the APs are managed by an SDN controller.

Simulation Setup and Evaluation Strategy
We use MATLAB to simulate a dense IEEE 802.11 WLAN environment consisting of 25 fixed APs randomly deployed in an area of 300 m Â 300 m at a minimum distance of 50 m from each other. To evaluate the impact of the transmit power adjustment on the performance of the network, we assume in these simulations that the default value of the APs' transmit power is 20 dBm and can vary, according to the QoS requirements of the active downstream flows and the behaviour of the RRM algorithm assessed in these simulations. Up to 100 STAs are deployed randomly at a minimum distance of 1 m from each other and the APs. In these simulations, we adopted a common free-space large-scale path loss model with the path loss exponent set to 2 to compare our algorithm against other works, which usually use the same model. Moreover, a fixed noise level at À99 dBm and threshold d in (9) set to À85 dBm. The evaluation of our Per-Flow RRM algorithm will focus on the following criteria: Performance of the Per-Flow RRM Algorithm. We evaluate the performance of our algorithm in terms of the overall interference within the dense IEEE 802.11 WLAN environment and the users' satisfaction. To achieve this purpose, we consider comparing our Per-Flow algorithm, which estimates the interference impact, against the most relevant approach found in the literature that uses a Per-AP RRM Algorithm [11], [21]. We consider this Per-AP strategy because it is commonly used in the literature to decide how to handle spectrum resources among Wi-Fi STAs through DCA and TPC functionalities. Specifically, this approach uses a combination of DCA and TPC functions to alleviate interference, but, unlike our algorithm, it is operated at the AP and reacts to the cumulative interference of all neighbouring adjacent-channel APs. In terms of implementation, it does not include the TPC based on AP airtime sharing and consequent interference impact on the other APs that we provide through Task J1 and Task J2 in Algorithm 1, respectevely. Transmit Power Usage in the AP Power Adjustment Process. We assess how transmit power is used by our algorithm and also compare the usage against that of the Per-AP RRM Algorithm. More specifically, we focus on the level of transmit power used by our algorithm when the AP Power Adjustment Process is triggered when trying to satisfy flow rate requirements, and compare these values against the ones used by the other algorithm. Impact of the Interference Threshold in the Per-AP Quality Assessment Process. We investigate how changes to threshold d can affect the behaviour of the Per-AP Quality Assessment Process, when triggered by our algorithm. We measure the average number of satisfied flows (i.e., number of flows with their required rates satisfied) and the average number of dropped flows (i.e., number of flows with their connections dropped as their requested rates could not be met). Optimality of the Channel Assignment Process. We assess the performance of our Channel Assignment Process to prove that the resulting channel assignment configuration is optimal. Moreover, we introduce the effect of external interference, resulting from sources of interference that are not managed by the controller, on the optimality of the channel assignment. Impact of External Interference on the Performance Results. We also investigate the performance of our algorithm in the presence of the above-mentioned external interference. More specifically, we focus on the reaction of our Per-AP Quality Assessment Process under such conditions and measure the average interference and SINR within the network.

Performance of the Per-Flow RRM Algorithm
In our first set of simulations, we evaluate the average interference measured within the dense network simulated in this work for our Per-Flow RRM algorithm and the Per-AP RRM algorithm described in [11] and [21]. As shown in Fig. 6, applying our Per-Flow RRM algorithm results in less interference (right side blue box) in comparison to the per-AP approach (left side blue box). The upper and lower edges of the blue boxes in this figure represent the highest and lowest values of the interference measured in each AP and averaged in the network using the two algorithms. The upper and lower edges of the plotted boxes are the 25th and 75th percentiles of the values and the median values are indicated by the central red lines. Accordingly, the results presented in Fig. 6 show that our per-Flow RRM algorithm results in 5 dB less average interference than the per-AP RRM algorithm (À51 dBm and À56 dBm, respectively). This reduction of the interference allows us to improve the performance in terms of satisfied and dropped connections as we will explain in the next figures. In fact, to better highlight the benefits we can achieve by reducing the interference on the performance of the network, we measured the average capacity that the APs could serve to their STAs when applying both RRM algorithms. As shown in Fig. 7, applying our per-Flow RRM algorithm in this dense environment results in an improvement of the served capacity (left side yellow bar) over the per-AP RRM algorithm (left side blue bar), which exceeds 30 percent. This outcome is due to the fact that the average interference shown in Fig. 6 affects the achievable SINR within the network and subsequently the utilisation of the capacity.
We also measured the average number of served STAs that had their QoS rate requirements satisfied by both algorithms. As also shown in Fig. 7, our per-Flow RRM algorithm (middle yellow bar) satisfies more STAs in comparison to the per-AP RRM algorithm (middle blue bar) with an improvement margin of 30 percent. These results demonstrate that our per-Flow algorithm not only tackles the interference problem more effectively, but through its fine-grained RRM approach, manages to allocate spectrum resources to serve significantly more STAs.
Finally, we measured the average number of STAs that could not be served by both algorithms due to the lack of capacity to meet the STAs' QoS requirements. Note that in case an STA could not be served with the required rate, the connection between the AP and the STA is considered as dropped. As shown in Fig. 7, our per-Flow RRM algorithm (right side yellow bar) results in less average dropped connections in comparison to the per-AP RRM algorithm (right side blue bar) with a reduction margin of approximately 50 percent. These results confirm that our per-Flow RRM algorithm is more QoS centric than the other algorithm, as it manages the allocation of the wireless spectrum according to the requirement of each flow, which results in a fairer distribution of capacity among the STAs and less spectrum congestion.

Power Level Usage in the Per-Flow RRM Algorithm
To better explain the role of transmit power control in addressing interference and how it is used by the RRM approaches, we measured the transmit power levels used by both algorithms. As shown in Fig. 8, the power levels of transmission used by our per-Flow RRM algorithm are much lower in comparison to the per-AP RRM algorithm. This is because our algorithm reacts to interference by first trying to adjust the transmit level according to the rate required by the flow being served by a specific AP. The adjustment of transmit power is also restricted by the Per-AP Quality Assessment Process, which assesses the impact of this change on each neighbouring AP. It is also important to emphasise on the fact that the transmit power level used depends, in addition to the required rate, on the quality of the channel. Therefore, the flows that require a higher rate and experience a poor channel quality will not be satisfied by our algorithm, as a higher transmit power level would result in an overall network interference that exceeds the set threshold. To better explain the relationship between the flows' required rate and the transmit power in our Per-Flow algorithm, we measured the correlation between the rate and transmit power level for flows with required rates that vary between lower and higher than the average rate used in our simulations. As shown in Fig. 9, the correlation between the rate and transmit power increases linearly and proportionally to the increase of the flow's required rate which is lower than the average rate. This indicates that our per-Flow RRM algorithm reacts well to small increases in the required rate by increasing the transmit power of the AP. It also shows that, subsequently, the correlation starts dropping (up to 15 percent drop) as the required rate exceeds the average rate. This drop is due to the fact that although our Per-Flow RRM algorithm tries to further increase the transmit power in order to satisfy the flow's required rate, the Per-AP Quality Assessment Process will not allow this adjustment if it exceeds the set threshold. In the next section, we will explore the impact of the interference threshold used in the per-AP Quality Assessment Process on the performance of our algorithm.

Impact of Per-AP Quality Threshold
As described in Section 6, our RRM algorithm uses the Per-AP Quality Assessment Process that employs a threshold for the acceptable increase in interference while adjusting the flows' power levels. The value of this threshold affects the performance of our algorithm in terms of overall interference and the rate served to each flow.
To better highlight the impact of this threshold on the performance of the algorithm, we measured the average numbers of satisfied and dropped connections while deviating the threshold from the original value we used initially during the simulations. The results depicted in Fig. 10 show that a relatively low threshold deviation of 2 percent results in a better average satisfaction of the served flows (left side blue bar) in comparison to a higher deviation of 5 percent (left side yellow bar). This is due to the fact that a lower threshold in the Per-AP Quality Assessment Process prevents the AP Power Adjustment Process from reaching a power level that degrades the overall interference level in the network. As the overall interference within the network is low, the satisfaction of the flows stays high in comparison to the situation where the deviation from the initial threshold is higher (5 percent). Fig. 10 also shows that a lower threshold deviation results in a higher average of dropped connections (right side blue bar) in comparison to a situation where a higher threshold deviation is used (right side yellow bar). The reason of these results is that in the case of a lower threshold, the Per-AP   Quality Assessment Process prevents the AP Power Adjustment Process from reaching power levels that could satisfy some flows, especially those experiencing poor channel quality and hence need higher power levels to reach their minimum reception qualities. Subsequently, more user connections are dropped for the sake of the overall network performance.

Evaluation of the Channel Assignment
The Channel Assignment Process is an important component of our algorithm as it is triggered to minimise channel overlaps between APs. Therefore, it is necessary to prove that the channel assignment process described in Section 5 results in an optimal configuration. Note that the channel assignment algorithm has already been presented and evaluated separately against state of the art channel assignment solutions [11].
In order to demonstrate the optimality of the channel assignment process, we first take the original channel assignment configuration that our per-flow algorithm applied during the simulation to yield the results already shown in Section 7.2. We then measured the interference resulting from any deviation from this configuration. As shown in Fig. 11, the measured interference within the network keeps increasing proportionally to the percentage of change made to the initial channel assignment configuration. These results demonstrate that the initial channel assignment configuration resulting from our RRM algorithm is optimal. Although these results show that our algorithm provides optimal channel assignment, there are cases where certain unmanaged wireless devices (such as uplink connections and unmanaged APs) might affect the optimality of the assignment. To better explain the effect of external interference on the optimality of the channel assignment, we repeat the previous experiment while setting 20 percent of the interference from uncontrolled sources.
As shown in Fig. 12 when the deviation from the initial channel assignment is between 3 and 8 percent, the change in the overall interference is negative (between 0 and À3). These results demonstrate that another channel assignment configuration that achieves lower overall interference is possible. Such findings can be justfied by the fact that our algorithm is effective in an environment where all sources of interference are managed by a single control entity, and that the presence of sources of interference unmanaged by this entity might effect the performance of the algorithm. The effect of such external interference on the performance of our algorithm will be investigated further in the next section.

Assessment of the Algorithm in the Presence of External Interference
The results presented in the previous section show that the presence of external sources of interference that are not managed by our proposed RRM algorithm can affect its performance. To better assess the effect of such external interference on the performance of our algorithm, we repeated the initial simulation setup for three scenarios. Scenario 1 is without external interference and with all the APs managed by the SDN controller that runs our RRM algorithm. Scenario 2 has 30 percent of the interference generated by APs that are not managed by the SDN controller. In addition, our per-Flow RRM algorithm is run while the Per-AP Quality Assessment Process is deactivated. Scenario 3 also has 30 percent of the interference being generated by APs that are not managed by the SDN controller. However, this time the Per-AP Quality Assessment Process is activated. Fig. 13 depicts the average interference in the network for the three scenarios. It shows that our algorithm achieves better performance when all interference is generated by managed APs (left side blue box). When some of the interference is generated by unmanaged sources in scenarios 2 and 3, the average  interference within the network is higher (middle and right side blue boxes). This figure also shows that the lower edge of the right side blue box (i.e., for scenario 3) is higher than the lower edge of the left side blue box (i.e., for scenario 1). However, Fig. 14, which depicts the average SINR in the network for the three scenarios, shows that the median SINR values for both scenarios 1 and 3 are very similar, although the lower edge of the right side blue box for scenario 3 is also higher than the lower edge of the left side blue box for scenario 1. In addition, both figures show that the performance of the network is worse in scenario 2. Note that in Figs. 13 and 14 the values which we considered as outliers are indicated by red symbols. These results prove that the presence of sources of interference that are not managed by the controller affects the performance of our RRM algorithm. More specifically, the channel assignment configuration which is triggered by the Per-AP Quality Assessment Process in scenario 3 is not optimal, as already discussed in the previous section. However, when comparing the results obtained in scenario 3 against the results obtained in scenario 2, it becomes clear that despite this suboptimality, the Per-AP Quality Assessment Process is able to provide better performance and restore the SINR within the network to a median value similar to the one obtained in scenario 1. It is thus evident that the performance of our RRM algorithm is near-optimal in the presence of external interference.

CONCLUSION AND FUTURE WORK
In this paper we have presented a novel RRM algorithm that adjusts the allocation of the spectrum to wireless devices according to the needs of their application QoS requirements. The main novelties introduced by our algorithm include a per-flow power adjustment, which addresses a user's requirements and also optimizes its network-wide impact in terms of interference, and a SDN-based centralized coordination among APs. The per-flow algorithm uses DCA and TPC, defined in IEEE 802.11, to achieve finegrained spectrum management and alleviate spectrum congestion in dense IEEE 802.11 WLANs. The algorithm also exploits the centralised and flexible management features of SDN to establish the feasibility of our algorithm. The performance of the proposed work has been evaluated using simulations to compare our new algorithm against state of the art solutions that also aim to address wireless interference in dense wireless networks. These solutions are based on how to use an AP to react to the cumulative interference measured locally by the AP. Our results have shown that our algorithm achieves significant improvements in terms of reducing the overall interference in the network and increasing achievable capacity, while maintaining the QoS required by each station.
Motivated by the satisfactory results presented in this paper, our future work will consider the implementation and assessment of our RRM algorithm using a testbed that follows the design specification of the Wi-5 project [33]. These tests will allow us to further assess the algorithm in the presence of certain implementation related factors such as the latency incurred when switching channels or adjusting transmit power. We also aim to improve the proposed algorithm by introducing multiobjective optimisation with the objective to produce a more optimal combination of channel assignment and power assignment. Q. Shi received the PhD degree in computing from the Dalian University of Technology, P.R. China. He is a professor of computer security and the director of the PROTECT Research Centre in the Department of Computer Science at Liverpool John Moores University (LJMU) in the UK. He then worked as a research associate at the University of York in the UK. He then joined LJMU, working as a lecturer and then a reader before becoming a professor. He has many years research experience in a number of areas, e.g., computer networks and security, secure service composition, and cloud security. He has published more than 200 papers in international conference proceedings and journals, and served of a number on conference and journal editorial boards.