We present Flashback, a ready-to-use system for scalably handling large unexpected traffic spikes on web-sites. Unlike previous systems, our approach does not rely on any intermediate nodes to cache content. Instead, the clients (browsers) create a dynamic, self-scaling Peer-to-Peer (P2P) web-server that grows and shrinks according to the load. This approach translates into a challenging problem – a P2P data exchange protocol that can operate in churn rates where more than 90 % of peers can leave the overlay in under 10 seconds. This is atleast an order of magnitude higher churn rate than previously addressed research. Additionally, our system operates under two strict constraints – users are assured that they upload only as much as they download and second, end-user browsing experience is preserved, i.e., low latency downloads and zero configuration or download of any software. We believe these are very important for wide acceptance of the system. Various innovations were required to meet these challenges. Key among them are (a) A TCP-friendly, UDP protocol (Roulette) for Tit-For-Tat data exchange under extreme churn, (b) A novel data structure (NOIS) for partial-data management, (c) A distributed hole-punching protocol for automatic NAT traversal and (d) Automatic rendering of webpages using a technique we call the transported frame hack. Experimental results show the effectiveness and near optimal scaling of Flashback. For a webserver (and clients) running on a DSL-like connection, end-user latency increases only one second for every doubling in webserver load
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.