Models and Techniques for Communication in Dynamic Networks Christian Scheideler

advertisement
Models and Techniques for
Communication in
Dynamic Networks
Christian Scheideler
Dept. of Computer Science
Johns Hopkins University
Dynamic networks
Peer-to-peer
Wireless
Faulty networks
networks
networks
Communication in Dynamic Networks
2
Overview
In this talk:
Basic problems
Basic assumptions
Faulty networks
Wireless networks
Adversarial networks
More can be found in the paper…
Communication in Dynamic Networks
3
Basic Problems - Connectivity
Communication in Dynamic Networks
4
Basic Problems – Routing
Communication in Dynamic Networks
5
Basic Problems – Admission
Communication in Dynamic Networks
6
Basic Assumptions
All packets are atomic
(unsplittable, uncompressable)
Time proceeds in synchronous steps
Only point-to-point connections (links)
Each link can forward one packet per step
in each direction
Communication in Dynamic Networks
7
Focus of Talk
Communication in dynamic networks
(connectivity, routing, admission control)
Online, distributed algorithms


online: no knowledge about future
distributed: runs locally at each node
Adversarial or random network changes

adversary: tries to harm algorithm
Adversarial packet injections
Communication in Dynamic Networks
8
Faulty Networks
Communication in Dynamic Networks
9
Faulty Networks
Basic models:
Adversarial or random node/edge faults
Central questions:
What repair rate needed to ensure


