Re: [MMUSIC] Offer/Answer sections in SDP extension documents [Re: Eric Rescorla's No Objection on draft-ietf-mmusic-sdp-bundle-negotiation-51: (with COMMENT)]

Flemming Andreasen <fandreas@cisco.com> Wed, 23 May 2018 02:19 UTC

Return-Path: <fandreas@cisco.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6799212D965; Tue, 22 May 2018 19:19:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.51
X-Spam-Level:
X-Spam-Status: No, score=-14.51 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id x7qzy-AjmlVh; Tue, 22 May 2018 19:19:47 -0700 (PDT)
Received: from rcdn-iport-8.cisco.com (rcdn-iport-8.cisco.com [173.37.86.79]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C523E129C6D; Tue, 22 May 2018 19:19:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=17275; q=dns/txt; s=iport; t=1527041986; x=1528251586; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=Sn1ucxw0CuQk/3NYFCkpulgHBQhs/NK0u0cRlVHC8zM=; b=HOBSiLIjRpt8jB3wesbG1z41Ql4PhVWKTr92dAyyGR+01wDi3tn60JHs /O10+jpKJimMFwTpVtlqxpZqS3ZHfd3DQ4LD3V+20Uao8ORirzIOl8h1W qS9TFQ57l5Njew58ZLQLdGQV2BJW3Ua6r0WmgaxFMVNqKJ87hTrydkpNQ U=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0D/AQCczgRb/4cNJK1cGQEBAQEBAQEBAQEBAQcBAQEBAYNDgV8og3eUeYFQCCF1Go4/hQuBZAuEbAKCISE4FAECAQEBAQEBAmwohSgBAQEDASNICQUQCxgVDgcCAlcGAQwGAgEBgx6BdAUIqhWCHB+EOYNqgXyINYFUP4EPJAyCKAcuhC6BBIJBgjQgAocakTUJjlEGAoE1g26CPSKEepB6gSUzISaBLE0jFYJ+giAXEY4iIzCOJAEB
X-IronPort-AV: E=Sophos;i="5.49,431,1520899200"; d="scan'208,217";a="397447168"
Received: from alln-core-2.cisco.com ([173.36.13.135]) by rcdn-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 May 2018 02:19:43 +0000
Received: from [10.118.10.21] (rtp-fandreas-2-8814.cisco.com [10.118.10.21]) by alln-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id w4N2JgeD004590; Wed, 23 May 2018 02:19:43 GMT
To: Ben Campbell <ben@nostrum.com>, Christer Holmberg <christer.holmberg@ericsson.com>, Adam Roach <adam@nostrum.com>
Cc: "mmusic-chairs@ietf.org" <mmusic-chairs@ietf.org>, Eric Rescorla <ekr@rtfm.com>, mmusic WG <mmusic@ietf.org>, The IESG <iesg@ietf.org>, "draft-ietf-mmusic-sdp-bundle-negotiation@ietf.org" <draft-ietf-mmusic-sdp-bundle-negotiation@ietf.org>
References: <152676110260.28001.7412898846338225219.idtracker@ietfa.amsl.com> <CABcZeBN43yTCK+XbLLih_xeaBwsGVMa6XcPQkrcyQjzQHfzNuQ@mail.gmail.com> <CABcZeBO5b4OMaV5z-XhQPVOUpX6eB_GZKPu7b9Ti6MOCwsJ5xQ@mail.gmail.com> <7594FB04B1934943A5C02806D1A2204B72EF825B@ESESSMB109.ericsson.se> <CABcZeBM5Vqmw-txmTmrcOXndwsW=20oUvXywdeLR9OMBPFp1cQ@mail.gmail.com> <701d1e42-fcb9-a849-2865-9f1a71176a50@nostrum.com> <7594FB04B1934943A5C02806D1A2204B72EF9591@ESESSMB109.ericsson.se> <d6143d6e-7177-36dc-76ea-b85e8b519724@nostrum.com> <7594FB04B1934943A5C02806D1A2204B72EF9626@ESESSMB109.ericsson.se> <EA1B8B7B-B908-422E-8D75-ECABF47E8690@ericsson.com> <B40AF706-A3E5-44F8-988B-93CA6BCB09D8@nostrum.com> <816b0d38-66d8-262d-f59e-f73e76d23903@cisco.com> <BF092866-6D2E-4832-9422-F22217E5D092@nostrum.com>
From: Flemming Andreasen <fandreas@cisco.com>
Message-ID: <77313712-e8b4-91a8-d573-a83d1bb91ba4@cisco.com>
Date: Tue, 22 May 2018 22:19:42 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Thunderbird/52.8.0
MIME-Version: 1.0
In-Reply-To: <BF092866-6D2E-4832-9422-F22217E5D092@nostrum.com>
Content-Type: multipart/alternative; boundary="------------A99B4CB0A8403464473A7937"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/mmusic/Nh-g75RjsWRzQwffxdby7yxSD64>
Subject: Re: [MMUSIC] Offer/Answer sections in SDP extension documents [Re: Eric Rescorla's No Objection on draft-ietf-mmusic-sdp-bundle-negotiation-51: (with COMMENT)]
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 May 2018 02:19:50 -0000

This seems like a very reasonable way forward to me.

Thanks

-- Flemming

On 5/22/18 4:23 PM, Ben Campbell wrote:
> Adam and I (with AD hats on)  talked about this offline. Here’s our conclusions:
>
> While I’m not overly happy about the conflation of the “initial SDP offer” section with “Initial activation of an extension” in general, I recognize we’ve been doing it that way. We might should discuss changing that for future drafts, but it’s not reasonable to force such a change on bundle this late in the process.
>
> However, we think that implementors are too used to thinking of “initial offer” to mean “initial SDP offer” for a re-definition to stick in their minds. Especially not a one-time redefinition in a terminology section that many people will skip over. Therefore, we ask for the following changes:
>
> 1) Change the definition in the term section from “initial offer” to “initial bundle offer”. Do a human-assisted search and replace to change instances of “initial offer” to “initial bundle offer” where the change makes sense.
>
> 2) Add a sentence early in §7.2 to the effect of the following:
>
> “The procedures in this section apply to the first SDP offer that contains a bundle group. This could occur in an initial SDP offer or a subsequent SDP offer.”
>
> (I don’t think we need to add anything similar to §7.3 or §7.5. These sections already have language that, when taken with the proposed change to §7.2, seem to reasonably describe the intent”.
>
> I don’t think these requires a restructure, nor should they take very long to accomplish.
>
> Thoughts?
>
> Thanks!
>
> Ben.
>
>> On May 22, 2018, at 9:14 AM, Flemming Andreasen <fandreas@cisco.com> wrote:
>>
>> In the past, we have had a lot of trouble getting people to write clear offer/answer procedures for the SDP extensions they defined. In an effort to put some structure around that, we started insisting on people following RFC 3264, which defines the following stages:
>>
>> 1. Generating the Initial Offer
>> 2. Generating the Answer
>> 3. Offerer Processing of the Answer
>> 4. Modifying the Session
>>
>> Clearly, any new SDP extensions MUST define how the extension is to be used with these well-defined RFC 3264 procedures.
>>
>> Now, the argument here seems to be as to whether the "Modifying the Session" needs to get into a further level of granularity, e.g.
>> 4a. Modifying the Session when the Extension was *not* used previously
>> 4a1. Sending a Subsequent Offer with the Extension
>> 4a2. Generating the Subsequent Answer to Subsequent Offer with the Extension
>> 4a3. Offerer Processing of Subsequent Answer after Subsequent Offer with the Extension
>>
>> If we need that, then we also need:
>> 4b. Modifying the Session when the extension *was* used previously.
>> 4b1. Sending a  Subsequent Offer without the Extension (assumed here to be different from 4 above, which would keep using the extension)
>> 4b2. Generating the Subsequent Answer to Subsequent Offer without the Extension
>> 4b3. Offerer Processing of Subsequent Answer after Subsequent Offer without the Extension.
>>
>> We have shied away from requiring this structure in the documents because it becomes rather cumbersome, and in practice, it doesn't seem to be needed. Instead, the traditional RFC 3264 sections have generally been written in way that accommodates both the formal meaning of *initial* offer/answer exchange, as well as initial from the point of view of covering the first time the extension is used. In some cases, explicit caveats have been included to point this out (as has been done in bundle), and in others it has not. We have a number of published RFCs and IESG approved documents in MISSREF state that all follow this approach, and I cannot recall this resulting in any concerns from either the WG, the IESG, or implementers.
>>
>> In summary, my position remains what it has been for a long time, which is to follow the RFC 3264 structure outlined above, with proper clarifications in each of the resulting sections to account for the variations outlined in 4a and 4b.
>>
>> It's not clear to me that the current bundle document doesn't already achieve that, but if people feel otherwise, I would ask for specific text suggestions that could address that while keeping in-line with long-standing document structure MMUSIC has required for SDP extensions.
>>
>> Thanks
>>
>> -- Flemming (as WG co-chair and Individual)
>>
>> On 5/21/18 10:51 PM, Ben Campbell wrote:
>>>> On May 21, 2018, at 11:23 AM, Christer Holmberg <christer.holmberg@ericsson.com>
>>>>   wrote:
>>>>
>>>> .....and, to use an example you may be more familiar with: RID.
>>>>
>>>> Are you saying that the “initial offer” procedures can only be used for the initial offer of the SIP session, meaning I can’t introduce RID later in the session (to an existing and/or new m- line)? If so, I think that should be explicitly stated in the draft.
>>>>
>>>>
>>> *** MMUSIC Chairs and other SDP experts: Please feel free to jump in with your opinion about how we should expect the “Offer/answer considerations” sections be written in SDP extension RFCs. ***
>>>
>>> I will let Adam confirm his intent, but I read the “initial SDP offer” section as talking about the initial _SDP_ offer”. It says the initial offer _MAY_ contain one or more “a=rid” lines. The "Modifying the Session” section then goes on to say that such an offer MAY change the number of RID lines in use. I argue that going from zero to one or more RID line counts as changing the number of RID lines in use.
>>>
>>> I do not dispute that there may be some SDP extension RFCs that are written as you suggest. I would have to go back and re-read a bunch of documents to reasonably comment on how many. But picking a random target:
>>>
>>> draft-ietf-mmusic-dtls-sdp-32 seems ambiguous on this point. The “Generating initial SDP offer” section is written from the assumption the initial offer includes DTLS-SRTP. But the “modifying a session” section talks about putting a new offer for DTLS-SRTP in a subsequent SDP offer. Taken as a whole, this seems more in the vein of “initial SDP offer” is really the initial SDP offer, and it just (reasonably) neglected to describe the case where the initial offer does not include DTLS-SRTP.
>>>
>>> In the case of BUNDLE, I don’t think we are talking about a complete restructure. Just recognize the difference between invoking bundle in the initial SDP offer vs subsequent SDP offers. That probably means adding a few sentences to the “Initial SDP offer” and “Modifying the Session” sections.
>>>
>>>
>>> Ben.
>>>
>>>
>>>> Regards,
>>>>
>>>> Christer
>>>>
>>>>
>>>> Sent from my iPhone
>>>>
>>>> On 21 May 2018, at 18.37, Christer Holmberg
>>>> <christer.holmberg@ericsson.com>
>>>>   wrote:
>>>>
>>>>
>>>>> Hi,
>>>>>
>>>>>
>>>>>>> It is also important to remember that this affects virtually every SDP attribute we define, >> unless there are cases where "initial offer" always means the initial offer of a session, i.e., >> it is not possible to introduce an attribute later in a session.
>>>>>>>
>>>>>> I'm not following your logic here. Can you give an example?
>>>>>>
>>>>> Assume I establish a session, with audio and video.
>>>>>
>>>>> The initial offer will contain the m- lines, and associated SDP attributes, for audio and video.
>>>>>
>>>>> Later in the session, I send a subsequent offer, adding a BFCP m- line.
>>>>>
>>>>> When setting the SDP attributes associated with the BFCP m- line, I will now use the "initial offer" procedures for those attributes, because it is the initial offer for those attributes (while a subsequent offer for the SIP session).
>>>>>
>>>>> Regards,
>>>>>
>>>>> Christer
>>>>>
>>>>>