Skip to content

Commit 648dbc4

Browse files
authored
Separate out the IDs of the Joining Fetch and prior subscription
1 parent cc7de8d commit 648dbc4

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

draft-ietf-moq-transport.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1520,20 +1520,20 @@ There are two types of Fetch messages:
15201520

15211521
Standalone Fetch (0x1) : A Fetch of Objects performed independently of any Subscribe.
15221522

1523-
Joining Fetch (0x2) : A Fetch joined together with a Subscribe. A Joining Fetch
1524-
shares the same Subscribe ID as an already-sent Subscribe. A publisher receiving a
1523+
Joining Fetch (0x2) : A Fetch joined together with a Subscribe by specifying
1524+
the Subscribe ID of an active subscription. A publisher receiving a
15251525
Joining Fetch uses properties of the associated Subscribe to determine the
1526-
Track Namespace, Track, StartGroup, StartObject, EndGroup, and EndObject for the
1527-
Joining Fetch such that it is contiguous with the associated Subscribe and begins
1528-
Preceding Group Offset prior.
1526+
Track Namespace, Track, StartGroup, StartObject, EndGroup, and EndObject such that
1527+
it is contiguous with the associated Subscribe. The Joining Fetch begins the
1528+
Preceding Group Offset prior to the associated subscription.
15291529

15301530
A Subscriber can use a Joining Fetch to, for example, fill a playback buffer with a
15311531
certain number of groups prior to the live edge of a track.
15321532

15331533
A Joining Fetch is only permitted when the associated Subscribe has the Filter
15341534
Type Latest Object.
15351535

1536-
A Fetch Type other than the above MUST be treated as an error.
1536+
A Fetch Type other than 0x1 or 0x2 MUST be treated as an error.
15371537

15381538
A publisher responds to a FETCH request with either a FETCH_OK or a FETCH_ERROR
15391539
message. If it responds with FETCH_OK, the publisher creates a new unidirectional
@@ -1564,7 +1564,8 @@ FETCH Message {
15641564
StartObject (i),
15651565
EndGroup (i),
15661566
EndObject (i),]
1567-
[Preceding Group Offset (i),]
1567+
[Joining Subscribe ID (i),
1568+
Preceding Group Offset (i),]
15681569
Number of Parameters (i),
15691570
Parameters (..) ...
15701571
}
@@ -1575,12 +1576,7 @@ Fields common to all Fetch Types:
15751576

15761577
* Subscribe ID: The Subscribe ID identifies a given fetch request. Subscribe ID
15771578
is a variable length integer that MUST be unique and monotonically increasing
1578-
within a session. For a Standalone Fetch a new Subscribe ID MUST be used. For
1579-
a Joining Fetch, the Subscribe ID MUST correspond to a Subscribe which has already
1580-
been sent. If a publisher receives a Joining Fetch with a Subscribe ID that does
1581-
not correspond to an existing Subscribe, it MUST respond with a Fetch Error.
1582-
Though they share an ID, cancelling or updating the subscription has no impact
1583-
on the Fetch and vice versa.
1579+
within a session.
15841580

15851581
* Subscriber Priority: Specifies the priority of a fetch request relative to
15861582
other subscriptions or fetches in the same session. Lower numbers get higher
@@ -1613,6 +1609,10 @@ requested.
16131609

16141610
Field present only for Joining Fetch (0x2):
16151611

1612+
* Joining Subscribe ID: The Subscribe ID of the existing subscription to be
1613+
joined. If a publisher receives a Joining Fetch with a Subscribe ID that does
1614+
not correspond to an existing Subscribe, it MUST respond with a Fetch Error.
1615+
16161616
* Preceding Group Offset: The group offset for the Fetch prior and relative
16171617
to the StartGroup of the corresponding Subscribe. A value of 0 indicates
16181618
the current Group.

0 commit comments

Comments
 (0)