Re: [Sip] New version of draft-ietf-sip-199

"Christer Holmberg" <christer.holmberg@ericsson.com> Wed, 27 August 2008 17:31 UTC

Return-Path: <sip-bounces@ietf.org>
X-Original-To: sip-archive@optimus.ietf.org
Delivered-To: ietfarch-sip-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 2A86E28C103; Wed, 27 Aug 2008 10:31:54 -0700 (PDT)
X-Original-To: sip@core3.amsl.com
Delivered-To: sip@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 9C7313A6C02 for <sip@core3.amsl.com>; Wed, 27 Aug 2008 10:31:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.789
X-Spam-Level:
X-Spam-Status: No, score=-5.789 tagged_above=-999 required=5 tests=[AWL=0.460, 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 HkNU1t8gtKcR for <sip@core3.amsl.com>; Wed, 27 Aug 2008 10:31:51 -0700 (PDT)
Received: from mailgw3.ericsson.se (mailgw3.ericsson.se [193.180.251.60]) by core3.amsl.com (Postfix) with ESMTP id 2713A3A6BF1 for <sip@ietf.org>; Wed, 27 Aug 2008 10:31:50 -0700 (PDT)
Received: from mailgw3.ericsson.se (unknown [127.0.0.1]) by mailgw3.ericsson.se (Symantec Mail Security) with ESMTP id 6A77720D20; Wed, 27 Aug 2008 19:31:52 +0200 (CEST)
X-AuditID: c1b4fb3c-af0d0bb0000015b5-97-48b58f88490c
Received: from esealmw128.eemea.ericsson.se (unknown [153.88.254.121]) by mailgw3.ericsson.se (Symantec Mail Security) with ESMTP id 482CD2051D; Wed, 27 Aug 2008 19:31:52 +0200 (CEST)
Received: from esealmw113.eemea.ericsson.se ([153.88.200.4]) by esealmw128.eemea.ericsson.se with Microsoft SMTPSVC(6.0.3790.1830); Wed, 27 Aug 2008 19:31:52 +0200
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Date: Wed, 27 Aug 2008 19:31:51 +0200
Message-ID: <CA9998CD4A020D418654FCDEF4E707DF046C792D@esealmw113.eemea.ericsson.se>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [Sip] New version of draft-ietf-sip-199
Thread-Index: AckIU1jmBMHPqGC5T++U4phwRpQr5wAFQJ7J
References: <CA9998CD4A020D418654FCDEF4E707DF079F23C0@esealmw113.eemea.ericsson.se> <48B5685B.1030106@cisco.com>
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: Paul Kyzivat <pkyzivat@cisco.com>
X-OriginalArrivalTime: 27 Aug 2008 17:31:52.0042 (UTC) FILETIME=[CAE65CA0:01C9086A]
X-Brightmail-Tracker: AAAAAA==
Cc: SIP IETF <sip@ietf.org>
Subject: Re: [Sip] New version of draft-ietf-sip-199
X-BeenThere: sip@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Session Initiation Protocol <sip.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/sip>, <mailto:sip-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:sip@ietf.org>
List-Help: <mailto:sip-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sip>, <mailto:sip-request@ietf.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: sip-bounces@ietf.org
Errors-To: sip-bounces@ietf.org

Hi Paul,

>This seems to have covered most things. The addition of descriptions of 
>the sorts of resources that can be released is quite helpful. I have a 
>few comments on the new version
>
>    If multiple usages [RFC5057] are used within an early dialog, and it
>    is not clear which dialogusage the 199 response terminates, SIP
>    entities that keep dialog state SHALL NOT release resources
>    associated with the early dialog when they receive the 199 response.
>
>Under what circumstances can it not be clear which usage the 199 applies 
>to? AFAIK the 199 should only be used with an INVITE dialog usage, and 
>there can only be one of those per dialog. (We don't allow early dialogs 
>for other usages.)

I think it's clear that the 199 applies to the invite dialog usage. But, what if there are other usages? You would need to know whether the error response which triggered the 199 also affects those usages.

Again, this would only happen if you have established the other usage during the early phase of the invite dialog (which I think is only theoretical).



>    5. limited access resources - in case of forking and multiple stream
>    there may not be possible to allow early media on all dialogs, so
>    some dialogs may e.g. be set to "inactive".  When a dialog is
>    terminated, media can be allowed on other dialogs.

>s/there may not be possible/it may not be possible/

I'll fix that.



>    When a forking proxy receives a non-2xx final response which
>    terminates one or more early dialogs and the proxy does not intend to
>    forward the final response immediately (due to the rules for a
>    forking proxy), and the UAC has indicated support of the 199 response
>    code, the forking proxy MUST send a 199 provisional response, for
>    each associated early dialog that it can associate with the final
>    response, upstream towards the sender of the associated request.  The
>    199 provisional response MUST contain a To header tag parameter,
>    which identifies the early dialog that has been terminated.

>This still seems to require sending a 199 even if a 199 was previously 
>received and forwarded. IMO the proxy should never send a 199 if one was 
>previously received and forwarded for the same dialog. Keeping record of 
>that should be a requirement for any proxy that intends to send a 199.

Yes, I was thinking about the same thing. Having two 199s sent (one by the forking proxy, and one by the UAS) is not a good thing.



>    Since all SIP entities involved in a session setup do not necessarily
>    support the specific meaning of the 199 Early Dialog Terminated
>    provisional response, the sender of the response MUST be prepared to
>    receive SIP requests and responses associated with the dialog for
>    which the 199 response was sent (a proxy may receive SIP messages
>    from either direction).  If such request is received, and the
>    receiver maintains state of the dialogs, the receiver MUST reply to
>    such requests with a 481 final response.  A UAC that receives a 199
>    response for an early dialog MUST NOT send any further requests on
>    that dialog, except for requests which acknowledge reliable
>    responses.

>I'm dubious of requiring, or even expecting or allowing, proxies to 
>generate 481 responses. For instance, the UAC is still permitted to send 
>PRACKs, and the proxies had better forward them. So I think it would be 
>best for a proxy to always forward requests even if it thinks the dialog 
>has ceased to exist.

Yes. I was thinking of an UAS only, so I will clarify that this does not apply to proxies.



>    NOTE: According to [RFC3262] and [RFC3264], if the INVITE request did
>    not contain an SPD offer, the first relaible response (provisonal or
>    final) MUST contain an SDP offer.  However, since 199 is only sent on
>    established early dialog, it will never be the first response sent.
>
>IMO a better rationale here is that the 199 response is not sent 
>reliably, and so isn't obligated to carry the offer. I think the above 
>logic is weaker and questionable - an early dialog can be established 
without sending a reliable response. And I *think* a 199 can still be 
>used in that case.
>
>I guess the UAS is permitted to send a reliable 199, but it would be 
>sufficient to say that it must not do so if that would obligate it to 
>include an offer. Better yet, lets just say that 199 should *never* be 
>sent reliably.

I have no problem saying that. But, again, I don't think there are cases where you would be obligated  to include an offer/answer in 199, because you have already sent at least one 18x.

Of course, one use-case is when the UAS first sends a 18x unreliably, and then send a 199 reliably. In this case, if the INVITE didn't contain an offer, the 199 would have to contain one, since it's the first RELIABLE provisional response sent.

But, I have no problem saying that 199 must not be sent reliably (not even by a UAS), if people are ok with that.



>    This section registers a new SIP response code, 199.  The required
>    information for this registration, as specified in RFC 3261, is:
>
>I have mixed feelings about using "199" as the option-tag. It is 
>syntactically valid, but using an all-numeric token bothers me. It could 
>be something like "use199". But if nobody else is bothered by a numeric 
>token I can live with it.

We can use another value, if someone comes up with something more sexy than "199" :)

Regards,

Christer





Christer Holmberg wrote:
> Hi,
> 
> Based on a large number of good comments and suggestions off-line I have
> produced and submitted a new version (-01) of the draft-ietf-sip-199
> draft.
> 
> Until available, it can also be found at:
> 
> http://users.piuha.net/cholmber/drafts/draft-ietf-sip-199-01.txt
> 
> Some work is still needed on the security section.
> 
> I also realized that, in the reference section, I still refer to the
> dialog-usage draft document, eventhough it became an RFC.
> 
> Regards,
> 
> Christer
> 
> _______________________________________________
> Sip mailing list  https://www.ietf.org/mailman/listinfo/sip
> This list is for NEW development of the core SIP Protocol
> Use sip-implementors@cs.columbia.edu for questions on current sip
> Use sipping@ietf.org for new developments on the application of sip
> 

_______________________________________________
Sip mailing list  https://www.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use sip-implementors@cs.columbia.edu for questions on current sip
Use sipping@ietf.org for new developments on the application of sip