340 likes | 656 Views
An Energy-Efficient MAC Protocol for Wireless Sensor Networks. Presenter: Lingxuan Hu Oct 22, 2002. Outline. Background Current MAC protocols S-MAC protocol Evaluation. Wireless Sensor Networks. A wide range of potential applications
E N D
An Energy-Efficient MAC Protocol for Wireless Sensor Networks Presenter: Lingxuan Hu Oct 22, 2002
Outline • Background • Current MAC protocols • S-MAC protocol • Evaluation
Wireless Sensor Networks • A wide range of potential applications • Environment monitoring , medical systems, robotic exploration • Typically self-organized into a multi-hop wireless network and coordinate to perform a common task • Reducing power consumption is critical • Nodes are normally battery operated and power limited • Its very difficult to change or recharge batteries • Prolonging network lifetime is a critical issue
Energy Efficient Protocols Application Layer Routing Layer MAC Layer Energy Efficient Protocols • Application Layer: • Data aggregation • Routing Layer • Topology • MAC Layer • out-of-band signaling – PAMAS • In-band control messages – IEEE 802.11, S-MAC
Classification of MAC Protocols • TDMA based protocols • lower energy conservation when compared to contention based protocols • Requires nodes to form real communication clusters and managing inter-cluster communication is difficult • Contention based protocols • IEEE 802.11 • PAMAS
Inefficiency in IEEE 802.11 • Idle listening • Collision • Overhearing • Control overhead
Assumptions of S-MAC • Sensor nodes are deployed in an ad hoc fashion • Most communication will be between nodes as peers • Network is dedicated to a few collaborative applications • Maximizing system-wide application performance rather than node-level fairness • In-network processing is critical to sensor network lifetime • Data will be processed as whole messages at a time in store-and-forward fashion, packet or fragment-level interleaving from multiple sources only increases overall latency • Applications have long idle periods and tolerate some latency • Network lifetime is critical
S-MAC Protocol • Four major components to save energy • Idle listening – Periodic listen and sleep • Collision – Using RTS and CTS • Overhearing – Interfering nodes go to sleep during transmission • Control overhead – Message passing
Periodic Listen and Sleep • Basic scheme • 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
Main progress of listen and sleep • Synchronization • The duration of time for listening and sleeping can be selected according to different application scenarios • Nodes are synchronized so they sleep and listen together • Schedule • Nodes exchange their schedules by broadcasting it to all its immediate neighbors • If a node A wants to talk to node B, it just waits until B is listening • If multiple neighbors want to talk to a node, they need to contend for the medium • After they start data transmission, they do not follow their sleep schedules until they finish transmission
Some synchronization problems • All timestamps are exchanged relative rather than absolute • The listen period is significantly longer than clock error or drift • Not all the nodes can synchronize together in a multi-hop network.
Choosing and Maintaining Schedules • Each node maintains a schedule table that stores schedules of all its known neighbors. The following steps are needed to establish its schedule table: • 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 broadcasts its schedule immediately in a SYNC message, indicating it will go to sleep after t seconds. This node is called synchronizer.
Choosing and Maintaining Schedules (continued) • If a node received a schedule from a neighbor before choosing its own schedule • It follows that schedule by setting its schedule to be the same, waits for a random delay td and rebroadcasts this schedule, indicating it will sleep in t-td seconds. This node is called follower. • If a node receives a different schedule after it select and broadcasts its own schedule • It adopts both schedules, and broadcasts its own schedule before going to sleep. • If some neighboring nodes fail to discover each other due to collisions when broadcasting schedules • They may find each other later in their subsequent periodic listening
Maintaining synchronization • Time synchronization among neighbors are needed to prevent the clock drift. The updating period can be quite long. • Each node periodically sends SYNC packet including the address of the sender and the time of its next sleep. • Receivers adjust their timers immediately after they receive the SYNC packet • In order for a node to receive both SYNC packets and data packet, listen interval are divided into two parts
Collision Avoidance • Using RTC/CTS mechanism, which is similar to IEEE802.11 • Address the hidden terminal problem • Virtual carrier sense • Each transmitted packet has a during field indicating how long the remaining transmission will be, the node records this value in network allocation vector (NAV) • Physical carrier sense • Listening the channel for possible transmissions at the physical layer • All senders perform carrier sense before initiating a transmission, if a node fails to get the medium, it sleeps and wakes up when the receiver is free and listening again
Overhearing avoidance • Overhearing problem in IEEE 802.11 • In IEEE 802.11, each node keeps listening all transmissions from its neighbors in order to perform effective virtual carrier sensing, which is a significant waste of energy. • Solution to avoid overhearing • Let interfering nodes go to sleep after they hear an RTS or CTS packet, hence prevent neighboring nodes from overhearing long DATA packets and the following ACKs.
Who sleep during transmission? • Receiver’s neighbors should sleep • Their transmission will interfere with receiver’s reception • Sender’s neighbors should sleep • Their transmission will get no reply because of collision • Conclusion • All nodes with NAV > 0 will go to sleep
Long message transmission • Transmitting a long message as a single packet • the re-transmission cost is high • IEEE 802.11 fragmentation • RTS and CTS only reserve the medium for the first data fragment and ACK • The first data fragment and ACK then reserve the medium for the second fragment and ACK • Each neighboring node keeps listening until all the fragments are sent
Message passing • Difference from IEEE 802.11 fragmentation • The RTS and CTS reserve the medium for transmitting all the fragments • Neighboring node hearing a RTS or CTS will go to sleep for the time needed to transmit all the fragments • Each fragment needs ACK, if no ACK is received, it will extend the reserved transmission time for one more fragment and re-transmit the current fragment immediately • Tradeoff between latency and fairness
Summary of S-MAC • Time are divided into listen stage and sleep stage • All nodes try to listen and sleep at the same time • All nodes in sleep stage will sleep • All node in listen stage will sleep if NAV > 0
Energy savings and Latency • Common delay in contention based MAC protocols • Carrier sense delay, backoff delay, transmission delay, propagation delay, processing delay, queuing delay • Extra delay in S-MAC protocol • Sleep delay : When a sender gets a packet to transmit, it must wait until the receiver wakes up • Energy savings • Proportional to the reduced duty cycle • Results
Protocol implementation • Test bed • UCB Rene Motes ( 8K flash, 512B memory) • TinyOS (event-driven operation system) • Two type of packets • Fixed size data packets with header (6B), payload (30B) and CRC (2B) • Control packets (RTS and CTS), 6B header and 2B CRC
Implementations of MAC • Simplified IEEE 802.11 DCF • Physical and virtual carrier sense, backoff and retry, RTS/CTS/DATA/ACK packet exchange, and fragmentation support. • Message passing with overhearing avoidance • Achieving energy by avoiding overhearing, reducing control overhead and contention times • Does not include the period listen and sleep • The complete S-MAC • most basic functionalities in S-MAC are implemented
Network topology • Two-hop network with two sources and two sinks • Sources generate message which is divided into fragments. In each test, each source periodically generates 10 messages, which in turn is fragmented into 10 small data packets. So 200 data packet to be passed. • Traffic load is changed by varying the inter-arrival period of the message ( 1-10 S)
Percentage of time that the source nodes are in the sleep mode
Conclusions and Future work Conclusion • S-MAC has good energy conserving properties comparing with IEEE 802.11 Future work • Parameter analysis • Scaling study • larger testbeds, changing topography
Comments • Experiment and parameters • Network topography is too simple • Parameters should be measured • Periodic listen and sleep • Stability • Not scalable to long-hop networks • Collision avoidance • Overhearing avoidance • Security issue • Message passing • Node unfairness • If the receiver is dead or lost
References • ANSI/IEEE Standard 802.11, 1999 Edition, Section 9 and 11 • Wei Ye, John Heidemann and Deborah Estrin. An Energy-Efficient MAC Protocol for Wireless Sensor Networks. INFOCOM 2002