1-1 CMPE 259 Sensor Networks Katia Obraczka Winter 2005 Routing

Preview:

Citation preview

1-1

CMPE 259 Sensor Networks

Katia Obraczka

Winter 2005

Routing

1-2

Announcements

1-3

Transport protocols: summary

1-4

Pump Slow Fetch Quickly PSFQPump Slow Fetch Quickly PSFQ

For sink-to-source communication (e.g. network reprogramming)

Reliability via retransmissions

Sequence-driven loss detection

C.Y. Wan, A.T. Campbell, and L. Krishnamurthy. PSFQ: A Reliable Transport Protocol for Wireless Sensor Networks. WSNA'02, September 28, 2002, Atlanta, Georgia, USA.

1-5

RMSTRMST

End-to-end or hop-by-hop repair (the latter is generally better)

Suggests that repair could be done at either MAC layer (ARQ retransmissions) or Transport Layer (requests based on fragment numbers etc.)

Timer-driven loss detection and local data caches Fits with the Directed Diffusion API

F. Stann and J. Heidemann. RMST: Reliable Data Transport in Sensor Networks. IEEE SNPA'03.

1-6

ESRTESRT Aim for overall quality of service rather than node-to-node

reliability

Sankarasubramaniam, Y., Akan, O.B., and Akyildiz, I.F., "ESRT: Event-to-Sink Reliable Transport in Wireless Sensor Networks ", In Proc. ACM MobiHoc`03

1-7

CODACODA

Sankarasubramaniam, Y., Akan, O.B., and Akyildiz, I.F., "ESRT: Event-to-Sink Reliable Transport in Wireless Sensor Networks ", In Proc. ACM MobiHoc`03

Receiver based congestion detection Open loop hop-by-hop backpressure Closed-Loop multi-source regulation

1-8

Summarizing Transport IssuesSummarizing Transport Issues Because of harsh conditions and severe

constraints, it may be better to implement reliability in a hop-by-hop rather than end-to-end manner at either the MAC or transport layer

For energy efficiency, it is best to avoid congestion entirely, or have packet losses occur close to the source. Back pressure is a useful technique.

Where possible, scheduled solutions are preferable.

s

1-9

Routing

1-10

Issues/challengesIssues/challenges

Difficult to pay special attention to any individual node: Collecting information within the specified

region.

Sensors may be inaccessible: Embedded in physical structures. Thrown into inhospitable terrain.

1-11

More issues/challenges…More issues/challenges…

Topological issues: Arbitrarily large scale. No fixed infrastructure. Frequent topology changes

• Battery exhaustion.• Accidents.• New nodes are added.

1-12

More issues/challenges…More issues/challenges…

User and environmental demands also contribute to dynamics: Nodes move. Objects move.

Data-centric and application-centric view: Location. Time. Type of sensor. Range of values…

1-13

More issues/challenges…

Not node-to-node packet switching, but node-to-node data propagation.

High level tasks are needed: At what speed and in what direction was that

elephant traveling? Is it the time to order more inventory?

1-14

Challenges

Energy-limited nodes Computation

Aggregate data Suppress redundant routing information

Communication Bandwidth-limited Energy-intensive

Goal: Minimize energy dissipation

1-15

Challenges

Scalability: ad-hoc deployment in large scale Fully distributed w/o global knowledge. Large numbers of sources and sinks.

Robustness: unexpected sensor node failures

Dynamics: no a-priori knowledge Sink mobility. Target mobility.

1-16

Directed Diffusion

A Scalable and Robust Communication Paradigm for Sensor Networks

C. IntanagonwiwatR. Govindan

D. Estrin

1-17

Application Example: Remote Surveillance

““ Give me periodic report Give me periodic reportss about animal lo about animal lo cation in region A every t seconds” cation in region A every t seconds”..

Tell me in what direction that vehicle in Tell me in what direction that vehicle in region Y is moving?region Y is moving?

1-18

Basic Idea

In-network data processing (e.g., aggregation, caching).

Distributed algorithms using localized interactions.

Application-aware communication primitives. Expressed in terms of named data.

1-19

Elements of Directed Diffusion

Naming Data is named using attribute-value pairs.

