draft-ietf-mmusic-sip-session-timer-01.txt   draft-ietf-mmusic-sip-session-timer-02.txt 
Internet Engineering Task Force Steven R. Donovan Internet Engineering Task Force Steve Donovan
INTERNET DRAFT MCI Worldcom Internet Draft MCI Worldcom
February 25, 1999 Expires August 25, 1999 June, 1999 Expires December, 1999
<draft-ietf-mmusic-sip-session-timer-01.txt> draft-ietf-mmusic-sip-session-timer-02.txt
SIP Session Timer SIP Session Timer
Status of this document Status of this Memo
This document is an Internet-Draft and is in full conformance with all This document is an Internet-Draft and is in full conformance with
provisions of Section 10 of RFC 2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Task Internet-Drafts are working documents of the Internet Engineering
Force (IETF), its areas, and its working groups. Note that other groups Task Force (IETF), its areas, and its working groups. Note that other
may also distribute working documents as Internet-Drafts. groups may also distribute working documents as Internet-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 material time. It is inappropriate to use Internet- Drafts as reference mate-
or to cite them other than as "work in progress." rial or to cite them other than as "work in progress."
To view the entire list of current Internet-Drafts, please check the The list of current Internet-Drafts can be accessed at
"1id-abstracts.txt" listing contained in the Internet-Drafts Shadow http://www.ietf.org/ietf/lid-abstracts.txt.
Directories on ftp.is.co.za (Africa), ftp.nordu.net (Northern Europe),
ftp.nis.garr.it (Southern Europe), munnari.oz.au (Pacific Rim), The list of Internet-Draft Shadow Directories can be accessed at
ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast). http://www.ietf.org/shadow.html.
Abstract Abstract
This document proposes an extension to the SIP specification. This This document proposes an extension to the SIP specification [1].
extension adds a new message header that is used to specify the This extension adds a new message header, Session-Expires, which is
duration of a requested session. used to specify the duration of a requested session.
The session timer can be used to control the duration of a session A session timer can be used to control the duration of a session if,
if, for instance, one of the participants in the session wants to for instance, one of the participants in the session wants to limit
limit the cost of the session. It can also be used by stateful SIP the cost of the session. Stateful SIP Proxy Servers can also use a
Proxy Servers to track the status of sessions for which session state session timer to track the status of sessions for which session state
exists on the servers. Currently a stateful SIP Proxy Server that is exists on the servers. Currently a stateful SIP Proxy Server that is
not handling the media stream(s) for the session has no mechanism to not handling the media stream(s) for the session has no mechanism to
definitively determine the state of all sessions for which it has state. definitively determine the state of all sessions for which it has
While the SIP Specification does provide the BYE method for terminating state. While the SIP Specification does provide the BYE method for
the session, there is no mechanism for a SIP Proxy Server to detect the terminating the session, there is no mechanism for a SIP Proxy Server
end of a session when the BYE message is not sent or is lost due to to detect the end of a session when the BYE message is not sent or is
network problems. lost due to network problems.
Internet draft The SIP Session Timer February 25, 1999
1.0 Introduction 1.0 Introduction
The need for the addition of a session timer was initially motivated by The need for the addition of a session timer was initially motivated
the realization that stateful proxy servers currently have no method of by the realization that stateful proxy servers currently have no
determining the end of a session in certain anomalous situations. For method of determining the end of a session in certain anomalous situ-
instance, when a user agent fails to send a BYE message at the end of ations. For instance, when a user agent fails to send a BYE message
a session or the BYE message gets lost due to network problems. In at the end of a session or the BYE message gets lost due to network
this situation, the stateful proxy will retain state for the session problems. In this situation, the stateful proxy will retain state
and has no deterministic method for determining when the state for the session and has no deterministic method of determining when
no longer applies. the state no longer applies.
With the addition of a session timer to the SIP protocol, the stateful With the addition of a session timer to the SIP protocol, the state-
proxy server will have the option of tearing down the session upon the ful proxy server will have the option of tearing down the session
expiration of the session timer. upon the expiration of the session timer.
A session timer can also be used for other purposes. For instance, it A session timer can also be used for other purposes. For instance,
could be used in the implementation of a prepaid service. In this case it could be used in the implementation of a prepaid service. In this
all session related signaling would be routed through a SIP server that case all session related signaling would be routed through a SIP
would control the session time based on a subscriber's prepaid account. server that would control the session time based on a subscriber's
The SIP server could use the session timer to force tear down of the prepaid account. The SIP server could use the session timer to force
session within a specific time. The session timer could also be used the tear down of the session within a specific time. The session
by the user agent as a trigger to indicate to the subscriber that timer could also be used by the user agent as a trigger to indicate
the prepaid account requires more funds to extend the call. to the subscriber that the prepaid account requires more funds to
extend the call.
This document proposes the addition of the Session-Expires header to This document proposes the addition of the Session-Expires header to
various SIP messages. In addition, two new Request Failure messages various SIP messages. In addition, a new Request Failure message is
are proposed. The first to allow a SIP Proxy Server (SPS) server or a proposed. This message would be used to indicate session timer prob-
User Agent Server (UAS) to indicate the need for the Session-Expires lems, including the need for a session-expires header in an INVITE
header in INVITE messages. The second to allow a SPS or UAS to reject message and the need for a smaller session-expires time.
a User Agent Client's (UAC) session timer request. This can be the
UAC's initial INVITE or the UAC's request to extent an existing session.
2.0 Session-Expires Header Field Definition 2.0 Session-Expires Header Field Definition
The Session-Expires header shall be used by a user agents or proxy The Session-Expires header shall be used by user agents or proxy
servers to indicate the maximum duration of the session. The format servers to indicate the maximum duration of a session.
of the contents of the Session-Expires header shall be equivalent to
the format of the Expires header (see section 6.20 in [1]). As such, The format of the Session-Expires header shall be equivalent to the
the end of the session can be specified as either an absolute or delta format of the Expires header (see section 6.20 in [1]). As such, the
end of the session can be specified as either an absolute or delta
time. time.
The Session-Expires header shall be valid in INVITE and ACK requests. The Session-Expires header shall be valid in INVITE and ACK requests.
In addition it shall be valid in certain response messages. This In addition it shall be valid in certain response messages. This
includes the 200 OK response and the new Request Failure responses includes the 200 OK response and the new Request Failure responses
defined in this document. defined in this document.
The called UA or any SPS in the path of the session signaling shall The called UA or any SPS in the path of the session signaling shall
have the option of rejecting an INVITE that does not contain the have the option of rejecting an INVITE that does not contain the Ses-
Session-Expires header if the service context in which the session sion-Expires header if the service context in which the session
request is made requires the use of the session timer. request is made requires the use of the session timer.
Internet draft The SIP Session Timer February 25, 1999 The called UA has the option of adding the Session-Expires header to
the 200 OK response in the case where there was not Session-Expires
header in the INVITE message.
The called UA and SPS shall also have the option of adding the An SPS shall also have the option of adding the Session-Expires
Session-Expires header to and INVITE message. header to an INVITE message.
In addition, the called UA and SPS shall have the option of modifying In addition, the called UA and SPS shall have the option of modifying
the value in the Session-Expires header. This modification to the the value in the Session-Expires header. This modification shall
requested Session-Expires timer by an SPS or called UA shall only be only be to decrease the requested duration of the session.
to decrease the requested duration of the session.
The begin time of the session shall start upon receipt of the ACK The start time of the session shall be based on receipt of the 200 OK
message by the SPS and called UA indicating successful setup of the message by the calling UA and receipt of the ACK message by the SPS
session. and called UA.
If the called UA or the SPS requires a session timer for a requested If the called UA or the SPS requires a session timer for a requested
session and the calling UA does not include the Session-Expires header session and the calling UA does not include the Session-Expires
in the INVITE message, then the called UA or the SPS should reject the header in the INVITE message, then the called UA or the SPS should
request with a 487 message. If the use of a session timer is reject the request with a 487 request failure message.
desirable but optional for the session then and the calling UA does
not include the Session-Expires header in the INVITE then the called If the use of a session timer is desirable but optional for the ses-
UA or SPS should add a Session-Expires header to the next session sion and the calling UA does not include the Session-Expires header
setup message. in the INVITE then the called UA or SPS should add a Session-Expires
header to the next session setup message. In this case the SPS shall
add the Session-Expires header to the INVITE message and the called
UA shall add the Session-Expires header to the 200 OK response mes-
sage.
The calling UA shall have the ability to request an extension to the The calling UA shall have the ability to request an extension to the
duration of the session by sending a re-INVITE message for the session duration of the session by sending a re-INVITE message for the ses-
with a new Session-Expires header. See section 1.4.6, Changing an sion with a new Session-Expires header. See section 1.4.6, Changing
Existing Session, in [1]. an Existing Session, in [1].
The calling UA or any SPS in the path of the session signaling shall The calling UA or any SPS in the path of the session signaling shall
have the ability to reject the change in the session duration. have the ability to reject the change in the session duration.
Upon expiration of the session timer, the called UA shall have the Upon expiration of the session timer, the calling UA and called UA
option of terminating the session using the normal BYE method. shall have the option of terminating the session using the normal BYE
method.
In addition, a SPS shall have the option of tearing down an expired In addition, a SPS shall have the option of tearing down an expired
session by sending a BYE to both the called UA and the calling UA. It session by sending a BYE to both the called UA and the calling UA.
is recommended that the SPS delay tearing down the session long enough It is recommended that the SPS delay tearing down the session long
for a retry of a lost re-INVITE to be received by the SPS. This will enough for a retry of a lost re-INVITE to be received by the SPS.
also reduce the possibility of both the UAS and SPS attempting to tear This will also reduce the possibility of both a UA and SPS attempting
down the call simultaneously. to tear down the call simultaneously.
3.0 Behavior of SIP User Agents 3.0 Behavior of SIP User Agents
3.1 Behavior of User Agent Clients 3.1 Behavior of User Agent Clients
A User Agent Client (UAC) shall have the ability to include the Ses-
A User Agent Client (UAC) shall have the ability to include the Session- sion-Expires header in an INVITE message.
Expires header in an INVITE message.
The UAC may need to keep a session timer in order to determine
the need for extending the session.
Internet draft The SIP Session Timer February 25, 1999
The UAC shall have the ability to request an extension of the session The UAC shall have the ability to request an extension of the session
timer by sending an INVITE message for an existing session with a timer by sending an INVITE message for an existing session with a
Session-Expires header. This should be done enough in advance of the Session-Expires header. This should be done enough in advance of the
session timeout to prevent the called UA or the SPS from timing out session timeout to prevent the called UA or the SPS from timing out
the session prior to receipt of the new INVITE. the session prior to receipt of the new INVITE.
When requesting an extension of the session, the UAC shall use a value When requesting an extension of the session, the UAC shall use a
in the Session-Expires header that is less-than or equal to the value value in the Session-Expires header that is less-than or equal to the
of the Session-Expires header received in the 200 OK from the original value of the Session-Expires header received in the 200 OK from the
setup of the session. original setup of the session.
The UAC shall have the ability to receive a Session-Expires header in The UAC shall have the ability to receive a Session-Expires header in
a 200 OK message. This is independent of whether or not a Session- a 200 OK message. This is independent of whether or not a Session-
Expires was included in the original INVITE message. Expires was included in the original INVITE message.
The UAC shall have the ability to accept the session time indicated The UAC shall have the ability to accept the session time indicated
in the 200 OK Session-Expires header by including the header unchanged in the 200 OK Session-Expires header by including unchanged Session-
in the ACK to the 200 OK. Expires header in the ACK to the 200 OK.
The UAC shall have the ability to reject the session time indicated in The UAC shall have the ability to reject the session time indicated
the 200 OK message by not including a Session-Expires header in the ACK in the 200 OK message by not including a Session-Expires header in
to the 200 OK message. the ACK to the 200 OK message.
In general, if the UAC is able to support session timers then it should In general, if the UAC is able to support session timers then it
accept the session time included in the 200 OK, event if it changed should accept the session time included in the 200 OK, even if it
between the INVITE and the 200 OK. changed between the INVITE and the 200 OK.
3.2 Behavior of User Agent Servers 3.2 Behavior of User Agent Servers
The User Agent Server shall have the ability to reject an INVITE The User Agent Server shall have the ability to reject an INVITE mes-
message that does not contain a Session-Expires header if the INVITE sage that does not contain a Session-Expires header if the INVITE is
is received in a service context that requires a session timer. The received in a service context that requires a session timer. The UAS
UAS shall reject the INVITE using the following response: shall reject the INVITE using the following response:
487 Session-Expires Header Problem 487 Session-Expires Header Problem
Session-Expires: n Session-Expires: n
The UAS shall have the ability to reject an INVITE request based on The UAS shall have the ability to provisionally reject an INVITE
the Session-Expires header. For instance, the UAS may choose to reject request based on the contents of the Session-Expires header received
the INVITE if the requested session time is longer than the UAS desires in the INVITE message. For instance, the UAS may choose to reject
to participate in the session. The UAS shall use the following message the INVITE if the requested session time is longer than the UAS
to reject the request: desires to participate in the session. The UAS shall use the follow-
ing message to reject the request:
487 Session-Expires Header Problem 487 Session-Expires Header Problem
Session-Expires: n Session-Expires: n
In both cases, the UAS shall include in the 487 response an accept-
able delta time for the session.
In both cases, the UAS shall include in the 487 response an acceptable If the Session-Expires header contains a delta time then the UAS
delta time for the session. shall calculate the end of the session based on receipt of the ACK
message that completes a successful session initiation:
Internet draft The SIP Session Timer February 25, 1999
If the Session-Expires header contains a delta time then the UAS shall
calculate the end of the session based on receipt of the ACK message
that completes a successful session initiation:
End of session time = Receipt of ACK time + Session-Expires time End of session time = Receipt of ACK time + Session-Expires time
The UAS shall have the ability to reject a request to extend the length The UAS shall have the ability to reject a request to extend the
of the session. The UAS shall do so by sending the following response: length of the session. The UAS shall do so by sending the following
response:
487 Session Time Request Problem 487 Session Time Request Problem
Session-Expires: 0 Session-Expires: n
A value of zero (0) in the Session-Expires header shall indicate that A value of zero (0) in the Session-Expires header shall indicate that
the extension request is rejected. the extension request is rejected. Any other value should be less
than that received in the re-INVITE message and should indicate an
acceptable extension to the session timer.
If the Session-Expires header in the re-INVITE contains a delta time If the Session-Expires header in the re-INVITE contains a delta time
then the UAS shall calculate the new end of the session from the then the UAS shall calculate the new end of the session from the pre-
previous end of session time: vious end of session time:
New end of session time = Previous end of session time + delta time New end of session time = Previous end of session time + delta time
If a request to extend the session time is rejected by the UAS then If a request to extend the session time is rejected by the UAS then
the end of session time that existed prior to the extension request the end of session time that existed prior to the extension request
shall be used. shall be remain in effect.
The UAS shall have the ability to add a Session-Expires header to a 200 The UAS shall have the ability to add a Session-Expires header to a
OK response for an INVITE request that did not contain a Session- 200 OK response for an INVITE request that did not contain a session-
Expires header. Expires header.
If the UAS adds a Session-Expires header to the 200 OK response and If the UAS adds a Session-Expires header to the 200 OK response and
the resulting ACK does not contain a Session-Expires header then the the resulting ACK does not contain a Session-Expires header then the
UAS has the following options: UAS has the following options:
1 - The UAS can choose to participate in the session without a session The UAS can choose to participate in the session without a session
timer. timer. The UAS can choose to not participate in the session. In
2 - The UAS can choose to not participate in the session. In this case, this case, the UAS shall send a BYE message to tear down the session.
the UAS shall send a BYE message to tear down the session.
The UAS shall have the ability to decrease the requested session time The UAS shall have the ability to decrease the requested session time
in the INVITE Session-Expires header. in the INVITE Session-Expires header.
If the UAS is sending a 200 OK to an that INVITE contained a Session- If the UAS is sending a 200 OK to an INVITE that contained a Session-
Expires header then the UAS shall include a Session-Expires header in Expires header then the UAS shall include a Session-Expires header in
the 200 OK. The content of the Session-Expires header shall be either the 200 OK. The content of the Session-Expires header shall be
the content of the Session-Expires header contained in the INVITE either the content of the Session-Expires header contained in the
request, if the UAS accepts the requested duration, or the decreased INVITE request, if the UAS accepts the requested duration, or a
value of the session timer desired by the UAS. decreased value of the session timer desired by the UAS.
Upon expiration of the session timer, the UAS shall explicitly
terminate the session by sending a BYE message.
Internet draft The SIP Session Timer February 25, 1999
4.0 Behavior of SIP Proxy Servers 4.0 Behavior of SIP Proxy Servers
A SIP Proxy Server has the option of tracking the duration of sessions A SIP Proxy Server has the option of tracking the duration of ses-
for which it is a proxy. sions for which it is a proxy.
If the SPS receives an INVITE without a Session-Expires header, it has If the SPS receives an INVITE without a Session-Expires header, it
the option of sending the following message indicating that the has the option of sending the following request failure response
Session-Expires header is required: indicating that the Session-Expires header is required:
487 Session-Expires Header Problem 487 Session-Expires Header Problem
Session-Expires: n Session-Expires: n
A SPS has the option of rejecting an INVITE with a Session-Expires A SPS has the option of rejecting an INVITE with a Session-Expires
header based on the time specified in the header. For instance, if header based on the time specified in the header. For instance, if
the time specified is too long. The proxy server shall do so by the time specified is too long. The proxy server shall do so by send-
sending the following response: ing the following request failure response:
487 Session-Expires Header Problem 487 Session-Expires Header Problem
Session-Expires: n Session-Expires: n
In both cases, the SPS shall include in the 487 response an acceptable In both cases, the SPS shall include in the 487 response an accept-
delta time for the session. able delta time for the session.
If the Session-Expires header contains a delta time then the SPS shall If the Session-Expires header contains a delta time then the SPS
use the method of calculating the session time specified in section 3.2. shall use the method of calculating the session time specified in
section 3.2.
A SPS has the option of rejecting a request for an extension of the A SPS has the option of rejecting a request for an extension of the
session timer for an existing session by sending the following message: session timer for an existing session by sending the following
request failure response:
487 Session-Expires Header Problem 487 Session-Expires Header Problem
Session-Expires: 0 Session-Expires: n
A value of zero (0) in the Session-Expires header shall indicate that A value of zero (0) in the Session-Expires header shall indicate that
the extension request is rejected. the extension request is rejected. Any other value should be less
than that received in the re-INVITE message and should indicate an
acceptable extension to the session timer.
If the SPS accepts the request to extend the session timer then it If the SPS accepts the request to extend the session timer then it
shall use the method of calculating the new end of session time shall use the method of calculating the new end of session time spec-
specified in section 3.2. ified in section 3.2.
The SPS shall have the ability to add a Session-Expires header to an The SPS shall have the ability to add a Session-Expires header to an
INVITE request that does not contain a Session-Expires header. INVITE request that does not contain a Session-Expires header.
The SPS shall have the ability to decrease the requested session time The SPS shall have the ability to decrease the requested session time
in the INVITE Session-Expires header. in the INVITE Session-Expires header.
The content of the Session-Expires header included in the INVITE sent The content of the Session-Expires header included in the INVITE sent
by the SPS shall be either the content of the Session-Expires header by the SPS shall be either the content of the Session-Expires header
contained in the INVITE request, if the UAS accepts the requested contained in the INVITE request, if the UAS accepts the requested
duration, or the decreased value of the session timer desired by the duration, or a decreased value of the session timer desired by the
SPS. SPS.
Internet draft The SIP Session Timer February 25, 1999
If the SPS adds a Session-Expires header to the 200 OK response and If the SPS adds a Session-Expires header to the 200 OK response and
the resulting ACK does not contain a Session-Expires header then the the resulting ACK does not contain a Session-Expires header then the
SPS has the following options: SPS has the following options:
1 - The SPS can choose to allow the session without a session timer. - The SPS can choose to allow the session without a session timer.
2 - The SPS can choose to not allow the session. In this case, SPS
shall send a BYE message to the calling and called parties to
tear down the session.
A SPS shall have the option of tearing down sessions that have expired. - The SPS can choose to not allow the session.
Note that the SPS should wait for the called UA to terminate the call
using normal mechanisms. If the called UA fails to send a BYE as a
result of session expiration then the SPS can choose to end the call.
The SPS shall terminate the call by sending BYE requests to the calling A SPS shall have the option of tearing down sessions that have
UA and the called UA. expired. Note that the SPS should wait for the calling UA or called
UA to terminate the call using normal mechanisms. If the calling UA
and the called UA fail to send a BYE as a result of session expira-
tion then the SPS can choose to end the call.
The SPS shall terminate the call by sending BYE requests to the call-
ing UA and the called UA.
5.0 Header Field Definitions 5.0 Header Field Definitions
The following is an extension of tables 4 and 5 in [1] for the Session- The following is an extension of tables 4 and 5 in [1] for the Ses-
Expires header: sion-Expires header:
where enc. e-e ACK BYE CAN INV OPT REG where enc. e-e ACK BYE CAN INV OPT REG
Session-Expires R e o - - o - - Session-Expires R e o - - o - -
Session-Expires 200 e - - - o - - Session-Expires 200 e - - - o - -
Session-Expires 487 e - - - o - - Session-Expires 487 e - - - o - -
6.0 Request Failure Messages 6.0 Request Failure Messages
6.1 487 Session-Expires Header Problem 6.1 487 Session-Expires Header Problem
The server received an INVITE request with one of the following The server received an INVITE request with one of the following prob-
problems: lems:
- The server requires a Session-Expires header. In this case the - The server requires a Session-Expires header. In this case the
response should contain a Session-Expires header with an acceptable response should contain a Session-Expires header with an acceptable
session time. session time.
- The server received an INVITE with a Session-Expires header with an - The server received an INVITE with a Session-Expires header with an
expiration time longer than the server is willing to except. In this expiration time longer than the server is willing to accept. In this
case the response should contain a Session-Expires header with an case the response should contain a Session-Expires header with an
acceptable session time. acceptable session time.
- The server received an INVITE with a Session-Expires header for an - The server received an INVITE with a Session-Expires header for an
existing session and the server does not wish to extend the session. existing session and the server does not wish to extend the session.
In this case the response should contain a Session-Expires header with In this case the response should contain a Session-Expires header
a value of zero (0). with a value of zero (0).
- The server received an INVITE with a Session-Expires header for an
existing session with an expiration time longer than the server is
willing to accept. In this case the response should contain a Ses-
sion-Expires header with an acceptable session time.
7.0 Security Considerations 7.0 Security Considerations
There are no security considerations unique to the Session-Expires There are no security considerations unique to the Session-Expires
header. header.
Internet draft The SIP Session Timer February 25, 1999
8.0 Examples 8.0 Examples
The following examples are meant to illustrate the functionality The following examples are meant to illustrate the functionality
associated with the Session-Expires header. As such, other headers associated with the Session-Expires header. In the interest of
are intentionally left out of the SIP messages. brevity, other headers are intentionally left out of the SIP mes-
sages.
8.1 Basic session-timer setup with UAS detected timeout 8.1 Basic session-timer setup with UAS detected timeout
Calling UA -> Called UA Calling UA -> Called UA
INVITE INVITE
Session-Expires: 120 Session-Expires: 120
Calling UA <- Called UA Calling UA <- Called UA
200 OK 200 OK
Session-Expires: 120 Session-Expires: 120
skipping to change at page 9, line 5 skipping to change at line 407
Called UA Receipt of ACK Called UA resets session timer Called UA Receipt of ACK Called UA resets session timer
Session timeout detected by Called UA Session timeout detected by Called UA
Calling UA <- Called UA Calling UA <- Called UA
BYE BYE
Calling UA -> Called UA Calling UA -> Called UA
200 OK 200 OK
Internet draft The SIP Session Timer February 25, 1999
8.2 Basic negotiation with SPS Detected timeout 8.2 Basic negotiation with SPS Detected timeout
Calling UA -> SPS Calling UA -> SPS
INVITE INVITE
Session-Expires: 240 Session-Expires: 240
SPS -> Called UA SPS -> Called UA
INVITE SPS wants a shorter timer INVITE SPS wants a shorter timer
Session-Expires: 180 Session-Expires: 180
skipping to change at page 10, line 5 skipping to change at line 448
SPS -> Called UA SPS -> Called UA
BYE BYE
Calling UA -> SPS Calling UA -> SPS
200 OK 200 OK
SPS <- Called UA SPS <- Called UA
200 OK 200 OK
Internet draft The SIP Session Timer February 25, 1999
8.3 No Session-Expires Header Rejection by SPS 8.3 No Session-Expires Header Rejection by SPS
Calling UA -> SPS Calling UA -> SPS
INVITE No Session-Expires header INVITE No Session-Expires header
Calling UA <- SPS Calling UA <- SPS
4xx Session-Expires Header Required 4xx Session-Expires Header Required
Session-Expires: 120 Suggested session time Session-Expires: 120 Suggested session time
Calling UA -> SPS Calling UA -> SPS
INVITE INVITE
Session-Expires: 120 Session-Expires: 120
. . . Session setup continues Session setup continues
8.4 Invalid Session-Expires Header Rejection by SPS 8.4 Invalid Session-Expires Header Rejection by SPS
Calling UA -> SPS Calling UA -> SPS
INVITE No Session-Expires header INVITE No Session-Expires header
Session-Expires: 1000 Session-Expires: 1000
Calling UA <- SPS Calling UA <- SPS
4xx Session Time Request Rejected 4xx Session Time Request Rejected
Session-Expires: 120 Suggested session time Session-Expires: 120 Suggested session time
Calling UA -> SPS Calling UA -> SPS
INVITE INVITE
Session-Expires: 120 Session-Expires: 120
. . . Session setup continues Session setup continues
Internet draft The SIP Session Timer February 25, 1999
8.5 Session-Expires Header Added by SPS, Rejected by UAC 8.5 Session-Expires Header Added by SPS, Rejected by UAC
Calling UA -> SPS Calling UA -> SPS
INVITE INVITE
SPS -> Called UA SPS -> Called UA
INVITE SPS adds S-E header INVITE SPS adds S-E header
Session-Expires: 180 Session-Expires: 180
skipping to change at page 11, line 30 skipping to change at line 502
Calling UA <- SPS Calling UA <- SPS
200 OK 200 OK
Session-Expires: 120 Session-Expires: 120
Calling UA -> SPS Calling UA -> SPS
ACK Calling UA does not include S-E header ACK Calling UA does not include S-E header
The SPS has the choice of allowing or not allowing the call as a The SPS has the choice of allowing or not allowing the call as a
result of the Calling UA not supporting the Session-Expires function. result of the Calling UA not supporting the Session-Expires function.
7.0 Changes in this version 9.0 Changes in this version
The following is the list of the major changes to this version of
the document:
- Added the session time negotiation capability. This resulted in
added support for the Session-Expires header in the 200 OK response
and ACK request.
- Consolidated the two 4xx responses into one.
- Suggested the value of 487 for the new response message.
- Added the ability to include a suggested session time in the 487
response.
8.0 Issues
The following are the currently understood issues with the document:
- It may be useful to allow the Called UA to initiate a request to The changes in this version of the document were primarily editorial
extend the session. This would be in the case that the Calling UA in nature.
does not support the Session Timer capability.
Internet draft The SIP Session Timer February 25, 1999 It was also reworded to indicate that both the calling and the called
user agents shall be able to request extensions to the session time.
9.0 References 10.0 References
[1] M. Handley, H. Schulzrinne, E. Schooler, and J. Rosenberg, [1] M. Handley, H. Schulzrinne, E. Schooler, and J. Rosenberg, "SIP:
"SIP: Session Initiation Protocol", Internet Draft, Internet Session Initiation Protocol", RFC 2543, March 1999.
Engineering Task Force, January 15, 1999. Work in progress.
10.0 Author's Address 11.0 Author's Address
Steven R. Donovan Steven R. Donovan
MCI Worldcom MCI Worldcom
1493/678 1493/678
901 International Parkway 901 International Parkway
Richardson, Texas 75081 Richardson, Texas 75081
Email: steven.r.donovan@mci.com Email: steven.r.donovan@mci.com
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/