skip to main content
10.1145/2465351.2465379acmconferencesArticle/Chapter ViewAbstractPublication PageseurosysConference Proceedingsconference-collections
research-article

Maygh: building a CDN from client web browsers

Published: 15 April 2013 Publication History

Abstract

Over the past two decades, the web has provided dramatic improvements in the ease of sharing content. Unfortunately, the costs of distributing this content are largely incurred by web site operators; popular web sites are required to make substantial monetary investments in serving infrastructure or cloud computing resources---or must pay other organizations (e.g., content distribution networks)---to help serve content. Previous approaches to offloading some of the distribution costs onto end users have relied on client-side software or web browser plug-ins, providing poor user incentives and dramatically limiting their scope in practice.
In this paper, we present Maygh, a system that builds a content distribution network from client web browsers, without the need for additional plug-ins or client-side software. The result is an organically scalable system that distributes the cost of serving web content across the users of a web site. Through simulations based on real-world access logs from Etsy (a large e-commerce web site that is the 50th most popular web site in the U.S.), microbenchmarks, and a small-scale deployment, we demonstrate that Maygh provides substantial savings to site operators, imposes only modest costs on clients, and can be deployed on the web sites and browsers of today. In fact, if Maygh was deployed to Etsy, it would reduce network bandwidth due to static content by 75% and require only a single coordinating server.

References

