Abstract
This paper presents a lightweight reliable object migration protocol that preserves the centralized object semantics, allows for precise prediction ofnet work behavior, and permits construction of fault tolerance abstractions in the language. Each object has a “home site” to which all migration requests are directed. Compared to the standard technique of creating and collapsing forwarding chains, this gives a better worst-case network behavior and it limits dependencies on third-party sites. The protocol de.nes “freely mobile” objects that have the interesting property of always executing locally, i.e., each method executes in the thread that invokes it. This makes them dual, in a precise sense, to stationary objects. The protocol is designed to be as efficient as a nonreliable protocol in the common case of no failure, and to provide sufficient hooks so that common fault tolerance algorithms can be programmed completely in the Oz language. The protocol is fully implemented in the network layer of the Mozart platform for distributed application development, which implements Oz (see http://www.mozart-oz.org). This paper defines the protocol in an intuitive yet precise way using the concept of distribution graph to model distributed execution oflanguage entities. Formalization and proofofproto col properties are done elsewhere.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Mack W. Alford, Leslie Lamport, and Geo. P. Mullery. chapter 2. Lecture Notes in Computer Science, vol. 190. Springer Verlag, 1985. Basic Concepts, in Distributed Systems-Methods and Tools for Specification, An Advanced Course.
Iliès Alouini and Peter Van Roy. Le protocole r’eparti de Distributed Oz (The distributed protocol of Distributed Oz) (in French). In Colloque Francophone sur l’Ing’enierie des Protocoles (CFIP 99), pages 283–298. Hermès Science Publications, April 1999.
Iliès Alouini and Peter Van Roy. An open distributed fault-tolerant transactional store in Mozart. In preparation, 2000.
Per Brand, Peter Van Roy, Raphaël Collet, and Erik Klintskog. A fault-tolerant mobile-state protocol and its language interface. In preparation, 1999.
Luca Cardelli. A language with distributed scope. In Principles of Programming Languages (POPL), pages 286–297, January 1995.
Douglas E. Comer. Internetworking with TCP/IP. Vol. 1: Principles, Protocols, and Architecture. Prentice-Hall, Englewood Cliffs, N.J., 1995.
Donatien Grolaux. Editeur graphique r’eparti bas’e sur un modèle transactionnel (A distributed graphic editor based on a transactional model) (in French). Technical report, Universit’e catholique de Louvain, June 1998. M’emoire de fin d’’etudes (Master’s project).
Seif Haridi and Nils Franz’en. Tutorial of Oz. Technical report, 1999. Draft. In Mozart documentation, available at http://www.mozart-oz.org.
Seif Haridi, Peter Van Roy, Per Brand, and Christian Schulte. Programming languages for distributed applications. New Generation Computing, 16(3), May 1998.
Eric Jul, Henry Levy, Norman Hutchinson, and Andrew Black. Fine-grained mobility in the Emerald system. ACM Transactions on Computer Systems, 6(1):109–133, February 1988.
Mozart Consortium (DFKI, SICS, UCL, UdS). The Mozart programming system (Oz 3), January 1999. Available at http://www.mozart-oz.org.
James D. Solomon. Mobile IP-The Internet Unplugged. PTR Prentice Hall, Upper Saddle River, New Jersey, 1998.
Sun Microsystems. The Java Series. Mountain View, Calif., 1996. Available at http://www.aw.com/cp/javaseries.html.
Sun Microsystems. The Remote Method Invocation Specification. Sun Microsystems, Mountain View, Calif., 1997. Available at http://www.javasoft.com.
Tommy Thorn. Programming languages for mobile code. ACM Computing Surveys, 29(3):213–239, September 1997.
Peter Van Roy. Eliminating manager dependency in mobile cell protocol, August 1999. Message on internal Mozart mailing list.
Peter Van Roy. On the separation ofasp ects in distributed programming: Application to distribution structure and fault tolerance in Mozart. In International Workshop on Parallel and Distributed Computing for Symbolic and Irregular Applications (PDSIA 99), Tohoku University, Sendai, Japan, July 1999.
Peter Van Roy, Seif Haridi, and Per Brand. Distributed programming in Mozart — A tutorial introduction. Technical report, Mozart Consortium, 1999. Draft. In Mozart documentation, available at http://www.mozart-oz.org.
Peter Van Roy, Seif Haridi, Per Brand, Gert Smolka, Michael Mehl, and Ralf Scheidhauer. Mobile objects in Distributed Oz. ACM Transactions on Programming Languages and Systems, 19(5):804–851, September 1997.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Van Roy, P., Brand, P., Haridi, S., Collet, R. (1999). A Lightweight Reliable Object Migration Protocol. In: Bal, H.E., Belkhouche, B., Cardelli, L. (eds) Internet Programming Languages. ICCL 1998. Lecture Notes in Computer Science, vol 1686. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47959-7_2
Download citation
DOI: https://doi.org/10.1007/3-540-47959-7_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66673-8
Online ISBN: 978-3-540-47959-8
eBook Packages: Springer Book Archive