170 likes | 296 Vues
The S-MAC protocol is designed to enhance the energy efficiency and scalability of wireless sensor networks. It addresses key challenges such as latency, throughput, energy wastage, and control overhead while ensuring fairness among nodes. Through techniques like periodic listen and sleep strategies, RTS/CTS collision avoidance, and effective message passing, S-MAC minimizes idle listening and overhearing. Nodes maintain synchronized schedules to optimize communication, reduce unnecessary energy consumption, and improve overall network performance while adapting dynamically to changes in topology.
E N D
S-MAC Taekyoung Kwon
MAC in sensor network • Energy-efficient • Scalable • Size, density, topology change • Fairness • Latency • Throughput/utilization
Energy wastage • Collision • Overhearing • Promiscuous mode • Idle listening • Control packets
Counter-attack • Collision RTS and CTS • Overhearing switching the radio off when the transmission is not meant for that node • Control overhead message passing • Fairness issue • Idle listening periodic listen and sleep
S-MAC features • Periodic listen and sleep • Collision and Overhearing avoidance • Message passing
Periodic listen and sleep • If no sensing event happens, nodes are idle for a long time, so it is not necessary to keep the nodes listening all the time • To reduce control overhead, neighboring nodes are synchronized (i.e. Listen and sleep together) Listen Listen Sleep Sleep time • Not all neighboring nodes can synchronize together • Two neighboring nodes (B and C) can have different schedules if they are required to synchronize with different node A B C D
Listen/sleep schedule • Each node maintains a schedule table that stores schedules of all its known neighbors. • To establish the initial schedule (at the startup) 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
Schedule (cont’d) • If a node receives a schedule from a neighbor before choosing its own schedule, it just follows this neighbor’s schedule • This node is called 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
Overall schedule • Listen (sync and RTS) + sleep
Collision avoidance • Similar to IEEE802.11 using RTS/CTS mechanism • 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
Overhearing avoidance • Duration field in each transmitted packet indicates how long the remaining transmission will be. • The node records this value in network allocation vector (NAV) and set a timer. • If NAV is not zero, then medium is busy (virtual carrier sense). • 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
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 • Fragmentation into small packets will lead to high control overhead as each packet should contend using RTS/CTS • Solution • Fragment message in to small packets and transmit them as a burst (ACK for each fragment) Shifted by the reXmission # reXmit S-MAC : time Reserved time
T-MAC • Adaptive duty cycle • Active period ends when no activation event for the time TA • Periodic frame timer expires • Reception of any data • Sensing of communication • End of transmission of data or ACK • Knowledge that data exchange of a neighbor has ended
Determining TA • C: length of the contention interval • R: length of the RTS • T: turnaround time (similar to SIFS) • TA > C + R + T
Early sleeping problem • How to address this problem?
Future RTS (FRTS) • DS : a small Data-Send packet
Priority on buffers • When a node’s transmit buffers are almost full, it may prefer sending to receiving