Traffic-Aware Channel Assignment in Enterprise Wireless LANs Eric Rozner University of Texas at Austin Yogita Mehta University of Texas at Austin Aditya Akella University of Wisconsin-Madison Lili Qiu University of Texas at Austin IEEE ICNP 2007 October 18, 2007 Motivation • Increasing campus & enterprise WLAN popularity – Laptops, smart phones, wireless gaming consoles, etc • Increased density and usage → interference • Limited number of non-overlapping channels – 802.11b and 802.11g only have 3 (1, 6, and 11) – Not always feasible to assign non-overlapping channels 2 Related Work • Previous channel assignment schemes – – – – Manual configuration [Grier] Maximize RSS at expected high-demand points [Lee02] Client-side interference [Mishra06] Commercial products [AutoCell, AirView] • No public information due to proprietary nature Approaches assume network traffic is static or uniform! • Wireline traffic engineering – Benefits of traffic-awareness [Awduche99, Awduche02, Xiao00] Our Contribution: Effective channel assignment schemes that adapt to prevailing WLAN traffic demands 3 Motivating Example Traffic-Agnostic Throughput: 10 Mbps Demand(a) = 5 Mbps Channel 1 a Throughput: 2.5 5 Mbps Mbps Traffic-Aware Throughput: 15 Mbps Demand(b) = 5 Mbps b Channel 6 Throughput: 5 Mbps Traffic-aware channel assignment canc be beneficial! d Demand(c) = 0 Mbps Channel 11 6 Throughput: 0 Mbps Demand(d) = 5 Mbps Channel Channel11 1 Throughput: Throughput:2.5 5 Mbps Mbps 4 Traffic-Aware Framework Measure interference graph Obtain traffic demands from previous interval Predict demands for current interval Compute traffic-aware channel assignment New assignment≠ old assignment Yes Change channel assignment No 5 Key Questions to Achieve TrafficAware Channel Assignments • How to develop traffic-aware channel assignment algorithms? • How to estimate traffic that varies over time? • How to estimate the interference graph? • How to handle non-binary interference? • How to efficiently change channels? • How much does traffic-awareness improve network performance and when is it beneficial? 6 Traffic-Awareness • Weigh interference metric by traffic demands – SA - Node A’s sending demands – RA - Node A’s receiving demands • WA,B = SA×SB + SA×RB + SB×RA – 1st term: sender-side interference • 802.11 MAC is CSMA/CA: One sender at a time – 2nd and 3rd terms: interference at receivers • Collisions increase loss, contention window 7 Channel Separation Metric • SepA,B = min(|chan(A) - chan(B)|, 5) if A, B interfere = 5 otherwise Metric Traffic-agnostic Traffic-aware Clientagnostic Max: ∑i,j ∈AP Sepi,j Max: ∑i,j ∈AP Wij × Sepi,j Max: Max: ∑i,j ∈AP ∪Clients Wij×Sepi,j Clientaware ∑i,j ∈AP∪Clients Sepi,j • Traffic-awareness can be applied to other metrics • Finding optimal solution is NP-Hard [Mishra06] 8 Obtaining Channel Assignments • Initialization algorithm – Inspired by Chaitin’s approach to register allocation problem [Chaitin82] – Basic notion: Wait to assign channels of APs with many conflicts b/c such assignments are more important • Simulated annealing to improve initial assignment – Randomly change channel of one AP and its clients – If metric improves, select current assignment; If not, select it with some non-zero probability P – Probability P decreases as # iterations increases 9 Key Questions to Achieve TrafficAware Channel Assignments • How to develop traffic-aware channel assignment algorithms? • How to estimate traffic that varies over time? • How to estimate the interference graph? • How to handle non-binary interference? • How to efficiently change channels? • How much does traffic-awareness improve network performance and when is it beneficial? 10 Estimating Traffic Demands • Measure past traffic demands – Most commercial APs export SNMP interface – SNMP provides demands in 5 min intervals • Predict current demands based on history – EWMA: Exponentially-weighted moving average – PREV: Use previous interval’s demands – PREV_N: Find channel assignment that’s optimized over past N intervals – PEAK_N: Find channel assignment that’s optimized over the worst case in past N intervals. 11 Key Questions to Achieve TrafficAware Channel Assignments • How to develop traffic-aware channel assignment algorithms? • How to estimate traffic that varies over time? • How to estimate the interference graph? • How to handle non-binary interference? • How to efficiently change channels? • How much does traffic-awareness improve network performance and when is it beneficial? 12 Estimating the Interference Graph • Measure max throughput on any 2 links [Padhye05] – – – – A’s max broadcast rate when it sends alone A’s max broadcast rate when it sends with node B BR = Total throughput together/Total throughput alone BR close to 0.5 → A, B interfere (take turns sending), close to 1.0 → A, B don’t interfere • Estimate max throughput on any 2 links via an interference model [Reis06] • Estimate max throughput on any set of links via a general interference model [Qiu07] • Use coordinated probing [Ahmed06] • Further improvement of interference graph estimation directly benefits our channel assignment 13 Key Questions to Achieve TrafficAware Channel Assignments • How to develop traffic-aware channel assignment algorithms? • How to estimate traffic that varies over time? • How to estimate the interference graph? • How to handle non-binary interference? • How to efficiently change channels? • How much does traffic-awareness improve network performance and when is it beneficial? 14 Non-Binary Interference • Interference can be non-binary in practice – Variations in RSS cause intermittent interference – SNR under one sender ≥ SNR_Threshold – SNR under two (or more) senders ≤ SNR_Threshold • Extend the channel assignment metric to handle non-binary interference – Degree of interference is weighed by the throughput reduction based on BR 15 Key Questions to Achieve TrafficAware Channel Assignments • How to develop traffic-aware channel assignment algorithms? • How to estimate traffic that varies over time? • How to estimate the interference graph? • How to handle non-binary interference? • How to efficiently change channels? • How much does traffic-awareness improve network performance and when is it beneficial? 16 Channel Switching • Switching delay - hardware (AP & client) – 200μs Intel ProWireless – 10-20ms Netgear Atheros, Cisco Aironet, Prism 2.5 • Re-association delay - software (client only) – Default: clients scan all channels to assoc. • Scanning time dominates (100’s of ms [Ramani05]) – Explicit Notification: APs broadcast channel • Can send multiple times to protect against loss17 Key Questions to Achieve TrafficAware Channel Assignments • How to develop traffic-aware channel assignment algorithms? • How to estimate traffic that varies over time? • How to estimate the interference graph? • How to handle non-binary interference? • How to efficiently change channels? • How much does traffic-awareness improve network performance and when is it beneficial? 18 Evaluation Methodology • NS-2 Simulation – Synthetic traces: when traffic-awareness is beneficial – Trace-driven simulations: more realistic settings • SNMP data from Dartmouth 2004 and IBM 2002 traces – 1024 UDP packet + fixed rate • Testbed Experiments – 25 nodes (MadWifi, 802.11g); 2 floors of office building • Run at night to avoid interference from resident WLAN – Empirically measure non-binary interference graph 19 – Study TCP/UDP and fixed rate/auto rate Synthetic Results • Uniform: AP demands uniform over [0:MAX] • Hotspot: Pick 1 AP & all other APs in range as a hotspot, Hotspot APs uniform: [0:MAX]; others: [0:LOW] 20% of runs: At least 8.5% improv 20% of runs: At least 33% improv Higher benefit when traffic-distribution is more uneven20 Trace-Driven Results • Compare against client-agnostic/traffic-agnostic baseline • Average improvements against baseline over 3 buildings: – Traffic-aware, client-agnostic: 5.2-11.5% – Traffic-aware, client-aware: 8.3-12.8% 21 Traffic-awareness provides benefits under real demands Prediction Results M.A.E. EWMA PREV PEAK2 ResBldg 0.48 0.49 0.70 LibBldg 0.43 0.47 0.57 Prediction error can be high due to low aggregation Prediction algorithms still perform well (EWMA usually within 6%) 22 Testbed Results • TCP results shown, error bars denote standard deviation • Zipf-like slope (X-axis) generates demands – Higher slope → more uneven the demands Traffic-awareness beneficial for both fixed-rate and multi-rate 23 Channel Switching Overhead • Measure AP-Client throughput over a 10 minute transfer – Vary frequency of switching AP’s channel – Examine different levels of client activity Overhead is minimal for ≥ 2 min switching interval 24 Conclusion • Main contributions – Traffic-aware channel assignment algorithms in WLANs – Considered several practical issues • • • • Measure wireless interference Cope with realistic wireless interference patterns Measure & predict traffic demands Minimize the overhead of channel switching – Extensive evaluation via simulations and experiments • Traffic-awareness benefits under uneven demand distribution • Traffic-awareness benefits TCP/UDP and Fixed/Multi-Rate • Future work – Develop traffic-aware techniques for other wireless network operations (e.g. power control, routing) 25 Questions? •Thanks! – Eric Rozner – erozner@cs.utexas.edu 26 Non-Binary Interference • BR metric review: – BR = Total throughput together/Total throughput alone – BR close to 0.5 → A, B interfere (take turns sending), close to 1.0 → A, B don’t interfere • Extend the BR metric: – – – – – BR = min(1, max(0.5, BR)); //BR in range 0.5 .. 1 LocInterf = 2 − 2 × BR; //map BR to range 0 .. 1 ChannelDiff = min(|Ci − Cj|, 5); ChannelInterf = 1 − ChannelDiff × 0.2; OverallInterf = ChannelInterf × LocInterf ; • Traffic-aware, client-agnostic metric becomes: – Min: ∑i,j∈AP W × OverallInterf(i, j) //others follow 27