[1]
P. Aditya, M. Zhao, Y. Lin, A. Haeberlen, P. Druschel, B. Maggs, and B. Wishon. Reliable Client Accounting for P2P-Infrastructure Hybrids. NSDI, 2012.
[2]
D. G. Andersen, H. Balakrishnan, M. F. Kaashoek, and R. Morris. Resilient overlay networks. SOSP, 2001.
[3]
Adblock Plus: Statistics for Adblock Plus. http://bit.ly/10WEytx.
[4]
Akamai NetSession. http://www.akamai.com/client.
[5]
Alexa - Top Sites in the United States. http://www.alexa.com/topsites/countries;1/US.
[6]
Alexa Top 500 Global Sites. http://www.alexa.com/topsites.
[7]
ArcusNode. https://github.com/OpenRTMFP/ArcusNode.
[8]
S. Buchholz and T. Buchholz. Replica placement in adaptive content distribution networks. SIGACT, 2004.
[9]
BitTorrent. http://www.bittorrent.com.
[10]
R. Cheng, W. Scott, A. Krishnamurthy, and T. Anderson. FreeDOM: a New Baseline for the Web. HotNets, 2012.
[11]
L. P. Cox and B. D. Noble. Samsara: Honor Among Thieves in Peer-to-Peer Storage. SOSP, 2003.
[12]
M. Dischinger, A. Haeberlen, K. P. Gummadi, and S. Saroiu. Characterizing Residential Broadband Networks. IMC, 2007.
[13]
M. E. Dick, E. Pacitti, and B. Kemme. Flower-CDN: a hybrid P2P overlay for efficient query processing in CDN. EDBT, 2009.
[14]
Etsy. http://www.etsy.com.
[15]
L. Fan, P. Cao, and J. Almeida. Summary Cache: A Scalable Wide-Area Web Cache Sharing Protocol. SIGCOMM, 1998.
[16]
R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, and T. Berners-Lee. Hypertext Transfer Protocol -- HTTP/1.1. RFC 2616, IETF, 1999.
[17]
M. J. Freedman and R. Morris. Tarzan: A Peer-to-Peer Anonymizing Network Layer. CCS, 2002.
[18]
M. J. Freedman, E. Freudenthal, and D. Mazières. Democratizing content publication with Coral. NSDI, 2004.
[19]
Adobe Flash Player Statistics. http://www.adobe.com/products/flashplatformruntimes/statistics.html.
[20]
A. Gupta, B. Liskov, and R. Rodrigues. One Hop Lookups for Peer-to-Peer Overlays. HotOS, 2003.
[21]
X. Hei, C. Liang, J. Liang, Y. Liu, and K. Ross. A Measurement Study of a Large-Scale P2P IPTV System. IEEE Trans. Multimedia, 9(8), 2007.
[22]
S. Iyer, A. Rowstron, and P. Druschel. Squirrel: A decentralized peer-to-peer web cache. PODC, 2002.
[23]
S. Ihm. Understanding and Improving Modern Web Traffic Caching. Ph.D. Thesis, Princeton University, 2011.
[24]
S. Ihm and V. S. Pai. Towards Understanding Modern Web Traffic. IMC, 2011.
[25]
D. Karger, E. Lehman, T. Leighton, R. Panigrahy, M. Levine, and D. Lewin. Consistent hashing and random trees: Distributed caching protocol for relieving hot spots on the World Wide Web. STOC, 1997.
[26]
J. Kubiatowicz. OceanStore: an architecture for global-scale persistent storage. ASPLOS, 2000.
[27]
S. Kandula, D. Katabi, M. Jacob, and A. Berger. Botz-4-sale: surviving organized DDoS attacks that mimic flash crowds. NSDI, 2005.
[28]
C. Liu, R. White, and S. Sumais. Understanding Web Browsing Behaviors through Weibull Analysis of Dwell Time. SIGIR, 2010.
[29]
M. Lillibridge, S. Elnikety, A. Birrell, M. Burrows, and M. Isard. A Cooperative Internet Backup Scheme. USENIX ATC, 2003.
[30]
R. Lawler. NFL Pushes HD Video, with Help from Akamai. 2010. http://gigaom.com/2010/09/22/nfl-pushes-hd-video-with-help-from-akamai/.
[31]
J. Mirkovic and P. Reiher. A taxonomy of DDoS attack and DDoS defense mechanisms. CCR, 34(2), 2004.
[32]
Most Popular Extensions:: Add-ons for Firefox. http://bit.ly/122o6ge.
[33]
Mozilla Metrics Report, Q1 2010. http://mzl.la/aplroe.
[34]
Node.js Framework. http://nodejs.org/.
[35]
I. Poese, B. Frank, B. Ager, G. Smaragdakis, and A. Feldmann. Improving Content Delivery Using Provider-aided Distance Information. IMC, 2010.
[36]
K. Park and V. S. Pai. Scale and Performance in the CoBlitz Large-File Distribution Service. NSDI, 2006.
[37]
J. Rosenberg. Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal for Offer/Answer Protocols. RFC 5245, IETF, 2010.
[38]
J. Rosenberg, R. Mahy, P. Matthews, and D. Wing. Session Traversal Utilities for NAT (STUN). RFC 5389 (Proposed Standard), IETF, 2008.
[39]
H. B. Ribeiro, L. C. Lung, A. O. Santin, and N. L. Brisola. Web2Peer: A Peer-to-Peer Infrastructure for Publishing/Locating/Replicating Web Pages on Internet. ISADS, 2007.
[40]
Real-Time Media Flow Protocol (RTMFP) FAQ. http://www.adobe.com/products/flashmediaserver/rtmfp_faq/.
[41]
A. Su, D. R. Choffnes, A. Kuzmanovic, and F. E. Bustamante. Drafting behind Akamai: Inferring network conditions based on CDN redirections. ToN, 2009.
[42]
A. Stavrou, D. Rubenstein, and S. Sahu. A Lightweight, Robust P2P System to Handle Flash Crowds. ICNP, 2002.
[43]
S. Spoto, R. Gaeta, M. Grangetto, and M. Sereno. Analysis of PPLive through active and passive measurements. IPDPS, 2009.
[44]
S. Scellato, C. Mascolo, M. Musolesi, and J. Crowcroft. Track Globally, Deliver Locally: Improving Content Delivery Networks by Tracking Geographic Social Cascades. WWW, 2011.
[45]
T. Stein, E. Chen, and K. Mangla. Facebook Immune System. EuroSys, 2011.
[46]
T. Stading, P. Maniatis, and M. Baker. Peer-to-peer caching schemes to address flash crowds. IPTPS, 2002.
[47]
D. K. Smetters and V. Jacobson. Securing network content. PARC, Technical Report TR-2009-1, 2009.
[48]
Y. J. Song, V. Ramasubramanian, and E. G. Sirer. Optimal Resource Utilization in Content Distribution Networks. Cornell University, Technical Report TR2005-2004, 2005.
[49]
Stanford Javascript Crypto Library. http://crypto.stanford.edu/sjcl/.
[50]
J. Terrace, H. Laidlaw, H. E. Liu, S. Stern, and M. J. Freedman. Bringing P2P to the Web: Security and Privacy in the Firecoral Network. IPTPS, 2009.
[51]
C. Vicari, C. Petrioli, and F. L. Presti. Dynamic replica placement and traffic redirection in content delivery networks. 2007.
[52]
A. Wolman, G. M. Voelker, N. Sharma, N. Cardwell, A. Karlin, and H. M. Levy. On the scale and performance of cooperative Web proxy caching. SOSP, 1999.
[53]
B. Wong, A. Slivkins, and E. G. Sirer. Meridian: A Lightweight Network Location Service without Virtual Coordinates. SIGCOMM, 2005.
[54]
L. Wang, K. Park, R. Pang, V. S. Pai, and L. Peterson. Reliability and Security in the CoDeeN Content Distribution Network. USENIX ATC, 2004.
[55]
X. Wang, W. S. Ng, B. C. Ooi, K.-L. Tan, and A. Zhou. BuddyWeb: A P2P-Based Collaborative Web Caching System. NETWORKING, 2002.
[56]
W3C Indexed Database API. http://www.w3.org/TR/IndexedDB.
[57]
W3C Real-Time Communications Working Group. http://www.w3.org/2011/04/webrtc-charter.html.
[58]
W3C Web Workers. http://www.w3.org/TR/workers/.
[59]
W3C WebStorage. http://www.w3.org/TR/webstorage/.
[60]
F. Zhou, L. Zhang, E. Franco, A. Mislove, R. Revis, and R. Sundaram. WebCloud: Recruiting social network users to assist in content distribution. IEEE NCA, 2012.
[61]
N. C. Zakas. How many users have JavaScript disabled? 2010. http://developer.yahoo.com/blogs/ydn/posts/2010/10/how-many-users-have-javascript-disabled/.

