MD: I don't really understand the workflow here, and I wonder if explicit discussion of what you're expecting the application layer to do would be helpful. Let's say a client connects to liveevents.example.com. Say the server has 100 different programs, each with 3 channels corresponding to different data rates.
This is a very push-oriented model. The server uses MC_ANNOUNCE, potentially to list all 300 channels. It can't send MC_JOIN to all of them, since that would violate capacity limits, so it has to divine what the client wants. Presumably this is being driven by an application-level request protocol (HTTP or whatever) that allows the server to tell QUIC what channel to push. Is this right?
MD: I don't really understand the workflow here, and I wonder if explicit discussion of what you're expecting the application layer to do would be helpful. Let's say a client connects to liveevents.example.com. Say the server has 100 different programs, each with 3 channels corresponding to different data rates.
This is a very push-oriented model. The server uses MC_ANNOUNCE, potentially to list all 300 channels. It can't send MC_JOIN to all of them, since that would violate capacity limits, so it has to divine what the client wants. Presumably this is being driven by an application-level request protocol (HTTP or whatever) that allows the server to tell QUIC what channel to push. Is this right?