MulWiFi : Flexible Policy Enforcement in Multi-Radio High-Speed WiFi Networks

As data rates in 802.11 Wireless LANs (WLANs) scale to Gbps, it becomes increasingly challenging for a single radio resource to meet the goals of high MAC efficiency, service differentiation, and adaptability to diverse network scenarios. We present MulWiFi, a system that uses a centralized controller to manage multiple off-the-shelf radios in a single device for addressing challenges in high-speed WLANs. MulWiFi allows flexible policy enforcement based on application requirements and channel state information at each radio. MulWiFi offers the ability to 1) customize the MAC based on application requirements and network scenarios; 2) assign different roles to radios; 3) improve MAC throughput efficiency at high data rates; and 4) combine fragmented channels. We demonstrate the early promise of MulWiFi through three case studies and discuss future opportunities and challenges. Keywords—WLAN; IEEE 802.11; QoS; multi-radio; experimental analysis; testbed


I. INTRODUCTION
WiFi networks have become extremely pervasive as an access technology and are often expected to satisfy several potentially conflicting goals -achieve high MAC efficiency with increasing data rates [1], [2], [3], provide service differentiation to heterogeneous applications [4], [5], and adapt to diverse network scenarios [6], [7].As physical layer (PHY) data rates scale to Gbps with 802.11ac, these goals become increasingly hard to achieve using a single radio.In the near future we are moving towards more dense deployments of WLANs specially with the advent of Internet of Things (IoT).New standards like IEEE 802.11ax are in design to address challenges in these WLANS [8].
First, it is well-known that due to MAC overheads such as backoff and ACK transmission, the increase in PHY data rates does not translate into commensurate gains in user level throughput [1], [2].To address this inefficiency, the 802.11n standard allows frame aggregation whereby multiple frames are transmitted on every channel access.While frame aggregation works well for bulk transfers (e.g., software downloads), it can adversely impact other traffic such as short HTTP flows and TCP ACKs as the senders must wait longer to collect enough frames before starting transmission.
Second, with the increase in real-time traffic, such as VoIP and video conferencing, it has become increasingly important for WiFi networks to meet the quality of service requirements of such applications while ensuring high network throughput.To address this challenge, the 802.11e standard proposes the use of separate queues for traffic with different requirements (e.g., VoIP traffic can be mapped to one queue and best effort traffic on a different queue) and prioritized access for delay sensitive traffic.While using 802.11eimproves performance of real-time applications, we show that it degrades network throughput compared to when a single queue is used at the MAC layer ( §V-A).
Third, a single radio resource makes it challenging to use fragmented spectrum.For example, 802.11n can operate in the 2.4 GHz and 5 GHz bands but not at the same time, which limits its ability to efficiently use free parts of the spectrum.Similarly, a single radio makes it difficult to leverage the diversity of protocols based on the 802.11 standard (e.g., 802.11ad1 and 802.11af 2 ), thereby making it hard to optimize performance based on network scenarios and application requirements.
In this paper, we present MulWiFi, a system that addresses these challenges by using a centralized controller for managing multiple off-the-shelf WiFi radios on a single device. 3MulWiFi allows flexible policy enforcement based on application requirements, channel state information at each radio, and a user-defined policy.MulWiFi offers the ability to: 1) customize the WiFi MAC based on application requirements and network scenarios; 2) dynamically assign different roles to different radios; 3) improve MAC layer efficiency at high data rates; and 4) combine fragmented channels.
With MulWiFi, devices can use multiple narrow channels in parallel, which is known to improve MAC layer efficiency [1].Service differentiation can be achieved by mapping applications with different requirements to separate radios and customizing the PHY/MAC parameters of each radio based on application requirements.Radios can be assigned different roles to cooperatively detect collisions.As a proof-of-concept, we present three case studies to demonstrate the opportunities provided by MulWiFi.The first case study deals with the problem of service differentiation where real-time applications and bulk transfers share a network.The second case study addresses the problem Using fragmented spectrum (e.g., one radio uses a channel from the 2.4 GHz band and the other from the 5 GHz band) of collision detection.The third case study shows how performance anomaly [6], where low data rate users degrade the performance of high data rate users, can be mitigated using MulWiFi.Nowadays, many APs have dual-radios, one interface operates on 2.4 GHz band, while the other operates on 5 GHz band.We used these radios to show the feasibility and effectiveness of our MulWiFi framework for service differentiation [9].Prior works [1], [2], [3] achieve high MAC efficiency by employing multiple channels/radios but require new physical hardware and thus cannot work with off-theshelf devices.Researchers have considered application-aware wireless MAC designs in the past [10], [11] but they have focused on single radio designs.Several earlier systems use multiple radios for energy management [12], [13], improving hand-offs in mobile [14] and vehicular networks [15], [16], monitoring purposes [17], and in multi-hop wireless mesh networks [18].These designs focus on specific scenarios and do not offer the flexibility to enforce different user-defined policies.MulWiFi provides the benefit of achieving high MAC efficiency and combining of fragmented channels as well as the flexibility for MAC customization and role diversity in a single device using off-the-shelf radios 4 .The use of off-theshelf radios is an important advantage in terms of deployment, backward compatibility, and time to availability.
Altogether, this paper makes the following contributions: • We present MulWiFi; a system that allows flexible policy enforcement on an array of WiFi radios based on application demands, radio channel conditions, and a user-defined policy.
• We distil the key benefits of MulWiFi and the opportunities it offers in high data rate WLANs.
• We present three case studies and using real testbed experiments, we show how MulWiFi helps in addressing different performance challenges in WiFi networks.

