Download TCP for Mobile and Wireless Hosts

Document related concepts

Policies promoting wireless broadband in the United States wikipedia , lookup

CAN bus wikipedia , lookup

Backpressure routing wikipedia , lookup

Network tap wikipedia , lookup

Distributed firewall wikipedia , lookup

Wireless security wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Airborne Networking wikipedia , lookup

IEEE 1355 wikipedia , lookup

Distributed operating system wikipedia , lookup

List of wireless community networks by region wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

Transcript
Network-Aware Distributed Algorithms
for Wireless Networks
Nitin Vaidya
Electrical and Computer Engineering
University of Illinois at Urbana-Champaign
1
2
Multi-Channel Wireless Networks:
Theory to Practice
Nitin Vaidya
Electrical and Computer Engineering
University of Illinois at Urbana-Champaign
3
Wireless Networks

Infrastructure-Based Networks

Infrastructure-Less (and Hybrid) Networks:
– Mesh networks, ad hoc networks, sensor networks
4
What Makes Wireless Networks
Interesting?


Broadcast channel
Interference management non-trivial
Signal-interference are relative notions
B
A
power

Signal
C
Interference
D
What Makes Wireless Networks
Interesting?
Many forms of diversity
• Time
• Route
• Antenna
• Path
• Channel
6
What Makes Wireless Networks
Interesting?
Antenna diversity
D
C
A
B
7
Sidelobes not shown
What Makes Wireless Networks
Interesting?
Path diversity
x1 x2
y1 y2
8
What Makes Wireless Networks
Interesting?
Channel diversity
High interference
Low gain
B
A
B
A
High gain
B
A
B
A
D
C
D
C
Low interference
9
Research Challenge
Dynamic adaptation
to exploit available
diversity
10
Net-X
Theory
to
Practice
capacity
MultiChannel
Wireless
Mesh
D
E
Fixed
F
B
A
Switchable
C
Capacity &
Scheduling
Net-X
testbed
channels
Insights on
protocol design
OS improvements
Software architecture
User
Applications
Multi-channel
protocol
IP Stack
ARP
Channel Abstraction Module
Interface
Interface
Device Driver
Device Driver
11
12
Secret to happiness is to lower your
expectations to the point where they're
already met
with apologies to
Bill Watterson
(Calvin & Hobbes)
13
Network-Aware Distributed Algorithms
for Wireless Networks
Nitin Vaidya
Electrical and Computer Engineering
University of Illinois at Urbana-Champaign
14
Distributed Algorithms & Communications
Communications /
Networking
Distributed
Algorithms
15
Distributed Algorithms & Communications

Problems with overlapping scope

But cultures differ
Communications /
Networking
Distributed
Algorithms
16
Communications /
Networking
Emphasis on “exact”
performance metrics
Constants matter
Distributed
Algorithms
Black box networks
Emphasis on
order complexity
17
Communications /
Networking
Emphasis on “exact”
performance metrics
Constants matter
Distributed
Algorithms
Black box networks
Emphasis on
order complexity
Information transfer
(typically “raw” info)
18
Communications /
Networking
Emphasis on “exact”
performance metrics
Constants matter
Information transfer
(typically “raw” info)
Distributed
Algorithms
Black box networks
Emphasis on
order complexity
Computation
affects communication
19
Distributed Algorithms & Communications
Communications /
Networking
Distributed
Algorithms
20
Outline
Two distributed algorithms

Byzantine agreement

Scheduling (CSMA)
Communications /
Networking
Rate Region
Distributed
Algorithms
21
Rate Region

Defines the way links may share channel

Interference posed to each other
determines whether a set of links
should be active together
22
“Ethernet” Rate Region
S
1
sum-rate
constraint
Rate S2
2
Rate S1
Private channels
S1 and S2
Rate S1 + Rate S2 ≤ C
R1 + R2 ≤ C
23
Point-to-Point Network
Rate Region
S
1
Rij
≤
Each directed link
independent of other links
2
Capacity ij
24
Wireless Network: Rate Region

Some links share channel with each other
while others don’t
1
R1
2
R2
3
R3
max(R1/C1 , R3/C3) + (R2/C2)
4
≤
1
Broadcast Channel:
Rate Region
1
R ≤ C1
2
S
3
Broadcast Channel:
Rate Region
1
R ≤ C2 > C1
2
S
3
“Range” varies inversely
with rate
Broadcast Channel
1
1
S
2
R1
3
2
S
R2
3
R1/C1 + R2/C2 + R12/C12 ≤ 1
R12
Outline
Two distributed algorithms

Byzantine agreement

Scheduling (CSMA)
29
Impact of Rate Region

Network rate region affects
ability to perform
multi-party computation

