1 / 54

Z-MAC: Hybrid MAC for Wireless Sensor Networks

Z-MAC: Hybrid MAC for Wireless Sensor Networks. Manesh Aia, Ajit Warrier, Jeongki Min, Injong Rhee Department of Computer Science North Carolina State University. CSMA Protocols. When are they useful? When are they a bad idea? Can TDMA be a better solution? Why? Why not?. IDEAL.

gaetane
Download Presentation

Z-MAC: Hybrid MAC for Wireless Sensor Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Z-MAC: Hybrid MAC for Wireless Sensor Networks Manesh Aia, Ajit Warrier, Jeongki Min, Injong Rhee Department of Computer Science North Carolina State University

  2. CSMA Protocols • When are they useful? • When are they a bad idea? • Can TDMA be a better solution? • Why? Why not?

  3. IDEAL Effective Throughput CSMA vs. TDMA Channel Utilization TDMA CSMA # of Contenders

  4. Can you do hybrid contention resolution? Z-MAC: Basic Objective Channel Utilization MAC Low Contention High Contention CSMA High Low TDMA Low High Z-MAC • Combine best of both • Eliminate worst of both

  5. ZMAC - Basic Idea • Use a base TDMA schedule • Node transmissions scheduled on specific slots • Allow non-owners of slots to 'steal' the slot from owners • Provided owners are not transmitting • Stealing done through competition (CSMA) Possible to guarantee High channel efficiency and fair (quality of service)

  6. Z-MAC: Basic components • Scalable Efficient TDMA Scheduling • Priority-based Contention Resolution • Fairness • Energy efficient and low overhead time sync • Robust implementation • Time synchronization errors. • Radio interferences from unreachable nodes.

  7. E A C D B F E E A A D C D C F B F B DRAND – Algorithm Radio Interference Map 1 0 3 2 DRAND slot assignment 0 1 Input Graph

  8. B B F F A A C C E E G G D D B B B F F F A A A C C C E E E G G G D D D • DRAND – Algorithm – Successful Round Request Grant Grant Step II – Receive Grants Step I – Broadcast Request Release Two Hop Release Step III – Broadcast Release Step IV – Broadcast Two Hop Release

  9. Z-MAC – Reserving Slots • Time Frame Rule (TF Rule) • Let node i be assigned to slot si, and let number of nodes within two hop neighbourhood be Fi • then i's time frame is set to be 2a, where positive integer a is chosen to satisfy condition 2a-1 <= Fi < 2a – 1 • In other words, i uses the si-th slot in every 2a time frame (i's slots are L * 2a + si, for all L=1,2,3,...) E.g., 5 neighbors, you choose a = 3, and your slots are 1,9,17, …

  10. Z-MAC – Local Frames

  11. Slot Ownership • If current timeslot for me, then I am Owner • All other neighbouring nodes are Non-Owners. • Low Contention Level – Nodes compete in all slots, albeit with different priorities. Before transmitting: • if I am the Owner – take backoff = Random(To) • else if I am Non-Owner – take backoff = To + Random(Tno) • after backoff, sense channel, • if busy repeat above, else send. • Switches between CSMA and TDMA automatically depending on contention level • Z-MAC – Transmission Control

  12. Z-MAC – Transmission Control Ready to Send, Start Random(To) Backoff After Backoff, CCA Idle Ready to Send, Start To + Random(Tno) Backoff After Backoff, CCA Busy Time Slots 1 0 0 2 A(0) Owner Backoffs B(1) Non-Owner Backoffs

  13. C A B • Problem – Hidden Terminal Collisions • Although LCL effectively reduces collisions within one hop, hidden terminal could still manifest itself when two hops are involved. • Z-MAC – LCL 2(2) 0(2) 1(2) Time Slots 1 0 0 2 A(0) B(1) Collision at C

  14. C A B • High Contention Level • If in HCL mode, node can compete in current slot only if: • It is owner of the slot OR • It is one-hop neighbour to the owner of the slot • Z-MAC – HCL 2(2) 0(2) 1(2) Time Slots 1 0 0 2 A(0) B(1) Slot in HCL, sleep till next time slot Collisions still possible here

  15. ECN • Informs all nodes within two-hop neighbourhood not to send during its time-slot. • When a node receives ECN message, it sets its HCL flag. • High contention detected by lost ACKs or congestion backoffs. • ECN Suppression • HCL flag is soft state, so reset periodically • Nodes need to resend ECN if high contention persists. • Z-MAC – Explicit Contention Notification

  16. Platform: • Motes (UC Berkeley) • 8-bit CPU at 4MHz • 8KB flash, 256KB RAM • 916MHz radio • TinyOS event-driven • DRAND and ZMAC have been implemented on both NS2 and on Mica2 motes (Software can be downloaded from: http://www.csc.ncsu.edu/faculty/rhee/export/zmac/index.html) • Performance Results

  17. Experimental Setup – Single Hop • Single-Hop Experiments: • Mica2 motes equidistant from one node in the middle. • All nodes within one-hop transmission range. • Tests repeated 10 times and average/standard deviation errors reported.

  18. Setup – Two-Hop • Dumbbell shaped topology • Transmission power varied between low (50) and high (150) to get two-hop situations. • Aim – See how Z-MAC works when Hidden Terminal Problem manifests itself. • Z-MAC – Two-Hop Experiments Sink Sources Sources

  19. Experimental Setup - Testbed • 40 Mica2 sensor motes in Withers Lab. • Wall-powered and connected to the Internet via Ethernet ports. • Programs uploaded via the Internet, all mote interaction via wireless. • Links vary in quality, some have loss rates up to 30-40%. • Assymetric links also present (14-->15).

  20. Z-MAC – Single-Hop Throughput Z-MAC B-MAC

  21. Z-MAC – Two-Hop Throughput Z-MAC Z-MAC B-MAC B-MAC High Power Low Power

  22. Conclusion • CSMA: - low channel utilization at high loads, - but good for dynamic load. • TDMA - utilizes the channel for high, stable load - but poor with unpredictable traffic • MAC protocol needed for best of both worlds • ZMAC performs fractional slot reservations, rest TDMA • Slot owners have greater priority in own slots • Others steal an empty slot opportunistically (using CSMA) • DRAND deficiencies stay. • Heavy initialization (what if frequent topology changes)

  23. Questions?

  24. B B F F A A C C E E G G D D B F A C E G D Grant • DRAND – Algorithm – Unsuccessful Round Request Reject Grant Step II – Receive Grants from A,B,D but Reject from E Step I – Broadcast Request Fail Step III – Broadcast Fail

  25. DRAND Performance Results – Run Time Single-Hop Multi-Hop (Testbed) Round Time – Single-Hop Multi-Hop (NS2)

  26. DRAND Performance Results – Message Count and Number of Slots Multi-Hop (NS2) Number of Slots Assigned – Multi-Hop (NS2) Single Hop

  27. Overhead (Hidden cost) Total energy: 7.22 J – 0.03% of typical battery (2500mAh, 3V)

  28. MULTI-HOP Z-MAC B-MAC Multi Hop Results – Throughput

  29. Fairness (two hop)

  30. Z-MAC HCL B-MAC MULTI-HOP Multi Hop Results – Energy Efficiency (KBits/Joule)

  31. Question?

  32. Conclusion • Z-MAC combines the strength of TDMA and CSMA • High throughput independent of contention. • Robustness to timing and synchronization failures and radio interference from non-reachable neighbors. • Always falls back to CSMA. • Compared to existing MAC • It outperforms B-MAC under medium to high contention. • Achieves high data rate with high energy efficiency.

  33. E 1(5) F 3(5) A B C D G 4(5) 2(5) 0(5) 0(2) 1(2) H • After DRAND, each node needs to decide on frame size. • Conventional wisdom – Synchronize with rest of the network on Maximum Slot Number (MSN) as the frame size. • Disadvantage: • MSN has to broadcasted across whole network. • Unused slots if neighbourhood small, e.g. A and B would have to maintain frame size of 8, in spite of having small neighbourhood. • Z-MAC – Local Frames Label is the assigned slot, number in parenthesis is maximum slot number within two hops 5(5)

  34. F D C E A B • C experiences high contention • C broadcasts one-hop ECN message to A, B, D. • A, B not on routing path (C->D->F), so discard ECN. • D on routing path, so it forwards ECN as two-hop ECN message to E, F. • Now, E and F will not compete during C's slot as Non-Owners. • A, B and D are eligible to compete during C's slot, albeit with lesser priority as Non-Owners. • Z-MAC – Explicit Contention Notification Thick Line – Routing Path Dotted Line – ECN Messages forward forward discard discard

  35. Setup • Single-hop, Two-hop and Multi-hop topology experiments on Mica2 motes. • Comparisons with B-MAC, default MAC of Mica2, with different backoff window sizes. • Metrics: Throughput, Energy, Latency, Fairness • Z-MAC – Performance Results

  36. Z-MAC – Performance Results – Throughput, Fairness • Setup – Single-Hop • 20 Mica2 motes equidistant from a sink • All nodes send as fast as they can – throughput, fairness measured at the sink. • Before starting, made sure that all motes are within one-hop

  37. Setup • 10 nodes within single cell sending to one sink • Find optimum (lowest) energy to get a given throughput at the sink • Z-MAC – Energy Experiments

  38. Z-MAC – Performance Results – Energy

  39. Setup • 10 nodes in a chain topology. • Source at one end transmits 100 byte packets at rate of 1 packet/10 s towards sink at the other end. • Packet arrival time observed at each intermediate node, average per-hop latency calculated and then reported for different duty cycles. • Z-MAC – Latency Experiments Source Sink

  40. Multi Hop Results

  41. Multi Hop Results

  42. Z-MAC – Performance Results – Latency

  43. Z-MAC – a Hybrid MAC for Wireless Sensor Networks Q & A Thank you for your participation

  44. Agenda • Introduction • Wireless Sensor Network (WSN) MAC Layer • Design principles • Basic Idea • Distributed TDMA Scheduling (DRAND) • TDMA Scheduling • DRAND Performance Results • Z-MAC • B-MAC (LPL, CCA) • Performance Comparisons

  45. Introduction • Basic goal of WSN – “Reliable data delivery consuming minimum power”. • Diverse Applications • Low to high data rate applications • Low data rate • Periodic wakeup, sense and sleep • High data rate (102 to 105 Hz sampling rate) • In fact, many applications are high rate • Industrial monitoring, civil infrastructure, medial monitoring, industrial process control, fabrication plants (e.g., Intel), structural health monitoring, fluid pipelining monitoring, and hydrology Pictures by Wei Hong, Rory O’connor, Sam Madden

  46. LPL – Check Interval • Too small • Energy wasted on Idle Listening • Too large • Energy wasted on packet transmission (large preamble) • In general, longer check interval is better.

  47. MAC Energy Usage Four important sources of wasted energy in WSN: • Idle Listening (required for all CSMA protocols) • Overhearing (since RF is a broadcast medium) • Collisions (Hidden Terminal Problem) • Control Overhead (e.g. RTS/CTS or DATA/ACK)

  48. Existing approaches • Hybird (CSMA + TDMA) • SMAC by Ye, Heidemann and Estrin @ USC • Duty cycled, but synchronized over macro time scales for neighbor communication • CSMA+Duty Cycle+LPL • BMAC by Polastre, Hill and Culler @ UC Berkeley • Duty cycled, but • Low power listen - clever way reducing energy consumption (similar to aloha preamble sampling)

  49. S-MAC – Design • Listen Period • Sleep/Wake schedule synchronization with neighbors • Receive packets from neighbors • Sleep Period • Turn OFF radio • Set timer to wake up later • Transmission • Send packets only during listen period of intended receiver(s) • Collision Handling • RTS/CTS/DATA/ACK

  50. Node 1 sleep sleep listen listen Node 2 sleep sleep listen listen Schedule 1 Schedule 2 Schedules can differ, prefer neighboring nodes to have same schedule S-MAC – Design Border nodes may have to maintain more than one schedule.

More Related