II. RELATED WORK
We now briefly describe and contrast our work with the most relevant research works.We categorize prior works in terms of MAC efficiency, MAC customization, role diversity, and combining of fragmented channels.

A. MAC Efficiency
FICA [1] and WiFi-NC [3] advocate the use of narrow channels for improving MAC efficiency.WiFi-Nano aims to reduce channel access overhead by reducing the slot duration.However, all these schemes require new physical hardware and cannot work with off-the-shelf radios.Glia [19] aims to maximize aggregate throughput between a single sender/receiver pair using an array of WiFi radios while focussing on overcoming the power leakage from orthogonal channels.However, they do not deal with MAC customization or role diversity.
As the next generation WLAN standard, the 802.11ax [8] is introducing OFDMA to address the efficiency based issues of the current standards.This will give independence to a WiFi node to use smaller channels at the OFDM subcarrier level.

B. MAC Customization
In TAR [11], a time-based retry mechanism was proposed for video streaming applications.In [10], authors propose a video-aware rate adaptation protocol (see references therein).These works customize the MAC functionality based on application requirements but focus on a single WiFi radio.In NLB [21], multiple radios are combined and used as a single interface at the MAC level.It uses Linux bonding driver called the new load balancing (NLB) mode to aggregate bandwidth.

C. Role Diversity
CoolSpots reduces the power consumption of mobile devices using multiple interfaces such as WiFi and Bluetooth [22].In [12], authors propose the use of a lower power radio to wake up a high power radio for energy efficiency purposes.Multiple interfaces have also been used in the context of 802.11 based mesh networks.Researchers have proposed the use of one interface for control messages and the other for data messages whereas others propose to increase capacity with two cards [12], [18].

D. Combining Fragmented Channels
SWIFT [23] is a wideband solution (in the 5.2GHz spectrum) that can co-exist with other narrow band devices by combining non-contiguous frequency bands.However, such wideband solutions typically require new physical hardware.Jello [24], a per-session FDMA system for latency sensitive applications, focuses on utilizing non-contiguous white space spectrum over session durations.Other works Ez-Channel [25], adapts channel assignments to the network topology.It uses OFDM level information exchange to make channel assignment decisions locally and try to circumvents both hidden and exposed terminal problems.The 802.11ac standard in wave-2 [26] also supports a non-contiguous 160 MHz (80 + 80 MHz) channels are comprised of any two valid, non-adjacent 80 MHz channels.
Other works have considered using heterogenous interfaces (e.g., WiFi, 3G, Bluetooth) simultaneously.Aruna et al. proposed to augmented WiFi with 3G for improving availability and performance in mobile environments [27].In [15] and [16], authors study the use of multi-radios in vehicular networks to intelligently associate and act as relay while masking handoff delays.[14] and [28] use multiple radios in mobile scenarios for hiding handoff latency for real-time applications.Earlier works have also used multiple software-defined radios for collision detection [29], [30] and full duplex connectivity [31], [32].However, the focus of this work is the use of off-the-shelf radios and the design of a software architecture for managing these devices to achieve different user-defined policies.