Example:
Byzantine agreement (broadcast)
30
Byzantine Agreement: Broadcast
Source S wants to send message to n-1 receivers

Fault-free receivers agree

S fault-free  agree on its message

Up to f failures
Impact of Rate Region

How does rate region affect
broadcast performance ?

How to quantify the impact ?
32
Throughput of Agreement

Borrow notion of throughput
from communications literature

b(t) = number of bits agreed upon in [0,t]
b(t )
Throughput  lim
t 
t
33
Long timescale measure
Capacity of Agreement

Supremum of achievable throughputs
for a given rate region
Broadcast Channel
1
Rate region R ≤ C
2
S
Agreement capacity = C
R
3
35
“Ethernet” Rate Region
S

Sum of
private link capacities ≤ C
1
3
2
Agreement capacity =
C
Communication complexity
per agreed bit
36
“Ethernet” Rate Region
Communication complexity per-agreed bit
=
number of bits required to agree on L bits
L
37
“Ethernet” Rate Region
Communication complexity per-agreed bit
=
number of bits required to agree on L bits
L
38
“Ethernet” Rate Region
Communication complexity per-agreed bit
=

L=1
number of bits required to agree on L bits
L
: Ω(n2) for n node
[Dolev-Reischuk]
(deterministic algorithms)
39
“Ethernet” Rate Region
Communication complexity per-agreed bit
=
number of bits required to agree on L bits
L

L=1
: Ω(n2) for n nodes

L  ∞ : can be shown O(n)
(multi-value agreement)
40
“Ethernet” Rate Region
Communication complexity per-agreed bit
=
number of bits required to agree on L bits
L

L=1
: Ω(n2) for n nodes

L  ∞ : can be shown O(n)
(multi-value agreement)
n(n-1)
(n-f)
bits per agreed-bit
41
“Ethernet” Rate Region
S

Sum of
private link capacities ≤ C
1
3
2
Agreement capacity ≥
(n-f)
n(n-1)
C
Conjecture: tight bound
42
Point-to-Point Network
Each link has its
own capacity
S
Load ij ≤ Cij
A
C
B
Point-to-Point Network
Each link has its
own capacity
S
4
4
Cij as shown
2
A
4
C
3
3
4
B
Agreement
Capacity ?
3
3
Point-to-Point Network
S
4
4
Cij as shown
2
A
4
C
3
3
4
B
Agreement
Capacity = 2
3
3
Point-to-Point Network
S
є
4
4
Cij as shown
2
A
4
C
3
3
4
B
Agreement
Capacity = 6
3
3
Point-to-Point Network
Capacity-achieving
scheme for
Arbitrary 4 node
networks
Approach:
 Upper bound
based on min-cuts
 Lower bound using
coding
S
A
C
B
Point-to-Point Network
Capacity-achieving
scheme for
Arbitrary 4 node
networks
Minimum number
of rounds required
depends on link
capacities
S
A
C
B
Point-to-Point Network
Capacity-achieving
scheme for
Arbitrary 4 node
networks
S
A
C
B
Open problem:
Everything else
Open Problems


Capacity-achieving agreement with
general rate regions
Subset of nodes as “receivers”
50
Open Problems



Capacity-achieving agreement with
general rate regions
Subset of nodes as “receivers”
Even the multicast problem with Byzantine nodes
is unsolved
- For multicast, source S fault-free
51
Rich Problem Space


Broadcast channel allows overhearing
Transmit to 2 at high
rate, or low rate ?
- Low rate allows
reception at 1
(broadcast
advantage)
1
2
S
3
52
Rich Problem Space


Broadcast channel allows overhearing
Transmit to 2 at high
rate, or low rate ?
- Low rate allows
reception at 1
(broadcast
advantage)
1
2
S
Low rate
3
53
Rich Problem Space


Broadcast channel allows overhearing
Transmit to 2 at high
rate, or low rate ?
- Low rate allows
reception at 1
(broadcast
advantage)
1
2
S
High rate
3
54
Rich Problem Space

How to model & exploit reception
with probability < 1 ?
– Need opportunistic algorithms

Use of available diversity affects rate region
– How to dynamically adapt to channel variations ?
55
Rich Problem Space

Similar questions relevant for any
multi-party computation
Communications /
Networking
Distributed
Algorithms
56
And Now for Something Completely Different
*
* Monty Python
57
Outline
Two distributed algorithms

Byzantine agreement

Scheduling (CSMA)
58
Scheduling Objective

Network stability
1
L0
2
L2
3
L3
4
Scheduling Objective

