Skip to main content
Log in

An adaptive peer-sampling protocol for building networks of browsers

  • Published:
World Wide Web Aims and scope Submit manuscript

    We’re sorry, something doesn't seem to be working properly.

    Please try refreshing the page. If that doesn't work, please contact support so we can address the problem.

Abstract

Peer-sampling protocols constitute a fundamental mechanism for a number of large-scale distributed applications. The recent introduction of WebRTC facilitated the deployment of decentralized applications over a network of browsers. However, deploying existing peer-sampling protocols on top of WebRTC raises issues about their lack of adaptiveness to sudden bursts of popularity over a network that does not manage addressing or routing. Spray is a novel random peer-sampling protocol that dynamically, quickly, and efficiently self-adapts to the network size. Our experiments show the flexibility of Spray and highlight its efficiency improvements at the cost of small overhead. We embedded Spray in a real-time decentralized editor running in browsers and ran experiments involving up to 600 communicating Web browsers. The results demonstrate that Spray significantly reduces the network traffic according to the number of participants and saves bandwidth.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15

Similar content being viewed by others

Notes

  1. https://github.com/justayak/peersim-spray

  2. A modified version of Scamp whose periodic protocol works properly when there is no connection failures. Available at https://github.com/justayak/peersim-spray.

  3. https://github.com/justayak/peersim-spray

  4. https://github.com/Chat-Wane/CRATE

  5. https://www.hivestreaming.com/