III. MOTIVATION
We now motivate the design of MulWiFi by distilling the key benefits it provides i.e., MAC efficiency, MAC customization, role diversity, and combining of fragmented channels.In addition, we provide examples to illustrate their usefulness.

A. MAC Efficiency
A key benefit offered by MulWiFi is the ability to improve MAC efficiency at high PHY data rates 5 by using narrow channels in parallel, which in turn leads to throughput improvements.
The MAC efficiency is defined as the ratio of the data transmission time to the overall time (including channel access overheads) and is given by the following expression [6]: where t data is the data transmission time, t slot is the slot duration, W is the contention window size in terms of number of slots, t dif s and t sif s is the time for the DIFS and SIFS intervals, and t ack is the ACK transmission time.
Fig. 1 compares the the aggregate throughput achieved by a saturated sender on a 40 MHz channel using a PHY bitrate of 300 Mbps, two 20 MHz channels (with a PHY bitrate of 150 Mbps on each channel), and four 10 MHz channels as a function of the level of frame aggregation.Observe that using four 10 MHz channels results in the highest throughput.This happens because the use of narrow channels effectively elongates the packet transmission times relative to the MAC overhead, thereby improving MAC efficiency.Another advantage of using smaller channels is that it increases the power/Hz, which increases the range and leads to more robust links compared to wider channels.

B. MAC Customization
MulWiFi offers the flexibility to fully customize the MAC of each WiFi radio based on applications requirements and network scenarios.Example: Service Differentiation.When delay sensitive real-time applications (e.g., VoIP) compete with bulk-transfers (e.g., software downloads) on the same wireless interface or in the network (i.e., via some other node), the performance of real-time applications as well as the aggregate system throughput can degrade [4].MulWiFi can be used to decouple the performance of heterogeneous applications by mapping them to different radios.For example, real-time applications can be mapped to one WiFi card and non-real time traffic on the other.Each card in turn can be customized based on the requirements of each e.g., real-time applications often tradeoff frame loss for packet delay and to achieve this the MAC retry limit could be decreased.To maximize system throughput, the channel width of the two cards can be adapted based on the demand of flows6 [33].
Example: Network Scenario based Optimizations.The ability to use a custom MAC allows several optimizations based on scenarios.For instance, a high data rate connection is often desirable when copying files to a wireless hard drive for a backup.At the same time, it would be useful if the wireless Internet connection does not experience any performance degradation.To achieve this, one could use a 802.11ad radio (which operates in the 60 GHz band and can achieve several Gbps of data rates over short distances) for copying files to the wireless hard drive and a 802.11n radio (which operates in the 2.4 GHz/5 GHz spectrum and can achieve several hundreds of Mbps at relatively longer distances) for connecting to the AP 7 .

