Transcript Networking

Centre for Wireless
Communications
Wireless Sensor Networks
Networking
Instructor: Carlos Pomalaza-Ráez
Fall 2004
University of Oulu, Finland
Basic Issues
 Unlike conventional wireless networks, the protocols designed for
the efficient networking of nodes in a WSN have to allow for a
closer collaboration or awareness among the layers of the protocol
stack, in particular the first three layers
Application
 This collaboration is needed to properly address the particular
features and design constrains of WSN as discussed in the
introduction section
Data Link
Transport
Network
Physical
 For example, the MAC protocols must try to have the radio transceivers in a
sleeping mode as much as possible in order to save energy, however if the
MAC protocol is not jointly designed with the routing algorithms (network
layer) the overall performance of the network could be severely degraded, e.g.
excessive packet delay
 Conversely, WSN routing algorithms designed with the concepts of data
centric and data aggregation create special requirements on the underlying
MAC protocols that should be met for the routing mechanisms to work as
intended
 These observations can be extended to the design of other layers as well since
WSNs call for new networking paradigms
Media Access Control
Sensor-MAC (S-MAC) – Is an energy-aware protocol(1) described next to
illustrate major design considerations that MAC protocols for WSNs
should address. Assumptions made in the design of S-MAC are:
Data Link
 Most communications will be between neighboring sensor nodes rather than
between a node and a base station
 There are many nodes that are deployed in a casual, e.g. not precise, manner
and as such the nodes must be able to self-configure, that is they should be
able to gain a certain level of knowledge, in a distributed manner, of their
neighborhood and of the network as a whole
 The sensor nodes are dedicated to a particular application and thus per-node
fairness (channel access) is not as important as the application level
performance
 Since the network is dedicated to a particular application the application data
processing can be distributed through the network. This implies that data will
be processed as whole messages at a time in store-and-forward fashion
allowing for the application of data aggregation techniques which can reduce
the traffic
 The application can tolerate latency and has long idle periods
(1) W. Ye, J. Heidemann and D. Estrin, “An Energy-Efficient MAC Protocol for Wireless Sensor Networks,” In
Proceedings of the 21st International Annual Joint Conference of the IEEE Computer and Communications
Societies (INFOCOM 2002), New York, NY, USA, June, 2002, pp. 1-10.
Sensor-MAC (S-MAC)
The main features of S-MAC are:
 Periodic listen and sleep
 Collision and Overhearing avoidance
 Message passing
The basic scheme for each node is:
 Each node go into periodic sleep mode during which it switches the radio off
and sets a timer to awake later
 When the timer expires it wakes up and listens to see if any other node wants
to talk to it
 The duration of the sleep and awake cycles are application dependent and they
are set the same for all nodes
 Requires a periodic synchronization among nodes to take care of any type of
clock drift
Sensor-MAC (S-MAC)
 The listen and awake periods are much longer than typical clock drift rates
 The duration of the sleep and awake cycles are application dependent and they
are set the same for all nodes
 Unlike conventional TDMA schemes S-MAC tolerates a much looser
synchronization among neighboring nodes
 Requires a periodic synchronization among nodes to take care of any type of
clock drift
 Nodes are free to choose their own listen/sleep schedules but to reduce control
overhead the protocol prefers that neighboring nodes are synchronized
 Because of the multihop scenario not all neighbors can be synchronized, e.g.
Nodes A and B are neighbors but they are synchronized to their “other”
neighbors, C and D respectively. Nodes broadcast their schedules from time to
time to ensure that neighboring nodes can talk to each other even if they have
different schedules. If multiple neighbors want to talk to a node, they need to
contend for the medium.
Sensor-MAC (S-MAC)
Choosing and Maintaining Schedules
 Each node maintains a schedule table that stores schedules of all its
known neighbors
 To establish the initial schedule the following steps are followed:
 A node first listens for a certain amount of time
 If it does not hear a schedule from another node, it randomly
chooses a schedule and broadcast its schedule immediately
 This node is called a Synchronizer
 If a node receives a schedule from a neighbor before choosing its
own schedule, it just follows this neighbor’s schedule, i.e. becomes
a Follower and it waits for a random delay and broadcasts its
schedule
 If a node receives a neighbor’s schedule after it selects its own
schedule, it adopts to both schedules and broadcasts its own
schedule before going to sleep
 It is expected than very rarely a node adopts multiple schedules since
every node tries to follow existing schedules before choosing an
independent one
Sensor-MAC (S-MAC)
Maintaining Synchronization
 Timer synchronization among neighbors are needed to prevent the clock
drift. The updating period can be relatively long (tens of seconds)
 Done by periodically sending a SYNC packet that only includes the
address of the sender and the time of its next sleeping period
 Time of next sleep is relative to the moment that the sender finishes
transmitting the SYNC packet
 A node will go to sleep when the timer fires
 Receivers will adjust their timer counters immediately after they receive
the SYNC packet
 A node periodically broadcasts SYNC packet to its neighbors even if it
