A P2PSIP System with Intelligent Routing Function on the Media Plane

Release Date:2011-06-21 Author:Yongsheng Hu, Zhenwu Hao, Jun Wang, and Naibao Zhou Click:

This work was funded by the Next Generation Bandwidth Wireless Mobile Communication Network Program, a Key National Science and Technology Specific Project sponsored by MIIT of China, under Grant No. 2010ZX03004-001.

 

1 Introduction
The IETF peer-to-peer session initiation protocol (P2PSIP) working group oversees standardization of decentralized SIP architecture [1]. IETF hopes to avoid centralized architecture, and to create a Skype-like system [2] but with open standards. P2PSIP is only a basic end-to-end communication protocol; building an integrated network suitable for operation and management still requires mechanisms for QoS, security and management, and accounting and billing.


    Compared with legacy SIP systems [3] such as IMS, P2PSIP has a more open environment. For example, service nodes are distributed, rather than centralized in a closed house. Peer nodes are usually located behind network address translations (NATs). The network environment is more like the Internet than traditional communication networks with reliable QoS. Therefore, a P2PSIP system requires intelligent routing to solve NAT and route efficiency. In this paper, we propose a novel and practical P2PSIP architecture that uses overlay techniques for signaling and media transport. It replaces the traditional SIP proxy/register function with distributed hash table (DHT) mechanism, and a relay service is added to resolve NAT and QoS problems.


2 Related Works
    The IETF P2PSIP working group is the first international standards organization focused on evolving SIP towards being more peer-to-peer, that is, removing the centralized proxies and adopting a DHT approach. This working group has proposed a basic resource location and discovery protocol called RELOAD [4] and defines a simple SIP usage [5] based on it. SOSIMPLE [6] and SIPeerior [7] are important projects based on RELOAD.


    There are also several voice over IP (VoIP) systems that are non-SIP or non peer-to-peer. These include Skype [8], Gizmo [9], and SATO [10]. Skype can be seen as the driver of some peer-to-peer SIP developments because it has shown how well VoIP can work and what a successfully deployed VoIP peer-to-peer system looks like. Compared with these systems, our P2PSIP focuses more on control, operation, and management.


    Intelligent routing is used to inspect the status of the network and select an alternative route that excels the default Internet routing. Intelligent routing is realized by application-level overlay routing, that is, relay technique. The relay function is key for a P2P VoIP system to guarantee NAT and QoS. The main advantage of Skype is that it uses the equivalent of session traversal utilities for NAT (STUN) servers and traversal using relay NAT (TURN) servers in the node itself when handling NAT [2]. This is unlike explicit server pre-configuration in existing SIP applications. Based on Internet routing behavior analyzed by Chinoy [11] and Labovitz [12], S. Savage et al [13] proved that most default/bad IP paths could be improved by alternative paths in the Internet. In the last decade, many studies have focused on overlay routing such as RON [14], Detour [15], SOSR [16], and ASAP [17].

 

3 Design of P2PSIP architecture
    Our goal is to develop a flexible and controllable P2PSIP network for traditional telecom operators. This is different from Internet P2P telephone Skype in terms of QoS, service control, and network management.

 

3.1 Design Rules
    We deploy a decentralized SIP system in a virtual peer-to-peer network. The requirements are:

  • overlay self-organization. The P2PSIP network consists of P2PSIP overlay nodes (PONs) on top of the underlying basic network connectivity. This virtual overlay network can be self-tuned while network adjusting and disturbing occurs. In the future, it will run in a virtual machine environment.
  • generic SIP service support. Existing basic and important IMS functions, such as session control, authentication, roaming, and interworking, should be supported by P2PSIP. Key techniques, such as data modeling and creating database of user service profile, as well as triggering of SIP service, must be solved.
  • terminate node access. In a decentralized environment, user authentication and access security are undefined problems.
  • interworking. As an alternative to VoIP, there must be a way to route calls between the P2PSIP network and traditional SIP network and PSTN. To solve this issue, gateways act as either a P2P or non-P2P client.
  • intelligent routing function. The main purposes of relay service are NAT traversal and QoS proxy. Potential functions of relay nodes include audio/video mixer, audio/video transcoder, and interceptor.

 

 

 

3.2 The P2PSIP System Architecture
    There are different components in the proposed P2PSIP system (Fig. 1). The core of the P2PSIP system is the PON. It processes SIP services and cooperates with other PONs to implement the P2P overlay network. The protocol between PONs is RELOAD [4] defined by IETF. RELOAD is currently the only available standardized P2P protocol.

 


    The bootstrap server is the first node when a PON joins the P2PSIP overlay network. The overlay configuration file is provided by the bootstrap server. The selected protocol between the bootstrap server and PONs is HTTP. The overlay configuration file is encoded and transferred in XML format.

 


    The application server hosts and executes IMS-specific services such as the voice call continuity (VCC) functions and presence-based services. This element-and its interface with the P2PSIP overlay network-inherits aspects of legacy IMS components.


    Both P2P and non-P2P clients are allowed to access the P2PSIP system. The SIP proxy provides protocol transfer for the non-P2P client and controls interworking with other telecom systems, , for example, connecting with breakout gateway control function (BGCF) and media gateway control function (MGCF).

 

3.3 Intelligent Routing Function
    NAT is a basic feature of legacy IMS networks in real network environments. The media relay mechanism is necessary for improving best-effort route policy in the Internet. Therefore, we propose a relay service based on P2P overlay function in PONs.


    A PON supports the SIP service function, relay service function, and overlay maintenance function. Acting as a supporting layer, the overlay maintenance function organizes all PONs into an integral overlay network according to the specific DHT algorithm. The P2PSIP system is an application-level service overlay network established on the low-level P2P overlay system. The intelligent routing function in the P2P overlay network maintains a candidate relay-node list that provides preferred relay-nodes. Fig. 2 shows the PON architecture.

 

 
    We propose a smart relay function based on the supportive P2P overlay network (Fig. 2). The relay plugin maintains a topology-aware candidate relay table. This table is based on the P2P overlay and global network information provided by a centralized server similar to the ALTO server defined by IETF [18]. This relay table is created in two steps when a PON joins the P2P overlay. First, the new PON obtains its local network information (including network partition and neighbor network partition) from the network information server via the NI interface. The individual network partition is identified by a packet identifier (PID) and may be one or more autonomous systems (AS) and one or more subnets. Then, the new PON collects candidate relay nodes belonging to itself and neighbor PIDs using its DHT routing table. During overlay maintenance, the relay table is also updated. A relay table structure is shown in Fig. 3.

 


    A relay node should meet following four requirements [13], [14], [17]:
    (1) quasi real-time path QoS inspection. If the path QoS deteriorates badly, a relay node should apperceive and update its relay table as fast as possible. The relay plugin is required to measure the quality of the path to its neighbor nodes.

 


    (2) node workload and capability perception. To select a suitable relay node, node workload, capability, and volunteer status needs to be taken into account. The relay function should apperceive the state of neighbor nodes in its relay table.


    (3) shortest path first for data relay. Previous research [16], [17] has proven that a one-hop routing path can satisfy the requirements of voice communication. The proposed distributed scheme based on DHT overlay is capable of quick one-hop path selection in AS-level.


    (4) closest node first for NAT traversal. In a real Internet environment, it is essential to provide proxy node selection for consumers behind NAT devices. Our system dynamically provides a closest relay node for NAT as opposed to manual pre-configuration in the traditional mode.


