1
play

1 Types of Power-Saving MACs The Sensor MAC (S-MAC) Three - PDF document

What Is Media Access Control? Media Access Control (MAC) determines who gets access to the shared medium, and when Media Access Control In wired settings, usually just tries to avoid Greg Hackmann contention In wireless settings, can


  1. What Is Media Access Control? � Media Access Control (MAC) determines who gets access to the shared medium, and when Media Access Control � In wired settings, usually just tries to avoid Greg Hackmann contention � In wireless settings, can also significantly reduce CSE520S Fall 2007 energy consumption 2 Carrier Sense Multiple Access, Collision Avoidance (CSMA/CA) Hidden Terminal Problem CS CS 3 4 Virtual Carrier Sense: RTS/CTS Power-Saving MAC � Many applications’ expected lifetime: months or years RTS Payload � Actual lifetime: AA batteries: 2000 mAh (if you’re lucky) � CC2420 radio: 19.7 mA when idle but awake (RX mode) � 2000 mAh / 19.7 mA = 101.5 h � 6 days � CTS � This is a problem! � Solution: keep the radio asleep most of the time NAV Duty cycles on the order of 0.1% – 1% � 5 6 1

  2. Types of Power-Saving MACs The Sensor MAC (S-MAC) � Three distinct classes of power-saving MAC protocols: � S-MAC is the first MAC protocol designed Scheduled contention: nodes periodically wake up in unison, � specifically for sensor networks contend for access to channel, then go back to sleep • S-MAC [Ye 2002], T-MAC [van Dam 2003] Channel polling: nodes independently wake up to sample radio � � Guiding assumptions: channel Many small, self-configuring nodes arranged in a multi- • B-MAC [Polastre 2004], X-MAC [Buettner 2006] � Time division multiple access (TDMA): nodes maintain hop mesh � schedule of when to wake and when they’re allowed to Node-to-base station traffic rare � transmit Maximize application-wide performance over node-level • 802.15.4 [IEEE 2003], DRAND [Rhee 2006] � Different trade-offs for latency, power consumption, fairness � runtime overhead, etc. Reduce traffic through in-network processing � Motivation for hybrid protocols: SCP [Ye 2006], Z-MAC [Rhee � Sacrifice some latency for longer lifetime � 2005], Funneling MAC [Ahn 2006] 7 8 S-MAC: Synchronized Sleeping S-MAC: Boot Phase � Nodes stay asleep most of the time Waking up in 3 s Waking up � Periodically wake for short in 5 s intervals (0.5 s) to see if Waking up anyone’s sending in 4.5 s 3 s � Very low energy consumption when traffic is low 4.5 s 5 s 3 s 4.5 s 5 s 9 10 S-MAC: Sending a Packet S-MAC: Sending a Packet � Time awake divided RTS section used for � into two parts: SYNC SYNC RTS transmitting data SYNC RTS and RTS � CSMA/CA again, followed by RTS/CTS Receiver Receiver � Node periodically CS CS send SYNC packet to Wants to SYNC Wants to SYNC keep clocks in sync CS � CSMA/CA used to contend for access Wants to send data Wants to send data to wireless channel CS CS CS Wants to SYNC & send data Wants to SYNC & send data 11 12 2

  3. S-MAC: Sending a Packet S-MAC: Evaluation � CTS for someone else RTS -> go to sleep CTS ACK ACK Overhearing avoidance � Receiver � Sender does one RTS/CTS then sends Sleep data for rest of frame � All data packets are RTS DATA DATA ACKed RTS Winner Packet fragmentation = � higher reliability Sleep 13 14 A Look at S-MAC Berkeley MAC (B-MAC) � Power savings over standard 802.11 MAC � Long listening period is expensive Everyone stays awake unless somebody transmits � � Time synchronization overhead even when t � t network is idle � RTS/CTS and ACK overhead when sending data � Complex to implement 15 16 B-MAC: Throughput B-MAC: Power Consumption 17 18 3

  4. A Look at B-MAC X-MAC: Room for Improvement � Low overhead when network is idle Header � Simple to implement � Better power savings, latency, and throughput than S-MAC Payload Sender Lower duty cycle -> longer preambles: � Higher average latency � Higher cost to send � Recipient Higher cost to overhear � More contention � Neighbor 19 20 X-MAC: Overhearing Avoidance X-MAC: Preamble ACKing Destination Header Destination Header Payload Payload Sender Sender ACK Recipient Recipient Neighbor Neighbor 21 22 X-MAC: Current Draw X-MAC: Latency 23 24 4

  5. A Look at X-MAC TDMA � Better latency, throughput, and power consumption than Frame B-MAC for unicast traffic Little energy consumed by overhearing � Still simple to implement � � No improvements over B-MAC for broadcast traffic On average, cuts preamble by half -> sending packets is � still expensive Time A B C Sleep Sleep Sync Transmits Transmits Transmits Slot 25 26 SCP: Scheduled Contention + Channel A Look at TDMA Polling � Predictable latency, throughput, and duty cycle � Low packet loss due to contention � Schedules must be recreated when nodes leave/enter neighborhood t t � Time synchronization overhead � Slots wasted when scheduled node has nothing to send � Often complex to implement 27 28 SCP: Reducing Contention SCP: Adaptive Channel Polling Receiver Receiver CS CS Sender Sender Two-phase contention: CS before preamble and between Add N sub-intervals whenever packet received � � preamble & payload Reduces latency of bursty data � Lower probability of contention vs. one longer CS window � � Continue adding sub-intervals as long as they’re needed, and as long as there’s room 29 30 5

  6. SCP: Multi-Hop Pipelining SCP: Energy Consumption Hop 2 Hop 1 Sender Sender “gives up” first regular check after sending multi- � hop traffic Whole network quickly moves into adaptive polling mode � 31 32 SCP: Multi-Hop Latency A Look at SCP � Channel polling: low overhead when idle � Scheduled contention: low cost to send � Low latency for multi-hop traffic � Complex to implement � Experimental radio data required � Overhead due to time synchronization Reduced by piggybacking on data packets � 33 34 Zebra MAC (Z-MAC): TDMA + Channel Polling A Look at Z-MAC � Reduces waste from unused slots Time A B C Sleep Sleep Sync Transmits Transmits Transmits Higher throughput and lower latency � � Throughput, latency, and duty cycle no worse than pure TDMA A � Nodes still stay awake if no one transmits � Still overhead from time sync B � Complex to implement C 35 36 6

  7. So Why Are They Rarely Used? A Better Approach: MLA � Unified Power Management Architecture (UPMA) � MAC protocols have additional radio-dependent to the rescue! requirements beyond normal application code � Most recent addition to UPMA: MAC Layer Turn radio on and off, low latency I/O, carrier sense, � Architecture (MLA) [Klues 07] etc. Low-level abstractions of radio functionality � Typically implemented by forking radio stacks � High-level implementations of common MAC logic � Hard to implement � Must be maintained as original radio stack changes � � Implemented on TinyOS 2.0.1 � Used to create 5 platform-independent MAC � MAC layers supported by TinyOS today: layers CC1000: “experimental” B-MAC � B-MAC, X-MAC, SCP, TDMA, variant of Z-MAC � CC2420: X-MAC � 37 38 7

Recommend


More recommend