Network stability
1
1
L0
L0
2
2
L2
L2
3
3
L3
L3
4
4
Scheduling
Arrival
rates
1/2
1
L0
2
1/2
1/2
L2
L3
3
4
Arrivals
in odd slots
Arrivals
in even slots
1
L0
2
L2
3
L3
4
End of slot 0
1
0
0
L0
L2
2
3
L3
4
End of slot 1
0
1
L0
2
L2
1
3
L3
4
1
Low
priority
to L2
End of slot 2
1
2
2
0
L0
L2
1
2
3
L3
4
2
Low
priority
to L2
End of slot 3
1
L0
3
1
2
2
0
3
L2
L3
3
4
2
Low
priority
to L2
End of slot 4
1
4
4
2
0
L0
L2
2
3
L3
4
4
2
3
1


Traffic not stabilized
High priority to L2 will stabilize this
Throughput-Optimal Scheduler

A scheduler is throughput-optimal if
it can serve all schedulable traffic
Schedule = arg max ∑ ri qi
Load 2
Load 1
[Tassiulas92]
Throughput-Optimal
CSMA (Carrier-Sense Multiple Access)


Continuous-time CSMA-like algorithm shown to
achieve stability [Jiang-Walrand’08]
Extended to discrete-time CSMA-like algorithms
in later work
CSMA model:
A link can sense conflicting transmissions
1
L0
2
L2
3
L3
4
CSMA model:
A link can sense conflicting transmissions
70
71
Imperfect Carrier Sensing

Conflicting transmissions may not always be sensed,
potentially leading to collisions
72
Imperfect Carrier Sensing

Stability with imperfect carrier sensing ?

Yes, almost
73
Proposed CSMA Algorithm
Two access probability:


a : probability with which a node attempts to
transmit first packet in a “train”
p : probability with which a “train” is extended
74
Scheduling Example
Access
by aA
Access
by aB
DATA
Access
by pB
DATA
DATA
DATA
BA
Access
by aB
Sensed
busy by
Link A & C
probe
DATA
ACK
C
probe
probe
ACK
B
probe
ACK
A
probe
Preempted
by Link B
Sensed
idle by
Link A & C
Preempted
by Link A &
C
A and C may transmit together
With CSMA Failure
Access
by aA
Access
by aB
DATA
Access
by aB
probe
Sensed
busy by
Link A & C
Access
by pB
Sensed
idle by
Link A & C
DATA
DATA
probe
BA
ACK
C
probe
ACK
B
probe
probe
ACK
A
probe
Preempted
by Link B
DATA
DATA
CSMA
failure at B
A and C may transmit together
Stability with Sensing Failure

Small enough access probability (a) suffices
to stabilize
arbitrarily large fraction of rate region

Continuation probability (p) being
function of queue size
77
Open Problems

Carrier sensing failures …
correlation over time and space

Asymmetric collisions

Dynamic adaptation to time-varying channel
78
What does this have to do with
distributed algorithms ?
79
Network
stability



No semantics
attached to bits
Traffic patterns
weakly constrained
Distributed congestion
control
Distributed
algorithms



Awareness of
algorithm’s objective
Traffic completely
specified by the
algorithm
Distributed control ?
80
Can the gap be bridged?

Multi-party algorithms that
dynamically adapt to
network characteristics
Communications /
Networking
Distributed
Algorithms
81
Can the gap be bridged?

Theory versus practice: How to exploit the diversity?

Unknowns in practice
(unknown unknowns as well)
Communications /
Networking
Distributed
Algorithms
82
Thanks!
www.crhc.illinois.edu / wireless
Thanks!
www.crhc.illinois.edu / wireless

Goal: Agreement on a large file
File
Message
Separate instance of “mini”-algorithm for each message
85
Back-up slides
86
BA complexity for sum-rate constraint

Goal: Agreement on a large file
File
Message
(n-f) data symbols
(2n-2, n-f) code
87
2(n-1) symbol codeword of dimension n-f
2
2
2
n-1 receivers
1
1
88
Algorithm Outline
O(n)
O(n)
Initial
machine
M0
M1
time
O(n)
Mmax
O(n)
No more
failures
89
CSMA
90
Scheduling Objective

Network stability
1
L0
2
L2
3
L3
L0
L2
L3
4
Network
Rate region
characterized by
conflict graph
Throughput-Optimal Scheduler

Schedule = arg max ∑ qi
1
L0
2
L2
3
(for constant r)
L3
4
max ( q0+q3, q2)

Centralized scheduler
Channel Access Model
Access
probability a
Continuation
probability p
Last α-duration of each time slot for carrier sense
Preemptive CSMA
Carrier sense
u(t): preemption
x(t): transmission schedule
Ci: set of conflict links of i
ACK reception

Two access probabilities: ai and pi
Carrier Sense Failure:
Main Result

By choosing small enough access probability,
possible to stabilize arbitrarily large fraction of
capacity region
Proof complexity:
Markov chain is no longer reversible
Use perturbation theory for Markov
chains