From 9dfceaf9c6e3bc71761a1f61ecfed2fed3357c7f Mon Sep 17 00:00:00 2001 From: Mike English Date: Wed, 18 Dec 2024 13:34:13 -0500 Subject: [PATCH] Guidance for certain cases Provide guidance rather than normative requirements for relay behavior in the cases where information is not (yet) available to determine the start of a Subscribe as discussed on the 2024-12-18 virtual interim call --- draft-ietf-moq-transport.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/draft-ietf-moq-transport.md b/draft-ietf-moq-transport.md index 8dd591d3..75d14b73 100644 --- a/draft-ietf-moq-transport.md +++ b/draft-ietf-moq-transport.md @@ -1521,7 +1521,6 @@ from to the corresponding Subscribe message (hereafter "the Subscribe"). The following values are used: -* ContentExists: whether we have any objects and therefore a Largest Group ID and Largest Object ID for the track * Resolved Subscribe Start Group: * For Subscribes with Filter Type LatestObject or LatestGroup, this is equal to Largest Group ID. * For Subscribes with Filter Type AbsoluteStart or AbsoluteRange, this is equal to the StartGroup field of the Subscribe message @@ -1531,6 +1530,10 @@ The following values are used: * For Subscribes with Filter Type AbsoluteStart or AbsoluteRange, this is equal to the StartObject field of the Subscribe message * Preceding Group Offset: A field in the Joining Fetch message indicating the relative offset from the start of the Subscribe +Note: If a relay does not yet have LatestGroup and LatestObject for a given track, it may choose to either forward both the Subscribe and +the Joining Fetch upstream or to watch until the Joining Fetch can be resolved locally. However it is handled, the Resolved Subscribe Start values +for a Joining Fetch MUST correspond to the Subscribe within the same session so the Fetch and Subscribe can be contiguous and non-overlapping. + Using that information and the following algorithm, these values are computed: * Fetch Start Group: The StartGroup for the Fetch @@ -1541,9 +1544,6 @@ Using that information and the following algorithm, these values are computed: The publisher receiving a Joining Fetch computes the fetch range as follows: -If ContentExists is not 1 and Largest Group ID and Largest Object ID are not available, a relay SHOULD -forward the Fetch with the 0x2 Fetch Type upstream. - * Fetch Start Group: Resolved Subscribe Start Group - Preceding Group Offset * Fetch Start Object: 0