Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

80
Presenter: Malik Tubaishat Presenter: Malik Tubaishat Department of Computer Science Department of Computer Science University of Missouri - Rolla University of Missouri - Rolla Next Century Challenges: Scalable Coordination Next Century Challenges: Scalable Coordination in Sensor Networks in Sensor Networks Deborah Estrin, Ramesh Govindan, John Heidemann and Satish Kumar In Proceedings of the Fifth Annual International Conference on Mobile Computing and Networks (MobiCOM '99), August 1999, Seattle, Washington. Directed Diffusion: A Scalable and Robust Directed Diffusion: A Scalable and Robust Communication Communication Paradigm for Sensor Networks Paradigm for Sensor Networks Chalermek Intanagonwiwat, Ramesh Govindan and Deborah Estrin In Proceedings of the Sixth Annual International Conference on Mobile Computing and Networking (MobiCOM '00), August 2000, Boston, Massachusetts.

description

Next Century Challenges: Scalable Coordination in Sensor Networks Deborah Estrin, Ramesh Govindan, John Heidemann and Satish Kumar In Proceedings of the Fifth Annual International Conference on Mobile Computing and Networks (MobiCOM '99), August 1999, Seattle, Washington. - PowerPoint PPT Presentation

Transcript of Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

Page 1: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

Presenter: Malik TubaishatPresenter: Malik TubaishatDepartment of Computer ScienceDepartment of Computer Science

University of Missouri - RollaUniversity of Missouri - Rolla

Next Century Challenges: Scalable Coordination in Sensor Next Century Challenges: Scalable Coordination in Sensor NetworksNetworks

Deborah Estrin, Ramesh Govindan, John Heidemann and Satish Kumar

In Proceedings of the Fifth Annual International Conference on Mobile Computing and Networks (MobiCOM '99), August 1999, Seattle, Washington.

Directed Diffusion: A Scalable and Robust CommunicationDirected Diffusion: A Scalable and Robust CommunicationParadigm for Sensor NetworksParadigm for Sensor Networks

Chalermek Intanagonwiwat,  Ramesh Govindan and Deborah Estrin

In Proceedings of the Sixth Annual International Conference on Mobile Computing and Networking (MobiCOM '00), August 2000, Boston, Massachusetts.

Page 2: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

TopicsTopics

Information gathering and processing,

coordinate amongst themselves to achieve a

larger sensing task

Necessary for sensor network coordination

Communication model for describing localized algorithms

Sensor Networks

Localized algorithm

Directed Diffusion

Page 3: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

3

Sensor Networks

Networks that are formed when a set of small Networks that are formed when a set of small

un-tethered sensor devices are deployed in un-tethered sensor devices are deployed in

an ad-hoc fashion cooperate on sensing a an ad-hoc fashion cooperate on sensing a

physical phenomenon. physical phenomenon.

Page 4: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

4

Sensor Network Scenario:Sensor Network Scenario:

Sensors are used to analyze the motion of a tornadoSensors are used to analyze the motion of a tornado

Sensors are deployed in a forest for fire detectionSensors are deployed in a forest for fire detection

Sensors are attached to taxi cabs in a large Sensors are attached to taxi cabs in a large metropolitan area to study the traffic conditions and metropolitan area to study the traffic conditions and plan routes effectivelyplan routes effectively

Page 5: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

5

Sensor Network CharacteristicsSensor Network Characteristics

SensorSensor

ObserverObserver

PhenomenonPhenomenon

Page 6: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

6

SensorSensor

The device that implements the physical sensingThe device that implements the physical sensing

of environmental phenomena and reporting of of environmental phenomena and reporting of measurements (through wireless communication). measurements (through wireless communication). Typically, it consists of five components:Typically, it consists of five components:

1.1. sensing hardware, sensing hardware, 2.2. memory, memory, 3.3. battery, battery, 4.4. embedded processor, embedded processor,

5.5. trans-receiver. trans-receiver.

Page 7: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

7

ObserverObserver

The end user interested in obtaining The end user interested in obtaining information disseminated by the sensor information disseminated by the sensor network about the phenomenon. network about the phenomenon.

The observer may indicate The observer may indicate interests interests (or (or queries) to the network and receive queries) to the network and receive responses to these queries.responses to these queries.

Page 8: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

PhenomenonPhenomenon

The entity of interest to the observer that is being The entity of interest to the observer that is being

sensed and optionally analyzed/filtered by the sensed and optionally analyzed/filtered by the

sensor network. sensor network.

Page 9: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

9

Network Dynamics ModelsNetwork Dynamics Models

A sensor network forms a path between the A sensor network forms a path between the phenomenon and the observerphenomenon and the observer

The goal of the sensor network protocol is to The goal of the sensor network protocol is to create and maintain this path (or multiple paths) create and maintain this path (or multiple paths) under dynamic conditions while meeting the under dynamic conditions while meeting the application requirements of low energy, low application requirements of low energy, low latency, high accuracy, and fault tolerance. latency, high accuracy, and fault tolerance.

Page 10: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

10

Approaches to Construct and Maintain the path Approaches to Construct and Maintain the path between the observer and the phenomenon:between the observer and the phenomenon:

Static Sensor Networks Static Sensor Networks

Mobile Sensor NetworksMobile Sensor Networks

Page 11: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

11

Static Sensor NetworksStatic Sensor Networks In static sensor networks, there is no motion In static sensor networks, there is no motion

among communicating sensors, the observer and among communicating sensors, the observer and the phenomenonthe phenomenon

An elected node relays a summary of the local An elected node relays a summary of the local observations to the observerobservations to the observer

Example:Example: A group of sensors spread for A group of sensors spread for temperature sensingtemperature sensing

Such algorithms extend the lifetime of the sensor Such algorithms extend the lifetime of the sensor network because they trade-off local network because they trade-off local computation for communication. computation for communication.

Page 12: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

12

Mobile Sensor NetworksMobile Sensor Networks

In dynamic sensor networks, either the sensors In dynamic sensor networks, either the sensors themselves, the observer, or the phenomenon are themselves, the observer, or the phenomenon are mobilemobile

Whenever any of the sensors associated with the Whenever any of the sensors associated with the current path from the observer to the phenomenon current path from the observer to the phenomenon moves, the path may failmoves, the path may fail

Either the observer or the concerned sensor must take Either the observer or the concerned sensor must take the initiative to rebuild a new path.the initiative to rebuild a new path.

Page 13: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

13

Building PathsBuilding Paths

During initial setup, the observer can build multiple During initial setup, the observer can build multiple paths between itself and the phenomenon and cache paths between itself and the phenomenon and cache them, choosing the one that is the most beneficial at that them, choosing the one that is the most beneficial at that time as the current pathtime as the current path

If the path fails, another of the cached paths can be usedIf the path fails, another of the cached paths can be used

If all the cached paths are invalid then the observer If all the cached paths are invalid then the observer must rebuild new paths. must rebuild new paths.

Page 14: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

14

Motion of the ComponentsMotion of the Components

Mobile ObserverMobile Observer

Mobile Sensors Mobile Sensors

Mobile PhenomenaMobile Phenomena

Page 15: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

15

Mobile ObserverMobile Observer

For example, a plane might fly over a field For example, a plane might fly over a field

periodically to collect information from a sensor periodically to collect information from a sensor

network. Thus the observer, in the plane, is network. Thus the observer, in the plane, is

moving relative to the sensors and phenomena on moving relative to the sensors and phenomena on

the ground.the ground.

Page 16: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

16

Mobile SensorsMobile Sensors

For example, consider traffic monitoring For example, consider traffic monitoring implemented by attaching sensors to taxisimplemented by attaching sensors to taxis

As the taxis move, the attached sensors As the taxis move, the attached sensors continuously communicate with each other about continuously communicate with each other about their own observations of the traffic conditionstheir own observations of the traffic conditions

Page 17: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

17

Mobile Sensors (Cont.)Mobile Sensors (Cont.)

The overhead of maintaining a globally unique The overhead of maintaining a globally unique sensor ID in a hierarchical fashion like an IP sensor ID in a hierarchical fashion like an IP address is expensive and not neededaddress is expensive and not needed

Instead, these sensors should communicate only Instead, these sensors should communicate only with their neighborswith their neighbors

In such networks, repairing a path can be used so In such networks, repairing a path can be used so that the information about the phenomenon is that the information about the phenomenon is always available to the observer regardless of the always available to the observer regardless of the mobility of the individual sensors.mobility of the individual sensors.

Page 18: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

18

Mobile PhenomenaMobile Phenomena A typical example of this paradigm is sensors deployed for A typical example of this paradigm is sensors deployed for

animal detectionanimal detection

In this case the infrastructure level communication should In this case the infrastructure level communication should be event-drivenbe event-driven

Depending on the density of the phenomena, it will be Depending on the density of the phenomena, it will be inefficient if all the sensor nodes are active all the timeinefficient if all the sensor nodes are active all the time

Only the sensors in the vicinity of the mobile phenomenon Only the sensors in the vicinity of the mobile phenomenon need to be activeneed to be active

The number of active sensors in the vicinity of the The number of active sensors in the vicinity of the phenomenon can be determined by application specific phenomenon can be determined by application specific goals such as accuracy, latency, and energy efficiency.goals such as accuracy, latency, and energy efficiency.

Page 19: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

19

ConcernConcern

The primary concern here is the ability of the The primary concern here is the ability of the sensor network to report the desired level of sensor network to report the desired level of accuracy under latency constraints within an accuracy under latency constraints within an acceptable deployment costacceptable deployment cost

The accuracy is a function of the sensing The accuracy is a function of the sensing technology of the sensors and their distance from technology of the sensors and their distance from the phenomenon. the phenomenon.

Page 20: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

Distributed Sensor NetworksDistributed Sensor Networks

Next Century Challenges: Next Century Challenges:

Scalable Coordination in Sensor NetworksScalable Coordination in Sensor Networks

Page 21: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

TopicsTopics

Information gathering and processing,

coordinate amongst themselves to achieve a

larger sensing task

Necessary for sensor network coordination

Communication model for describing localized algorithms

Sensor Networks

Localized algorithm

Directed Diffusion

Page 22: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

22

ScenarioScenario Several thousand sensors are rapidly deployed (e.g., thrown Several thousand sensors are rapidly deployed (e.g., thrown

from an aircraft) in remote terrainfrom an aircraft) in remote terrain

1.1. The sensors communicate to establish a communication The sensors communicate to establish a communication networknetwork

2.2. Divide the task of mapping and monitoring the terrain Divide the task of mapping and monitoring the terrain amongst themselves in an energy efficient manneramongst themselves in an energy efficient manner

3.3. Adapt their overall sensing accuracy to the remaining Adapt their overall sensing accuracy to the remaining total resourcestotal resources

4.4. Re-organize upon sensor failure.Re-organize upon sensor failure.

Page 23: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

23

Applications: Applications: Environmental AnalysisEnvironmental Analysis

Page 24: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

24

Applications: Contaminant Flow Applications: Contaminant Flow MonitoringMonitoring

Page 25: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

25

Applications: Traffic ControlApplications: Traffic Control

Sensor attached to every Sensor attached to every vehicle.vehicle.

Capable of detecting their Capable of detecting their location, vehicle sizes, location, vehicle sizes, speeds and densities; road speeds and densities; road conditions…conditions…

Alternate routes, estimate trip Alternate routes, estimate trip times…times…

Page 26: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

26

Current NetworksCurrent Networks

InternetInternet Each PC on the Internet has a user who can Each PC on the Internet has a user who can

resolve or at least report all manner of minor resolve or at least report all manner of minor errors and problemserrors and problems

Automated FactoriesAutomated Factories May contain hundreds of largely unsupervised May contain hundreds of largely unsupervised

computerscomputers Deployed with very careful planning and react to Deployed with very careful planning and react to

very few external events very few external events

Page 27: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

27

Differences with Current NetworksDifferences with Current Networks

Sensor Network

Sensors may be inaccessible

extremely difficult to pay special attention to any individual node

Ratio of communicating nodes to users is much greater

They operate and must respond to very dynamic environments

Deployed in a very ad hoc manner (possibly thrown down at random)

Must automatically adapt to changes in environment and requirements

Dynamic Changes

Page 28: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

28

Localized AlgorithmsLocalized Algorithms

LocalizedLocalized algorithms – where sensors only interact with algorithms – where sensors only interact with

other sensors in a restricted vicinity, but nevertheless other sensors in a restricted vicinity, but nevertheless

collectively achieve a desired global objective. collectively achieve a desired global objective.

Objective:Objective:

Electing sensors that form

the longest-baseline for

triangulation for locating

external objects.

Page 29: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

29

Data CentricData Centric

unlike traditional networks, a sensor node may not need an unlike traditional networks, a sensor node may not need an identity (e.g., an address)identity (e.g., an address)

What is the temperature at sensor #27? What is the temperature at sensor #27? (())

Where are nodes whose temperatures recently exceeded Where are nodes whose temperatures recently exceeded 30 degrees? 30 degrees? (())

Applications focus on the Applications focus on the datadata generated by sensors generated by sensors

This approach decouples data from the sensor that This approach decouples data from the sensor that produced itproduced it

This allows for more robust application design: even if This allows for more robust application design: even if sensor #27 dies, the data it generates can be cached in sensor #27 dies, the data it generates can be cached in other (possibly neighboring) sensors for later retrieval.other (possibly neighboring) sensors for later retrieval.

Page 30: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

30

Localized Clustering AlgorithmLocalized Clustering Algorithm

cluster

Cluster-head

Clustering: efficient coordination

Page 31: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

31

Overview:Overview: A A link levellink level procedure is run on each sensor that adjusts procedure is run on each sensor that adjusts

the transmission power and thus the communication the transmission power and thus the communication range to a minimum value that maintains full network range to a minimum value that maintains full network connectivityconnectivity

The clustering algorithm then elects The clustering algorithm then elects cluster-headcluster-head sensors such that each sensor in the multi-hop network sensors such that each sensor in the multi-hop network is associated with a cluster-head sensor as its parentis associated with a cluster-head sensor as its parent

Cluster-headsCluster-heads could could summarizesummarize the object located in the object located in their clusters to provide a less detailed view to distant their clusters to provide a less detailed view to distant nodes.nodes.

Page 32: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

32

Assumption:Assumption: Associate sensors at a particular level with a radiusAssociate sensors at a particular level with a radius The radius specifies the number of physical hops that a The radius specifies the number of physical hops that a

sensor’s advertisement will travelsensor’s advertisement will travel Sensors at a higher level are associated with larger radii Sensors at a higher level are associated with larger radii

that those at lower levelsthat those at lower levels All sensors start off at the lowest level of 0All sensors start off at the lowest level of 0 Each sensor then sends out periodic advertisements to Each sensor then sends out periodic advertisements to

sensors within radius hopssensors within radius hops Advertisement = {Advertisement = { hierarchical level, hierarchical level,

parent ID, parent ID, remaining energyremaining energy }}

Page 33: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

33

Localized Clustering AlgorithmLocalized Clustering Algorithm

L0

L0

L0

L0

L0

Advertisement

hierarchical level, parent ID, remaining energy

Wait time

In order to allow advertisements from various sensors to reach each other

Page 34: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

34

Localized Clustering AlgorithmLocalized Clustering AlgorithmPromotion Timer

• Start promotion timer if no parent.

• Promotion timer: inversely proportional (remaining energy, number of other sensors from whom level 0 advertisements were received)

• If promotion timer expires GO

Page 35: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

35

Localized Clustering AlgorithmLocalized Clustering AlgorithmPromotion Timer

• Start promotion timer if no parent.

• Promotion timer: inversely proportional (remaining energy, number of other sensors from whom level 0 advertisements were received)

• If promotion timer expires GO

L1

L0

L0

L0

L0

Cluster-head

New advertisement

Page 36: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

36

Next:Next: Once a level 0 sensor picks a closest potential parent, it cancels its Once a level 0 sensor picks a closest potential parent, it cancels its

promotion time if running and drops out of the election processpromotion time if running and drops out of the election process

After promotion, the level 1 sensors start a wait time proportional After promotion, the level 1 sensors start a wait time proportional to their new larger radiusto their new larger radius

At the end of the wait period, the level 1 sensor may demote it self At the end of the wait period, the level 1 sensor may demote it self if it does not have any child sensor or if its energy level is less if it does not have any child sensor or if its energy level is less than a certain threshold function of its children’s energythan a certain threshold function of its children’s energy

Any change in network conditions, or in sensor energy level Any change in network conditions, or in sensor energy level results in re-clustering with bounded delayresults in re-clustering with bounded delay

Page 37: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

37

Application of Clustering Algorithm

AimAim: To pinpoint in an energy-efficient manner, the : To pinpoint in an energy-efficient manner, the exact location of objects.exact location of objects.

AccuracyAccuracy: widest possible measurement baseline.: widest possible measurement baseline.

Energy efficiencyEnergy efficiency: fewest number of sensors : fewest number of sensors participating in the participating in the triangulationtriangulation. .

Page 38: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

38

TriangulationTriangulation

•Determine position in space.

•Can specify approx direction of object relative to its own location.

Page 39: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

39

Algorithm of Locating ObjectsAlgorithm of Locating Objects

There exists a simple rule whereby each cluster-head sensor There exists a simple rule whereby each cluster-head sensor locally determine (based on information from neighbor cluster-locally determine (based on information from neighbor cluster-heads alone) whether it should participate in the triangulation heads alone) whether it should participate in the triangulation computation:computation:

1- If all the neighboring cluster-heads of a cluster-head sensor lie 1- If all the neighboring cluster-heads of a cluster-head sensor lie on the same side of a line drawn between the sensor and the on the same side of a line drawn between the sensor and the object, then that cluster-head sensor elects itself as a object, then that cluster-head sensor elects itself as a participant in the computationparticipant in the computation

2- Once elected, these sensors report their readings to an 2- Once elected, these sensors report their readings to an external observerexternal observer

Page 40: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

40

Base-line EstimationBase-line Estimation

Page 41: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

41

Advantages of Cluster-based Advantages of Cluster-based ApproachApproach

Sensor algorithms only use local information.Sensor algorithms only use local information.– generally lower energy consumption in comparison generally lower energy consumption in comparison

to global communication.to global communication.

Robust to link or node failures and network Robust to link or node failures and network partitionspartitions– mechanisms for self-configuration can be simpler.mechanisms for self-configuration can be simpler.

Page 42: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

42

Advantages of Cluster-based Advantages of Cluster-based ApproachApproach

Local communication and per-hop data filteringLocal communication and per-hop data filtering– avoid transmitting large amounts of data over long avoid transmitting large amounts of data over long

distances.distances.– preserving node energy resources.preserving node energy resources.

Node energy resources are better utilizedNode energy resources are better utilized– cluster-heads adapt to changing energy levels.cluster-heads adapt to changing energy levels.

Page 43: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

43

Disadvantage of Cluster-based Disadvantage of Cluster-based ApproachApproach

Non-optimal under certain terrain conditions.Non-optimal under certain terrain conditions.

Page 44: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

44

Several Sensors Electing Several Sensors Electing ThemselvesThemselves

ObstacleObstacle

Allow a cluster-head to switch on some number of child sensors in its cluster to do object location.

Page 45: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

45

Adaptive Fidelity AlgorithmsAdaptive Fidelity Algorithms

AA

YY

ZZ

quality of the answer can be traded against battery lifetime, network bandwidth, or number of active sensors.

Some cluster-head sensors turn themselves off to conserve power.

Page 46: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

Directed Diffusion: A Scalable and Directed Diffusion: A Scalable and Robust CommunicationRobust Communication

Paradigm for Sensor Networks Paradigm for Sensor Networks

Source: http://www.isi.edu/scadds

Page 47: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

TopicsTopics

Information gathering and processing,

coordinate amongst themselves to achieve a

larger sensing task

Necessary for sensor network coordination

Communication model for describing localized algorithms

Sensor Networks

Localized algorithm

Directed Diffusion

Page 48: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

48

Directed DiffusionDirected Diffusion

A communication paradigmA communication paradigm

A new data dissemination paradigmA new data dissemination paradigm

Page 49: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

49

PropertiesProperties

Directed diffusion is data-centric in that all Directed diffusion is data-centric in that all communication is for named data (not nodes id).communication is for named data (not nodes id).

All nodes are application-awareAll nodes are application-awareThis enables diffusion to achieve energy savings by This enables diffusion to achieve energy savings by

selecting empirically good paths and by caching and selecting empirically good paths and by caching and processing data in-networkprocessing data in-network

Interactions are localizedInteractions are localized

Data can be aggregated or processed within the Data can be aggregated or processed within the networknetwork

Network empirically adopts to best distribution path.Network empirically adopts to best distribution path.

Page 50: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

50

Sensor Network Examples:Sensor Network Examples:

How many pedestrians do you observe in How many pedestrians do you observe in the geographical region X?the geographical region X?

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

Page 51: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

51

Examples Cont’dExamples Cont’d

Sensors within the specified region start Sensors within the specified region start collecting informationcollecting information

Once individual nodes detect object movements, Once individual nodes detect object movements, they might collaborate with neighboring nodes to they might collaborate with neighboring nodes to disambiguate object location or movement disambiguate object location or movement directiondirection

One of these nodes might then report the result One of these nodes might then report the result back to the human operator.back to the human operator.

Page 52: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

52

Basic ScenarioBasic Scenario A data consumer express interest in data with certain A data consumer express interest in data with certain

attributesattributes

The interest will be propagated towards producers using The interest will be propagated towards producers using only local interactionsonly local interactions

The interest propagation will leave traces or gradients in The interest propagation will leave traces or gradients in the network along the waythe network along the way

The producers will send data back to the consumers The producers will send data back to the consumers using the established gradientsusing the established gradients

Reinforcement will be used to reduce the number of data Reinforcement will be used to reduce the number of data delivery path for efficient distributiondelivery path for efficient distribution

Page 53: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

53

ImplementationImplementation

Human operator’s query

Transformed into interest

Diffused into region X and Y

Receives interest

Activate sensors to collect information

Query: “Every I ms for the next T seconds, send me a location estimate of any four-legged animal in subregion R”

Descriptions: sensor’s location, intensity of the signal, degree of confidence in its estimation

Page 54: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

54

Directed diffusionDirected diffusion Data is Data is namednamed using attribute-value pairs using attribute-value pairs

A sensing task is disseminated throughout the sensor network as an A sensing task is disseminated throughout the sensor network as an interestinterest for named data for named data

The dissemination sets up The dissemination sets up gradientsgradients within the network designed to within the network designed to “draw” events (i.e., data matching the interest)“draw” events (i.e., data matching the interest)

Events start flowing towards the originators of interests along Events start flowing towards the originators of interests along multiple pathsmultiple paths

The sensor network The sensor network reinforcereinforce one, or small number of these paths one, or small number of these paths

Page 55: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

55

A simplified schematic for directed diffusionA simplified schematic for directed diffusion

interest gradient reinforcement

Page 56: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

56

IssuesIssues

NamingNaming

Interests and GradientsInterests and Gradients

Data PropagationData Propagation

ReinforcementReinforcement

Page 57: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

57

NamingNaming

In directed diffusion, task

descriptions are named by, for

example, a list of attribute-value

that describe a task.

Page 58: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

58

The Animal Tracking TaskThe Animal Tracking Task

type = four-legged animal //detect animal locationtype = four-legged animal //detect animal location

interval = 20 msinterval = 20 ms // send back events every 20 ms // send back events every 20 ms

duration = 10 secondsduration = 10 seconds // … for the next 10 seconds // … for the next 10 seconds

Rect = [-100, 100, 200, 400]Rect = [-100, 100, 200, 400]

// from sensors within rectangle// from sensors within rectangle

The task description specifies an interest for data matching The task description specifies an interest for data matching the attribute.the attribute.

Page 59: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

59

A Sensor that detects an animal might A Sensor that detects an animal might generate the following data:generate the following data:

type = four-legged animaltype = four-legged animal // type of animal seen// type of animal seen

instant = elephantinstant = elephant // instant of this type// instant of this type

location = [125, 220]location = [125, 220] // node location// node location

Intensity = 0.6Intensity = 0.6 // signal amplitude measure// signal amplitude measure

Confidence = 0.85Confidence = 0.85 // confidence in the match// confidence in the match

Timestamp = 01:20:40Timestamp = 01:20:40 // event generation time// event generation time

Page 60: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

60

Interests and GradientsInterests and Gradients

An An interestinterest is usually injected into the network at is usually injected into the network at some (possibly arbitrary) node in the networksome (possibly arbitrary) node in the network

We use the term We use the term sinksink to denote this node to denote this node

The task state is purged from the node after the The task state is purged from the node after the time indicated by the duration attributetime indicated by the duration attribute

Interests

Page 61: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

61

How How InterestsInterests are Diffused Through the are Diffused Through the Sensor Network?Sensor Network?

For each active task, the For each active task, the sinksink periodically periodically broadcastsbroadcasts an interest message to each of its an interest message to each of its neighborsneighbors

Interest is periodically Interest is periodically refreshedrefreshed by the sink by the sink

– The refresh rate is a protocol design parameter The refresh rate is a protocol design parameter that trades off overhead for increased that trades off overhead for increased robustness to lost interests.robustness to lost interests.

Page 62: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

62

Interests - Cont’dInterests - Cont’d

The initial interest takes the following form:The initial interest takes the following form:

type = four-legged animaltype = four-legged animal

interval = 1sinterval = 1s

rect = [-100, 100, 200, 400]rect = [-100, 100, 200, 400]

Timestamp = 01:20:40Timestamp = 01:20:40 // hh:mm:ss// hh:mm:ss

expiresAt = 01:30:40expiresAt = 01:30:40

Page 63: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

63

How interests are processed?How interests are processed?

Every node maintains an interest cacheEvery node maintains an interest cache

When a node receives an interest, it checks to see if When a node receives an interest, it checks to see if

the interest exists in the cachethe interest exists in the cache

If no matching entry exists, the node creates an If no matching entry exists, the node creates an

interest entryinterest entry

This entry has a single gradient towards the neighbor This entry has a single gradient towards the neighbor

from which the interest was received, with the from which the interest was received, with the

specified event data ratespecified event data rate

Page 64: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

64

How interests are processed?How interests are processed?

When a gradient expires, it is removed from its When a gradient expires, it is removed from its

interest entryinterest entry

When all gradients for an interest entry have expired, When all gradients for an interest entry have expired,

the interest entry itself is removed from a cachethe interest entry itself is removed from a cache

All received interests are re-sent. A node may All received interests are re-sent. A node may

suppress a received interest if it recently re-sent a suppress a received interest if it recently re-sent a

matching interest.matching interest.

Page 65: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

65

Interests and GradientsInterests and Gradients

Gradients

Every pair of neighboring nodes establishes a gradient towards each other

Page 66: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

66

Gradients – Cont’dGradients – Cont’d When a node receives an interest from its neighbor, it When a node receives an interest from its neighbor, it

has no way of knowing whether that interest was in has no way of knowing whether that interest was in response to one it sent out earlier, or is an identical response to one it sent out earlier, or is an identical interest from another sink on the “other side” of that interest from another sink on the “other side” of that neighborneighbor

Such two-way gradients can cause a node to receive one Such two-way gradients can cause a node to receive one copy of low data rate events from each of its neighborscopy of low data rate events from each of its neighbors

This technique can enable fast recovery from field paths This technique can enable fast recovery from field paths or reinforcement of empirically better pathsor reinforcement of empirically better paths

A gradient specifies both a data rate and a direction in A gradient specifies both a data rate and a direction in which to send events.which to send events.

Page 67: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

67

Data PropagationData Propagation

A sensor node that detects a target searches its A sensor node that detects a target searches its

interest cache for a matching interest entryinterest cache for a matching interest entry

A matching entry is one whose A matching entry is one whose rectrect encompasses encompasses

the sensor location and the the sensor location and the typetype of the entry of the entry

matches the detected target typematches the detected target type

Page 68: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

68

Event DescriptionEvent Description

The source sends to each neighbor for whom it has a

gradient, an event description every second of the

form:

type = four-legged animal // type of animal seen

instance = elephant // instance of this type

location = [125, 220] // node location

intensity = 0.6 // single amplitude measure

confidence = 0.85 // confidence in the match

timestamp = 01:20:40 // local time when event was

generated

Page 69: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

69

Data Propagation – Cont’dData Propagation – Cont’d

A node that receives a data message from its neighbor A node that receives a data message from its neighbor

attempts to find a matching interest entry in its cacheattempts to find a matching interest entry in its cache

If no matching exist, the data message is silently droppedIf no matching exist, the data message is silently dropped

Otherwise, the received message is added to the data Otherwise, the received message is added to the data

cache and the message is re-sent to the node’s neighborscache and the message is re-sent to the node’s neighbors

Page 70: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

70

Data Propagation – Cont’dData Propagation – Cont’d

By examining its data cache, a node can determine the By examining its data cache, a node can determine the

data rate of received eventsdata rate of received events

To re-send a received data message, a node needs to To re-send a received data message, a node needs to

examine the matching interest entry’s gradient listexamine the matching interest entry’s gradient list

If all gradient have a data rate that is greater than or If all gradient have a data rate that is greater than or

equal to the rate of incoming events, the node may equal to the rate of incoming events, the node may

simply send the received data message to the appropriate simply send the received data message to the appropriate

neighborsneighbors

Page 71: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

71

Reinforcement Reinforcement

The sink initially diffuses an interest for a low event-The sink initially diffuses an interest for a low event-rate notification (1 event per second)rate notification (1 event per second)

Once sources detect a matching target, they send low-Once sources detect a matching target, they send low-rate events, possibly long multiple paths, towards the rate events, possibly long multiple paths, towards the sinksink

After the sink starts receiving these low data rate events, After the sink starts receiving these low data rate events, it it reinforces reinforces one particular neighbor in order to “draw one particular neighbor in order to “draw down” higher quality (higher data rate) events.down” higher quality (higher data rate) events.

Page 72: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

72

Reinforcement – ExampleReinforcement – Example

Reinforce any neighbor from which a node Reinforce any neighbor from which a node receives previously unseen eventreceives previously unseen event

To reinforce this neighbor, the sink re-sends the To reinforce this neighbor, the sink re-sends the original interest message but with a smaller original interest message but with a smaller interval (higher data rate)interval (higher data rate)

Page 73: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

73

Example – cont’dExample – cont’d

Type = four-legged animalType = four-legged animal

Interval = 10msInterval = 10ms

Rect = [-100, 200, 200, 400]Rect = [-100, 200, 200, 400]

Timestamp = 01:22:35Timestamp = 01:22:35

expireAt = 01:30:40expireAt = 01:30:40

When the neighboring node receives this interest, it When the neighboring node receives this interest, it

will reinforce at least one neighbor.will reinforce at least one neighbor.

Page 74: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

74

Reinforcement – cont’dReinforcement – cont’d

The local rule we described, then, selects an empirically low delay path

Whenever one path delivers an event faster than others, the sink attempt to use this path to draw down high quality data

Page 75: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

75

Basic Directed DiffusionBasic Directed DiffusionSetting up gradients

Source

Sink

Interest = Interrogation

Gradient = Who is interestedSource:

http://www.isi.edu/scadds

Page 76: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

Basic Directed DiffusionBasic Directed Diffusion

Source

Sink

Sending data and Reinforcing the best path

Low rate event Reinforcement = Increased interest

Source: http://www.isi.edu/scadds

Page 77: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

Directed Diffusion and DynamicsDirected Diffusion and Dynamics

Recoveringfrom node failure

Source

Sink

Low rate event

High rate eventReinforcement

Source: http://www.isi.edu/scadds

Page 78: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

Directed Diffusion and DynamicsDirected Diffusion and Dynamics

Source

Sink

Stable path

Low rate event

High rate event

Source: http://www.isi.edu/scadds

Page 79: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

79

ConclusionConclusion We have described directed diffusion paradigm for We have described directed diffusion paradigm for

designing distributed sensing algorithmdesigning distributed sensing algorithm

Directed diffusion has the potential for significant Directed diffusion has the potential for significant energy efficiencyenergy efficiency

Directed diffusion are stable under the ranges of network Directed diffusion are stable under the ranges of network dynamicsdynamics

Directed diffusion has some novel featuresDirected diffusion has some novel features– Data-centric disseminationData-centric dissemination– Reinforcement-based adaptation to the empirically best pathReinforcement-based adaptation to the empirically best path– In-network data aggregation and cachingIn-network data aggregation and caching

Page 80: Presenter: Malik Tubaishat Department of Computer Science University of Missouri - Rolla

80

ThanksThanks