vivek kinra cs-wmu1 overview of directed diffusion professor: -dr ajay gupta presented by: -vivek...
Post on 18-Dec-2015
219 views
TRANSCRIPT
vivek kinra CS-WMU 1
Overview of Directed Overview of Directed DiffusionDiffusion
Professor: -Dr Ajay GuptaProfessor: -Dr Ajay Gupta
Presented By: -Vivek KinraPresented By: -Vivek Kinra
CS691 Spring2003CS691 Spring2003
vivek kinra CS-WMU 2
Note: -Various slides of this presentation are created with the help of Note: -Various slides of this presentation are created with the help of presentation slides of UCLA ,USC and various other sourcespresentation slides of UCLA ,USC and various other sources
vivek kinra CS-WMU 3
HistoryHistory
Research started to investigate the Research started to investigate the design of localized algorithm using design of localized algorithm using the Directed Diffusion modelthe Directed Diffusion model
The idea was developed in the The idea was developed in the context of a DARPA study by D.Estrincontext of a DARPA study by D.Estrin
Example of posing query for Example of posing query for tanks/vehicles……..tanks/vehicles……..
vivek kinra CS-WMU 4
Design FeaturesDesign Features
Data centric: -Routing is based on Data centric: -Routing is based on data contained in sensor node and data contained in sensor node and may not need IDmay not need ID
Application focus on the data Application focus on the data generated by sensors. generated by sensors.
Data is named by attributes and Data is named by attributes and applications request data matching applications request data matching certain attribute values.certain attribute values.
Motivated by robustness, scaling and Motivated by robustness, scaling and energy efficiencyenergy efficiency
vivek kinra CS-WMU 5
Directed DiffusionDirected Diffusion
Developed by ISI/USC and UCLA is a Developed by ISI/USC and UCLA is a novel network protocol built for info novel network protocol built for info retrieval and data dissemination.retrieval and data dissemination.
Data generated by nodes => Data generated by nodes => attributes(A1)attributes(A1)
Sinks/nodes request data=>Interest Sinks/nodes request data=>Interest into n/winto n/w
If A1 == Interest then(gradient setup If A1 == Interest then(gradient setup in n/w) (Pedestrians)in n/w) (Pedestrians)
vivek kinra CS-WMU 6
contdcontd
Data pulled towards sinks Data pulled towards sinks =>receiver Initiated routing protocol=>receiver Initiated routing protocol
Example target trackingExample target tracking Intermediate node might aggregate Intermediate node might aggregate
datadata Since all nodes in directed diffusion Since all nodes in directed diffusion
are application aware so It is are application aware so It is completly application oriented.completly application oriented.
vivek kinra CS-WMU 7
contdcontd
It is significantly different from IP It is significantly different from IP style communicationstyle communication
Not infeasible with IP or Ad-hoc Not infeasible with IP or Ad-hoc routingrouting
Imp Feature: - interest, data Imp Feature: - interest, data aggregation and propagation are aggregation and propagation are determined by localized interactiondetermined by localized interaction
vivek kinra CS-WMU 8
Expected Architecture of Sensor Expected Architecture of Sensor Network Network
Required capabilities of sensor node: Required capabilities of sensor node: --
A Match box sized form factorA Match box sized form factor Battery power source Battery power source Power conserving processor clocked Power conserving processor clocked
at several hundred Mhzat several hundred Mhz MemoryMemory Radio modem Radio modem
vivek kinra CS-WMU 9
contdcontd
Energy efficient MAC layerEnergy efficient MAC layer Can have more than 1 or more Can have more than 1 or more
sensors e.g seismic geophones, sensors e.g seismic geophones, infrared dipoles etcinfrared dipoles etc
The Atod conversion on such system The Atod conversion on such system produce 70ksamples/sec and 12 bit produce 70ksamples/sec and 12 bit resolutionresolution
vivek kinra CS-WMU 10
For power issue, common signal For power issue, common signal processing functions offloaded to low processing functions offloaded to low power ASICpower ASIC
Processor woke up only when event of Processor woke up only when event of InterestInterest
A Sensor Node have a GPS receiverA Sensor Node have a GPS receiver The adv. Of these sensors is with very The adv. Of these sensors is with very
cheap in cost they obtain high SNR cheap in cost they obtain high SNR (attenuate with distance). (attenuate with distance).
Also can be deployed in huge amountAlso can be deployed in huge amount
vivek kinra CS-WMU 11
Energy concernEnergy concern
Sensors Deployment falls in two Sensors Deployment falls in two ways: -ways: -
Large complex system deployed far.Large complex system deployed far. Short range hop-hop communication Short range hop-hop communication
is preferred over direct long range.is preferred over direct long range. Local computation to reduce data Local computation to reduce data
before transmission before transmission
vivek kinra CS-WMU 12
ContdContd
In this organization, individual nodes In this organization, individual nodes reduce the sampled waveform reduce the sampled waveform generated by target (tank etc) into a generated by target (tank etc) into a relatively coarse grained “event” relatively coarse grained “event” description.description.
Description =>”codebook value” Description =>”codebook value” (event code)(event code)
Code->a timestamp,……Code->a timestamp,…… Nodes exchanged this event codeNodes exchanged this event code
vivek kinra CS-WMU 13
Method descriptionMethod description
Task conveyed to sensor N/WTask conveyed to sensor N/W Nodes tasks it’s sensorsNodes tasks it’s sensors Matches sampled wave form against Matches sampled wave form against
locally stored librarylocally stored library Sensors in region may coordinate to Sensors in region may coordinate to
pick best estimate.pick best estimate. Packet:-Attributes (type, amplitude, Packet:-Attributes (type, amplitude,
Intensity, region, time stamp……)Intensity, region, time stamp……)
vivek kinra CS-WMU 14
NamingNaming Given Set of Tasks supported by sensor Given Set of Tasks supported by sensor
network selecting a naming scheme is network selecting a naming scheme is first step in designing sensor networks.first step in designing sensor networks.
Basically list of attribute value pairs.Basically list of attribute value pairs. E.g. For tracking animal its attributes E.g. For tracking animal its attributes
should describe tasks like, type of should describe tasks like, type of animal,animal,
geographic location to track, interval geographic location to track, interval for sending updates, duration for which for sending updates, duration for which it was recorded (event occurrence it was recorded (event occurrence time)time)
vivek kinra CS-WMU 15
Data sent in response to Data sent in response to InterestInterest
Type = four legged animal Type = four legged animal Instance = rabbit//instance of typeInstance = rabbit//instance of type location = [125,220]/node locationlocation = [125,220]/node location Intensity = 0.6/signal amplitudeIntensity = 0.6/signal amplitude Confidence = 0.85//confi.. in matchConfidence = 0.85//confi.. in match Timestamp = 01:20:40//event Timestamp = 01:20:40//event
generation timegeneration time
vivek kinra CS-WMU 16
Sink periodically broadcasts an interest Sink periodically broadcasts an interest message to each of its neighbors.message to each of its neighbors.
Initial interest specifies a low data rate Initial interest specifies a low data rate (e.g 1 event/sec)(e.g 1 event/sec)
Interest are diff based on type, rect or Interest are diff based on type, rect or intervalinterval
Every node maintains a interest cache.Every node maintains a interest cache. Interest entries in cache do not contain Interest entries in cache do not contain
info about sink info about sink
vivek kinra CS-WMU 17
Interest entryInterest entry
Time stamp (last received matching)Time stamp (last received matching) Gradient field (up to 1/neighbor)Gradient field (up to 1/neighbor) G.F => data rate field (requested by G.F => data rate field (requested by
neighbor)=>interval attributeneighbor)=>interval attribute Duration=timestamp – expiresATDuration=timestamp – expiresAT No EntryNo Entry No gradientNo gradient
vivek kinra CS-WMU 18
Event
Sink
Have u seen any four leg animal???
QUERY DIFFUSED IN TO INTEREST WHICH IS LIST OF ATTRIBUTE VALUE PAIRS
Interest Propagation (Flooding)
interests
vivek kinra CS-WMU 19
YES I HAVE SEEN ONE….
INTIAL GRADIENTS SETUP(VALUE+DIRECTION)Two-way Gradient setup
vivek kinra CS-WMU 20
Gradient setup/reinforced pathGradient setup/reinforced path
Sink/Interest
source
I-PropagationInitial grad.. setup
Data …..reinforced path
vivek kinra CS-WMU 21
Interest/gradientInterest/gradient
Task ={type,rect,a duration of 10 Task ={type,rect,a duration of 10 min}is instantiated at particular nodemin}is instantiated at particular node
Interval :- event data rateInterval :- event data rate Sink periodically broadcast interest Sink periodically broadcast interest
msg (& refresh interest) to neighbors.msg (& refresh interest) to neighbors. Initial Interest :-{rect,duration Initial Interest :-{rect,duration
attributes,larger interval attribute}attributes,larger interval attribute} Gradient expirationGradient expiration
vivek kinra CS-WMU 22
DATA DELIVERY THROUGH REINFORCED PATH
SINGLE PATH DELIVERY (CAN BE MULTIPATH ALSO)
vivek kinra CS-WMU 23
IN CASE OF NODE FAILURE USE ALTERNATIVE PATHS
vivek kinra CS-WMU 24
ReinforcementReinforcement
When to reinforce ?(quality/delay When to reinforce ?(quality/delay matrices can be chosen)matrices can be chosen)
Whom to reinforce ?Whom to reinforce ?
How many to reinforce?How many to reinforce?
When to send negative When to send negative reinforcementreinforcement
vivek kinra CS-WMU 25
When??When??
Sink initially diffuses a interest for a Sink initially diffuses a interest for a low event-rate.low event-rate.
Once sources starts detect a Once sources starts detect a matching target they send low rate matching target they send low rate events.events.
After the sink starts receiving these After the sink starts receiving these low data rate events it low data rate events it reinforcesreinforces one particular neighbor to draw down one particular neighbor to draw down higher quality.higher quality.
vivek kinra CS-WMU 26
Whom??Whom??
To reinforce this neighbor, the sink To reinforce this neighbor, the sink re-sends the original interest re-sends the original interest message but with smaller interval message but with smaller interval (higher data rate).(higher data rate).
Two approaches for reinforceTwo approaches for reinforce Incremental approach:- Add min # of Incremental approach:- Add min # of
links to existing treelinks to existing tree Select links so that min energy is used Select links so that min energy is used
vivek kinra CS-WMU 27
How ManyHow Many
Node must reinforce at least one Node must reinforce at least one neighborneighbor
vivek kinra CS-WMU 28
Negative ReinforcementNegative Reinforcement
Earlier used A but now B is betterEarlier used A but now B is better One way :- time out all high data One way :- time out all high data
gradients in the n/wgradients in the n/w Sink would periodically reinforce B Sink would periodically reinforce B
and cease A that will degrade the and cease A that will degrade the path to A to lower data ratepath to A to lower data rate
Other way-:Degrade the path to A by Other way-:Degrade the path to A by re-sending the interest with low data re-sending the interest with low data raterate
vivek kinra CS-WMU 29
Whether to negatively reinforce or Whether to negatively reinforce or notnot
N.R those neighbor from which no N.R those neighbor from which no new event have been received.new event have been received.
Or few events are coming.Or few events are coming. Significant experiments are required Significant experiments are required
before deciding which local rule before deciding which local rule achieve an energy efficient global achieve an energy efficient global behaviour behaviour
vivek kinra CS-WMU 30
Issues of ConcernIssues of Concern
Ad hoc, self organizing, adaptive Ad hoc, self organizing, adaptive systems with predictable behaviorsystems with predictable behavior
Collaborative processing, data fusion, Collaborative processing, data fusion, multiple sensory modalities multiple sensory modalities
Data analysis/mining Data analysis/mining
vivek kinra CS-WMU 31
Issues yet to be resolvedIssues yet to be resolved
How to handle congested network?How to handle congested network? Semantics for gradients.Semantics for gradients. Handling of more than one sources.Handling of more than one sources. Negative reinforcement increases Negative reinforcement increases
delay and contention delay and contention
vivek kinra CS-WMU 32
commentscomments (battery life, size, processing power, (battery life, size, processing power,
memory, etc.)? The paper presents a memory, etc.)? The paper presents a motion-detection scenario for sensor motion-detection scenario for sensor networks.networks.
To identify an event sources must match To identify an event sources must match sampled sensor waveforms against sampled sensor waveforms against signatures stored in a local library. signatures stored in a local library.
To be useful, this library may have to store To be useful, this library may have to store several thousand such signatures or more.several thousand such signatures or more.
We could implement "task-centric" sensor We could implement "task-centric" sensor networks, where sensor nodes are focused networks, where sensor nodes are focused on one or two type of event detection. on one or two type of event detection.
vivek kinra CS-WMU 33
Tiny DiffusionTiny Diffusion
Implementation of Diffusion on Implementation of Diffusion on resource constrained USB motesresource constrained USB motes 8 bit CPU, 8k program memory, 512 8 bit CPU, 8k program memory, 512
bytes data memorybytes data memory Subsets of full systemSubsets of full system Retains only gradients and condenses Retains only gradients and condenses
attributes to a single tagattributes to a single tag Entire system runs for less than 5.5 KB Entire system runs for less than 5.5 KB
memorymemory
vivek kinra CS-WMU 34
contdcontd
Tiny OS adds ~3.5 KB and 144 bytes Tiny OS adds ~3.5 KB and 144 bytes of data (inclusive support for radio of data (inclusive support for radio and photo sensorand photo sensor
Diffusion adds ~2k code and 110 Diffusion adds ~2k code and 110 bytes of data to tiny OSbytes of data to tiny OS
vivek kinra CS-WMU 35
Tiny Diffusion FunctionalityTiny Diffusion Functionality
Resource ConstraintResource Constraint Limited Cache size-currently 10 Limited Cache size-currently 10
entries of 2 bytes eachentries of 2 bytes each Limited ability to support multiple Limited ability to support multiple
traffic stream. currently support 5 traffic stream. currently support 5 concurrently active gradientsconcurrently active gradients
vivek kinra CS-WMU 36
TinyOS ImplementationTinyOS Implementation
vivek kinra CS-WMU 37
vivek kinra CS-WMU 38
Gateway ArchitectureGateway Architecture
TINYOS
TinyDiffusion
PhotoData Source
Data Sink
Device Driver
LINUX
DIFFUSION
QueryData Sink
AcousticData Source
TINYOS
Transceiver
RFM
MOTEATMEL 8586 4MHz MCU8K program memory512 Bytes Data MemoryRFM Radio 900 MHz
PC104AMD Elan™SC40066MHz CPU16MB RAMForm Factor: 3.6" x 3.8" x 0.6"
vivek kinra CS-WMU 39
Tiered TestbedTiered Testbed
PC-104+(linux) PC-104+(linux) with MoteNICwith MoteNIC
Tags, Sensor CardTags, Sensor Card UCB Motes UCB Motes
w/TinyOSw/TinyOS Yet to come: Yet to come:
SmartDust (highly SmartDust (highly specialized nodes)specialized nodes)
PS104
TAG
USB Mote
vivek kinra CS-WMU 40