Exploration of Path Space using Sensor Network Geometry

Preview:

DESCRIPTION

Exploration of Path Space using Sensor Network Geometry. Ruirui Jiang, Xiaomeng Ban, Mayank Goswami , Wei Zeng , Jie Gao , Xianfeng David Gu Stony Brook University. Prob1: Scalable Multipath Routing. Deliver data using multiple (disjoint) paths Improving throughput Lower delay - PowerPoint PPT Presentation

Citation preview

Exploration of Path Space using Sensor Network Geometry

Ruirui Jiang, Xiaomeng Ban, Mayank Goswami, Wei Zeng, Jie Gao, Xianfeng David Gu

Stony Brook University

Prob1: Scalable Multipath Routing

• Deliver data using multiple (disjoint) paths– Improving throughput– Lower delay– Improving data security• Encode data and send different segments along

different paths

• Q: How to generate multiple paths?

s

t

k Node Disjoint Paths

• Centralized solutions– Flow algorithm, node disjoint paths, O(n3)

• Distributed solutions– Only exist for 2 node disjoint paths.– Relaxation: braided multi-paths.– High discovery costs.

Prob2: Fast Recovery from Failures

• Sudden node or link failure– Link quality fluctuates.– Unpredictable inference, e.g., hidden terminal

problem– 802.15.4 networks interfering with WiFi [MT 08]– Jamming attacks

• Q: how to quickly generate an alternative path?

R. Musaloiu-E, A. Terzis, Minimising the effect of WiFi interference in 802.15.4 wireless sensor networks, International Journal of Sensor Networks, 3(1):43-54, 2008.

Prior Work

• IP fast re-routing schemes– Avoid loop?

• Path splicing [SIGCOMM 08]– Perturb edge weights– Compute multiple shortest path trees for each

root– Switch to another SPT under in-transit failures– Storage requirement is too high for sensornet.

Motiwala, Elmore, Feamster, Vempala, Path splicing, SIGCOMM Comput. Commun,. Rev., 2008

Understanding of the Path Space

• Where are the paths connecting source and destination?

• How to quickly find them?• How to minimize storage/computation costs?

• Multipath routing using greedy routing?– Find an embedding, route to the neighbor closer

to destination.

Our Solution: Using Circular Domains• Our previous work: deform a network into

circular domain [IPSN’09].• Greedy routing guarantees delivery.

Circular Domains are not Unique• Embedding into a circular domain is not unique,

they differ by a Möbius transformation.

8

Main Idea: Use Different Metrics

• Find multiple paths:– Embed to a circular domain D.– Apply Mӧbius transformation f on D: f(D)– Find greedy routing in f(D).– Goal: find disjoint paths.

• Recover from link failure:– Apply a Mӧbius transformation f on D: f(D)– Goal: greedy routing on f(D) does not use the

broken link.

Outline

1. Mӧbius transformation2. Explain the idea in a continuous domain– Theoretical guarantee

3. Implementation issues on a discrete network4. Simulation results

11

Möbius Transform

• Möbius transform– Conformal: maps circles to circles– Four basic elements: translation, dilation, rotation,

inversions.

a, b, c, d are 4 complex numbers, ad ≠ bc

Outline

1. Mӧbius transformation2. Explain the idea in a continuous domain– Theoretical guarantee

3. Implementation issues on a discrete network4. Simulation results

Greedy Paths in Different Circular Domains

• Generate disjoint paths using different transformations

s ts

tf1

Greedy Paths in Different Circular Domains

• Generate disjoint paths using different transformations

s t

s

t

f2

Isn’t This Just Routing along Arcs?

• One can greedily route along an arc. [NN, 03]– But there is no guarantee of delivery!

• Our method follows an arc, which is actually the greedy route in another circular domain.– Delivery is always guaranteed.

Nath and Niculescu, Routing on a curve, SIGCOMM Comput. Commun. Rev., 2003.

Networks with Holes

• When a circular arc route hits a hole, it is diverted along the boundary– Two paths can converge on the boundary

s t

Finding Disjoint Paths

• Each hole defines two angle ranges• Inside each range there can only be one path• Goal: find a max number of paths.

Finding Disjoint Paths

– Project all intervals on a unit circle– Order the endpoints angularly.– Adjacent endpoints define canonical segments.– Remove canonical segments NOT covered by any

range

Finding Disjoint Paths

• Greedy algorithm:– For each segment as the starting segment, – Choose it, move clockwise.– Choose the first one not in conflict– Ex: choose 5.

Finding Disjoint Paths

• Greedy algorithm:– Different starting segments give different solns.– Take the solution with maximum # segments

• Theorem: GREEDY is optimal.

Outline

1. Mӧbius transformation2. Explain the idea in a continuous domain– Theoretical guarantee

3. Implementation issues on a discrete network4. Simulation results

Preprocessing Into a Circular Domain

• Embed the network into a circular domain– Follows [IPSN’09]– Compute a triangulation locally– Non-triangular faces are “holes”– Nodes locally compute curvature– Modify edge lengths iteratively – When converge, obtain the requested embedding

• Distributed, gossip-style algorithm.

How to compute a Mӧbius Transformation?

• Uniquely determined by mapping 3 points z1, z2, z3, to w1, w2, w3, respectively.

• I.e., mapping one circle to another circle

How to compute a Mӧbius Transformation?

• New metric can be locally determined.

s ts

tf1

p

p

Generate Multiple Paths

• No holes: – Evenly spread the tangent vectors of the paths at

source and dest.– Heuristic– Bounded degree.

• With holes: – Know: locations & sizes of holes– Very limited global info

s t

How to Apply the Mӧbius Transformation in Routing?

• A packet carries the four parameters a, b, c, d as a matrix.

• Composition of 2 transformations is simply matrix multiplication

Recovery from Temporary Link Failure

• We compute a Möbius transformation– S.t. the broken link is NOT on the greedy path. – Make big jumps

27

Recovery from Temporary Link Failure

• Map the “live” neighbor p to be on the straight path – On-demand recovery of in-transit failures.– Möbius transform attached to packet.

28

s t s

tf1

p p

Simulation Results

• Relatively dense network: – 1K nodes, avg deg ≈ 20.

• Multi-path routing– Compare with centralized flow algorithm.– Vary parameter m: # paths we seek.– Check # disjoint paths we got– Compare with the OPT.

Multipath Routing Results

Max # disjoint paths

Simulation Results for Recovery from Failures

• Regional failure– Inside a geometric region: prob[failure] = p1.

– Outside a geometric region: prob[failure] = p2.

– p1> p2.

• Compare with– Greedy routing with geographical coordinates– Greedy routing in a circular domain– Recovery with Möbius transformation– Recovery with random walk.

Simulation Results for Recovery from Failures

• Circular + Möbius > Circular + RandWalk > Circular >> Geographical + RandWalk ≈ Geographical

p1=0.8 p2=0

Random walk makes local, random steps and is likely trapped inside the failure region

Simulation Results for Recovery from Failures

• Success rate: Circular + Möbius > Circular + RandWalk > Circular

Circular + Möbius

Circular + RandWalk Circular p1 p2

Consistently better by making big jumps

Conclusion and Future Work

• Regulating a sensor network shape– Helps to explore path space with limited global

info

• Open problem: bridging the gap– Provable results in the continuous space– Heuristic methods in the discrete network

Questions & Comments?

Recommended