C. Role Diversity
Another benefit of MulWiFi is its ability to assign different roles to WiFi cards based on network scenario.
Example: Collision Detection.A key challenge in highspeed WiFi networks is to reliably detect collisions without introducing excessive overhead or requiring new physical hardware [7], [34].With MulWiFi, one radio can be assigned the role of a passive listener for detecting collisions.For example, suppose two clients are sending traffic to an AP.When a collision occurs, two events can take place: either both packets get lost (when their signal strength is similar) or one signal is received due to PHY capture while the other is dropped.Prior works report that even small variations in signal strength can lead to PHY capture.In this case, the winning signal will result in the generation of an ACK.This ACK will be received by the second radio of the client that lost in capture within the ACK timeout interval and can be used to detect collisions.
Example: Separating Upload/Download Traffic.The ability of MulWiFi to assign different roles implies that it can act as a virtual full duplex radio by enabling simultaneous transmission and reception of data (on different channels).Thus, one card can be made responsible for only upload traffic and the other for download traffic by choosing channel width of each radio that is commensurate with the traffic demands in both directions.
Example: Addressing Performance Anomaly.When slow and fast bitrate users share the same channel, the slow users can degrade the throughput of fast users due to 802.11 performance anomaly [6].By using MulWiFi, users can be mapped to different WiFi cards (each operating on a different channel) based on their bitrates.This mitigates the impact of rate anomaly and can improve system throughput.A similar problem arises when clients with 802.11n (using 40 MHz channels) and 802.11g radios (using 20 MHz channels) coexist.In such a setting, all users are forced to use 20 MHz of channel width, which can result in using lower bitrates.With MulWiFi, 802.11n users can be mapped to one card and 802.11g to the other.

D. Non-Contiguous Channel Bonding
To achieve high throughput, recent and upcoming WLAN standards such as 802.11n and 802.11ac allow combining of channels called channel bonding.While 802.11n allows 40 MHz channels, with 802.11ac 160 MHz channels can be setup using channel bonding.A limitation of existing channel bonding is that it only allows combining of adjacent channels which is often limiting e.g., one free channel in the 2.4GHz band and the other in the 5GHz band cannot be combined.With MulWiFi, non-contiguous channels could be used for transmission at the same time.This can also be helpful for 802.11afwhere fragmented spectrum is abundant and existing solutions like WhiteFi fall short [3].

IV. MULWIFI DESIGN
As shown in Fig. 2, MulWiFi is a software module that sits at layer 2.5 and manages multiple WiFi radios.The goal of MulWiFi is to allow flexible policy enforcement based on application requirements, channel conditions on each WiFi radio, and a user-defined policy.Thus, MulWiFi has four key components: 1) application module maintains information about application streams; 2) channel estimator module keeps track of channel conditions associated with each radio; 3) controller module uses information from the application and the channel estimator to come with a radio configuration and assignment of roles to radios; and 4) radio configuration module configures the parameters of each radio and communicates with any other radio as needed.• Controller Module: The goal of the centralized controller module is to assign roles to different WiFi radios based on applications' requirements (e.g., low delay, high throughput), channel information on each radio, and a user-defined policy (e.g., minimize delay for VoIP traffic while maximizing throughput across radios).A role of a radio can be to serve as a passive listener for detecting collisions, to carry only VoIP traffic, etc.The controller module centralizes the control plane of each radio and thus has a global view of the array of WiFi radios at a device, which enables optimizations for achieving different network-wide goals.Moreover, users can write custom controller modules to achieve different policy objectives (e.g., balance load across radios).
• Application Module: The role of this module is to maintain state information about ongoing application flows (e.g., traffic type) and keep track of their statistics (e.g, bytes sent, offered load).The controller module can obtain a list of flows and their state information from this module.
• Channel Estimator Module: The channel estimator module estimates the channel conditions of each WiFi radio (e.g., by maintaining packet error rate (PER) estimates, RSSI information, free air time).The estimator module can track channel conditions at different timescales (e.g., at per-packet timescales as well as periodically over a user-defined interval).It can use active or passive probing techniques to obtain channel information.
• Radio Configuration Module: This module is responsible for the configuration of parameters of each radio (e.g., channel, channel width, retry limit) based on commands from the controller module and also defines the communication structure between different radios (e.g., sending a notification to radio-X after a successful packet transmission or on detecting a collision).

V. CASE STUDIES
We now demonstrate the potential benefits of MulWiFi with the help of three case studies.