large connected component
similar routing properties
How to ensure uninterrupted service
How to achieve a high throughput
Communication in Dynamic Networks
10
Large Connected Components
Information dispersal [Rabin 89]:
no information lost
Assumption: random edge faults
Is there critical survival probability p* s.t.
p>(1+e)p* : constant fraction CC
p<(1-e)p* : no constant fraction CC
Communication in Dynamic Networks
11
Large connected components
p*<=[Ajtai,
1/(n-1)
[Erdos
and
Renyi
0.337
p*=1/d
< p*
0.436
p*=1/2
Komlos
[Karlin,
p*=1/d
[Kesten
and
Nelson
Szemeredi
80]
and 60]
Tamaki
82] 94]
Communication in Dynamic Networks
12
Large connected components
Robustness of graph of ave. degree d:
r = d . p*
complete graph: r = 1
d-dimensional hypercube: r = 1
random graph of dn/2 edges: r = 1
d-dimensional butterfly: 1.348 < r < 1.744
2-dimensional mesh: r = 2
Communication in Dynamic Networks
13
Structurally robust networks
When can faulty network still keep original
routing properties?
When can faulty network still simulate original
network with (amortized) constant slowdown?
Constant slowdown:
1 step in original - O(1) steps in faulty network
Communication in Dynamic Networks
14
Simulations with O(1) slowdown
1-eworst-case
upup
tonto
n1-e
worst-case
faults
Maggs
and
Sitaraman
98]
up
to
[Leighton,
Maggs
and
Sitaraman
97]
failure
with
any
const.faults?
p<1
OK[Leighton,
[Hastad,
Leighton
and
Newman
87]
n1-e
worst-case
faults
[Cole,
Maggs
and
Sitaraman
97]
Communication in Dynamic Networks
15
Open questions
Hypercube very robust!
What about constant degree networks??
How to exploit knowledge about
robustness of networks for the design of
efficient routing protocols?
Communication in Dynamic Networks
16
Fault-tolerant circuit switching
How can uninterrupted service be ensured?
Use more than one path.
Allocate more bandwidth than needed.
A
B
Communication in Dynamic Networks
17
Fault-tolerant circuit switching
k-edge disjoint paths problem (k-EDP):
Given a graph G and a set T of pairs of nodes, find
a maximum set of pairs s.t. each pair is connected
by k disjoint paths and all paths are disjoint.
k-disjoint flows problem (k-DFP):
Given a network G with edge capacities and a set T
of pairs of nodes with demands d i , find a set of
pairs of maximum total demand s.t. pair i in set is
connected by k disjoint paths with flow d i /k and all
capacity constraints are kept.
Communication in Dynamic Networks
18
Fault-tolerant circuit switching
Bounded greedy algorithm (BGA)
For each pair: if k disjoint paths available that
use at most L edges: take them
[Bagchi & Chaughari & Kolman & Sch. 02]
L= O(k 3D a -1 log n):
BGA is O(k D a log n) - competitive
3
-1
D: maximum degree, a: expansion, n: number of nodes
Communication in Dynamic Networks
19
Wireless ad hoc networks
How How
to send
How
to select
packets
to ensure
andalong
connectivity?
maintain
selected
routes?
routes?
Communication in Dynamic Networks
20
Connectivity
[Yao 82, Ruppert & Seidel 91,Lukovszki 99]:
partition space into sectors
connect to nearest neighbor in each sector
Communication in Dynamic Networks
21
Route selection
Strategy:
Always go to neighbor that lies in sector of
destination (if possible…)
Communication in Dynamic Networks
22
Wireless ad hoc networks
Problem with sector-based approach:
Nodes have to know location (GPS)
Solution when nodes move at random:
Just connect to k nearest neighbors
What if nodes have limited range??
Communication in Dynamic Networks
23
Adversarial networks
Communication in Dynamic Networks
24
Adversarial networks
Situation
Network and packet injections under
adversarial control
Problems
How to select paths?
How to schedule packet movements?
How to perform admission control?
Communication in Dynamic Networks
25
Adversarial networks
“Friendly” adversary
All injected packets can be delivered
Buffer size for this at most B
Only gathering scenario
All packets have the same destination
Is there online algorithm s.t.
number of packets in system finite?
Communication in Dynamic Networks
26
Adversarial gathering
Balancing algorithm:
For every time step t and every edge (v,w)
#packets(v) - #packets(w) > T: send packet
receive all incoming and injected packets
[Awerbuch et al 89, Aiello et al 98,…]
v
w
Communication in Dynamic Networks
27
Adversarial gathering
[Awerbuch & Berenbrink & Brinkmann & Sch. 01]
For T>2D, number of packets in node at most
(B+T)(n-1)+B
where D is maximum degree of node.
Bound tight up to constant factor.
How about more complex communication modes?
(unicasting, anycasting, multicasting,…)
Communication in Dynamic Networks
28
Communication modes
Anycasting
Unicasting
Multicasting
: one
optional
: multiple
destination
set destinations
of destinations
per packet
Communication in Dynamic Networks
29
Anycasting and multicasting
Approach:
Adversary controls topology, injections,
now unfriendly
Compare number of packet deliveries
(throughput) with optimal algorithm
Algorithm is (c,s)-competitive:
Reaches c-fraction of optimal throughput
with s times more buffer space
Communication in Dynamic Networks
30
Anycasting
Anycasting can be reduced to gathering!
Option set
Originial
model:
model:
each node
buffer:
virtual
has
node
buffer for each anycast set
each step
edge:
set of
adversary
virtual edges
offersbetween
edges corr. buffers
combine all virt. dest. nodes in single dest.
v
w
Communication in Dynamic Networks
31
Gathering in option set model
Balancing algorithm:
For every time step t and every option set S
select edge (v,w) with largest #pack(v)-#pack(w)
#pack(v) - #pack(w) > T: send packet
receive all incoming and injected packets
(if not possible: delete packet)
[Awerbuch, Brinkmann and Sch. 02]
balancing is (1-e,O(L/e)) – competitive
(L: ave. path length used by packets in OPT)
Communication in Dynamic Networks
32
Multicasting
Major problem:
Multicast packets can split
Approach:
Option set model for anycasting can be
generalized to multicasting
Balancing algorithm can be extended
accordingly
Balancing (1-e, O(f(e)))-competitive
Communication in Dynamic Networks
33
Adversarial networks
Major problem:
Solutions show feasibility but FAR from
being practical
Possible solutions:
Use clustering strategies
Combine balancing with other methods
Communication in Dynamic Networks
34
Conclusion
Routing in dynamic networks is interesting
(also systems people are searching in dark)
Techniques and models are available
Many open problems left:


Robust, fault-tolerant networks of constant
degree
Routing in fault-tolerant and wireless networks
Communication in Dynamic Networks
35
Download