Os requisitos acima fazem você lembrar do controle de fluxo do TCP? Eles deveriam, já que o problema é exatamente o mesmo (leia Flow Control). No entanto, como os streams do HTTP/2 são multiplexados em uma única conexão TCP, o controle de fluxo TCP não é granular o suficiente e não fornece as APIs em nível de aplicativo necessárias para regular o fornecimento de streams individuais. Para resolver isso, o HTTP/2 fornece um conjunto de blocos de compilação simples que permitem que o cliente e o servidor implementem o próprio controle de fluxo na conexão ou no stream: