Peer-to-peer SIP (P2P-SIP) is an implementation of a distributed voice over Internet Protocol (VoIP) or instant messaging communications application using a peer-to-peer (P2P) architecture in which session control between communication end points is facilitated with the Session Initiation Protocol (SIP).
SIP in a P2P architecture
In a pure peer-to-peer application architecture no central servers are required, whereas traditional SIP telephony networks have relied on using centrally deployed and managed SIP servers, in analogy to the centralized switching architecture of the public switched telephone network (PSTN). P2P application design can improve scalability and survivability in the event of central network outages.
The Session Initiation Protocol is in principle a client-server protocol, however it has been described in analogy to the P2P relationship, called a dialog, which is defined by a unique combination of SIP protocol parameters (To-tag, From-tag, Call-ID). Both endpoints of a communication session implement a user-agent server and a user-agent client, which enables any two user agents to communicate directly with one another without the mediation of another a central switching system. SIP also provides facilities of registering (REGISTER request) the network location of a user agent with other SIP elements and subscription (SUBSCRIBE request) and notification (NOTIFY request) features for event tracking between user agents.
Based on these inherent SIP features it is possible to construct a peer-to-peer network of SIP nodes.
In another approach, SIP over P2P, the SIP location service is replaced by conventional P2P overlay networking approach, such as the OverSim framework. In this model, the overlay network is used for service or node discovery and rendezvous. The search key in such a mechanism is the Uniform Resource Identifier (URI) of a user agent. This URI requires resolution to a particular device or Uniform Resource Locator (URL) that must be performed in real time. P2P-SIP systems may employ structured peer-to-peer approaches, as well as unstructured peer-to-peer architectures.
The Internet Engineering Task Force (IETF) is conducting a working group (P2PSIP) that develops standards-track specifications for P2P-SIP. This effort is based on using the REsource LOcation And Discovery (RELOAD) Base Protocol a peer-to-peer (P2P) signaling protocol for use on the Internet. The P2P signaling protocol provides the network nodes that form an overlay network with abstract storage, messaging, and security services.
- Rüdiger Schollmeier, A Definition of Peer-to-Peer Networking for the Classification of Peer-to-Peer Architectures and Applications, Proceedings of the First International Conference on Peer-to-Peer Computing, IEEE (2002).
- D.A. Bryan, B.B. Lowekamp, C. Jennings (15 June 2005). SOSIMPLE: A Serverless, Standards-based, P2P SIP Communication System. Orlando, FL: IEEE. pp. 42–49. ISBN 0-7695-2525-3.
- RFC 3261, SIP: Session Initiation Protocol, J. Rosenberg, H. Schulzrinne, G. Camarillo, A. Johnston, J. Peterson, R. Sparks, M. Handley, E. Schooler, The Internet Society (June 2002)
- Rüdiger Schollmeier, Gero Schollmeier (September 5–7, 2002), Why Peer-to-Peer (P2P) Does Scale: An Analysis of P2P Traffic Patterns, Proceedings of the IEEE 2002 International Conference on Peer-to-Peer Computing (P2P2002), Linköping, Sweden
- Ingmar Baumgart, Bernhard Heep, Stephan Krause (May 2007). "OverSim: A Flexible Overlay Network Simulation Framework". Proceedings of 10th IEEE Global Internet Symposium (GI '07) in conjunction with IEEE INFOCOM 2007, Anchorage, AK, USA.
- Wolfgang Kellerer, Gerald Kunzmann, Rüdiger Schollmeier, Stefan Zöls (2007), Structured peer-to-peer systems for telecommunications and mobile environments, Elsevier, doi:10.1016/j.aeue.2005.10.005
- Chien-Ming Cheng, Shiao-Li Tsao, Jin-Chang Chou (7 September 2007), Unstructured Peer-to-Peer Session Initiation Protocol for Mobile Environment 3, IEEE 18th International Symposium on Personal, Indoor and Mobile Radio Communications, 2007 (PIMRC 2007)., p. 1–5
- C. Jennings, B. Lowekamp, E. Rescorla, S. Baset, H. Schulzrinne, T. C. Schmidt (Ed.) (July 2013). "A SIP Usage for RELOAD". IETF Trust.
- C. Jennings, B. Lowekamp (Ed.), E. Rescorla, S. Baset, H. Schulzrinne (7 March 2009). "REsource LOcation And Discovery (RELOAD) Base Protocol". IETF Trust.
- A. Knauf, T. C. Schmidt (Ed.), G. Hege, M. Waehlisch (August 2013). "A Usage for Shared Resources in RELOAD (ShaRe)". IETF Trust.
- A. Knauf, T. C. Schmidt (Ed.), G. Hege, M. Waehlisch (August 2013). "A RELOAD Usage for Distributed Conference Control (DisCo)". IETF Trust.
- The OverSim home page
- P2PSIP demonstrator based on P2PNS
- Ingmar Baumgart, Bernhard Heep, Stephan Krause (September 2007). "A P2PSIP Demonstrator Powered by OverSim". Proceedings of 7th IEEE International Conference on Peer-to-Peer Computing (P2P2007), Galway, Ireland.
- K. Singh, H. Schulzrinne (2004). "Peer-to-Peer Internet Telephony using SIP". New York, NY: Columbia University.
- A code library for P2P over SIP: Sip2Peer project.