On Thu, Oct 1, 2020 at 12:37 PM Olivier Bonaventure < [email protected]> wrote:
> Lucas, > > In a single-path QUIC implementation, the implementation sends the next > frames according to the congestion control scheme. When the congestion > window is open, new frames can be sent. The QUIC protocol does striclty > not mandate how different frames from different streams will be sent. > Robin's measurements show that different implementations use very > different strategies. The same will be true for multipath, expect that > there will be one congestion controller per path. Each of these > congestion controllers will open opportunities to transmit frames and > the QUIC implementation will send frames when any of the underlying > congestion window is open. This can be further optimised depending on > the policies that are function of the considered use case. > Right. But the opportunities to send STREAM frames are driven by flow control not just congestion. There are some strict mandates there. Approaches such as binding a stream to a uniflow could cause starvation of the related-path due to flow control even when congestion window is open. Flow control is driven by applications putting data into the transport, and consuming from it. I suspect HTTP/2 over MPTCP does not have this problem, mainly because TCP's flow control trumps. But maybe I'm wrong. Some implementations like quiche decouple the transport library from UDP. Applications hoping for MP-QUIC with such implementations will have to accommodate some of the complexity, the transport cannot do it all. I do agree that we don't have to solve all of these things upfront and in one document. But I think there is a risk of defining mechanisms and ignoring some pathological cases. As a parallel, QUIC provides congestion control mechanisms and does not mandate any algorithms but it has taken care to suggest one that is going to be safe to deploy on the Internet. Lucas [1] https://mailarchive.ietf.org/arch/msg/quic/OlwAHMyK2mAuRCRuCP-Lpyb7ntA/ [2] https://github.com/quicwg/base-drafts/issues/3332
