C. Varela.
Worldwide Computing with Universal Actors: Linguistic Abstractions for Naming, Migration, and Coordination.
PhD thesis,
U. of Illinois at Urbana-Champaign,
2001.
Keyword(s): distributed computing,
concurrent programming,
grid computing,
internet programming languages,
coordination models,
middleware,
software agents.
Abstract:
The enormous growth of the World-Wide Web has created the opportunity to use the combined computing and communication resources of millions of computers and devices connected to the Internet. The goal of the World-Wide Computer (WWC) project is to effectively turn the Web into a unified, dependable, distributed computing infrastructure. The WWC harnesses under-utilized computing resources by providing application programmers with the potential to globally distribute computations. Furthermore, the WWC provides mobile users and remote collaborators with a unified interface to their data and programs. Several applications in multiple domains -- as diverse as massively parallel computing, remote collaboration, coordinated computing, and Internet agents -- motivate the WWC. To realize this vision, we develop mechanisms for naming, migration, and coordination of software components and applications running on top of the Web. We represent software components as collections of actors. Actors provide autonomy, simplicity of communication and computation, and a well-developed formal semantics. Therefore, the WWC project uses the actor model of concurrent computation as a basis for studying and implementing different strategies for distributed software component naming, migration, and coordination. Universal naming is a critical aspect of accomplishing worldwide computing. The WWC''s naming strategy, based on Uniform Resource Identifier:s (URI), enables transparent migration and interconnection of actors. While a Universal Actor Name (UAN) persists over the life-time of an actor, Universal Actor Locators (UAL) change according to the actor''s current location, and prescribe a protocol for communication with the actor. Data and code migration enable scalability, more efficient network usage, improved graphical user interfaces, and mobile users and resources. Much work has been done on providing transparent access to remote objects, hiding their location information from application programmers, albeit with the unfortunate consequence of hindering efficient network programming. This thesis describes a model for both fine-grained and coarse-grained migration, which enables the development of applications with transparent actor mobility, yet allows programming control on the locality of the participating actors. Coordination of concurrent computations in the WWC is difficult. Traditional coordination mechanisms rely on a shared space, and therefore do not scale to the World-Wide Web. This thesis develops a scalable hierarchical model for coordination. Actors are grouped into casts which contain a special actor, designated as the cast director. Directors may themselves belong to other casts, creating a coordination forest. Message passing is constrained by the directors of a recipient. All directors of a target actor, up to the first common ancestor with the message sender, need to approve a message before it is delivered: directors above the first |
@PhdThesis{varela-phd-2001,
author = {C. Varela},
title = {{Worldwide Computing with Universal Actors: Linguistic Abstractions for Naming, Migration, and Coordination}},
school = {U. of Illinois at Urbana-Champaign},
year = 2001,
pdf = {http://web.archive.org/web/20010404065326/http://osl.cs.uiuc.edu/Theses/varela-phd.pdf},
keywords = {distributed computing, concurrent programming, grid computing, internet programming languages, coordination models, middleware, software agents},
abstract = {The enormous growth of the World-Wide Web has created the opportunity to use the combined computing and communication resources of millions of computers and devices connected to the Internet. The goal of the World-Wide Computer (WWC) project is to effectively turn the Web into a unified, dependable, distributed computing infrastructure. The WWC harnesses under-utilized computing resources by providing application programmers with the potential to globally distribute computations. Furthermore, the WWC provides mobile users and remote collaborators with a unified interface to their data and programs. Several applications in multiple domains -- as diverse as massively parallel computing, remote collaboration, coordinated computing, and Internet agents -- motivate the WWC. To realize this vision, we develop mechanisms for naming, migration, and coordination of software components and applications running on top of the Web. We represent software components as collections of actors. Actors provide autonomy, simplicity of communication and computation, and a well-developed formal semantics. Therefore, the WWC project uses the actor model of concurrent computation as a basis for studying and implementing different strategies for distributed software component naming, migration, and coordination. Universal naming is a critical aspect of accomplishing worldwide computing. The WWC''s naming strategy, based on Uniform Resource Identifier:s (URI), enables transparent migration and interconnection of actors. While a Universal Actor Name (UAN) persists over the life-time of an actor, Universal Actor Locators (UAL) change according to the actor''s current location, and prescribe a protocol for communication with the actor. Data and code migration enable scalability, more efficient network usage, improved graphical user interfaces, and mobile users and resources. Much work has been done on providing transparent access to remote objects, hiding their location information from application programmers, albeit with the unfortunate consequence of hindering efficient network programming. This thesis describes a model for both fine-grained and coarse-grained migration, which enables the development of applications with transparent actor mobility, yet allows programming control on the locality of the participating actors. Coordination of concurrent computations in the WWC is difficult. Traditional coordination mechanisms rely on a shared space, and therefore do not scale to the World-Wide Web. This thesis develops a scalable hierarchical model for coordination. Actors are grouped into casts which contain a special actor, designated as the cast director. Directors may themselves belong to other casts, creating a coordination forest. Message passing is constrained by the directors of a recipient. All directors of a target actor, up to the first common ancestor with the message sender, need to approve a message before it is delivered: directors above the first}
}