4 Implementation of Proposed P2PSIP System
    Our P2PSIP system is implemented on the premise that traditional SIP user equipment (UE) can participate without any enhancement. The SIP UE uses its standard way of transporting SIP signals and real-time transport protocol (RTP) media. This is similar to IMS terminating with a preconfigured access PON node. In the future, advanced P2PSIP UE will select an access PON node automatically using the P2P client described in [4].


    A call made between UE1 in PID1 and UE2 in PID2 follows the possible call flows in [3]. The preconfigured access PON node (PON1) for UE1 receives an INVITE call request, obtains the UE1 user profile (by RELOAD Fetch request), and triggers its subscribed services. Then, PON1 uses SIP URI to obtain UE2 register information (by DHT lookup) and helps build up a communication channel between UE1 and UE2 [3].

 

4.1 Relay in Media Path
    If end-to-end QoS between UE1 and UE2 gets worse during a session, an UPDATE request is sent to PON1 (the current session process node). After PON1 checks the UE1 user profile and finds the user subscribed to the relay service, a relay selecting flow is triggered.


    The relay request is not necessarily routed to PON1 but to a PON that is closest to UE1. This routing is performed by the RELOAD mechanism (Fig. 4). The peer is a surrogate node (SN1) that selects a relay node for the session. The SN1 is located at PID1 or close to PID1 if no peer exists in PID1. The SN1 finds a surrogate node for UE2 (by its location, PID2) called SN2, and obtains its relay table (Fig. 3). Based on the four defined principles for relay selection, the SN1 selects one or more relay candidates by ranking.

 

 

4.2 NAT Traversal Process
    When PON1 receives the INVITE request and finds UE1 or UE2 behind a NAT device, a relay is required for data packet transfer. A NAT relay request for UE1 in PID1 is routed to a PON that belongs to PID1 or is closest to PID1 (Fig. 5, PON1). The PON1 selects the closest neighbor node with a light load in the local network partition (the first row in its relay table). Here, the metric of distance is the most prefix match of IP addresses.

 

 

4.3 Environment and Implementation 
    The designed P2PSIP system has been implemented on Open SUSE 11.2 in C++ language . On the network side, an open source stack reSIProcate [19] was used. P2P stack is a self developed project based on IETF RELOAD [4]. Test SIP phones include the well-known Eyebeam SIP phone and SoftDA (ZTE testbed). Other devices, such as application server, NAT devices, and IMS system for inter-communication test, are all ZTE commercial products.


5 Conclusions
    We propose a novel P2PSIP system with intelligent routing function in the media plane. The system follows SIP functions and features of 3GPP IMS services. Basic VoIP services are supported; for example, an SIP session can be set up between traditional UEs. For UE behind NAT devices, a specified application server selects an appropriate relay for users. If the default network path gets congested, a relay service is provided as the subscribed service.


    A key advantage of P2P technique is that distributed process and storage eliminates the centralized point failure. However, during implementation of our P2PSIP system, we found that using DHTs affects performance in the more flexible routing path in the application layer. Furthermore, the decentralized architecture makes deployment of the traditional SIP/IMS services, such as multiple user identifiers (PUIs and PVIs) and forking service supporting, more complicated. Security in the overlay network and control of services are also major concerns. These issues are still to be investigated.


