Upload
garrison-santana
View
29
Download
0
Embed Size (px)
DESCRIPTION
Findings in Reliable Bulk Data Transfer Experiments. GGB project Sukun Kim, David Culler, James Demmel, Gregory Fenves, Steve Glaser, Shamim Pakzad. NEST Meeting Mar 9, 2005. Table of Content. Reliable Bulk Transfer Where Packet Time Goes? Increasing Bandwidth Larger Packet Size - PowerPoint PPT Presentation
Citation preview
Findings in Reliable Bulk Data Transfer Experiments
GGB projectSukun Kim, David Culler,
James Demmel, Gregory Fenves,Steve Glaser, Shamim Pakzad
NEST MeetingMar 9, 2005
Table of Content
1. Reliable Bulk Transfer2. Where Packet Time Goes?3. Increasing Bandwidth
1. Larger Packet Size2. Compression
4. Conclusion
State Diagram of Sender
More
Start
Request / Set Timer
Yes / Read
Timer Fired /Send
No / Stop Timer
• Simple (intelligence in receiver)
• Interface is simple– read(start, size, *buffer)
• Send everything once, and fill holes
• Read depth in routing tree, and adjust shooting speed, RTT estimate, etc
State Diagram of Receiver
Start
More
Send Network-Info Request
Receive / Send Transfer Request, Set Timer
Receive & Last || Timeout / count = 0
Timeout / FAIL
Receive & not Last / Set Timer
Yes / Send ReadRequest, Set Timer
Receive / count = 0
More in Round
count < threshold
Yes
No
Yes /++count
No /FAIL
No / SUCCESS
Timeout
Test Result
95.6%560B/s96.6%
576B/s
91.4%296B/s
91.8%304B/s
93.2%299B/s
* End-to-end Raw Reliability Effective Bandwidth (Byte/s)
• 10KB of data– 500 packets
• Mica2dot, 36 bytes/pkt
• Max in theory– 630B/s for 1 hop
• Up to 91.4% efficiency
– 352B/s for 2 hops• Up to 86.4% efficiency
Table of Content
1.Reliable Bulk Transfer2. Where Packet Time Goes?3. Increasing Bandwidth
1.Larger Packet Size2.Compression
4.Conclusion
Routing
75%
80%
85%
90%
95%
100%
28 29 30 31 32Interval (ms)
Succ
ess
Rate
Mica2, 36bytes/pkt
For Mica2, packet size = 36 bytes
• Channel capacity– UART: 57.6Kbps = 200pkts/s– Radio: 19.2Kbps = 66.7pkts/s– 1 hop: 50pkts/s
• Usable capacity– UART: 120pkts/s– Radio: 42pkts/s– Routing: 31pkts/s (1 hop)– Reliable: 29.4pkts/s (1 hop)
Mica2, 36bytes/pkt
Packets per second (Out of 50pkts/s)
14%
24%
0%
3%
59%
UARTRadioRoutingReliableCapacity
Mica2, 36bytes/pkt
Effect of header is considered here
Bandwidth (Out of 14400bps)
31%
19%12%
5%
33%UARTRadioRoutingReliableCapacity
Mica2, 36bytes/pkt
Packet Time (for 1bit)
8%
25%
5%
14%13%
0%
21%
5%9% UART Channel
Radio ChannelUART OverheadRadio OverheadGenericComm HeaderRouting OverheadRouting HeaderReliable OverheadReliable Header
Table of Content
1. Reliable Bulk Transfer2. Where Packet Time Goes?3. Increasing Bandwidth
1. Larger Packet Size2. Compression
4. Conclusion
Options for Increasing Bandwidth
• Multiple Base Station
• 802.15.4 radio
• Larger Packet Size
• Compression
Table of Content
1. Reliable Bulk Transfer2. Where Packet Time Goes?3. Increasing Bandwidth
1. Larger Packet Size2. Compression
4. Conclusion
Effect on Bandwidth
• Doubled packet size: 36B 72B
• Payload: 20B 56B (2.8 times)
• Packets/sec: 29.4 20.9 (71%)
• Bandwidth doubled: 588B/s 1172B/s (1.99 times)
RAM space
• From 3437 to 4733– 36Bytes RAM increase per 1Byte increase in packet
size• Reason – Packet buffer space
– 4 below GenericComm– 3 in TimeSync– 16 in Routing– 4 in Bcast– 2 + 5 in Reliable– 2 in application
• Basic services (Comm + TimeSync + Routing + Bcast + Reliable) can go beyond 4KB RAM with packet size = 72Bytes
Why so much RAM(packet buffer)?
GenericComm
Routing Forward
QueuedSend
Drip
RBR Component 2
Component 1
Forward Forward
*There is mismatch between incoming speed and outgoing speed of packetsNot to drop packet, forward buffer is needed for each componentEach end component using network has at least 1 buffer – 2 or more if we don’t want to wait
Component 3
Queue of pointers
BcastForward
Sharing packet buffer
GenericComm
Routing Forward
QueuedSend
Drip
RBR Component 2
Component 1
Forward ForwardComponent 3
Actual packet buffer
BcastForward
Table of Content
1. Reliable Bulk Transfer2. Where Packet Time Goes?3. Increasing Bandwidth
1. Larger Packet Size2. Compression
4. Conclusion
Run Length Encoding (RLE)
• 94720, 94704, 94715, 94708 becomes 947 + 20, 04, 15, 08
• Exception– 94720, 94704, 92345, 94708 becomes– 947 + 20, 04, \92345, 08
• Run simulation on footbridge vibration data
Fragment Size: 4
Threshold: 2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
5
40
3200
20
40
60
80
100
120
140
160
Threshold
Fragment Size
Compression Ratio
High ResolutionFootbridge data
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
5
40
3200
20
40
60
80
100
120
140
Threshold
Fragment Size
Compression Ratio
Low ResolutionFootbridge data
Analysis
High Resolution Low Resolution
RLE 66% 45%
gzip * 68% 49%
Theory 56.25%
(9 random bits)
37.5%(6 random bits)
• Basic algorithm of gzip utilizes repetition of same pattern
• Algorithm of RLE fits better to sensor data
* Windows zip showed 0.64% increase
Analysis (continued)
• There exists room for lossless or lossy compression
• Compression ratio is sensitive to parameters (even go above 100%)
• Selecting RLE parameter (either statically or dynamically) is critical
33789679201Similar
CompressRandom garbage Drop
Table of Content
1. Reliable Bulk Transfer2. Where Packet Time Goes?3. Increasing Bandwidth
1. Larger Packet Size2. Compression
4. Conclusion
Conclusion
• Reliable Bulk Transfer– 5.2% decrease in packet throughput– 13.8% decrease in bandwidth
• Packet is small compared to the size of header, so doubling packet size doubles bandwidth– RAM limit due to many packet buffers
• RLE decreases the size of vibration data by 45%, and will be applicable to other sensor data
Questions
For Mica2, packet size = 36 bytes
Top, Left: Packet SizeBottom, Right: pkts/sec
0 10 20 30 40
CapacityReliableRoutingGenericComm
0 20 40 60
CapacityReliableRoutingRadioUART
Test Result
99.0%80.699.0%
73.2
96.6%40.0
97.7%41.5
96.3%35.0
98.5%49.0
* End-to-end Connection Quality Effective Bandwidth (Byte/s)
• 2KB of data– 143 packets
• Mica2dot