Re: [rtcweb] Ben Campbell's Yes on draft-ietf-rtcweb-jsep-24: (with COMMENT)

Justin Uberti <juberti@google.com> Fri, 22 December 2017 02:27 UTC

Return-Path: <juberti@google.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 437A612D864 for <rtcweb@ietfa.amsl.com>; Thu, 21 Dec 2017 18:27:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.009
X-Spam-Level:
X-Spam-Status: No, score=-2.009 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, NORMAL_HTTP_TO_IP=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.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 uqaXX9cwcMhk for <rtcweb@ietfa.amsl.com>; Thu, 21 Dec 2017 18:27:04 -0800 (PST)
Received: from mail-ua0-x234.google.com (mail-ua0-x234.google.com [IPv6:2607:f8b0:400c:c08::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 88A0E12D7F9 for <rtcweb@ietf.org>; Thu, 21 Dec 2017 18:27:04 -0800 (PST)
Received: by mail-ua0-x234.google.com with SMTP id l36so18821000uae.4 for <rtcweb@ietf.org>; Thu, 21 Dec 2017 18:27:04 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=wkd6s05o9c0ZEralbbqbTjNjiYNq+NsRhozITUgfb/A=; b=Inq4Y6eKcpNszyY/b/Tl98qnsT694mXhr8zIqB8lkj5AhJwVmHDjKOLpMC3DYTrHRI /JN/r9uW0v6ecdB0YoGTnSFwa8nPmB/yDpfMnCBkek9tLMTLdShfo8jAGIlD4WZb4RHl 108V/hgHM6dW+0FV2gURnrADTXd44RNd1hbHqmi+DONHCD+CPqrRAztIkZ7+xDCfZMcC bl7vR1+8HqdZgTRjoU8cLYRw58JKUU5KvSkghgW9vIO5quBtZCDmigXxr1vGhZFQ0yU7 vAbyVthSRUsZWIs5nXKrq246qCwsL9Nde4GvU2plPp6NlGk0aNMLt6LT8unt1e8FhSg8 PlKw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=wkd6s05o9c0ZEralbbqbTjNjiYNq+NsRhozITUgfb/A=; b=foknoq2RWOGP9E7dUfyzoAmoHzDHmv7PwXsATTcygevs2f8T7LAe1ioQ5jiInUuwlB ohOSfu3RgPzOia2smElhZrnlCXdevSpyDOOvto+1alFO3/h3QZiQZwsilANYMrCSgA6c VdgfnFwIO5XD8wpcsOluzmfJDfzNdUqO7U0f6d6sMSTnBx+HMAM9t/ovr5lPhBQti6A5 9eFvJ0H9rty88BbStLboXmUCB/76OSSkAcNfcL7cRs4OdxGUyEktUYWwWZet2TZ+lEW0 isqm6o8FDGkzVdujhaAwGCa12n0gNnRHQ2C+tnCfG3i6I9J1BEEra2Ln+1hHutEPMI+j qK3w==
X-Gm-Message-State: AKGB3mLnmeOHgZABVILQZJNVvpq6IUW7IwuLdJ9KLx9HxfmDJnEtIFKU 7mpkqFlJb4r+1zHGld711YHVzktgFfrU1CGdO5sw1Q==
X-Google-Smtp-Source: ACJfBos6I+bn4r1a0lM/Lk4LvnXLB5ePCZ8UjSvfiGWk8LNaV1D/OnuYddK+6vAlXuhQ1RGmCGvoKydugdQhLecC2nQ=
X-Received: by 10.159.51.2 with SMTP id o2mr14043662uab.194.1513909623106; Thu, 21 Dec 2017 18:27:03 -0800 (PST)
MIME-Version: 1.0
Received: by 10.31.178.204 with HTTP; Thu, 21 Dec 2017 18:26:42 -0800 (PST)
In-Reply-To: <151305054509.20498.9053592362460423618.idtracker@ietfa.amsl.com>
References: <151305054509.20498.9053592362460423618.idtracker@ietfa.amsl.com>
From: Justin Uberti <juberti@google.com>
Date: Thu, 21 Dec 2017 18:26:42 -0800
Message-ID: <CAOJ7v-3gFjSWfhb2exbOQCMqvFrWsu1myTLEr771e70BhnELdA@mail.gmail.com>
To: Ben Campbell <ben@nostrum.com>
Cc: The IESG <iesg@ietf.org>, draft-ietf-rtcweb-jsep@ietf.org, RTCWeb IETF <rtcweb@ietf.org>, rtcweb-chairs@ietf.org
Content-Type: multipart/alternative; boundary="f403045dcc9c4f72610560e48d3f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtcweb/SKklo9a6o2FE1B_6WH6ZZqvbGrA>
Subject: Re: [rtcweb] Ben Campbell's Yes on draft-ietf-rtcweb-jsep-24: (with COMMENT)
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtcweb/>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 22 Dec 2017 02:27:07 -0000

Thanks for the detailed comments, will send a full response shortly.

On Mon, Dec 11, 2017 at 7:49 PM, Ben Campbell <ben@nostrum.com> wrote:

> Ben Campbell has entered the following ballot position for
> draft-ietf-rtcweb-jsep-24: Yes
>
> When responding, please keep the subject line intact and reply to all
> email addresses included in the To and CC lines. (Feel free to cut this
> introductory paragraph, however.)
>
>
> Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
> for more information about IESG DISCUSS and COMMENT positions.
>
>
> The document, along with other ballot positions, can be found here:
> https://datatracker.ietf.org/doc/draft-ietf-rtcweb-jsep/
>
>
>
> ----------------------------------------------------------------------
> COMMENT:
> ----------------------------------------------------------------------
>
> I'm balloting "yes", but I have some minor comments and nits:
>
> Substantive:
>
> - General:
> I still find the edges around where SDP is and isn't required a bit vague.
> Section 3.3 says that the JSEP implementation internal representation is
> SDP.
> While I have trouble imagining implementing this otherwise, do we really
> mean
> to mandate the internals? Is there an assumption that said internal
> representation is _serialized_ SDP vs some abstract internal
> representation?
>
> Section 3.1 says that the signaling model is not specified. Is there an
> implicit assumption that, however things are signaled, the signaling
> process
> moves around serialized SDP? Or is it envisioned that one could write an
> application without serialized SDP occurring anywhere above the API?
>
> -5, throughout: There are a number of normative keywords used in
> constructions
> like "... MUST foo, as described in RFCXXX". That construction is ambiguous
> about whether it defines a normative requirement to do something, and the
> doing
> of that something is described in the RFC, or if describes the referenced
> RFC
> as defining the MUST.
>
> In general, it's best to avoid using 2119/8174 keywords to talk about
> external
> requirements, except as a direct quote. I think this is especially true
> here
> given the interdependencies between drafts in cluster 238. If in the
> future we
> update a dependency to change a normative requirement, we risk creating
> conflicts, and we make it unclear which text is authoritative.
>
> -5.1.1: I think the operative requirement is "MUST support" rather than
> "MUST
> indicate support". (While indication may also be required, it seems a
> consequence of "MUST support".)
>
> -5.1.2: " Any profile in the offer matching one of the following MUST be
> accepted:" Isn't the real requirement that any of the following must be
> interpreted the same, or otherwise in some specified way? I assume there
> may be
> completely unrelated reasons to reject an m-section, but the "MUST be
> accepted"
> language seems to overrule that.
>
> -5.4: "The SDP returned from createOffer or createAnswer MUST NOT be
> changed
>    before passing it to setLocalDescription."
> Is that a requirement on the JSEP implementation, or the javascript
> application? If the latter, is it appropriate to put normative
> requirements on
> the application? It seems like it would be better to normatively state the
> JSEP
> implementations's behavior when the application does something incorrect.
> (Which seems to be done further down the page.)
>
> -5.7: " The effect of rollback MUST be the same regardless of whether
> setLocalDescription or setRemoteDescription is called." Does that mean if I
> call setLocalDescription, then rollback with a call to
> setRemoteDescription,
> _both_ are rolled back?
>
> -5.8.3: The MUSTs in this section seem to be putting requirements on the
> SDP
> being parsed. Shouldn't they instead describe the parser's behavior based
> on
> that SDP input? The correctness of the SDP being parsed seems beyond the
> control of the implementation.
>
> -8, second paragraph: When describing how the javascript is untrusted, it
> may
> be worth mentioning that it may have been downloaded from an untrusted
> source.
>
> Editorial and Nits:
>
> -1.1: Please expand ICE and MCU on the first mention.
> s/config/configuration
> Sentence starting with "Through its abstraction of signaling...": Should
> that
> say "Though it abstracts signaling..."
>
> -2: Please consider using the boilerplate from RFC 8174. There are a
> number of
> instances of lowercase versions of normative keywords.
>
> -3.2, paragraph 2: The MUST seems like a statement of fact.
>
> -3.4.1, 2nd paragraph: Please expand or explain "mid" on first mention.
> (It is
> explained 3.5.2.1)
>
> -3.5.1, last paragraph: Inconsistent capitalization: "MID"
>
> -3.5.2.1: Please expand (or define) "ufrag" on first mention.
>
> -3.6.1, first paragraph: is "intersect" the correct verb here? Missing
> conjunction in "hardware decoder capababilities, local policy".
>
> -3.6.2, 2nd paragraph: s/"may be producing"/"may produce"
>
> -4.1.2: Please expand LS on first mention. (I can guess from context.
> Please
> don't make me :-)  )
>
> - 4.1.6: s/"codec/RTP/RTCP"/"codec, RTC, or RTCP"
> "for each SDP line, the generation of the SDP will follow the process
> defined
> for generating an initial offer from the document that specifies the given
> SDP
> line." While I worked out what that means, I found "document" to be
> ambiguous.
> At first I interpreted it as the "SDP document" rather than "the RFC".
> (Note
> this occurs several times in subsequent sections.)
>
> -4.1.8, third paragraph: ""pranswer" indicates that a description should be
> parsed as an
>    answer, but not a final answer"
> I think it would be more clear to say "... parsed as a provisional answer,
> rather than a final answer".
>
> -5.2.1: Paragraph starting with: " Each m= section, provided it is not
> marked
> as bundle-only, MUST generate..." The m= section is not the real actor
> here, is
> it?
>
>
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb
>