GUMP: adapting client/server messaging protocols into peer-to-peer serverless environments

In this paper we present a generic environment for creating message-oriented server-side proxies to support adaptation from TCP transport-oriented client-server sessions to many-to-many peer-to-peer networking environments more suitable for deployment in dynamic wireless networks, capable of multicast forwarding. At its input, GUMP provides an interface for exposing network server implementations in order to allow existing GUI applications to connect to GUMP. At the back-end, GUMP's generic service discovery and multicast interfaces allow access to multiple implementations, enabling the discovery of necessary services on the network, maintenance of the network state, and transport of messages amongst peers, for tuning to a specific network environment. At the heart of GUMP, there is a mechanism for selecting a server-side proxy implementation for a given messaging protocol, allowing multiple proxies to co-exist and run time adaption of the system. As a primary example and use case, we show how GUMP has been used to implement an XMPP proxy allowing existing off-the-shelf XMPP client software to dynamically create and operate multi-user chat sessions in a serverless network environment. This resulting proxy integration demonstrates the power of GUMP in its ability to adapt between different methods of input using either HTTP or TCP oriented server systems, the use of its different discovery subsystem bindings (SLPv2 and JmDNS), and its support for multicast architectures. GUMP therefore allows a single messaging protocol server-side implementation to be dynamically adapted to suit a particular distributed wireless deployment environment at run time.

[1]  Sung-Ju Lee,et al.  On-demand multicast routing protocol , 1999, WCNC. 1999 IEEE Wireless Communications and Networking Conference (Cat. No.99TH8466).

[2]  J.P. Macker,et al.  Simplified multicast forwarding in mobile ad hoc networks , 2004, IEEE MILCOM 2004. Military Communications Conference, 2004..

[3]  Peter Saint-Andre,et al.  Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence , 2004, RFC.

[4]  Dharma P. Agrawal,et al.  Mobile Ad hoc Networking , 2002 .

[5]  Luis Felipe Cabrera Web Services Eventing (WS-Eventing) , 2004 .

[6]  Mark Handley,et al.  Negative-acknowledgment (NACK)-Oriented Reliable Multicast (NORM) Protocol , 2004, RFC.

[7]  Ian J. Taylor,et al.  WSPeer - an interface to Web service hosting and invocation , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[8]  Daniel H. Steinberg,et al.  Zero Configuration Networking: The Definitive Guide , 2005 .

[9]  Maurizio Giordano DNS-Based Discovery System in Service Oriented Programming , 2005, EGC.

[10]  Ivan Stojmenovic,et al.  Ad hoc Networking , 2004 .

[11]  Philippe Jacquet,et al.  Optimized Link State Routing Protocol (OLSR) , 2003, RFC.

[12]  Peter Saint-Andre Link-Local Messaging , 2006 .

[13]  Ivan Stojmenovic,et al.  Mobile Ad Hoc Networking: Basagni/Ad Hoc Networking , 2004 .

[14]  Abdelsalam Helal,et al.  Standards for Service Discovery and Delivery , 2002, IEEE Pervasive Comput..

[15]  Erik Guttman,et al.  Service Location Protocol: Automatic Discovery of IP Network Services , 1999, IEEE Internet Comput..

[16]  David A. Maltz,et al.  A performance comparison of multi-hop wireless ad hoc network routing protocols , 1998, MobiCom '98.

[17]  Tracy Camp,et al.  A survey of mobility models for ad hoc network research , 2002, Wirel. Commun. Mob. Comput..

[18]  Charles E. Perkins,et al.  Service Location Protocol , 1997, RFC.