![Page 1: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/1.jpg)
Routing, Anycast, and Multicastfor Mesh and Sensor Networks
Roland FluryRoger Wattenhofer
RAM
DistributedComputing Group
![Page 2: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/2.jpg)
2Roland Flury, ETH Zürich @ Infocom 2007
![Page 3: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/3.jpg)
3Roland Flury, ETH Zürich @ Infocom 2007
All-In-One Solution
![Page 4: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/4.jpg)
4Roland Flury, ETH Zürich @ Infocom 2007
Routing in Mesh and Sensor Networks
• Unicast Routing (send message to a given node)
• Multicast Routing (send message to a given set of nodes)
![Page 5: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/5.jpg)
5Roland Flury, ETH Zürich @ Infocom 2007
Routing in Mesh and Sensor Networks (2)
• Anycast Routing (send message to any node of a given set)
Unicast MulticastAnycastUnicast
AnycastMulticast
ALL IN ONE
![Page 6: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/6.jpg)
6Roland Flury, ETH Zürich @ Infocom 2007
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
![Page 7: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/7.jpg)
7Roland Flury, ETH Zürich @ Infocom 2007
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
![Page 8: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/8.jpg)
8Roland Flury, ETH Zürich @ Infocom 2007
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
![Page 9: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/9.jpg)
9Roland Flury, ETH Zürich @ Infocom 2007
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 eThis 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
![Page 10: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/10.jpg)
10Roland Flury, ETH Zürich @ Infocom 2007
Outline
Introduction
Related Work
Construction of Labels
Construction of Routing Tables
Unicasting
Multicasting
Anycasting
![Page 11: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/11.jpg)
11Roland Flury, ETH Zürich @ Infocom 2007
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
![Page 12: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/12.jpg)
12Roland Flury, ETH Zürich @ Infocom 2007
Dominance Net Hierarchy
• Build -nets for 2 {1, 2, 4, …, 2d log e }
= 2
= 4
= 8
= 1Level 0
Level 1
Level 2
Level 3
![Page 13: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/13.jpg)
13Roland Flury, ETH Zürich @ Infocom 2007
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
![Page 14: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/14.jpg)
14Roland Flury, ETH Zürich @ Infocom 2007
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
![Page 15: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/15.jpg)
15Roland Flury, ETH Zürich @ Infocom 2007
Outline
Introduction
Related Work
Construction of Labels
Construction of Routing Tables
Unicasting
Multicasting
Anycasting
![Page 16: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/16.jpg)
16Roland Flury, ETH Zürich @ Infocom 2007
Routing Tables
• Routing tables to support (1+) stretch routingRecall: 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
![Page 17: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/17.jpg)
17Roland Flury, ETH Zürich @ Infocom 2007
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.
![Page 18: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/18.jpg)
18Roland Flury, ETH Zürich @ Infocom 2007
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
![Page 19: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/19.jpg)
19Roland Flury, ETH Zürich @ Infocom 2007
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.
![Page 20: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/20.jpg)
20Roland Flury, ETH Zürich @ Infocom 2007
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.
![Page 21: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/21.jpg)
21Roland Flury, ETH Zürich @ Infocom 2007
Summary
Unicast
Multicast
Anycast
Unicast
AnycastMulticast
(1+) approximation
12 (1+) approximation
6 (1+) approximation
ALL IN ONE
Label size: O(log )
Routing table size: O(1/) (log ) (O() + log )
![Page 22: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/22.jpg)
22Roland Flury, ETH Zürich @ Infocom 2007
Questions / Comments
Thank you!Questions / Comments?
Roland FluryRoger Wattenhofer
![Page 23: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/23.jpg)
23Roland Flury, ETH Zürich @ Infocom 2007
-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)
![Page 24: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/24.jpg)
24Roland Flury, ETH Zürich @ Infocom 2007
-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)
![Page 25: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/25.jpg)
25Roland Flury, ETH Zürich @ Infocom 2007
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)
![Page 26: R outing, A nycast, and M ulticast for Mesh and Sensor Networks](https://reader036.vdocuments.net/reader036/viewer/2022062410/568165cd550346895dd8db36/html5/thumbnails/26.jpg)
26Roland Flury, ETH Zürich @ Infocom 2007
Constant Doubling Metrics