[Moq] Re: Consensus call on way forward on REWIND

Victor Vasiliev <vasilvv@google.com> Sat, 18 April 2026 01:44 UTC

Return-Path: <vasilvv@google.com>
X-Original-To: moq@mail2.ietf.org
Delivered-To: moq@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 72B06DEA7D88 for <moq@mail2.ietf.org>; Fri, 17 Apr 2026 18:44:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1776476647; bh=EsYS/Cx+EJfjTBXGyd5DdiAk7ZD8bZwcgFCdT8Rn1oE=; h=References:In-Reply-To:From:Date:Subject:To:Cc; b=bbGEoL8A8k63QZW2I0y/zPeb7WnLbvKihGLh6vADdm2ze8hq4jsnBDP3wOz8ei383 N9NQOj5M9L2Xvon35SrW9mDDtCGlWkMC9bcRA6s2PPzIFFjTsZ7OY+sYcDOIknpETR x1bKQ/6eMUF+I3AtZOabgsaEE9ASkIj0XWqC7nXg=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -17.489
X-Spam-Level:
X-Spam-Status: No, score=-17.489 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_FONT_LOW_CONTRAST=0.001, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=google.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hBUA-c271nkz for <moq@mail2.ietf.org>; Fri, 17 Apr 2026 18:44:06 -0700 (PDT)
Received: from mail-dl1-x1233.google.com (mail-dl1-x1233.google.com [IPv6:2607:f8b0:4864:20::1233]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 7C460DEA7D7B for <moq@ietf.org>; Fri, 17 Apr 2026 18:44:06 -0700 (PDT)
Received: by mail-dl1-x1233.google.com with SMTP id a92af1059eb24-126ea4e9697so2281c88.1 for <moq@ietf.org>; Fri, 17 Apr 2026 18:44:06 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1776476645; cv=none; d=google.com; s=arc-20240605; b=F6sQhUBSy7Qc+grZMQv3c3ltvkoAAZSiuDkuxOGBjusq54H7UrRCHj/5RdQg1BAOAg +b8tSWjnAO1N0k8XPoiZCwCCq0S41eq72GVVSy0mQtRFW6YdITiCFURGM7JFkdVD+V+u bLJ6FHmhZkPRwbsLEyG8/dULpFSO2SsjgGmTi3sGs+gi10kZ1PqslSnjuBucBglwkQUH 5eKKFV3mBGJInWuxqtAdkBbEza5+T69S+rC1fiFYjD+9iWCu3Fux+TJwe79AspOmO6Rm hOHDdtT5lhEKtdDt/0fPBjguo71Qes3jHkqeQsmedfJ5bDXFSuC0lZRNicb3dBxUhyj2 O1DA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=lihORZ8Ikh/jMeYhcUPKwHYpyCiuPc2xutsMobfhXC0=; fh=WwjrIVzajg5jSKHrBbNftqQ2ex/YMzTfwqCw3SAQjzQ=; b=ht4zpkD1sG2Fr67rNsTkLgR/iw0puZtIu86JbUtlGm2A7Gmy1GrKZV7n5oKDPdTxok 8gp+BxtMUbGW4Wof5QPbLjlUvI+7E84XB7zPTYdXwlRDYhyy00jM1RjTPrcbl8r2LLLF 6rL3DsbJQAOFDOWV3EcSXKViBNfc3H4KWBvL5DBx60LEgt5Xgm50inNM9WZB0BhODL7Q nXG6wCMTIHAqPjFGBPtkjdEdnkjfTzQrPr++U+Tgw6VS16O7XG3SoeYFfgEkut68N677 BGQ8kBndlGurrPHYC+LxwqvzvYKfrNy6zrWP72UftWBpLvow2pyQNz4i1HUQFZuDcqmt mpdA==; darn=ietf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1776476645; x=1777081445; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=lihORZ8Ikh/jMeYhcUPKwHYpyCiuPc2xutsMobfhXC0=; b=dt1fas5KkYoyKCDCZgXce7JlyZEOrxSF0I3n20UeFpeOlcbYglnKZ2YdIW3/1XXxge uRAcv9zwywcP7bqNjxk7nhv3Hdve3rqucvifa+G7+qr0HjOpjhL61ecNZZ8hjfmXHoNl 14er/CfAZ6UowmmOGHhSk1RXuTL6emk6vjArI+OmhmMOSouKBGpKEYkRk2F44bmQMjRH TXbx+tBsw6RTLZT6NcN2pKqmHwBBvjyIzWCIslGlND+6xGmGIblsxziAklYTG5eoG1T0 FQ3h9XFCUURF6mmUzKrl/uXVtMtzbOzVmDmIYSyQ82JWB/fuDJ4Ijhp2Pa+7EhY23XjC SREQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776476645; x=1777081445; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=lihORZ8Ikh/jMeYhcUPKwHYpyCiuPc2xutsMobfhXC0=; b=cuAoMqKhdBu36w+gCQxZz4QOUV4gKGxTwBdZi9NeuCSLXKOf/MyRKyRDSyS+ooPnr3 N1zqAi41NdPuguV3cG4H9NLrSUU9adVEk4gjNKrdKNKKSUa3+chmJnwqJRe2YzTU5rJQ fogrKE9LJ4TjnD1YnpriGnp4ai4rw9+/O/FsTRIF9JSkeLkM341nVGA/vvNUgpKIyxqn tMyvPbdfIlC3BVwd6w07IcDXQoZC6dPxEMG+2FZLb/txVU0Cko8TeS+VaQmGP3lOQStD bEHUmguzT+r7CkaWbqhzD67SeYquV/9z3ruFVS/FX/bJAOaaP106T4fNYQ3azQWJBlEq f4Jw==
X-Forwarded-Encrypted: i=1; AFNElJ8xeR91BrmAW76xWfozjYaT4UF0wVXuDm6SRHfQQZC527CW+qiQUOPndPtqEc8TuoEQT80=@ietf.org
X-Gm-Message-State: AOJu0YxzVaVwwen3J246VhUQOrVNffqNKEfrF+vPQ5JSdiyb4UCBCxmC pKKzr01EIKFc76+zO5jIVWj1IOOvReqxXGSb8f0AImZG+/kbS8NIbxXawPNyEHomNF0wPdmDoyB lXrZ2E3bluISUTOzACs19jscsy5sVlPomm+i/MWVJV3cxC4CLaCwFso/4oVE=
X-Gm-Gg: AeBDiesYHuwb7saVvZh7rHUikJUFa8mZ8v+aPjBJYe+k/U9DGPysZk9wFyscnMeon8r wgO38QJZp8jnsHQt9QhmmDtkhNgH26veIYE44llzei1Mjl0CeklQ2uho9YLnafNdvx/Zbfs1FV9 inHFth6Wp3NXqb9deZRcNbCFF0QRYzmFavp8/jQZetXihrvsNlt7JH6gXo0cSVLfC/suK4b+1/p 2OgVkp1g/lFj63dYIfe+QFx1QX01/m++UOksfrhEQubpK+46LmDYqEwiJY/HyfjPaxSUNgY7l2X G4VJGOQqDf2JsZHS7xDDPaRYGA==
X-Received: by 2002:a05:7022:6b9d:b0:12c:61fe:fb37 with SMTP id a92af1059eb24-12c7b258b49mr35019c88.17.1776476644695; Fri, 17 Apr 2026 18:44:04 -0700 (PDT)
MIME-Version: 1.0
References: <FRWPR07MB106241BC102275483F114857195232@FRWPR07MB10624.eurprd07.prod.outlook.com> <CANPAELtivGca3ApT94B01uzsgDk1zTQY7wd7HxpaxWxAKVB0Gg@mail.gmail.com> <CAHVo=ZnSk6_NMJVnAqY+JrMQGNK+yjAtb4gPUdr7T8EzAa9iEw@mail.gmail.com>
In-Reply-To: <CAHVo=ZnSk6_NMJVnAqY+JrMQGNK+yjAtb4gPUdr7T8EzAa9iEw@mail.gmail.com>
From: Victor Vasiliev <vasilvv@google.com>
Date: Fri, 17 Apr 2026 21:43:52 -0400
X-Gm-Features: AQROBzAz6TPSvA7H3ATA83rJ8iAQw65uh5L5oZ9qqIqMAMdRe4Yxb4uBNSpejV4
Message-ID: <CAAZdMacGBX-NndZaUFqMqrJNcbcx-_qM=AqVEUDd92Lov1gnjA@mail.gmail.com>
To: Luke Curley <kixelated@gmail.com>
Content-Type: multipart/alternative; boundary="0000000000005cd42a064fb2339a"
Message-ID-Hash: DTXRTYZACOLHI65MYXG6QPZY6DVZJOBS
X-Message-ID-Hash: DTXRTYZACOLHI65MYXG6QPZY6DVZJOBS
X-MailFrom: vasilvv@google.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Alan Frindell <afrind=40meta.com@dmarc.ietf.org>, Magnus Westerlund <magnus.westerlund=40ericsson.com@dmarc.ietf.org>, MOQ Mailing List <moq@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Moq] Re: Consensus call on way forward on REWIND
List-Id: Media over QUIC <moq.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/moq/q8Vxe5NGEX-KWgqnChyA3LnMUDE>
List-Archive: <https://mailarchive.ietf.org/arch/browse/moq>
List-Help: <mailto:moq-request@ietf.org?subject=help>
List-Owner: <mailto:moq-owner@ietf.org>
List-Post: <mailto:moq@ietf.org>
List-Subscribe: <mailto:moq-join@ietf.org>
List-Unsubscribe: <mailto:moq-leave@ietf.org>

