[rtcweb] Is support for two-byte RTP header extensions mandatory?

Philipp Hancke <philipp.hancke@googlemail.com> Fri, 22 September 2023 07:42 UTC

Return-Path: <philipp.hancke@googlemail.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 9FA36C151077 for <rtcweb@ietfa.amsl.com>; Fri, 22 Sep 2023 00:42:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.104
X-Spam-Level:
X-Spam-Status: No, score=-7.104 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=googlemail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5CUE3-ziMprD for <rtcweb@ietfa.amsl.com>; Fri, 22 Sep 2023 00:42:43 -0700 (PDT)
Received: from mail-lf1-x132.google.com (mail-lf1-x132.google.com [IPv6:2a00:1450:4864:20::132]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 45D49C151065 for <rtcweb@ietf.org>; Fri, 22 Sep 2023 00:42:43 -0700 (PDT)
Received: by mail-lf1-x132.google.com with SMTP id 2adb3069b0e04-5033918c09eso2942230e87.2 for <rtcweb@ietf.org>; Fri, 22 Sep 2023 00:42:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1695368561; x=1695973361; darn=ietf.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=P5Y34zJ+9Y4JsZCC+zc64/zPmnZXAQ1UUI41q5RPIW0=; b=glkDb3jdGclszEqJMmU9/OEilRqhsnS5wtmklI2992rrHnOLdE0o6VquciWjN7T7hO fQiUP1c0lYeFzT/13mWsHMFudNcKpFCjlPZdgpQQTRl03Fnk7bYVtkdgX6+yaUX5HLXh vrNyM72Mb9rt46BRpmlvbvjo23Uo5Ohs6pzxMrd8oZPdkC8n6BV1hVljEZNBx58fpC9M uDnDheqDjBLnr6lfgnQubPmPRpLVanoD4L4MCeCBczzZYrcIzacEpItsQsGnLB2YPVMb 2J1lvo7Z872wQv9VCHbV7WEI8ktMNM+ctQZwDZZORdP7ZvY1E3Tn5e6NF8RaoSlXcaTv 1zvw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695368561; x=1695973361; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=P5Y34zJ+9Y4JsZCC+zc64/zPmnZXAQ1UUI41q5RPIW0=; b=Tn6at0JESsHOS3uDo4A4W7SmaJf/e+VToCNLyu+CQ5w4naV7BZSGomhZVU5K0PwLl6 dv4F9I99dp9HPhrWkaMjRxvVE3weaEk+ZxdXXyY6n4V23C/60SYeEWi4rUi/c+E/pc++ Q9rk6BQt7NGHFZR17qU9/eW5yfek3bpCQVPbi70KqgJISD5RTP0sAntpe8u0eGKx77Gw /PVtwl3MfN/1Oe5UQLi8hKzgd1xI+PDftVhmeTZEU14ybMemAUTnUhA5brInc4Mu8bLZ KvTkkuClOmWSLi08YqZ9kvalZTp43ltHcTpa0KjD6bzwXkhieh7A5dR94bzs38uAFyIF 1koQ==
X-Gm-Message-State: AOJu0YwkNurHimY0wYktZ4++Xt+MgB/WONIYDxNgBfsSl/irdRE1ly2Y LX4uxLlu/zmrLpS5MsTu989VVcSBcCMV0IKQqEoZln1r
X-Google-Smtp-Source: AGHT+IE6CnWYzmoBreN/633k6XfhWkMzNsKRlBfUq9Tw5dr8k/ApQHjBv/YsrtWXHTgpbbv8lGI5DyDrEy6cRS6B6xA=
X-Received: by 2002:a05:6512:3dac:b0:503:200f:47a9 with SMTP id k44-20020a0565123dac00b00503200f47a9mr8873329lfv.15.1695368561186; Fri, 22 Sep 2023 00:42:41 -0700 (PDT)
MIME-Version: 1.0
From: Philipp Hancke <philipp.hancke@googlemail.com>
Date: Fri, 22 Sep 2023 09:42:30 +0200
Message-ID: <CADxkKi++w_00__OL=C5JfW64gQ0u+jF81snJhQ5deK9KCpE1mg@mail.gmail.com>
To: rtcweb@ietf.org
Content-Type: multipart/alternative; boundary="000000000000da5ca00605edc041"
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtcweb/QRnWNuWzGuLRovWdHkodNP6VOgg>
Subject: [rtcweb] Is support for two-byte RTP header extensions mandatory?
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.39
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 Sep 2023 07:42:47 -0000

This spawned from a discussion with Harald Alvestand.

Neither
  https://www.rfc-editor.org/rfc/rfc5285.html
nor its successor
  https://www.rfc-editor.org/rfc/rfc8285
nor the RTP usage draft
  https://datatracker.ietf.org/doc/html/rfc8834#name-header-extensions
provide guidance on whether WebRTC mandates two byte header extensions and
how/if this is negotiated using offer-answer.
Nor is this negotiated as extmap-allow-mixed only implies support (if you
can mix one-byte and two-byte versions you must support both)

Another issue here is how an implementation that does not support two-byte
extensions should deal with an extension id 15
which is forbidden in the one-byte variant. Should offerers skip this id
when generating offers?

Firefox rejects ids greater than or equal to 15
  https://github.com/web-platform-tests/wpt/pull/41843
complaining libWebRTC does not support two-byte extensions (which it does).

libWebRTC-based browsers implement and can negotiate up to 16 extensions
these days (with some not enabled by default yet)
This is not a practical problem yet since some of those extensions are not
very useful when used together which means
most real-world scenarios need less than 15 extensions.

The path forward seems to agree that two-byte extensions are a thing and
cross fingers that implementations will continue to need less than 15
extensions for long enough to get Firefox fixed.

Thoughts?

Philipp