Вы находитесь на странице: 1из 40

Collection Tree Protocol

References :a. Omprakash Gnawali, Rodrigo Fonseca, Kyle Jamieson, David Moss, and Philip Levis, Collection Tree Protocol, In Proceedings of the 7th ACM Conference on Embedded Networked Sensor Systems (SenSys 2009), Berkeley, CA, USA, November 2009 b. Ugo Colesanti, Silvia Santini, The Collection Tree Protocol for the Castalia Wireless Sensor Simulator, Technical Report No. 729, Department of Computer Science, ETH Zurich, Zurich, Switzerland, June 2011
09/21/2011 CS 297 - Fall 2011 1

Collection
Anycast route to the sink(s)
sink

Used to collect data from the network to a small number of sinks (roots, base stations) Network primitive for other protocols

A distance vector protocol 09/21/2011 CS 297 - Fall 2011

Desired
Reliability delivery ratio 90% 99.99% Robustness no tuning required Efficiency mimimum # of packets Hardware independence without assuming specific radio chip features.
09/21/2011 CS 297 - Fall 2011 3

Common causes of poor performance


Link Dynamics
Fast more agile network, but costly Slow slower-to-adapt network, but cheap

Transient Loops
topology repairs happen at the timescale of control plane maintenance

09/21/2011

CS 297 - Fall 2011

Common Architecture
Control Plane Router
Fwd Table

Data Plane Application

Link Estimator

Forwarder

Link Layer

09/21/2011

CS 297 - Fall 2011

Prior Work
Control Plane ETX, MT, MultiHopLQI, EAR, LOF, AODV, DSR, BGP, RIP, OSPF, Babel Data Plane Flush, RMST, CODA, Fusion, IFRC, RCRT

Link Layer

09/21/2011

CS 297 - Fall 2011

Wireless Link Dynamics

0.9 1s

09/21/2011

CS 297 - Fall 2011

Control and Data Rate Mismatch


Can lead to poor performance
Control Plane Data Plane

1 beacon/s beacon/30s
Link Layer
09/21/2011 CS 297 - Fall 2011

10 0 pkt/s

CTP
Control Plane Router Data Plane Application

Link Estimator

Forwarder

Link Layer

09/21/2011

CS 297 - Fall 2011

CTP Approach
Enable control and data plane interaction Control Two mechanisms for Plane efficient and agile topology maintenance
Datapath validation Adaptive beaconing
Data Plane

09/21/2011

CS 297 - Fall 2011

10

Additional mechanisms
Re-transmit timers Hybrid queue Per Client queueing Transmit cache for duplicate suppression

09/21/2011

CS 297 - Fall 2011

11

Summary of Results
90-99.9% delivery ratio
Testbeds, configurations, link layers

Compared to MultihopLQI
29% lower data delivery cost 73% fewer routing beacons 99.8% lower loop detection latency

Robust against disruption Cause for packet loss vary across testbeds 09/21/2011 CS 297 - Fall 2011

12

Outline
Collection Datapath validation Adaptive beacons Re-transmit timers Hybrid queue Per-client queueing Transmit cache Evaluation Conclusion
CS 297 - Fall 2011 13

09/21/2011

Datapath validation
Use data packets to validate the topology
Inconsistencies Loops

Receiver checks for consistency on each hop


Transmitters cost is in the header

Same time-scale as data packets


09/21/2011

Validate only when necessary


CS 297 - Fall 2011

14

Routing Loops
Cost does not decrease

X
3.2 C 8.1

B 4.6

D
09/21/2011 CS 297 - Fall 2011

5.8

6.3

A
15

Routing Consistency
Next hop should be closer to the destination Maintain this consistency criteria on a path
ni ni+1 nk

Inconsistency due to stale state


09/21/2011 CS 297 - Fall 2011 16

Detecting Routing Loops


Datapath validation
Cost in the packet Receiver checks 8.1

3.2 < 8.1 4.6?

Inconsistency
Larger cost than on the packet

3.2 C 8.1
4.6<5.8 4.6 < ? 6.3? 4.6 B 4.6 6.3 D

On Inconsistency
Dont drop the packets Signal the control plane 5.8 < 8.1? 5.8
09/21/2011 CS 297 - Fall 2011

5.8 6.3

A
17

Outline
Collection Datapath validation Adaptive beacons Re-transmit timers Hybrid queue Per-client queueing Transmit cache Evaluations Conclusion
CS 297 - Fall 2011 18

09/21/2011

How Fast to Send Beacons?


Using a fixed rate beacon interval
Can be too fast Can be too slow Agility-efficiency tradeoff