References

  1. Bailis, P., Ghodsi, A.: Eventual consistency today: Limitations, extensions, and beyond. Queue 11(3), 20:20–20:32 (2013)

    Google Scholar 

  2. Baquero, C., Almeida, P., Menezes, R., Jesus, P.: Extrema propagation: Fast distributed estimation of sums and network sizes. IEEE Trans. Parallel Distrib. Syst. 23(4), 668–675 (2012)

    Article  Google Scholar 

  3. Bertier, M., Bonnet, F., Kermarrec, A.M., Leroy, V., Peri, S., Raynal, M.: D2ht: The best of both worlds, integrating rps and dht. In: Dependable Computing Conference (EDCC), 2010 European, pp. 135–144 (2010)

  4. Birman, K.P., Hayden, M., Ozkasap, O., Xiao, Z., Budiu, M., Minsky, Y.: Bimodal multicast. ACM Trans. Comput. Syst. 17(2), 41–88 (1999)

    Article  Google Scholar 

  5. Bonnet, F., Tronel, F., Voulgaris, S.: Brief Announcement: Performance Analysis of Cyclon, an Inexpensive Membership Management for Unstructured P2P Overlays, pp. 560–562. Springer Berlin Heidelberg, Berlin, Heidelberg (2006)

  6. Camarillo, G., Maenpaa, J.: Self-tuning distributed hash table (dht) for resource location and discovery (reload) RFC 7363. Ericsson (2014)

  7. Carvajal-Gómez, R., Frey, D., Simonin, M., Kermarrec, A.-M.: Web Information Systems Engineering – WISE 2015: 16th International Conference, Miami, FL, USA, Proceedings, Part II, chapter WebGC Gossiping on Browsers Without a Server, pp. 332–336. Springer International Publishing, Cham (2015)

    Book  Google Scholar 

  8. DeCandia, G., Hastorun, D., Jampani, M., Kakulapati, G., Lakshman, A., Pilchin, A., Sivasubramanian, S., Vosshall, P., Vogels, W.: Dynamo: Amazon’s highly available key-value store. SIGOPS Oper. Syst. Rev. 41(6), 205–220 (2007)

    Article  Google Scholar 

  9. Demers, A., Greene, D., Hauser, C., Irish, W., Larson, J., Shenker, S., Sturgis, H., Swinehart, D., Terry, D.: Epidemic algorithms for replicated database maintenance. In: Proceedings of the Sixth Annual ACM Symposium on Principles of Distributed Computing, pp. 1–12. ACM (1987)

  10. Erdős, P., Rényi, A.: On random graphs i. Publ. Math. Debrecen 6, 290–297 (1959)

    MathSciNet  Google Scholar 

  11. Eugster, P.T., Guerraoui, R., Handurukande, S.B., Kouznetsov, P., Kermarrec, A.-M.: Lightweight probabilistic broadcast. ACM Trans. Comput. Syst. (TOCS) 21(4), 341–374 (2003)

    Article  Google Scholar 

  12. Frey, D., Guerraoui, R., Kermarrec, A.-M., Monod, M., Quéma, V.: Stretching Gossip with Live Streaming. In: DSN (2009)

  13. Frey, D., Guerraoui, R., Kermarrec, A.-M., Koldehofe, B., Mogensen, M., Monod, M., Quéma, V.: Heterogeneous Gossip. In: Middleware (2009)

  14. Frey, D., Guerraoui, R., Kermarrec, A.-M., Monod, M.: Live Streaming with Gossip. Research report, Inria Rennes Bretagne Atlantique; RR-9039 (2017)

  15. Ganesh, A., Kermarrec, A.-M., Massoulié, L.: Scamp: Peer-to-peer lightweight membership service for large-scale group communication. In: Crowcroft, J., Hofmann, M. (eds.) Networked Group Communication, volume 2233 of Lecture Notes in Computer Science, pp. 44–55. Springer Berlin Heidelberg (2001)

  16. Ganesh, A., Kermarrec, A.-M., Massoulié, L.: Peer-to-peer membership management for gossip-based protocols. IEEE Trans. Comput. 52(2), 139–149 (2003)

    Article  Google Scholar 

  17. Ganesh, A., Kermarrec, A.-M., Le Merrer, E., Massoulié, L.: Peer counting and sampling in overlay networks based on random walks. Distrib. Comput. 20(4), 267–278 (2007)

    Article  MATH  Google Scholar 

  18. Jelasity, M., Guerraoui, R., Kermarrec, A.-M., Van Steen, M.: The peer sampling service: Experimental evaluation of unstructured gossip-based implementations. In: Jacobsen, H.-A. (ed.) Middleware 2004, volume 3231 of Lecture Notes in Computer Science, pp. 79–98. Springer-Verlag (2004)

  19. Jelasity, M., Montresor, A.: Epidemic-style proactive aggregation in large overlay networks. In: Proceedings of the 24th International Conference on Distributed Computing Systems, pp. 102–109 (2004)

  20. Jelasity, M., Voulgaris, S., Guerraoui, R., Kermarrec, A.-M., Van Steen, M.: Gossip-based peer sampling. ACM Trans. Comput. Syst. (TOCS) 25(3), 8 (2007)

    Article  Google Scholar 

  21. Jelasity, M., Montresor, A., Babaoglu, O.: T-man: Gossip-based fast overlay topology construction. Comput. Netw. 53(13), 2321–2339 (2009). Gossiping in Distributed Systems

    Article  MATH  Google Scholar 

  22. Kermarrec, A.-M., Massoulié, L., Ganesh, A.: Probabilistic Reliable Dissemination in Large-Scale Systems. TPDS 14(3), 248–258 (2003)

    Google Scholar 

  23. Kleinberg, J.: The small-world phenomenon: An algorithmic perspective. In: Proceedings of the Thirty-second Annual ACM Symposium on Theory of Computing, STOC ’00, pp. 163–170. ACM, NY, USA (2000)

  24. Leitão, J., Pereira, J., Rodrigues, L.: Hyparview: A membership protocol for reliable gossip-based broadcast. In: 37th Annual IEEE/IFIP Intern ational Conference on Dependable Systems and Networks, 2007. DSN ’07, pp. 419–429 (2007)

  25. Li, H., Clement, A., Marchetti, M., Kapritsos, M., Robinson, L., Alvisi, L., Dahlin, M.: FlightPath: Obedience vs. Choice in Cooperative Services. In: OSDI (2008)

  26. Monod, M.: Live streaming with gossip. PhD thesis, IC, Lausanne (2010)

    Google Scholar 

  27. Montresor, A., Jelasity, M., Babaoglu, O.: Robust aggregation protocols for large-scale overlay networks. In: International Conference on Dependable Systems and Networks, pp. 19–28 (2004)

  28. Montresor, A., Jelasity, M.: Peersim: A scalable P2P simulator. In: Proceedings of the 9th International Conference on Peer-to-Peer (P2P’09), pp. 99–100, Seattle, WA (2009)

  29. Nédelec, B., Molli, P., Mostéfaoui, A., Desmontils, E.: LSEQ: An adaptive structure for sequences in distributed collaborative editing. In: ACM, editor, 13th ACM Symposium on Document Engineering (2013)

  30. Nédelec, B., Molli, P., Mostefaoui, A.: Crate: Writing stories together with our browsers. In: Proceedings of the 25th International Conference Companion on World Wide Web, WWW’16 Companion, pp. 231–234. International World Wide Web Conferences Steering Committee, Republic and Canton of Geneva, Switzerland (2016)

  31. P. http://ozan.io/p/

  32. Peerjs. http://peerjs.com

  33. Roverso, R., Reale, R., El-Ansary, S., Haridi, S.: Smoothcache 2.0: Cdn-quality adaptive http live streaming on peer-to-peer overlays. In: Proceedings of the 6th ACM Multimedia Systems Conference, MMSys ’15, pp. 61–72. ACM, NY, USA (2015)

  34. Roverso, R., Högqvist, M.: Hive.js Browser-based distributed caching for adaptive video streaming. In: 2014 IEEE International Symposium on Multimedia (ISM), pp. 143–146 (2014)

  35. Saito, Y., Shapiro, M.: Optimistic replication. ACM Comput. Surv. 37(1), 42–81 (2005)

    Article  MATH  Google Scholar 

  36. Shapiro, M., Preguiça, N., Baquero, C., Zawirski, M.: Conflict-free replicated data types. Stabilization, Safety, and Security of Distributed Systems, pp. 386–400 (2011)

  37. Tölgyesi, N., Jelasity, M.: Adaptive peer sampling with newscast. In: Sips, H., Epema, D., Lin, H.-X. (eds.) Euro-Par 2009 Parallel Processing, volume 5704 of Lecture Notes in Computer Science, pp. 523–534. Springer Berlin Heidelberg (2009)

  38. Voulgaris, S., Gavidia, D., Van Steen, M.: Cyclon: Inexpensive membership management for unstructured p2p overlays. J. Netw. Syst. Manag. 13(2), 197–217 (2005)

    Article  Google Scholar 

  39. Voulgaris, S., Rivière, E., Kermarrec, A.-M., Van Steen, M.: Sub-2-Sub: Self-Organizing Content-Based Publish and Subscribe for Dynamic and Large Scale Collaborative Networks. Research Report RR-5772 INRIA (2005)

  40. Voulgaris, S., Van Steen, M.: Epidemic-style management of semantic overlays for content-based searching. In: Cunha, J., Medeiros, P. (eds.) Euro-Par Parallel Processing, volume 3648 of Lecture Notes in Computer Science, p 2005. Springer Berlin Heidelberg (2005)

  41. Watts, D.J., Strogatz, S.H.: Collective dynamics of ‘small-world’ networks. Nature 393(6684), 440–442, 06 (1998)

    Article  MATH  Google Scholar 

  42. Webrtc. http://www.Webrtc.org

  43. Wuhib, F., Dam, M., Stadler, R., Clem, A.: Robust monitoring of network-wide aggregates through gossiping. IEEE Trans. Netw. Serv. Manag. 6(2), 95–109 (2009)

    Article  Google Scholar 

  44. Zhang, L., Zhou, F., Mislove, A., Sundaram, R.: Maygh: Building a cdn from client Web browsers. In: Proceedings of the 8th ACM European Conference on Computer Systems, EuroSys ’13, pp. 281–294. ACM, NY, USA (2013)

  45. Zhang, M., Zhang, Q., Sun, L., Yang, S.: Understanding the power of pull-based streaming protocol can we do better?. JSAC 25(9), 1678–1694 (2007)

    Google Scholar 

Download references

Acknowledgments

We thank the reviewers for their helpful comments, which led to significant improvements of this work.

This work was partially funded by the French ANR project SocioPlug (ANR-13-INFR-0003), and by the DeSceNt project granted by the Labex CominLabs excellence laboratory (ANR-10-LABX-07-01).

Experiments presented in this paper were carried out using the Grid’5000 testbed, supported by a scientific interest group hosted by Inria and including CNRS, RENATER and several Universities as well as other organizations (see https://www.grid5000.fr).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Brice Nédelec.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Nédelec, B., Tanke, J., Frey, D. et al. An adaptive peer-sampling protocol for building networks of browsers. World Wide Web 21, 629–661 (2018). https://doi.org/10.1007/s11280-017-0478-5

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11280-017-0478-5

Keywords

Navigation