Centre for Wireless Communications Wireless Sensor Networks Networking Instructor: Carlos Pomalaza- Ráez Fall 2004 University of Oulu, Finland
Dec 16, 2015
Centre for Wireless Communications
Wireless Sensor NetworksNetworking
Instructor: Carlos Pomalaza-Ráez
Fall 2004University of Oulu, Finland
Basic Issues
Physical
Data Link
Network
Transport
Application 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
This collaboration is needed to properly address the particular features and design constrains of WSN as discussed in the introduction section
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 ControlSensor-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:
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
Data Link
(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 re-
transmission 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 30-byte 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)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
RoutingProblem – How to efficiently route: Data from the sensors to the sink and, Queries and control packets from the sink to the sensor nodes
RoutingIn 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 attribute-
value 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.
Gradient represents both direction towards data matching and status of demand with desired update rate
Probability 1/energy costThe choice of path is made locally at every node for every packet
Uses application-aware communication primitivesexpressed in terms of named data
Consumer of data initiates interest in data with certain attributes
Nodes diffuse the interest towards producers via a sequence of local interactions
This process sets up gradients in the network to draw events matching the interest
Collect energy metrics along the wayEvery route has a probability of being chosen
Directed Diffusion
Sink
Source
Four-leggedanimal
Reinforcement and negative reinforcement used to converge to efficient distributionHas built in tolerance to nodes moving
out of range or dying
Directed Diffusion
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 whereas for flooding is of
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
)( NnO)(nNO
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.
A node senses something “interesting”Neighbor sends a REQ listing all of the data it would like to acquireSensor broadcasts dataNeighbors aggregate data and broadcast(advertise) meta-data
SPIN-BC
The process repeats itself across the network
DATAREQADV
It sends meta-data to neighbors
SPIN-BC
I am tired I need to sleep …
Advertise meta-data
Request data
Send dataAdvertise
Advertise
Nodes do need not to participate in the process
Request data
Send data
Send data
Advertise meta-data
Request data
Send 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.