Skip to content

Commit e1485c9

Browse files
committed
Add expectations for SUBSCRIBE_ANNOUNCES, ANNOUNCE, and SUBSCRIBE/FETCH
1 parent fcee80b commit e1485c9

File tree

1 file changed

+14
-18
lines changed

1 file changed

+14
-18
lines changed

draft-ietf-moq-transport.md

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -866,8 +866,9 @@ cache need to protect against cache poisoning.
866866
A relay MUST NOT reorder or drop objects received on a multi-object stream when
867867
forwarding to subscribers, unless it has application specific information.
868868

869-
Relays MAY aggregate authorized subscriptions for a given track when
870-
multiple subscribers request the same track. Subscription aggregation
869+
Relays SHOULD aggregate authorized subscriptions for a given track when
870+
multiple subscribers request the same track, using SUBSCRIBE_UPDATE when new
871+
subscriptions change the aggregate properties. Subscription aggregation
871872
allows relays to make only a single upstream subscription for the
872873
track. The published content received from the upstream subscription
873874
request is cached and shared among the pending subscribers.
@@ -888,21 +889,19 @@ to the old relay can be stopped with an UNSUBSCRIBE.
888889

889890
Publishing through the relay starts with publisher sending ANNOUNCE
890891
control message with a `Track Namespace` ({{model-track}}).
891-
The announce enables the relay to know which publisher to forward a
892+
The ANNOUNCE enables the relay to know which publisher to forward a
892893
SUBSCRIBE to.
893894

894-
Relays MUST ensure that publishers are authorized by:
895-
896-
- Verifying that the publisher is authorized to publish the content
897-
associated with the set of tracks whose Track Namespace matches the
898-
announced namespace. Where the authorization and identification of
899-
the publisher occurs depends on the way the relay is managed and
900-
is application specific.
895+
Relays MUST ensure that publishers are authorized by verifying that the
896+
publisher is authorized to publish the content associated with the set of
897+
tracks whose Track Namespace matches the announced namespace. Where the
898+
authorization and identification of the publisher occurs depends on the way the
899+
relay is managed and is application specific.
901900

902901
A Relay can receive announcements from multiple publishers for the same
903902
Track Namespace and it SHOULD respond with the same response to each of the
904903
publishers, as though it was responding to an ANNOUNCE
905-
from a single publisher for a given tracknamespace.
904+
from a single publisher for a given track namespace.
906905

907906
When a publisher wants to stop
908907
new subscriptions for an announced namespace it sends an UNANNOUNCE.
@@ -911,18 +910,15 @@ namespace it previously responded ANNOUNCE_OK to by sending an
911910
ANNOUNCE_CANCEL.
912911

913912
A relay manages sessions from multiple publishers and subscribers,
914-
connecting them based on the track namespace. This MUST use an exact
915-
match on track namespace unless otherwise negotiated by the application.
916-
For example, a SUBSCRIBE namespace=foobar message will be forwarded to
917-
the session that sent ANNOUNCE namespace=foobar.
913+
connecting them based on the track namespace.
918914

919915
When a relay receives an incoming SUBSCRIBE request that triggers an
920916
upstream subscription, it SHOULD send a SUBSCRIBE request to each
921917
publisher that has announced the subscription's namespace, unless it
922918
already has an active subscription for the Objects requested by the
923919
incoming SUBSCRIBE request from all available publishers.
924920

925-
When a relay receives an incoming ANNOUCE for a given namespace, for
921+
When a relay receives an incoming ANNOUNCE for a given namespace, for
926922
each active upstream subscription that matches that namespace, it SHOULD send a
927923
SUBSCRIBE to the publisher that sent the ANNOUNCE.
928924

@@ -1433,8 +1429,8 @@ See {{priorities}}.
14331429
## UNSUBSCRIBE {#message-unsubscribe}
14341430

14351431
A subscriber issues a `UNSUBSCRIBE` message to a publisher indicating it is no
1436-
longer interested in receiving media for the specified track and requests that
1437-
objects stop being sent as soon as possible.
1432+
longer interested in receiving media for the specified track and Objects
1433+
should stop being sent as soon as possible.
14381434

14391435
The format of `UNSUBSCRIBE` is as follows:
14401436

0 commit comments

Comments
 (0)