Network Working Group S.Coulombe, P.Pessi, INTERNET-DRAFT J.Costa-Requena Expires: April 2003 October 2002 Requirements for message adaptation in the context of SIP Instant Messaging and Presence applications draft-coulombe-message-adaptation-requirements-00 Status of this memo This document is an Internet-Draft and is subject to all provisions of Section 10 of RFC2026. 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/1id-abstracts.html The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html Abstract Some SIP instant messages (IM) and presence notifications may be too large for a receiving user agent or may contain media types or extensions not supported by the receiving User-Agents. This may create serious interoperability problems in the future. This document defines requirements for a SIP message adaptation framework providing means to express the User-Agent capabilities and User preferences to enable adaptation of SIP messages to meet the recipient's needs. Coulombe, Pessi, Costa-RequenaExpires: April 2003 [Page 1] INTERNET-DRAFTdraft-coulombe-message-adaptation-requirements-00 October 2002 Table of Contents 1. Terminology.....................................................2 2. Introduction....................................................2 3. Examples and Use cases..........................................3 3.1 Instant Messaging............................................3 3.2 Presence.....................................................4 4. Requirements....................................................5 5. References......................................................6 6. Author's Address................................................7 7. Expiration Date.................................................7 1. Terminology The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [1]. 2. Introduction In the SIP Extensions for Instant Messaging framework [2], a user composes a message (which may be composed of different media types) and sends it to a recipient or a group of recipients using the SIP MESSAGE method. This message is typically generated without considering the recipients' user agent or terminal capabilities. Although in some cases some information about the recipients' capabilities could be obtained by sending a SIP OPTIONS request to the recipients prior to composing the instant message, this would be cumbersome for the sender, especially if the number of recipients grows large or it contains some anonymous users, as it is case in the chat rooms today. Indeed, users usually want to create messages without having to care about the recipients' terminal capabilities. They expect nevertheless that their messages will reach their destinations and will be handled properly by the recipients' terminal. Also, recipients may do not want to disclose what kind of terminal they currently use, as it might reveal their identity or current whereabouts to the prospective senders. The users of adaptation service can use, for example, the caller preferences to indicate their preferences on message adaptation. The caller preferences can be used to indicate when an intermediate is required to adapt the message to be received, or if the sent message may be adapted. In presence services based on SIP Extensions for Presence [3], supported media types can be learned from the Accept header in the SIP SUBSCRIBE message. However this information may not be sufficient. For instance, the media type does not identify the extensions used in the presence document. As in the case of IM, Coulombe, Pessi, Costa-RequenaExpires: April 2003 [Page 2] INTERNET-DRAFTdraft-coulombe-message-adaptation-requirements-00 October 2002 information about the maximum message size which can be sent to the recipient or subscriber is missing from the SIP headers. This situation is typically not a problem for the short text messages mostly used today. But the situation may become problematic if the messages become larger and composed of rich media components (images, audiovisual clips, etc.). The emergence of mobile terminals will also make this requirement more challenging, due to the wide diversity of terminal characteristics: display size and resolution, available memory, formats supported, etc. As stated, the received message may be too large for the recipient's terminal memory [4]. The mobile terminal may also not support certain media types or may support them only under certain conditions (e.g. the resolution of a JPEG [5] image may need to be under a certain limit). To ensure interoperability and best user experience, it is proposed that the messages be adapted to the capabilities of the recipients' terminals. For that to be possible, we need to define a multimedia adaptation framework for SIP messages. Such a framework would enable either adaptation directly by sender, or in an intermediate SIP server or a SIP-server-controlled server (e.g., a transcoding device). The use of intermediaries, while making it harder to provide end-to-end security, enhances the sender's experience of the service because he doesn't have to worry about the recipients' terminal capabilities. It also enhances the recipient's experience because he can receive a message suited for the capabilities of his terminal, not a message downgraded to the level of lowest common denominator. 3. Examples and Use cases This section presents some examples and use cases for SIP message adaptation. They are provided to illustrate the benefits and should not limit the scope or applicability of such message adaptation mechanisms. 3.1 Instant Messaging A user composes a SIP instant message to a single user. He often doesn't have knowledge of the recipient's terminal capabilities and he doesn't want to care about them. He sends the message and often expects that it will reach the recipient and be handled properly by the recipient's terminal. Under such circumstance, it would useful if a SIP server (e.g. a proxy) could adapt the message to meet the recipient's terminal capabilities (or make request to another server to perform message adaptation). The message adaptation operations could include: 1. Content indirection: some parts of message content parts can be stored in an intermediate server while only a URI is forwarded Coulombe, Pessi, Costa-RequenaExpires: April 2003 [Page 3] INTERNET-DRAFTdraft-coulombe-message-adaptation-requirements-00 October 2002 to the recipient. This can help to reduce the overall message size. 2. Format conversion: conversion to a media content format supported by the terminal. For instance, GIF images [6] could be converted to JPEG if not supported by the recipient's terminal. This category includes conversion of layout formats (e.g. XHTML to WML) and conversion of modality (e.g. speech to text). 3. Media characteristics adaptation: This involves any modification of the media characteristics, including resolution reduction of images for small displays, reducing the quality of JPEG images or the number of colors in GIF images, changing the sampling rate or number or channels of audio files. 4. Presentation or layout adaptation: this involves making the content presentation suitable for the recipient's terminal display characteristics. Although the presentation is mostly a terminal implementation issue, some changes to the layout component of a message may be required when changes are made to media components (e.g. format conversion, resolution reduction of images). 5. Message size adaptation: reducing the overall message size by reducing the size of the media parts it contains, using content indirection [4] or removing some parts in the worst case. Media size reduction can be achieved through media characteristics or format conversion. For instance, JPEG images can be reduced in size by reducing their quality factor. This can often be done without significant reduction in the perceived quality. The conditions leading to media size reduction versus content indirection or deletion could be controlled by the recipient's preferences and capabilities. The mechanisms of [7] could be extended to serve that purpose. Note that when using SIP Instant Messaging, SDP cannot be used for media negotiation as it is done for media sessions. 3.2 Presence In the presence application, the presence server usually have knowledge of the subscriber's supported media types through the Accept header of the SIP SUBSCRIBE message. This would allow it to directly create basic notification messages that are suitable for the subscriber's terminal. However more precise information about the characteristics and extensions of the supported formats, such as the maximum supported size, may be required. An intermediary adaptation service may be used if, for instance, the presence server does not support advanced Coulombe, Pessi, Costa-RequenaExpires: April 2003 [Page 4] INTERNET-DRAFTdraft-coulombe-message-adaptation-requirements-00 October 2002 features found in subscriber's terminal, like delta notifications or notification filtering. Message adaptation operations similar to those described in the previous sub-section may be used. 4. Requirements REQ-1. An adaptation framework must be defined for SIP Instant Messaging and Presence applications. This framework SHOULD define the mechanisms required to support SIP message adaptation without specifying or mandating the exact transformations to be performed on the messages themselves. Such mechanisms include terminal capability / user preferences negotiation [7], adaptation / transcoding request protocol, etc. REQ-2. It MUST be possible to adapt (or generate in the case of Presence application) SIP messages automatically in a SIP server/proxy to meet the recipient's terminal capabilities. REQ-3. It SHOULD be possible to adapt (or generate in the case of Presence application) SIP messages automatically in a SIP server/proxy to meet the recipient's preferences. REQ-4. A terminal capability exchange mechanism to provide the SIP message adaptation server/proxy with the recipient's terminal capabilities MUST be supported. REQ-5. An exchange mechanism to provide the SIP message adaptation server/proxy with the recipient's preferences SHOULD be supported. REQ-6. It should be possible to store/cache the terminal capabilities and recipient's preferences in a SIP server/proxy to improve efficiency compared to a scenario of querying them for each new incoming message. REQ-7. It MUST be possible to provide to a SIP proxy/server the capabilities of the terminal associated with each contact address a user possesses. REQ-8. It MUST be possible for SIP proxy/server to request other servers to perform the adaptation of the message or of some parts of the message. This would relieve the SIP proxy/server of some heavy processing operations (e.g. video clip adaptation). A specific protocol between SIP proxy/server and adaptation (transcoding) entities MUST be used for that purpose. REQ-9. The SIP message adaptation server/proxy MUST ensure that the adapted message contents meets the message size limitations of the recipients. Coulombe, Pessi, Costa-RequenaExpires: April 2003 [Page 5] INTERNET-DRAFTdraft-coulombe-message-adaptation-requirements-00 October 2002 REQ-10. The SIP message adaptation server/proxy SHOULD be able to use content indirection mechanisms [4] to reduce the message size either based on recipient's preferences or if the message can't be reduced to meet the terminal capabilities without deleting or drastically reducing the component quality. If content indirection method is used, the server/proxy MUST provide in the adapted message a reference for each content part on which that method was applied and ensure they are accessible an appropriate length of time. REQ-11. The SIP message adaptation server/proxy or SIP server-proxy- controlled server SHOULD include in the adapted message some data to inform the recipient that the received message differs from the original one. REQ-12. The SIP message adaptation server/proxy or SIP server-proxy- controlled server MUST provide alternative access to the original message contents if the original message contents were secured using S/MIME or other security protocols. 5. References [1] S. Bradner, "Key words for use in RFCs to Indicate Requirement Levels," RFC 2119, March 1997. [2] J. Rosenberg et al., "SIP Extensions for Instant Messaging", draft-rosenberg-impp-im-01," (work in progress), February, 2001, http://www.ietf.org/html.charters/simple-charter.html. [3] J. Rosenberg et al., "SIP Extensions for Presence, draft- rosenberg-impp-presence-01.txt," (work in progress), March, 2001, http://www.ietf.org/html.charters/simple-charter.html. [4] S. Olson, "Requirements for Content Indirection in Session Initiation Protocol (SIP) Messages," Internet Draft draft-ietf- sipping-content-indirect-02, September 2002. [5] "Digital compression and coding of continuous-tone still images," ISO/IEC IS 10918-3, ITU-T Recommendation T.84, 1990 (JPEG specification). [6] "Graphics Interchange Format, version 89a," Programming Reference, CompuServe, Inc., 1990. URL: http://256.com/gray/docs/gifspecs. [7] H. Schulzrinne, J. Rosenberg, "Session Initiation Protocol (SIP) Caller Preferences and Callee Capabilities," Internet Draft draft-ietf-sip-callerprefs-06.txt, July 2002. Coulombe, Pessi, Costa-RequenaExpires: April 2003 [Page 6] INTERNET-DRAFTdraft-coulombe-message-adaptation-requirements-00 October 2002 6. Author's Address Stephane Coulombe Nokia Research Center 6000, Connection Drive, M2-700 Irving, Texas, 75063 USA E-mail: Stephane.Coulombe@nokia.com Pekka Pessi Nokia Research Center Itamerenkatu 11-13 00180 Helsinki Finland E-mail: Pekka.Pessi@nokia.com Jose Costa-Requena Nokia Mobile Phones Valimotie 9, 00380 Helsinki Finland E-mail: Jose.Costa-Requena@nokia.com 7. Expiration Date This memo is filed as and expires in April 2003. Coulombe, Pessi, Costa-RequenaExpires: April 2003 [Page 7]