The first group within a subscription is always special (at least if you
aim for low latency).

That said, I don't hate the LargestGroup idea.  Wrote up a version of this
that I think will work: <https://github.com/moq-wg/moq-transport/pull/1607>.

On Fri, Apr 17, 2026 at 7:10 PM Luke Curley <kixelated@gmail.com> wrote:

> IMO the root problem with SUBSCRIBE + JOINING FETCH is that subscribers
> want "live semantics". However, the first half, of the first group uses
> "vod semantics".
>
>
> *live semantics*- Each sub-group is delivered via independent streams.
> - Either side may reset a sub-group stream, for any reason, to skip any
> remaining objects.
> - Objects within a sub-group are delivered reliably and in order, until
> reset/fin.
>
> *vod semantics*
> - Objects are delivered over a single stream.
> - Objects are delivered in ID order, regardless of the sub-group.
> - Objects cannot be skipped (authoritative).
>
>
> Yes, it's possible to emulate "live semantics" using "vod semantics". The
> end subscriber *could* issue multiple, sequentially prioritized, JOINING
> FETCH requests for each specific groups/sub-group, merging each aligned
> JOINING FETCH and SUBSCRIBE stream. Just for the first group of course!
>
> It's a gross hack. A complicated set of instructions. Just to command
> the relay to serve the latest group *mostly* via "live semantics".
>
> We should add a LargestGroup filter for SUBSCRIBE instead. It is the
> intended behavior 99% of the time and deserves a flag, not an incantation.
> The first group within a subscription would no longer be special.
>
> While REWIND is undoubtedly an improvement over LargestGroup, we should
> make incremental progress. Does anyone object to a LargestGroup filter?
>
> On Fri, Apr 17, 2026 at 12:31 PM Alan Frindell <afrind=
> 40meta.com@dmarc.ietf.org> wrote:
>
>> The working group should do nothing with this document at this time.
>>
>> I appreciate the effort Martin and others put in, however, now that
>> FILL_TIMEOUT=0 has landed in the Editors’ Copy, the unique capabilities
>> provided by REWIND to avoid HOL blocking are reduced.
>>
>> Specifically we’ve eliminated cases where the subscriber’s joining FETCH
>> is blocked by cache misses – set FILL_TIMEOUT=0 (JFFT0).  So the following
>> cases are no longer problematic:
>>
>> 1) Cache Hole in low-pri subgroup blocks hi-pri cached object
>>
>> Object ID:    0   1   2   _   4
>>
>> Subgroup:   0   1   0   1   0
>>
>> 3 is low priority and in flight.  JFFT0 skips over it and delivers the
>> current cache state.  Object 3 can come later via SUBSCRIBE, assuming we
>> allow a range filter (for new objects) to start at the current group.
>>
>> 2) Datagram or stream-per-object track with a cache hole:
>>
>> 0   1   2   3   _    5
>>
>> Cached objects all get delivered with no HOLB.
>>
>> 3) Old group has been evicted:
>>
>> Groups in Cache:   _   98   99   100
>>
>> Current Group: 100
>>
>> JFFT0, Relative -3
>>
>> The FETCH response begins immediately at 98, with previous marked
>> “UNKNOWN”.
>>
>>
>> There’s one remaining case where REWIND provides a HOLB advantage: when
>> lower priority data *IS* in the cache, but you don’t want to HOL block
>> on it.
>>
>> This can be addressed by adding a subgroup and/or priority filter to
>> FETCH, which is a small subset of PR #1518.
>>
>> In the happy-cache case, REWIND also serves as a “single wire message”,
>> and saves the subscriber from stitching together the current group from
>> multiple streams, but the working group identified HOLB as the problem to
>> solve.  I got the feeling that the non-deterministic nature of REWIND left
>> others feeling unsatisfied.  But if you want determinism, you are
>> acknowledging that some head-of-line blocking on cache fill is a feature
>> and not a bug.
>>
>> The lively discussion in Boulder and at the recent interim indicates that
>> despite all our efforts, there’s some friction in MOQT around SUBSCRIBE,
>> FETCH and joining an ongoing Track.  The lack of clear consensus around a
>> different direction forward indicates we’re probably close to the best we
>> can achieve in the V1 timeframe.  We should stabilize around the core we
>> have, and let innovation take place in extensions.  If there’s a better
>> solution, it will emerge and it can be codified in a V2. Thanks
>>
>>
>> -Alan
>>
>>
>> On Thu, Apr 16, 2026 at 6:58 AM Magnus Westerlund <magnus.westerlund=
>> 40ericsson.com@dmarc.ietf.org> wrote:
>>
>>> WG, We spent Monday's interim talking about https: //github.
>>> com/martinduke/draft-duke-moq-subscribe-rewind/tree/main. There was a lot
>>> of interest to do something in this space but little agreement on the key
>>> properties of a solution. This document
>>> WG,
>>>
>>> We spent Monday's interim talking about
>>> https://github.com/martinduke/draft-duke-moq-subscribe-rewind/tree/main.
>>> There was a lot of interest to do something in this space but little
>>> agreement on the key properties of a solution.
>>>
>>> This document is meant to resolve several issues and PRs related to
>>> Joining Fetch :
>>> #861, #1039, #1358, #1362, #1386
>>> https://github.com/moq-wg/moq-transport/issues
>>>
>>>
>>> As well as the conclusion of the Joining Fetch discussion in Boulder,
>>> which is that people did not like head-of-line blocking in Joining Fetch.
>>> https://datatracker.ietf.org/doc/minutes-interim-2026-moq-06-202602102030/#comparing-proposals
>>> <https://urldefense.com/v3/__https://datatracker.ietf.org/doc/minutes-interim-2026-moq-06-202602102030/*comparing-proposals__;Iw!!Bt8RZUm9aw!9HjM-Wgy-GAgW3ZCAeC4PBs135QHiMVv8dSYg32FL2OX3d0-sOfFvlXnIZ5LJ09o55MjHmm57vCeD2CAe4llqDNtCw$>
>>>
>>>
>>> This is a consensus call for the disposition of this document. Please
>>> state your preference.
>>> 1) The working group does nothing with this document, at least until
>>> MOQT is published
>>> 2) The working group adopts this draft as the basis for an MOQT extension
>>> 3) The working group uses the draft as basis for a PR to be merged into
>>> MOQT when the Editors feel the PR is ready.
>>>
>>> Please provide your input no later than Friday the first of May
>>> (260501).
>>>
>>> Other proposals in this space are welcome, and subject to the same
>>> consensus requirements.
>>>
>>> Magnus Westerlund
>>> MoQ Chair
>>>
>>> --
>>> Moq mailing list -- moq@ietf.org
>>> To unsubscribe send an email to moq-leave@ietf.org
>>>
>> --
>> Moq mailing list -- moq@ietf.org
>> To unsubscribe send an email to moq-leave@ietf.org
>>
> --
> Moq mailing list -- moq@ietf.org
> To unsubscribe send an email to moq-leave@ietf.org
>