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)]

Christer Holmberg <christer.holmberg@ericsson.com> Wed, 23 May 2018 04:37 UTC

Return-Path: <christer.holmberg@ericsson.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 69F2A12DA08 for <mmusic@ietfa.amsl.com>; Tue, 22 May 2018 21:37:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.311
X-Spam-Level:
X-Spam-Status: No, score=-4.311 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.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 E23vPzN7_b8I for <mmusic@ietfa.amsl.com>; Tue, 22 May 2018 21:37:37 -0700 (PDT)
Received: from sesbmg22.ericsson.net (sesbmg22.ericsson.net [193.180.251.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 179FB1241F3 for <mmusic@ietf.org>; Tue, 22 May 2018 21:37:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; d=ericsson.com; s=mailgw201801; c=relaxed/simple; q=dns/txt; i=@ericsson.com; t=1527050255; h=From:Sender:Reply-To:Subject:Date:Message-ID:To:CC:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=QUDYdL+8uKl1c+vQ3belTKgJ3XJea0fzzb20c7m9N1c=; b=MB1id01ay+zNpFAgWFMNZey1C4tSc4SRogLKdq9o4eNMoxoL5rnEmELAuEAmXQCY uJXzAp1wqEUQDWawR784yE6erJWCqMONJGbenN6uWrOwbH99rJAMjXqjCGR4z+Of Ha+ftkYdAuPM1AMtN99eIAvgVDSi0j0eIJPfRXBP68E=;
X-AuditID: c1b4fb30-561ff700000065fb-62-5b04f00e7581
Received: from ESESSHC006.ericsson.se (Unknown_Domain [153.88.183.36]) by sesbmg22.ericsson.net (Symantec Mail Security) with SMTP id 88.EC.26107.E00F40B5; Wed, 23 May 2018 06:37:35 +0200 (CEST)
Received: from ESESSMB109.ericsson.se ([169.254.9.29]) by ESESSHC006.ericsson.se ([153.88.183.36]) with mapi id 14.03.0382.000; Wed, 23 May 2018 06:37:34 +0200
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: Ben Campbell <ben@nostrum.com>, Flemming Andreasen <fandreas@cisco.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>
Thread-Topic: Offer/Answer sections in SDP extension documents [Re: Eric Rescorla's No Objection on draft-ietf-mmusic-sdp-bundle-negotiation-51: (with COMMENT)]
Thread-Index: AQHT8dc2SaLaoceg7UuV0nFTRjjSX6Q8EGeAgACqIQA=
Date: Wed, 23 May 2018 04:37:34 +0000
Message-ID: <7594FB04B1934943A5C02806D1A2204B72F000B4@ESESSMB109.ericsson.se>
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>
In-Reply-To: <BF092866-6D2E-4832-9422-F22217E5D092@nostrum.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [153.88.183.164]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrCIsWRmVeSWpSXmKPExsUyM2K7ii7/B5Zog7t9TBZ7/i5it5jfeZrd Yvqsd2wWK16fY7d4f0HXYsaficwW53euZ7KYuvwxiwOHx5TfG1k9liz5yeQxa+cTFo/Jj9uY A1iiuGxSUnMyy1KL9O0SuDL+LF7JWPAmtuLqvinMDYw7orsYOTgkBEwkns8T6WLk4hASOMIo cW/dGVYIZzGjxIZHu5hAitgELCS6/2l3MXJyiAjkSBw+tBGshlngJ6PE4kXb2EAcYZCG3xMm sIM4IgJLGCXenbnNBNFiJXHo3z9WEJtFQFXiTucOsDivgK/E0bV3mSDWrWaT6P74FCzBKWAv 8frkAxYQm1FATOL7qTVgcWYBcYlbT+aD2RICAhJL9pxnhrBFJV4+hlggIaAkcfbLFDaQs5kF NCXW79KHaFWUmNL9kB1ir6DEyZlPWCYwis5CMnUWQscsJB2zkHQsYGRZxShanFqclJtuZKSX WpSZXFycn6eXl1qyiREYdwe3/DbYwfjyueMhRgEORiUe3tfPWKKFWBPLiitzDzFKcDArifB+ usQULcSbklhZlVqUH19UmpNafIhRmoNFSZzXwm9zlJBAemJJanZqakFqEUyWiYNTqoGxWUbo DNsD8SWp35dsk2ZaGqB09F1523H7cEWGgN2drnffPzFaGsx5MuSeYvz5ON0+nY2z1QSalHep Xcr8vHJP1a4n8eueGn3ouCh8477g8YslSx1EDD808J7+/9owwyRm2usC2fwbVhr3ysMec/25 +Of4JE1JM5PeSeXRmh92r9qxWz7a595SJZbijERDLeai4kQAAKIkF7cCAAA=
Archived-At: <https://mailarchive.ietf.org/arch/msg/mmusic/fDltW-fFng4hQlrlGBa-38Np-E4>
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 04:37:41 -0000

Hi,

I am happy with the suggested way forward, and will create a PR where I try to implement it.

Having said that, what do we do with other extensions that are still in the WGCL/IESG? For example, RTCWEB defines the SDP 'identity' attribute, and I have commented that the O/A procedures (together with some other clarifications) are needed for that. Another example is BFCPbis, where we are about to request publication for the 4583bis draft.

Regards,

Christer

-----Original Message-----
From: Ben Campbell [mailto:ben@nostrum.com] 
Sent: 22 May 2018 22:24
To: Flemming Andreasen <fandreas@cisco.com>; Christer Holmberg <christer.holmberg@ericsson.com>; Adam Roach <adam@nostrum.com>
Cc: 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
Subject: Re: Offer/Answer sections in SDP extension documents [Re: Eric Rescorla's No Objection on draft-ietf-mmusic-sdp-bundle-negotiation-51: (with COMMENT)]

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
>>>> 
>>>> 
>