Re: [AVTCORE] Multiplexing in RTP over QUIC

Mathis Engelbart <mathis.engelbart@tum.de> Thu, 22 December 2022 10:14 UTC

Return-Path: <mathis.engelbart@tum.de>
X-Original-To: avt@ietfa.amsl.com
Delivered-To: avt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C9A77C14CE37 for <avt@ietfa.amsl.com>; Thu, 22 Dec 2022 02:14:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.398
X-Spam-Level:
X-Spam-Status: No, score=-4.398 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, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-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=tum.de
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 amuXBu7V3RzH for <avt@ietfa.amsl.com>; Thu, 22 Dec 2022 02:14:41 -0800 (PST)
Received: from postout2.mail.lrz.de (postout2.mail.lrz.de [IPv6:2001:4ca0:0:103::81bb:ff8a]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 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 6B94EC14CE36 for <avt@ietf.org>; Thu, 22 Dec 2022 02:14:40 -0800 (PST)
Received: from lxmhs52.srv.lrz.de (localhost [127.0.0.1]) by postout2.mail.lrz.de (Postfix) with ESMTP id 4Nd5lL6HMSzyTs; Thu, 22 Dec 2022 11:14:38 +0100 (CET)
Authentication-Results: postout.lrz.de (amavisd-new); dkim=pass (2048-bit key) reason="pass (just generated, assumed good)" header.d=tum.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tum.de; h= content-transfer-encoding:content-type:content-type:in-reply-to :from:from:references:content-language:subject:subject :user-agent:mime-version:date:date:message-id:received:received; s=tu-postout21; t=1671704078; bh=WqM13eqwgdvx0/zaKTos7nr1IHDRQl A4+r2fgbYMxgE=; b=SKC4/hs1Y/pQuXXBEh+RCvHWpE5vVQ0tNZeZ4OhRsoDTiO Pki+2yGB/r9sihd9IVuxX6csCbPjxYMzacLxEdcFkEu+LDLMC2g/ew+hCROJv/LG gFWDBj4zfI6BNheb+SSzk2K8/zCCcUuT8nC40236RNv5hOtVhA5K4XPf23EkDnOZ NqJKJAtaWaOGulSYT29ltWiTyKNXS8I0Vb4imUuWPi5YDbg8hBVpTuwMHe8HvRog 2UxwzEhjOskMfjbLhrsKAMK77tFTwqK36a/vUMWL74YR5pXu5bKsf3OA/azGMhZq NZ8fFD73x+rsdE5nNkGyiGwjr0t4aCenarxsJElQ==
X-Virus-Scanned: by amavisd-new at lrz.de in lxmhs52.srv.lrz.de
Received: from postout2.mail.lrz.de ([127.0.0.1]) by lxmhs52.srv.lrz.de (lxmhs52.srv.lrz.de [127.0.0.1]) (amavisd-new, port 20024) with LMTP id W-AXLBQfEs7h; Thu, 22 Dec 2022 11:14:38 +0100 (CET)
Received: from [IPV6:2003:ed:a706:2936:d431:c79:e610:6363] (p200300eda7062936d4310c79e6106363.dip0.t-ipconnect.de [IPv6:2003:ed:a706:2936:d431:c79:e610:6363]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by postout2.mail.lrz.de (Postfix) with ESMTPSA id 4Nd5lL0DQTzyTx; Thu, 22 Dec 2022 11:14:37 +0100 (CET)
Message-ID: <7ee7b980-9b20-3c5e-2161-5c754e2b5260@tum.de>
Date: Thu, 22 Dec 2022 11:14:37 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.5.1
Content-Language: en-US
To: Bernard Aboba <bernard.aboba@gmail.com>
Cc: avt@ietf.org
References: <df6592aa-58d8-4858-b10b-3468d867f49e@tum.de> <10ffea42-f2e6-588e-0e4f-bb9456899a91@tum.de> <CAD5OKxsZC=OZ6LHjoMcnQzKM0DxOO-HrPzmXQGfNFcMi49DBQw@mail.gmail.com> <572fab07-6deb-7cc9-da17-b5b273ea1c78@tum.de> <CAOW+2dvwRuz6oWXqNwESnidoXEd-pudN-W0-ntj4PXq8spxS+Q@mail.gmail.com>
From: Mathis Engelbart <mathis.engelbart@tum.de>
In-Reply-To: <CAOW+2dvwRuz6oWXqNwESnidoXEd-pudN-W0-ntj4PXq8spxS+Q@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/avt/TuP3FHJsmbfJL6A5iGnHMbvpQBU>
Subject: Re: [AVTCORE] Multiplexing in RTP over QUIC
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Audio/Video Transport Core Maintenance <avt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/avt>, <mailto:avt-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/avt/>
List-Post: <mailto:avt@ietf.org>
List-Help: <mailto:avt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 22 Dec 2022 10:14:46 -0000

Hi Bernard,

On 12/21/22 19:56, Bernard Aboba wrote:
> However, this does raise the obvious question:  "Why is it necessary to 
> be able to multiplex multiple RTP sessions over a single QUIC connection"?

I am not sure if it is necessary to be able to multiplex multiple RTP 
sessions over a single QUIC connection. With flow identifiers, it seems 
easy to support multiplexing multiple sessions while also allowing 
bundling in a single session. Applications can, of course, also still 
choose to open multiple connections. Is there any reason multiplexing 
more than one session should not be supported?

Best,
Mathis

> 
> 
> On Wed, Dec 21, 2022 at 12:48 PM Mathis Engelbart 
> <mathis.engelbart@tum.de <mailto:mathis.engelbart@tum.de>> wrote:
> 
>     Hi Roman,
> 
>     As far as I understand BUNDLE, it allows multiplexing multiple media
>     streams in a single RTP session, which is supported in RTP over QUIC
>     using BUNDLE and a single flow identifier. Multiple RTP sessions cannot
>     be multiplexed using BUNDLE and must also use different flow
>     identifiers
>     in RTP over QUIC.
>     Using a single flow identifier for bundled RTP streams and separate
>     flow
>     identifiers for signaling and data channel replacements should work
>     fine.
> 
>     Best,
>     Mathis
> 
>     On 12/21/22 17:35, Roman Shpount wrote:
>      > Mathis,
>      >
>      > Is RTP-bundle supported by RTP over QUIC? If it is supported,
>     then more
>      > than one RTP session should be able to share the same flow
>     identifier.
>      > My expectation would be to use one QUIC flow for bundled RTP
>     sessions,
>      > and separate QUIC flows for signaling and data channel replacements.
>      >
>      > Thank You,
>      > _____________
>      > Roman Shpount
>      >
>      >
>      > On Wed, Dec 21, 2022 at 10:59 AM Mathis Engelbart
>      > <mathis.engelbart@tum.de <mailto:mathis.engelbart@tum.de>
>     <mailto:mathis.engelbart@tum.de <mailto:mathis.engelbart@tum.de>>>
>     wrote:
>      >
>      >     Hi,
>      >
>      >     Thank you for your feedback regarding multiplexing in RTP
>     over QUIC.
>      >
>      >     Following the feedback, we wrote some text to clarify how the
>     approach
>      >     using flow identifiers can support all of the requirements
>     listed in my
>      >     first mail. Flow identifiers will act as the multiplexing
>     layer on top
>      >     of QUIC that can be used equally for RTP/RTCP and non-RTP
>     streams. We
>      >     would appreciate it if you read the new text and provide
>     feedback on
>      >     this approach.
>      >
>      >     The new text can be found as a pull request in [1], or if you
>     prefer to
>      >     read the compiled document, you can find it in section 6 of [2].
>      >
>      >     [1] https://github.com/mengelbart/rtp-over-quic-draft/pull/54
>     <https://github.com/mengelbart/rtp-over-quic-draft/pull/54>
>      >     <https://github.com/mengelbart/rtp-over-quic-draft/pull/54
>     <https://github.com/mengelbart/rtp-over-quic-draft/pull/54>>
>      >     [2]
>      >
>     https://mengelbart.github.io/rtp-over-quic-draft/feat/flow-id-multiplexing/draft-ietf-avtcore-rtp-over-quic.html#section-6 <https://mengelbart.github.io/rtp-over-quic-draft/feat/flow-id-multiplexing/draft-ietf-avtcore-rtp-over-quic.html#section-6> <https://mengelbart.github.io/rtp-over-quic-draft/feat/flow-id-multiplexing/draft-ietf-avtcore-rtp-over-quic.html#section-6 <https://mengelbart.github.io/rtp-over-quic-draft/feat/flow-id-multiplexing/draft-ietf-avtcore-rtp-over-quic.html#section-6>>
>      >
>      >     Best,
>      >     Mathis
>      >
>      >     On 12/16/22 18:04, Mathis Engelbart wrote:
>      >      > Hello Everyone,
>      >      >
>      >      > In yesterday’s interim meeting, we decided to move the
>     multiplexing
>      >      > discussion for RTP over QUIC to the mailing list. To keep
>     this mail
>      >      > short, we decided to split the discussion into smaller pieces.
>      >     First, we
>      >      > would like to understand what types of multiplexing are
>     required
>      >     in RTP
>      >      > over QUIC. We would like to use this thread to ask for your
>      >     opinion on
>      >      > which requirements the document should support.
>      >      >
>      >      > We see the following four requirements we could aim to
>     support:
>      >      >
>      >      > 1. A single RTP session in one QUIC connection. Multiple
>     RTP sessions
>      >      > and RTCP will need separate QUIC connections.
>      >      >
>      >      > 2. Multiplex RTP and RTCP in one QUIC connection. (Note
>     that this
>      >      > implies that an implementer may still choose option 1.)
>      >      >
>      >      > 3. Multiplex many RTP sessions and RTCP in one QUIC
>     connection.
>      >      > Following RTP's original design, senders usually sent
>     different media
>      >      > streams in separate RTP sessions, which had to run over
>     distinct
>      >      > transport layer flows. The restriction was updated to
>     allow multiple
>      >      > media types in a single RTP session in RFC 8860. Thus,
>     requiring
>      >      > multiplexing of multiple RTP sessions may not be the most
>      >     important, but
>      >      > if RTP over QUIC can support multiplexing sessions, it would
>      >     allow using
>      >      > either multiple media types in a single session or multiple
>      >     sessions for
>      >      > different media types.
>      >      >
>      >      > 4. Multiplex RTP/RTCP and potentially other protocols in
>     one QUIC
>      >      > connection. Multiplexing non-RTP protocols could be used to do
>      >     signaling
>      >      > on the same connection or to enable use cases such as
>     WebRTC data
>      >     channels.
>      >      >
>      >      > Please let us know what you think about these options,
>      >     specifically if
>      >      > you think any of these options must or must not be included in
>      >     RTP over
>      >      > QUIC. Please also let us know if we made a mistake in the list
>      >     above or
>      >      > missed another requirement entirely.
>      >      >
>      >      > We hope it will be easier to discuss solutions to the
>     multiplexing
>      >      > problem when it becomes clear which kind of multiplexing
>     we plan
>      >     to support.
>      >      >
>      >      > Best,
>      >      > Mathis
>      >      >
>      >      > _______________________________________________
>      >      > Audio/Video Transport Core Maintenance
>      >      > avt@ietf.org <mailto:avt@ietf.org> <mailto:avt@ietf.org
>     <mailto:avt@ietf.org>>
>      >      > https://www.ietf.org/mailman/listinfo/avt
>     <https://www.ietf.org/mailman/listinfo/avt>
>      >     <https://www.ietf.org/mailman/listinfo/avt
>     <https://www.ietf.org/mailman/listinfo/avt>>
>      >
>      >     _______________________________________________
>      >     Audio/Video Transport Core Maintenance
>      > avt@ietf.org <mailto:avt@ietf.org> <mailto:avt@ietf.org
>     <mailto:avt@ietf.org>>
>      > https://www.ietf.org/mailman/listinfo/avt
>     <https://www.ietf.org/mailman/listinfo/avt>
>      >     <https://www.ietf.org/mailman/listinfo/avt
>     <https://www.ietf.org/mailman/listinfo/avt>>
>      >
> 
>     _______________________________________________
>     Audio/Video Transport Core Maintenance
>     avt@ietf.org <mailto:avt@ietf.org>
>     https://www.ietf.org/mailman/listinfo/avt
>     <https://www.ietf.org/mailman/listinfo/avt>
>