1 / 28

Ditto - A System for Opportunistic Caching in Multi-hop Mesh Networks

Ditto - A System for Opportunistic Caching in Multi-hop Mesh Networks. Contents. Introduction to WMN Throughput issues in WMN Related Work Challenges and Opportunities Ditto Design Chunk Based Transfers Ditto Proxy Sniffer Evaluation Limitations. Wireless Mesh Networks (WMNs).

Download Presentation

Ditto - A System for Opportunistic Caching in Multi-hop Mesh 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. Ditto - A System for Opportunistic Caching in Multi-hop Mesh Networks

  2. Contents • Introduction to WMN • Throughput issues in WMN • Related Work • Challenges and Opportunities • Ditto Design • Chunk Based Transfers • Ditto Proxy • Sniffer • Evaluation • Limitations

  3. Wireless Mesh Networks (WMNs) A communications network made of radio nodes in a mesh topology Gateway Router Router • Cost Effective,Last mile technology • Greater Coverage Router Router • Robust , Self Healing Infrastructure / Backbone WMN

  4. Motivation :Throughput Problem in WMNs P3 P1 • Interference • Congestion at hotspots (GW)

  5. Throughput problems (contd..) • Increase in number of hops -> increase in probability of loss due to interference • Has an adverse effect on the throughput at Transport layer

  6. Hierarchical Caching [Web Caching Technique] • Disadvantages 1) Application specific 2) Need to cache the whole files. Takes advantage of the similarity and locality of workload. Server National Cache Regional Cache Institutional Cache Bottom(Local Cache)

  7. RTS-id 0 0 0 00 RTS for packet id 0 CTS I already have it 0 Packet Level Caching Cache overheard packets Disadvantages Too Granular, high overhead Not scalable for large networks.

  8. Exploiting Locality through Caching P1 and P3 perform on-path caching P3 Path of the transfer: Alice, P1, P3, GW P1 P2 P2 can perform opportunistic caching On-Path + Opportunistic Caching -> Ditto

  9. Challenges in wireless networks for Opportunistic Caching • High loss rates due to interference / collision. • MAC layer takes care of this by re-transmissions. • There could be cases where overhearing node cannot hear properly while the recipient node does. 2 1 1 1 2 2 1 2 Observation Multi-hop transmission creates more opportunities for over-hearing thus mitigating the effect of lossy transmissions in wireless networks.

  10. Ditto : Key Points • Based on Opportunistic caching and exploits the broadcast nature of wireless networks. • “Chunk based” caching • Application independent. • Exploits re-transmissions for advantage.

  11. File Transfer Mechanism In Ditto • Ditto uses “Data Oriented Transfer” • Factors needed to be considered while devising an efficient file transfer mechanism: 1) Packet level caching is too granular. Incurs a lot of overhead for re-assembly . 2) File-level caching is also not efficient as overhearing a complete file is less probable. Solution: • Divide file into smaller units called “Chunks”[8 – 32 kb] • Use chunks as data transfer units. • Use the hash value of contents to identify the chunk.

  12. Advantages of DOT • Fairly good probability of overhearing, easy to Re-assemble • Application independent : uses Rabin fingerprinting to mark boundary regions for splitting files into chunks. Increases the probability of finding identical chunks in similar files. • Self verifying mechanism as chunks are named using the hash value of their contents.

  13. Ditto Design Components: • Ditto Proxies • Cache and serve data to their previous hop proxies. • Next – Hop towards Gateway • Per-Hop TCP connection. • Sniffers • Over hear data • Reconstruct overheard chunks • Pass the reconstructed chunks to proxies

  14. Ditto Design

  15. Ditto Transfer - Illustration Hash Function • Step 1 • Step 2 Receiver Sender Chunk 1 Chunk ID1 Chunk 2 Chunk ID2 File.txt Chunk 3 Chunk ID3 Chunk 4 Chunk ID4 File Request Application Application ChunkIds:1,2,3,4 Chunk request DOT Service DOT Service DOT Service Transport layer Transport layer Chunks Sniffer

  16. Sniffer • Overhears the ongoing transmission • Identifies the TCP transmission using the IP and Port pairs(Src IP , Src Port , Dest IP , Dest Port) • Uses sequence number for re-assembly. Inter Stream Re-Assembly TCP STREAM A Chunk Header TCP STREAM B Thus Exploits multiple hearing oppurtunities 1 2 4 5 6 1 2 3 4 5 6 X 1 2 3 5 6

  17. Emulab Wireless Testbed Gateway

  18. Experimental Setup • Wireless Network used : 802.11b • File Sizes : 1- 5 MB • Chunk Sizes – 8 KB, 16 KB, 32 KB

  19. Reconstruction Efficiency Around 50% observers are able to reconstruct at least 50% chunks

  20. Throughput Evaluation • Leaf Nodes request the same file from the gateway • e.g: software update on all nodes • Different request patterns: • Sequential, staggered • Random order of receivers • Schemes • Ditto’s comparison with On-Path and E2E

  21. Throughput Improvement in Ditto Median = 1380 Kbps Median = 1380 Kbps Median = 540 Kbps Median = 540 Kbps Median = 540 Kbps Median = 5370 Kbps Campus Testbed

  22. Results (contd) • Effect Of Chunk Size - As noted earlier , smaller chunk size implies better reconstruction efficiency. - Results show that with 8Kb chunk size 20 % of observers were able to reconstruct 80% of chunks. With 32Kb chunk size , this reduces to 60 %. • Effect of Inter Stream Re-assembly 10 % improvement over without inter-stream re- assembly.

  23. Evaluation Results / Conclusion • Hotspot formation near gateways avoided as nodes near gateway have high overhearing effectiveness. • A choice 8-32 KB of chunk size gives a good reconstruction efficiency. • Significant throughput improvement – up to 7X compared to On Path and 10X compared to no caching • At points where-ever inter stream assembly by overhearing was possible there was an improvement of 10% in reconstruction efficiency

  24. Limitations of the approach • Ditto requires that a TCP connection between each proxy , if there are multiple Transport layer timeouts it would severely affect the performance.(It is quite possible in a wireless environment). • While fetching a file , a lookup is made at each proxy which results in considerable delay if there are many proxies on the path [especially if the file chunks are not present in any of the proxies]. • The method is not energy efficient , overhearing results in a lot of energy wastage. • If Encapsulated packets are used as in secure tunnels, it would be complex to perform inter stream re-assembly (as all packets are addressed to the same destination – which is the secure gateway).

  25. Thank You Q?

  26. Extra slides: Sniffer Implementation

  27. Sniffer Implementaiton (continued) Chunk Table

  28. Sniffer Implementation (contd) • Flow Chunk Map

More Related