Re: [sipcore] Dialog state - Scope in draft-ietf-sipcore-reinvite

Gonzalo Camarillo <Gonzalo.Camarillo@ericsson.com> Thu, 22 July 2010 07:13 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 BDC653A67D7 for <sipcore@core3.amsl.com>; Thu, 22 Jul 2010 00:13:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -103.924
X-Spam-Level:
X-Spam-Status: No, score=-103.924 tagged_above=-999 required=5 tests=[AWL=-1.325, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
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 MnM1Zaczv3fd for <sipcore@core3.amsl.com>; Thu, 22 Jul 2010 00:13:34 -0700 (PDT)
Received: from mailgw9.se.ericsson.net (mailgw9.se.ericsson.net [193.180.251.57]) by core3.amsl.com (Postfix) with ESMTP id 303143A684C for <sipcore@ietf.org>; Thu, 22 Jul 2010 00:13:33 -0700 (PDT)
X-AuditID: c1b4fb39-b7b91ae000001aef-47-4c47efaec17d
Received: from esealmw129.eemea.ericsson.se (Unknown_Domain [153.88.253.125]) by mailgw9.se.ericsson.net (Symantec Mail Security) with SMTP id 2A.1C.06895.EAFE74C4; Thu, 22 Jul 2010 09:13:50 +0200 (CEST)
Received: from esealmw127.eemea.ericsson.se ([153.88.254.171]) by esealmw129.eemea.ericsson.se with Microsoft SMTPSVC(6.0.3790.3959); Thu, 22 Jul 2010 09:13:49 +0200
Received: from [131.160.126.163] ([131.160.126.163]) by esealmw127.eemea.ericsson.se with Microsoft SMTPSVC(6.0.3790.3959); Thu, 22 Jul 2010 09:13:49 +0200
Message-ID: <4C47EFAD.6080204@ericsson.com>
Date: Thu, 22 Jul 2010 10:13:49 +0300
From: Gonzalo Camarillo <Gonzalo.Camarillo@ericsson.com>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.11) Gecko/20100711 Thunderbird/3.0.6
MIME-Version: 1.0
To: Paul Kyzivat <pkyzivat@cisco.com>
References: <4C4740B8.3010401@cisco.com>
In-Reply-To: <4C4740B8.3010401@cisco.com>
X-Enigmail-Version: 1.0.1
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
X-OriginalArrivalTime: 22 Jul 2010 07:13:49.0734 (UTC) FILETIME=[6ECDB460:01CB296D]
X-Brightmail-Tracker: AAAAAA==
Cc: SIPCORE <sipcore@ietf.org>
Subject: Re: [sipcore] Dialog state - Scope in draft-ietf-sipcore-reinvite
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: Thu, 22 Jul 2010 07:13:36 -0000

Hi Paul,

thanks for your comments. Answers inline:

On 21/07/2010 9:47 PM, Paul Kyzivat wrote:
> Gonzallo,
> 
> Sorry it took me so long, but I finally got time to read the new version 
> carefully.
> 
> This is looking good. I have a few nits, and a couple of things that 
> might be more than nits.
> 
> 3.1:
> 
> nit:
> s/The UAS is automatically configured to reject video streams/The UAS is 
> configured to automatically reject video streams/

Fixed.

> 
> 3.3:
> 
>     A change to the session state is considered to have been executed if
>     an offer/answer without preconditions [RFC4032] for the stream has
>     completed successfully or the UAs have exchanged media using the new
> 
> "exchanged" is a tricky word here, and could use some added definition.

I have done the following:

OLD:
...or the UAs have exchanged media using the new parameters

NEW:
...or the UA have sent or received media using the new parameters


> A UA can know if it has *sent* media, and it can know if it has 
> *received* media. If media has been received (and can be distinguished 
> from the media that would have been received had the change not 
> occurred) then that UA knows media has been exchanged. But it doesn't 
> know if the other UA knows media has been exchanged. We want both sides 
> to reach the same conclusion regarding the exchange of media, but I'm 
> not sure how to assure that.

You cannot do this in a simple way. For RTP over UDP media, you would
need to look at the RTCP information. For TCP media, you would need to
look into the TCP data (unless the media stream itself provided some
type of acks). So, I think this is the best we can do without adding a
level of complexity that nobody would really implement just to resolve
corner cases.

> So, from the perspective of one of the UAs, how do you propose that this 
> decision be made? Is it just "I have received media according to the new 
> sdp"?

I have received or sent media (or both) using the new sdp.

> What about cases where no media is expected to be exchanged as a result 
> of the new O/A?  E.g. Suppose the change was simply from "a=sendrecv" to 
> "a=inactive". Is the absence of packets for some period of time evidence 
> that this is in effect?

To cover all these cases, the UAs can perform a new offer/answer
exchange without preconditions, as described in that section. That is
the more general way to indicate that the session parameters are in use.

> 
> 3.4:
> 
> nit:
> 
>     and the session parameters in the offer/answer exchange SHOULD be as
>     close as those in the pre-re-INVITE state as possible.
> 
> s/close as those/close to those/

Fixed.

> 
> 4.4:
> 
>     If the UA receives a reliable provisional response or a 2xx response
>     to the target-refresh request, or the UA receives a request on the
>     new local target, the remote UA has updated its remote target.  The
>     UA can consider the target refresh operation completed.
> 
> It isn't sufficient to receive a request on the new target - it must be 
> a request *within the dialog. (It might receive an out of dialog request 
> from another source, or otherwise unrelated.) (This is covered in 4.6, 
> but good to catch it here too.) So I suggest:
> 
>     If the UAC receives a reliable provisional response or a 2xx response
>     to the target-refresh request, or the UAC receives an in-dialog
>     request on the new target, the UAS has updated its remote target.
>     The UAC can consider the target refresh operation completed.

Fixed.

> 
> 4.6:
> 
> nit:
> s/ n-dialog/ in-dialog/

Fixed.

> 
> In the note discussing reliable provisional responses, it might be good 
> to reference RFC 4320 that says they MUST NOT be used for non-invite 
> transactions.

I have added a reference to RFC 4320.

Thanks,

Gonzalo