Interests A node requests data by sending interests for named

data .

Gradients Gradients is set up within the network designed to

“draw” events, i.e. data matching the interest.

Reinforcement Sink reinforces particular neighbors to draw higher

quality ( higher data rate) events.

1-20

NamingNaming

Content based naming. Tasks are named by a list of attribute – value pairs. Task description specifies an interest for data

matching the attributes. Animal tracking:

Interest ( Task ) DescriptionType = four-legged animalInterval = 20 msDuration = 1 minuteLocation = [-100, -100; 200, 400]

RequestRequest

Node dataType =four-legged animalInstance = elephantLocation = [125, 220]Confidence = 0.85Time = 02:10:35

ReplyReply

1-21

Interest

The sink periodically broadcasts interest messages to each of its neighbors.

Every node maintains an interest cache. Each item corresponds to a distinct interest. No information about the sink. Interest aggregation : identical type, completely

overlap rectangle attributes. Each entry in the cache has several fields

Timestamp: last received matching interest. Several gradients: data rate, duration, direction.

1-22

Source

Sink

Interest = Interrogation

Gradient = Who is interested(data rate , duration, direction)

Setting Up Gradient

Neighbor’s choices :1. Flooding 2. Geographic routing3. Cache data to direct interests

1-23

Data Propagation

Sensor node computes the highest requested event rate among all its outgoing gradients.

When a node receives data: Find a matching interest entry in its cache

• Examine the gradient list, send out data by rate.

Cache keeps track of recent seen data items (loop prevention).

Data message is unicast individually to the relevant neighbors.

1-24

Source

Sink

Reinforcing the Best Path

Low rate event Reinforcement = Increased interest

The neighbor reinforces a path:1. At least one neighbor2. Choose the one from whom it first received the latest event (low delay)3. Choose all neighbors from which new events were recently received

1-25

Local Behavior Choices

For propagating interests In the example, floodIn the example, flood More sophisticated behaviors possible: e.g.

based on cached information, GPS

For setting up gradients data-rate gradients are set up towards data-rate gradients are set up towards

neighbors who send an interestneighbors who send an interest.. Others possible: probabilistic

gradients, energy gradients, etc.

1-26

Local Behavior Choices

For data transmission Multi-path delivery with selective quality along Multi-path delivery with selective quality along

different pathsdifferent paths Probabilistic forwarding Single-path delivery, etc.

For reinforcement RReinforce paths based on observed delayseinforce paths based on observed delays Losses, variances etc.

1-27

Initial simulation study of diffusion

Key metric Average Dissipated Energy per event delivered

• indicates energy efficiency and network lifetime

Compare diffusiondiffusion to FFloodinglooding Centrally computed tree (omniscient multicastomniscient multicast)

1-28

Diffusion Simulation Details

Simulator: -2ns-2ns - Network Size: 50 250 Nodes Transmission Range: 40m Constant Density: 1.95x10-3 nnnnnnn2 nnnn(9 .8

s in radius) MAC: Modified Contention-based MAC Energy Model: Mimic a realistic sensor radio [Pottie

2000] nn nnnnnnnnnn nnn 660 , 3 9 5 ,

35mw in idle

1-29

Diffusion Simulation

Surveillance application 5 sources are randomly selected within a 70m x

nnnnnn nn nnn nnnnn70 5 sinks are randomly selected across the field nnnn nn n nnnnnnnnnn2/ nnnnnnnnnn0.02/ Event size: 64 bytes 36Interestsize: byt es All sources send the same location estimate for b All sources send the same location estimate for b

ase experiments ase experiments

1-30

Average Dissipated Energy

0

0.002

0.004

0.006

0.008

0.01

0.012

0.014

0.016

0.018

0 50 100 150 200 250 300

Ave

rag

e D

issi

pat

ed E

ner

gy

(Jo

ule

s/N

od

e/R

ecei

ved

Eve

nt)

Network Size

DiffusionDiffusion

Omniscient MulticastOmniscient Multicast

FloodingFlooding

Diffusion can outperform flooding and even omniscient multicast.Diffusion can outperform flooding and even omniscient multicast.(suppress duplicate location estimates) (suppress duplicate location estimates)

