Enabling SIP-Based Services in Ad Hoc Networks Heng-Te Chu 1, 2, Wen-Shiung Chen 1 1 VIPCCL, Dept. of Electrical Engineering, National Chi Nan University, Nan-Tou, Taiwan 2 Dept. of Information Networking Technology, Hsiuping University of Science and Technology, Taichung, Taiwan wschen@ncnu.edu.tw Abstract- Session Initiation Protocol (SIP) is widely used for establishing multimedia sessions, and chosen as the signaling protocol in the 3GPP standards. It also attracts many attempts to deploy SIP in a Mobile Ad-hoc Network (MANET). However, traditional SIP end points rely on SIP servers to discover one another and exchange SIP messages, which becomes a challenge due to lack of such server-based components in the infrastructure-less MANET. Although there are some approaches in decentralizing the SIP server functions in MANETs, they either consume too much power and bandwidth, or take the random network topology change into little consideration. The Ad-hoc On-demand Distance Vector (AODV) routing protocol uses a reactive strategy to conserve resource consumption. Thus, we propose a middleware that is carefully integrate with AODV in order to minimize the signaling overhead as well as enable SIP-based applications in MANETs. Keywords- Mobile Ad-Hoc Networks; Session Initiation Protocol; ; Decentralized Approach I. INTRODUCTION As new mobile clients become miniaturized and cheaper, it attracts more and more attempts to deploy Internet-based applications over wireless Mobile Ad-hoc Networks (MANETs). For example, the voice-over-ip (VoIP) services are so popular that many people would like to use VoIP further over a MANET for ubiquitous communications. The MANET provides volatile connectivity to mobile nodes without any pre-existing infrastructural support. It can quickly help, for example, emergency response at a disaster site where the network infrastructure is broken down. However, as the mobile nodes spontaneously organize a network on-the-go, the network topology may change from time to time. Owing to conventional Internet-based applications heavily rely on the stable infrastructure of the Internet and server-based components to run: e.g., routers and DNS servers, the dynamic nature of the MANET hinders Internet-based applications from being run in the MANETs straightforwardly. Session Initiation Protocol (SIP) [1] was originally designed for establishing and managing multimedia sessions on the Internet with support of stable infrastructure. The basic SIP operations typically rely on centralized servers, e.g., SIP registration and proxy servers, to work. For example, the registration servers manage user location information while the proxy servers route SIP messages. However, in a MANET, such centralized servers may be no longer available. The SIP user agents may need broadcasting their location information proactively or requesting others on a demand basis. There are also other different approaches. For instance, in [2, 3], it may additionally combine with some extensions that are derived from the service location protocol (SLP) [4]. In [5, 6], it introduces the distributed hash table (DHT) that is well-known used in peer-to-peer architecture, to be used in MANETs. However, it could fail to build its DHT, due to the dynamic nature of MANET. In [7], it puts the SIP server function into the cluster heads. However, since the network topology may change so often that the cluster reformation process may degrade the SIP signaling performance dramatically in real practice. In this paper we propose a middleware that can enable existing SIP-based VoIP applications to be run on MANETs without any modification. The middleware takes over the SIP server functions. Besides, the middleware carefully invoke underlying network routing module while discovering targets and delivering SIP messages. For simplicity, we adopt Ad-hoc On-demand Distance Vector (AODV) routing protocol [8-10] for demonstration. The rest of this paper is organized as follows. Section II provides a brief overview of the SIP protocol. Section III introduces the AODV routing protocol briefly. Section IV states problems about using SIP in MANETs. Section V addresses the design issues about adapting SIP-based services in MANETs. Section VI concludes this paper. A. SIP II. PROTOCOL OVERVIEW SIP is a text-based and HTTP-like application-layer control (signaling) protocol for creating, modifying, and terminating sessions. There are two main components in SIP: the user agent (UA) and the servers (proxy, redirect, and registrar). The UA contains two parts: the user agent client (UAC) and the user agent server (UAS). UAC generates requests, such as,, CANCEL,, BYE, and etc. UAS responds accordingly. The SIP proxy, redirect, and registrar servers are logical functional entities. A physical device can run specific or all types of SIP servers. A user is identified by a SIP address-of-record (AOR) URI that is very similar to an email address. A device is identified by a SIP contact address. A user may have multiple devices. Hence, the SIP method may bind one AOR with multiple contact addresses. Such binding information is kept by the location service that usually resides the same server as the registrar does, as shown - 158 -
in Fig. 1. The proxy servers may query the location service to resolve the current addresses of target UAS before route SIP request messages, as shown in Fig. 2. Fig. 1 Basic SIP registration example SIP separates the signaling control from the actual media session. Signaling control messages are usually routed through the proxies, while the media path is delivered directly from end to end, as shown in Fig. 2. The message contains media information in the message body using Session Description Protocol (SDP) The Session Description Protocol (SDP) [11] describes the detail of multimedia sessions. Usually, the media sessions are conveyed by the Real-time Transport Protocol (RTP) [12, 13]. UAC UA Query DNS Server Response SIP Registrar Store UAS Location Service Call Setup 3, for event subscription, notification, and publication model [14-16]. A user agent can act as a watcher and send messages to the presence agent (PA) [15] to request others presence information. A presence user agent (PUA) [15] can send PUBLISH [16] messages to PA to refresh its own presence information. PA usually co-locates with the proxy and/or registrar server. PA can send [14] messages to notify watchers of the change of presence states. B. AODV PUBLISH Presentity Presence Service Watcher Fig. 3 SIP-based presence model SIP Proxy / Registrar The Ad Hoc On-demand Distance Vector Protocol (AODV) protocol [8-10] is a reactive protocol, i.e., the routes are created and maintained only when a mobile node needs to look them up in order to send data to other nodes. The route discovery is started with broadcasting a route request (RREQ) message. On receiving the RREQ message, intermediate nodes as well as the destination can learn and cache a route back to the originator of the request. The route is responded by sending a route reply (RREP) message back, in a unicast way, to the originator of the RREQ, as shown in Fig. 4. RREQ RREP Media Session S D BYE BYE Call Teardown Fig. 2 SIP session establishment flow SIP also provides an extensible framework, as shown in Fig. Fig. 4 Route discovery operations Initially, it is responded by the destination node. However, a route can be determined earlier by an intermediate node that has the fresh enough route to the destination. As long as the mobile node has valid routes to the others, AODV remains silent. Nodes monitor the statuses of links to the next hops in active routes. If a broken link is detected, the node may try to repair and find a detour to the destination node. On the other - 159 -
hand, a broken link can be reported in the way that the node sends a route error (RERR) message to those affected nodes, as shown in Fig. 5. In order to enable the reporting mechanism, each node keeps a precursor list containing the addresses of neighbors that are likely to use it as a next hop toward the destination. The precursor lists can be easily achieved during passing RREP messages. are separate from SIP signaling traffic, they may use normal AODV operations to discover routes as well. Registrar/ Proxy Registrar/ Proxy Data RERR Cache Cache Routing Module Routing Module S D Fig. 5 Reporting unreachable route III. PROBLEMS ABOUT USING SIP IN MANETS In MANETs, there are no centralized servers. Thus, the normal procedure for resolving SIP URI binding information is impossible and so is the routing process for SIP messages via proxy servers. Hence, SIP must operate in a fully decentralized manner while maintaining the same interface and procedures. A mobile node in MANET is apt to move around, which means that it is now a challenge to locate and enquire the target user. In MANETs, there is no dedicated router. Thus, each mobile node must act as a router in order to help others forwarding messages. Basically, there are two major routing strategies: proactive and reactive ones. The proactive strategy continuously updates the routing information of all the mobile nodes. It may generate considerable overhead that impacts the network performance. On the contrary, the reactive strategy only discovers the routes on demand basis, for instance, the AODV. Although the proactive may provide routes quicker than the reactive, they consume more bandwidth and battery power. As bandwidth and battery power are the primary concerns in wireless networks, a reactive strategy is preferable. IV. THE PROPOSED SYSTEM DESIGN We propose a middleware to take over conventional SIP server functions. The middleware allows client applications to be run in MANET as usual. Instead of registering to conventional SIP servers, the SIP client applications simply register to the local middleware. The client applications behave as usual while the middleware takes over all the operations that are performed by conventional SIP servers, as shown in Fig. 6. Like in the Internet-based scenario, the middleware relies on the underlying routing module to deliver SIP messages. Concerning with power and bandwidth consumption, we use AODV for the underlying routing protocol. The AODV messages carry SIP messages during the route discovery, as shown in Fig. 7. On the other hand, since the media sessions Fig. 6 The middleware takes the place of the SIP server Conventionally, Internet-based applications need to query DNS servers for resolving the destination IP addresses. Likewise, a SIP client may also query DNS servers for resolving serving SIP registrar as well as proxy servers before registering itself or any further SIP operations. However, such a resolution is also unavailable in MANETs. In addition to broadcasting schemes, in [2, 3], there are combinations with SLP-like approaches to discover end points. In contrast, we go for pure SIP-based solutions by refining the process of registration and subscription. Since existing SIP-based VoIP and IM-enabled client products usually require SIP registration before proceeding any other SIP operations, the middleware serves as a registrar server, accept user s registration, and bind the user s AOR with IP address locally. The middleware does not broadcast registration information proactively. Afterward, a client may begin sending SIP request (e.g., ) messages to others as well as sending SIP response messages. The local middleware simply acts as the default outbound proxy server that forwards such SIP messages, as shown in Fig. 2. The originating middleware triggers the AODV RREQ message to carry the SIP request message and discover the IP address of untouched SIP URI. All nodes that receive this RREQ message can learn the originator s AOR. The destination middleware puts the SIP response message into the AODV RREP message accordingly. Similarly, all nodes that pass this message can learn the destination AOR. Thus, all the subsequent SIP messages can follow the same route in a unicast manner. While routing SIP messages, a mobile node can learn and originators and destinations latest binding information. Thus, it can also cache such information for later use. However, a mobile node may come and go randomly without notifying others of its movement. Such mobility may cause routes - 160 -
unreachable, AODV Route Error (RERR) Messages address this problem. RERR messages are used for notifying affected nodes of this situation. Thus an affected node can delete, expire, or repair the broken route with possible detours, as well as updates its local cache. Registrar/ Proxy RTP/RTCP AODV Routing RREQ 202 Accepted RREP Fig. 7 The AODV RREP packet piggybacks the SIP response message V. CONCLUSION This paper proposes a middleware to enable SIP-based applications to run in MANETs. The middleware actually takes over the functionalities of SIP servers and discovers target user agents on demand basis. It carefully integrates with the well-known AODV in order to conserve the bandwidth and power consumption. However, there are still some future work to do, e.g., to compare the delay and overhead in terms of different underlying network routing protocols, to inter-work with SIP-based services on the Internet. REFERENCES AODV Routing Registrar/ Proxy 202 Accepted RTP/RTCP [1] Jonathan Rosenberg et al., SIP: session initiation protocol, IETF RFC 3261, Jun. 2002. [2] Simone Leggio, Jukka M anner, Antti Hulkkonen and Kimmo Raatikainen, Session initiation protocol deployment in ad-hoc networks: a decentralized approach, Proc. 2nd International Workshop on Wireless Ad-hoc Networks (IWWAN), London, May 2005. [3] Juhamatti Kettunen, Jukka Manner and Antti Yld-Jaaski, Distributed service location and session management for ad-hoc networks, Proc. IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks 2007 (WoWMoM 2007), pp. 1-6, Jun. 2007. [4] Erik Guttman, Charles Perkins, John Veizades and Michael Day, Service location protocol, Version 2, IETF RFC 2608, Jun. 1999. [5] Ion Stoica et al., Chord: a scalable peer-to-peer lookup protocol for Internet applications, IEEE/ACM Trans. on Networking (TON), vol. 11, No. 1, pp. 17-32, 2003. [6] Kundan Singh and Henning Schulzrinne, Peer-to-peer Internet telephony using SIP, Proc. International Workshop on Network and Operating Systems Support for Digital Audio and Video (NOSSDAV 05), pp. 63-68, Washington, 2005. [7] Nilanjan Banerjee, Arup Acharya and Sajal K. Das, Enabling SIP-based sessions in ad hoc networks, ACM Wireless Networks, vol. 13, pp. 461-479, Aug. 2007. [8] Charles E. Perkins and Elizabeth M. Royer, The Ad hoc on-demand distance vector protocol, Ad hoc Networking, C. E. Perkins, Ed. Addison-Wesley, pp. 173-219, 2000. [9] Charles E. Perkins, Elizabeth M. Belding-Royer and Samir R. Das, Ad hoc on-demand distance vector (AODV) routing, IETF RFC 3561, Jul. 2003. [10] Ian D. Chakeres and Elizabeth M. Belding-Royer, AODV routing protocol implementation design, Proc. 24th Int. Conf. on Distributed Computing Systems Workshops (ICDCSW 04), pp. 698-703, 2004. [11] Mark Handley and Van Jacobson, SDP: session description protocol, IETF RFC 2327, Apr. 1998. [12] Henning Schulzrinne, Stephen L. Casner, Ron Frederick and Van Jacobson, RTP: a transport protocol for real-time applications, IETF RFC 3550, Jul. 2003. [13] Henning Schulzrinne and Stephen L. Casner, RTP profile for audio and video conferences with minimal control, IETF RFC 3551, Jul. 2003. [14] Adam Roach, Session initiation protocol (SIP)-specific event notification, IETF RFC 3265, Jun. 2002. [15] Jonathan Rosenberg, A presence event package for the session initiation protocol (SIP), IETF RFC 3856, Aug. 2004. [16] Aki Niemi, Session initiation protocol (SIP) extension for event state publication, IETF RFC 3903, Oct. 2004. Heng-Te Chu received his MS degree in - 161 -
computer science in 1995 from Syracuse University, NY, USA. Currently, he is a Ph.D candidate of Department of Electrical Engineering, National Chi Nan University, Taiwan. His research interests cover location-aware management, mobile computing, wireless networking, and SIP-based applications Wen-Shiung Chen received the M.S. degree from National Taiwan University, Taipei, Taiwan, in 1985 and the Ph.D. degree from the University of Southern California, Los Angeles, CA, in 1994, both in electrical engineering. He has been with the Department of Electrical Engineering at Feng Chia University, Taichung, Taiwan from 1994 to 2000. In 2000, he joined the Department of Electrical Engineering at National Chi Nan University, where he currently is a Professor. His research interests include digital image processing, image analysis and pattern recognition, image and video compression, biometrics, mobile computing and networking. - 162 -