Skip to content

Commit c585f8e

Browse files
authored
Clarify SUBSCRIBE now that FETCH is landed (#591)
Changes SUBSCRIBE so you can't go back farther than the current Group with any of the filter modes. If a SUBSCRIBE tries to go back farther, it is closed with a SUBSCRIBE_OK. Alternatively, instead of failing the subscription, we could specify that the SUBSCRIBE will be truncated and start at the beginning of the current group.
2 parents b0fd260 + fb8371c commit c585f8e

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

draft-ietf-moq-transport.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1206,6 +1206,8 @@ GOAWAY Message {
12061206
A subscription causes the publisher to send newly published objects for a track.
12071207
A subscriber MUST NOT make multiple active subscriptions for a track within a
12081208
single session and publishers SHOULD treat this as a protocol violation.
1209+
The only objects prior to the current object that can be requested are those
1210+
in the current group.
12091211

12101212
**Filter Types**
12111213

@@ -1223,15 +1225,25 @@ the current object of the current group. If no content has been delivered yet,
12231225
the subscription starts with the first published or received group.
12241226

12251227
AbsoluteStart (0x3): Specifies an open-ended subscription beginning
1226-
from the object identified in the StartGroup and StartObject fields.
1228+
from the object identified in the StartGroup and StartObject fields. If the
1229+
StartGroup is prior to the current group, the publisher MUST reply with a
1230+
SUBSCRIBE_ERROR with code 'Invalid Range'.
12271231

12281232
AbsoluteRange (0x4): Specifies a closed subscription starting at StartObject
12291233
in StartGroup and ending at EndObject in EndGroup. The start and end of the
12301234
range are inclusive. EndGroup and EndObject MUST specify the same or a later
1231-
object than StartGroup and StartObject.
1235+
object than StartGroup and StartObject. If the StartGroup is prior
1236+
to the current group, the publisher MUST reply with a
1237+
SUBSCRIBE_ERROR with code 'Invalid Range'.
12321238

12331239
A filter type other than the above MUST be treated as error.
12341240

1241+
If a subscriber wants to subscribe to Objects both before and after
1242+
the Latest Object, it can send a SUBSCRIBE for the Latest Object
1243+
followed by a FETCH. Depending upon the application, one might want to send
1244+
both messages at the same time or wait for the first to return before sending
1245+
the second.
1246+
12351247
The format of SUBSCRIBE is as follows:
12361248

12371249
~~~

0 commit comments

Comments
 (0)