has no followers
Sensor-MAC (S-MAC)
Maintaining Synchronization (cont.)
Listen interval is divided into two parts: one for receiving SYNC
packets and other for receiving RTS (Request To Send)
Sensor-MAC (S-MAC)
Collision and Overhearing Avoidance
 Similar to IEEE802.11, i.e. use RTS/CTS mechanism to address the hidden
terminal problem
 Perform carrier sense before initiating a transmission
 If a node fails to get the medium, it goes to sleep and wakes up when the
receiver is free and listening again
 Broadcast packets are sent without RTS/CTS
 Unicast packets follow the sequence of RTS/CTS/DATA/ACK between the
sender and receiver
 Duration field in each transmitted packet indicates how long the remaining
transmission will be so if a node receives a packet destined o another node, it
knows how long it has to keep silent
 The node records this value in network allocation vector (NAV) and set a timer
for it
 When a node has data to send, it first looks at NAV. If this value is not zero,
then medium is busy (virtual carrier sense)
 The medium is determined as free if both virtual and physical carrier sense
indicate the medium is free
 All immediate neighbors of both the sender and receiver should sleep after they
hear RTS or CTS packet until the current transmission is over
Sensor-MAC (S-MAC)
Message Passing
 A message is a collection of meaningful, interrelated units of data
 Transmitting a long message as a packet is disadvantageous as the retransmission cost is high if the packet is corrupted
 Fragmentation into small packets will lead to high control overhead as each
packet should contend using RTS/CTS
 S-MAC fragments message in to small packets and transmit them as a burst
 Only one RTS and one CTS packets are used
 Every time a data fragment is transmitted the sender waits for and ACK from
the receiver, if it does not arrive the fragment is retransmitted and the
reservation extended for the duration of the fragment
 Advantages:
 Reduces latency of the message
 Reduces control overhead
 Disadvantage:
 Node-to-node fairness is reduced, as nodes with small packets to send
will have to wait till the message burst is transmitted
Sensor-MAC (S-MAC)
Implementation
 Testbed
 Rene motes, developed at UCB
 Atmel AT90LS8535 microcontroller with TinyOS
 Uses the TR 1000 from RFM which provides a transmission rate of 19.2
Kbps (OOK). Three working modes: receiving (4.5mA), transmitting
(12mA, peak), and sleeping (5μA)
 Two type of packets. Fixed size data packets with a 6-byte header, a 30byte payload, and a 2-byte CRC. Control packets (RTS, CTS, ACK), with
6-byte header and 2-byte CRC
 MAC protocols implemented
 Simplified IEEE 802.11 DCF
 Message passing with overhearing avoidance (no sleep and listen
periods). The radio goes to sleep when its neighbors are in transmission
 The complete S-MAC. Listen period is 300 ms and sleep time can take
different values, e.g. 300 ms, 500ms, 1s, etc.
The duration of the carrier sensing is random within the contention window.
The microcontroller does not go to sleep.
Sensor-MAC (S-MAC)
Topology
 Two-hop network with two sources and two sinks
 Sources periodically generate a sensing message which is divided into
fragments
 Traffic load is changed by varying the inter-arrival period of the messages
Sensor-MAC (S-MAC)
Sensor-MAC (S-MAC)
Sensor-MAC (S-MAC)
Sensor-MAC (S-MAC)
Conclusion
 The S-MAC protocol has good energy conserving properties when
compared with the IEEE 802.11 standard
Comments
 Need of a mathematical analysis
 Need to study the effect of different topologies
 Fragmenting long packets into smaller ones is not energy efficient. The argument
about more chances of the packet being corrupted is not correct unless other
options such as the use of error control coding have also been explored
 Several features behind the S-MAC protocol are still “captured” in the traditional
way to do business at the Link Layer level, e.g. use of RTS/CTS/ACK, etc.
 The protocol does not address the fact that in most sensor net applications
neighboring nodes are activated almost at the same time by the event to be
sensed and as such they will attempt to communicate at approximately the same
time. There is also a high degree of correlation between the data they want to
communicate
Routing
Problem – How to efficiently route:
 Data from the sensors to the sink and,
 Queries and control packets from the sink to the sensor nodes
Routing
In addition to the concepts of data aggregation, data centrality, flooding, and
gossiping that were described in the Introduction lecture it is important to
identify the nature of the WSN traffic which will depend on the application.
Assuming a uniform density of nodes the number of transmissions can be
used as a metric for energy consumption. Note that receiving a packet
consumes almost as much energy as transmitting a packet. It is important that
the MAC protocol limit the number of listening neighbors in order to
conserve energy. If N is the number of nodes, Q the number of queries, and E
the number of events, and some type of flooding mechanism is being used
then:
 If the number of events is much higher than the number of queries it is better to
use some type of query flooding since the number of transmissions is
proportional to N*Q which is much less than N*E
 If the number of events is low compared with the number of queries it is better to
use some type of event flooding since now N*E is much less than N*Q
 In both cases it is assumed that the “return path” (for the events or the queries) is
build during the flooding process
 Other underlying routing mechanisms are recommended if the number of events
and queries are of the same order
Directed Diffusion(1)
A mechanism developed for the case where it is expected that the number of
queries is higher than the number of events
 Is data-centric in nature
 The sink propagates their queries or “interests” in the form of attributevalue pairs
 The interests are injected by the sink and disseminated throughout the
