References Routing Protocols H. Karl and A. Willing. Protocols and Architectures for Wireless Sensor Networks. John Wiley & Sons, 005. (Chapter 11) K. Sohraby, D. Minoli, and T. Znati. Wireless Sensor Networks: Technology, Protocols, and Applications. John Wiley & Sons, 007. (Chapter 6) E. M. Royer and C. C-K K. Toh. A Review of Current Routing Protocols for Ad-Hoc Mobile Wireless Networks. IEEE Personal Communications. Vol. 6, No., pp 46 55, April 1999 X. Hong, K. Xu, and M. Gerla. Scalable Routing Protocols for Mobile Ad Hoc Networks. IEEE Network, Vol. 16, No. 4, pp. 11 1, July/August 006 Introduction... WSNs can be deployed to support a wide range of applications, whether they have stationary or mobile nodes Once deployed, the nodes self-organize into a autonomous wireless ad hoc network, with little or no maintenance The nodes collaborate to perform the task(s) of the application for which they are deployed Their main task is to collect data, process data, forward the information back to the application; achieving this task efficiently requires an efficient routing protocol to set up paths between the sensors and the data sink 3 Forwarding Whenever a node cannot send its data directly to the sink, it has to rely assistance of intermediate nodes to forward the data, thus form a multihop network A S B Node S wants to send a packet to node D; no direct link, has to pass (forward) the packet to its neighbor first 4 C D
Forwarding 5 The simplest forwarding technique is flooding, where every packet is sent to every neighbor until it reaches the sink Alternatively, a packet is forwarded only to a randomly selected neighbor, in a technique called gossiping Using a technique (in the middle grounds), called controlled flooding, a packet is sent to a select set of neighbors The performance of forwarding is measured in terms of number of packets sent or delay, and usually the above techniques demonstrate a poor performance suitability of a neighbor is needed (captured as a set of metrics) Is the forwarding node capable? Is it closer to the destination? Routing tables Nodes gather and store metrics about their neighbors in routing tables Destination Node S Next hop Cost A A 1 B B 1 C C 1 D C D B 6 Destination Node A Next hop Cost S S 1 B S C S D C 3 Determining these tables is performed by the routing protocols Routing gprotocols In wired networks, the routing protocols are usually based on the link state or distance vector algorithms. In wireless (mobile, multihop) networks, different strategies es are required; ed; should be distributed low overhead self configuring Ad hoc routing can be classified as Table driven (proactive) Source initiated (demand driven) 7 Table driven Ad hoc protocols 8 Ad hoc routing protocols Source-initiated On-demand DSDV WRP AODV DSR LMR ABR CGSR TORA SSR DSDV Destination Sequenced Distance Vector CGSR Cluster Gateway Switch Routing WRP Wireless Routing Protocol AODV Ad hoc On-demand Distance Vector DSR Dynamic Source Routing LMR Lightweight Mobile Routing TORA Temporally T Ordered d Routing Algorithm ABR Associativity Based Routing SSR Signal Stability Routing
Routing in WSNs The crucial aspects in WSNs are Energy efficiency Selecting the most energy efficient routes Low overhead of table construction Stability and dependability of routes Size of the routing table Resilience Unicasting, broadcasting, and multicasting Geographic routing 9 Gossiping and agent-based unicast forwarding The idea is to eliminate the need of a routing table The overhead is high or The tables are to be created in the first place! A parallel is drawn between the distribution of data in a replicated data base system and epidemics occurring in human populations 10 Rumor mongering Once an update is received, the site propagates this periodically and randomly to another site The goal is to spread the updates as fast as possible while minimizing the message overhead The idea of randomly choosing forwarding nodes can be applied to WSNs Randomized forwarding In gossip based randomized d forwarding, the key is the probability with which a node retransmits an incoming packet 11 It is shown that the critical threshold is 65-75% The boundary nodes are critical, as they have fewer neighbors Alternatively, a data packet (acting as an agent) can wander through the network in search for its destination (this is known as random walking) All packets wander flooding Some packets wander gossiping Rumor routing Rumor routing Detect an event and install a few paths in the network Agents propagate from node to node installing routing information? 1
Energy-efficient unicast Take the network graph Assign a cost value (reflecting the energy consumption) to each link Use an algorithm that would compute the least-cost path(s) 4 D Send data from A to H 3 3 3 A B H 1 13 1 1 4 E C G 1 F 4 Energy-efficient unicast Minimize energy/bit Example: A-B-E-H Maximize network lifetime Time until the first node fails Routing considering available battery capacity Maximum available battery levels Example: A-C-F-H Minimum battery cost routing (MBCR) Example: A-D-H Min-max battery capacity routing (MMBCR) Only take battery level into account when below a given level Conditional min-max capacity routing (CMMBCR) Minimize variance in power levels Minimum total transmission power routing (MTPR) 14 Some unicast protocols Attracting ti routes by redirecting Distance vector routing over topology control Maximizing time to first node failure as a flow problem Maximizing time to first node failure by max-min optimization Maximizing number of messages Bounding the difference between routing protocols 15 Multipath unicast routing 16 Instead of constructing ti a single energy-efficient i path, focus can be shifted on choosing the best possible path from a set of paths Provides redundancy as a standby Goal is to find k paths that do not have either links or nodes in common Increased robustness Well studied
Multipath unicast routing Sequential assignment routing (SAR) 17 Based on the observation that the nodes close to the sink are likely to fail sooner Construct trees outward from each sink neighbor Energy-efficient secondary ypaths Construct braided paths where various paths may share nodes Simultaneous transmission i over multiple l paths Send several copies of a packet over multiple node-disjoint paths Random selection of the next upstream hop Multipath unicast routing 3 18 Unicast routing is the broadest research topic in the context of ad hoc and wireless sensor networks A variety of other topics considered (but not covered) include: Routing and topology control Maximizing data flow for multiple source/destination pairs All costs considered Integration of scheduling and power control Routing and link quality Routing and lifetime guarantees Routing for one-shot queries Broadcast and multicast Options 19 0 While transmitting data from one node to another, nodes may also need to perform a broadcast operation Efficient broadcasting to restrict the set of forwarding nodes as much as possible, while all the nodes receive data Multicasting li i has a similar il goal Broadcast Source-based tree Multicast Shared core- based tree Mesh Minimize total cost Minimize maximum cost per destination Single core Multiple core
Source-based tree approach The idea is to construct, t for each source, a tree, rooted at the given source, that contains all the destinations for this source, as well as other nodes that are needed Try to find a tree for which the sum of all link costs is minimum (Steiner tree) Try to find the minimum cost to each destination (shortest- path tree) 1 Steiner tree src dst 1 Shortest path tree src dst dst 1 dst 1 1 Source-based protocols A greedy heuristic Shortest Path Tree Calculate the shortest (cheapest) path to each destination and overlay these paths onto a tree Broadcast using minimum cost spanning tree Prim s algorithm Start with a tree consisting of the source node and, in V -1 steps, add one node For every next node, construct a shortest path to some other node already on the tree Other Steiner tree approximations Broadcasting or multicasting with a finite set of powers Wireless advantage Broadcasting or Multicasting in wireless medium is different from the same in wired medium 3 Wired: locally distributing a packet to n neighbors: n times the cost of a unicast packet kt Wireless: sending to n neighbors can incur costs As high as sending to a single neighbor if receive costs are neglected completely As high as sending once, receiving n times if receives are tuned to the right moment As high as sending n unicast packets if the MAC protocol does not support local multicast If local multicast is cheaper than repeated unicasts (a realistic assumption), then we claim the wireless multicast advantage Broadcast incremental power (BIP) 4 In the previous algorithms, the cost of transmitting to multiple neighbors (multiple children) increases exponentially BIP differs by exploiting the wireless multicasting A node already transmitting to some other node can increase its transmitting power to further the transmission to other nodes, without the cost of a new transmission The additional cost is only the difference between the current cost and the needed (higher) transmission power
Broadcast incremental power (BIP) 5 BIP in action 6 // Initialize V t = {source node} P(source node) = 0 // transmission power assigned to a node foreach (v in V\V t ) { Set candidate edge to (source node, v) Set candidate edge weight to transmission power to reach reach v from source node } // Compute tree while (V t V) { Select v V\V t with smallest candidate edge weight Add v to V t using this candidate edge (u,v) Increase P(u) to smallest power that reaches v // Re-compute candidate edges and their weights foreach (v in V\V t ) { Select u which minimized P (u)-p(u) // where P (u) P(u) is smallest power to reach from v to u Set candidate edge to (u,v), Set candidate edge weight to P (u)-p(u) } } Other multicast algorithms Exploiting wireless multicast t advantage Multicast Incremental Power (MIP) Embedded d wireless multicast advantage Transforming existing trees A distributed, position based approach 7 Shared, core-based protocols 8 The challenge is to find the core The problem can then be solved with a source-based tree algorithm with the core as the source One approach is merge point formation, where a merge point for a tree with a few sinks is to be found
Mesh-based protocols Tree-based protocols suffer from scalability and robustness A structure with high h level l of connectivity i is needed d to connect multiple sources to their destinations Core-Assisted Mesh Protocol (CAMP) 9 The mesh (a sub-graph of the original graph) has to contain all sources and destinations i and provide at least one path from each source to each destination Redundancy in a mesh can enable shorter paths than in a corebased tree, based on the forwarding procedure Other broadcast and multicast approaches Gossiping for multicast E.g., to improve the reliability Directed antennas for multicast Robustness and traffic carrying capacity improvements Relationship to topology control Difference is the source-based protocols Optimal solutions by linear programming LP is NP-hard, but provides better approximations 30 Optimal solutions for tree networks Collecting and distributing data Time to complete a multicast Time is important, too Data replacement Caching Cooperative multihop broadcast Geographic routing In geographic routing protocols: 31 Known positions of the source and destination, as well as the intermediate nodes can be used to assist the routing position-based routing It is necessary y( (for many applications) to address physical locations (e.g., any node in a given region) geocasting For wireless sensor networks the latter is more important Nodes are interchangeable and distinguishable only by their external aspects, the location service is usually not necessary Position-based routing basics Simple forwarding strategies: 3 Most forward within r Nearest with forward progress Directional routing Restricted flooding Hmmm. Dead ends... Basic idea to get out of a dead end: Put right hand to the wall, follow the wall Does not work if on some inner wall will walk in circles Need some additional rules to detect t such circles Send the packets around the face using the right-hand rule
Greedy yperimeter stateless routing g( (GPSR) 33 Greedy yperimeter stateless routing g( (GPSR) When stuck in a dead-end, d d one way of escaping is to keep the right hand to the wall and keep walking... 34 Practically, backtrack k the packet out of the dead d end, counterclockwise around the obstacle Similar approach will allow the discovery of a node closer to the destination in WSNs In GPSR, a packet is greedily forwarded, until an obstacle is reached at, when the algorithm switches to perimeter routing (essentially, sending a packet around a plane using the right-hand rule) A GPSR example Route packet from node A to node Z Leave face routing E 35 I Other position-based routing ID-based routing, hierarchies Randomized forwarding and adaptive node activity (GeRaF) Geographic routing without positions (GEM) 36 B F H K A Enter face routing C D G J L Z
Geocasting Sending data to a subset of nodes that are located in an indicated region (an example of multicasting!) Geographically restricted flooding Location based multicast Static zone, adaptive zone, adaptive distance Finding the right direction Voronoi diagrams and convex hulls Tessellating the plane Simpler forms (tessellations) of the plane Mesh-based geocasting Unicast routing Geocasting using unicast (GeoTORA) Trajectory-based forwarding (TBF) 37 Further issues in geocasting g Impact of localization errors Impractical assumption in real systems, that all the nodes know their location Location services 38 Mapping node IDs to node locations; more important in ad hoc networks Location-aided aided Routing (LAR) Use location information to assist in the flooding phase(s) Energy aware geocast (GEAR) Load splitting among neighbors when forwarding Geographic routing without geographic coordinates Does not really need exact location Link asymmetry Geographic routing fails badly Mobile nodes Sources of mobility in WSNs: The sensor nodes Data sinks Observed event(s) 39 Source Multiple sinks Sink moves downward 40 Source Source Sink moves upward