World Wide Web

, Volume 21, Issue 3, pp 629–661 | Cite as

An adaptive peer-sampling protocol for building networks of browsers

  • Brice Nédelec
  • Julian Tanke
  • Davide Frey
  • Pascal Molli
  • Achour Mostéfaoui


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.


Web browsers Random peer-sampling Self-adjusting Logarithmic view size 



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


  1. 1.
    Bailis, P., Ghodsi, A.: Eventual consistency today: Limitations, extensions, and beyond. Queue 11(3), 20:20–20:32 (2013)Google Scholar
  2. 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)CrossRefGoogle Scholar
  3. 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)Google Scholar
  4. 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)CrossRefGoogle Scholar
  5. 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)Google Scholar
  6. 6.
    Camarillo, G., Maenpaa, J.: Self-tuning distributed hash table (dht) for resource location and discovery (reload) RFC 7363. Ericsson (2014)Google Scholar
  7. 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)CrossRefGoogle Scholar
  8. 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)CrossRefGoogle Scholar
  9. 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)Google Scholar
  10. 10.
    Erdős, P., Rényi, A.: On random graphs i. Publ. Math. Debrecen 6, 290–297 (1959)MathSciNetGoogle Scholar
  11. 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)CrossRefGoogle Scholar
  12. 12.
    Frey, D., Guerraoui, R., Kermarrec, A.-M., Monod, M., Quéma, V.: Stretching Gossip with Live Streaming. In: DSN (2009)Google Scholar
  13. 13.
    Frey, D., Guerraoui, R., Kermarrec, A.-M., Koldehofe, B., Mogensen, M., Monod, M., Quéma, V.: Heterogeneous Gossip. In: Middleware (2009)Google Scholar
  14. 14.
    Frey, D., Guerraoui, R., Kermarrec, A.-M., Monod, M.: Live Streaming with Gossip. Research report, Inria Rennes Bretagne Atlantique; RR-9039 (2017)Google Scholar
  15. 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)Google Scholar
  16. 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)CrossRefGoogle Scholar
  17. 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)CrossRefzbMATHGoogle Scholar
  18. 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)Google Scholar
  19. 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)Google Scholar
  20. 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)CrossRefGoogle Scholar
  21. 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 SystemsCrossRefzbMATHGoogle Scholar
  22. 22.
    Kermarrec, A.-M., Massoulié, L., Ganesh, A.: Probabilistic Reliable Dissemination in Large-Scale Systems. TPDS 14(3), 248–258 (2003)Google Scholar
  23. 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)Google Scholar
  24. 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)Google Scholar
  25. 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)Google Scholar
  26. 26.
    Monod, M.: Live streaming with gossip. PhD thesis, IC, Lausanne (2010)Google Scholar
  27. 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)Google Scholar
  28. 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)Google Scholar
  29. 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)Google Scholar
  30. 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)Google Scholar
  31. 31.
  32. 32.
  33. 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)Google Scholar
  34. 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)Google Scholar
  35. 35.
    Saito, Y., Shapiro, M.: Optimistic replication. ACM Comput. Surv. 37(1), 42–81 (2005)CrossRefzbMATHGoogle Scholar
  36. 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)Google Scholar
  37. 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)Google Scholar
  38. 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)CrossRefGoogle Scholar
  39. 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)Google Scholar
  40. 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)Google Scholar
  41. 41.
    Watts, D.J., Strogatz, S.H.: Collective dynamics of ‘small-world’ networks. Nature 393(6684), 440–442, 06 (1998)CrossRefzbMATHGoogle Scholar
  42. 42.
  43. 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)CrossRefGoogle Scholar
  44. 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)Google Scholar
  45. 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

Copyright information

© Springer Science+Business Media, LLC 2017

Authors and Affiliations

  1. 1.LS2NUniversity of NantesNantes Cedex 3France
  2. 2.INRIA Bretagne-AtlantiqueCampus Universitaire de BeaulieuRennes CedexFrance

Personalised recommendations