Skip to content

Commit df48071

Browse files
authored
Merge branch 'main' into me/joining-fetch
2 parents 6076f68 + ff5a182 commit df48071

File tree

1 file changed

+20
-14
lines changed

1 file changed

+20
-14
lines changed

draft-ietf-moq-transport.md

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1342,14 +1342,14 @@ the subscription starts with the first published or received group.
13421342

13431343
AbsoluteStart (0x3): Specifies an open-ended subscription beginning
13441344
from the object identified in the StartGroup and StartObject fields. If the
1345-
StartGroup is prior to the current group, the publisher MUST reply with a
1346-
SUBSCRIBE_ERROR with code 'Invalid Range'.
1345+
StartGroup is prior to the current group, the subscription starts at the
1346+
beginning of the current object like the 'Latest Object' filter.
13471347

13481348
AbsoluteRange (0x4): Specifies a closed subscription starting at StartObject
13491349
in StartGroup and ending at EndObject in EndGroup. The start and end of the
13501350
range are inclusive. EndGroup MUST specify the same or a later group than
1351-
StartGroup. If the StartGroup is prior to the current group, the publisher MUST
1352-
reply with a SUBSCRIBE_ERROR with code 'Invalid Range'.
1351+
StartGroup. If the StartGroup is prior to the current group, the subscription
1352+
starts at the beginning of the current object like the 'Latest Object' filter.
13531353

13541354
A filter type other than the above MUST be treated as error.
13551355

@@ -1433,16 +1433,22 @@ A publisher MUST NOT send objects from outside the requested start and end.
14331433
## SUBSCRIBE_UPDATE {#message-subscribe-update-req}
14341434

14351435
A subscriber issues a SUBSCRIBE_UPDATE to a publisher to request a change to
1436-
a prior subscription. Subscriptions can only become more narrower, not wider,
1437-
because an attempt to widen a subscription could fail. If Objects before the
1438-
start or after the end of the current subscription are needed, a separate
1439-
subscription can be made. The start Object MUST NOT decrease and when it increases,
1440-
there is no guarantee that a publisher will not have already sent Objects before
1441-
the new start Object. The end Object MUST NOT increase and when it decreases,
1442-
there is no guarantee that a publisher will not have already sent Objects after
1443-
the new end Object. A publisher SHOULD close the Session as a 'Protocol Violation'
1444-
if the SUBSCRIBE_UPDATE violates either rule or if the subscriber specifies a
1445-
Subscribe ID that does not exist within the Session.
1436+
an existing subscription. Subscriptions can only become more narrow, not wider,
1437+
because an attempt to widen a subscription could fail. If Objects before the
1438+
start or after the end of the current subscription are needed, a fetch might
1439+
be able to retrieve objects before the start. The start Object MUST NOT
1440+
decrease and when it increases, there is no guarantee that a publisher will
1441+
not have already sent Objects before the new start Object. The end Group
1442+
MUST NOT increase and when it decreases, there is no guarantee that a publisher
1443+
will not have already sent Objects after the new end Object. A publisher SHOULD
1444+
close the Session as a 'Protocol Violation' if the SUBSCRIBE_UPDATE violates
1445+
either rule or if the subscriber specifies a Subscribe ID that has not existed
1446+
within the Session.
1447+
1448+
There is no control message in response to a SUBSCRIBE_UPDATE, because it is
1449+
expected that it will always succeed and the worst outcome is that it is not
1450+
processed promptly and some extra objects from the existing subscription are
1451+
delivered.
14461452

14471453
Unlike a new subscription, SUBSCRIBE_UPDATE can not cause an Object to be
14481454
delivered multiple times. Like SUBSCRIBE, EndGroup MUST specify the

0 commit comments

Comments
 (0)