Title: Routing, Anycast, and Multicast for Mesh and Sensor Networks
1Routing, Anycast, and Multicastfor Mesh and
Sensor Networks
RAM
Roland Flury Roger Wattenhofer
Distributed
Computing Group
2(No Transcript)
3All-In-One Solution
4Routing in Mesh and Sensor Networks
- Unicast Routing (send message to a given node)
- Multicast Routing (send message to a given set of
nodes)
5Routing in Mesh and Sensor Networks (2)
- Anycast Routing (send message to any node of a
given set)
Unicast
Multicast
Anycast
Unicast Anycast Multicast
ALL IN ONE
6Modeling Wireless Networks
- Routing in limited, wireless networks
- Limited Storage
- Limited Power
- No central unit, fully distributed algorithms
- Description of network topology
- Undirected Graph G(V,E)
- Vertices V Set of network nodes
- Edges E present between any two connected nodes
- Wireless Networks
- Nodes tend to be connected to other nodes in
proximity - Connectivity graphs constant doubling
7Constant Doubling Metrics
- Ball Bu(r) v v 2 V and dist(u, v) r
- 8 u 2 V, r gt 0 9 S µ Bu(r) s.t.
- 8 x 2 Bu(r) 9 s 2 S dist(x, s) r/2
- S 2? O(1) doubling dimension ?
8Routing, Anycast, and Multicast
- Labeled routing scheme
- (1?)-approximation for Unicast Routing
- Constant approximations to Multicast and Anycast
- -approximate Distance Queries
- Label size O(log ?) (bits)
- ? is the diameter of the network
- Routing table size O(1/?)? (log ?) (O(?) log
?) (bits) - ? is the doubling dimension of the graph (2..5)
- ? is the max degree of any node
9Some Related Work
- Gavoille, Gengler. Space Efficiency for Routing
Schemes of Stretch Factor Three. - No labeling and stretch lt 3 requires routing
tables of size ?(n)
Routing Table (bits) Label (bits)
Talwar, 2004 O(1/(? ?))? log2? ? O(? log ?)
Chan et al. 2005 (? / ?)O(?) log ? log ? O(? log(1/?)) log ?
Slivkins, 2005 ?-O(?) log ? log ? O(? log(1/?)) log ?
Slivkins, 2005 ?-O(?) log ? log log ? log n 2O(?) log n log(?-1 log ?)
Abraham et al. 2006 ?-O(?) log n log(min(?,n)) d log n e
This work O(1/?)? log ? (O(?) log ?) 2O(?) log ?
n Number of nodes in network
? Diameter of network
? Doubling dimension of network
? Max. degree of any node
? Approximation factor for unicast routing
Not only Unicast Routing, but also Multicast,
Anycast, and distance queries distributed
construction
10Outline
- Introduction
- Related Work
- Construction of Labels
- Construction of Routing Tables
- Unicasting
- Multicasting
- Anycasting
11Node Labeling ?-net
- Given a graph G(V,E)
- U ½ V is a ?-net if
- a) 8 v 2 V 9 u 2 U d(u,v) ?
- b) 8 u1, u2 2 U d(u1, u2) gt ?
12Dominance Net Hierarchy
- Build ?-nets for ? 2 1, 2, 4, , 2d log ? e
Level 3
? 8
Level 2
? 4
Level 1
? 2
? 1
Level 0
13Naming Scheme
- Select parent from next higher level
- Parent enumerates all of its children
- At most 22? children
- 2? bits are sufficient for the enumeration
- Name of net-center obtained by concatenation of
enum values - Name at most 2? log ? bits long
Root
14Node Labeling
- Each net-center c of a ?-net advertises itself to
Bc(2?) - Any node n stores ID of all net-centers from
which it receives advertisements - Per level at most 22? net-centers to store
- If net-center c covers n, then also the parent of
c covers n - The set of net-centers to store form a tree
- Per level at most 22? 2? bits
- d log ? e levels
- ) Label size of O(log ?) for a constant ?
Level 3
Level 2
Level 1
Level 0
n
15Outline
- Introduction
- Related Work
- Construction of Labels
- Construction of Routing Tables
- Unicasting
- Multicasting
- Anycasting
16Routing Tables
- Routing tables to support (1?) stretch routing
- Recall Routing table size of O(1/?)? (log ?)
(O(?) log ?) bits - Every net-center c 2 ?-net of the dominance net
advertises itself to Bc(? (8/? 6)) - Every node stores direction to reach all
advertising net-centers
c
Bc(? (8/? 6))
17Routing Tables Analysis
- Each node needs to store direction for at most
22?(8/? 6)? net-centers per level - If a node needs to store a routing entry for
net-center c, then it also needs to store a
routing entry for the parent of c. - The routing table can be stored as a tree
- For each net-center, we need to store its
enumeration value, and the next-hop information,
which takes at most 2? log ? bits - Total storage cost is 22?(8/? 6)? log ? (2?
log ?) bits.
18Unicast Routing
- Problem From a sender node s, send a message to
a target node t, given the ID and label L(t). - Algorithm From all net-centers listed in L(t),
s picks the net-center c on the lowest level to
which it has routing information and forwards the
message towards c. - Main idea Once we reach a first net-center of t,
we are sure to find a closer net-center on a
lower layer. - The path to the first net-center causes only
little overhead as the net-centers advertise
themselves quite far.
c1
s
t
c2
c3
19Multicast Routing
- Problem From a sender node s, send a message to
a set of target nodes U. - Algorithm Build a Minimum Spanning Tree (MST)
on s ? U and send the message on this tree. - Main idea The MST is a 2-approximation to the
Minimum Steiner Tree problem. - Our distance estimates may be wrong up to a
factor 6, and message routing on the tree has
stretch (1?), which results in a
12(1?)-approximation.
20Anycast Routing
- Problem From a sender node s, send a message to
an arbitrary target chosen from a set U. - Algorithm Determine u 2 U with minimal distance
to s, and send the message to u. - Main idea Our distance estimates may be wrong up
to a factor 6, and message routing on the tree
has stretch (1?), which results in a
6(1?)-approximation.
21Summary
(1?) approximation
Unicast
Unicast Anycast Multicast
Multicast
12 (1?) approximation
Anycast
6 (1?) approximation
ALL IN ONE
Label size O(log ?) Routing table
size O(1/?)? (log ?) (O(?) log ?)
22Questions / Comments
- Thank you!
- Questions / Comments?
Roland Flury Roger Wattenhofer
23?-nets on ? Doubling Metrics
- Property 1 (Sparseness) Any ball Bv(2x ?)
covers at most 2(1x) ? nodes from an arbitrary
?-net.
2-net
v
Bv(4?)
24?-nets on ? Doubling Metrics (2)
- Property 2 (Dominance) Given a ?-net, and each
net-center u covers Bu(2?), then any network node
is covered by at most 22? net-centers.
2-net
Bu(4)
25Distance Queries
- Problem Determine the distance between two nodes
u and v, given their labels L(u) and L(v) - Solution Determine the smallest level i for
which the labels of u and v have at least one
common net-center - Theorem The distance query is a
-approximation. - Proof Lower bound dist(u, v) gt 2i -1, otherwise
L(u) and L(v) have a common net-center on level
i-1. - Upper bound By distinction of cases and
applying triangle inequality (see paper)
26Constant Doubling Metrics