PAWN- Related Work
Messaging solutions
A number of messaging solutions have been proposed in recent years. These systems define generic APIs and protocols for sending and receiving messages using a publisher/subscriber or centralized model. While these systems can be (and are) leveraged to enable interactions on the Grid, only few recent projects specifically address peer-to-peer messaging for Grid applications.
Message Oriented Middleware (MOM): MOM systems, such as the Java Message Service (JMS) jms, are becoming widely accepted as the industry's solution of choice for messaging. JMS embeds message transaction mechanisms in a simple to use API, providing flexible delivery and transfer guarantees through point-to-point or publish/subscribe models. In this system, in order to send a message from a source to a destination, a host has to connect to a message server, which is then responsible for distributing the message across the network to its final destination. JMS supports text messages and enables XML documents to be exchanged among peers. It also supports object messages using the Java Serialization mechanism to exchange Java objects. The IBM MQSeries mqseries uses queues to store and forward messages between hosts. Every message can have a different degree of assurance depending on the requirements of the delivery mechanism, such as a one-way datagram message with no associated reply message or a request message that blocks its listener process while waiting for a response.
Publisher/Subscriber Systems:
Systems such as LeSubscribe lesubscribe, Siena siena, Elvin elvin, and Gryphon gryphon provide publisher/subscriber approaches to content-based routing and event notification across wide area networks. Content-based routing approaches typically define servers (also called access points) that are responsible for filtering and aggregating incoming messages before distributing them to all the subscribed peers. These mechanisms can be leveraged to provide collaborative tools for scientific applications. Popular communication systems (e.g. ICQ icq and file sharing applications such as KazAa kazaa use a hybrid architecture combining peer-to-peer and centralized servers. In these systems, centralization is used to manage users connections, discover resources efficiently through central table lookups, and optimize messaging among peers. Once a resource is discovered, peers can initiate a direct connection to the discovered peer to transfer a file or open a text or voice communication.
Grid Messaging Infrastructures:
Grid messaging infrastructures include the Narada Brokering System
narada and the ICENI Grid Middleware iceni. Narada provides wide area
event brokering targeting large scale collaborations in education and
science. It is based on a publisher/subscriber model and defines a
network of broker nodes that can be dynamically deployed to provide
efficient events distribution among groups of interested peers. In
Narada, an event message uniquely identifying source and destination
addresses and peer interests is composed and passed to the broker
network for wide-area distribution. Narada brokering was implemented
on top of JMS and then combined with JXTA, bringing its event
distribution capabilities to JXTA communities. The ICENI framework
enables component-based application composition for e-Science. It
defines a Grid middleware on which services and resources are exposed
and accessed through policy and security managers on top of the Open
Grid Services Architecture (OGSA) Grid2. It allows Grid resources to
be used to compose and deploy applications at runtime. As in Pawn,
services and resources can be dynamically deployed and run on the
Grid.
Pawn provides communication and interaction mechanisms leveraging
resources and data made available via the Grid protocols. It offers a
decentralized publisher/subscriber messaging substrate by maintaining
the interests of peers, recognized by their peer identifiers, in a
queue of interest and notifying each peer when new messages
occur. Pawn uses JXTA's underlying messaging transports to distribute
data over the network using rendezvous/routing nodes. Unlike JMS, it
does not require connection to a dedicated message server as every
deployed rendezvous node can forward messages to the other peers in
the group. Pawn's interactions share similar mechanisms to the ones
offered by hybrid systems such as ICQ or KaZaA, i.e. once a peer is discovered, direct communication with the peer can take place through pipe channels. Unlike hybrid systems, Pawn does not maintain location information of other peers at a central location but allows for a dynamic discovery.