moq-wg / moq-transport

draft-ietf-moq-transport
Other
83 stars 20 forks source link

Is it necessary for the Relay Server to send the ANNOUNCE to the End Subscriber without waiting for a SUBSCRIBE_NAMESPACE? #584

Open yuki-uchida opened 2 weeks ago

yuki-uchida commented 2 weeks ago

SUBSCRIBE_NAMESPACE allows ANNOUNCE filtered by TrackNamespace prefix to be sent from the relay server to the End Subscriber. This is to prevent all ANNOUNCEs from being sent to the End Subscriber in case of a large number of TrackNamespaces.

However, the current specification appears to allow ANNOUNCEs to be sent from the Relay Server to the End Subscriber without SUBSCRIBE_NAMESPACE.

I think it would be better to allow the relay server to send an ANNOUNCE to the End Subscriber only if the End Subscriber sends a SUBSCRIBE_NAMESPACE. This method makes the sequence very clear.

afrind commented 2 weeks ago

Individual Comment:

Any publisher is free to ANNOUNCE without a SUBSCRIBE_NAMESPACE. The moxygen relay implementation of draft-06 (in progress) will only send ANNOUNCE for matching SUBSCRIBE_NAMESPACE though.

So in my read, it's not necessary or expected that relays do this. Do you want to make it a protocol error instead?

yuki-uchida commented 1 week ago

@afrind Thanks for your reply.

The moxygen relay implementation of draft-06 (in progress) will only send ANNOUNCE for matching SUBSCRIBE_NAMESPACE though.

This is the same sequence I was thinking of. And in most cases, the relay server will send ANNOUNCE to the Subscriber only when it receives SUBSCRIBE_NAMESPACE.

I can't think of a use case where relay wants to send ANNOUNCE to subscriber before receiving SUBSCRIBE_NAMESPACE, so it could be defined as a specification. I think it is better to keep the sequence simple. I do not want to go so far as to make it Protocol Violation, but I are inclined to include a simple sequence in the specification.

afrind commented 1 week ago

Individual Comment:

It sounds like we don't need normative language prohibiting relays from sending free ANNOUNCE, but perhaps an example or informative text explaining the typical relay behavior.