Skip to main content

MiCA: A Compositional Architecture for Gossip Protocols

  • Conference paper
  • 2143 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 8586))

Abstract

The developers of today’s cloud computing systems are expected to not only create applications that will work well at scale, but also to create management services that will monitor run-time conditions and intervene to address problems as conditions evolve. Management tasks are generally not performance intensive, but robustness is critical: when a large system becomes unstable, the management infrastructure must remain reliable, predictable, and fault-tolerant.

A wide range of management tasks can be expressed as gossip protocols where nodes in the system periodically interact with random peers and exchange information about their respective states. Although individual gossip protocols are typically very simple, by composing multiple protocols one can create a wide variety of interesting, complex functionality with strong (albeit probabilistic) robustness and convergence guarantees. For example, in a system with a sufficiently dense topology, all nodes will learn the information being disseminated in expected logarithmic time. Unfortunately, programmers today must typically build gossip protocols by hand—an approach that makes their programs more complicated and error-prone, and hinders attempts to optimize gossip implementations to achieve better performance.

MiCA is a new system for building gossip-based management tools that are highly resistant to disruptions and make efficient use of system resources. MiCA provides abstractions that enable expressing gossip protocols in terms of functions on pairs of node states, along with a rich collection of composition operators that facilitates constructing sophisticated protocols in a modular style. The MiCA prototype realizes these abstractions on top of the Java Virtual Machine, and implements optimizations that greatly reduce the number and size of messages used.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Alvaro, P., Condie, T., Conway, N., Elmeleegy, K., Hellerstein, J.M., Sears, R.: Boom analytics: exploring data-centric, declarative programming for the cloud. In: European Conference on Computer Systems, pp. 223–236 (2010)

    Google Scholar 

  2. Ben-Or, M., Dolev, D., Hoch, E.N.: Fast self-stabilizing byzantine tolerant digital clock synchronization. In: Symposium on Principles of Distributed Computing, pp. 385–394 (August 2008)

    Google Scholar 

  3. Bonjour, http://www.apple.com/support/bonjour/

  4. Broder, A.Z., Frieze, A.M., Upfal, E.: Static and dynamic path selection on expander graphs: A random walk approach. Random Structures and Algorithms 14(1), 87–109 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  5. Apache Cassandra, http://cassandra.apache.org

  6. Dagand, P.-E., Kostić, D., Kuncak, V.: Opis: Reliable distributed systems in OCaml. In: International Workshop on Types in Language Design and Implementation, pp. 65–78 (January 2009)

    Google Scholar 

  7. Dean, J., Ghemawat, S.: MapReduce: Simplified data processing on large clusters. In: Symposium on Operating Systems Design and Implementation, pp. 137–150 (December 2004)

    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. In: Symposium on Operating Systems Principles, pp. 205–220 (October 2007)

    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: Symposium on Principles of Distributed Computing, pp. 1–12 (August 1987)

    Google Scholar 

  10. Dolev, D., Hoch, E.N.: Byzantine self-stabilizing pulse in a bounded-delay model. In: Masuzawa, T., Tixeuil, S. (eds.) SSS 2007. LNCS, vol. 4838, pp. 234–252. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  11. Dolev, S.: Self-Stabilization. MIT Press (2000)

    Google Scholar 

  12. Eugster, P.: Uniform proxies for java. In: Conference on Object-Oriented Programming Systems, Languages, and Applications, pp. 139–152 (October 2006)

    Google Scholar 

  13. Garbinato, B., Guerraoui, R.: Flexible protocol composition in Bast. In: International Conference on Distributed Computing Systems, pp. 22–29 (May 1998)

    Google Scholar 

  14. Jelasity, M., Montresor, A., Babaoglu, Ö.: T-Man: Gossip-based fast overlay topology construction. Computer Networks 53(13), 2321–2339 (2009)

    Article  MATH  Google Scholar 

  15. JXTA The Language and Platform Independent Protocol for P2P Networking, https://jxta.kenai.com

  16. Loo, B.T., Condie, T., Hellerstein, J.M., Maniatis, P., Roscoe, T., Stoica, I.: Implementing declarative overlays. In: Symposium on Operating Systems Principles, pp. 75–90 (October 2005)

    Google Scholar 

  17. Massoulié, L., Le Merrer, E., Kermarrec, A.-M., Ganesh, A.: Peer counting and sampling in overlay networks: random walk methods. In: Symposium on Principles of Distributed Computing, pp. 123–132 (August 2006)

    Google Scholar 

  18. Miranda, H., Pinto, A., Rodrigues, L.: Appia, a flexible protocol kernel supporting multiple coordinated channels. In: International Conference on Distributed Computing Systems, pp. 707–710 (April 2001)

    Google Scholar 

  19. Princehouse, L., Birman, K.: Code-partitioning gossip. Operating Systems Review 43, 40–44 (2010)

    Article  Google Scholar 

  20. Riak, http://basho.com/riak/

  21. Rodriguez, A., Killian, C.E., Bhat, S., Kostic, D., Vahdat, A.: MACEDON: Methodology for automatically creating, evaluating, and designing overlay networks. In: Symposium on Networked Systems Design and Implementation, pp. 267–280 (March 2004)

    Google Scholar 

  22. Subramaniyan, R., Raman, P., George, A.D., Radlinski, M.A., Radlinski, M.A.: GEMS: Gossip-enabled monitoring service for scalable heterogeneous distributed systems. Cluster Computing 9(1), 101–120 (2006)

    Article  Google Scholar 

  23. Tibco message bus, http://www.tibco.com/products/automation/messaging/default.jsp

  24. Tölgyesi, N., Jelasity, M.: Adaptive peer sampling with newscast. In: Sips, H., Epema, D., Lin, H.-X. (eds.) Euro-Par 2009. LNCS, vol. 5704, pp. 523–534. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  25. Vallée-Rai, R., Hendren, L., Sundaresan, V., Lam, P., Gagnon, E., Co, P.: Soot – a Java optimization framework. In: Conference of the Centre for Advanced Studies on Collaborative Research, pp. 125–135 (November 1999)

    Google Scholar 

  26. Van Renesse, R., Birman, K.P., Vogels, W.: Astrolabe: A robust and scalable technology for distributed system monitoring, management, and data mining. Transactions on Computing Systems 21(2), 164–206 (2003)

    Article  Google Scholar 

  27. van Renesse, R., Minsky, Y., Hayden, M.: A gossip-based failure detection service. In: International Middleware Conference, pp. 55–70 (September 1998)

    Google Scholar 

  28. Vigfusson, Y., Birman, K., Huang, Q., Nataraj, D.P.: Optimizing information flow in the gossip objects platform. Operating Systems Review 44(2), 71–76 (2010)

    Article  Google Scholar 

  29. Waldo, J.: The Jini architecture for network-centric computing. Communications of the ACM 42(7), 76–82 (1999)

    Article  Google Scholar 

  30. WebSphere MQ, http://www-03.ibm.com/software/products/en/wmq/

  31. Wong, G.T., Hiltunen, M.A., Schlichting, R.D.: A configurable and extensible transport protocol. In: International Conference on Computer Communications, pp. 319–328 (April 2001)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

1 Electronic Supplementary Material

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Princehouse, L., Chenchu, R., Jiang, Z., Birman, K.P., Foster, N., Soulé, R. (2014). MiCA: A Compositional Architecture for Gossip Protocols. In: Jones, R. (eds) ECOOP 2014 – Object-Oriented Programming. ECOOP 2014. Lecture Notes in Computer Science, vol 8586. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-44202-9_26

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-44202-9_26

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-44201-2

  • Online ISBN: 978-3-662-44202-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics