& Presence Management in Mobile Ad-Hoc Networks

Derek Greene, Donal O’Mahony Network and Telecommunications Research Group Department of Computer Science, Trinity College, Ireland. {Derek.Greene, [email protected]}

Abstract 2. Development of IM Systems

The combination of real-time message delivery and 2.1. Origins presence awareness has to lead the rapid rise in popularity of Instant Messaging (IM) in recent years. Instant Messaging involves synchronous electronic The extension of IM to mobile ad-hoc networks communications where two or more users exchange certainly offers considerable potential. However, the textual or voice via electronic devices. dynamic topology and decentralized nature of these Primitive messaging systems first became available networks requires several major issues to be many years ago, for example, UNIX Talk in 1973 and addressed. Specifically, difficulties exist in providing Internet Relay Chat in 1988. From the end-user’s an effective reliable service in the absence of a perspective, these systems operate in a manner similar continuously available server. We present here the to the wired telephone network in that the end-user is Dawn IM system, which takes a decentralized required to make “blind” calls, hoping that the approach to bringing the functionality inherent in recipient is available to take the call. Such systems lack fixed-network IM systems to an ad-hoc environment. In presence-awareness. addition we discuss a test-bed implementation that Instant Messaging in its current form was first made supports collaboration between users equipped with widely available when the ICQ network was handheld devices. introduced in 1996. Subsequently companies such as AOL and Microsoft have established public consumer 1. Introduction networks based on various similar but incompatible protocols, while others such as IBM have focused on The rise in popularity of Instant Messaging (IM) in providing private corporate messaging systems. recent years has gradually led to its acceptance as a Recently, organization such as the IETF and the Jabber valuable method of communications in both academic Software Foundation [2] have invested considerable and corporate environments. In particular, resources in the development of proposals detailing collaborative groups have made use of the technology protocols such as SIP for Instant Messaging and to interact in a more immediate manner than afforded Presence Leveraging Extensions (SIMPLE) and the by other methods of electronic communication such as Extensible Messaging and Presence Protocol (XMPP), e-mail, while avoiding the disruption inherent in each primarily aimed at providing a standard for dedicated voice conversations [1]. Instant Messaging on fixed networks. We present here the Dawn IM system, a framework for the development of applications that brings the 2.2. Features of IM Systems functionality inherent in popular Instant Messaging systems to a wireless ad-hoc environment. Our primary In its simplest form, IM combines bi-directional goal is to facilitate spontaneous conversations between communications with information describing the status mobile hosts where no centralized server exists. of each user on the network. A textual conversation In section 2 we examine the origins of modern IM may be formed via the exchange of short, simple systems. Section 3 outlines the issues involved in messages that are delivered in approximately real-time. implementing an IM system for mobile ad-hoc While Talk involved one-to-one conversations and networks. This is followed by a description of the core relay-type messaging focused on multi-user “chat design of our system in section 4. Finally section 5 rooms”, most IM systems combine these approaches, describes a test-bed implementation that supports ad- providing more flexible user interaction. hoc collaboration between users equipped with The most important aspect of IM that differentiates handheld devices. it from earlier systems is the integration of presence awareness, providing the ability to monitor the status of other users on the network. In most IM client applications, this information is presented in the form The extension of Instant Messaging to mobile ad- of a “buddy list”, which displays a list of contacts hoc networks certainly offers considerable potential. along with their current status. If a particular user is However, the dynamic topology and decentralized “online” and willing to receive communications, an nature of these networks requires several major issues indicator will display this information on the buddy to be addressed. In particular, difficulties exist in lists of those users who have subscribed to that user’s providing an effective reliable IM service in the presence information. absence of a continuously available server. In this It is this combination of immediacy with the use of section we discuss two recent proposals for ad-hoc status information to provide integrated Presence and systems supporting presence awareness and messaging. Availability awareness that has been pivotal in encouraging the swift adoption of this medium for 3.2. Related Work communications. The DoMo pervasive computing environment [5] is 2.3. Presence and Availability a proposal to extend the AIDA Jabber-based Instant Messaging client for Palm OS to provide a generic Presence information refers to data describing an means of sharing presence information between individual’s current online status and ability to receive devices on wireless and fixed networks. This model various forms of communications. For example, this covers not only the status of end-users, but also information might describe whether a user is capable extends the concept of presence awareness to shared of receiving a telephone call or an IM message at any resources such as documents and peripheral devices. given time. It may also extend to supplementary The network architecture in the DoMo environment information such as preferred medium for contact or relies primarily on the existence of a central Jabber current geographical location. server to handle message exchange and presence Availability denotes the willingness of a user to distribution. This server is in turn connected to a communicate depending upon a specific context, wireless access point that serves as a gateway for usually determined by the type of communications wireless devices and provides connectivity to resources being requested and the identity of the other user on a fixed network. By requiring a permanent fixed making the request. For example while an IM user may server and communications via a gateway node, the be able to receive messages from any other user on the range and flexibility of this approach are limited, same network, in practice he may wish to be offering little more freedom than afforded by a wired unavailable to all but his known contacts to prevent network. intrusion by unsolicited messages. An alternative approach [6] describes a fully In IM systems, the concepts of presence and decentralized system for the provision of Instant availability are usually closely linked. A typical client Messaging on ad-hoc community networks. It does not application will inform the user when a contact’s state depend on a fixed server or gateway, as state changes, and also provides him with the ability to information is managed in a distributed manner. Each easily alter his state. For the remainder of this paper I node maintains a view of the topology of their use the term “presence awareness” to refer to “neighborhood” of the network. Peer location is knowledge concerning both presence and availability. achieved by using a modified link-state routing protocol to find a path to any given node. Presence 3. Instant Messaging in Ad-hoc Networks awareness is closely coupled to the routing protocol, as the link-state table is also used to store the online status 3.1. Overview of known nodes. The exchange of chat messages and presence updates takes place over an ad-hoc Ad-hoc networks allow the instantaneous formation "connection”, which involves sending packets over the of networks without the cost and time required to optimal path between nodes. This path may be adapted establish a physical infrastructure. There has been over time as the network topology changes to maintain particular interest in the area of mobile ad-hoc stability without disrupting the operation of node. networks (MANETs) due its potential for enabling System [6] also extends to the provision of offline ubiquitous computing. Possible applications include message delivery, a useful feature found in some spontaneous discussions between work group members commercial IM systems, where chat messages sent to and cooperation between emergency services personnel an offline user may be buffered and delivered when working in the field. they rejoin the network. The authors suggested the use of proxy nodes to temporarily store unsent messages for offline recipients. When a node chooses to leave the network, it may nominate another node to receive routed to/from those users from/to the local user at a messages on its behalf. In general, the decentralized given node. approach chosen by this system provides greater One of the major challenges of a fully decentralized opportunity for spontaneous collaboration, as it is system is how to route messages to their destination, as independent of any fixed infrastructure. no central authority exists to manage address resolution. This problem is exacerbated in mobile ad- 4. Design Issues hoc networks, as nodes are constantly moving and may be rapidly coming in and out of transmission range. To 4.1. Overview address this problem we have chosen to use Nom, a resource location and discovery system proposed by In this section we discuss our approach to Doval [4]. It combines a custom peer-to-peer protocol addressing the major issues in designing a fully with the construction of an overlay network to decentralized IM system to be deployed in the Dublin efficiently query the location of resources. Ad-hoc Wireless Network (DAWN). In particular, we focus on methods for locating other users, distributing 4.4. Presence Management and Distribution presence information and forming multi-user group conversations. In a fixed IM network presence information for all entities is managed by one or more continuously 4.2. Decentralized Operation available servers. It is the responsibility of a server to track the state of each entity on the network, and Current consumer and corporate IM systems are respond to changes in their state (e.g. an entity leaving primarily based on variations of the client-server the network) by supplying presence updates to architecture. In this configuration the complexity interested parties. However, a fully decentralized resides on the server side, with clients sending text, network lacks this form of central repository. In a presence or other control messages to a central server. mobile ad-hoc network the problem is more complex The server is then responsible for handling the due to the highly dynamic topology of the network. messages and taking a suitable action, such as In the Dawn IM system, each entity manages its forwarding a text message to its intended recipient or own presence information and is responsible for distributing presence updates. informing other parties of its current state. We have The communications model we have chosen differs chosen to use an existing presence and availability significantly from proposals such as DoMo or the protocol, namely that described in the XMPP model often employed by contemporary wireless specification [9]. This protocol is currently used by networks, where roaming mobile hosts communicate Jabber IM systems and includes a description of via gateways that connect to established servers transport semantics for the exchange of presence and running on a fixed LAN. Our primary goal is to enable availability data. The generic nature of the the spontaneous collaboration of small-scale working specification is such that it is not tied to any specific groups without the need for complex configurations or architecture, making it suitable for use in a previously installed infrastructure. Any reliance on decentralized network. fixed centralized servers would appear to negate many While the core XMPP protocol describes semantics of the benefits inherent in wireless ad-hoc, limiting the for presence messages, it does not extend to specifying range and versatility of the system. For the Dawn IM how the information should be distributed. We system we have opted for a fully decentralized therefore examined the two models for presence approach to communications between nodes, management described in RFC-2778 [8]. The emphasizing reliability and robustness. “subscription” approach involves the subscriber asking other entities to notify it of any future changes in their 4.3. Peer Location presence state, while the “fetching” model involves making single unconnected requests to query an Methods for peer location form a vital part of the entity’s current status. Fetching on a periodic basis design of peer-to-peer networks, and the choice of effectively constitutes “polling”. Wired-network IM algorithm or protocol can be a major factor in the systems make use of presence distribution based on reliability and efficiency of the overall network. In a subscription methods, where subscriptions are initiated decentralized Instant Messaging system, peer and fulfilled through a central server. discovery involves finding other users on the network However, subscriptions as described above are so that text messages and presence information can be temporary, rendering them ineffective in a fully decentralized system. For example, when an entity joins the network, it will have to inform the others of members may invite additional users to join the its interest in subscribing to their presence information. conversation at any time, so that one-to-one In a centralized system, the IM server can keep track of conversations may be extended to involve many users. these requests and provide notifications when entities change their status. In contrast, an entity in a 5. Implementation decentralized system will need to directly inform another entity of its interest in receiving presence The system was implemented as an extension to the requests. If the target node is not contactable (e.g. generic protocol stack model developed by researchers switched off, out of range), the sender will need to wait at the NTRG, Trinity College Dublin [10]. This model an arbitrary period of time before making another involves the creation of networking applications request. Effectively the node may need to resort to through the creation of individual protocol “layers” polling in order to establish a subscription. In addition, that are assembled into the desired configuration for a if a node becomes unavailable, it may be difficult to given task and platform. The configuration for the ascertain whether the user has closed the client Dawn IM application is illustrated in figure 1. application or has merely gone out of transmission range. If the same node subsequently appears again, we User Interface cannot be sure whether that node has retained previous subscription information or has discarded it. Presence Management Group Management For a small-scale private network, the use of User ID State Group ID Members fetching on a periodic basis provides reliable distribution of presence and availability information, without adding unnecessary complexity to the protocol Resource Location (NOM) and with an acceptable level of bandwidth usage. Dynamic Source Routing

