S-MAC

S-MAC (Sensor MAC) is the first MAC layer protocol developed with sensor networks and its energy limitations in mind. The main idea of S-MAC is to save energy by turning sensor radios on and off periodically, creating the notion of a duty cicle, instead of having the radios always on listening for possible transmissions.

Attach:/Users/leonardo/Desktop/smac.jpg

The image above shows the basic idea of S-MAC. Having periodic duty cicles for radio communication. Instead of being accessible at all times, nodes can only receive messages at the listen phase. By sleeping for the rest of the time, sensors can save energy. Nodes can also sleep when a transmission addressed to a different node is detected.

Such approach trades energy efficiency for lower throughput and higher latency, due to the lack of availability of receivers.

For working with such duty cycles, S-MAC requires some loose synchronization. Neighboring nodes exchange synchronization (SYNC) messages periodically. The listening period must be significantly longer then the clock drift between SYNC messages. The timestamps exchanged in such SYNC messages are relative, instead of absolute (i.e. a SYNC message looks like "I will sleep in 3s" instead of "It is now 3PM").

For avoiding the hidden terminal problem, S-MAC uses RTS-CTS.

Message passing is provided. Through message passing, a node can transmit a set of packets in a burst, using only one RTS/CTS handshake. Every packet must be acknowledge, and every packet (including ACK packets) describe how long the current message transmission is expected to take, so that nodes not involved in the transmission can sleep until it is finished.

Adaptative listening can be used, so that potential next hop nodes can wake up in time for receiving possible transmissions (i.e. wake up as soon as a message that a child node is receiving).

!!! Dieses Dokument stammt aus dem ETH Web-Archiv und wird nicht mehr gepflegt !!!
!!! This document is stored in the ETH Web archive and is no longer maintained !!!