Centre for Wireless Communications Wireless Sensor Networks Networking Instructor: Carlos...

27
Centre for Wireless Communications Wireless Sensor Networks Networking Instructor: Carlos Pomalaza- Ráez Fall 2004 University of Oulu, Finland

Transcript of Centre for Wireless Communications Wireless Sensor Networks Networking Instructor: Carlos...

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)

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

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.