Constrained Random Walks on Random Graphs: Routing Algorithms for Large Scale Wireless Sensor Networks Presented by Guangyu Dong Sergio D. Servetto, Cornell University Guillermo Barrenechea, Ecole Polytechnique Federale de Lausanne
Outline Contribution Motivation & Background Related Work Random Walk Approaches For regular and static graphs For irregular and static graphs For dynamic graphs Summary & Comments
Contribution A routing protocol for WSN that tries to do load balancing among intermediate nodes. Making use of multiple paths that exist from source to destination by making local packet forwarding decisions – A novel approach to implicitly maintain multipath Current algorithm is only valid for grid- topology sensor network
Motivation Consider the routing in a large-scale WSN with unreliability and dynamics A single node has limited capacity The unique characteristics of WSN calls for multipath routing techniques Searching for possible routes? Route creation and destruction? Random walk approach use an implicit way to solve these two problems
Multiple Paths Routing Advantages Minimize critical points of failure Achieve load-balancing Disadvantages More energy consumption Not Clear Performance? Security?
Ways to Do Multipath Routing Highly-resilient, energy-efficient multipath routing Routes packet through a “primary path” while maintaining several other paths as backup. Trajectory-based routing Each time source can randomly select a path for the packet Stateless SPEED Each packet has an unanticipated path. Stateless Is it really a multipath routing protocol? Random Walk Packet goes to a random direction at each node Not stateless
Random Walk Approach Decentralized algorithms Complexity independent of the size of the network Dependence on the state of other nodes decays with separation distance Taking advantage of a vast number of multiple paths without explicitly listing them. Walking is constrained Packets visit nodes on short (low delay) routes?? The number of packets that visit a node is independent of the particular node
Assumptions and goals Infinite lifetime via renewable energy source Goal is to preserve energy to maximize node throughput while still alive As opposed to finite lifetime where the goal is to preserve energy to prolong existence of the network So will it still work when some kind of power control mechanism is used? For example, ASCENT or SPAN? The network is a grid The approach has a big dependence on graph structure No straightforward way to extend to a random graph Every node know its distance to source and destination
Forwarding Decision based on PDF v u1u1 u2u2 unun ….. p1p1 p2p2 pnpn
Forwarding Decision in Grid vu3u3 u4u4 u1u1 u2u2 p4p4 p1p1 p2p2 p3p3 [i,j]
Notation and Terminology N(v)={u 1,…,u n_v }-neighbors of v п v ={p1,…,p n_v }-pdf over neighbors of v G N =grid of size NxN D(l)-set of nodes on l th diagonal d e [i,j]-distance from node [i,j] to nearest boundary node Expansion region: packets move across diagonals with increase in number of nodes (decrease in pkt/node density) Compression region: opposite of expansion
Graph G N
Expansion & Compression Regions Expansion Region Compression Region
Regular, static graphs (RSG) Network is grid such that each interior node has 4 neighbors Constraints: (c.1) Packet will not go backward (c.2) For nodes on a same diagonal, they must be visited equally often The diagonals close to source and destination only have a few nodes. Does it still make sense to do load balancing?
Sampling pdf for uniform packet distribution A packet at node [i,j] makes a binary decision to move to [i+1,j] or [i,j+1] (c.1) with some probability p (by convention, to node closer to boundary):
RSG Examples (N=4) In the expansion stage, packet is more likely to be forwarded toward the boundary In the compression stage, packet is more likely to be forwarded apart from the boundary All possible paths have the same length
Simulation Results (RSG) A Random walk based on flipping a fair coin. A Random walk based on RSG algorithm
Distributed Computation of Coordinates Each node simply needs to know its own coordinates Find coordinates using Distributed Bellman Ford algorithm (local message exchange) Only good for a grid An initializing process necessary Introduces delay for initial packets
Irregular, static graphs (ISG) Same as RSG but delete a random set of nodes permanently Impossible to achieve exact load balancing Use node labels: (s,d)=(# routes to source, # routes to destination) Can compute labels using recursion: number of routes to a node is the sum of the numbers of routes at the two previous nodes Still a GRID!
Example of Node Labels (N=4)
Forwarding pdf on a best-effort basis The probability that v will forward packet to the node (s1, d1) and (s2, d2) < P ex (s < d): Packet more likely forwarded to node with less source routes P cmp (s>=d): Packet more likely forwarded to node with more destination routes
ISG Examples (N=4) Ideal Case Equivalent to RSG General Case
Simulation Results (ISG) A Random walk based on flipping a fair coin. A Random walk based on ISG algorithm
Dynamic Graphs (DG) Same as ISG but nodes turn ON/OFF independently over When a node changes state: the one-hop neighbors change labels and possibly trigger further label changes More than half of the N*N nodes will be affected Packet may be routed to a dead end due to delayed propagation of labels change, which will result in packet delay or loss. Concerns: Delays in propagating updates Sensitivity to inaccuracies in labels Remember the first assumption?
The Overhead A large number of nodes need to keep a state for each stream An initializing process to compute labels for all nodes Beacon messages exchanged between neighboring nodes: Check if neighbors are alive Exchanging labels State change of a node will affect a large part of the network. The degree of influence depends on the distance between changing node and source/destination.
Simulation Results (DG) A Random walk based on DG algorithm A Random walk based on flipping a fair coin.
More Simulation Results (DG)
Open Issues Extends to general graph? Each node has arbitrary number of neighbors How to trade off between delay and load balancing? The overhead to compute and maintain the labels depends on how many nodes are in the rectangle area Design algorithm under the same principles P ex (s < d): Packet more likely forwarded to node with less source routes P cmp (s>=d): Packet more likely forwarded to node with more destination routes
Summary & Comments A decentralized random walk algorithm to do multipath routing Highly topology dependent: algorithm is hard to extend to generally random graph Mobility not addressed All intermediate nodes have to keep routing state (N*N) with considerable overhead A large number of nodes will be affected when a node switch between ON/OFF. An unrealistic energy model Inappropriate for multiple or dynamic packet streams
GS 3 : Scalable Self-configuration and Self-healing in Wireless Networks Hongwei Zhang, Anish Arora Computer Science Department The Ohio State University 3
Outline Contributions System models and goals GS-3 Algorithms For static network For dynamic network For dynamic and mobile network Problems Conclusion
Contributions An algorithm aiming to organize wireless network into a ideal cellular hexagonal structure Self-healing under perturbations The clustering criteria, Geographic radius, is taken into consideration which many previous works didn’t Scalability in large scale multi-hop wireless networks achieved by divide and conquer strategy
Geographic Radius Cluster Density of wireless network increases Cluster with fixed radius Head Graph Radius is limited by maximum transmit range
Related Work SPAN & ASCENT Kind of clustering protocol (active node is cluster head) No big node For power control purpose, other nodes will sleep What if other nodes don’t sleep? Can GS-3 be used for power control? Many Other Clustering Algorithms Geographic radius or Logical radius Local or Global self-stabilizing Some of them are for energy saving
Cellular Structure
System Models Node Distribution Assumption: there are multiple nodes in each circular area of radius R t (radius tolerance) Every node know its location Wireless Transmission Assumption: Nodes adjust the transmission range Message transmission is always reliable Perturbation Models Dynamics: nodes’ leaving, joins, deaths and state corruptions Mobility: nodes’ movements. Perturbation Frequency: Joins, leaves and death are unanticipated and rare, while node death is predictable The probability that a node moves distance d is proportional to 1/d
Goals Each cell has radius of R±c (c is a function of R t )?? Each node in at most one cell A node in a cell if and only if it’s connected to the big node Number of children for each node in head graph is bounded (≤6) Self-healing in the presence of dynamics and mobility
Definitions
Algorithm for Static Networks No perturbation, no R t gap Always H 0 starts to be a head A head search for new heads in search region For H 0, the search region is the whole 1-band Cell heads in search region are selected by i Nodes not selected as head choose their best heads Will a node in k-band always have a parent from (k-1)-band?
Dynamic Network Perturbations Joining, leaving and death of nodes State corruption R t gap Maintenance Mechanisms Head shift Cell shift Cell abandonment State check
Algorithm for Dynamic Network Head selection same as GS-3 S R t gap No head is selected Nodes become associates of neighboring cells Parent does periodical check Node join Try to find the best head If fails, try to find a potential head from associates If still fail, retries later. If a head is announcing itself, it selects this head as its head Node leaves or dies Intra-cell maintenance: head shift, cell shift, cell abandon Inter-cell maintenance: cell is monitored and recovered by parent and children heads if intra-call operation fails It the parent fails then the children finds other parents Why not R t =R?
Cell Maintenance Cell will be abandoned when distance between IL’ and IL of some neighbor is beyond [√3R-2Rt, √3R+2Rt]. (R t gap!!) Abandoned cell will be restored later if possible The whole head graph will slide as a whole? Traffic load cannot be uniform Density varies across the network Central cell usually will not shift
Algorithm for Dynamic Network (cont’) Associate node always tries to find better head Head node always tries to find better parent State corruption (done by head) Periodical sanity checking (for invariants and fixpoint) on hexagonal relation. If checking fails, ask neighboring heads to check their state If all neighboring heads are valid, its state is corrupted, then node becomes an associate Otherwise, cannot decide???? What if perturbations are not isolated?? Will the algorithm still converge? Need theoretical verification or validation from simulations
Problems Continuous R t gap? (see next page picture) A connectable node is possibly not connected to the big node. So the third goal cannot be achieved How can we guarantee a safe leaving? What’s the transmission range of associate node and head node? Is there difference between them?
Coutinuous R t Gap
Mobile Dynamic Network Small node movements: leaves at old location, joins at new location Big node movements The closest head becomes the proxy of big node The proxy becomes the root of the head graph What if big node moves to a null cell?
Example of Big Node Movement
Problems How to put all these complicated mechanisms together? What if perturbations are not isolated? Will the algorithm still converge?? Control overhead Need to be validated by simulations
Summary & Comments Algorithm tries to organize wireless network into a ideal cellular hexagonal structure with fixed cell radius Try to do self-healing when assuming isolated perturbations Some of the mechanisms are not likely to work A complicated theoretical protocol without clear analysis or validation by simulation result What kind of application can we run on this structure? What’s the overhead to maintain this structure?
Roads of Developing Algorithm Random WalkGS-3 1 st StepRegular Static GridStatic Network without R t gap 2 nd StepIrregular Static GridDynamic Network 3 rd StepDynamic GridMobile Dynamic Network