Markdown Version | Transcript | Recording 1 | Recording 2
MOQ
Summary
The MOQ Working Group held a hybrid interim meeting to discuss and resolve core transport issues in draft-ietf-moq-transport. The primary focus of the meeting was to burn down outstanding technical issues with the goal of reaching a Working Group Last Call (WGLC) in the near future. Key topics of discussion included object range filters, the redesign of the joining mechanism (PR 1642), and stream flow control issues.
Key Discussion Points
1. Hybrid Meeting Logistics & Agenda
- Presenter: Alan Frindell
- Slides: Chair Slides
- Discussion: Alan Frindell welcomed participants to the hybrid interim and outlined Meetecho guidelines for both local and remote attendees. Alan proposed a schedule for upcoming virtual interim sessions to be held on Mondays at 16:30 UTC.
2. Object Range Filters (PR 1518)
- Presenter: Mo Zanaty
- Slides: Object Range Filters
- Discussion:
- Mo Zanaty recapped the motivation for object range filters (e.g., keyframe scrubbing, base layer extraction, specific media encodings).
- Set Concept: The "set" concept allows relays to aggregate disjoint filters from downstream subscribers and query upstream using combined sets. This prevents relays from having to open multiple independent upstream subscriptions.
- Property Filters on Published Messages: Mo Zanaty noted that property filters can filter both track and object properties. If applied in
SUBSCRIBE_TRACKS, a property filter can filter out the published track message itself. Ian Swett raised questions about how this interacts with overwritten object properties. Mo Zanaty confirmed that if a track property fails a filter, no subsequent objects for that track are sent. The group agreed this behavior is acceptable. - Object ID Filter Removal: Mo Zanaty proposed removing the Object ID filter to simplify the design, arguing that Keyframe scrubbing on Object 0 is not 100% reliable for all video codecs. Magnus Westerlund strongly objected, stating Object 0 keyframe scrubbing is standard in draft-ietf-moq-msf. Will Law and Cullen Jennings supported keeping it.
- Location Filters: Mo Zanaty proposed re-introducing location filters (previously in PR 1401) to replace the complex enum of subscription filters. Magnus Westerlund, Will Law, and Victor Vasiliev supported re-adding it because it aligns naturally with MOQ's object model. Alan Frindell raised questions regarding how to handle group endings when a filter terminates mid-group.
3. PR 1642 and Joining FETCH Redesign
- Presenter: Ian Swett
- Slides: PR 1642
- Discussion:
- Ian Swett presented survey results on the existing Joining FETCH design. While some implementations successfully used it, the majority expressed dissatisfaction and wanted to remove it if a better alternative existed.
- Current Group Delivery: PR 1642 proposes delivering objects from the current group via subscribe streams (subgroups and datagrams) rather than splitting them between FETCH and SUBSCRIBE.
- Cullen Jennings raised concerns about congestion control and priority. He argued that bursting backfill data (e.g., the historical portion of the current group) at line rate creates "fake congestion" on QUIC, delaying the actual live edge.
- Mo Zanaty agreed, noting that delivering multiple subgroups simultaneously over subscribe can lead to out-of-order object delivery at the player, forcing playout delays.
- Magnus Westerlund highlighted buffering bursts on unstable Wi-Fi networks.
- Filled FETCH Decoupling: PR 1642 introduces "filled FETCH" streams initiated via subscribe or request updates to fetch historical groups, while live data flows on standard subscribe streams.
- In the Meetecho chat, Asad Saeed questioned how this model handles VOD pipelining without stalling. Will Law explained that typical VOD players can utilize client buffers to implement a "sawtooth" request update behavior.
- Gwendal Simon, Victor Vasiliev, Mo Zanaty, and Mike English supported the decoupled "filled FETCH" concept, noting that it cleans up the state machine by removing the complex "joining location" rules.
- Ian Swett acknowledged that some spelling and parameters (e.g., shared vs. unique parameters between fetch and subscribe portions) need to be refined.
4. MOQT Flow Control & Blocked Streams
- Presenter: Alan Frindell / Ian Swett
- Slides: MOQT Issues London
- Discussion:
- Stream Flow Control Blocked on Requests: The group discussed how to handle cases where a relay or client runs out of QUIC stream credit to send requests (e.g., subscriptions, fetches).
- Because relays cannot typically open new bidirectional sessions upstream due to NAT and firewalls, they cannot simply bypass stream credit exhaustion.
- The group discussed whether relays should queue these blocked requests or reject them.
- PUBLISH_BLOCKED Message: The editors proposed introducing a mechanism for publishers to signal when they cannot publish a track due to stream credit limits on namespace subscriptions.
- Cullen Jennings suggested renaming the message to
PUBLISH_BLOCKEDand decoupling it from strict flow-control terminology to also cover cases where a publisher intentionally decides not to publish a track (e.g., to prioritize other higher-priority tracks).
- Cullen Jennings suggested renaming the message to
- Stream Flow Control Blocked on Requests: The group discussed how to handle cases where a relay or client runs out of QUIC stream credit to send requests (e.g., subscriptions, fetches).
Decisions and Action Items
Object Range Filters
- Decision: Retain the Object ID filter in draft-ietf-moq-transport to support keyframe scrubbing use cases.
- Action Item: Mo Zanaty to create a separate PR to re-introduce location filters (simplifying the subscription filters enum) based on the feedback received.
Joining FETCH Redesign (PR 1642)
- Decision: The general consensus is to move forward with the direction of PR 1642, deprecating Joining FETCH in favor of decoupled subscribe and "filled FETCH" mechanisms.
- Action Item: Working group participants to digest the "current group delivery" mechanics offline and discuss implementation-specific issues (such as prioritization and subgroup filtering) before final integration.
MOQT Issues
- Decision: For requests blocked by stream flow control, the protocol will return a
REQUEST_ERRORto the client rather than forcing relays to maintain complex retry queues. Alan Frindell and Ian Swett will coordinate the PR. - Decision: Rename the stream blocked message to
PUBLISH_BLOCKEDto allow publishers to signal an inability or unwillingness to publish a track. Ian Swett to draft the PR.
Next Steps
- The chairs will confirm the proposed virtual interim dates on the mailing list.
- The editors will focus on updating draft-ietf-moq-transport based on the PR 1642 and PR 1518 consensus.
- Design team discussions on Denial-of-Service considerations (draft-ietf-moq-secure-objects and relay protection) will continue.
Session Date/Time: 11 Jun 2026 12:30
MOQ
Summary
The MOQ working group held an interim meeting to discuss key design choices for draft-ietf-moq-transport. The session focused on the resolution of overlapping subscriptions and subscription alias risks, the design of seamless track switching via a proposed switch_from control parameter, and a status update on the informational draft regarding Denial-of-Service (DoS) considerations for Media over QUIC (MoQ) relays.
Key Discussion Points
1. Overlapping Subscriptions and Subscription Alias Collisions
- Will Law and Alan Frindell debated options 1A and 1B for handling overlapping subscriptions on the same track. Option 1B attempts to combine processing rules, whereas 1A treats them more distinctly.
- The group converged on pursuing Option 1A, with the caveat of striking its last clause.
- Suhas Nandakumar and Will Law discussed subscription race conditions (e.g., a subscribe message arriving immediately after an unsubscribe). If the publisher selects the same alias for successive subscriptions, it can result in unexpected data or race conditions at the subscriber.
- Piers O'Hanlon noted that duplicate subscriptions can sometimes occur in deduplication scenarios, but agreed that 1A is the best way forward.
- Decision: The working group agreed to go with Option 1A. To address the risk of alias collisions, warning text will be drafted and added to draft-ietf-moq-transport advising that subscribers must handle the consequences of alias reuse.
2. Track Switching, Request Ordering, and switch_from
- Suhas Nandakumar presented on the limitations of current track ordering mechanisms in draft-ietf-moq-transport (Draft 18), noting that
UNSUBSCRIBEis now a quick control message that cannot easily be ordered with other block control messages. - Use cases discussed included client-side Adaptive Bit Rate (ABR) switching and video conferencing track swaps (e.g., replacing Alice's feed with Bob's feed seamlessly without incurring transient bandwidth spikes).
- The following slides and proposals were referenced:
- (Seamless) Track Switching Results and Demos
- Request Ordering (SWITCH_FROM)
- PR 1642 (Note: The proposed track switching PR depends heavily on PR 1642 landing first).
- 1642 and SWITCH_FROM Follow Ups
- Suhas Nandakumar detailed the proposed
switch_fromparameter, which would be included in aSUBSCRIBEorREQUEST_UPDATEflow. This parameter references theRequest IDof the track being switched from and supports:- Hard Mode: Immediately sets
forward=0on the suspended track. - Soft Mode: Sets the end group of the old track to the new track's start group minus one, letting the remaining group's objects drain before terminating.
- Hard Mode: Immediately sets
- Cullen Jennings, Gwendal Simon, and Alan Frindell discussed the behavior of these modes. There was strong consensus that Hard Mode is highly useful and straightforward to specify.
- Cullen Jennings proposed a middle-ground mode that finishes delivering the current group before stopping, to allow clean group-aligned boundaries.
- Soft Mode was noted to have potential issues with perpetually unaligned groups, congestion lags, and tail-chasing behaviors.
- Ian Swett pointed out that Dynamic Track Selection (DTS) implementations would benefit greatly from this feature, as it would allow relays to cleanly close "ghost" upstream subscriptions that are no longer actively watched, preventing wasted bandwidth.
- Will Law noted that Ali Begen (Ollie) would present experimental track switching data at the next session.
3. Denial-of-Service (DoS) and Resource Protection in Relays
- Ian Swett presented on resource protection and DoS considerations based on the slide deck Denial-of-Service Considerations for Media over QUIC Relay Deployments.
- The document is intended to be a non-normative, informational guide outlining security considerations for relay operators, separate from the core protocol spec. It covers both data plane and control plane concerns.
- Will Law performed a physical show of hands to gauge interest and readership. A significant portion of the room had read the draft.
- The authors plan to submit a
01revision of this informational document ahead of the Geneva meeting.
Decisions and Action Items
-
Decisions:
- Adopt Option 1A for handling overlapping subscriptions on the same track.
- Add warning and mitigation text in draft-ietf-moq-transport addressing subscription alias collision risks.
- Move forward with specifying the Hard Mode behavior for the
switch_fromparameter.
-
Action Items:
- Will Law took an action item to write a pull request generalizing the state expression rules for
switch_fromto ensure it is ready for review ahead of the Geneva meeting.
- Will Law took an action item to write a pull request generalizing the state expression rules for
Next Steps
- Suhas Nandakumar and contributors to update the
switch_fromPR in accordance with the feedback received on Hard Mode. - Ali Begen to present experimental track switching findings at the upcoming session.
- Authors of the relay DoS draft to publish version
01prior to the Geneva meeting.
Related Documents
draft-ietf-moq-msf, draft-ietf-moq-secure-objects, draft-ietf-moq-transport