Rate-Controlled Reliable Transport for Wireless Sensor Networks
Jeongyeup Paek, Ramesh Govindan
2
Reliability: Sensor Network Applications
Structural Health MonitoringWisden, NetSHM
Tenet-Wisden deployment at Vincent Thomas Bridge
ImagingTenet-Cyclops deployment at James Reserve
Motivation Design Goals Design Evaluation Conclusion
(Tenet: [Gnawali et.al., Sensys’06])
3
Rate-Control: Congestion Collapse
Four seasons building deployment (Wisden, 2004)
Sensors measured vibrations and transmitted it to a base station, over multiple hopsPreconfigured rates for each flow
Led to congestionSome packets took more than an hour to recover, while collecting 10_minutes worth of vibration dataWas not anticipated during lab tests
Loss recovery latency
Motivation Design Goals Design Evaluation Conclusion
4
Rate-Controlled Reliable Transport
SinkSink
App.
RCRT is a protocol that reliably transports sensor data from many sources to one or more sinks without incurring congestion collapse
Motivation Design Goals Design Evaluation Conclusion
5
Design Goals
Reliable end-to-end delivery
Network efficiency
Support concurrent applications
Flexibility
Minimal sensor functionality
Robustness
Motivation Design Goals Design Evaluation Conclusion
6
source node
r’i-1
r’j
r’…
r’i+1
r’…r’1
Protocol Overview
Sink
ririr’i
Congestion detection
Rate adaptation
End-to-end loss recovery
Rate allocation
Connection establishment
Data transmission
Motivation Design Goals Design Evaluation Conclusion
Placing rate control functionality at the sink allows the system to have a global view of the network,
resulting in efficiency and flexibility
7
End-to-end Loss Recovery
Loss recovery mechanismNegative ack.End-to-end retransmissionCumulative ack.
RCRT uses loss-recovery information for congestion detection
Motivation Design Goals Evaluation ConclusionDesign
Reliable end-to-end delivery
Network efficiency
Support concurrent applications
Flexibility
Minimal sensor functionality
Robustness
8
Congestion Detection
“The network is not congested as long as end-to-end losses are repaired quickly enough”
Ci
L UCongested if Ci ≥ U, ∃iUnder-utilized if Ci ≤ L, ∀i
Motivation Design Goals Evaluation ConclusionDesign
Loss recovery latency
Use ‘time to recover loss’ as congestion indicator
Ci is the average number of RTTi’s to recover a loss from node i.
Simple thresholding technique on Ci.
Allow losses, as long as they are recovered quickly enough.
Use the fact that sink has complete view of network.
9
Rate Adaptation
“Having a global view of the network allows more efficient rate adaptation.”
AIMD on total aggregate rate of all the flows observed by sink:
Increase
Decrease
How is M(t) determined?
AtRtR )()1(
)()()1( tRtMtR
)()( trtR i
Motivation Design Goals Evaluation ConclusionDesign
Reliable end-to-end delivery
Network efficiency
Support concurrent applications
Flexibility
Minimal sensor functionality
Robustness
10
Expected reverse traffic
Expected foward traffic
Adaptive Multiplicative Decrease: M(t)
p
ptM
2
)(rp
pr
2'
Source Sinkpr r p
r (1-p)
r / p
r(1-p) / p
M(t) is larger than 0.5 for p ≥ 0.67
received
lost..
Expected total traffic
Motivation Design Goals Evaluation ConclusionDesign
11
Does RCRT avoid congestion collapse?
Regardless of r’(t), r’(t+1) is always below capacity.
M(t) is more aggressive when r’(t) is higher
congestion
Motivation Design Goals Evaluation ConclusionDesign
12
Rate Allocation
“Having a global view of the network allows RCRT to decouple rate allocation from adaptation”
Flexible use of different rate allocation policiesMinimal sensor functionality
Assign ri(t) to each flow based on the associated rate allocation policy P
Demand-proportional (Weighted)Demand-limitedFair
)()( trtR i
Motivation Design Goals Evaluation ConclusionDesign
Reliable end-to-end delivery
Network efficiency
Support concurrent applications
Flexibility
Minimal sensor functionality
Robustness
Can implement and use different kind of policies without having to modify anything on the sensors
13
Evaluation
35
4
8
6
7
1410111213 918
20
21
16 1524 1726 22252728
30
31
23
32
36 34
29
35 3339 3738
40
4th fl.
2
19
1
40-node telosb testbedA snapshot of routing tree
during an experiment
Motivation Design Goals Design Evaluation Conclusion
14
RCRT Results
…and of course, 100% reliable packet delivery
efficient AIMD fair goodput
Motivation Design Goals Design Evaluation Conclusion
15
RCRT
Efficiency
Reliable transport without congestion control
Motivation Design Goals Design Evaluation Conclusion
RCRT achieves 88% of sustainable reliable and fair rate
16
Robustness and Flexibility
Motivation Design Goals Design Evaluation Conclusion
Sink.2Sink.1
App.1
Sensors
App.2
Demand-limited Demand-proportional
App.1
Sink.1
Sensors
App.2
Sink.2
SensorsSensors
Tiered Network
2 applications, 4 sets of flows(2 flows per node)
2 different sets of flows per application
Reliable end-to-end delivery
Network efficiency
Support concurrent applications
Flexibility
Minimal sensor functionality
Robustness
Demand-limited Demand-proportional
App.1
Sink.1
App.2
Sink.2
Sensors
2 applications, 4 sets of flows
App.1 starts
App.2 startsDemand-limited
App.1 ends
App.2 ends
RCRT is robust to node joins & leaves, (and routing dynamics)
Two concurrent applications with two different rate allocation policies
ran successfully on a tiered multi-sink network.
Demand-proportional
17
Comparison with IFRC
RCRT achieves x 1.7 the rate achieved by IFRC
When we use software ack. and promiscuous mode on RCRT…
Motivation Design Goals Design Evaluation Conclusion
18
Related Work
Non-reliable
Reliable
DistributedCong. Control
CentralizedCong. Control
No CongestionControl
Flush RCRTWisden, Tenet,
RMST
RBCQCRA, ESRTIFRC,
Fusion, CODA
Motivation Design Goals Design Evaluation Conclusion
19
Conclusion
RCRT is a reliable transport protocol for wireless sensor networks
Motivation Design Goals Design Evaluation Conclusion
Centralized congestion control provides better perspective into the network, which enables better aggregate control of traffic and affords flexibility in rate allocation
20
Future WorkDesign
Inter-sink cooperationProviding excess bandwidth to unconstrained nodes, and isolating exceptionally poorly connected links.Application’s behavior to rate-adaptive transport
Implementation & deploymentIntegration into TenetJames Reserve deployment (Tenet/Cyclops)
Thank youhttp://enl.usc.edu
Motivation Design Goals Design Evaluation Conclusion