Agile+Efficient possible?

09/21/2011

CS 297 - Fall 2011

19

Routing as Consistency
Routing as a consistency problem
Costs along a path must be consistent

Use consistency protocol in routing


Leverage research on consistency protocols Trickle

09/21/2011

CS 297 - Fall 2011

20

Trickle
Detecting inconsistency
Code propagation: Version number mismatch Does not work for routing: use path consistency

Control propagation rate


Start with a small interval Double the interval up to some max Reset to the small interval when 09/21/2011 inconsistent CS 297 - Fall 2011

21

Control Traffic Timing


Extend Trickle to time routing beacons Reset the interval
ETX(receiver) >= ETX(sender) Significant decrease in gradient Pull bit

T X
09/21/2011 CS 297 - Fall 2011 22

Adaptive Beacon Timing

~8 min

Tutorne t
09/21/2011

Infrequent beacons in the long run


CS 297 - Fall 2011 23

Adaptive vs Periodic Beacons


1.87 beacon/s

0.65 beacon/s

Tutorne t
09/21/2011

Time (mins)
Less overhead compared to 30speriodic
CS 297 - Fall 2011 24

Node Discovery
A new node introduce d

Path established in < 1s


Tutorne t
09/21/2011

Time (mins)

Efficient and agile at the same time


CS 297 - Fall 2011 25

Outline
Collection Datapath validation Adaptive beacons Re-transmit timers Hybrid queue Per-client queueing Transmit cache Evaluation Conclusion
CS 297 - Fall 2011 26

09/21/2011

CTP Routing Frame

09/21/2011

CS 297 - Fall 2011

27

CTP Data Frame

09/21/2011

CS 297 - Fall 2011

28

Additional mechanisms
Transmit timers
Prevent self-interference Depends upon the packet rate

Per client queueing


Prevents isolation One-deep packet queue

Hybrid send queue


Route-through & locally generated traffic C + F length

Transmit cache
Origin address, origin sequence number & THL of N most recently forwarded packets
09/21/2011 CS 297 - Fall 2011 29

Experiments
12 testbeds 20-310 nodes 7 hardware platforms 4 radio technologies 6 link layers
09/21/2011 CS 297 - Fall 2011 30

Variations in hardware, software, RF environment, and topolog

Reliable, Efficient, and Robust


Testbed
Wymanpark Vinelab Tutornet NetEye Kansei Mirage-MicaZ Quanto Blaze Twist-Tmote MirageMica2dot TwisteyesIFXv2 High end-to-end Motelab
09/21/2011

Delivery Ratio
0.9999 0.9999 0.9999 0.9999 0.9998 0.9998 0.9995 0.9990 0.9929 0.9895 0.9836

False ack Retrans mit


31

delivery ratio 0.9607 (but not on allFall 2011 CS 297 - the testbeds!)

Reliable, Efficient, and Robust


0.9 8

Tutorne t
09/21/2011

5 30

10 15 20 35 Time (hrs)

25

High delivery ratio across time (short experiments can be CS 297 - Fall 2011 misleading!)

32

Reliable, Efficient, and Robust

Tutorne t
09/21/2011 CS 297 - Fall 2011

CTP Noe
Low data and control cost
33

Reliable, Efficient, and Robust


1 0.8 0.6 0.4 0.2 0 CSMA BoX-1s LPP-500ms

0.028 Link Layer

0.066

Motelab, 1pkt/5min
09/21/2011

Low duty-cycle with low-power MACs


CS 297 - Fall 2011 34

Reliable, Efficient, and Robust


10 out of 56 nodes removed at t=60 mins

Tutorne t
09/21/2011

Time (mins)
No disruption in packet delivery
CS 297 - Fall 2011 35

Reliable, Efficient, and Robust


Nodes reboot every 5 mins
Routing Beacons ~5 min

Tutorne t

Delivery Ratio > 0.99


36

High delivery ratio despite serious networkwide disruption 09/21/2011 CS 297 - Fall 2011 (most loss due to reboot while buffering

CTP Performance Summary


Reliability
Delivery ratio > 90% in all cases

Efficiency
Low cost and 5% duty cycle

Robustness
Functional despite network disruptions

09/21/2011

CS 297 - Fall 2011

37

CTP on Castalia

09/21/2011

CS 297 - Fall 2011

38

LE header & footer

09/21/2011

CS 297 - Fall 2011

39

Conclusion
Wireless routing benefits from data and control plane interaction Lessons applicable to distance vector routing
Datapath validation & adaptive beaconing

09/21/2011

CS 297 - Fall 2011

40

Вам также может понравиться