MashCache: Taming Flash Crowds by Using Their Good Features

This paper presents MashCache, a scalable client-side architecture for taming harsh effects of flash crowds. Like previous systems, MashCache extensively makes use of client resources to cache and share frequently accessed contents. To design MashCache, we carefully investigated the quantitative analysis of flash crowds in the wild and found out that flash crowds have three good features that can be used to simplify the overall design of MashCache. First, flash crowds start up very slowly. MashCache has enough time to prepare for the coming flash crowds. Second, flash crowds last for a short period. Since the accessed content is rarely updated in this short period, MashCache can employ a simple mechanism for cache consistency. Finally, the clients issue the same requests on the target web sites. This feature simplifies the cache management of MashCache because the cache explosion can be avoided. By using these good features of flash crowds, MashCache advances the state-of-the-art of P2P based caching systems for flash crowds; MashCache is a pure P2P system that combines 1) aggressive caching, 2) query-origin key, 3) two-phase delta consistency, and 4) carefully designed cache meta data. MashCache has another advantage. Since it works completely on client-side, MashCache can tolerate flash crowds even if the external services the mashup depends on are not equipped with flash-crowd-resistant mechanisms. In the experiments with up to 2,500 emulated clients, a prototype of MashCache reduces the number of requests to the original web servers by 98.2% with moderate overheads.

[1]  Indranil Gupta,et al.  A churn-resistant peer-to-peer web caching system , 2003, SSRS '03.

[2]  Mary Baker,et al.  Peer-to-Peer Caching Schemes to Address Flash Crowds , 2002, IPTPS.

[3]  Balachander Krishnamurthy,et al.  Flash crowds and denial of service attacks: characterization and implications for CDNs and web sites , 2002, WWW.

[4]  Christos Gkantsidis,et al.  Comprehensive view of a live network coding P2P system , 2006, IMC '06.

[5]  Robert Morris,et al.  Chord: A scalable peer-to-peer lookup service for internet applications , 2001, SIGCOMM 2001.

[6]  Stefan Schmid,et al.  eQuus: A Provably Robust and Locality-Aware Peer-to-Peer System , 2006, Sixth IEEE International Conference on Peer-to-Peer Computing (P2P'06).

[7]  Tobias Lauinger,et al.  Embracing the Peer Next Door: Proximity in Kademlia , 2008, 2008 Eighth International Conference on Peer-to-Peer Computing.

[8]  Kazuyuki Shudo,et al.  Overlay Weaver: An overlay construction toolkit , 2008, Computer Communications.

[9]  Nalini Venkatasubramanian,et al.  Flashback: A Peer-to-PeerWeb Server for Flash Crowds , 2007, 27th International Conference on Distributed Computing Systems (ICDCS '07).

[10]  Robert Tappan Morris,et al.  Designing a DHT for Low Latency and High Throughput , 2004, NSDI.

[11]  B. Cohen,et al.  Incentives Build Robustness in Bit-Torrent , 2003 .

[12]  Antony I. T. Rowstron,et al.  Squirrel: a decentralized peer-to-peer web cache , 2002, PODC '02.

[13]  Ronald L. Rivest,et al.  The MD5 Message-Digest Algorithm , 1992, RFC.

[14]  Beng Chin Ooi,et al.  BuddyWeb: A P2P-Based Collaborative Web Caching System , 2002, NETWORKING Workshops.

[15]  Vladimir Vlassov,et al.  DOH: A Content Delivery Peer-to-Peer Network , 2006, Euro-Par.

[16]  Emin Gün Sirer,et al.  Meridian: a lightweight network location service without virtual coordinates , 2005, SIGCOMM '05.

[17]  Li Fan,et al.  Web caching and Zipf-like distributions: evidence and implications , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).

[18]  David Mazières,et al.  Democratizing Content Publication with Coral , 2004, NSDI.