Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
619a6ec
Joining Fetch
englishm Nov 27, 2024
4525f9d
Fix client/peer in GOAWAY Timeout
englishm Dec 4, 2024
8e1e9ca
Normalize case
englishm Dec 4, 2024
7f19b5e
Normalize case
englishm Dec 4, 2024
921f4c4
Normalize case
englishm Dec 4, 2024
c285647
Normalize case
englishm Dec 4, 2024
8fa9be8
Remove extra space
englishm Dec 4, 2024
e1093ad
spelling: s/Groupe/Group/
englishm Dec 4, 2024
1522ab7
Update with a more verbose algorithm for clarity
englishm Dec 18, 2024
0a00c36
Simplify algorithm w/ intermediate resolved values
englishm Dec 18, 2024
e0e649e
Previous Group -> Preceding Group Offset
englishm Dec 18, 2024
07e93ce
Fetch error rather than closing session
englishm Dec 18, 2024
d01b841
Fix Resolved Subscribe Start Object (LatestGroup)
englishm Dec 18, 2024
dbc9f9a
Clarify empty fetch case
englishm Dec 18, 2024
204437e
Guidance for certain cases
englishm Dec 18, 2024
578b567
Update draft-ietf-moq-transport.md
englishm Dec 19, 2024
6dae36d
Update draft-ietf-moq-transport.md
englishm Dec 20, 2024
9fa2429
Incorporate feedback
englishm Jan 22, 2025
a50b040
Brief motivating example for Suhas
englishm Jan 22, 2025
6c0790f
Nit: spacing
englishm Jan 22, 2025
eb20e67
fix phrasing nit
englishm Jan 24, 2025
7d4a99d
Cleanup - remove duplicate paragraph
englishm Jan 24, 2025
450b4d7
Clarify properties apply to Fetch and Subscribe
englishm Jan 24, 2025
7db23b5
Group Order for all Fetch Types
englishm Jan 24, 2025
86ec7ff
Remove unnecessary/redundant definitions
englishm Jan 24, 2025
094d800
Merge branch 'main' into me/joining-fetch
ianswett Jan 29, 2025
5b1ec66
Reflow some long lines
ianswett Jan 30, 2025
9cbde3c
Reflow and minor editorial updates
ianswett Jan 30, 2025
e5a2868
Shorten some descriptions
ianswett Jan 30, 2025
d7e8648
Merge branch 'main' into me/joining-fetch
ianswett Jan 30, 2025
f408e38
Update draft-ietf-moq-transport.md
englishm Jan 30, 2025
46f2124
Merge branch 'main' into me/joining-fetch
ianswett Jan 31, 2025
6076f68
Merge branch 'main' into me/joining-fetch
ianswett Feb 3, 2025
df48071
Merge branch 'main' into me/joining-fetch
ianswett Feb 3, 2025
a70455e
Limit Joining Fetch to Latest Object Subscribes
englishm Feb 3, 2025
411d42e
Clarify resulting FETCH/SUBSCRIBE independence
englishm Feb 4, 2025
c3442de
Remove redundant text
englishm Feb 4, 2025
cc7de8d
Update draft-ietf-moq-transport.md
ianswett Feb 7, 2025
648dbc4
Separate out the IDs of the Joining Fetch and prior subscription
ianswett Feb 11, 2025
801fb4b
Update draft-ietf-moq-transport.md
ianswett Feb 11, 2025
d9e2731
Update draft-ietf-moq-transport.md
ianswett Feb 11, 2025
3bc9c52
Simplify some text based on Suhas suggestions
ianswett Feb 11, 2025
3a45e97
Minor editorial update
ianswett Feb 11, 2025
913c9d7
Update draft-ietf-moq-transport.md
ianswett Feb 11, 2025
5945077
Merge branch 'main' into me/joining-fetch
ianswett Feb 11, 2025
e3fe1a2
Merge branch 'main' into me/joining-fetch
ianswett Feb 11, 2025
2529140
Subtract 1 from EndGroup if EndObject is 0
ianswett Feb 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 7 additions & 19 deletions draft-ietf-moq-transport.md
Original file line number Diff line number Diff line change
Expand Up @@ -1636,30 +1636,18 @@ as a Fetch with a range dynamically determined by the Preceding Group Offset
field and field values derived from the corresponding SUBSCRIBE message
(hereafter "the Subscribe").

The following values are used:

* Resolved Subscribe Start Group: the Largest Group ID of the associated Subscribe.
* Resolved Subscribe Start Object: the Largest Object ID of the associated Subscribe.

The Resolved Subscribe Start values for a Joining Fetch MUST correspond to the
referenced Subscribe within the same session so that the ranges of Objects covered
by the Fetch and Subscribe are contiguous and non-overlapping.
The Largest Group ID and Largest Object ID values from the corresponding
subscription are used to calculate the end of a Joining Fetch so the Objects
retrieved by the Fetch and Subscribe are contiguous and non-overlapping.
If no Objects have been published for the track, so the SUBSCRIBE_OK has a
ContentExists value of 0, the publisher MUST respond to the Joining Fetch with a
FETCH_ERROR.
ContentExists value of 0, the publisher responds with a FETCH_ERROR.

The publisher receiving a Joining Fetch computes the fetch range as follows:

* Fetch StartGroup: Resolved Subscribe Start Group - Preceding Group Offset
* Fetch StartGroup: Subscribe Largest Group - Preceding Group Offset
* Fetch StartObject: 0

If Resolved Subscribe Start Object is 0:
* Fetch EndGroup: Resolved Subscribe Start Group - 1
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we do still need to handle this zero case separately.

e.g. Subscribe Largest Group = 3, Subscribe Largest Object = 0, Preceding Group Offset = 2

The new text here would have us create a Fetch with:

  • StartGroup = 1
  • StartObject = 0
  • EndGroup = 3
  • EndObject = 0

This would overlap an entire group since an EndObject of 0 in a Fetch means "all objects in the group"

I think the rest of the text consolidation here is fine, but we do need to keep this - 1 for the Fetch EndGroup when Subscribe Largest Object is 0.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Mike, I added a paragraph to address this and try to briefly explain why.

* Fetch EndObject: 0 (all objects in the group)

Else, if Resolved Subscribe Start Object is 1 or more:
* Fetch EndGroup: Resolved Subscribe Start Group
* Fetch EndObject: Resolved Subscribe Start Object
* Fetch EndGroup: Subscribe Largest Group
* Fetch EndObject: Subscribe Largest Object

## FETCH_CANCEL {#message-fetch-cancel}

Expand Down