Routing, Anycast, and Multicast for Mesh and Sensor Networks Roland Flury Roger Wattenhofer RAM Distributed Computing Group
Roland Flury, ETH Infocom 20072
3 All-In-One Solution
Roland Flury, ETH Infocom 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 Infocom Routing in Mesh and Sensor Networks (2) Anycast Routing (send message to any node of a given set) UnicastMulticastAnycast Unicast Anycast Multicast ALL IN ONE
Roland Flury, ETH Infocom 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 Infocom Constant Doubling Metrics Ball: B u (r) := { v | v 2 V and dist(u, v) · r } 8 u 2 V, r > 0 : 9 S µ B u (r) s.t. 8 x 2 B u (r) : 9 s 2 S : dist(x, s) · r/2 |S| = 2 = O(1) doubling dimension
Roland Flury, ETH Infocom 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 Infocom 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/( )) log 2+ O( log ) Chan et al ( / ) O( ) log log O( log(1/ )) log Slivkins, 2005 -O( ) log log O( log(1/ )) log Slivkins, 2005 -O( ) log log log log n2 O( ) log n log( -1 log ) Abraham et al -O( ) log n log(min( ,n)) d log n e This work O(1/ ) log (O( ) + log )2 O( ) log nNumber 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 Infocom Outline Introduction Related Work Construction of Labels Construction of Routing Tables Unicasting Multicasting Anycasting
Roland Flury, ETH Infocom 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 u 1, u 2 2 U : d(u 1, u 2 ) > Net centers of the -net
Roland Flury, ETH Infocom Dominance Net Hierarchy Build -nets for 2 {1, 2, 4, …, 2 d log e } = 2 = 4 = 8 = 1 Level 0 Level 1 Level 2 Level 3
Roland Flury, ETH Infocom Naming Scheme Select parent from next higher level Parent enumerates all of its children –At most 2 2 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 R:6:3:2
Roland Flury, ETH Infocom Node Labeling Each net-center c of a -net advertises itself to B c (2 ) Any node n stores ID of all net-centers from which it receives advertisements –Per level at most 2 2 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 Level 0 Level 1 Level 2 Level 3 –Per level at most 2 2 ¢ 2 bits – d log e levels ) Label size of O(log ) for a constant n
Roland Flury, ETH Infocom Outline Introduction Related Work Construction of Labels Construction of Routing Tables Unicasting Multicasting Anycasting
Roland Flury, ETH Infocom 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 B c ( (8/ + 6)) Every node stores direction to reach all advertising net-centers B c ( (8/ + 6)) c
Roland Flury, ETH Infocom Routing Tables – Analysis Each node needs to store direction for at most 2 2 (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 2 2 (8/ + 6) log (2 + log ) bits.
Roland Flury, ETH Infocom 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 c1c1 c2c2 c3c3
Roland Flury, ETH Infocom 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 Infocom 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 Infocom 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 Infocom Questions / Comments Thank you! Questions / Comments? Roland Flury Roger Wattenhofer
Roland Flury, ETH Infocom nets on Doubling Metrics Property 1 (Sparseness): Any ball B v (2 x ) covers at most 2 (1+x) nodes from an arbitrary -net. 2-net v B v (4 )
Roland Flury, ETH Infocom nets on Doubling Metrics (2) Property 2 (Dominance): Given a -net, and each net-center u covers B u (2 ), then any network node is covered by at most 2 2 net-centers. u 2-net B u (4)
Roland Flury, ETH Infocom 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:Thedistance query is a -approximation. Proof:Lower bound: dist(u, v) > 2 i -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 Infocom Constant Doubling Metrics