270 likes | 368 Views
Wireless Sensor Networks Networking. Instructor: Carlos Pomalaza-Ráez Fall 2004 University of Oulu, Finland. Basic Issues.
E N D
Wireless Sensor NetworksNetworking Instructor: Carlos Pomalaza-RáezFall 2004University 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 • This collaboration is needed to properly address the particular features and design constrains of WSN as discussed in the introduction section Application Transport Network Data Link 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) CollisionandOverhearingAvoidance • 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
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 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.
Directed Diffusion Gradient represents both direction towards data matching and status of demand with desired update rate Uses application-aware communication primitivesexpressed in terms of named data This process sets up gradients in the network to draw events matching the interest Nodes diffuse the interest towards producers via a sequence of local interactions Consumer of data initiates interest in data with certain attributes The choice of path is made locally at every node for every packet Every route has aprobabilityof being chosen Probability 1/energy cost Collect energy metrics along the way Four-legged animal Source Sink
Directed Diffusion Reinforcementand negative reinforcement used to converge to efficient distribution Has built in tolerance to nodes moving out of range or 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 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
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 sends meta-data to neighbors Sensor broadcasts data A node senses something “interesting” Neighbor sends a REQ listing all of the data it would like to acquire The process repeats itself across the network Neighbors aggregate data and broadcast (advertise) meta-data ADV REQ DATA
SPIN-BC Advertise meta-data Advertise Send data Send data Advertise meta-data I am tired I need to sleep … Send data Advertise Send data Request data Nodes do need not to participate in the process Request data 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.