Re: [rtcweb] JSEP: codecs in answer: MUST vs. MAY

Justin Uberti <juberti@google.com> Wed, 25 October 2017 04:48 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 9A11713B0F4 for <rtcweb@ietfa.amsl.com>; Tue, 24 Oct 2017 21:48:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 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_NONE=-0.0001, SPF_PASS=-0.001] 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 APBPdr_SQQ78 for <rtcweb@ietfa.amsl.com>; Tue, 24 Oct 2017 21:48:14 -0700 (PDT)
Received: from mail-ua0-x236.google.com (mail-ua0-x236.google.com [IPv6:2607:f8b0:400c:c08::236]) (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 0FDF413AC9E for <rtcweb@ietf.org>; Tue, 24 Oct 2017 21:48:14 -0700 (PDT)
Received: by mail-ua0-x236.google.com with SMTP id n38so16897391uai.11 for <rtcweb@ietf.org>; Tue, 24 Oct 2017 21:48:14 -0700 (PDT)
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=7n0Uas5utjNkPf8HpUwOljW96X/RnzdgnED8ZqhgXCE=; b=GD6Rns66BoFHsjMHb77TKlKPH0BmH605TId8hlXGEJvxdHawiDlYnbGEGpns+WPVW6 6MbkL4RYMAe6l23UAeD3+IJFxgNsacLRwPcsidZiDYGFIlKVp/B0GchmzCGCV49ycUD5 Fkke0PktBUbZwtv3itgQB9l5oBS/ipYMjFd2ULYvYjgdhzoJUgSuqK88oWzuDAgUOUWm 0xLkXu5+2+vPD+KL2M59n3UKGPvUb2QXqkwAglUtDn68kMu18XKGEGfA6AF0aiAeTzh/ X4LdcOCfQImDN+MJI58anF7ePmajmvn0wkQfdY6/LIWyVhh4ycIrSxOSF/DgPFBHXvRj juxw==
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=7n0Uas5utjNkPf8HpUwOljW96X/RnzdgnED8ZqhgXCE=; b=blZO0wA1OQoq+trqSJQT/TCtAXslgietYIiuuHYK1Dx5a2FM1QN6/23RJUd8XTAJhh OA0uMS1cud2OYbmMKHaO8N+6QgNe+tIxLKJub/zCseRTRasbBRxmORZPuEG/CuAyeJS/ ncQiQiiz0r+h16w6Y6jKt0qzybkGEE0pR1k/rihAWfd85XOpFVYxyd2chlSFvvpffV5e xZdUPcHop9HUxeO0Vs2Nv/1zauYm9+1+zyozsKt5MzovDxpuYvHYltafgMkzqMq6FScD 10iO4VDeCDamccciAUOGx7BBMlZ2j7fss8lft9Gi28sXqiJQQXx7O0uCnPzGuykTo+Rq plxA==
X-Gm-Message-State: AMCzsaV9NARbIEG/f89a809QIYwMUSPEibmjQKO0ukbP/Y/679a+9mOc ZE+ojb0yXL2q7ED1Bdw8z/E6jJhLTy0CQLE1XIV3nQ==
X-Google-Smtp-Source: ABhQp+QC20cYKQCgHNT2SrhbNkpWGKqRGa1+XaCpyXGF8FbnL4xS/n1AXAgH2mUwDRn6vsGA/UVx9NkMRjtuXsvW1rU=
X-Received: by 10.176.7.73 with SMTP id h67mr822770uah.109.1508906892828; Tue, 24 Oct 2017 21:48:12 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.31.174.215 with HTTP; Tue, 24 Oct 2017 21:47:52 -0700 (PDT)
In-Reply-To: <CA+9kkMDJEggHar5JbBb9GaNMBsZjgvO0F2VN5UVObv-3VTzE4w@mail.gmail.com>
References: <4CB5EF91-8CB2-433F-85E9-A86140CECC62@vidyo.com> <CA+9kkMDJEggHar5JbBb9GaNMBsZjgvO0F2VN5UVObv-3VTzE4w@mail.gmail.com>
From: Justin Uberti <juberti@google.com>
Date: Tue, 24 Oct 2017 21:47:52 -0700
Message-ID: <CAOJ7v-2FEpidRsFf3Km5XjW5Jj7gXC2h9Pcy_GWOqb_P7jTHQw@mail.gmail.com>
To: Ted Hardie <ted.ietf@gmail.com>
Cc: Jonathan Lennox <jonathan@vidyo.com>, "rtcweb@ietf.org" <rtcweb@ietf.org>
Content-Type: multipart/alternative; boundary="94eb2c123fe85910ba055c57c395"
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtcweb/B03qNrMY_B7F2xaLTnErO3GoRN8>
Subject: Re: [rtcweb] JSEP: codecs in answer: MUST vs. MAY
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: Wed, 25 Oct 2017 04:48:16 -0000

Ted's interpretation is correct - this text is intentionally reiterating
3264's point that it is permissible to respond with codecs that weren't
offered, as this has been a frequent misunderstanding.

One option to clarify this could be to replace the "MAY" with "is permitted
to".



On Tue, Oct 24, 2017 at 1:36 PM, Ted Hardie <ted.ietf@gmail.com> wrote:

> I read this slightly differently, see below.
>
> On Tue, Oct 24, 2017 at 12:58 PM, Jonathan Lennox <jonathan@vidyo.com>
> wrote:
>
>> JSEP (section 5.3.1) seems to be inconsistent about how whether
>> locally-supported codecs that weren’t listed in a remote offer MUST, or
>> MAY, be included in an answer:
>>
>>    o  If codec preferences have been set for the associated transceiver,
>>       media formats MUST be generated in the corresponding order,
>>       regardless of what was offered, and MUST exclude any codecs not
>>       present in the codec preferences.
>>
>>
> This is what you do if codec preferences are set (keep the order, and
> don't add new ones)
>
>
>>    o  Otherwise, the media formats on the m= line MUST be generated in
>>       the same order as those offered in the current remote description,
>>       excluding any currently unsupported formats.  Any currently
>>       available media formats that are not present in the current remote
>>       description MUST be added after all existing formats.
>>
>>
> This is what you do if codec preferences are not set (keep the order, add
> any new ones to the end)
>
>>    o  In either case, the media formats in the answer MUST include at
>>       least one format that is present in the offer, but MAY include
>>       formats that are locally supported but not present in the offer,
>>       as mentioned in [RFC3264], Section 6.1 <https://tools.ietf.org/html/rfc3264#section-6.1>.  If no common format
>>       exists, the m= section is rejected as described above.
>>
>>
>>
> In either case, if you don't have at least one codec that matches, you
> reject the m= section (don't add any new ones).
>
> I think the MAY there from RFC 3264 permits the behavior in the  "if not
> codec preferences are set" behavior branch, but doesn't require it, which
> is why there can be a branch like the one where codec preferences are set
> and they are not sent.
>
>
>> The first two paragraphs certainly seem to indicate that these codecs
>> MUST be included in the answer; however, the third paragraph suddenly
>> weakens this to a MAY.
>>
>> Is the intent of the third paragraph simply to restate RFC 3264’s loose
>> requirements, whereas the first two are JSEP’s more binding ones?  If so, I
>> think this should be stated more clearly, otherwise the required behavior
>> is unclear.
>>
>> _
>
>
> So I don't personally see an inconsistency in this, but if you have other
> language, please suggest it.  We're already in IESG evaluation, but it
> might be a friendly amendment by Adam or someone else.
>
> regards,
>
> Ted
>
>
>> ______________________________________________
>> rtcweb mailing list
>> rtcweb@ietf.org
>> https://www.ietf.org/mailman/listinfo/rtcweb
>>
>>
>
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb
>
>