draft-ietf-sipping-early-disposition-03.txt | rfc3959.txt | |||
---|---|---|---|---|
SIPPING Working Group G. Camarillo | Network Working Group G. Camarillo | |||
Internet-Draft Ericsson | Request for Comments: 3959 Ericsson | |||
Expires: December 15, 2004 June 16, 2004 | Category: Standards Track December 2004 | |||
The Early Session Disposition Type for the Session Initiation | ||||
Protocol (SIP) | ||||
draft-ietf-sipping-early-disposition-03.txt | ||||
Status of this Memo | ||||
By submitting this Internet-Draft, I certify that any applicable | ||||
patent or other IPR claims of which I am aware have been disclosed, | ||||
and any of which I become aware will be disclosed, in accordance with | ||||
RFC 3668. | ||||
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:// | The Early Session Disposition Type for | |||
www.ietf.org/ietf/1id-abstracts.txt. | the Session Initiation Protocol (SIP) | |||
The list of Internet-Draft Shadow Directories can be accessed at | Status of This Memo | |||
http://www.ietf.org/shadow.html. | ||||
This Internet-Draft will expire on December 15, 2004. | This document specifies an Internet standards track protocol for the | |||
Internet community, and requests discussion and suggestions for | ||||
improvements. Please refer to the current edition of the "Internet | ||||
Official Protocol Standards" (STD 1) for the standardization state | ||||
and status of this protocol. Distribution of this memo is unlimited. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (C) The Internet Society (2004). All Rights Reserved. | Copyright (C) The Internet Society (2004). | |||
Abstract | Abstract | |||
This document defines a new disposition type (early-session) for the | This document defines a new disposition type (early-session) for the | |||
Content-Disposition header field in SIP. The treatment of | Content-Disposition header field in the Session Initiation Protocol | |||
"early-session" bodies is similar to the treatment of "session" | (SIP). The treatment of "early-session" bodies is similar to the | |||
bodies. That is, they follow the offer/answer model. Their only | treatment of "session" bodies. That is, they follow the offer/answer | |||
difference is that session descriptions whose disposition type is | model. Their only difference is that session descriptions whose | |||
"early-session" are used to establish early media sessions within | disposition type is "early-session" are used to establish early media | |||
early dialogs, as opposed to regular sessions within regular dialogs. | sessions within early dialogs, as opposed to regular sessions within | |||
regular dialogs. | ||||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
3. Issues Related to Early Media Session Establishment . . . . 3 | 3. Issues Related to Early Media Session Establishment . . . . . 2 | |||
4. The Early Session Disposition Type . . . . . . . . . . . . . 4 | 4. The Early Session Disposition Type . . . . . . . . . . . . . . 4 | |||
5. Preconditions . . . . . . . . . . . . . . . . . . . . . . . 5 | 5. Preconditions . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
6. Option tag . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 6. Option tag . . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
7. Example . . . . . . . . . . . . . . . . . . . . . . . . . . 6 | 7. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
8. Security Considerations . . . . . . . . . . . . . . . . . . 8 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 7 | |||
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . 9 | 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 | |||
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9 | 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 | 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
11.1 Normative References . . . . . . . . . . . . . . . . . . . 10 | 11.1. Normative References . . . . . . . . . . . . . . . . . . 9 | |||
11.2 Informational References . . . . . . . . . . . . . . . . . 10 | 11.2. Informational References . . . . . . . . . . . . . . . . 9 | |||
Author's Address . . . . . . . . . . . . . . . . . . . . . . 10 | Author's Address . . . . . . . . . . . . . . . . . . . . . . . 10 | |||
Intellectual Property and Copyright Statements . . . . . . . 11 | Full Copyright Statement . . . . . . . . . . . . . . . . . . . 11 | |||
1. Introduction | 1. Introduction | |||
Early media refers to media (e.g., audio and video) that is exchanged | Early media refers to media (e.g., audio and video) that is exchanged | |||
before a particular session is accepted by the called user. Within a | before a particular session is accepted by the called user. Within a | |||
dialog, early media occurs from the moment the initial INVITE is sent | dialog, early media occurs from the moment the initial INVITE is sent | |||
until the UAS generates a final response. It may be unidirectional or | until the User Agent Server (UAS) generates a final response. It may | |||
bidirectional, and can be generated by the caller, the callee, or | be unidirectional or bidirectional, and can be generated by the | |||
both. Typical examples of early media generated by the callee are | caller, the callee, or both. Typical examples of early media | |||
ringing tone and announcements (e.g., queuing status). Early media | generated by the callee are ringing tone and announcements (e.g., | |||
generated by the caller typically consists of voice commands or DTMF | queuing status). Early media generated by the caller typically | |||
tones to drive IVRs. | consists of voice commands or dual tone multi-frequency (DTMF) tones | |||
to drive interactive voice response (IVR) systems. | ||||
The basic SIP specification (RFC 3261 [2]) only supports very simple | The basic SIP specification (RFC 3261 [2]) only supports very simple | |||
early media mechanisms. These simple mechanisms have a number of | early media mechanisms. These simple mechanisms have a number of | |||
problems which relate to forking and security, and do not satisfy the | problems related to forking and security, and do not satisfy the | |||
requirements of most applications. RFC xxxx [8] goes beyond the | requirements of most applications. RFC 3960 [8] goes beyond the | |||
mechanisms defined in RFC 3261 [2] and describes two models to | mechanisms defined in RFC 3261 [2] and describes two models of early | |||
implement early media using SIP: the gateway model and the | media using SIP: the gateway model and the application server model. | |||
application server model. | ||||
Although both early media models described in RFC xxxx [8] are | Although both early media models described in RFC 3960 [8] are | |||
superior to the one specified in RFC 3261 [2], the gateway model | superior to the one specified in RFC 3261 [2], the gateway model | |||
still presents a set of issues. In particular, the gateway model does | still presents a set of issues. In particular, the gateway model | |||
not work well with forking. Nevertheless, the gateway model is needed | does not work well with forking. Nevertheless, the gateway model is | |||
because some SIP entities (in particular, some gateways) cannot | needed because some SIP entities (in particular, some gateways) | |||
implement the application server model. | cannot implement the application server model. | |||
The application server model addresses some of the issues present in | The application server model addresses some of the issues present in | |||
the gateway model. This model uses the early-session disposition | the gateway model. This model uses the early-session disposition | |||
type, which is specified in this document. | type specified in this document. | |||
2. Terminology | 2. Terminology | |||
In this document, the key words "MUST", "MUST NOT", "REQUIRED", | In this document, the key words "MUST", "MUST NOT", "REQUIRED", | |||
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT | "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT | |||
RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as | RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as | |||
described in BCP 14, RFC 2119 [1] and indicate requirement levels for | described in BCP 14, RFC 2119 [1] and indicate requirement levels for | |||
compliant implementations. | compliant implementations. | |||
3. Issues Related to Early Media Session Establishment | 3. Issues Related to Early Media Session Establishment | |||
Traditionally, early media sessions have been established in the same | Traditionally, early media sessions have been established in the same | |||
way as regular sessions. That is, using an offer/answer exchange | way as regular sessions. That is, using an offer/answer exchange | |||
where the disposition type of the session descriptions is "session". | where the disposition type of the session descriptions is "session". | |||
Application servers perform an offer/answer exchange with the UAC to | Application servers perform an offer/answer exchange with the User | |||
exchange early media exclusively, while UASs use the same offer/ | Agent Client (UAC) to exchange early media exclusively, while UASs | |||
answer exchange, first to exchange early media, and once the regular | use the same offer/answer exchange, first to exchange early media, | |||
dialog is established, to exchange regular media. This way of | and once the regular dialog is established, to exchange regular | |||
establishing early media sessions is known as the gateway model [8], | media. This way of establishing early media sessions is known as the | |||
which presents some issues which relate to forking and security. | gateway model [8], which presents some issues related to forking and | |||
These issues exist when this model is used by either an application | security. These issues exist when this model is used by either an | |||
server or by a UAS. | application server or by a UAS. | |||
Application servers may not be able to generate an answer for an | Application servers may not be able to generate an answer for an | |||
offer received in the INVITE. The UAC created the offer for the UAS, | offer received in the INVITE. The UAC created the offer for the UAS, | |||
and so, it may have applied end-to-end encryption or have included | and so, it may have applied end-to-end encryption or have included | |||
information (e.g., related to key management) that the application | information (e.g., related to key management) that the application | |||
server is not supposed to use. Therefore, application servers need a | server is not supposed to use. Therefore, application servers need a | |||
means to perform an offer/answer exchange with the UAC which is | means to perform an offer/answer exchange with the UAC that is | |||
independent from the offer/answer exchange between both UAs. | independent from the offer/answer exchange between both UAs. | |||
UASs using the offer/answer exchange that will carry regular media to | UASs using the offer/answer exchange that will carry regular media | |||
send and receive early media can cause media clipping, as described | for sending and receiving early media can cause media clipping, as | |||
in Section 2.1.1 of [8]. Some UACs cannot receive early media from | described in Section 2.1.1 of [8]. Some UACs cannot receive early | |||
different UASs at the same time. So, when an INVITE forks and several | media from different UASs at the same time. So, when an INVITE forks | |||
UASs start sending early media, the UAC mutes all the UASs but one | and several UASs start sending early media, the UAC mutes all the | |||
(which is usually randomly chosen). If the UAS that accepts the | UASs but one (which is usually chosen at random). If the UAS that | |||
INVITE (i.e., sends a 200 OK) was muted, a new offer/answer exchange | accepts the INVITE (i.e., sends a 200 OK) was muted, a new | |||
is needed to unmute it. This usually causes media clipping. | offer/answer exchange is needed to unmute it. This usually causes | |||
Therefore, UASs need a means to perform an offer/answer exchange with | media clipping. Therefore, UASs need a means of performing an | |||
the UAC to exchange early media which is independent from the offer/ | offer/answer exchange with the UAC to exchange early media that is | |||
answer exchanged used to exchange regular media. | independent from the offer/answer exchanged used to exchange regular | |||
media. | ||||
A potential solution to this need would be to establish a different | A potential solution to this need would be to establish a different | |||
dialog using a globally routable URI to perform an independent offer/ | dialog using a globally routable URI to perform an independent | |||
answer exchange. This dialog would be labelled as a dialog for early | offer/answer exchange. This dialog would be labelled as a dialog for | |||
media and would be related to the original dialog somehow at the UAC. | early media and would be somehow related to the original dialog at | |||
However, performing all the offer/answer exchanges within the | the UAC. However, performing all the offer/answer exchanges within | |||
original dialog has many advantages: | the original dialog has many advantages: | |||
o It is simpler. | o It is simpler. | |||
o It does not have synchronization problems, because all the early | o It does not have synchronization problems, because all the early | |||
dialogs are terminated when the session is accepted. | dialogs are terminated when the session is accepted. | |||
o It does not require globally routable URIs. | o It does not require globally routable URIs. | |||
o It does not introduce service interaction issues related to | o It does not introduce service interaction issues related to | |||
services that may be wrongly applied to the new dialog. | services that may be wrongly applied to the new dialog. | |||
o It makes firewall management easier. | o It makes firewall management easier. | |||
This way of performing offer/answer exchanges for early media is | This way of performing offer/answer exchanges for early media is | |||
referred to as the application server model [8]. This model uses the | referred to as the application server model [8]. This model uses the | |||
early-session disposition type, which we define in the following | early-session disposition type defined in the following section. | |||
section. | ||||
4. The Early Session Disposition Type | 4. The Early Session Disposition Type | |||
We define a new disposition type for the Content-Disposition header | We define a new disposition type for the Content-Disposition header | |||
field: early-session. User agents MUST use early-session bodies to | field: early-session. User agents MUST use early-session bodies to | |||
establish early media sessions in the same way as they use session | establish early media sessions in the same way as they use session | |||
bodies to establish regular sessions, as described in RFC 3261 [2] | bodies to establish regular sessions, as described in RFCs 3261 [2] | |||
and in RFC 3264 [3]. Particularly, early-session bodies MUST follow | and 3264 [3]. Particularly, early-session bodies MUST follow the | |||
the offer/answer model and MAY appear in the same messages as session | offer/answer model and MAY appear in the same messages as session | |||
bodies do with the exceptions of 2xx responses for an INVITE and | bodies do with the exceptions of 2xx responses for an INVITE and | |||
ACKs. Nevertheless, it is NOT RECOMMENDED to include early offers in | ACKs. Nevertheless, it is NOT RECOMMENDED that early offers in | |||
INVITEs because they can fork, and the UAC could receive multiple | INVITEs be included because they can fork, and the UAC could receive | |||
early answers establishing early media streams at roughly the same | multiple early answers establishing early media streams at roughly | |||
time. It is also NOT RECOMMENDED to use the same transport address | the same time. Also, the use of the same transport address (IP | |||
(IP address plus port) in a session body and in an early-session | address plus port) in a session body and in an early-session body is | |||
body. Using different transport addresses (e.g., different ports) to | NOT RECOMMENDED. Using different transport addresses (e.g., | |||
receive early and regular media makes it easy to detect the start of | different ports) to receive early and regular media makes it easy to | |||
the regular media. | detect the start of the regular media. | |||
If a UA needs to refuse an early-session offer, it MUST to so by | If a User Agent (UA) needs to refuse an early-session offer, it MUST | |||
refusing all the media streams in it. When SDP [7] is used, this is | do so by refusing all the media streams in it. When SDP [7] is used, | |||
done by setting the port number of all the media streams to zero. | this is done by setting the port number of all the media streams to | |||
zero. | ||||
This is the same mechanism that UACs use to refuse regular offers | This is the same mechanism that UACs use to refuse regular offers | |||
that arrive in a response to an empty INVITE. | that arrive in a response to an empty INVITE. | |||
An early media session established using early-session bodies MUST be | An early media session established using early-session bodies MUST be | |||
terminated when its corresponding early dialog is terminated or it | terminated when its corresponding early dialog is terminated or it | |||
transitions to a regular dialog. | transitions to a regular dialog. | |||
It is RECOMMENDED that UAs generating regular and early session | It is RECOMMENDED that UAs generating regular and early session | |||
descriptions use, as long as it is possible, the same codecs in both. | descriptions use, as long as it is possible, the same codecs in both. | |||
This way, the remote UA does not need to change codecs when the early | This way, the remote UA does not need to change codecs when the early | |||
session transitions to a regular session. | session transitions to a regular session. | |||
5. Preconditions | 5. Preconditions | |||
RFC 3312 [4] defines a framework for preconditions for SDP. | RFC 3312 [4] defines a framework for preconditions for SDP. Early- | |||
Early-sessions MAY contain preconditions, which are treated in the | sessions MAY contain preconditions, which are treated in the same way | |||
same way as preconditions in regular sessions. That is, the UAs do | as preconditions in regular sessions. That is, the UAs do not | |||
not exchange media and the called user is not alerted until the | exchange media, and the called user is not alerted until the | |||
preconditions are met. | preconditions are met. | |||
6. Option tag | 6. Option Tag | |||
We define an option tag to be used in Require and Supported header | We define an option tag to be used in Require and Supported header | |||
fields. Its name is early-session. A UA adding the early-session | fields: early-session. A UA adding the early-session option tag to a | |||
option tag to a message indicates that it understands the | message indicates that it understands the early-session disposition | |||
early-session disposition type. | type. | |||
7. Example | 7. Example | |||
Figure 1 shows the message flow between two UAs. INVITE (1) has an | Figure 1 shows the message flow between two UAs. INVITE (1) has an | |||
early-session option tag in its Supported header field and the body | early-session option tag in its Supported header field and the body | |||
shown in Figure 2. The UAS sends back a response with two body parts, | shown in Figure 2. The UAS sends back a response with two body | |||
as shown in Figure 3; one of disposition type session and the other | parts, as shown in Figure 3: one of disposition type session and the | |||
early-session. The session body part is the answer to the offer in | other early-session. The session body part is the answer to the | |||
the INVITE. The early-session body part is an offer to establish an | offer in the INVITE. The early-session body part is an offer to | |||
early media session. When the UAC receives the 183 (Session Progress) | establish an early media session. When the UAC receives the 183 | |||
response, it sends the answer to the early-session offer in a PRACK, | (Session Progress) response, it sends the answer to the early-session | |||
as shown in Figure 4. This early media session is terminated when the | offer in a PRACK, as shown in Figure 4. This early media session is | |||
early dialog transitions to a regular dialog. That is, when the UAS | terminated when the early dialog transitions to a regular dialog. | |||
sends the (5) 200 (OK) response for the INVITE. | That is, when the UAS sends the (5) 200 (OK) response for the INVITE. | |||
A B | A B | |||
| | | | | | |||
|--------(1) INVITE-------->| | |--------(1) INVITE-------->| | |||
| offer | | | offer | | |||
| | | | | | |||
|<--(2) Session Progress----| | |<--(2) Session Progress----| | |||
| early-offer | | | early-offer | | |||
| answer | | | answer | | |||
| | | | | | |||
skipping to change at page 8, line 19 | skipping to change at page 7, line 19 | |||
s= | s= | |||
c=IN IP4 192.0.2.1 | c=IN IP4 192.0.2.1 | |||
t=0 0 | t=0 0 | |||
m=audio 20002 RTP/AVP 0 | m=audio 20002 RTP/AVP 0 | |||
Figure 4: Early answer | Figure 4: Early answer | |||
8. Security Considerations | 8. Security Considerations | |||
The security implications of using early-session bodies in SIP are | The security implications of using early-session bodies in SIP are | |||
the same as the ones of using session bodies; they are part of the | the same as when using session bodies; they are part of the | |||
offer/answer model. | offer/answer model. | |||
SIP uses the offer/answer model [3] to establish early sessions in | SIP uses the offer/answer model [3] to establish early sessions in | |||
both the gateway and the application server models. User Agents (UAs) | both the gateway and the application server models. User Agents | |||
generate a session description, which contains the transport address | (UAs) generate a session description, which contains the transport | |||
(i.e., IP address plus port) where they want to receive media, and | address (i.e., IP address plus port) where they want to receive | |||
send it to their peer in a SIP message. When media packets arrive at | media, and send it to their peer in a SIP message. When media | |||
this transport address, the UA assumes that they come from the | packets arrive at this transport address, the UA assumes that they | |||
receiver of the SIP message carrying the session description. | come from the receiver of the SIP message carrying the session | |||
Nevertheless, attackers may attempt to gain access to the contents of | description. Nevertheless, attackers may attempt to gain access to | |||
the SIP message and send packets to the transport address contained | the contents of the SIP message and send packets to the transport | |||
in the session description. To prevent this situation, UAs SHOULD | address contained in the session description. To prevent this | |||
encrypt their session descriptions (e.g., using S/MIME). | situation, UAs SHOULD encrypt their session descriptions (e.g., using | |||
S/MIME). | ||||
Still, even if a UA encrypts its session descriptions, an attacker | Still, even if a UA encrypts its session descriptions, an attacker | |||
may try to guess the transport address used by the UA and send media | may try to guess the transport address used by the UA and send media | |||
packets to that address. Guessing such a transport address is | packets to that address. Guessing such a transport address is | |||
sometimes easier than it may seem because many UAs always pick up the | sometimes easier than it may seem because many UAs always pick up the | |||
same initial media port. To prevent this situation, UAs SHOULD use | same initial media port. To prevent this situation, UAs SHOULD use | |||
media-level authentication mechanisms (e.g., SRTP [6]). In addition, | media-level authentication mechanisms (e.g., Secure Realtime | |||
UAs that wish to keep their communications confidential SHOULD use | Transport Protocol (SRTP)[6]). In addition, UAs that wish to keep | |||
media-level encryption mechanisms (e.g, SRTP [6]). | their communications confidential SHOULD use media-level encryption | |||
mechanisms (e.g, SRTP [6]). | ||||
Attackers may attempt to make a UA send media to a victim as part of | Attackers may attempt to make a UA send media to a victim as part of | |||
a DoS attack. This can be done by sending a session description with | a DoS attack. This can be done by sending a session description with | |||
the victim's transport address to the UA. To prevent this attack, | the victim's transport address to the UA. To prevent this attack, | |||
the UA SHOULD engage in a handshake with the owner of the transport | the UA SHOULD engage in a handshake with the owner of the transport | |||
address received in a session descriptions (just verifying | address received in a session description (just verifying willingness | |||
willingness to receive media) before sending a large amount of data | to receive media) before sending a large amount of data to the | |||
to the transport address. This check can be performed by using a | transport address. This check can be performed by using a connection | |||
connection oriented transport protocol, by using STUN [5] in an | oriented transport protocol, by using Simple Traversal of the UDP | |||
end-to-end fashion, or by the key exchange in SRTP [6]. | Protocol through NAT (STUN)[5] in an end-to-end fashion, or by the | |||
key exchange in SRTP [6]. | ||||
In any event, note that the previous security considerations are not | In any event, note that the previous security considerations are not | |||
early media specific, but apply to the usage of the offer/answer | early media specific, but apply to the usage of the offer/answer | |||
model in SIP to establish sessions in general. | model in SIP to establish sessions in general. | |||
Additionally, an early media-specific risk (roughly speaking, an | Additionally, an early media-specific risk (roughly speaking, an | |||
equivalent to forms of "toll fraud" in the PSTN) attempts to exploit | equivalent to forms of "toll fraud" in the Public Switched Telephone | |||
the different charging policies some operators apply to early and to | Network (PSTN)) attempts to exploit the different charging policies | |||
regular media. When UAs are allowed to exchange early media for free, | some operators apply to early and to regular media. When UAs are | |||
but are required to pay for regular media sessions, rogue UAs may try | allowed to exchange early media for free, but are required to pay for | |||
to establish a bidirectional early media session and never send a 2xx | regular media sessions, rogue UAs may try to establish a | |||
response for the INVITE. | bidirectional early media session and never send a 2xx response for | |||
the INVITE. | ||||
On the other hand, some application servers (e.g., Interactive Voice | On the other hand, some application servers (e.g., Interactive Voice | |||
Response systems) use bidirectional early media to obtain information | Response systems) use bidirectional early media to obtain information | |||
from the callers (e.g., the PIN code of a calling card). So, we do | from the callers (e.g., the Personal Identification Number (PIN) code | |||
not recommend that operators disallow bidirectional early media. | of a calling card). So, we do not recommend that operators disallow | |||
Instead, operators should consider a remedy of charging early media | bidirectional early media. Instead, operators should consider a | |||
exchanges that last too long, or stopping them at the media level | remedy of charging early media exchanges that last too long, or | |||
(according to the operator's policy). | stopping them at the media level (according to the operator's | |||
policy). | ||||
9. IANA Considerations | 9. IANA Considerations | |||
This document defines a new Content-Disposition header field | This document defines a new Content-Disposition header field | |||
disposition type (early-session) in Section 4. This value should be | disposition type (early-session) in Section 4. This value has been | |||
registered in the IANA registry for Content-Dispositions with the | registered in the IANA registry for Content-Dispositions with the | |||
following description: | following description: | |||
early-session the body describes an early communications | early-session The body describes an early communications | |||
session, for example, an RFC 2327 SDP body | session, for example, an RFC 2327 SDP body | |||
This document defines a SIP option tag (early-session) in Section 6. | This document defines a SIP option tag (early-session) in Section 6. | |||
It should be registered in the SIP parameters registry (http:// | It has been registered in the SIP parameters registry | |||
www.iana.org/assignments/sip-parameters) under "Option Tags", with | (http://www.iana.org/assignments/sip-parameters) under "Option Tags", | |||
the following description. | with the following description. | |||
A UA adding the early-session option tag to a message indicates | early-session A UA adding the early-session option tag to a | |||
that it understands the early-session content disposition. | message indicates that it understands the early- | |||
session content disposition. | ||||
10. Acknowledgements | 10. Acknowledgements | |||
Francois Audet, Christer Holmberg, and Allison Mankin provided useful | Francois Audet, Christer Holmberg, and Allison Mankin provided useful | |||
comments on this document. | comments on this document. | |||
11. References | 11. References | |||
11.1 Normative References | 11.1. Normative References | |||
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement | [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement | |||
Levels", BCP 14, RFC 2119, March 1997. | Levels", BCP 14, RFC 2119, March 1997. | |||
[2] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., | [2] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., | |||
Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: | Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP: | |||
Session Initiation Protocol", RFC 3261, June 2002. | Session Initiation Protocol", RFC 3261, June 2002. | |||
[3] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with | [3] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with | |||
Session Description Protocol (SDP)", RFC 3264, June 2002. | Session Description Protocol (SDP)", RFC 3264, June 2002. | |||
[4] Camarillo, G., Marshall, W. and J. Rosenberg, "Integration of | [4] Camarillo, G., Marshall, W., and J. Rosenberg, "Integration of | |||
Resource Management and Session Initiation Protocol (SIP)", RFC | Resource Management and Session Initiation Protocol (SIP)", RFC | |||
3312, October 2002. | 3312, October 2002. | |||
[5] Rosenberg, J., Weinberger, J., Huitema, C. and R. Mahy, "STUN - | [5] Rosenberg, J., Weinberger, J., Huitema, C., and R. Mahy, | |||
Simple Traversal of User Datagram Protocol (UDP) Through Network | "STUN - Simple Traversal of User Datagram Protocol (UDP) Through | |||
Address Translators (NATs)", RFC 3489, March 2003. | Network Address Translators (NATs)", RFC 3489, March 2003. | |||
[6] Baugher, M., McGrew, D., Naslund, M., Carrara, E. and K. | [6] Baugher, M., McGrew, D., Naslund, M., Carrara, E., and K. | |||
Norrman, "The Secure Real-time Transport Protocol (SRTP)", RFC | Norrman, "The Secure Real-time Transport Protocol (SRTP)", RFC | |||
3711, March 2004. | 3711, March 2004. | |||
11.2 Informational References | 11.2. Informational References | |||
[7] Handley, M. and V. Jacobson, "SDP: Session Description | [7] Handley, M. and V. Jacobson, "SDP: Session Description | |||
Protocol", RFC 2327, April 1998. | Protocol", RFC 2327, April 1998. | |||
[8] Camarillo, G. and H. Schulzrinne, "Early Media and Ringback Tone | [8] Camarillo, G. and H. Schulzrinne, "Early Media and Ringing Tone | |||
Generation in the Session Initiation Protocol", | Generation in the Session Initiation Protocol (SIP)", RFC 3960, | |||
draft-camarillo-sipping-early-media-02 (work in progress), July | December 2004. | |||
2003. | ||||
Author's Address | Author's Address | |||
Gonzalo Camarillo | Gonzalo Camarillo | |||
Ericsson | Ericsson | |||
Hirsalantie 11 | Hirsalantie 11 | |||
Jorvas 02420 | Jorvas 02420 | |||
Finland | Finland | |||
EMail: Gonzalo.Camarillo@ericsson.com | EMail: Gonzalo.Camarillo@ericsson.com | |||
Intellectual Property Statement | Full Copyright Statement | |||
Copyright (C) The Internet Society (2004). | ||||
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 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 | The IETF takes no position regarding the validity or scope of any | |||
Intellectual Property Rights or other rights that might be claimed to | Intellectual Property Rights or other rights that might be claimed to | |||
pertain to the implementation or use of the technology described in | pertain to the implementation or use of the technology described in | |||
this document or the extent to which any license under such rights | 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 | might or might not be available; nor does it represent that it has | |||
made any independent effort to identify any such rights. Information | made any independent effort to identify any such rights. Information | |||
on the IETF's procedures with respect to rights in IETF Documents can | on the IETF's procedures with respect to rights in IETF Documents can | |||
be found in BCP 78 and BCP 79. | be found in BCP 78 and BCP 79. | |||
Copies of IPR disclosures made to the IETF Secretariat and any | Copies of IPR disclosures made to the IETF Secretariat and any | |||
assurances of licenses to be made available, or the result of an | 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 | attempt made to obtain a general license or permission for the use of | |||
such proprietary rights by implementers or users of this | such proprietary rights by implementers or users of this | |||
specification can be obtained from the IETF on-line IPR repository at | specification can be obtained from the IETF on-line IPR repository at | |||
http://www.ietf.org/ipr. | http://www.ietf.org/ipr. | |||
The IETF invites any interested party to bring to its attention any | The IETF invites any interested party to bring to its attention any | |||
copyrights, patents or patent applications, or other proprietary | copyrights, patents or patent applications, or other proprietary | |||
rights that may cover technology that may be required to implement | rights that may cover technology that may be required to implement | |||
this standard. Please address the information to the IETF at | this standard. Please address the information to the IETF at ietf- | |||
ietf-ipr@ietf.org. | ipr@ietf.org. | |||
Disclaimer of Validity | ||||
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 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. | ||||
Copyright Statement | ||||
Copyright (C) The Internet Society (2004). 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. | ||||
Acknowledgment | Acknowledgement | |||
Funding for the RFC Editor function is currently provided by the | Funding for the RFC Editor function is currently provided by the | |||
Internet Society. | Internet Society. | |||
End of changes. | ||||
This html diff was produced by rfcdiff 1.25, available from http://www.levkowetz.com/ietf/tools/rfcdiff/ |