Can Theory Meet Practice: The Case of Multi-Channel Wireless Networks Nitin Vaidya Electrical and Computer Engineering University of Illinois at Urbana-Champaign Sept. 19. 2008
Multi-Channel Wireless Networks Acknowledgements Ph.D Jungmin So (2006) Pradeep Kyasanur (2006) Vartika Bhandari (2008) Post-docs Wonyong Yoon Cheolgi Kim M.S. Priya Ravichandran (2003) Chandrakanth Chereddi (2006) Rishi Bhardwaj (2007) Thomas Shen (2008) Vijay Raman Funded in part by: NSF, ARO, Motorola, Boeing
Preliminaries …
Wireless Networks Wireless paradigms: Multi-hop networks: Single hop versus Multi-hop Multi-hop networks: Mesh networks, ad hoc networks, sensor networks
What Makes Wireless Networks Interesting? Significant path loss - Signal deteriorates over space + Spatial re-use feasible B A distance power S 5 5
What Makes Wireless Networks Interesting? Interference management non-trivial D B C A distance power S I 6 6
What Makes Wireless Networks Interesting? Many forms of diversity Time Route Antenna Path Channel 7
What Makes Wireless Networks Interesting? Time diversity D C gain Time 8
What Makes Wireless Networks Interesting? Route diversity infrastructure AP1 AP2 Access point B C D E A F Z X
What Makes Wireless Networks Interesting? Antenna diversity D C A B Sidelobes not shown
What Makes Wireless Networks Interesting? Path diversity
What Makes Wireless Networks Interesting? Channel diversity A B C D Low interference High interference Low gain B A B A High gain
Wireless Capacity Wireless capacity limited In dense environments, performance suffers How to improve performance ?
Improving Wireless Capacity Exploit physical resources, diversity Exploiting diversity requires appropriate protocols
State of Multi-Hop Wireless Very large volume of activity Beautiful theory Asymptotic Capacity Throughput-optimal scheduling Network utility optimization Network coding Cooperative relaying
State of Multi-Hop Wireless Very large volume of activity Practical protocols & deployments Many wireless standards And many more MAC & routing protocols Many experimental deployments Mesh devices Sensor devices Start-ups
State of Multi-Hop Wireless Despite the volume of activity Theoretical developments haven’t been translated to practice Theory often ignores realities of wireless networks Greater success in cellular environments
Picture from Wikipedia What is Lacking ? Meaningful contact between Practice Networking Theory Comm Picture from Wikipedia
This Talk Utilizing multiple channels in multi-hop wireless
Multi-Channel Environments Available spectrum Spectrum divided into channels 1 2 3 4 … c
Multiple Channels 3 channels 8 channels 4 channels 26 MHz 100 MHz 200 MHz 150 MHz 915 MHz 2.45 GHz 5.25 GHz 5.8 GHz IEEE 802.11 in ISM Band
Outline Theory to Practice Capacity bounds channels capacity A B C D E F Fixed Switchable Insights on protocol design Multi-channel protocol Channel Abstraction Module IP Stack Interface Device Driver User Applications ARP OS improvements Software architecture Net-X testbed CSL Linux box
Interfaces & Channels An interface can only use one channel at a time Channel c W cW Switching between channels may incur delay
Multiple Interfaces Reducing hardware cost allows for multiple interfaces m interfaces per node 1 m
Practical Scenario m < c A host can only be on subset of channels 1 c–m unused channels at each node c
Multi-Channel Mesh How to best utilize multiple channels in a mesh network with limited hardware ? ?
Need for New Protocols m < c c = 4 channels m = 2 interfaces Some channels not used A B C D 1,2 1,2 Network poorly connected A B C D 1,3 2,4 1,2 3,4
Multi-Channel Networks Many Inter-Dependent Issues How to choose a channel for a transmission? How to schedule transmissions? How to measure “channel quality” - gain, load How to select routes ? B A C
Outline Theory to Practice Capacity bounds channels capacity A B C D E F Fixed Switchable Insights on protocol design Multi-channel protocol Channel Abstraction Module IP Stack Interface Device Driver User Applications ARP OS improvements Software architecture Net-X testbed CSL Linux box
Capacity Analysis How does capacity improve with more channels ? How many interfaces necessary to efficiently utilize c channels ?
Network Model
Network Model [Gupta-Kumar] Random source-destination pairs among randomly positioned n node in unit area, with n ∞
Capacity = ? l = minimum flow throughput Capacity = n l
Capacity [Gupta-Kumar] c = m capacity a 1 1 m = c c = m Capacity scales linearly with channels IF # interfaces also scaled
Capacity What if fewer interfaces ? 1 m 1 m m+1 c
Mutlti-Channel Capacity Order O(.) Channels (c/m)
Capacity with n ∞ Are these results relevant ? Yield insights on design of good routing and scheduling protocols
Outline Theory to Practice Capacity bounds channels capacity A B C D E F Fixed Switchable Insights on protocol design Multi-channel protocol Channel Abstraction Module IP Stack Interface Device Driver User Applications ARP OS improvements Software architecture Net-X testbed CSL Linux box
Insights from Analysis (1) Channel Usage Need to balance load on channels Local channel assignment schemes helpful in some large scale scenarios Local mechanisms with some hints from nearby nodes
Insights from Analysis (2) Static channel allocation not optimal performance in general Must dynamically switch channels Channel 1 B A 2 C D
Insights from Analysis (3) Small number of switchable interfaces suffice How to use a larger number of interfaces ?
Channel Management Hybrid channel assignment: Static + Dynamic A B C 2 Fixed (ch 1) Fixed (ch 2) Fixed (ch 3) Switchable 2 1 Switchable 3 2 Switchable
Insights from Analysis (4) Interface bottleneck can constrain performance Interfaces as a resource in addition to spectrum, time and space
Alleviating Interface Bottleneck Routes must be distributed within a neighborhood D D F B F B E A E A C C m = 1 c = 1 , 2
Insights from Analysis (5) Channel switching delay potentially detrimental But may be hidden with careful scheduling – create idle time on interfaces between channel switches additional interfaces
Insights from Analysis (6) Optimal transmission range function of number of channels Intuition: # of interfering nodes ≈ # of channels
Protocol Design: Timescale Separation Routing: Longer timescales (Optional) Multi-channel aware route selection Interface management: Shorter timescales Dynamic channel assignment Interface switching Link Network Transport Physical Layer Upper layers 802.11
CBR – Random topology (50 nodes, 50 flows, 500m x 500m area) (m,c)
Outline Theory to Practice Capacity bounds channels capacity A B C D E F Fixed Switchable Insights on protocol design Multi-channel protocol Channel Abstraction Module IP Stack Interface Device Driver User Applications ARP OS improvements Software architecture Net-X testbed CSL Linux box
Net-X Testbed Linux 2.4 Two 802.11a radios per mesh node (m = 2) Legacy clients with 1 radio c = 5 channels Soekris 4521 Net-X source available
Phy-Aware Support A B C Ch. 1 Ch. 2 Additional mechanisms needed to choose channels based on destination Next hop not equivalent to a wireless interface id Phy-aware forwarding not supported traditionally In general, need a “constraint” specification for desired channel(s), antenna beamform, power/rate, … to be used for the next hop
Phy-Aware Support Multi-channel (phy-aware) broadcast B Ch. 2 D A Channel switching from user space has high latency: frequent switching from user space undesirable
Interface switches to channel 1 New Kernel Support Interface management needs to be hidden from “data path” Buffering packets for different channels Scheduling interface switching Interface switches to channel 1 Ch. 2 Packet to B Ch. 1 buffer packet Packet to C Packet to C arrives
Asymmetry A B C 2 1 3 2 Fixed (ch 1) Fixed (ch 2) Fixed (ch 3) Switchable 2 1 Switchable 3 2 Switchable
Shortcomings
Shortcomings Scheduling using legacy protocol (802.11), ignorant of multi-channel nature of the system Ignores interface heterogeneity All nodes assumed to switch to all available channel 802.11 / abg versus 802.11/bg Does not explicitly handle channel heterogeneity Channel gains and external interference vary
CSL Capacity bounds Insights on protocol design OS improvements channels capacity A B C D E F Fixed Switchable Insights on protocol design Multi-channel protocol Channel Abstraction Module IP Stack Interface Device Driver User Applications ARP OS improvements Software architecture Net-X testbed CSL Linux box
Modeling Interface Heterogeneity Each radio can operate only on a subset of channels
Adjacent (c, f) Assignment Each node assigned a contiguous block of f channels This model also subsumes untuned radios [Petrovic et al] as special cases Example: f=2, c=8
Random (c, f) Assignment Each node is assigned a random f-subset of channels More freedom in choices; no adjacency constraint Example: f=2, c=8
Impact of Constrained Channel Switching Connectivity (4, 5) A node cannot communicate will all “in range” nodes (2, 3) (5, 6) (1, 2) (1, 3) (6, 7) (3, 6) Bottleneck Formation (7, 8) (2, 5) Some channels may be scarce in certain network regions, leading to overload on some channels/nodes
Channel Heterogeneity Not all channels are made equal Distributed scheduling with heterogeneous channels
Status Capacity + Scheduling Protocol stack G Channel-binding Channel Queues Neighbor Queues Interface Queues IF #2 IF #m Channel-binding Interface-binding IF #1 Capacity + Scheduling Protocol stack
Wrap-up CSL Capacity bounds Insights on protocol design channels capacity A B C D E F Fixed Switchable Insights on protocol design Wrap-up Multi-channel protocol Channel Abstraction Module IP Stack Interface Device Driver User Applications ARP OS improvements Software architecture Net-X testbed CSL Linux box
Summary Significant performance benefits using many channels despite limited hardware Insights from analysis useful in protocol design Conversely, implementation experience helps formulate new to theoretical problems Important to complete the loop from theory to practice
Research Opportunities Significant effort in protocol design needed to exploit available physical resources Examples: MIMO (multi-antenna) Cooperative relaying Dense wireless infrastructure
Thanks! www.crhc.uiuc.edu/wireless