PAWN : Enabling P2P interactions on the Grid
AbstractThe emergence of computational Grids and the potential for seamless aggregation, integration and interactions has made it possible for scientists and engineers to conceive a new generation of realistic, scientific and engineering simulations of complex physical phenomena. Global and autonomic scientific investigation requires continuous, seamless and secure interactions where the application components, grid services, resources (systems, CPUs, instruments, storage) and data (archives, sensors) can interact as peers. This paper presents Pawn, a peer-to-peer messaging substrate that builds on this emerging Grid middleware to enable the peer-to-peer interactions required for distributed computational systems targeting scientific investigation. Specifically it provides key messaging mechanisms to enable monitoring, computational interaction, steering, dynamic data interrogation and injection, and collaboration between peers across the Grid. Pawn builds on Project JXTA, DISCOVER and Globus middleware services and enables dynamic peer-to-peer discovery of applications, resources and users peers, and interactions between them. The design and implementation of Pawn and its use for enabling interaction for oil reservoir optimization on the Grid is presented.Contributions
MotivationThe motivation for PAWN is to provide interaction mechanisms for science in a more robust manner than the centralized services architectures. This is accomplished by moving services at the peer's level and using a common messaging service as a carrier enabling these interactions.The two pictures below represent the transition from a centralized service architecture to a decentralized architecture as proposed in PAWN.
PAWN defines and implements services that work on top of Project JXTA's core services. JXTA defines 6 fundamental protocols : jxta_protocols.html provides a more complete description of those protocols and their associated messages. Visit Project JXTA's web page. PAWN defines services that are common to collaborative applications in science. Among those services are:
Experimental EvaluationWe evaluated the performance of PAWN on the LAN and on the WAN. We compared the features offered by PAWN, such as message queuing for guaranteed delivery and Remote Method Invocation for distributed object interaction and management, on top of JXTA's pipe and Resolver services, that offer no guarantee and no object management service. We show that PAWN does not add a significant overhead on the underlying overlay network provided by JXTA, making it a suitable peer-to-peer messaging middleware for scientific collaborations. For graphs and measure, visit the Results pageSummaryPawn is a peer-to-peer messaging substrate that supports peer-to-peer interactions required for global scientific investigation. Pawn provides guaranteed message delivery and ordering among distributed peers. It enables wide-area peer-to-peer interactions on the computational Grid by using the existing Grid services to deploy peers on available resources, and provides an overlay messaging enabling high-level scientific interactions such as dynamic data injection, synchronous/asynchronous communication, proxying, and data archival. Pawn leverages Project JXTA and defines high level services, enabling dynamic and adaptive application composition that can be deployed across wide-area networks. The design and implementation of Pawn and its use for enabling interaction for oil reservoir optimization on the Grid was presented. Our current efforts are focused on optimizing the gateway peers, in terms of their scalability and availability, and the connection of localized peergroups to form wide-area collaboratories.LinksJXTA FeaturesPawn slide Notes on Java Native Interface PAWN Javadocs P2P web page Project JXTA Brendon Wilson's page PAWN related work Interesting article at gridtoday.com |