4.5. Conversation Management Broadcast (802.11b) Figure 1. Protocol stack (all nodes) In their approach to message exchange, existing wired-network IM systems generally fall into two The system was initially prototyped as a desktop categories. All major consumer IM systems make a application, where the JEmu network emulator [11] clear distinction between one-to-one conversations and was used to simulate the behavior of multiple nodes in multi-user “chat rooms”. However, many corporate a wireless network. The system was then ported to the systems allow private chat sessions to be extended via Microsoft Windows CE operating system and deployed invitations. In either case, the list of chat sessions and on commercial off-the-shelf PDA devices such as the members for each conversation are maintained on a Compaq iPAQ. central server. As result this information may be easily queried at any time by entities involved in a given 6. Discussion conversation. However, since we have opted not to make use of a centralized architecture, the burden is on Tests involving groups of users equipped with each node to maintain state information relating to all Dawn IM clients on PDA devices proved successful, group conversations in which it currently participates. with presence information and text messages being We have chosen to follow a “group-based” distributed reliably via wireless adapters on the approach to managing IM conversations, using a single handheld devices. The facility to easily extend one-to- protocol for both one-to-one and multi-user message one conversations to involve multiple users allowed exchange. A basic multicast scheme is used to send participants to easily join and leave groups, facilitating messages to the other members of the group. Group spontaneous collaboration. views are maintained at each node, and are The system that we have proposed was tested in a synchronized via control messages sent to all members small-scale deployment in an internal environment whenever a node joins or leaves the group. “Leave” where users trust each other. However, we envisage messages indicate that an entity wishes to explicitly that the solution would scale to a larger-scale leave the group, while presence updates are used to deployment with adjustments to parameters in the detect when nodes within a group have gone out of presence layer. In particular the underlying range, and group members are informed of their implementation of Nom facilitates the automatic temporary unavailability by the underlying presence construction of an overlay network for efficient peer layer. Messages are routed in a peer-to-peer manner location in a large network. using the underlying Nom layer to locate nodes. Group Alternative methods for presence distribution could References yield increased efficiency by reducing bandwidth usage. An approach to be considered in future work is [1] B. Nardi, S. Whittaker, E. Bradner, "Interaction and the assignment of additional duties to certain nodes, Outeraction: Instant Messaging in Action," in such as acting as a repository of presence information Proceedings of ACM 2000 Conference on Computer for all nodes in a “neighborhood”. Effectively the Supported Cooperative Work, 2000. scheme would function in a similar manner to “super- [2] Jabber Software Foundation website, 2003, peers” in P2P networks such as Gnutella. The http://www.jabber.org. establishment of a limited hierarchy could bring many [3] P. Godefroid, J.D. Herbsleb, L.J. Jagadeesan, Du Li, of the performance benefits of centralization to a “Ensuring Privacy in Presence Awareness Systems: An mobile ad-hoc network [12]. However the degree of Automated Verification Approach,” in Proceedings of improvement would be heavily dependent on the ACM 2000 Conference on Computer Supported choice caching and distribution algorithms. Cooperative Work, Philadelphia, Pennsylvania, 2000. We also recognize that any public deployment [4] D. Doval, D. O’Mahony, “Nom: Resource Location and would require that the privacy concerns involved in the Discovery for Ad Hoc Mobile Networks,” in aggregation of presence information and inter-personal Proceedings of the First Annual Mediterranean Ad Hoc messaging would be addressed using appropriate Networking Workshop, Sardegna, Italy, 2002. security measures. The stack-based architecture upon [5] J. Favela, C. Navarro, M. Rodriguez, “Extending which the DAWN IM system is developed is Instant Messaging to Support Spontaneous Interactions specifically designed to facilitate the addition of layers in Ad-hoc Networks,” in Proceedings of ACM 2002 that provide supplementary capabilities such as Conference on Computer Supported Cooperative Work enhanced security. A stack component suitable for (CSCW ’02), New Orleans, Louisiana, 2002. dealing with many of these privacy issues is proposed [6] T. Ueda, S. Bandyopadhyay, K. Hasuike, in [13], which provides secure group formation using “Implementing Messaging Services on Ad Hoc cryptographic techniques suitable for small devices Community Networks using Proxy Nodes,” in with limited processing power. Proceedings of 2nd Swedish Workshop on Wireless Ad- Hoc Networks, Stockholm, 2002. 7. Conclusions [7] M. Khambatti, S. Akkineni, “Location management in peer-to-peer mobile ad-hoc networks,” Arizona State In this paper we have presented a system that University, Tech. Rep, 2002. implements the core elements of Instant Messaging – [8] P. Saint-Andre, J. Miller, “XMPP - Core Protocol presence awareness and group conversations – in a (Draft),” IETF Network Working Group, 2003. mobile ad-hoc environment. However, the dynamic [9] M. Day, J. Rosenberg, H. Sugano, “A Model for nature of these networks makes the centralized model Presence and Instant Messaging (RFC 2778),” IETF prevalent in fixed-network IM systems unsuitable. In IMPP Working Group, 2000. response we have suggested an alternative peer-to-peer approach affording similar functionality without the [10] D. O'Mahony, L. Doyle, “An Adaptable Node Architecture for Future Wireless Networks,” in Mobile need for a continuously available server or gateway. Computing: Implementing Pervasive Information and In general, our experience with the Dawn IM Communication Technologies, Kluwer series in system suggests that the integration of Instant Interfaces in OR/CS, Kluwer Publishing, 2001. Messaging and wireless ad-hoc networks has the [11] J. Flynn, H. Tewari, D. O’Mahony, “A real time potential to create a new form of application that emulation system for ad-hoc networks,” in Proceedings encourages spontaneous communications in mobile of the Communication Networks and Distributed computing environments. Specifically, the main Systems Modeling and Simulation Conference 2002, advantage of such an application lies in the enablement San Antonio, Texas, 2002. of interaction between roaming users without the need [12] B. Yang, H. Garcia-Molina, "Designing a Super-Peer for dedicated servers or expensive physical Network," in Proceedings of the 19th International infrastructure. Furthermore, we believe that the Conference on Data Engineering, 2003. provision of presence awareness in applications for mobile devices will serve to enrich the end-user [13] R. Verma, H. Tewari, D. O’Mahony, “Wanderer: Secure Group Formation and Communication in Ad experience and facilitate more efficient collaboration Hoc Networks”, in Proceedings of the 2nd Joint between members of working groups. IEI/IEE Telecommunications Systems Research Symposium, Dublin, 2003.