Routing, Anycast, and Multicast for Mesh and Sensor Networks Roland Flury Roger Wattenhofer RAM...
-
date post
19-Dec-2015 -
Category
Documents
-
view
219 -
download
0
Transcript of Routing, Anycast, and Multicast for Mesh and Sensor Networks Roland Flury Roger Wattenhofer RAM...
Routing, Anycast, and Multicastfor Mesh and Sensor Networks
Roland FluryRoger Wattenhofer
RAM
Distributed
Computing Group
Roland Flury, ETH Zürich @ Infocom 2007 2
Roland Flury, ETH Zürich @ Infocom 2007 3
All-In-One Solution
Roland Flury, ETH Zürich @ Infocom 2007 4
Routing in Mesh and Sensor Networks
• Unicast Routing (send message to a given node)
• Multicast Routing (send message to a given set of nodes)
Roland Flury, ETH Zürich @ Infocom 2007 5
Routing in Mesh and Sensor Networks (2)
• Anycast Routing (send message to any node of a given set)
Unicast MulticastAnycastUnicast
AnycastMulticast
ALL IN ONE
Roland Flury, ETH Zürich @ Infocom 2007 6
Modeling 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
Roland Flury, ETH Zürich @ Infocom 2007 7
Constant Doubling Metrics
Ball: Bu(r) := { v | v 2 V and dist(u, v) · r }
8 u 2 V, r > 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
Roland Flury, ETH Zürich @ Infocom 2007 8
Routing, 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
Roland Flury, ETH Zürich @ Infocom 2007 9
Some Related Work
• Gavoille, Gengler. Space Efficiency for Routing Schemes of Stretch Factor Three.
No labeling and stretch < 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
Roland Flury, ETH Zürich @ Infocom 2007 10
Outline
Introduction
Related Work
Construction of Labels
Construction of Routing Tables
Unicasting
Multicasting
Anycasting
Roland Flury, ETH Zürich @ Infocom 2007 11
Node 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) >
Net centers of the -net
Roland Flury, ETH Zürich @ Infocom 2007 12
Dominance Net Hierarchy
• Build -nets for 2 {1, 2, 4, …, 2d log e}
= 2
= 4
= 8
= 1Level 0
Level 1
Level 2
Level 3
Roland Flury, ETH Zürich @ Infocom 2007 13
Naming 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
1 2 3 4 5 6
3212121111
1 2 1 1 2 1 2 1 2 3 1 1 2 1 1 2
Root
R:6:3:2
Roland Flury, ETH Zürich @ Infocom 2007 14
Node 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
1 2 3 4 5 6
3212121111
1 2 1 1 2 1 2 1 2 3 1 1 2 1 1 2Level 0
Level 1
Level 2
Level 3– Per level at most 22 ¢ 2 bits– d log e levels
) Label size of O(log ) for a constant
n
Roland Flury, ETH Zürich @ Infocom 2007 15
Outline
Introduction
Related Work
Construction of Labels
Construction of Routing Tables
Unicasting
Multicasting
Anycasting
Roland Flury, ETH Zürich @ Infocom 2007 16
Routing 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
Bc((8/ + 6))
c
Roland Flury, ETH Zürich @ Infocom 2007 17
Routing 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.
Roland Flury, ETH Zürich @ Infocom 2007 18
Unicast 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.
s t
c1
c2c3
Roland Flury, ETH Zürich @ Infocom 2007 19
Multicast 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.
Roland Flury, ETH Zürich @ Infocom 2007 20
Anycast 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.
Roland Flury, ETH Zürich @ Infocom 2007 21
Summary
Unicast
Multicast
Anycast
Unicast
Anycast
Multicast
(1+) approximation
12 (1+) approximation
6 (1+) approximation
ALL IN ONE
Label size: O(log )
Routing table size: O(1/) (log ) (O() + log )
Roland Flury, ETH Zürich @ Infocom 2007 22
Questions / Comments
Thank you!
Questions / Comments?
Roland FluryRoger Wattenhofer
Roland Flury, ETH Zürich @ Infocom 2007 23
nets on Doubling Metrics
Property 1 (Sparseness): Any ball Bv(2x ) covers at most 2(1+x) nodes from an arbitrary -net.
2-net
v
Bv(4)
Roland Flury, ETH Zürich @ Infocom 2007 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.
u
2-netBu(4)
Roland Flury, ETH Zürich @ Infocom 2007 25
Distance 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) > 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)
Roland Flury, ETH Zürich @ Infocom 2007 26
Constant Doubling Metrics