On the Power of Attribute-Based Communication

  • Yehia Abd Alrahman
  • Rocco De Nicola
  • Michele Loreti
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9688)

Abstract

In open systems exhibiting adaptation, behaviors can arise as side effects of intensive components interaction. Finding ways to understand and design these systems, is a difficult but important endeavor. To tackle these issues, we present AbC, a calculus for attribute-based communication. An AbC system consists of a set of parallel agents each of which is equipped with a set of attributes. Communication takes place in an implicit multicast fashion, and interactions among agents are dynamically established by taking into account “connections” as determined by predicates over the attributes of agents. First, the syntax and the semantics of the calculus are presented, then expressiveness and effectiveness of AbC are demonstrated both in terms of modeling scenarios featuring collaboration, reconfiguration, and adaptation and of the possibility of encoding channel-based interactions and other interaction patterns. Behavioral equivalences for AbC are introduced for establishing formal relationships between different descriptions of the same system.

References

  1. 1.
    Agha, G., Callsen, C.J.: ActorSpace: an open distributed programming paradigm, vol. 28. ACM (1993)Google Scholar
  2. 2.
    Alrahman, Y.A., De Nicola, R., Loreti, M.: On the power of attribute-based communication, extended report (2016)Google Scholar
  3. 3.
    Alrahman, Y.A., De Nicola, R., Loreti, M., Tiezzi, F., Vigo, R.: A calculus for attribute-based communication. In: Proceedings of the 30th Annual ACM Symposium on Applied Computing, SAC 2015, pp. 1840–1845. ACM (2015)Google Scholar
  4. 4.
    Bass, M.A., Nguyen, F.T.: Unified publish and subscribe paradigm for local and remote publishing destinations, US Patent 6,405,266, 11 June 2002Google Scholar
  5. 5.
    Chockler, G.V., Keidar, I., Vitenberg, R.: Group communication specifications: a comprehensive study. ACM Comput. Surv. 33, 427–469. ACM (2001). doi:10.1145/503112.503113
  6. 6.
    De Nicola, R., Ferrari, G., Loreti, M., Pugliese, R.: A language-based approach to autonomic computing. In: Boer, F.S., Bonsangue, M.M., Beckert, B., Damiani, F. (eds.) FMCO 2011. LNCS, vol. 7542, pp. 25–48. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  7. 7.
    De Nicola, R., Loreti, M., Pugliese, R., Tiezzi, F.: A formal approach to autonomic systems programming: the scel language. ACM Trans. Auton. Adapt. Syst. 9, 1–29 (2014)CrossRefGoogle Scholar
  8. 8.
    Ene, C., Muntean, T.: A broadcast-based calculus for communicating systems. In: Parallel and Distributed Processing Symposium, International, vol. 3, p. 30149b. IEEE Computer Society (2001)Google Scholar
  9. 9.
    Eugster, P.T., Felber, P.A., Guerraoui, R., Kermarrec, A.-M.: The many faces of publish/subscribe. ACM Comput. (CSUR) 35(2), 114–131 (2003)CrossRefGoogle Scholar
  10. 10.
    Ferscha, A.: Collective adaptive systems. In: Proceedings of the 2015 ACM International Joint Conference on Pervasive and Ubiquitous Computing and Proceedings of the 2015 ACM International Symposium on Wearable Computers, pp. 893–895 (2015)Google Scholar
  11. 11.
    Given-Wilson, T., Gorla, D., Jay, B.: Concurrent pattern calculus. In: Calude, C.S., Sassone, V. (eds.) TCS 2010. IFIP AICT, vol. 323, pp. 244–258. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  12. 12.
    Antony Richard Hoare, C.: Communicating sequential processes. Commun. ACM 21(8), 666–677 (1978)CrossRefMATHGoogle Scholar
  13. 13.
    Holbrook, H.W., Cheriton, D.R.: Ip multicast channels: express support for large-scale single-source applications. In: ACM SIGCOMM Computer Communication Review, vol. 29, pp. 65–78. ACM (1999)Google Scholar
  14. 14.
    Honda, K., Yoshida, N.: On reduction-based process semantics. Theor. Comput. Sci. 151(2), 437–486 (1995)MathSciNetCrossRefMATHGoogle Scholar
  15. 15.
    John, M., Lhoussaine, C., Niehren, J.: Dynamic compartments in the imperative \(\pi \)-calculus. In: Degano, P., Gorrieri, R. (eds.) CMSB 2009. LNCS, vol. 5688, pp. 235–250. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  16. 16.
    John, M., Lhoussaine, C., Niehren, J., Uhrmacher, A.M.: The attributed Pi-calculus with priorities. In: Priami, C., Breitling, R., Gilbert, D., Heiner, M., Uhrmacher, A.M. (eds.) Transactions on Computational Systems Biology XII. LNCS, vol. 5945, pp. 13–76. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  17. 17.
    Mamei, M., Zambonelli, F.: Programming pervasive and mobile computing applications with the tota middleware. In: Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications, 2004. PerCom 2004, pp. 263–273. IEEE (2004)Google Scholar
  18. 18.
    Milner, R. (ed.): A Calculus of Communication Systems. LNCS, vol. 92. Springer, Heidelberg (1980). doi:10.1007/3-540-10235-3 MATHGoogle Scholar
  19. 19.
    Milner, R.: Communication and Concurrency. Prentice-Hall Inc, Upper Saddle River (1989)MATHGoogle Scholar
  20. 20.
    Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, ii. Inf. Comput. 100(1), 41–77 (1992)MathSciNetCrossRefMATHGoogle Scholar
  21. 21.
    Milner, R., Sangiorgi, D.: Barbed bisimulation. In: Kuich, W. (ed.) ICALP 1992. LNCS, vol. 623, pp. 685–695. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  22. 22.
    Prasad, K.V.S.: A calculus of broadcasting systems. Sci. Comput. Program. 25(2), 285–327 (1995)MathSciNetCrossRefGoogle Scholar
  23. 23.
    Prasad, K.V.S.: A calculus of broadcasting systems. In: Abramsky, S. (ed.) CAAP 1991 and TAPSOFT 1991. LNCS, vol. 493, pp. 338–358. Springer, Heidelberg (1991)Google Scholar
  24. 24.
    Sanders, J.W., Smith, G.: Formal ensemble engineering. In: Wirsing, M., Banâtre, J.-P., Hölzl, M., Rauschmayer, A. (eds.) Software-Intensive Systems. LNCS, vol. 5380, pp. 132–138. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  25. 25.
    Sangiorgi, D., Walker, D.: The pi-calculus: A Theory of Mobile Processes. Cambridge University Press, Cambridge (2003)MATHGoogle Scholar
  26. 26.
    Sommerville, I., Cliff, D., Calinescu, R., Keen, J., Kelly, T., Kwiatkowska, M., Mcdermid, J., Paige, R.: Large-scale complex it systems. Commun. ACM 55(7), 71–77 (2012)CrossRefGoogle Scholar
  27. 27.
    Vigo, R., Nielson, F., Nielson, H.R.: Broadcast, denial-of-service, and secure communication. In: Johnsen, E.B., Petre, L. (eds.) IFM 2013. LNCS, vol. 7940, pp. 412–427. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  28. 28.
    Viroli, M., Damiani, F., Beal, J.: A calculus of computational fields. In: Canal, C., Villari, M. (eds.) Advances in Service-Oriented and Cloud Computing, pp. 114–128. Springer, Heidelberg (2013)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2016

Authors and Affiliations

  • Yehia Abd Alrahman
    • 1
  • Rocco De Nicola
    • 1
  • Michele Loreti
    • 2
  1. 1.IMT School for Advanced Studies LuccaLuccaItaly
  2. 2.Università degli Studi di FirenzeFlorenceItaly

Personalised recommendations