PIP: A Connection-Oriented, Multi- Hop, Multi-Channel TDMA-based MAC for High Throughput Bulk Transfer Sensys2010
Outline Introduction Design of PIP Performance evaluation Conclusion
Introduction Goal: high throughput bulk data transfer Interference – Intra-path interference – Inter-path interference – External interference Feature – Multi-hop connection oriented – TDMA-based – Multi-channel – Centralized sink relay source
Introduction Flush – distributed – Single-channel – CSMA
Design of PIP EOF (End-of-File) SNACK (Selective Negative Acknowledgement)
PIP MAC Protocol 3 modes of operation – U1C (unsynchronized, single-channel) – UMC (unsynchronized, multi-channel) – SMC (synchronized, multi-channel) Reserve one channel for U1C mode SMC is used during data transfer
Connection Setup Assign every node in the path a designated receiving channel for UMC and SMC modes Schedule, with spatial reuse After forwarding ConnReq, a node changes from U1C to UMC mode
Time Synchronization Time stamp is piggy-backed in data packet On reception of first Data, a node changes from UMC to SMC mode No transmission in UMC mode Data source is the clock source of the path
EOF, SNACK exchange Have packet only on one direction at a time Data sink send SNACK packets only when triggered by an EOF from the source
Connection Tear-down After forwarding TearDown, a node changes from SMC to U1C mode Send by source to avoid TearDown loss Hop-by-hop ACKs
Example
State Diagram
PIP Prototype Implementation Pipeline radio and SPI (Serial Peripheral Interface )
PIP Prototype Implementation Time slot schedule
PIP Prototype Implementation Time synchronization requirement – Multi-channel, sync neighbors
PIP Throughput Optimality Single flow – Sink is busy only half of the time (receiving only) – Close to 50% of optimal throughput Two flow can achieve optimal throughput – All node time sync to sink, not source – Avoid inter-path interference
PIP Performance Evaluation Markov analysis – Model buffer occupancy at each node as discrete time Markov chain – Input/output: throughput Simulation-based evaluation Prototype implementation – 10-node, 9-hop – Given forwarding table – Emulate wireless channel loss: drop packets probabilistically (error rate) – 1000 packets, 124 bytes, 32KHz clock, 1tick = 30.5us
Duration and Queue Size Frame duration is 430 ticks (13ms) – Slot: 200 ticks, guard time: 15 ticks Queue size – 10
Comparison of analysis, simulation, and implementation
Throughput as a function of error rate
External interference and channel hopping
Comparison to others
Comparison to others (simulation)
Non-requirement of flow-control
Conclusion Throughput degrades only slightly with increasing number of hops Robust to variable wireless error rates Performs well even without any flow control Requires only small queue sizes to operate well