data dissemination and fusion in sensor networks
DESCRIPTION
Data Dissemination and Fusion in Sensor Networks. The Need for Data Dissemination and Fusion. Energy efficiency is an essential factor; therefore, short-range hop-by-hop communication is preferred over direct long-range communication to the destination - PowerPoint PPT PresentationTRANSCRIPT
Data Dissemination and Fusion
in Sensor Networks
– Energy efficiency is an essential factor; therefore, short-range hop-by-Energy efficiency is an essential factor; therefore, short-range hop-by-hop communication is preferred over direct long-range communication hop communication is preferred over direct long-range communication to the destinationto the destination
– Since sensor network contains large amount of data for the end user, Since sensor network contains large amount of data for the end user, methods of combining or aggregating data into small set of information methods of combining or aggregating data into small set of information is necessary and contributes to energy savingsis necessary and contributes to energy savings
– Data aggregation (aka data fusion) can combine unreliable data Data aggregation (aka data fusion) can combine unreliable data readings to produce accurate signal by improving the common signal readings to produce accurate signal by improving the common signal and reducing the noiseand reducing the noise
The Need for Data Dissemination and Fusion
– Wireless sensor networks are classified according to their data delivery Wireless sensor networks are classified according to their data delivery
model into the following categories [Kulik+ 2002]:model into the following categories [Kulik+ 2002]:
1.1. ContinuousContinuous
o LEACHLEACH [ [Heinzelman+ 2000, 2002] is designed for routing data to base ] is designed for routing data to base
stations in static wireless sensor networksstations in static wireless sensor networks
o TEENTEEN (Threshold sensitive Energy Efficient sensor Network (Threshold sensitive Energy Efficient sensor Network
Protocol) [Protocol) [Agrawal+ 2001] and ] and PEGASISPEGASIS (Power Efficient GAthering (Power Efficient GAthering
in Sensor Information Systems) [in Sensor Information Systems) [Lindsey+ 2001] are both proposed as ] are both proposed as
improvements to LEACHimprovements to LEACH
2.2. Observer-initiatedObserver-initiated
o In In Directed DiffusionDirected Diffusion [ [Intanagonwiwat + 2000], data are named using ], data are named using
attribute-value pairs and sensed information in the network can be attribute-value pairs and sensed information in the network can be
associated with such a pair. The sensor nodes send queries associated with such a pair. The sensor nodes send queries
expressing their interest for sensed information satisfying a specific expressing their interest for sensed information satisfying a specific
criteriacriteria
Taxonomy of Data Delivery Models in Wireless Sensor Networks
3.3. Event-drivenEvent-driven
o SPINSPIN (Sensor network Protocols via Information Negotiation) (Sensor network Protocols via Information Negotiation)
[[Kulik+ 2002] are set of protocols designed to disseminate data to ] are set of protocols designed to disseminate data to
all nodes in the networkall nodes in the network
4.4. HybridHybrid
o The above three approaches can coexist in the same networkThe above three approaches can coexist in the same network
Taxonomy of Data Delivery Models in Wireless Sensor Networks
– Motivated by scaling, robustness and energy efficiency requirementsMotivated by scaling, robustness and energy efficiency requirements
– Directed diffusion is Directed diffusion is data-centricdata-centric in that all communication is for in that all communication is for namednamed data data
– Data generated by sensor nodes is Data generated by sensor nodes is namednamed using attribute-value pairs using attribute-value pairs
– All nodes in the network are application-awareAll nodes in the network are application-aware
– A node requests data by sending A node requests data by sending interestsinterests for named data for named data
– A sensing task is disseminated via sequence of local interactions throughout A sensing task is disseminated via sequence of local interactions throughout
the sensor network as an the sensor network as an interestinterest for named data for named data
– Nodes diffusing the interest sets up their own Nodes diffusing the interest sets up their own cachescaches and and gradientsgradients within the within the
network to which channel the delivery of datanetwork to which channel the delivery of data
– During the data transmission,During the data transmission, reinforcement reinforcement and negative reinforcement are and negative reinforcement are
used to converge to efficient distributionused to converge to efficient distribution
– Intermediate nodes fuse interests, aggregate, correlate or cache dataIntermediate nodes fuse interests, aggregate, correlate or cache data
Directed Diffusion
[Intanagonwiwat+ 2000]
– Assumes that sensor networks are task-specific – the task types are known at the Assumes that sensor networks are task-specific – the task types are known at the
time the sensor network is deployed time the sensor network is deployed
– An essential feature of directed diffusion is that interest, data propagation and An essential feature of directed diffusion is that interest, data propagation and
data aggregation are determined by data aggregation are determined by local interactionslocal interactions
– Focused on design of dissemination protocols for tasks and eventsFocused on design of dissemination protocols for tasks and events
Naming
– Task descriptions are Task descriptions are namednamed (specifies an interest for data matching the list of (specifies an interest for data matching the list of
attribute-value pairs) and also called as attribute-value pairs) and also called as interestinterest
– Example task: “Every Example task: “Every II ms, for the next ms, for the next TT seconds, send me a location of any seconds, send me a location of any
four-legged animal in subregion four-legged animal in subregion R R of the sensor field.”of the sensor field.”
task = four-legged animaltask = four-legged animal // detect animal location// 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
Directed Diffusion
[Intanagonwiwat+ 2000]
Naming
– A sensor detecting an animal may generate the following data:A sensor detecting an animal may generate the following data:
task = four-legged animaltask = four-legged animal // type of animal seen// type of animal seen
instance = horseinstance = horse // instance of this type// instance of this type
location = [150, 200]location = [150, 200] // node location// node location
intensity = 0.5intensity = 0.5 // signal amplitude measure// signal amplitude measure
confidence = 0.85confidence = 0.85 // confidence in the match// confidence in the match
timestamp = 01:30:45timestamp = 01:30:45 // event generation time// event generation time
Interests and Gradients
– Interest is generally given by the sink nodeInterest is generally given by the sink node
– For each active task, sink periodically broadcasts an interest message to each of For each active task, sink periodically broadcasts an interest message to each of
its neighbors (including rect and duration attributes)its neighbors (including rect and duration attributes)
– Sink periodically refreshes each interest by re-sending the same interest with Sink periodically refreshes each interest by re-sending the same interest with
monotonically increasing timestamp attribute for reliability purposesmonotonically increasing timestamp attribute for reliability purposes
Directed Diffusion
[Intanagonwiwat+ 2000]
Interests and Gradients
– Every node maintains an interest cache where each item in the cache Every node maintains an interest cache where each item in the cache
corresponds to a corresponds to a distinctdistinct interest (different interest (different typetype, , intervalinterval attributes with disjoint attributes with disjoint
rectrect attributes) attributes)
– Interest entries in the cache do not contain information about the sinkInterest entries in the cache do not contain information about the sink
– In some cases, definition of distinct interests allows interest In some cases, definition of distinct interests allows interest aggregationaggregation
– The interest entry contains several The interest entry contains several gradientgradient fields, up to one per neighbor fields, up to one per neighbor
– When a node receives an interest, it determines if the interest exists in the cacheWhen a node receives an interest, it determines if the interest exists in the cache
1.1. If no matching exist, the node creates an interest entryIf no matching exist, the node creates an interest entry
This entry has single gradient towards the neighbor from which the This entry has single gradient towards the neighbor from which the
interest was received with specified data rateinterest was received with specified data rate
Individual neighbors can be distinguished by locally unique identifiersIndividual neighbors can be distinguished by locally unique identifiers
2.2. If the interest entry exists, but no gradient for the sender of interestIf the interest entry exists, but no gradient for the sender of interest
Node adds a gradient with the specified valueNode adds a gradient with the specified value
Updates the entry’s timestamp and duration fieldsUpdates the entry’s timestamp and duration fields
Directed Diffusion
[Intanagonwiwat+ 2000]
Interests and Gradients
3.3. If there exists both entry and a gradient, If there exists both entry and a gradient,
The node updates the entry’s timestamp and duration fieldsThe node updates the entry’s timestamp and duration fields
– When a gradient expires, it is removed from its interest entryWhen a gradient expires, it is removed from its interest entry
– When all gradients for an interest entry have expired, the interest entry is When all gradients for an interest entry have expired, the interest entry is
removed from the cacheremoved from the cache
– After receiving an interest, a node may re-send the interest to subset of its After receiving an interest, a node may re-send the interest to subset of its
neighborsneighbors
– To the neighbors, it may seem that interest originated from the sending node To the neighbors, it may seem that interest originated from the sending node
even though it may have been generated a distant sink. This represents a local even though it may have been generated a distant sink. This represents a local
interactioninteraction
– This way, interest diffuse throughout the network and not each interest have been This way, interest diffuse throughout the network and not each interest have been
sent to all the neighbors if a node sent matching interest recentlysent to all the neighbors if a node sent matching interest recently
– Gradient specifies data rate (value) and a direction in directed diffusion, whereas Gradient specifies data rate (value) and a direction in directed diffusion, whereas
the values can be used to probabilistically forward data in different paths in other the values can be used to probabilistically forward data in different paths in other
sensor networkssensor networks
Directed Diffusion
[Intanagonwiwat+ 2000]
Data propagation
– Data message is unicast individually to the relevant neighborsData message is unicast individually to the relevant neighbors
– A node receiving a data message from its neighbors checks to see if matching A node receiving a data message from its neighbors checks to see if matching
interest entry in its cache exists according the matching rules describedinterest entry in its cache exists according the matching rules described
1.1. If no match exist, the data message is droppedIf no match exist, the data message is dropped
2.2. If match exists, the node checks its data cache associated with the matching If match exists, the node checks its data cache associated with the matching
interest entryinterest entry
If a received data message has a matching data cache entry, the data If a received data message has a matching data cache entry, the data
message is droppedmessage is dropped
Otherwise, the received message is added to the data cache and the Otherwise, the received message is added to the data cache and the
data message is re-sent to the neighborsdata message is re-sent to the neighbors
– Data cache keeps track of the recently seen data items, preventing loopsData cache keeps track of the recently seen data items, preventing loops
– By checking the data cache, a node can determine the data rate of the received By checking the data cache, a node can determine the data rate of the received
eventsevents
Directed Diffusion
[Intanagonwiwat+ 2000]
Reinforcement
– After the sink starts receiving low data rate events, it After the sink starts receiving low data rate events, it reinforces reinforces one neighbor in one neighbor in
order to “draw down” higher quality (higher data rate) eventsorder to “draw down” higher quality (higher data rate) events
– This is achieved by data driven local rulesThis is achieved by data driven local rules
– To enforce a neighbor, the sink may re-send the original interest with higher data To enforce a neighbor, the sink may re-send the original interest with higher data
raterate
– When the data rate is higher than before, the node node must also reinforce at When the data rate is higher than before, the node node must also reinforce at
least one neighborleast one neighbor
– Reinforcement can be carried out from neighbors to other neighbors in a Reinforcement can be carried out from neighbors to other neighbors in a
particular path (i.e., when a path delivers an event faster than others, sink particular path (i.e., when a path delivers an event faster than others, sink
attempts to use this path to draw down high quality data)attempts to use this path to draw down high quality data)
– In summary, reinforce one path, or part of it, based on observed losses, delay In summary, reinforce one path, or part of it, based on observed losses, delay
variances, and so onvariances, and so on
– Negative reinforce certain paths because resource levels are lowNegative reinforce certain paths because resource levels are low
Directed Diffusion
[Intanagonwiwat+ 2000]
[Figure adapted from Intanagonwiwat+ 2000]
Directed Diffusion
[Intanagonwiwat+ 2000]
Advantages:Advantages:
– Data-centric disseminationData-centric dissemination
– Robust multi-path deliveryRobust multi-path delivery
– Reinforcement-based adaptation to the empirically best network pathReinforcement-based adaptation to the empirically best network path
– Energy savings with in-network data aggregation and cachingEnergy savings with in-network data aggregation and caching
– Gives designers the freedom to attach different semantics to gradient valuesGives designers the freedom to attach different semantics to gradient values
– Reinforcement can be triggered not only by sources but also by intermediate Reinforcement can be triggered not only by sources but also by intermediate
nodesnodes
Directed Diffusion
[Intanagonwiwat+ 2000]
Suggestions/Improvements/Future Work:Suggestions/Improvements/Future Work:
– Exploration of possible naming schemesExploration of possible naming schemes
Disadvantages:Disadvantages:
– It may consume memory since all the attribute list is being sentIt may consume memory since all the attribute list is being sent
Directed Diffusion
[Intanagonwiwat+ 2000]
– SPINSPIN (Sensor Protocols for Information via Negotiation) is a family of (Sensor Protocols for Information via Negotiation) is a family of
negotiation-based information dissemination protocols which is designed to negotiation-based information dissemination protocols which is designed to
address the deficiencies of classic flooding by address the deficiencies of classic flooding by negotiationnegotiation and and resource-resource-
adaptationadaptation
– SPIN disseminates each sensor readings to all sensors in the network, SPIN disseminates each sensor readings to all sensors in the network,
treating all sensors as potential sink nodestreating all sensors as potential sink nodes
– Nodes using SPIN protocols names their data using high-level data Nodes using SPIN protocols names their data using high-level data
descriptors, called meta-data and usage of meta-data negotiations descriptors, called meta-data and usage of meta-data negotiations
eliminate transmission of redundant data in the networkeliminate transmission of redundant data in the network
– Communication decisions can be based upon both application-specific Communication decisions can be based upon both application-specific
knowledge of the data and knowledge of the resources available to nodesknowledge of the data and knowledge of the resources available to nodes
Negotiation-Based Protocols for Disseminating Information in Wireless Sensor Networks (SPIN Protocols)
[Kulik+ 2002]
– SPIN has two basic ideas:SPIN has two basic ideas:
Operate efficiently and conserve energy: Operate efficiently and conserve energy: communicate with each other communicate with each other
about the sensor data received already and the data needed stillabout the sensor data received already and the data needed still
Monitor and adapt changes in their own energy resources:Monitor and adapt changes in their own energy resources: extend the extend the
lifetime of the systemlifetime of the system
– Four difference SPIN protocols:Four difference SPIN protocols:
SPIN-PPSPIN-PP
SPIN-ECSPIN-EC
SPIN-BCSPIN-BC
SPIN-RLSPIN-RL
Meta DataMeta Data
– Used to uniquely and completely describe the data being collected by sensorsUsed to uniquely and completely describe the data being collected by sensors
– If two pieces of actual data are distinguishable, then their meta-data should also If two pieces of actual data are distinguishable, then their meta-data should also
be distinguishablebe distinguishable
– Since the format of meta-data is application-specific, each application needs to Since the format of meta-data is application-specific, each application needs to
interpret and synthesize its own meta-datainterpret and synthesize its own meta-data
SPIN [Kulik+ 2002]
Meta DataMeta Data
– SPIN applications must define a meta-data format for representing data that SPIN applications must define a meta-data format for representing data that
concerns with the costs of storing, retrieving and managing the meta-dataconcerns with the costs of storing, retrieving and managing the meta-data
– SPIN nodes uses three types of communication messages:SPIN nodes uses three types of communication messages:
ADVADV (new data advertisement) (new data advertisement)
REQREQ (request for data) (request for data)
DATA DATA (data message)(data message)
– ADV and REQ messages contain only meta-data that is smaller than the DATA ADV and REQ messages contain only meta-data that is smaller than the DATA
messagemessage
SPIN Resource ManagementSPIN Resource Management
– SPIN applications are resource-aware and resource-adaptiveSPIN applications are resource-aware and resource-adaptive
– By knowing the resources at hand, the nodes makes informed decisions about By knowing the resources at hand, the nodes makes informed decisions about
using their resources effectivelyusing their resources effectively
– SPIN specifies an interface that applications can use to find out their available SPIN specifies an interface that applications can use to find out their available
resources rather than specifying a specific energy management protocolsresources rather than specifying a specific energy management protocols
SPIN [Kulik+ 2002]
The ProblemThe Problem
– In conventional classic flooding, the source nodes sends data to all its neighbors In conventional classic flooding, the source nodes sends data to all its neighbors
and the neighbors check their record of already sent data to see if they have and the neighbors check their record of already sent data to see if they have
forwarded the data to their neighbors. If not, they forward the data and update forwarded the data to their neighbors. If not, they forward the data and update
the recordthe record
– This requires small amount of protocol state at any node, disseminates data This requires small amount of protocol state at any node, disseminates data
quickly in the network where neither the bandwidth is scarce and the links are quickly in the network where neither the bandwidth is scarce and the links are
error proneerror prone
– The problems include: The problems include: implosionimplosion, , overlapoverlap and and resource blindnessresource blindness
Implosion:Implosion: A node always sends data to its neighbors without being concerned aboutA node always sends data to its neighbors without being concerned about
if the same data has been received by the neighbors from other nodesif the same data has been received by the neighbors from other nodes
Overlap:Overlap: The nodes waste energy and bandwidth by sending the overlapping dataThe nodes waste energy and bandwidth by sending the overlapping data
Resource Blindness:Resource Blindness: Nodes do not make decisions based on the energy available Nodes do not make decisions based on the energy available
SPIN [Kulik+ 2002]
The SolutionThe Solution
– SPIN provides solution to the problems of implosion and overlap by negotiating SPIN provides solution to the problems of implosion and overlap by negotiating
with each other before transmitting data eliminates the transmission of with each other before transmitting data eliminates the transmission of
redundant dataredundant data
– Nodes poll their resources before transmitting or processing data by probing the Nodes poll their resources before transmitting or processing data by probing the
resource manager which keeps track of the resource consumptionresource manager which keeps track of the resource consumption
– Nodes can make efficient decisions based on the available energy levelNodes can make efficient decisions based on the available energy level
– The use of meta-data descriptors eliminates the possibility of overlap since the The use of meta-data descriptors eliminates the possibility of overlap since the
nodes can name the part of the data the nodes are interested in receivingnodes can name the part of the data the nodes are interested in receiving
– Resource-awareness of local resources allow sensors to make meaningful Resource-awareness of local resources allow sensors to make meaningful
decisions to extend longevitydecisions to extend longevity
SPIN [Kulik+ 2002]
SPIN ProtocolsSPIN Protocols
1. SPIN-PP: A Three–stage handshake protocol for point-to-point media1. SPIN-PP: A Three–stage handshake protocol for point-to-point media
– This protocol works in three stages (ADV-REQ-DATA) with each stage This protocol works in three stages (ADV-REQ-DATA) with each stage
corresponding to one of the messagescorresponding to one of the messages
– The node sends ADV message to its neighborsThe node sends ADV message to its neighbors
– Neighbors check to see if they already have received or requested this dataNeighbors check to see if they already have received or requested this data
– If not, the neighbors respond by sending REQ message to the sender If not, the neighbors respond by sending REQ message to the sender
– The sender responds to the REQ message sent by sending the actual DATA to The sender responds to the REQ message sent by sending the actual DATA to
the neighbors requesting the datathe neighbors requesting the data
– If the neighbor already has the advertised data, it does not send any messageIf the neighbor already has the advertised data, it does not send any message
– Simplicity is the main strength, meaning that nodes make simple decisions, Simplicity is the main strength, meaning that nodes make simple decisions,
resulting in usage of small energy in computationresulting in usage of small energy in computation
– Each node only needs to know about its one hop neighborsEach node only needs to know about its one hop neighbors
SPIN [Kulik+ 2002]
SPIN ProtocolsSPIN Protocols
2. SPIN-EC: SPIN-PP with low-energy threshold2. SPIN-EC: SPIN-PP with low-energy threshold
– Adds simple energy-conservation heuristic to the SPIN-PP protocolAdds simple energy-conservation heuristic to the SPIN-PP protocol
– When energy is abundant, SPIN-EC acts as SPIN-PP protocolWhen energy is abundant, SPIN-EC acts as SPIN-PP protocol
– Whenever energy comes close to low-energy threshold, it adapts by reducing its Whenever energy comes close to low-energy threshold, it adapts by reducing its
participationparticipation
– The node will only participate in the full protocol if it believes that it has enough The node will only participate in the full protocol if it believes that it has enough
energy to complete the protocol without reaching below the threshold valueenergy to complete the protocol without reaching below the threshold value
– It does not prevent nodes from receiving messages such as ADV or REQ below It does not prevent nodes from receiving messages such as ADV or REQ below
its low-energy threshold, but prevents the nodes to handle a DATA message its low-energy threshold, but prevents the nodes to handle a DATA message
below the thresholdbelow the threshold
SPIN [Kulik+ 2002]
SPIN ProtocolsSPIN Protocols
3. SPIN-BC: A Three–stage handshake protocol for broadcast media3. SPIN-BC: A Three–stage handshake protocol for broadcast media
– Improves upon SPIN-PP for broadcast networks by using cheap, one-to-many Improves upon SPIN-PP for broadcast networks by using cheap, one-to-many
communications, meaning that all messages are sent to broadcast address and communications, meaning that all messages are sent to broadcast address and
processed by all the nodes that are within transmission range of the senderprocessed by all the nodes that are within transmission range of the sender
– This approach is often called This approach is often called broadcast-message-suppressionbroadcast-message-suppression
– SPIN-BC has three main differences from SPIN-PP are:SPIN-BC has three main differences from SPIN-PP are: All SPIN-BC nodes send their messages to the broadcast address such that all nodes All SPIN-BC nodes send their messages to the broadcast address such that all nodes
within the transmission range of sender will receive messagewithin the transmission range of sender will receive message
Upon receiving ADV message, each node checks to see if they already have the Upon receiving ADV message, each node checks to see if they already have the
data. If not, node sets a random timer to expire, uniformly chosen from a data. If not, node sets a random timer to expire, uniformly chosen from a
predetermined interval. After timer expires, the node sends an REQ message to the predetermined interval. After timer expires, the node sends an REQ message to the
broadcast address, including the original advertiser in the header of message. When broadcast address, including the original advertiser in the header of message. When
the nodes who are not original advertiser receive the REQ, they cancel their own the nodes who are not original advertiser receive the REQ, they cancel their own
request timers, preventing from sending out redundant copies of the same REQrequest timers, preventing from sending out redundant copies of the same REQ
The nodes will send out the requested data to the broadcast address only once to get The nodes will send out the requested data to the broadcast address only once to get
the data all its neighbors. It will not respond to multiple requests of the same datathe data all its neighbors. It will not respond to multiple requests of the same data
SPIN [Kulik+ 2002]
SPIN ProtocolsSPIN Protocols
4. SPIN-RL: SPIN-BC for lossy networks4. SPIN-RL: SPIN-BC for lossy networks
– Reliable version of SPIN-BC which disseminates data through a broadcast Reliable version of SPIN-BC which disseminates data through a broadcast
network even in the cases of network loses packets or communication is network even in the cases of network loses packets or communication is
asymmetricasymmetric
– Adds two adjustments to SPIN-BC to achieve reliability:Adds two adjustments to SPIN-BC to achieve reliability:
Each node maintains a record of which advertisements it hears from which Each node maintains a record of which advertisements it hears from which
nodes, and if does not receive the data within a set time after request, node nodes, and if does not receive the data within a set time after request, node
rerequests the datarerequests the data
Nodes limit the frequency with which they will resend the data, meaning Nodes limit the frequency with which they will resend the data, meaning
that it will wait for a set time before responding to any additional requests that it will wait for a set time before responding to any additional requests
for the same datafor the same data
SPIN [Kulik+ 2002]
Advantages:Advantages:
– Meta-data negotiation and resource adaptationMeta-data negotiation and resource adaptation
– Maintains only local information about the nearest neighborsMaintains only local information about the nearest neighbors
– Suitable for mobile sensors since the nodes base their forwarding Suitable for mobile sensors since the nodes base their forwarding
decisions on local neighborhood informationdecisions on local neighborhood information
Disadvantages:Disadvantages:
– It cannot isolate the nodes that do not want to receive information; It cannot isolate the nodes that do not want to receive information;
unnecessary power may be consumedunnecessary power may be consumed
SPIN [Kulik+ 2002]
Suggestions/Improvements/Future Work:Suggestions/Improvements/Future Work:
– Study SPIN protocols in mobile wireless network modelsStudy SPIN protocols in mobile wireless network models
– Develop more sophisticated resource-adaptation protocols to use Develop more sophisticated resource-adaptation protocols to use
available energy wellavailable energy well
– Design protocols that make adaptive decisions based not only on the Design protocols that make adaptive decisions based not only on the
cost of communicating data, but also the cost of synthesizing itcost of communicating data, but also the cost of synthesizing it
SPIN [Kulik+ 2002]
– This work considers searches over semantically rich high-level events, and This work considers searches over semantically rich high-level events, and
presents the design, analysis, and numerical simulations of a spatially presents the design, analysis, and numerical simulations of a spatially
distributed index that provides for efficient index construction and range distributed index that provides for efficient index construction and range
searchessearches
– The conventional approach to storing time series data is to have all sensing The conventional approach to storing time series data is to have all sensing
node sending their data to a central repository external to the environmentnode sending their data to a central repository external to the environment
– While obtaining the flexibility of processing the data, sending every sensor While obtaining the flexibility of processing the data, sending every sensor
reading to external site incurs high energy consumptionreading to external site incurs high energy consumption
– In addition, the links near a gateway or an external storage repository can In addition, the links near a gateway or an external storage repository can
become communication bottlenecks as the network size and the sensed become communication bottlenecks as the network size and the sensed
data increasedata increase
– As a result, it may be advisable to store data locally at or near the location As a result, it may be advisable to store data locally at or near the location
of the generation of the sensed dataof the generation of the sensed data
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
– One approach to retrieve this stored data is to flood a query to all nodes One approach to retrieve this stored data is to flood a query to all nodes
that may have suitable data and have those nodes send their response to that may have suitable data and have those nodes send their response to
the querying nodethe querying node
– In this approach, data is sent when and where it is requiredIn this approach, data is sent when and where it is required
– If some queries are originated within the sensor network, it is not advisable If some queries are originated within the sensor network, it is not advisable
to send the data to an external site instead of sending it to the internal to send the data to an external site instead of sending it to the internal
querying dataquerying data
– If more data is collected than required, this If more data is collected than required, this local storagelocal storage approach increase approach increase
energy savingsenergy savings
– There are two extensions to this approach for further energy savings:There are two extensions to this approach for further energy savings:
1.1. Data can be processed, aggregated, and/or pruned while Data can be processed, aggregated, and/or pruned while
propagating towards the query sinkpropagating towards the query sink
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
– There are two extensions to this approach for further energy savings:There are two extensions to this approach for further energy savings:
1.1. The developers of Directed Diffusion [The developers of Directed Diffusion [Intanagonwiwat + 2000],TAG ],TAG
[[Madden+ 2002], and others describe specific forms of in-network ], and others describe specific forms of in-network
aggregation and pruning of data that can select relevant data and aggregation and pruning of data that can select relevant data and
produce statistics. This approach uses “data-centric” routing that produce statistics. This approach uses “data-centric” routing that
queries are not directed towards individual nodes, but they are queries are not directed towards individual nodes, but they are
stated only in terms of desired datastated only in terms of desired data
2.2. The data can be processed locally to identify high-level “events” The data can be processed locally to identify high-level “events”
that of interest. These events can refer directly to sensor readings. that of interest. These events can refer directly to sensor readings.
The queries are directly for such events, and the responses The queries are directly for such events, and the responses
comprised of summarized data about those events. Here, the comprised of summarized data about those events. Here, the
routing is also data-centric, but queries and responses interact routing is also data-centric, but queries and responses interact
with higher-level abstractionswith higher-level abstractions
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
– These energy savings approaches reduce the energy required to respond These energy savings approaches reduce the energy required to respond
to queries, but do not deal with the cost of basic “flood-then-respond” to queries, but do not deal with the cost of basic “flood-then-respond”
approach in that cost of flooding each query to all possible nodesapproach in that cost of flooding each query to all possible nodes
– ““Data-centric storage” (DCS) approach [Data-centric storage” (DCS) approach [Shenker+ 2002] avoids the flooding of ] avoids the flooding of
queries -- all events are named and stored at a network location based on queries -- all events are named and stored at a network location based on
the name and queries for an event are routed to appropriate network node the name and queries for an event are routed to appropriate network node
where the relevant data can be accessedwhere the relevant data can be accessed
– Storing data by name allows creation of a mechanism between data and Storing data by name allows creation of a mechanism between data and
queries such that queries need not be floodedqueries such that queries need not be flooded
– GHT [GHT [Ratnasamy + 2002] proposes a specific solution to achieve DCS in ] proposes a specific solution to achieve DCS in
which event names are hashed to geographic locations and stored at the which event names are hashed to geographic locations and stored at the
node closest to the hashed locationnode closest to the hashed location
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
– DIFS extend the the data-centric storage architecture to support range DIFS extend the the data-centric storage architecture to support range
queries where only events with attributes in a certain range are desired. It queries where only events with attributes in a certain range are desired. It
provides for low average search and storage communication requirements provides for low average search and storage communication requirements
and tries to balance these requirements over participating nodesand tries to balance these requirements over participating nodes
– DIMENSIONS [DIMENSIONS [Ganesan+ 2002] also relies on the placement of data within ] also relies on the placement of data within
the sensornet and use of data-centric rendezvous points with the sensornet and use of data-centric rendezvous points with lower levellower level
sensor readings and produces a multiresolution index (or view) of datasensor readings and produces a multiresolution index (or view) of data
High-Level EventsHigh-Level Events
– High-level events, such as a hot region or a target detection, a map, or a High-level events, such as a hot region or a target detection, a map, or a
histogram can be described in many wayshistogram can be described in many ways
– The paper propose adding new data structures to store high-level data The paper propose adding new data structures to store high-level data
abstractions to the simple attribute types introduced by Diffusionabstractions to the simple attribute types introduced by Diffusion
– Such abstractions would be defined system-wide at deployment timeSuch abstractions would be defined system-wide at deployment time
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Classification of Event Properties and RelationshipsClassification of Event Properties and Relationships
– Classification proposed has been designed with the consideration of Classification proposed has been designed with the consideration of
attribute range and distribution queriesattribute range and distribution queries
– The goals of a system directed at binary events such as “zebra sightings” The goals of a system directed at binary events such as “zebra sightings”
are different from the goals of providing range searches over events that are different from the goals of providing range searches over events that
are each comprised of attributes with valuesare each comprised of attributes with values
– The goal of a search over binary events is to determine the locations of The goal of a search over binary events is to determine the locations of
those events and when such events are rare, it is much more energy-those events and when such events are rare, it is much more energy-
efficient to construct a rendezvous point where events could register and efficient to construct a rendezvous point where events could register and
queries could search than to flood a searchqueries could search than to flood a search
– Events defined by attributes with values that fall within a specified range are Events defined by attributes with values that fall within a specified range are
less common, i.e., there may be many hot regions in a network, but few less common, i.e., there may be many hot regions in a network, but few
with a heat gradient with a slope greater than with a heat gradient with a slope greater than ss
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Classification of Event Properties and RelationshipsClassification of Event Properties and Relationships
– For this reason, this paper develops a new method to support range For this reason, this paper develops a new method to support range
queries more efficiently and proposes mechanisms to run on top of GHT to queries more efficiently and proposes mechanisms to run on top of GHT to
address range queriesaddress range queries
– The high-level events are classified as follows:The high-level events are classified as follows:
1.1. Sensor value(s):Sensor value(s):
o Includes raw sensor values that comprise high-level events, Includes raw sensor values that comprise high-level events,
composite measurements and summary statistics such as composite measurements and summary statistics such as
average, median, etcaverage, median, etc
o Examples include the peak temperature of a hot region, the speed Examples include the peak temperature of a hot region, the speed
that an animal target is movingthat an animal target is moving
o Sensor values can be search over a designed area and they are Sensor values can be search over a designed area and they are
represented as integers or floating point numbersrepresented as integers or floating point numbers
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Classification of Event Properties and RelationshipsClassification of Event Properties and Relationships
2.2. Timing parameters:Timing parameters:
o Essential to know not only a specific value for a region, but also Essential to know not only a specific value for a region, but also
how this value varies over time, I.e., a hot region that has been hot how this value varies over time, I.e., a hot region that has been hot
for some period of timefor some period of time
3.3. Spatial dimensions:Spatial dimensions:
o Refers to physical shape and location of an event, i.e., hot regions Refers to physical shape and location of an event, i.e., hot regions
larger than a given arealarger than a given area
o Regions can described as enclosing circles, ellipses, or polygons Regions can described as enclosing circles, ellipses, or polygons
and their points of interest can be represented as integer or floating and their points of interest can be represented as integer or floating
point coordinatespoint coordinates
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Classification of Event Properties and RelationshipsClassification of Event Properties and Relationships
4.4. Event Interrelationships:Event Interrelationships:
o In the spatial domain, relationships between events translates to In the spatial domain, relationships between events translates to
proximity or intersection, i.e., is an area of high proximity or intersection, i.e., is an area of high COCO22 concentration concentration
also an area of bright sunlight?also an area of bright sunlight?
o In the temporal domain, event interrelationships translate to In the temporal domain, event interrelationships translate to
succession and temporal separation, i.e., did an area of high succession and temporal separation, i.e., did an area of high COCO22
concentration happens immediately after bright sunlight?concentration happens immediately after bright sunlight?
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Table 1: Event Property and Relationship ClassificationTable 1: Event Property and Relationship Classification
Storage and Search ArchitectureStorage and Search Architecture
– Time series data generated by sensor nodes is locally processed by Time series data generated by sensor nodes is locally processed by
statistical and pattern recognition engines to generate high-level events that statistical and pattern recognition engines to generate high-level events that
these events are stored locally where they are created, and information these events are stored locally where they are created, and information
about their various attributes is inserted into indicesabout their various attributes is inserted into indices
– An interested user or an automaton poses queries to these indicesAn interested user or an automaton poses queries to these indices
– The query results are found in the indices themselves, at the storage The query results are found in the indices themselves, at the storage
nodes, and even at the nodes that generate time series datanodes, and even at the nodes that generate time series data
– In terms of event generation and search, nodes serve two functions: In terms of event generation and search, nodes serve two functions:
1.1. all nodes may be used to store raw time series data and eventsall nodes may be used to store raw time series data and events
2.2. a subset of nodes serve as index nodes to facilitate searcha subset of nodes serve as index nodes to facilitate search
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Storage and Search ArchitectureStorage and Search Architecture
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Figure 2: A storage and search architectureFigure 2: A storage and search architecture
Advantages:Advantages:
– DIFS efficiently supports range queries and queries related to distribution of DIFS efficiently supports range queries and queries related to distribution of
values in space by using histograms, that direct queries to the relevant values in space by using histograms, that direct queries to the relevant
nodesnodes
– The paper builds on an already proven technique and simulation results The paper builds on an already proven technique and simulation results
show that DIFS outperforming GHT in query and communication costsshow that DIFS outperforming GHT in query and communication costs
– DIFS was designed to incorporate balancing of communication load over the DIFS was designed to incorporate balancing of communication load over the
network by having more than one query entry point and provision to originate network by having more than one query entry point and provision to originate
search at any node in the treesearch at any node in the tree
– DIFS is scalable to large number of searches or stores as it eliminates the DIFS is scalable to large number of searches or stores as it eliminates the
restriction of propagating every data information to the root and originating restriction of propagating every data information to the root and originating
every query at the rootevery query at the root
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Disadvantages:Disadvantages:
– No mentioning about the failure of sensor nodes at level of the hierarchy in No mentioning about the failure of sensor nodes at level of the hierarchy in
the quad tree structure of DIFSthe quad tree structure of DIFS
– In case of dense deployment, a uniform distribution of data values causes In case of dense deployment, a uniform distribution of data values causes
the DIFS algorithm exploring all the leaves; hence not a very good option as the DIFS algorithm exploring all the leaves; hence not a very good option as
far as energy consumption is consideredfar as energy consumption is considered
– No mentioning about making the querying and event insertion resilient to No mentioning about making the querying and event insertion resilient to
packet losspacket loss
– Overhead incurred while maintaining extra parent informationOverhead incurred while maintaining extra parent information
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
Suggestions/Improvements/Future Work:Suggestions/Improvements/Future Work:
– Introduce dynamic repartitioning when the distribution changes over a time Introduce dynamic repartitioning when the distribution changes over a time
periodperiod
– To handle large queries, may be they can be split into smaller sub-queries, To handle large queries, may be they can be split into smaller sub-queries,
encoding them to be identified later and process them separately, either locally encoding them to be identified later and process them separately, either locally
or forwarding to other nodes that have lesser traffic – this will avoid energy or forwarding to other nodes that have lesser traffic – this will avoid energy
depletion of the really busy query access nodesdepletion of the really busy query access nodes
– Handle data corruption at index nodesHandle data corruption at index nodes
– Improve DIFS search costImprove DIFS search cost
o route the query using hierarchical dissemination, as in structured replication, route the query using hierarchical dissemination, as in structured replication,
rather than sending unicast messages to each of the covering nodesrather than sending unicast messages to each of the covering nodes
o route to nodes in the highest tree level that will cover the entire query range, route to nodes in the highest tree level that will cover the entire query range,
rather than decomposing the query range into minimal covering setrather than decomposing the query range into minimal covering set
DIFS: A Distributed Index for Features in Sensor Networks [Greenstein+ 2003]
IntroductionIntroduction
– This work presents a new event-based communication model This work presents a new event-based communication model
– The proposed protocol called The proposed protocol called Topology-Divided Dynamic Event Scheduling Topology-Divided Dynamic Event Scheduling
(TD-DES)(TD-DES), organizes the wireless network into a multi-hop network tree, organizes the wireless network into a multi-hop network tree
– The root of the tree creates a data dissemination schedule and propagates The root of the tree creates a data dissemination schedule and propagates
this schedule throughout the treethis schedule throughout the tree
– The schedule is divided into fixed-size time slots, each indicating the type of The schedule is divided into fixed-size time slots, each indicating the type of
data that are sent (or received), and whether it is for data that are sent (or received), and whether it is for downstreamdownstream (i.e., away (i.e., away
from the root) or from the root) or upstreamupstream (i.e., toward the root) communication (i.e., toward the root) communication
– The schedule can be periodic or refreshed in arbitrary intervals, depending The schedule can be periodic or refreshed in arbitrary intervals, depending
on the data traffic and applications -- the idea is that nodes can save energy on the data traffic and applications -- the idea is that nodes can save energy
by powering down their radios to standby mode when they have no data to by powering down their radios to standby mode when they have no data to
send, and when they (and their descendants) do not wish to receive the data send, and when they (and their descendants) do not wish to receive the data
being transmittedbeing transmitted
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
IntroductionIntroduction
– The system uses the The system uses the publish/subscribepublish/subscribe model: each node has a specific model: each node has a specific
subscription profile that indicates which data types the node is interested in subscription profile that indicates which data types the node is interested in
receivingreceiving
– TD-DES allows each node to selectively listen for interested data based on TD-DES allows each node to selectively listen for interested data based on
the its position in the network topologythe its position in the network topology
– Since data must be scheduled before it is sent, the main tradeoff investigated Since data must be scheduled before it is sent, the main tradeoff investigated
is increased power efficiency in exchange for sub-optimal message is increased power efficiency in exchange for sub-optimal message
dissemination latencydissemination latency
– This work addresses application-specific scheduling and data dissemination This work addresses application-specific scheduling and data dissemination
issues, which was not taken into consideration by the previous in this areaissues, which was not taken into consideration by the previous in this area
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
II. System ModelII. System Model
– TD-DES is intended as application overlay to a CSMA/CA wireless MAC TD-DES is intended as application overlay to a CSMA/CA wireless MAC
layer rather than a MAC/networking layer in itselflayer rather than a MAC/networking layer in itself
II.A Scheduling ModelII.A Scheduling Model
– TD-DES monitors when each node of a network (1) receives data, (2) TD-DES monitors when each node of a network (1) receives data, (2)
transmits data, and (3) powers its radio down to a low-power standby mode transmits data, and (3) powers its radio down to a low-power standby mode
– These radio modes – Tx, Rx, and standby – are cycled among as functions These radio modes – Tx, Rx, and standby – are cycled among as functions
of time determined by the network’sof time determined by the network’s dissemination scheduledissemination schedule, generated by , generated by
the root node and propagated down the tree as part of a the root node and propagated down the tree as part of a control eventcontrol event
– TheThe base stationbase station is considered to be the root node with higher computational, is considered to be the root node with higher computational,
storage, and transmission capabilities than the rest of the nodes and it can storage, and transmission capabilities than the rest of the nodes and it can
serve as an entry point to the sensor network, integrating the sensor network serve as an entry point to the sensor network, integrating the sensor network
with the external wired network where the monitoring task GUI resideswith the external wired network where the monitoring task GUI resides
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
II.A Scheduling ModelII.A Scheduling Model
– The scheduler depends on topology information, event profiles, traffic The scheduler depends on topology information, event profiles, traffic
statistics, and QoS requirements when generating dissemination schedules statistics, and QoS requirements when generating dissemination schedules
– The goal of the scheduler is to minimize network-wide power consumption The goal of the scheduler is to minimize network-wide power consumption
(by minimizing the amount of time spent in the Rx and Tx modes) without (by minimizing the amount of time spent in the Rx and Tx modes) without
sacrificing timely dissemination of datasacrificing timely dissemination of data
II.B Network ModelII.B Network Model
– TD-DES has an integrated network construction layer that organizes a TD-DES has an integrated network construction layer that organizes a
wireless network into a tree topologywireless network into a tree topology
– The topology is constructed by broadcasting advertisements from all nodes The topology is constructed by broadcasting advertisements from all nodes
– First, the root node broadcasts a parent advertisementFirst, the root node broadcasts a parent advertisement
– Each node hearing this advertisement replies with a child message that Each node hearing this advertisement replies with a child message that
indicates that the node will become a child of the rootindicates that the node will become a child of the root
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
II.B Network ModelII.B Network Model
– Whenever a node becomes a child, it broadcasts its own parent Whenever a node becomes a child, it broadcasts its own parent
advertisementadvertisement
– The process continues until all the nodes get attached to the treeThe process continues until all the nodes get attached to the tree
– A node that hears multiple parent advertisements chooses its parent node A node that hears multiple parent advertisements chooses its parent node
with the lowest hop count to the rootwith the lowest hop count to the root
– The tree construction layer is adaptive to topology changes due to node The tree construction layer is adaptive to topology changes due to node
failures, additions, and mobilityfailures, additions, and mobility
– The data events are disseminated throughout the network based on per-node The data events are disseminated throughout the network based on per-node
event description rather than point-to-point messaging event description rather than point-to-point messaging
– This This publish/subscribepublish/subscribe type of event-based communication is the data type of event-based communication is the data
dissemination model of choice since it decouples the producers and dissemination model of choice since it decouples the producers and
consumers of informationconsumers of information
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
II.C Data/Event ModelII.C Data/Event Model
– Overlaying applications define predefined event types and these event types Overlaying applications define predefined event types and these event types
are maintained in a global event schemaare maintained in a global event schema
– For instance, a network with For instance, a network with nn different event types may publish event types different event types may publish event types
ee11, e, e22, e, e33,…, e,…, en n
– Each node maintains its own Each node maintains its own event subscriptionevent subscription which is the set of event which is the set of event
types that a node is interested in as well as its own types that a node is interested in as well as its own effective subscriptioneffective subscription
which is the union of its own subscription and the subscriptions of all its which is the union of its own subscription and the subscriptions of all its
descendantsdescendants
– Each node subscribes to any event type of its own interest as well as any Each node subscribes to any event type of its own interest as well as any
event type of a descendent node is interested in since each node is event type of a descendent node is interested in since each node is
responsible for responsible for forwardingforwarding all relevant events to its descendants in the tree all relevant events to its descendants in the tree
topologytopology
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
II.C Data/Event ModelII.C Data/Event Model
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
N1
N2N5
N4N3N7N6
N8
[e1,e2,e3]
[e1,e2,e3]
[e3]
[e1,e2]
[e1,e2] [e2] [e1,e2,e3]
[e1,e2,e3]
e2
(e1,e2)
e2
(e1) (e1)
e2 e2
(e2)(e1,e2)
e2
e2
(e1,e2,e3)
(e2) (e3)
Figure 3: An example dissemination treeFigure 3: An example dissemination treeSubscriptions are given at the upper left corner of each node, effectiveSubscriptions are given at the upper left corner of each node, effectivesubscriptions at the upper right. Arrows indicate the links over whichsubscriptions at the upper right. Arrows indicate the links over which
the event is broadcastthe event is broadcast
II.C Data/Event ModelII.C Data/Event Model
– Figure 3 presents a dissemination tree of eight nodes and three event types Figure 3 presents a dissemination tree of eight nodes and three event types
ee11, e, e22, and , and ee33 with with NN11 being the root node of the tree being the root node of the tree
– The subscription of each node is given in parentheses at the upper left of the The subscription of each node is given in parentheses at the upper left of the
node and the effective subscription is given at the upper right of each node in node and the effective subscription is given at the upper right of each node in
square bracketssquare brackets
– Note that an event of type Note that an event of type ee22 generated at node generated at node NN55
– The arrows indicate the links across which the event is broadcast to The arrows indicate the links across which the event is broadcast to
disseminate the event to all subscribing nodesdisseminate the event to all subscribing nodes
– Note that the event is propagated both upstream (to the root and then Note that the event is propagated both upstream (to the root and then
downstream to the interested parties in the other sub-tree) and downstream; downstream to the interested parties in the other sub-tree) and downstream;
therefore, events do not always go through the root nodetherefore, events do not always go through the root node
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
II.C Data/Event ModelII.C Data/Event Model
– An event is a message type with its own unique application-specific semantics An event is a message type with its own unique application-specific semantics
– Consider a scenario where a sensor network whose purpose is to detect fires Consider a scenario where a sensor network whose purpose is to detect fires
is deployed over a forested regionis deployed over a forested region
– A sensor node may issue a A sensor node may issue a fire_detectedfire_detected event to the network if its event to the network if its
temperature reading is very hightemperature reading is very high
– This event would be disseminated through the network to all those nodes, This event would be disseminated through the network to all those nodes,
(such as forest ranger stations, a centralized forest fire monitoring station, or a (such as forest ranger stations, a centralized forest fire monitoring station, or a
sink node which could notify the police, local fire-fighting units, and public sink node which could notify the police, local fire-fighting units, and public
news services) subscribing to news services) subscribing to fire_detectedfire_detected events events
– These nodes can also include any intermediate nodes which had to forward These nodes can also include any intermediate nodes which had to forward
such events to interested nodes, even if themselves may not be interestedsuch events to interested nodes, even if themselves may not be interested
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
II.D Application-defined QoSII.D Application-defined QoS
– Besides carrying unique type semantics, event types may be associated with Besides carrying unique type semantics, event types may be associated with
network-specific physical characteristics, such as minimum and maximum network-specific physical characteristics, such as minimum and maximum
event payload sizes, latency constraints, and relative event prioritiesevent payload sizes, latency constraints, and relative event priorities
– The overlaying applications specify such event latency and priority valuesThe overlaying applications specify such event latency and priority values
III. ProtocolsIII. Protocols
– TD-DES event schedule determines the temporal partitioning of the RF TD-DES event schedule determines the temporal partitioning of the RF
medium for all of the event types by allocating medium for all of the event types by allocating time slotstime slots (or (or slotsslots) for each ) for each
event type event type
– Each time slot is assumed to be wide enough for a single event to be Each time slot is assumed to be wide enough for a single event to be
propagated one hop; in other words, each slot should provide sufficient time to propagated one hop; in other words, each slot should provide sufficient time to
the underlying MAC layer to perform collision detection and retransmissions the underlying MAC layer to perform collision detection and retransmissions
under contentionunder contention
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III. ProtocolsIII. Protocols
– Time slots are allocated for each event based on the Time slots are allocated for each event based on the determineddetermined or or expectedexpected
bandwidth requirements needed to propagate all generated events reliably bandwidth requirements needed to propagate all generated events reliably
throughout the networkthroughout the network
– Once the numbers of upstream and downstream time slots for each event Once the numbers of upstream and downstream time slots for each event
type are determined, the ordering of the time slots must then be determined type are determined, the ordering of the time slots must then be determined
– Iterations are intervals of schedule that starts with a control event slot and it is Iterations are intervals of schedule that starts with a control event slot and it is
also possible to interleave downstream and upstream slots together to fit into also possible to interleave downstream and upstream slots together to fit into
a single iterationa single iteration
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.A Schedule PropagationIII.A Schedule Propagation
– The root node creates a schedule of time slots where each time slot is The root node creates a schedule of time slots where each time slot is
designated as a send or receive slot, whether it is for upstream or designated as a send or receive slot, whether it is for upstream or
downstream communication, and by the event type which it should be used to downstream communication, and by the event type which it should be used to
propagatepropagate
– The schedule is created one iteration at a time and passes it down through The schedule is created one iteration at a time and passes it down through
the dissemination tree inside a control eventthe dissemination tree inside a control event
– The schedule of slots between two consecutive downstream control events is The schedule of slots between two consecutive downstream control events is
called a single called a single iterationiteration of the schedule of the schedule
– Figure 4 presents the basic idea of creating a schedule and passing it down Figure 4 presents the basic idea of creating a schedule and passing it down
the network tree using a scenario with downstream propagation of control and the network tree using a scenario with downstream propagation of control and
data eventsdata events
– The control event is created by TD-DES and contains scheduling informationThe control event is created by TD-DES and contains scheduling information
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.A Schedule PropagationIII.A Schedule Propagation
– The control event is received by the node at level The control event is received by the node at level XX in the first time slot in the first time slot
– In the next time slot, this node transmits the control event down to the next In the next time slot, this node transmits the control event down to the next
level, level, X+1X+1. .
– In the following time slot, the node at level In the following time slot, the node at level X+1X+1 passes the control event down passes the control event down
to level to level X+2X+2, and so on , and so on
– Basically, iterations are delimited by control events and can consist of a Basically, iterations are delimited by control events and can consist of a
different number of data eventsdifferent number of data events
– The control event initiating an iteration specifies the schedule of events within The control event initiating an iteration specifies the schedule of events within
that iterationthat iteration
– Note that the schedule is shifted one slot at each levelNote that the schedule is shifted one slot at each level
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.A Schedule PropagationIII.A Schedule Propagation
– The schedule has a sequence of atomic The schedule has a sequence of atomic sendsend and and receive time slotsreceive time slots, each , each
one for a specified event typeone for a specified event type
– Generally, at a given node, for a particular event in a schedule, time slots are Generally, at a given node, for a particular event in a schedule, time slots are
allocated as a receive slot followed by an immediate send slotallocated as a receive slot followed by an immediate send slot
Figure 4: An example of schedule propagationFigure 4: An example of schedule propagation
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.A Schedule PropagationIII.A Schedule Propagation
– The node, if both the schedule specifies a receive time slot for event The node, if both the schedule specifies a receive time slot for event ee11 and if and if
the node subscribes to the node subscribes to ee11, will listen to the RF medium in Rx mode during this , will listen to the RF medium in Rx mode during this
time slot to receive such an eventtime slot to receive such an event
– If the schedule specifies a send time slot forIf the schedule specifies a send time slot for e1e1, the node can transmit an the node can transmit an
event of this typeevent of this type
– Each slot is either aEach slot is either a downstream slot (for parent-to-child communication away slot (for parent-to-child communication away
from the root) or as anfrom the root) or as an upstream slot (for child-to-parent communication slot (for child-to-parent communication
toward the root)toward the root)
– For downstream communication,For downstream communication, sendsend and and receivereceive slots are used whereas slots are used whereas
upstream slots are not designated for event types, as they are allocated – if upstream slots are not designated for event types, as they are allocated – if
any generated event may be able to make use of the next upstream slotany generated event may be able to make use of the next upstream slot
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.A Schedule PropagationIII.A Schedule Propagation
– Since nodes must always listen to upstream receive slots, as all events must Since nodes must always listen to upstream receive slots, as all events must
be passed up to the root, regardless of event type, the unique upstream slots be passed up to the root, regardless of event type, the unique upstream slots
for specific event types would not be meaningfulfor specific event types would not be meaningful
– The downstream control event includes data used by tree construction The downstream control event includes data used by tree construction
algorithm such as the number of hops to the root and the parent node’s algorithm such as the number of hops to the root and the parent node’s
network-unique identifiernetwork-unique identifier
– For each downstream For each downstream sendsend event, the simultaneous time slot at the next level event, the simultaneous time slot at the next level
down is a down is a receivereceive time slot for the same type of event time slot for the same type of event
– Similarly, for upstream Similarly, for upstream sendsend events, the concurrent time slot at the next level events, the concurrent time slot at the next level
up is a corresponding up is a corresponding receivereceive time slot for the same type of event time slot for the same type of event
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.B Deterministic and Speculative SchedulingIII.B Deterministic and Speculative Scheduling
– TD-DES schedules time slots in two modes: TD-DES schedules time slots in two modes: deterministicdeterministic and and speculative speculative
where twhere the deterministic algorithm is used for downstream and the speculative deterministic algorithm is used for downstream and the speculative
algorithm for upstream dissemination algorithm for upstream dissemination
– It is assumed that most event propagation would be downstreamIt is assumed that most event propagation would be downstream
– In the deterministic algorithm, events are propagated in back to back iterations In the deterministic algorithm, events are propagated in back to back iterations
where each iteration is further divided into slots of fixed widthwhere each iteration is further divided into slots of fixed width
– The scheduler (root node) knows the exact events to be broadcast at the The scheduler (root node) knows the exact events to be broadcast at the
beginning of each iteration and allocates the number of slots required beginning of each iteration and allocates the number of slots required
accordinglyaccordingly
– The schedule is propagated to every node in the form of a control packet at The schedule is propagated to every node in the form of a control packet at
the beginning of each iterationthe beginning of each iteration
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.B Deterministic and Speculative SchedulingIII.B Deterministic and Speculative Scheduling
– A control packet can also contain timing information for the next control A control packet can also contain timing information for the next control
packet, if iterations are not fixed lengthpacket, if iterations are not fixed length
– When the root node starts transmitting events, each node leaves radio in Rx When the root node starts transmitting events, each node leaves radio in Rx
mode for the duration of the slot when some interesting event will arrivemode for the duration of the slot when some interesting event will arrive
– Figure 5 presents the process of deterministic schedulingFigure 5 presents the process of deterministic scheduling
– RR and and SS denote the receive and send slots for the control events denote the receive and send slots for the control events
– Event Event ee11 generated during iteration generated during iteration kk cannot be scheduled till iteration cannot be scheduled till iteration k+1k+1
– The control event transmitted during the second The control event transmitted during the second SS includes the schedule for includes the schedule for
iteration iteration k+1k+1
– The exact time slot during which The exact time slot during which e1e1 will be scheduled is determined by the will be scheduled is determined by the
specific ordering criterion specific ordering criterion
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.B Deterministic and Speculative SchedulingIII.B Deterministic and Speculative Scheduling
– In speculative scheduling, the scheduler estimates the expected frequency of In speculative scheduling, the scheduler estimates the expected frequency of
event types at the root node and pre-allocates slots based on this frequency event types at the root node and pre-allocates slots based on this frequency
estimationestimation
– Since allocation of slots for each event type is Since allocation of slots for each event type is periodicperiodic which means the same which means the same
from one iteration to the next, no schedule broadcasting is needed except from one iteration to the next, no schedule broadcasting is needed except
when updating schedulewhen updating schedule
Figure 5: Deterministic SchedulingFigure 5: Deterministic Scheduling
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.B Deterministic and Speculative SchedulingIII.B Deterministic and Speculative Scheduling
– The drawback of speculative scheduling is that the nodes may have to stay in The drawback of speculative scheduling is that the nodes may have to stay in
Rx mode for scheduled slots regardless of whether or not event is comingRx mode for scheduled slots regardless of whether or not event is coming
– Figure 6 presents the process of speculative schedulingFigure 6 presents the process of speculative scheduling
– Event Event ee11 is received during iteration is received during iteration kk after its scheduled slot (indicated by the after its scheduled slot (indicated by the
dashed lines), therefore, dashed lines), therefore, e1e1 needs to be queued before it can be transmitted needs to be queued before it can be transmitted
during its slot in iteration during its slot in iteration k+1k+1
Figure 6: Speculative SchedulingFigure 6: Speculative Scheduling
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.B Deterministic and Speculative SchedulingIII.B Deterministic and Speculative Scheduling
– The schedule decided by the root node is known to every node irregardless of The schedule decided by the root node is known to every node irregardless of
the algorithm used the algorithm used
– A child node’s downstream schedule is one slot behind its parent node’s A child node’s downstream schedule is one slot behind its parent node’s
downstream schedule, whereas a child node’s upstream schedule is one slot downstream schedule, whereas a child node’s upstream schedule is one slot
ahead of the parent node’s upstream scheduleahead of the parent node’s upstream schedule
– This allowsThis allows tight pipeliningtight pipelining: a downstream/upstream event received by node : a downstream/upstream event received by node i i
in slot in slot t t will be sent downward/upward to will be sent downward/upward to ii’s children/parent in slot ’s children/parent in slot t t + 1+ 1
– If shifting happens at the boundary of upstream and downstream schedule, If shifting happens at the boundary of upstream and downstream schedule,
downstream scheduling will shift beyond the neighboring upstream schedule downstream scheduling will shift beyond the neighboring upstream schedule
and similarly, upstream scheduling will shift beyond the neighboring and similarly, upstream scheduling will shift beyond the neighboring
downstream scheduledownstream schedule
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.B Deterministic and Speculative SchedulingIII.B Deterministic and Speculative Scheduling
– The schedule created by the root node can be extended at an internal node to The schedule created by the root node can be extended at an internal node to
accommodate events generated at internal nodesaccommodate events generated at internal nodes
– Since a sub-tree rooted at an internal node may not be interested in every Since a sub-tree rooted at an internal node may not be interested in every
event; therefore, when an internal node is propagating down root schedule to event; therefore, when an internal node is propagating down root schedule to
its descendants, it can extend the root schedule by replacing those its descendants, it can extend the root schedule by replacing those un-un-
interesting interesting slots with its own events or if more slots are required, it can modify slots with its own events or if more slots are required, it can modify
blank slot in the root scheduleblank slot in the root schedule
– This extended schedule only affects the sub-tree rooted at this internal nodeThis extended schedule only affects the sub-tree rooted at this internal node
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.C Scheduling CriteriaIII.C Scheduling Criteria
– Determines how the root node decides on event ordering in the downstream Determines how the root node decides on event ordering in the downstream
scheduleschedule
– When iteration length and slot length become fixed, a deterministic schedule When iteration length and slot length become fixed, a deterministic schedule
becomes an ordering of events and it is determined according to one of (or becomes an ordering of events and it is determined according to one of (or
combination of) three criteria:combination of) three criteria:
o prioritypriority - the relative priority of an event type over other event types- the relative priority of an event type over other event types
o popularitypopularity - the number of nodes subscribing to an event type- the number of nodes subscribing to an event type
o latency constraintlatency constraint - the max. dissemination delay for an event type- the max. dissemination delay for an event type
– Priorities Priorities can be specified by the application-layer for event types at the root can be specified by the application-layer for event types at the root
node and passed down the tree within the node and passed down the tree within the downstream control eventdownstream control event
– If the priorities are relatively fixed, they need to be included in the control event If the priorities are relatively fixed, they need to be included in the control event
in case of new event types are added or the priorities changein case of new event types are added or the priorities change
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.C Scheduling CriteriaIII.C Scheduling Criteria
– Events can also be ordered by Events can also be ordered by popularitypopularity
– It is assumed that the event types that are most subscribed to are considered It is assumed that the event types that are most subscribed to are considered
most important by the system, so they are scheduled first in the upcoming most important by the system, so they are scheduled first in the upcoming
iteration(s)iteration(s)
– The tree-construction and maintenance layer of TD-DES gathers the The tree-construction and maintenance layer of TD-DES gathers the
popularity of each event type in a bottom up mannerpopularity of each event type in a bottom up manner
– Consider a subscription to a specific type of event Consider a subscription to a specific type of event eeii
– Each node Each node p p maintains maintains countcount((eeii) indicating how many nodes in its sub-tree are ) indicating how many nodes in its sub-tree are
interested in this event of type interested in this event of type eeii
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.C Scheduling CriteriaIII.C Scheduling Criteria
– Using subscript to indicate location of the variable, Using subscript to indicate location of the variable, countcountpp((eeii) can be computed ) can be computed
recursively by recursively by
where 1 is for case where 1 is for case pp itself is subscribed; 0 indicates otherwise itself is subscribed; 0 indicates otherwise
– If If latency constraints latency constraints are specified by the application layer, TD-DES will use are specified by the application layer, TD-DES will use
the average- and worst-case latency dissemination estimates when the average- and worst-case latency dissemination estimates when
scheduling eventsscheduling events
– The overall dissemination latency of an event can be reduced by scheduling it The overall dissemination latency of an event can be reduced by scheduling it
as early as possible – reduces the scheduling delay component of the latencyas early as possible – reduces the scheduling delay component of the latency
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.C Scheduling CriteriaIII.C Scheduling Criteria
– Hop-count-based distance is used as an estimator instead due to Hop-count-based distance is used as an estimator instead due to
unavailability of real latency at time of schedulingunavailability of real latency at time of scheduling
– The number of hops from root for a node The number of hops from root for a node k k subscribing to event type subscribing to event type eeii is is
called the called the distance distance of of eeii at node at node kk
o distanceavgdistanceavg((eeii): avg. distance for all nodes subscribing to event type ): avg. distance for all nodes subscribing to event type eeii
o distancewstdistancewst((eeii): the worst-case distance): the worst-case distance
– The tree gathers data by having each internal node maintain partial values for The tree gathers data by having each internal node maintain partial values for
its own sub-tree and pass these values up to its parent node in its its own sub-tree and pass these values up to its parent node in its upstream upstream
control eventcontrol event
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.C Scheduling CriteriaIII.C Scheduling Criteria
– Each node Each node j j maintains the following metrics in addition to maintains the following metrics in addition to countcount((eeii), which it ), which it
passes to its parent:passes to its parent:
o costcostjj(e(eii)):: the total number of hops an event the total number of hops an event eei i must be propagated to the must be propagated to the
entire sub-tree rooted at the current node entire sub-tree rooted at the current node jj
o avg_costavg_costjj(e(eii)): : the average number of hops an event the average number of hops an event eeii must be must be
propagated per interested node inside the sub-tree rooted at the current propagated per interested node inside the sub-tree rooted at the current
node node jj
o max_costmax_costjj(e(eii)): : the maximum number of hops an event the maximum number of hops an event eeii must be must be
propagated to an interested node inside the sub-tree rooted at the current propagated to an interested node inside the sub-tree rooted at the current
node node jj
– Each node Each node j j passes its passes its costcostjj(e(eii) ) and and max_costmax_costjj(e(eii)) values to the parent as values to the parent as
parameters of its parameters of its upstream control eventupstream control event
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.C Scheduling CriteriaIII.C Scheduling Criteria
– For each child For each child j j of an internal node of an internal node k, k, the parent node calculates its own the parent node calculates its own
values recursively; the values recursively; the costcostkk(e(eii) ) at at k k is calculated in terms of each child:is calculated in terms of each child:
– The maximum cost value is the maximum of the maxima of its children plus 1:The maximum cost value is the maximum of the maxima of its children plus 1:
– At each node, the At each node, the avg_costavg_costkk(e(eii) ) is a derived value of is a derived value of countcountkk(e(eii) ) and and costcostkk(e(eii):):
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.C Scheduling CriteriaIII.C Scheduling Criteria
– For each child For each child j j of an internal node of an internal node k, k, the parent node calculates its own the parent node calculates its own
values recursively; the values recursively; the costcostkk(e(eii) ) at at k k is calculated in terms of each child:is calculated in terms of each child:
– The root node, The root node, rr, defines, for each event type , defines, for each event type eeii, the system-wide count and , the system-wide count and
distance values in the following way as: distance values in the following way as: countcount((eeii) = ) = countrcountr((eeii), ),
distanceavgdistanceavg((eeii) = ) = avg costravg costr((eeii), and ), and distancewstdistancewst((eeii) = ) = max costrmax costr((eeii))
– Since all internal nodes are interested in knowing these three values, the root Since all internal nodes are interested in knowing these three values, the root
node disseminates these values in a node disseminates these values in a downstream control event downstream control event as they as they
changechange
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
III.D Interleaved SchedulingIII.D Interleaved Scheduling
– This stage determines the actual sequence of the time slots allocated for the This stage determines the actual sequence of the time slots allocated for the
next iterationnext iteration
– The number and ordering of events in downstream schedule and number of The number and ordering of events in downstream schedule and number of
slots in upstream schedule are completeslots in upstream schedule are complete
– The sequencer must derive a set of ordered slots for the next iteration from The sequencer must derive a set of ordered slots for the next iteration from
these two schedulesthese two schedules
– Two choices: either place upstream and downstream slots separately side by Two choices: either place upstream and downstream slots separately side by
side (a.k.a. side (a.k.a. clusteredclustered) or ) or interleaveinterleave them them
– In the clustered version, the ordered downstream set is placed unbroken, In the clustered version, the ordered downstream set is placed unbroken,
followed immediately by ordered upstream set and followed by some followed immediately by ordered upstream set and followed by some blank blank
time slotstime slots
– A downstream control event is placed at the beginning of each iterationA downstream control event is placed at the beginning of each iteration
Advantages:Advantages:
– The authors strive to achieve maximum power conservation by way of The authors strive to achieve maximum power conservation by way of
completely powering down the radio of the sensor nodes during the portions completely powering down the radio of the sensor nodes during the portions
of the schedule that do not match the its particular event subscriptionof the schedule that do not match the its particular event subscription
– The authors did not try to reinvent the wheel by introducing a radically new The authors did not try to reinvent the wheel by introducing a radically new
protocol – proposed protocol, TD-DES, is intended as an application overlay protocol – proposed protocol, TD-DES, is intended as an application overlay
to the already established CSMA/CA wireless MAC layerto the already established CSMA/CA wireless MAC layer
– The publish/subscribe style of event based communication makes the The publish/subscribe style of event based communication makes the
protocol well suited for dynamic ad hoc environmentprotocol well suited for dynamic ad hoc environment
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
Disadvantages:Disadvantages:
– Does not consider transmission failureDoes not consider transmission failure
– No mentioning about the construction of the topology treeNo mentioning about the construction of the topology tree
– The time synchronization is an assumption made by the authorsThe time synchronization is an assumption made by the authors
Power-Efficient Data Dissemination in Wireless Sensor Networks [Cetintemel+ 2003]
Suggestions/Improvements/Future Work:Suggestions/Improvements/Future Work:
– Since constructing a tree structure that is optimal with respect to power Since constructing a tree structure that is optimal with respect to power
consumption is NP-complete, we can have the following two heuristics:consumption is NP-complete, we can have the following two heuristics:
o Centralized Tree-topology:Centralized Tree-topology: In this case, we can periodically recompute In this case, we can periodically recompute
the tree using centralized incremental power heuristic, where we add on the tree using centralized incremental power heuristic, where we add on
sensor at a time with the least incremental transmit powersensor at a time with the least incremental transmit power
o Distributed Tree-topology:Distributed Tree-topology: Decision on the sensor nodes position in the Decision on the sensor nodes position in the
tree is done locally by collaborating with the neighbor nodestree is done locally by collaborating with the neighbor nodes
– As mentioned in the literature, we can extend the protocol to include upstream As mentioned in the literature, we can extend the protocol to include upstream
and downstream aggregation and cachingand downstream aggregation and caching
– Future work can be summarized as follows:Future work can be summarized as follows:
o Implementation and clock synchronizationImplementation and clock synchronization
o Mobility and reliabilityMobility and reliability
o Caching and aggregationCaching and aggregation
[Agrawal+ 2001] D.P. Agrawal and Arati Manjeshwar, Teen: a routing protocol for enhanced efficiency in wireless sensor networks, In Proceedings of Tenth International Conference on Computer Communications and Networks, 2001, pp. 304-309.
[Cetintemel+ 2003] U. Cetintemel, A. Flinders, and Y. Sun, Power-Efficient Data Dissemination in Wireless Sensor Networks, In proceedings of the 3rd ACM International Workshop on Data Engineering for Wireless and Mobile Access (MobiDE’03), September 2003.
[Ganesan+ 2002] D. Ganesan, D. Estrin, and J. Heidemann, DIMENSIONS: Why do we need a new Data Handling architecture for sensor networks?, Proceedings of First Workshop on Hot Topics in Networks (HotNets-I), October, 2002.
[Greenstein+ 2003] B. Greenstein, D. Estrin, R. Govindan, S. Ratnasamy, and S. Shenker, DIFS: A Distributed Index for Features in Sensor Networks, In the Proceedings of First IEEE International Workshop on Sensor Network Protocols and Applications, May 2003.
[Heinzelman+ 2002] W. Heinzelman, A.P. Chandrakasan and H. Balakrishnan, An Application-Specific Protocol Architecture for Wireless Microsensor Networks, IEEE Transactions on Wireless Communications, Vol. 1, No. 4, October 2002, pp. 660-670.
[Heinzelman+ 2000] W. Heinzelman, A.P. Chandrakasan and H. Balakrishnan, Energy-Efficient Communication Protocol for Wireless Microsensor Networks, IEEE Proceedings of the Hawaii International Conference on System Sciences, January 4-7, 2000, Maui, Hawaii.
[Intanagonwiwat + 2000] C. Intanagonwiwat, R. Govindan and D. Estrin, Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks, In Proceedings of the Sixth Annual International Conference on Mobile Computing and Networks (MobiCOM 2000), August 2000, Boston, Massachusetts.
References
[Kim+ 2003] H. S. Kim, T. Abdelzaher, and W. H. Kwon, Minimum-Energy Asynchronous Dissemination to Mobile Sinks in Wireless Sensor Networks, ACM SenSys, Los Angeles, CA, November, 2003.
[Kulik+ 2002] J. Kulik, W. Heinzelman and H. Balakrishnan, Negotiation-Based Protocols for Disseminating Information in Wireless Sensor Networks, Wireless Networks 8(2-3), 2002, pp. 169-185.
[Lindsey+ 2001] S. Lindsey and C.S. Raghavendra, Pegasis: Power-efficient gathering in sensor information systems, In Proceedings of International Conference on Communications, 2001.
[Madden+ 2002] S. Madden, M.J. Franklin, J.M Hellerstein, and W. Hong, TAG: a Tiny Aggregation Service for Ad-Hoc Sensor Networks, In Proceedings of Fifth Symposium on Operating Systems Design and Implementation (OSDI), Boston, Massachusetts, December, 2002.
[Ratnasamy + 2002] S. Ratnasamy, B. Karp, L. Yin, F. Yu, D. Estrin, and R. Govindan, GHT: A Geographic Hash Table for for Data-Centric Storage, In Proceedings of First ACM International Workshop on Wireless Sensor Networks and Applications (WSNA 2002), Atlanta, GA, September, 2002.
[Shenker+ 2002] S. Shenker, S. Ratnasamy, B. Karp, R. Govindan, and D. Estrin, Data-Centric Storage in Sensornets, In Proceedings of First ACM SIGCOMM Workshop on Hot Topics in Networks (HotNets 2002), Princeton, NJ, October 2002.
[Tilak+ 2002] S. Tilak, N. Abu-Ghazaleh, and W. Heinzelman, A Taxonomy of Wireless Micro-Sensor Network Models, Mobile Computing and Communications Review (MC2R), vol. 6, no. 2, April 2002, pp. 28-36.
References