A. Service Differentiation
Wireless networks are expected to provide services to a wide range of applications, ranging from video streaming to web clients to data backups and file transfers.Unfortunately, achieving high MAC efficiency and service/traffic differentiation through a single WiFi interface presents a tradeoff -one can either achieve high MAC efficiency or service differentiation but not both [4].
To improve MAC efficiency at high data rates, the 802.11n standard provides frame aggregation and block acknowledgments.With frame aggregation, multiple frames are transmitted on every channel access which amortizes the overhead over multiple transmissions.As a result, large data transfer applications that constantly contend for the channel can considerably improve MAC efficiency through frame aggregation.However, this adversely affects delay-sensitive applications that may have to wait for a large number of frames before being transmitted [1].On the other hand, delay-sensitive applications like video streaming are known to make inefficient use of the channel [4].Prioritization based previous solutions like 802.11e are not able to fully ameliorate this problem as we show below whereas TDMA based schemes are complex to implement [4].
To provide service differentiation, MulWiFi can segregate different types of traffic in non-overlapping parts of the available spectrum by mapping them to different WiFi interfaces.This also decouples the contention and backoff overheads of different types of applications, thus potentially improving MAC efficiency.In our system, the AP dynamically divides or merges available bandwidth according to the traffic demands.This scheme provides a simple and an efficient way to meet QoS requirements of applications using commodity hardware and without changing the underlying MAC protocol.Algorithm 1 shows a sample configuration for service differentiation.
We evaluate MulWiFi on a real 802.11ntestbed where each device is equipped with two off-the-shelf cards.Our evaluation aims to improve the performance of real-time applications with ensuring high throughput for bulk transfer applications.Fig. 3(a) shows the experimental setup where four clients are streaming a video and one client streams a video as well as initiates a bulk download.Fig. 3 shows the PSNR (peak signal-to-noise ratio) for the video traffic and the aggregate system throughput as a function of the sending rate of the bulk transfer flow in three cases: 1) AP using a single WiFi card; 2) AP with 802.11e enabled; and 3) AP with two WiFi cards (i.e., MulWiFi).Observe that MulWiFi and 802.11e achieve roughly similar PSNR and throughput when the bulk transfer rate is 25 Mbps.However, when the bulk transfer rate increases, PSNR as well as the aggregate throughput falls significantly.PSNR falls because increasing the bulk transfer rate increases contention and delay and causes losses for the video traffic.Aggregate throughput falls due to the inefficient use of the channel.While packets of the bulk transfer flow can be aggregated, video frames are not aggregated due to delay considerations.As a result, usually a single frame of video is transmitted on every transmission opportunity, which lowers MAC efficiency.We have recently presented a detailed work related to this case study as SlickFi in [9].
Further optimizing the MAC (by reducing the retry limit to one and thus trading of frame loss for low delay) further improves the PSNR.In particular, it provides at least 7dB and up to 9dB improvement in PSNR with this simple customization.

B. Collision Detection
Reliable detection of collisions in a 802.11 network is a challenging problem.With MulWiFi, one interface card can be assigned the role of a passive listener, which overhears all transmissions and detects collisions as follows: when node overhears a data packet, it monitors the receipt of ACK within the ACK timeout period.If an ACK arrives, whose destination MAC address is different from the source MAC address of the most recently received data packet, we conclude a collision

Algorithm 2 Sample Setup for Collision Detection
Input (User Policy): Enable collision detection Output (Radio Configuration): (a) Set radio-2 in listening mode (b) On receipt of an ACK (with destination address other than radio-1) within the timeout interval of the data packet transmission from radio-1, notify radio-1 has occurred.Note that this happens in case of PHY capture.Algorithm 2 shows the sample configurations for collision detection.
To show this, we consider two clients that send traffic to a common AP.The clients are placed at different distances from the AP.First, we record the percentage of frames retried in the channel from one client to the AP.We then activate the other client to introduce collisions.The second WiFi radio on the client detects collisions and removes the frames retried in the latter scenario.Table II shows the fraction of frames retried with and without collision detection.Observe that frame retries without the second client were 3.995%.When the second client is switched on, the percentage of frames retried increases to 5.44%.When the passive radio of the first client starts detecting collisions, it provides (an interference-free) estimate of frames retried (=3.82%) to the other card.

