< draft-saintandre-sip-xmpp-media-00.txt   draft-saintandre-sip-xmpp-media-01.txt >
Network Working Group P. Saint-Andre Network Working Group P. Saint-Andre
Internet-Draft XMPP Standards Foundation Internet-Draft Cisco
Intended status: Informational January 4, 2008 Intended status: Informational March 8, 2009
Expires: July 7, 2008 Expires: September 9, 2009
Interworking between the Session Initiation Protocol (SIP) and the Interworking between the Session Initiation Protocol (SIP) and the
Extensible Messaging and Presence Protocol (XMPP): Media Sessions Extensible Messaging and Presence Protocol (XMPP): Media Sessions
draft-saintandre-sip-xmpp-media-00 draft-saintandre-sip-xmpp-media-01
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any This Internet-Draft is submitted to IETF in full conformance with the
applicable patent or other IPR claims of which he or she is aware provisions of BCP 78 and BCP 79.
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 Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on July 7, 2008. This Internet-Draft will expire on September 9, 2009.
Copyright Notice Copyright Notice
Copyright (C) The IETF Trust (2008). Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents in effect on the date of
publication of this document (http://trustee.ietf.org/license-info).
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document.
Abstract Abstract
This document defines a bi-directional protocol mapping for use by This document defines a bi-directional protocol mapping for use by
gateways that enable the exchange of media signalling messages gateways that enable the exchange of media signalling messages
between systems that implement the Jingle extensions to the between systems that implement the Jingle extensions to the
Extensible Messaging and Presence Protocol (XMPP) and those that Extensible Messaging and Presence Protocol (XMPP) and those that
implement the Session Initiation Protocol (SIP). implement the Session Initiation Protocol (SIP).
Table of Contents Table of Contents
skipping to change at page 2, line 18 skipping to change at page 3, line 4
2. Jingle to SIP . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Jingle to SIP . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2. Syntax Mappings . . . . . . . . . . . . . . . . . . . . . 4 2.2. Syntax Mappings . . . . . . . . . . . . . . . . . . . . . 4
2.3. Sample Scenarios . . . . . . . . . . . . . . . . . . . . . 8 2.3. Sample Scenarios . . . . . . . . . . . . . . . . . . . . . 8
3. SIP to Jingle . . . . . . . . . . . . . . . . . . . . . . . . 14 3. SIP to Jingle . . . . . . . . . . . . . . . . . . . . . . . . 14
4. Security Considerations . . . . . . . . . . . . . . . . . . . 14 4. Security Considerations . . . . . . . . . . . . . . . . . . . 14
5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.1. Normative References . . . . . . . . . . . . . . . . . . . 15 5.1. Normative References . . . . . . . . . . . . . . . . . . . 15
5.2. Informative References . . . . . . . . . . . . . . . . . . 16 5.2. Informative References . . . . . . . . . . . . . . . . . . 16
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 16 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 16
Intellectual Property and Copyright Statements . . . . . . . . . . 17
1. Introduction 1. Introduction
The Session Initiation Protocol [SIP] is a widely-deployed technology The Session Initiation Protocol [SIP] is a widely-deployed technology
for the management of media sessions (such as voice calls) over the for the management of media sessions (such as voice calls) over the
Internet. SIP itself provides a signalling channel (typically via Internet. SIP itself provides a signalling channel (typically via
the User Datagram Protocol [UDP]), over which two or more parties can the User Datagram Protocol [UDP]), over which two or more parties can
exchange messages for the purpose of negotiating a media session that exchange messages for the purpose of negotiating a media session that
uses a dedicated media channel such as the Real-time Transport uses a dedicated media channel such as the Real-time Transport
Protocol [RTP]. Protocol [RTP].
skipping to change at page 5, line 6 skipping to change at page 5, line 6
2.2.1. Generic Jingle Syntax 2.2.1. Generic Jingle Syntax
Jingle is designed in a modular fashion, so that session description Jingle is designed in a modular fashion, so that session description
data is generally carried in a payload within the generic Jingle data is generally carried in a payload within the generic Jingle
elements, i.e., the <jingle/> element and its <content/> child. The elements, i.e., the <jingle/> element and its <content/> child. The
following example illustrates this structure, where the XMPP stanza following example illustrates this structure, where the XMPP stanza
is a request to initiate an audio session using RTP over a raw UDP is a request to initiate an audio session using RTP over a raw UDP
transport. transport.
<iq from='romeo@example.net/v3rsch1kk3l1jk' <iq from='romeo@example.net/v3rsch1kk3l1jk'
id='jingle1' id='ne91v36s'
to='juliet@example.com/t3hr0zny' to='juliet@example.com/t3hr0zny'
type='set'> type='set'>
<jingle xmlns='urn:xmpp:jingle' <jingle xmlns='urn:xmpp:jingle:1'
action='session-initiate' action='session-initiate'
initiator='romeo@example.net/v3rsch1kk3l1jk' initiator='romeo@example.net/v3rsch1kk3l1jk'
responder='juliet@example.com/t3hr0zny'
sid='a73sjjvkla37jfea'> sid='a73sjjvkla37jfea'>
<content creator='initiator' <content creator='initiator'
media='audio'
name='this-is-the-audio-content' name='this-is-the-audio-content'
profile='RTP/AVP'
senders='both'> senders='both'>
<description xmlns='urn:xmpp:jingle:app:audio-rtp'> <description xmlns='urn:xmpp:jingle:app:rtp:1'>
<payload-type id='96' name='speex' clockrate='16000'/> <payload-type id='96' name='speex' clockrate='16000'/>
<payload-type id='97' name='speex' clockrate='8000'/> <payload-type id='97' name='speex' clockrate='8000'/>
<payload-type id='18' name='G729'/> <payload-type id='18' name='G729'/>
<payload-type channels='2' <payload-type channels='2'
clockrate='16000' clockrate='16000'
id='103' id='103'
name='L16'/> name='L16'/>
<payload-type id='98' name='x-ISAC' clockrate='8000'/> <payload-type id='98' name='x-ISAC' clockrate='8000'/>
</description> </description>
<transport xmlns='urn:xmpp:jingle:transport:raw-udp'> <transport xmlns='urn:xmpp:jingle:transport:raw-udp'>
<candidate ip='10.1.1.104' port='13540' generation='0'/> <candidate ip='10.1.1.104' port='13540' generation='0'/>
</transport> </transport>
</content> </content>
</jingle> </jingle>
</iq> </iq>
In the foregoing example, the syntax and semantics of the <jingle/> In the foregoing example, the syntax and semantics of the <jingle/>
and <content/> elements are defined in [JINGLE], the syntax and and <content/> elements are defined in [JINGLE], the syntax and
semantics of the <description/> element are defined in semantics of the <description/> element are defined in [JINGLE-RTP],
[JINGLE-AUDIO], and the syntax and semantics of the <transport/> and the syntax and semantics of the <transport/> element are defined
element are defined in [JINGLE-UDP]. Other <description/> elements in [JINGLE-UDP]. Other <description/> elements are defined in
are defined in specifications for the appropriate application types specifications for the appropriate application types (see for example
(see for example [JINGLE-VIDEO]) and other <transport/> elements are [JINGLE-RTP]) and other <transport/> elements are defined in the
defined in the specifications for appropriate transport methods (see specifications for appropriate transport methods (see for example
for example [JINGLE-ICE], which defines an XMPP profile of [ICE]). [JINGLE-ICE], which defines an XMPP profile of [ICE]).
At the core Jingle layer, the following mappings are defined. At the core Jingle layer, the following mappings are defined.
+--------------------------------+--------------------------------+ +--------------------------------+--------------------------------+
| Jingle | SIP | | Jingle | SIP |
+--------------------------------+--------------------------------+ +--------------------------------+--------------------------------+
| <jingle/> 'action' | [ see next table ] | | <jingle/> 'action' | [ see next table ] |
+--------------------------------+--------------------------------+ +--------------------------------+--------------------------------+
| <jingle/> 'initiator' | [ no mapping ] | | <jingle/> 'initiator' | [ no mapping ] |
+--------------------------------+--------------------------------+ +--------------------------------+--------------------------------+
skipping to change at page 7, line 32 skipping to change at page 7, line 32
| session-initiate | INVITE request | | session-initiate | INVITE request |
+-------------------+-----------------+ +-------------------+-----------------+
| session-terminate | BYE | | session-terminate | BYE |
+-------------------+-----------------+ +-------------------+-----------------+
| transport-info | [varies] | | transport-info | [varies] |
+-------------------+-----------------+ +-------------------+-----------------+
2.2.2. Audio Application Format 2.2.2. Audio Application Format
A Jingle application format for audio exchange via RTP is specified A Jingle application format for audio exchange via RTP is specified
in [JINGLE-AUDIO]. This application format effectively maps to the in [JINGLE-RTP]. This application format effectively maps to the
"RTP/AVP" profile specified in [RTP-AVP], where the media type is "RTP/AVP" profile specified in [RTP-AVP], where the media type is
"audio" and the specific mappings to SDP syntax are provided in "audio" and the specific mappings to SDP syntax are provided in
[JINGLE-AUDIO]. [JINGLE-RTP].
2.2.3. Video Application Format 2.2.3. Video Application Format
A Jingle application format for video exchange via RTP is specified A Jingle application format for video exchange via RTP is specified
in [JINGLE-VIDEO]. This application format effectively maps to the in [JINGLE-RTP]. This application format effectively maps to the
"RTP/AVP" profile specified in [RTP-AVP], where the media type is "RTP/AVP" profile specified in [RTP-AVP], where the media type is
"audio" and the specific mappings to SDP syntax are provided in "audio" and the specific mappings to SDP syntax are provided in
[JINGLE-VIDEO]. [JINGLE-RTP].
2.2.4. Raw UDP Transport Method 2.2.4. Raw UDP Transport Method
A basic Jingle transport method for exchanging media over UDP is A basic Jingle transport method for exchanging media over UDP is
specified in [JINGLE-UDP]. This transport method involves the specified in [JINGLE-UDP]. This transport method involves the
negotiation of an IP address and port only, and does not provide NAT negotiation of an IP address and port only, and does not provide NAT
traversal. The Jingle 'ip' attribute maps to the connection-address traversal. The Jingle 'ip' attribute maps to the connection-address
parameter of the SDP c= line and the 'port' attribute maps to the parameter of the SDP c= line and the 'port' attribute maps to the
port parameter of the SDP m= line. port parameter of the SDP m= line.
skipping to change at page 10, line 6 skipping to change at page 10, line 6
| | 200 OK | | | 200 OK |
| |---------------------->| | |---------------------->|
| | | | | |
The packet flow is as follows. The packet flow is as follows.
First the XMPP user sends a Jingle session-initiation request to the First the XMPP user sends a Jingle session-initiation request to the
SIP user. SIP user.
<iq from='juliet@example.com/t3hr0zny' <iq from='juliet@example.com/t3hr0zny'
id='jingle1' id='hu2s61f4'
from='romeo@example.net/v3rsch1kk3l1jk' from='romeo@example.net/v3rsch1kk3l1jk'
type='set'> type='set'>
<jingle xmlns='urn:xmpp:jingle' <jingle xmlns='urn:xmpp:jingle:1'
action='session-initiate' action='session-initiate'
initiator='juliet@example.com/t3hr0zny' initiator='juliet@example.com/t3hr0zny'
sid='a73sjjvkla37jfea'> sid='a73sjjvkla37jfea'>
<content creator='initiator' <content creator='initiator'
name='this-is-the-audio-content' media='audio'
profile='RTP/AVP'> name='this-is-the-audio-content'>
<description xmlns='urn:xmpp:jingle:app:audio-rtp'> <description xmlns='urn:xmpp:jingle:app:rtp:1'>
<payload-type id='96' name='speex' clockrate='16000'/> <payload-type id='96' name='speex' clockrate='16000'/>
<payload-type id='97' name='speex' clockrate='8000'/> <payload-type id='97' name='speex' clockrate='8000'/>
<payload-type id='18' name='G729'/> <payload-type id='18' name='G729'/>
</description> </description>
<transport xmlns='urn:xmpp:jingle:transport:raw-udp'> <transport xmlns='urn:xmpp:jingle:transport:raw-udp'>
<candidate ip='192.0.2.101' port='49172' generation='0'/> <candidate ip='192.0.2.101' port='49172' generation='0'/>
</transport> </transport>
</content> </content>
</jingle> </jingle>
</iq> </iq>
The gateway returns an XMPP IQ-result to the initiator on behalf of The gateway returns an XMPP IQ-result to the initiator on behalf of
the responder. the responder.
<iq from='juliet@example.com/t3hr0zny' <iq from='juliet@example.com/t3hr0zny'
id='accept1' id='hu2s61f4'
to='romeo@example.net/v3rsch1kk3l1jk' to='romeo@example.net/v3rsch1kk3l1jk'
type='result'/> type='result'/>
The gateway transforms the Jingle session-initiate action into a SIP The gateway transforms the Jingle session-initiate action into a SIP
INVITE. INVITE.
INVITE sip:romeo@example.net SIP/2.0 INVITE sip:romeo@example.net SIP/2.0
Via: SIP/2.0/TCP client.example.com:5060;branch=z9hG4bK74bf9 Via: SIP/2.0/TCP client.example.com:5060;branch=z9hG4bK74bf9
Max-Forwards: 70 Max-Forwards: 70
From: Juliet Capulet <sip:juliet@example.com>;tag=t3hr0zny From: Juliet Capulet <sip:juliet@example.com>;tag=t3hr0zny
skipping to change at page 11, line 41 skipping to change at page 11, line 41
From: Juliet Capulet <sip:juliet@example.com>;tag=t3hr0zny From: Juliet Capulet <sip:juliet@example.com>;tag=t3hr0zny
To: Romeo Montague <sip:romeo@example.net>;tag=v3rsch1kk3l1jk To: Romeo Montague <sip:romeo@example.net>;tag=v3rsch1kk3l1jk
Call-ID: 3848276298220188511@example.com Call-ID: 3848276298220188511@example.com
CSeq: 1 INVITE CSeq: 1 INVITE
Contact: <sip:romeo@client.example.net;transport=tcp> Contact: <sip:romeo@client.example.net;transport=tcp>
Content-Length: 0 Content-Length: 0
The gateway transforms the ringing message into XMPP syntax. The gateway transforms the ringing message into XMPP syntax.
<iq from='romeo@montague.net/v3rsch1kk3l1jk' <iq from='romeo@montague.net/v3rsch1kk3l1jk'
id='ringing1' id='ol3ba71g'
to='juliet@example.com/t3hr0zny' to='juliet@example.com/t3hr0zny'
type='set'> type='set'>
<jingle xmlns='urn:xmpp:jingle' <jingle xmlns='urn:xmpp:jingle:1'
action='session-info' action='session-info'
initiator='juliet@example.com/t3hr0zny' initiator='juliet@example.com/t3hr0zny'
sid='a73sjjvkla37jfea'> sid='a73sjjvkla37jfea'>
<ringing xmlns='urn:xmpp:jingle:app:audio-rtp-info'/> <ringing xmlns='urn:xmpp:jingle:app:rtp:1-info'/>
</jingle> </jingle>
</iq> </iq>
The initiator returns an IQ-result acknowledging receipt of the The initiator returns an IQ-result acknowledging receipt of the
ringing message, which is used only by the gateway and not ringing message, which is used only by the gateway and not
transformed into SIP syntax. transformed into SIP syntax.
<iq from='juliet@example.com/t3hr0zny' <iq from='juliet@example.com/t3hr0zny'
id='ringing1' id='ol3ba71g'
to='romeo@example.net/v3rsch1kk3l1jk' to='romeo@example.net/v3rsch1kk3l1jk'
type='result'/> type='result'/>
The responder sends a SIP 200 OK to the initiator. The responder sends a SIP 200 OK to the initiator.
SIP/2.0 200 OK SIP/2.0 200 OK
Via: SIP/2.0/TCP client.example.com:5060;branch=z9hG4bK74bf9 Via: SIP/2.0/TCP client.example.com:5060;branch=z9hG4bK74bf9
;received=192.0.2.101 ;received=192.0.2.101
From: Juliet Capulet <sip:juliet@example.com>;tag=t3hr0zny From: Juliet Capulet <sip:juliet@example.com>;tag=t3hr0zny
To: Romeo Montague <sip:romeo@example.net>;tag=v3rsch1kk3l1jk To: Romeo Montague <sip:romeo@example.net>;tag=v3rsch1kk3l1jk
skipping to change at page 13, line 6 skipping to change at page 13, line 6
c=IN IP4 192.0.2.201 c=IN IP4 192.0.2.201
t=0 0 t=0 0
m=audio 3456 RTP/AVP 0 m=audio 3456 RTP/AVP 0
a=rtpmap:97 SPEEX/8000 a=rtpmap:97 SPEEX/8000
a=rtpmap:18 G729/8000 a=rtpmap:18 G729/8000
The gateway transforms the 200 OK into a Jingle session-accept The gateway transforms the 200 OK into a Jingle session-accept
action. action.
<iq from='romeo@example.net/v3rsch1kk3l1jk' <iq from='romeo@example.net/v3rsch1kk3l1jk'
id='accept1' id='pd1bf839'
to='juliet@example.com/t3hr0zny' to='juliet@example.com/t3hr0zny'
type='set'> type='set'>
<jingle xmlns='urn:xmpp:jingle' <jingle xmlns='urn:xmpp:jingle:1'
action='session-accept' action='session-accept'
initiator='juliet@example.com/t3hr0zny' initiator='juliet@example.com/t3hr0zny'
responder='romeo@example.net/v3rsch1kk3l1jk' responder='romeo@example.net/v3rsch1kk3l1jk'
sid='a73sjjvkla37jfea'> sid='a73sjjvkla37jfea'>
<content creator='initiator' <content creator='initiator'
name='this-is-the-audio-content' media='audio'
profile='RTP/AVP'> name='this-is-the-audio-content'>
<description xmlns='urn:xmpp:jingle:app:audio-rtp'> <description xmlns='urn:xmpp:jingle:app:rtp:1'>
<payload-type id='97' name='speex' clockrate='8000'/> <payload-type id='97' name='speex' clockrate='8000'/>
<payload-type id='18' name='G729'/> <payload-type id='18' name='G729'/>
<payload-type id='0' name='PCMU' clockrate='8000'/> <payload-type id='0' name='PCMU' clockrate='8000'/>
</description> </description>
<transport xmlns='urn:xmpp:jingle:transport:raw-udp'> <transport xmlns='urn:xmpp:jingle:transport:raw-udp'>
<candidate ip='192.0.2.101' port='49172' generation='0'/> <candidate ip='192.0.2.101' port='49172' generation='0'/>
</transport> </transport>
</content> </content>
</jingle> </jingle>
</iq> </iq>
If the payload types and transport candidate can be successfully used If the payload types and transport candidate can be successfully used
by both parties, then the initiator acknowledges the session-accept by both parties, then the initiator acknowledges the session-accept
action. action.
<iq from='romeo@example.net/v3rsch1kk3l1jk' <iq from='romeo@example.net/v3rsch1kk3l1jk'
id='accept1' id='pd1bf839'
to='juliet@example.com/t3hr0zny' to='juliet@example.com/t3hr0zny'
type='result'/> type='result'/>
The parties now begin to exchange media. In this case they would The parties now begin to exchange media. In this case they would
exchange audio using the Speex codec at a clockrate of 8000 since exchange audio using the Speex codec at a clockrate of 8000 since
that is the highest-priority codec for the responder (as determined that is the highest-priority codec for the responder (as determined
by the XML order of the <payloadtype/> children). by the XML order of the <payloadtype/> children).
The parties may continue the session as long as desired. The parties may continue the session as long as desired.
skipping to change at page 14, line 17 skipping to change at page 14, line 17
Max-Forwards: 70 Max-Forwards: 70
From: Romeo Montague <sip:romeo@example.net>;tag=8321234356 From: Romeo Montague <sip:romeo@example.net>;tag=8321234356
To: Juliet Capulet <sip:juliet@example.com>;tag=9fxced76sl To: Juliet Capulet <sip:juliet@example.com>;tag=9fxced76sl
Call-ID: 3848276298220188511@example.com Call-ID: 3848276298220188511@example.com
CSeq: 1 BYE CSeq: 1 BYE
Content-Length: 0 Content-Length: 0
The gateway transforms the SIP BYE into XMPP syntax. The gateway transforms the SIP BYE into XMPP syntax.
<iq from='romeo@example.net/v3rsch1kk3l1jk' <iq from='romeo@example.net/v3rsch1kk3l1jk'
id='term1' id='rv301b47'
to='juliet@example.com/t3hr0zny' to='juliet@example.com/t3hr0zny'
type='set'> type='set'>
<jingle xmlns='urn:xmpp:jingle' <jingle xmlns='urn:xmpp:jingle:1'
action='session-terminate' action='session-terminate'
initiator='juliet@example.com/t3hr0zny' initiator='juliet@example.com/t3hr0zny'
reasoncode='no-error' reasoncode='no-error'
sid='a73sjjvkla37jfea'/> sid='a73sjjvkla37jfea'/>
</iq> </iq>
The initiator returns an IQ-result acknowledging receipt of the The initiator returns an IQ-result acknowledging receipt of the
session termination, which is used only by the gateway and not session termination, which is used only by the gateway and not
transformed into SIP syntax. transformed into SIP syntax.
<iq from='romeo@example.net/v3rsch1kk3l1jk' <iq from='romeo@example.net/v3rsch1kk3l1jk'
id='term1' id='rv301b47'
to='juliet@example.com/t3hr0zny' to='juliet@example.com/t3hr0zny'
type='result'/> type='result'/>
3. SIP to Jingle 3. SIP to Jingle
To follow. To follow.
4. Security Considerations 4. Security Considerations
Detailed security considerations for session management are given for Detailed security considerations for session management are given for
skipping to change at page 15, line 14 skipping to change at page 15, line 14
5.1. Normative References 5.1. Normative References
[ICE] Rosenberg, J., "Interactive Connectivity Establishment [ICE] Rosenberg, J., "Interactive Connectivity Establishment
(ICE): A Protocol for Network Address Translator (NAT) (ICE): A Protocol for Network Address Translator (NAT)
Traversal for Offer/Answer Protocols", Traversal for Offer/Answer Protocols",
draft-ietf-mmusic-ice-19 (work in progress), October 2007. draft-ietf-mmusic-ice-19 (work in progress), October 2007.
[JINGLE] Ludwig, S., Beda, J., Saint-Andre, P., McQueen, R., Egan, [JINGLE] Ludwig, S., Beda, J., Saint-Andre, P., McQueen, R., Egan,
S., and J. Hildebrand, "Jingle", XSF XEP 0166, June 2007. S., and J. Hildebrand, "Jingle", XSF XEP 0166, June 2007.
[JINGLE-AUDIO] [JINGLE-RTP]
Ludwig, S., Saint-Andre, P., Egan, S., and R. McQueen, Ludwig, S., Saint-Andre, P., Egan, S., and R. McQueen,
"Jingle Audio via RTP", XSF XEP 0167, November 2007. "Jingle RTP Sessions", XSF XEP 0167, February 2009.
[JINGLE-ICE] [JINGLE-ICE]
Beda, J., Ludwig, S., Saint-Andre, P., Hildebrand, J., and Beda, J., Ludwig, S., Saint-Andre, P., Hildebrand, J., and
S. Egan, "Jingle ICE-UDP Transport Method", XSF XEP 0176, S. Egan, "Jingle ICE-UDP Transport Method", XSF XEP 0176,
November 2007. February 2009.
[JINGLE-UDP] [JINGLE-UDP]
Beda, J., Saint-Andre, P., Ludwig, S., Hildebrand, J., and Beda, J., Saint-Andre, P., Ludwig, S., Hildebrand, J., and
S. Egan, "Jingle Raw UDP Transport", XSF XEP 0177, S. Egan, "Jingle Raw UDP Transport", XSF XEP 0177,
November 2007. February 2009.
[JINGLE-VIDEO]
Saint-Andre, P. and M. Chen, "Jingle Video via RTP", XSF
XEP 0180, November 2007.
[RTP-AVP] Schulzrinne, H. and S. Casner, "RTP Profile for Audio and [RTP-AVP] Schulzrinne, H. and S. Casner, "RTP Profile for Audio and
Video Conferences with Minimal Control", STD 65, RFC 3551, Video Conferences with Minimal Control", STD 65, RFC 3551,
July 2003. July 2003.
[SDP] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session [SDP] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
Description Protocol", RFC 4566, July 2006. Description Protocol", RFC 4566, July 2006.
[SIP] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, [SIP] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston,
A., Peterson, J., Sparks, R., Handley, M., and E. A., Peterson, J., Sparks, R., Handley, M., and E.
Schooler, "SIP: Session Initiation Protocol", RFC 3261, Schooler, "SIP: Session Initiation Protocol", RFC 3261,
June 2002. June 2002.
[SIP-XMPP] [SIP-XMPP]
Saint-Andre, P., Houri, A., and J. Hildebrand, Saint-Andre, P., Houri, A., and J. Hildebrand,
"Interworking between the Session Initiation Protocol "Interworking between the Session Initiation Protocol
(SIP) and the Extensible Messaging and Presence Protocol (SIP) and the Extensible Messaging and Presence Protocol
(XMPP): Core", draft-saintandre-sip-xmpp-core-00 (work in (XMPP): Core", draft-saintandre-sip-xmpp-core-01 (work in
progress), January 2008. progress), March 2009.
[TERMS] Bradner, S., "Key words for use in RFCs to Indicate [TERMS] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[XMPP] Saint-Andre, P., "Extensible Messaging and Presence [XMPP] Saint-Andre, P., "Extensible Messaging and Presence
Protocol (XMPP): Core", RFC 3920, October 2004. Protocol (XMPP): Core", RFC 3920, October 2004.
5.2. Informative References 5.2. Informative References
[HTTP] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., [HTTP] Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
skipping to change at page 16, line 28 skipping to change at page 16, line 24
[TCP] Postel, J., "Transmission Control Protocol", STD 7, [TCP] Postel, J., "Transmission Control Protocol", STD 7,
RFC 793, September 1981. RFC 793, September 1981.
[UDP] Postel, J., "User Datagram Protocol", STD 6, RFC 768, [UDP] Postel, J., "User Datagram Protocol", STD 6, RFC 768,
August 1980. August 1980.
Author's Address Author's Address
Peter Saint-Andre Peter Saint-Andre
XMPP Standards Foundation Cisco
P.O. Box 1641
Denver, CO 80201
USA
Email: stpeter@jabber.org
URI: https://stpeter.im/
Full Copyright Statement
Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Intellectual Property
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Acknowledgment
Funding for the RFC Editor function is provided by the IETF Email: psaintan@cisco.com
Administrative Support Activity (IASA).
 End of changes. 39 change blocks. 
105 lines changed or deleted 56 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/