Cited By

View all
  • (2024)Polygon: A QUIC-Based CDN Server Selection System Supporting Multiple Resource DemandsIEEE/ACM Transactions on Networking10.1109/TNET.2024.342522732:6(4585-4599)Online publication date: 1-Aug-2024
  • (2024)Stealthy Peers: Understanding Security and Privacy Risks of Peer-Assisted Video Streaming2024 54th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN)10.1109/DSN58291.2024.00041(324-337)Online publication date: 24-Jun-2024
  • (2024)A systematic review on WebRTC for potential applications and challenges beyond audio video streamingMultimedia Tools and Applications10.1007/s11042-024-20448-984:6(2909-2946)Online publication date: 23-Nov-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
EuroSys '13: Proceedings of the 8th ACM European Conference on Computer Systems
April 2013
401 pages
ISBN:9781450319942
DOI:10.1145/2465351
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 15 April 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. JavaScript
  2. content distribution network
  3. distributed

Qualifiers

  • Research-article

Funding Sources

Conference

EuroSys '13
Sponsor:
EuroSys '13: Eighth Eurosys Conference 2013
April 15 - 17, 2013
Prague, Czech Republic

Acceptance Rates

EuroSys '13 Paper Acceptance Rate 28 of 143 submissions, 20%;
Overall Acceptance Rate 241 of 1,308 submissions, 18%

Upcoming Conference

EuroSys '25
Twentieth European Conference on Computer Systems
March 30 - April 3, 2025
Rotterdam , Netherlands

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)12
  • Downloads (Last 6 weeks)0
Reflects downloads up to 19 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Polygon: A QUIC-Based CDN Server Selection System Supporting Multiple Resource DemandsIEEE/ACM Transactions on Networking10.1109/TNET.2024.342522732:6(4585-4599)Online publication date: 1-Aug-2024
  • (2024)Stealthy Peers: Understanding Security and Privacy Risks of Peer-Assisted Video Streaming2024 54th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN)10.1109/DSN58291.2024.00041(324-337)Online publication date: 24-Jun-2024
  • (2024)A systematic review on WebRTC for potential applications and challenges beyond audio video streamingMultimedia Tools and Applications10.1007/s11042-024-20448-984:6(2909-2946)Online publication date: 23-Nov-2024
  • (2022)InviCloakProceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security10.1145/3548606.3559336(1947-1961)Online publication date: 7-Nov-2022
  • (2021)PolygonProceedings of the 22nd International Middleware Conference: Industrial Track10.1145/3491084.3491428(16-22)Online publication date: 6-Dec-2021
  • (2020)Towards Reliable Web Content Delivery against Network Failures: A Path-Aware Peer-Assisted ApproachComputer Science and Application10.12677/CSA.2020.10101010:01(81-97)Online publication date: 2020
  • (2018)An adaptive peer-sampling protocol for building networks of browsersWorld Wide Web10.1007/s11280-017-0478-521:3(629-661)Online publication date: 1-May-2018
  • (2018)Local Storage on Steroids: Abusing Web Browsers for Hidden Content Storage and DistributionSecurity and Privacy in Communication Networks10.1007/978-3-030-01704-0_19(352-371)Online publication date: 29-Dec-2018
  • (2018)Performance Evaluation of Resources Management in WebRTC for a Scalable CommunicationIntelligent Computing10.1007/978-3-030-01177-2_48(648-665)Online publication date: 2-Nov-2018
  • (2017)Exploring a social-aware WebRTC-based P2P architecture for live video streamingProceedings of the 9th International Conference on Education Technology and Computers10.1145/3175536.3175548(207-212)Online publication date: 20-Dec-2017
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media