Re: [sipcore] Suspending and Resuming modification of session or stream? //New revision of the re-INVITE handling draft

Gonzalo Camarillo <Gonzalo.Camarillo@ericsson.com> Sun, 06 December 2009 06:37 UTC

Return-Path: <gonzalo.camarillo@ericsson.com>
X-Original-To: sipcore@core3.amsl.com
Delivered-To: sipcore@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 4B46A28C0D6 for <sipcore@core3.amsl.com>; Sat, 5 Dec 2009 22:37:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.249
X-Spam-Level:
X-Spam-Status: No, score=-6.249 tagged_above=-999 required=5 tests=[AWL=-0.000, BAYES_00=-2.599, HELO_EQ_SE=0.35, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O6ymqSow1bh5 for <sipcore@core3.amsl.com>; Sat, 5 Dec 2009 22:37:51 -0800 (PST)
Received: from mailgw5.ericsson.se (mailgw5.ericsson.se [193.180.251.36]) by core3.amsl.com (Postfix) with ESMTP id 3F4DF3A6895 for <sipcore@ietf.org>; Sat, 5 Dec 2009 22:37:48 -0800 (PST)
X-AuditID: c1b4fb24-b7beeae000003a71-25-4b1b5132c81e
Received: from esealmw126.eemea.ericsson.se (Unknown_Domain [153.88.253.125]) by mailgw5.ericsson.se (Symantec Mail Security) with SMTP id 5F.93.14961.2315B1B4; Sun, 6 Dec 2009 07:37:38 +0100 (CET)
Received: from esealmw128.eemea.ericsson.se ([153.88.254.172]) by esealmw126.eemea.ericsson.se with Microsoft SMTPSVC(6.0.3790.3959); Sun, 6 Dec 2009 07:37:37 +0100
Received: from [131.160.126.151] ([131.160.126.151]) by esealmw128.eemea.ericsson.se with Microsoft SMTPSVC(6.0.3790.3959); Sun, 6 Dec 2009 07:37:37 +0100
Message-ID: <4B1B5130.1020305@ericsson.com>
Date: Sun, 06 Dec 2009 08:37:36 +0200
From: Gonzalo Camarillo <Gonzalo.Camarillo@ericsson.com>
User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
MIME-Version: 1.0
To: gao.yang2@zte.com.cn
References: <OF61A685A2.40B2A5FD-ON48257618.000627B8-48257618.000983CA@zte.com.cn>
In-Reply-To: <OF61A685A2.40B2A5FD-ON48257618.000627B8-48257618.000983CA@zte.com.cn>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-OriginalArrivalTime: 06 Dec 2009 06:37:37.0327 (UTC) FILETIME=[99C3B3F0:01CA763E]
X-Brightmail-Tracker: AAAAAA==
Cc: SIPCORE <sipcore@ietf.org>, wang.libo@zte.com.cn
Subject: Re: [sipcore] Suspending and Resuming modification of session or stream? //New revision of the re-INVITE handling draft
X-BeenThere: sipcore@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: SIP Core Working Group <sipcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sipcore>
List-Post: <mailto:sipcore@ietf.org>
List-Help: <mailto:sipcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 06 Dec 2009 06:37:58 -0000

Hi,

[I am resurrecting this old thread because it did not reach a conclusion.]

Originally, preconditions were designed with initial INVITE requests in 
mind. The idea was to keep the UAS from alerting the callee until the 
media streams with preconditions were ready to be established (e.g., 
their QoS was in place). That is, if there were some streams that did 
not have preconditions, they would not be established until the 
preconditions for the other streams were met. For example, let us assume 
an initial INVITE with an audio stream without preconditions and a video 
stream with QoS preconditions. Until the QoS for the video stream is in 
place, the audio stream will not be established and the callee will not 
be alerted. In short, when one or more streams within a session have 
preconditions, the whole session establishment is suspended until those 
preconditions are met.

When we extended the concept of preconditions to re-INVITEs, we wanted 
to have similar behavior for initial INVITEs and for re-INVITEs. That is 
why RFC 4032 talks about about *session* establishment being suspended:

http://tools.ietf.org/html/rfc4032#section-3.4

Therefore, the idea was that no changes were applied to any stream until 
all the preconditions were met.

So, the above was our original thinking. However, at present we have a 
better understanding about the problems with long-lived re-INVITE 
transactions. If we allow the whole session establishment to be 
suspended, it would be impossible to change the session parameters of 
any stream while the UAs were working on meeting the preconditions of 
other streams. On the other hand, we want to be able to make the changes 
to one stream conditional to the changes on other stream being executed 
(e.g., use this new audio codec if you accept adding a video stream to 
the session; otherwise, keep on using the old audio codec).

Before we explore this more deeply, I would like to understand if there 
is interest in resolving this type of issue. Some time ago I put 
together a draft dealing with a similar issue (media state during 
preconditions) but we concluded that, at that point, there was not 
enough interest for me (or anyone else for that matter) to put more 
energy into it:

http://tools.ietf.org/html/draft-camarillo-sipping-precons-00

If people want these issues to be clarified, we should by all means do 
so. However, if people do not really care about these corner cases, we 
should prioritize other specs.

Thanks,

Gonzalo



gao.yang2@zte.com.cn wrote:
> 
> Considering a use case, A and B has a audio only session. Then A send a 
> Re-INVITE for adding vedio stream( with precondition) and changing codec 
> or address for audio stream( without preconditon).
> 
> If suspending is effective for whole session, then streams without 
> precondition should use old parameters while in suspending state.
> For the use case, A and B should not use new codec or address for audio 
> before vedio's preconditon is met.
> 
> If suspending is effective for streams with precondition, the then 
> streams without preconditio can use new parameters after first O/A 
> during the Re-INVITE.
> For the use case, A and B can use new codec or address for audio before 
> vedio's preconditon is met.
> 
> 
> I prefer the first one, as;
> 1. To delay using of new parameters for stream without precondition may 
> arose media clip problem.
> 2. Behavior of streams without precondition should be independent of 
> existence of other streams( with precondition).
> 
> ===================================
> Zip    : 210012
> Tel    : 87211
> Tel2   :(+86)-025-52877211
> e_mail : gao.yang2@zte.com.cn
> ===================================
> 
> --------------------------------------------------------
> ZTE Information Security Notice: The information contained in this mail is solely property of the sender's organization. This mail communication is confidential. Recipients named above are obligated to maintain secrecy and are not permitted to disclose the contents of this communication to others.
> This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the originator of the message. Any views expressed in this message are those of the individual sender.
> This message has been scanned for viruses and Spam by ZTE Anti-Spam system.
>