Abstract
We identify the mechanisms needed to construct archivable webs of distributed asynchronous collaborations and experiments. The distinguishing feature of our approach is that the component tools, software, data, and even participants are distributed over a worldwide network. We perform a requirements analysis of an infrastructure that supports such applications, and present the Caltech Infospheres Infrastructure as a prototype that satisfies the requirements identified. In describing this prototype, we highlight the useful mechanisms provided, present an algorithm for using the Infospheres Infrastructure to perform asynchronous global snapshots for archiving, and suggest future areas of exploration.
Similar content being viewed by others
References
Arnold, D., Bond, A., Chilvers, M., and Taylor, R. (1996). Hector: distributed objects in Python. In conference proceedings – the Fourth International Python Conference (Livermore, June).
Cappello, P., Christiansen, B., Ionescu, M.F., Neary, M.O., Schauser, K.E., and Wu, D. (1997). Javelin: Internet-based parallel computing using Java. Submitted – the Sixth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming.
Chandy, K.M., and Lamport, L. (1985). Distributed snapshots: determining the global states of distributed systems. ACM Transactions on Computing Systems, volume 3, number 1, pages 63–75.
Chandy, K.M., and Rifkin, A. (1997). Systematic composition of objects in distributed Internet applications: processes and sessions. In conference proceedings – the Thirtieth Hawaii International Conference on System Sciences (Maui, January), volume 1, pages 395–404.
Chandy, K.M., Kiniry, J., Rifkin, A., and Zimmerman, D. (1997). A framework for structured distributed object computing. Caltech Computer Science Technical Report 97–07, February 1997.
Chandy, K.M., Rifkin, A., Sivilotti, P.A.G., Mandelson, J., Richardson, M., Tanaka, W., and Weisman, L. (1996). A worldwide distributed sytem using Java and the Internet. In conference proceedings – the Fifth IEEE International Symposium on High Performance Distributed Computing (Syracuse, August), pages 11–18.
Chappell, D. (1996). Understanding ActiveX and OLE, Microsoft Press.
Floyd, S., Jacobson, V., Liu, C., McCanne, S., and Zhang, L. (1995). A reliable multicast framework for light-weight sessions and application level framing. In conference proceedings –ACMSIGCOMM (August), pages 342–356.
Foster, I.T., and Chandy, K.M. (1995). Fortran M: a language for modular parallel programming. Journal of Parallel and Distributed Computing, volume 26, number 1, pages 24–35.
Foster, I.T., and Kesselman, C. (1996). Globus: a metacomputing infrastructure toolkit. In conference proceedings – the Workshop on Environments and Tools for Parallel Scientific Computing, SIAM (Lyon, August).
Fox, G., and Furmanski, W. (1996). Towards web/Java based high performance distributed computing – an evolving virtual machine. In conference proceedings – the Fifth IEEE International Symposium on High Performance Distributed Computing (Syracuse, August), pages 308–317.
Gosling, J., Joy, B., and Steele, G. (1996) The Java Language Specification, Addison-Wesley Developers Press, Sunsoft Java Series.
Grimshaw, A.S., Wulf, W.A., and the Legion team, The legion vision of a worldwide virtual computer. Communications of the ACM, volume 40, number 1, pages 39–45.
Hoare, C.A.R. (1978). Communicating sequential processes. Communications of the ACM, volume 21, number 8, pages 666–677.
Infospheres Research Group, The infospheres infrastructure user's guide. Technical report, California Institute of Technology, 1997.
JavaSoft JavaBeans Team. (1997). JavaBeans, Sun Microsystems.
JavaSoft Java RMI Team. (1997). Java RMI, Sun Microsystems.
Lamport, L. (1978). Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, volume 21, number 7, pages 558–565.
Lange, D.B., and Oshima, M. (1997). Programming Mobile Agents in Java--With the Java Aglet API, IBM Research.
MacBride, A., and Susser, J. (1996). Byte Guide to OpenDoc, Osborne McGraw-Hill.
Mellor-Crummey, J. (1992). Compile-time support for efficient data race detection in shared-memory parallel programs. Technical report – Center for Research on Parallel Computation CRPC-TR92232, Rice University.
Object Management Group (OMG). (1995). The Common Object Request Broker: Architecture and Specification (CORBA), revision 2.0.
Peterson, L.L., and Davie, B.S. (1996). Computer Networks: A Systems Approach, Morgan Kaufmann.
Roberts, D., and Johnson, R. (1996). Evolving frameworks: a pattern language for developing object-oriented frameworks. In conference proceedings – Pattern Languages of Programs (Allerton Park, September).
Sessions, R. (1996). Object Persistence Beyond Object-Oriented Databases, Prentice Hall.
Shenker, S., Weinrib, A., and Schooler, E. (1994). Managing shared ephermeral teleconferencing state: policy and mechanism. In conference proceedings – the International Workshop on Multimedia Transport and Teleservices, (Vienna, November).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Chandy, K.M., Kiniry, J., Rifkin, A. et al. Webs of Archived Distributed Computations for Asynchronous Collaboration. The Journal of Supercomputing 11, 101–118 (1997). https://doi.org/10.1023/A:1007903821879
Issue Date:
DOI: https://doi.org/10.1023/A:1007903821879