network. During this process, “gradients” are set at each sensor that
receives and interest pointing towards the sensor from which the interest
was received
 This process can create, at each node, multiple gradients towards the
sink. To avoid excessive traffic along multiple paths a “reinforcement”
mechanism is used at each node after receiving data, e.g. reinforce:
 Neighbor from whom new events are received
 Neighbor who consistently performing better than others
 Neighbor from whom most events received.
 There is also a mechanism of “negative reinforcement” to degrade the
importance of a particular path
(1) C. Intanagonwiwat, R. Govindan, D. Estrin, “Directed Diffusion: A Scalable and Robust Communication
Paradigm for Sensor Networks,” Proc. ACM Mobicom, Boston MA, August 2000, pp. 1-12.
Directed Diffusion
Gradient
represents
both
direction
towards
data
matching
Uses
application-aware
communication
primitives
This
Consumer
Nodes
The
process
choice
diffuse
of sets
of
data
path
the
up
initiates
interest
gradients
is made
interest
towards
locally
in the
inproducers
at
network
data
every
with
node
tovia
certain
draw
afor
Every
route
has a probability
ofcost
being
chosen
Probability
 1/energy
Collect
energy
metrics
along
the way
and status
of demand
with
desired
expressed
terms
of
namedupdate
data rate
sequence
events
matching
every
ofin
attributes
local
packet
the
interactions
interest
Four-legged
animal
Source
Sink
Directed Diffusion
Reinforcement
negative to
reinforcement
used
Has built and
in tolerance
nodes moving
to converge
to range
efficient
out of
ordistribution
dying
Source
Sink
Directed Diffusion
 Pros
 Energy – Much less traffic than flooding. For a network of size N
the total cost of transmissions and receptions is O(n N ) whereas for
flooding is of O(nN )
 Latency – Transmits data along the best path
 Scalability – Local interactions only
 Robust – Retransmissions of interests
 Cons
 The set up phase of the gradients is expensive
 It does not propose the type of MAC layer needed to support an
efficient implementation of this protocol. The simulation analysis
uses a modified 802.11 MAC protocol
Sensor Protocol for Information via
Negotiation (SPIN)(1)
A mechanism developed for the case where the number of events are higher
than the number of queries.
 Use information descriptors or meta-data for negotiation prior to
transmission of the data
 Each node has its own energy resource manager which is used to adjust
their transmission activity
 The family of SPIN protocols are:
 SPIN-PP – For point-to-point communication
 SPIN-EC – Similar to SPIN-PP but with an energy conservation
heuristics added to it
 SPIN-BC – Designed for broadcast networks. nodes set random
timers after receiving ADV and before sending REQ to wait for
someone else to send the REQ
 SPIN-RL – Similar to SPIN-BC but with added reliability. Each node
keeps track of whether it receives requested data within time limit if
not, data is re-requested
(1) J. Kulik, W. Rabiner Heinzelman, and H. Balakrishnan, “Negotiation-Based Protocols for Disseminating
Information in Wireless Sensor Networks,” ACM/IEEE Int. Conf. on Mobile Computing and Networking,
Seattle, WA, Aug. 1999.
SPIN-BC
It
Sensor
sends
broadcasts
meta-data
data
toitself
neighbors
A
Neighbor
node
senses
sends
something
a REQ
listing
“interesting”
of the
data
The
Neighbors
process
aggregate
repeats
data
across
andall
broadcast
the
network
it would likemeta-data
to acquire
(advertise)
ADV
REQ
DATA
SPIN-BC
Advertise meta-data
Advertise
Send data
Send data
I am tired
Send
I need to
sleep …
data
Advertise
meta-data
Advertise
Send
data
Request
Nodes dodata
need
to
Requestnot
data
participate in the
process
Request data
SPIN
 Pros




Energy – More efficient than flooding
Latency – Converges quickly
Scalability – Local interactions only
Robust – Immune to node failures –
 Cons
 Nodes always participating
 It does not propose the type of MAC layer needed to support an
efficient implementation of this protocol. The simulation analysis
uses a modified 802.11 MAC protocol
Open Discussion
 In recent years a very large number of routing algorithm for WSNs
have been proposed and analyzed
 For most of the proposed techniques the analysis has been mainly
carried out using simulation experiments
 Recent routing algorithms such as the “Data Funneling”(1) scheme
described in the Introduction lecture are more in line with the WSN
paradigm
 Most if not all of the proposed routing algorithms are nor supported
by a proper MAC protocol
 A proper MAC protocol should also be more in tune with important
features of the WSN paradigm, e.g. asymmetric flow, no need to
have to use individual node addresses or links, have the radio in
sleep mode as much as possible, etc.
 Another Data Link Layer aspect that needs more research is the
impact of error control coding on the consumption of energy
(1) D. Petrovic, R. C. Shah, K. Ramchandran, and J. Rabaey, “Data Funneling: Routing with
Aggregation and Compression for Wireless Sensor Networks,” SNPA 2003, pp. 1-7.