300 likes | 416 Views
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
E N D
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 • Compression • Conclusion
State Diagram of Sender • Send everything once, and fill holes • Read depth in routing tree, and adjust shooting speed, RTT estimate, etc • Simple (intelligence in receiver) • Interface is simple • read(start, size, *buffer) Start Request / Set Timer More No / Stop Timer Yes / Read Timer Fired / Send
State Diagram of Receiver Start Send Network-Info Request Timeout / FAIL Receive / Send Transfer Request, Set Timer Receive & not Last / Set Timer Receive & Last || Timeout / count = 0 No More in Round Yes / ++count Yes Receive / count = 0 Yes / Send Read Request, Set Timer No / FAIL More count < threshold Timeout No / SUCCESS
Test Result 93.2% 299B/s 91.8% 304B/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 91.4% 296B/s 95.6% 560B/s 96.6% 576B/s * End-to-end Raw Reliability Effective Bandwidth (Byte/s)
Table of Content • Reliable Bulk Transfer • Where Packet Time Goes? • Increasing Bandwidth • Larger Packet Size • Compression • Conclusion
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)
Effect of header is considered here Mica2, 36bytes/pkt
Table of Content • Reliable Bulk Transfer • Where Packet Time Goes? • Increasing Bandwidth • Larger Packet Size • Compression • Conclusion
Options for Increasing Bandwidth • Multiple Base Station • 802.15.4 radio • Larger Packet Size • Compression
Table of Content • Reliable Bulk Transfer • Where Packet Time Goes? • Increasing Bandwidth • Larger Packet Size • Compression • 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)? Forward Forward RBR Component 2 Component 3 Component 1 Forward Forward Routing Drip Bcast QueuedSend Queue of pointers GenericComm *There is mismatch between incoming speed and outgoing speed of packets Not to drop packet, forward buffer is needed for each component Each end component using network has at least 1 buffer – 2 or more if we don’t want to wait
Sharing packet buffer Forward Forward RBR Component 2 Component 3 Component 1 Forward Forward Routing Drip Bcast QueuedSend Actual packet buffer GenericComm
Table of Content • Reliable Bulk Transfer • Where Packet Time Goes? • Increasing Bandwidth • Larger Packet Size • Compression • 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 Threshold: 2 Fragment Size: 4
High Resolution Footbridge data
Low Resolution Footbridge data
Analysis • Basic algorithm of gzip utilizes repetition of same pattern • Algorithm of RLE fits better to sensor data * Windows zip showed 0.64% increase
33789679201 Similar Compress Random garbage Drop 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
Table of Content • Reliable Bulk Transfer • Where Packet Time Goes? • Increasing Bandwidth • Larger Packet Size • Compression • 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
For Mica2, packet size = 36 bytes Top, Left: Packet Size Bottom, Right: pkts/sec
Test Result 98.5% 49.0 96.3% 35.0 • 2KB of data • 143 packets • Mica2dot 97.7% 41.5 96.6% 40.0 99.0% 80.6 99.0% 73.2 * End-to-end Connection Quality Effective Bandwidth (Byte/s)