1-31

Conclusions

Can leverage data Can leverage data processing/aggregation processing/aggregation inside the network.inside the network.

Achieve desired global behavior through localized interactions.

Empirically adapt to observed environment.

1-32

Energy-efficient multipath routing

1-33

Energy-efficient multipath routing Based on directed diffusion. In directed diffusion:

Sink broadcasts interest. Sensors periodically (low rate) sends back

data (e.g., event detection reports). Sink sends reinforcement on preferred path. Reverse path is established. Upon missing reports, sink re-broadcasts

interest and sink reinforces.

1-34

Problem?

Periodic flooding of interests and events in the presence of failures.

Solution?

1-35

Solution: multiple paths

Multipath routing: Load balancing. Reliable delivery (by sending duplicates). Robustness.

1-36

Observations

Primary path: “best” path. Data sent at lower rate on alternate

paths. Upon failure on primary path,

reinforcement on alternate path. If all altremate paths fail, flooding for

path re-establishment. Overhead: alternate path maintenance. Resilience measured as how often path

re-establishment is needed.

1-37

Approach

Disjoint versus “braided” paths. How to build multiple paths with local

information only?

1-38

Localized disjoint multipaths

Sink establishes primary path. Sink selects “next best” neighbor “A”. A propagates “alternate path”

reinforcement to its “best” neighbor “B”.

If B is already on a path between sink and source, B sends back a “negative reinforcement”.

Access to local information only may lead to longer paths.

1-39

Braided multipath

Partially disjoint. For each node on primary path, find

best path from source to sink that does not contain that node.

Paths in the braid expend equivalent energy.

Reinforcement to “best” node and alternate reinforcement to “next best” node.

1-40

Evaluation

Energy efficiency. Overhead.

Resilience to failures. Isolated versus patterned failures.

1-41

Results

Braided multipaths are more energy efficient. Especially at lower densities.

Disjoint multipaths have better resilience to patterned losses.

Braided multipaths exhibit better resilience to isolated failures.

1-42

Geographic routing

Deliver packets to nodes or regions based on their geographic location.

Typically, nodes know their position and immediate neighbors.

1-43

Basic Geographic ForwardingBasic Geographic Forwarding

B. Karp and H.T. Kung. GPSR: Greedy Perimeter stateless Routing for Wireless Networks. MobiCom2000.

Greedy: send packet to neighbor that is closest to destination

Can get stuck in voids. GPSR proposes a perimeter routing mode to avoid this.

1-44

Trajectory Based ForwardingTrajectory Based Forwarding

D. Niculescu and B. Nath, Trajectory Based Forwarding and Its Applications. MOBICOM 2003.

Pre-encode arbitrary geographic trajectory; packet goes through nodes closest to this trajectory.

Particularly well suited for large networks with high density.

1-45

Geographic routing without location information (Rao et al.) Apply geographic routing when (most)

nodes do not have position information. Approach: “virtual coordinates”.

Use local connectivity information.

1-46

Assumptions

Nodes know their own coordinates. Nodes know coordinates of nodes in the

2-hop neighborhood.

1-47

Routing

Greedy: forward to neighbor closest to destination.

When packet arrived to destination, stop.

If stuck, do expanding ring search until closer node found.

1-48

Coordinate construction

A node’s coordinates is the average of its neighbors’ coordinates.

Finding perimeter nodes’ coordinates. Beacon nodes flood “Hello” message. Perimeter nodes discover distance in hops

to other perimeter nodes. Perimeter nodes broadcast their perimeter

vector. Perimeter nodes use triangulation to find

coordinates of all perimeter nodes.

1-49

Coordinate construction (cont’d) Deciding whether a node is on

perimeter: Use distance to beacon nodes. If node is the farthest away from beacon

node compared to all its 2-hop neighbors, then it’s on the perimeter.

1-50

Evaluation

Comparison between greedy routing using real- versus virtual coordinates.

Metrics: Success rate: number packets reaching

destination using purely greedy routing. Average path length. Routing load. Overhead.

1-51

Results

Scalability. Network size. Density.

Mobility. Losses. Obstacles. Trade-offs.

Recommended