Title: A clientdriven management approach for 802.11 and other networks
1A client-driven management approach for 802.11
(and other) networks
- Suman Banerjee
- Email suman_at_cs.wisc.edu
- http//www.cs.wisc.edu/suman
Department of Computer Sciences University of
Wisconsin-Madison
Wisconsin Wireless and NetworkinG Systems
(WiNGS) Laboratory
2Wireless devices
- Experiencing phenomenal growth
- Dell Oro group prediction
- wireless LAN sales will grow 47 annually
through 2008. - Wireless LAN industry annual sales is more than 2
billion dollar industry in the US - Increasing deployment of Access Points (APs) in
offices, homes, neighborhoods, etc.
3Wireless LAN coverage
- A handful of hotspots in 1998
- Today more than 2.5 million hotspots just in
urban areas
Bay area
Source war-driving reports in wigle.net
Chicago area
4Management objectives
- Reduce costs
- Eliminate the human in the loop
- Improve performance
- At the clients
- Problem is inherently hard
5Management in wired networks
- Mostly performed through central entities
- Firewalls
- Nameservers
- DHCP servers
- A logical approach for many basic networking
tasks - But needs some re-thinking in the wireless domain
- Many properties in wireless domain are
location-specific - Can only be observed at the clients and by the
clients
6Impact of location
Recvd 1, 2, 4
AP-1
Client-A
AP-2
Recvd 1, 3, 4, 5
Sent 1, 2, 3, 4, 5
Experience is property of location and cannot be
always replicated
7Talk outline
- Introduction
- Client-driven management example
- Channel assignment and load balancing in wireless
LANs - An architecture for client-driven management
- Virtualized wireless grids
- Other examples within this architectural
framework - Secure localization
- Network management fault monitoring and
diagnosis - Fast handoffs
- Summary of other activities in WiNGS
8Channel assignment in WLANs
- Current best practices
- RF site survey based approaches
- Fairly tedious signal strength maps of the area
under consideration - Least Congested Channel Search (LCCS)
- Each AP examines congestion-level in a channel
- If high congestion (i.e., it hears other APs), it
tries to move to different channel - Repeat the process
- Other proprietary approaches (Airespace)
- None of them are client-centric in nature
9Channel assignment problem
AP-2
AP-3
AP-1
What channels to assign to APs?
10Channel assignment problem
AP-2
AP-3
AP-1
What channels to assign to APs? LCCS may assign
same to all APs
11Channel assignment problem
AP-2
AP-3
AP-1
Correct answer depends on client distribution and
association
12Channel assignment problem
AP-2
AP-3
AP-1
Correct answer should also adapt with client
distributions
13Channel assignment problem
AP-2
AP-3
AP-1
Correct answer should also adapt with client
distributions
14A possible client-driven approach
Vertex coloring MC2R05
- Client provide feedback to about observed
interference - Construct a virtual graph and do weighted graph
coloring - And then minimize graph weight
AP-2
(4)
(2)
AP-1
(0)
AP-3
Edge weight corresponds to number of interfered
clients
Higher edge weight implies greater importance of
assigning APs to different channels
15Graph coloring approach
- Iterative approach
- Start with any initial coloring (even derived
from LCCS) - Each instant
- Pick an edge with maximum contribution to graph
weight - Re-assign channel of one of its APs with a
minimization objective - Leads to reduction to total graph weight
(0)
(6)
(20)
(4)
(0)
(7)
16Graph coloring approach
- Iterative approach
- Start with any initial coloring (even derived
from LCCS) - Each instant
- Pick an edge with maximum contribution to graph
weight - Re-assign channel of one of its APs with a
minimization objective - Leads to reduction to total graph weight
(0)
(6)
(20)
(4)
(0)
(7)
17Graph coloring approach
- Iterative approach
- Start with any initial coloring (even derived
from LCCS) - Each instant
- Pick an edge with maximum contribution to graph
weight - Re-assign channel of one of its APs with a
minimization objective - Leads to reduction to total graph weight
(0)
(6)
(20)
(4)
(0)
(7)
37
(8)
(6)
(0)
(0)
(0)
21
(7)
18Graph coloring approach
- Iterative approach
- Start with any initial coloring (even derived
from LCCS) - Each instant
- Pick an edge with maximum contribution to graph
weight - Re-assign channel of one of its APs with a
minimization objective - Leads to reduction to total graph weight
(0)
(6)
(20)
(4)
(0)
(7)
37
(0)
(0)
(0)
Better
(4)
(9)
(0)
13
19Graph coloring approach
- Iterative approach
- Start with any initial coloring (even derived
from LCCS) - Each instant
- Pick an edge with maximum contribution to graph
weight - Re-assign channel of one of its APs with a
minimization objective - Leads to reduction to total graph weight
- Algorithm converges
- Every step we are reducing the graph weight
- Stops when cannot reduce further
(0)
(6)
(20)
(4)
(0)
(7)
20Vertex coloring approach
- Client provide feedback to about observed
interference - Construct a virtual graph and do weighted graph
coloring - Minimize Wt of graph
- Evaluation in simulations and on deployed testbed
- of 70 APs
LCCS
Degree of interference at clients
Vertex coloring
Number of channels
21Limitations of vertex coloring
- Overly conservative
- Does not examine how client-AP associations
should be made
?
?
?
For conflict freedom, how many channels do we
need?
22Limitations of vertex coloring
- Overly conservative
- Does not examine how client-AP associations
should be made
(3)
(2)
(0)
(0)
(2)
(0)
(2)
(0)
(0)
For conflict freedom, need 3 channels? It
depends on client association
23Limitations of vertex coloring
- Overly conservative
- Does not examine how client-AP associations
should be made
(3)
(2)
(0)
(0)
(2)
(0)
(2)
(0)
(0)
We should look at load-balancing (AP-client
association) too! In this paper we define channel
management to be Channel assignment load
balancing through client-AP associations
24Conflict set coloring approach
- CFAssign algorithms
- Jointly solve channel assignment and load
balancing through client association - Problem formulated as a set coloring problem,
where each client is a set, and each AP is an
element in one or more sets
25Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
A1
C3
C1
C2
A3
A2
C4
26Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
A1
A1
C3
C1
C1
C2
A3
A2
A3
A2
C4
27Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
A1
A1
C3
C1
C2
C2
A3
A2
A3
A2
C4
28Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
A1
C3
C1
C2
A3
A2
C4
29Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
- Color all elements s.t. each set has an element
with a unique color
A1
C3
C1
C2
A3
A2
C4
30Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
A1
A1
C3
C1
C2
C2
A3
A2
A3
A2
C4
31Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
A1
A1
C3
C1
C1
C2
A3
A2
A3
A2
C4
32Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
- Color all elements s.t. each set has an element
with a unique color - Associate each client to the unique colored AP in
its set
A1
C3
C1
C2
A3
A2
C4
33Conflict set coloring approach
- Conflict-free set coloring formulation (a
simplified view) - Each client is a set of one or more APs
- Color all elements s.t. each set has an element
with a unique color - Associate each client to the unique colored AP in
its set
A1
C3
C1
C2
A3
A2
C4
This is a conflict-free assignment of clients to
APs (Prior vertex coloring approach will have
used 3 colors)
34Details
- What if conflict-freedom cannot be guaranteed?
- Minimize the amount of conflict
- Load balancing fits into this objective function
- It increases with number of clients added to the
same AP - Handle client-client interference
- Sets consist of APs both in direct and indirect
interference - Range and Interference sets
35A centralized algo (CFAssign-RaC)
- Pick an AP ordered by a random permutation
- Perform compaction step
- For that AP, pick the best color assignment that
maximizes the number of conflict-free clients
based on the set formulation - Repeat with another AP
- Can be repeated multiple times to obtain best
solution - Also have two distributed algorithms
- See our upcoming Mobicom 2006 paper
36Implementation details
- Feedback from clients to APs (infrastructure)
uses mechanisms available in IEEE 802.11k
standards - Site report
- Process is periodic in general, but triggered by
client mobility - Implementation is easy (100 lines of code)
- Channel switching can be made quite fast
- New Intel cards promising very fast switching (
100 us)
37CFAssign (Set approach)
Throughput
CFAssign
Vertex coloring
factor of 2
CFAssign
Vertex coloring
Std-dev of throughput even indicates greater
fairness
38CFAssign (Set approach)
MAC level collisions
CFAssign
LCCS
CFAssign
LCCS
39CFAssign (Set approach)
Adaptation to node mobility (3 channels)
40We can do EVEN better!
- Should we restrict to non-overlapped channels?
- In 802.11b 1, 6, and 11
- By using partially-overlapped channels
41We can do EVEN better!
- Should we restrict to non-overlapped channels?
- In 802.11b 1, 6, and 11
- How about 1, 4, 7, 11?
- These are partially-overlapped channels
- Tradeoff between increased interference due to
partially overlapped channels and more efficient
utilization of spectrum - Questions
- Can we define a mechanism to systematically model
interference of partially-overlapped channels and
extend existing channel assignment algorithms? - What performance improvement can we expect?
42Talk outline
- Introduction
- Client-driven management example
- Channel assignment and load balancing in wireless
LANs - Partially overlapped channels and how to use them
- An architecture for client-driven management
- Virtualized wireless grids
- Other examples within this architectural
framework - Secure localization
- Network management fault monitoring and
diagnosis - Fast handoffs
- Summary of other activities in WiNGS
43Wireless channels
- Wireless communication happens over a restricted
set of frequencies - Collectively they constitute a channel
44Wireless channels
- Available spectrum is typically divided into
disjoint channels
45Partially Overlapped Channels
- IEEE 802.11 defines 11 partially overlapped
channels in 2.4 GHz band - Only channels 1, 6 and 11 are non-overlapping
- 54 / 12 partially overlapped / non-overlapping
channels in 5 GHz ISM band
46Partially Overlapped Channels
Ch 1
Ch 6
Ch 3
- Partially overlapped channels are avoided
- In order to avoid such interference
47Simple Experiment
48I-Factor Model for Partial Overlap
- Define Interference Factor or I-factor
- Transmitter is on channel j
- Pj denotes power received on channel j
- Pi denotes power received on channel I
- Captures amount of overlap between channels
49How do we use I-Factor ?
A1
A2
PX I-Factor(1,X) P1
B1
B2
- Given I-Factor Node B1 can estimate
interference on all partially overlapped channels - And choose the best one!
50Can we estimate I-factor?
- Measurement is an active process
- Best if avoided
- We have designed a simple model of I-factor that
is based on the transmit spectrum mask (IEEE
standards specified) and the receivers band-pass
filter profile
51Estimating I-Factor
- Actual frequency response is hard to compute
- Transmit Spectrum Mask specified by IEEE 802.11
52Estimating I-Factor
- Empirical Estimation
- Measure Pi and Pj
- Take multiple samples
- Calculate I-Factor Pi / Pj
53Overall methodology
Wireless communication technology Such as 802.11,
802.16
Estimate I-factor Theory/empirical
Algorithm for channel assignment
I-Factor Model
Estimated once per wireless technology
Channel assignment with overlapped channels
54How much Improvement to Expect ?
- Randomly distributed nodes
- Ad-hoc single hop network
- M channels in all, N non-overlapping
- M 5N - 4 for 802.11 (2.4 and 5 GHz)
5 N 4 1.2 N
Throughput Improvement
a factor of 3.05 for 802.11 channels !
55Can we use POV to pack more APs?
- Square grid, clients distributed uniformly at
random - Compare between
- 3 non-overlapping channels 1, 6, 11
- 4 partially-overlapping channels 1, 4, 7, 11
- Same amount of wireless spectrum being used
56Systematic scenario
11
1
11
6
1
- Three channels, the best case - three clique
(three colorable)
57Systematic scenario
1
7
5
11
5
1
1000
- Four partially overlapped channels 1, 4,7, 11
- Use four clique, to cover the same region
- More APs can be placed closer
- Use I-factor to compute optimal placement
58Arbitrary Wireless LAN
2.6 x
High density random topologies
- Modifications to existing CFAssign algorithm
59Arbitrary Wireless LAN
1.7 x
Low density random topologies
- Modifications to CFAssign algorithm
60Summary of channel assignment
- Adaptation
- Better spectrum re-use
- Solution implicitly solves
- Client-AP association
- Extensions also provide load balancing
- Interoperates with legacy systems
- Even systems that do not implement CFAssign
benefit - See papers Infocom 2006, MC2R 2005, IMC
2005, Mobicom 2006