TOC 
SIPJ. Rosenberg
Internet-DraftCisco
Intended status: InformationalFebruary 16, 2008
Expires: August 19, 2008 


Litmus Tests for Usage of the Session Initiation Protocol (SIP) INFO Method
draft-rosenberg-sip-info-litmus-00

Status of this Memo

By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as “work in progress.”

The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt.

The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html.

This Internet-Draft will expire on August 19, 2008.

Abstract

The Session Initiation Protocol (SIP) Working Group is considering the standardization of a framework for conveying application data through the INFO method. However, the INFO method is just one of several techniques available in SIP for the transfer of application data. Others include through the SIP events framework and through a media session. This document provides guidelines and litmus tests for determining which is the right technique to use.



Table of Contents

1.  Introduction
2.  Applicability of a Media Plane Solution
3.  Applicability of the SIP Events Framework
4.  Applicability of the SIP INFO Framework
5.  Discussion
6.  Security Considerations
7.  IANA Considerations
8.  Informative References
§  Author's Address
§  Intellectual Property and Copyright Statements




 TOC 

1.  Introduction

The Session Initiation Protocol (SIP) [RFC3261] (Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M., and E. Schooler, “SIP: Session Initiation Protocol,” June 2002.) allows for the establishment, management, and termination of interactive sessions between user agents. These sessions are often used for the exchange of real time media, such as voice, video or text, using protocols such as the Real Time Transport Protocol (RTP).

Oftentimes, there is a need for agents to exchange non-real time application data as part of a communications session. Examples of such data include:

Camera Controls:
Video conferencing systems often allow a participant in the session to control the camera on the far end of the call. This allows them to pan, tilt and zoom in order to see the person or people they are talking to.
Pictures:
During a voice call, a user can snap a picture and send it to the other participant in the call. This requires a mechanism to transfer the picture from one end to the other.
Game Moves:
Users engaging in a real time game may need to exchange game moves in addition to having a voice/video chat in concert with the game.

SIP provides three general purpose mechanisms that allow a pair of agents to communicate data during a session. These are:

SIP Events Framework:
One user agent can send a SUBCRIBE request to the other, using an event package specific to the application data that is desired. This subscription is ideally done as part of a separate dialog. This technique is recommended for application interaction, and is described in [I‑D.ietf‑sipping‑app‑interaction‑framework] (Rosenberg, J., “A Framework for Application Interaction in the Session Initiation Protocol (SIP),” July 2005.).
Media:
A user agent can use SIP to set up another media session whose purpose is to carry the application specific data. This can be done using the TOTE protocol proposed in [I‑D.rosenberg‑sip‑tote] (Rosenberg, J., “Session Based Trivial Object Transfer and Exchange (TOTE),” November 2008.).
INFO Framework:
A user agent can send the data in a SIP INFO message along the existing SIP dialog. This technique is described in [I‑D.kaplan‑sip‑info‑events] (Kaplan, H. and C. Holmberg, “The SIP INFO Method and Info Package Framework,” February 2008.).

Each of these mechanisms are different in important ways. The events framework and the INFO framework utilize the signaling plane, while TOTE utilizes the media plane. The INFO framework always follows the path of an INVITE dialog, while the events framework allows arbitrary connections and can be independent of any dialog. These differences result in differing scopes of applicability. As a consequence, there cannot be just ONE solution for application signaling. All three are needed and serve different purposes.

[I‑D.kaplan‑sip‑info‑use‑cases] (Kaplan, H., “SIP INFO Use Cases,” February 2008.) defines different use cases for application transfer in SIP, and suggests whether INFO or other mechanisms are appropriate. However, it doesn't propose any specific metrics which could be used to evaluate the options. This draft proposes metrics which can be considered in deciding which of the three techniques to apply.



 TOC 

2.  Applicability of a Media Plane Solution

The following litmus tests can be employed to help determine if an application should be based on a media plane solution:



 TOC 

3.  Applicability of the SIP Events Framework

The SIP events framework is the ideal choice when:



 TOC 

4.  Applicability of the SIP INFO Framework

The INFO framework is a good solution when:



 TOC 

5.  Discussion

The litmus tests do not provide a black and white answer to the question of which mechanism to use. There is overlap between them, and certain applications could arguably use multiple techniques. The media-plane solution is the most inclusive, in that it could arguably be used for any application. Though optimized for large and frequently sent data, it can handle small and infrequent data too. Though optimized for end-to-end communications it can be seen by intermediaries too. Though optimized for usage during media sessions, one could set up a session just for application data. Indeed, one could go as far as to argue that the media plane solution could replace the SIP events framework and the INFO framework entirely. Perhaps, had SIP been earlier in its evolutionary cycle, this might make sense. However, the event framework in particular is in wide usage and mature, and signaling-based channels remain the most reliable and frequently used. Consequently, this document recommends a pragmatic approach whereby all the mechanisms co-exist, and IETF chooses the ideal one for each task.



 TOC 

6.  Security Considerations

There are no security considerations associated with this specification.



 TOC 

7.  IANA Considerations

None.



 TOC 

8. Informative References

[RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M., and E. Schooler, “SIP: Session Initiation Protocol,” RFC 3261, June 2002 (TXT).
[I-D.ietf-sipping-app-interaction-framework] Rosenberg, J., “A Framework for Application Interaction in the Session Initiation Protocol (SIP),” draft-ietf-sipping-app-interaction-framework-05 (work in progress), July 2005 (TXT).
[I-D.rosenberg-sip-tote] Rosenberg, J., “Session Based Trivial Object Transfer and Exchange (TOTE),” draft-rosenberg-sip-tote-02 (work in progress), November 2008 (TXT).
[I-D.kaplan-sip-info-events] Kaplan, H. and C. Holmberg, “The SIP INFO Method and Info Package Framework,” draft-kaplan-sip-info-events-01 (work in progress), February 2008 (TXT).
[I-D.kaplan-sip-info-use-cases] Kaplan, H., “SIP INFO Use Cases,” draft-kaplan-sip-info-use-cases-01 (work in progress), February 2008 (TXT).
[RFC3856] Rosenberg, J., “A Presence Event Package for the Session Initiation Protocol (SIP),” RFC 3856, August 2004 (TXT).
[RFC3680] Rosenberg, J., “A Session Initiation Protocol (SIP) Event Package for Registrations,” RFC 3680, March 2004 (TXT).


 TOC 

Author's Address

  Jonathan Rosenberg
  Cisco
  Edison, NJ
  US
Phone:  +1 973 952-5000
Email:  jdrosen@cisco.com
URI:  http://www.jdrosen.net


 TOC 

Full Copyright Statement

Intellectual Property