References
[1] “P2PSIP: Peer-to-Peer Session Initiation Protocol.” [Online]. Available: https://datatracker.ietf.org/wg/p2psip/
[2] S. A. Baset and H. Schulzrinne, “An analysis of the Skype peer-to-peer Internet telephony protocol,” Cornell University, Ithaca, NY, Rep. CUCS-039-04, 2004.
[3] SIP: Session Initiation Protocol, RFC3261, June 2002.
[4] C. Jennings, B. Lowekamp, E. Rescorla, S. Baset, and H. Schulzrinne, “Resource location and discovery (RELOAD) base protocol draft-ietf-p2psip-base-13,” IETF. [Online]. Available: https://datatracker.ietf.org/doc/draft-ietf-p2psip-base/
[5] C. Jennings, B. Lowekamp, E. Rescorla, S. Baset, and H. Schulzrinne, “A SIP usage for RELOAD draft-ietf-p2psip-sip-05,” IETF. [Online]. Available: http://tools.ietf.org/html/draft-ietf-p2psip-sip-05
[6] D. A. Bryan, B. Lowekamp, and C. Jennings, “SOSIMPLE: a serverless, standards-based, P2PSIP communication system,” in 1st Int.l Workshop, Adv. Architectures and Algorithms for Internet Delivery and Applic. (AAA-IDEA), Orlando, FL, June 2005, pp. 42--49.
[7] “SIPeerior Technologies P2PSIP Core and Endpoint Development Kits,” P2PSIP. org. [Online]. Available: http://www.p2psip.org/implementations.php
[8] Skype. [Online]. Available: http://www.skype.com
[9] Gizmo. [Online]. Available: http://gizmoproject.com
[10] M. Stiemerling and M. Brunner, “A peer-to-peer SIP system based on service aware transport overlays,” PIK, vol.?30, no.?4, pp. 213-218, 2007.
[11] B. Chinoy, “Dynamics of Internet Routing Information,” in Proc. SIGCOMM'93, New York, NY, 1993, pp.45-52.
[12] C. Labovitz, A. Ahuja, A. Bose, and F. Jahanian, “Delayed Internet routing convergence,” in Proc. SIGCOMM’00, New York, NY, 2000, pp. 175-187.
[13] S. Savage, A. Collins, E. Hoffman, J. Snell, and T. Anderson, “The end-to-end effects of internet path selection,” in Proc. SIGCOMM’99, New York, NY, 1999, pp. 289-299.
[14] D. Andersen, H. Balakrishnan, F. Kaashoek, and R. Morris, “Resilient overlay networks,” ACM SIGCOMM Comput. Commun. Rev., vol. 32, no. 1, p. 66, Jan. 2002, pp.xxx-xxx. 
[15] S. Savage, T. Anderson, A. Aggarwal, D. Becker, N. Cardwell, A. Collins, E. Hoffman, J. Snell, A. Vahdat, G. Voelker, and John Zahorjan, “Detour: informed Internet routing and transport,” IEEE Micro, vol. 19, no. 1, pp. 50-59, Jan./Feb. 1999.
[16] K. Gummadi, H. Madhyastha, S. Gribble, H. Levy, and D. Wetherall, “Improving the reliability of Internet paths with one-hop source routing,” In Proc. USENIXOSDI’04, Berkeley, CA, 2004, p.13.
[17] S. Ren, L. Guo, and X. Zhang, “ASAP: an AS-Aware Peer-Relay Protocol for High Quality VoIP,” in 26th IEEE Int. Conf. Dist. Comput. Syst.(ICDCS’06), Lisboa, Portugal, 2006, p. 70.
[18] R. Alimi, R. Penno, and Y. Yang , “ALTO protocol draft-ietf-alto-protocol-06.” [Online]. Available: http://tools.ietf.org/html/draft-ietf-alto-protocol-06
[19] reSIProcate. [Online]. Available: http://www.resiprocate.org/Resip_Overview

 


    The current developed P2PSIP system does not have all these functions. But we provide several useful mechanisms in our design. For example, by anchoring a user’s service on a specified PON, all services are processed at a fixed point. This allows convenient service control and management.

[Abstract] Decentralized peer-to-peer session initiation protocol (P2PSIP) provides the same services as legacy SIPs such as IMS. However, in relatively open network, the requirement for route efficiency in a complex environment brings about undefined problems. To deploy a controllable P2PSIP network, perfect mechanisms have to be appended, especially in QoS, security, and management. Several proposals for QoS, network address translation (NAT), and interworking have been put forward. In this paper, we propose an integrated architecture for a P2PSIP system as well as a proactive intelligent routing scheme on the media plane used in system. Implementation and simulation show that our solution is suitable for operation and management.

[Keywords] peer-to-peer; session initiation protocol; relay; intelligent routing