Abstract
Very large scale systems of autonomous concurrent objects (Actors) require coordination models to meet two competing goals. On the one hand, the coordination models must allow Actors to dynamically modify protocols in order to adapt to requirement changes over the, likely extensive, lifetime of the system. On the other hand, the coordination models must enforce protocols on potentially uncooperative Actors, while preventing deadlocks caused by malicious or faulty Actors. To meet these competing requirements, we introduce a novel, scoped semantics for Synchronizers [7,6]—a coordination model based on declarative synchronization constraints. The mechanism used to limit the scope of the synchronization constraints is based on capabilities and works without central authority. We show that the mechanism closes an attack vector in the original Synchronizer approach which allowed malicious Actors to intentionally deadlock other Actors.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Agha, G., Callsen, C.J.: ActorSpaces: An open distributed programming paradigm. In: Proceedings of the 8th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP 1993, pp. 23–32 (1993)
Agha, G.A.: ACTORS — A Model of Concurrent Computation in Distributed Systems. MIT Press series in artificial intelligence. MIT Press (1986)
Astley, M., Agha, G.: Customizaton and compositon of distributed objects: Middleware abstractions for policy management. In: SIGSOFT FSE, pp. 1–9 (1998)
Chandra, T.D., Toueg, S.: Unreliable failure detectors for reliable distributed systems. J. ACM 43, 225–267 (1996)
Field, J., Varela, C.A.: Transactors: a programming model for maintaining globally consistent distributed state in unreliable environments. In: Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2005, pp. 195–208. ACM (2005)
Frølund, S.: Coordinating distributed objects - an actor-based approach to synchronization. MIT Press (1996)
Frølund, S., Agha, G.: A Language Framework for Multi-Object Coordination. In: Wang, J. (ed.) ECOOP 1993. LNCS, vol. 707, pp. 346–360. Springer, Heidelberg (1993)
Gelernter, D.: Generative communication in linda. ACM Trans. Program. Lang. Syst. 7(1), 80–112 (1985)
Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)
Letuchy, E.: Facebook chat. Blog entry (May 2008), http://www.facebook.com/note.php?note_id=14218138919&id=9445547199&index=9 (retrieved on September 25, 2011)
Meseguer, J., Talcott, C.: Semantic Models for Distributed Object Reflection. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, pp. 1–36. Springer, Heidelberg (2002)
Miller, M.S.: Robust Composition: Towards a Unified Approach to Access Control and Concurrency Control. PhD thesis, Johns Hopkins University (2006)
Minsky, N.H., Minsky, Y., Ungureanu, V.: Safe tuplespace-based coordination in multiagent systems. Applied Artificial Intelligence 15(1), 11–33 (2001)
Minsky, N.H., Ungureanu, V.: Regulated Coordination in Open Distributed Systems. In: Garlan, D., Le Métayer, D. (eds.) COORDINATION 1997. LNCS, vol. 1282, pp. 81–97. Springer, Heidelberg (1997)
Mok, W.: How twitter is scaling. Blog entry (June 2009), https://waimingmok.wordpress.com/2009/06/27/how-twitter-is-scaling/ (retrieved on September 25, 2011)
De Nicola, R., Gorla, D., Hansen, R.R., Nielson, F., Nielson, H.R., Probst, C.W., Pugliese, R.: From Flow Logic to Static Type Systems for Coordination Languages. In: Lea, D., Zavattaro, G. (eds.) COORDINATION 2008. LNCS, vol. 5052, pp. 100–116. Springer, Heidelberg (2008)
Ren, S., Yu, Y., Chen, N., Marth, K., Poirot, P.-E., Shen, L.: Actors, Roles and Coordinators — A Coordination Model for Open Distributed and Embedded Systems. In: Ciancarini, P., Wiklicky, H. (eds.) COORDINATION 2006. LNCS, vol. 4038, pp. 247–265. Springer, Heidelberg (2006)
Rosu, G., Serbanuta, T.-F.: An overview of the K semantic framework. J. Log. Algebr. Program. 79(6), 397–434 (2010)
Sturman, D.: Modular Specification of Interaction Policies in Distributed Computing. PhD thesis, University of Illinois at Urbana-Champaign (1996)
Varela, C.A., Agha, G.: A Hierarchical Model for Coordination of Concurrent Activities. In: Ciancarini, P., Wolf, A.L. (eds.) COORDINATION 1999. LNCS, vol. 1594, pp. 166–182. Springer, Heidelberg (1999)
Venkatasubramanian, N., Talcott, C.L.: Reasoning about meta level activities in open distributed systems. In: PODC, pp. 144–152 (1995)
Winskel, G.: The Formal Semantics of Programming Languages. MIT Press, Cambridge (1993)
Yang, F., Aotani, T., Masuhara, H., Nielson, F., Nielson, H.R.: Combining Static Analysis and Runtime Checking in Security Aspects for Distributed Tuple Spaces. In: De Meuter, W., Roman, G.-C. (eds.) COORDINATION 2011. LNCS, vol. 6721, pp. 202–218. Springer, Heidelberg (2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 IFIP International Federation for Information Processing
About this paper
Cite this paper
Dinges, P., Agha, G. (2012). Scoped Synchronization Constraints for Large Scale Actor Systems. In: Sirjani, M. (eds) Coordination Models and Languages. COORDINATION 2012. Lecture Notes in Computer Science, vol 7274. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-30829-1_7
Download citation
DOI: https://doi.org/10.1007/978-3-642-30829-1_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-30828-4
Online ISBN: 978-3-642-30829-1
eBook Packages: Computer ScienceComputer Science (R0)