1 / 24

Data Compression Algorithms for Energy-Constrained Devices in Delay Tolerant Networks

Data Compression Algorithms for Energy-Constrained Devices in Delay Tolerant Networks. Christopher Sadler Margaret Martonosi Princeton University. Why do we care about Compression in Sensor Networks?. ~2 Million!. Success = Energy Savings Energy = Compute Energy + Transmit Energy. ~32,000.

malha
Download Presentation

Data Compression Algorithms for Energy-Constrained Devices in Delay Tolerant Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Data Compression Algorithms for Energy-Constrained Devices inDelay Tolerant Networks Christopher Sadler Margaret Martonosi Princeton University

  2. Why do we care about Compression in Sensor Networks? ~2 Million! • Success = Energy Savings • Energy = Compute Energy + Transmit Energy ~32,000 ~4,000 Med. Range 300 m Short Range 125 m Long Range 15 km

  3. Why do we care about Compression in Sensor Networks? Medium Range Radio (CC1000) Unreliability: • Retransmission • Extra energy cost • Easier to amortize original energy cost of compression ~128,000! ~32,000

  4. Why do we care about Compression in Sensor Networks? • Downstream Energy Tradeoff: • Relay all data • vs. • Relay compressed data Source • DownstreamEnergy Tradeoff: • Relayall data • vs. • Relay compressed data • Local Energy Tradeoff: • Transmit all data • vs. • Compress data • Store data • Transmit compressed data Sink Savings Accumulate with Hop Count

  5. This work • Lossless compression algorithms tailored to static and mobile sensors • Generally applicable for WSNs • Aggregation • Spatial-temporal correlation • Implementation and evaluation on the real data set • Great Duck Island Monitoring, ZebraNet, …

  6. Outline • Design Criteria and LZW Compression • What we want in Sensor Compression? • How do we adapt LZW to Sensors? • Using Compression to Conserve Energy • Conclusions

  7. Sensor Network Compression: Energy Savings for Everyone • Need a general purpose, lossless compression algorithm that can work across the design space Great Duck Island (UCB): Outdoors, Stationary SensorScope (EPFL): Indoors, Stationary ZebraNet (Princeton): Outdoors, Mobile

  8. Sensor Network Compression: What do we want? • Low Transmission Overhead • Computationally Simple • Compute energy of compression should not outweigh transmission energy savings • Bounded Memory Footprint • To fit in small sensor node memories • Adaptive to general data sets • Exploit repetition in general input data streams • Work on small blocks of data

  9. LZW Compression LZW is a dictionary-based algorithm which encodes new strings based on previously encountered strings. AAAABAAABCC (8bits * 11 = 88bits required) Standard Dic A = 65 B = 66 C = 67 . . . Z = 90 . . . ? = 255 Encoded String Output Stream New Dic entry A 65 AA = 256 AA 65 256 AAA = 257 A 65 256 65 AB = 258 B 65 256 65 66 BA = 259 AAA 65 256 65 66 257 AAAB = 260 B 65 256 65 66 257 66 BC = 261 C 65 256 65 66 257 66 67 CC = 262 C 65 256 65 66 257 66 67 67 66 bits required

  10. Outline • Design Criteria and LZW Compression • What we want in Sensor Compression? • How do we adapt LZW to Sensors? • Using Compression to Conserve Energy • Conclusions

  11. S-LZW: LZW for Sensor Nodes • Dictionary decisions • How large should we make the dictionary? • What do we do if the dictionary fills? • Data decisions • How much data should we compress at once? • Can we shape the dictionary to improve compression? • Can we shape the data to make it easier to compress?

  12. S-LZW: LZW for Sensor Nodes • Dictionary decisions • How large should we make the dictionary? • What do we do if the dictionary fills? • Data decisions • How much data should we compress at once? • Longer data streams => better compression learning • But too long => high retransmit cost when packets dropped • Can we shape the dictionary to improve compression? • Can we shape the data to make it easier to compress? Examined by experiments

  13. … … S-LZW Idea 1: Data Size SENSOR DATA – N BYTES GENERATED OVER TIME … 528 B Block (2 Flash Pages) 528 B Block (2 Flash Pages) 528 B Block (2 Flash Pages) … COMP. ALGORITHM COMP. ALGORITHM COMP. ALGORITHM … Compressed Data Compressed Data Compressed Data … Independent groups of 10 or fewer dependent packets

  14. Exploit fine-grained locality even in short sensor data sequences Proposal: Mini-cache to tightly encode MRU entries Hit => Saves multiple bits. Miss => Costs just 1 extra escape bit S-LZW Idea 2: Mini-Caching Escape Bit 0 1 Dictionary Tree Mini-Cache (N entries) 10 Bit Entries 9 Bit Entries (Log2 N)+1 Bit Entries

  15. S-LZW Idea 3: Data Transforms • BWT – Reversible method of transforming data used in bzip2 and applicable for all data • Proposal: Structured Transform - Create a matrix of readings and transpose it to create runs • Simple, but effective cb 4e 70 62 … d5 4e 46 62 … d8 4e 31 62 … db 4e 2b 62 … ............ cb d5 d8 db … 4e 4e 4e 4e … 70 46 31 2b … 62 62 62 62 … ............

  16. Outline • Design Criteria and LZW Compression • Using Compression to Conserve Energy • Local and Downstream Energy • The Influence of Unreliable Communications • The Effects of Shaping the Data • Conclusions

  17. Measurement Methodology:CPU and Radios • Evaluation Platform: • TI microcontroller MSP430: 10 kB RAM, 48 kB ROM • Off-Chip Flash: 4 Mbit Atmel • 3 Radios: Short (CC2420), Medium (CC1000), and Long (XTend) range • 3 Real World Datasets… • SensorScope (SS) – Indoor, Stationary • Great Duck Island (GDI) – Outdoor, Stationary • ZebraNet (ZNet) – Outdoor, Mobile • … And one Compression Benchmark • Geo from the Calgary Corpus (Calgeo)

  18. Local Energy Savings CC2420(Short Range) XTend(Long Range) 15+% Loss 1% Loss 1.2X Gain 1.7X Gain Lower is better 2.6X Gain Data Compressed with S-LZW with Mini-Cache Model assumes 100% reliability

  19. Downstream EnergySavings CC2420 (Short Range) XTend (Long Range) ZNet data, Compressed with S-LZW with Mini-Cache Model assumes 100% reliability

  20. Coping with Unreliability CC2420 (Short Range) • Energy savings increase linearly with hop count GDI Data, Compressed with S-LZW with Mini-Cache

  21. Coping with Unreliability CC2420 (Short Range) • Energy savings increase linearly with hop count • At a 90% success rate, we save energy locally GDI Data, Compressed with S-LZW with Mini-Cache

  22. Transforms to Improve Performance • BWT – Reversible method of transforming data through sorting it XTend (Long Range) Top – Radio EnergyMiddle – Flash EnergyBottom – CPU Energy 7-8% Improvement • We sort with an iterative quicksort algorithm, but this comes at a high computational cost 2.4X Gain 3.4X Gain Model assumes 100% reliability Normalized against sending the data without compression

  23. Algorithms Summary Data Composition? Structured General Number of Hops? Number of Hops? Few Many Few Many Radio Range? Radio Range? S-LZW-MC8-ST ~2.3X Savings S-LZW-MC16-BWT ~1.8X Savings Medium/Long Medium/Long Short Short RLE-ST ~1.9X Savings S-LZW-MC16-BWT ~1.8X Savings S-LZW-MC32 ~1.4X Savings S-LZW-MC8-ST ~2.4X Savings BWT – Unstructured Transform MC – Mini-CacheST – Structured Transform

  24. Conclusions • Existing techniques (LZW, Cache, BWT …) applied to new application domains (WSNs) • Less novelty and originality • Incremental work • Upper bound 4 points • Systematic solution with complete considerations • Dictionary size, data size, local cache, data transformation … • Substantial merits proved by sound experiments • Different types of radio transceivers (CC2420, CC1000, XTend) • Real-world data set

More Related