C. Mitigating Rate Anomaly
The rate anomaly problem occurs in WiFi networks when stations transmit at different data rates.A station with a low data rate consume a significant fraction of the channel airtime thereby lowering the throughput of high data rate users.This happens because the WiFi MAC arbitrates channel access on a per-packet basis assuming that all stations will transmit frames of equal size.
With MulWiFi, stations with low data rates can be moved to one interface and fast users to the other interface.This helps in decoupling the impact of slow stations on the fast stations.
Algorithm 3 shows the sample setup for the rate anomaly problem in MulWiFi.Fig. 4(a) shows the experimental setup where nodes 1, 2, and 3 are close to the AP (and can thus achieve high data rates) and Node 4 is placed far from the AP (so that it achieves a lower data rate).Fig. 4(b) shows the throughput of nodes with one AP and MulWiFi.Observe that with MulWiFi, the throughput of the fast sender increases substantially (≈10×).Observe that this also improves the overall system throughput.
Note that a variety of solutions have been proposed to address the rate anomaly problem.These solutions have their strengths and limitations e.g., some require dedicated hardware resources.making changes to the MAC, constructing multi-hop networks from existing stations, or requiring other nodes to act as repeaters.In MulWiFi, a centralized controller manages multiple WiFi radios based on a user-defined policy, application requirements, and given channel conditions.It would be interesting to explore how controllers on multiple devices can share information to achieve network-wide performance objectives.

B. Power Consumption
One potential concern with using multiple WiFi radios in power-constrained devices like cell phones is battery lifetime.This can be addressed by making only opportunistic use of a second radio.

C. Conflicting User Policies
Multiple user-defined policies can be executed with MulWiFi; however, these policies may conflict with each other.In the future, we plan to explore how multiple policies can realized in a conflict manner.

D. Spectral Efficiency
One challenge with using off-the-shelf WiFi radios is that use a guard band of 3 MHz between two adjacent channels for interference-free operation.This implies that in order to have three 20 MHz radios, one would require guardbands worth 10 MHZ, which reduces spectral efficiency to 83.3%.

VII. CONCLUSION
We presented MulWiFi, a system that allows users to write custom policies for managing multiple off-the-shelf WiFi radios.Doing so provides the opportunity for achieving high MAC efficiency, MAC customization, role diversity, and combining of fragmented channels.This is achieved through the use of a centralized controller that uses information about applications and radio channel conditions to determine the configuration of each radio (i.e., its PHY/MAC parameters, role, and communication structure).

Fig. 1 .
Fig. 1.Comparison of throughput of a saturated sender under one 40 MHz channel, two 20 MHz channels, and four 10 MHz channels as a function of the length of the aggregated frame.

Fig. 3 .
Fig. 3. PSNR and aggregate throughput with 1 AP (802.11eenabled) and MulWiFi as a function of the bulk transfer flow rate.

Algorithm 1
Setup for Service Differentiation Input (a) Application Module: One delay-sensitive flow (D-flow) with rate D R and one throughput-sensitive flow (T-flow) with rate D T (b) Channel State Module: Same conditions on all radios (c) User Policy: Minimize(delay D−f low ) while maximizing aggregate throughput Output (Radio Configuration): (a) Map D-flow to radio-1 and customize MAC for low delay (e.g., small retry limit) and set channel width to achieve rate D R (b) Map T-flow to radio-2 and set channel width commensurate with rate D T Input (from Channel State Module): radio-1 is being used by fast and slow users (b) User Policy: Mitigate rate anomaly Output (Radio Configuration): (a) Map fast users to radio-1 (b) Map slow users to radio-2 VI.DISCUSSION AND FUTURE WORK A. Benefit of Centralized Network Control
Table I enlists several use cases where WiFi performance challenges can be addressed with MulWiFi.

TABLE I .
KEY BENEFITS OFFERED BY MU LWIFI AND EXAMPLE USE CASES