curl / Mailing Lists / curl-users / Single Mail
Buy commercial curl support from WolfSSL. We help you work out your issues, debug your libcurl applications, use the API, port to new platforms, add new features and more. With a team lead by the curl founder himself.

Re: Weird MAX_CONCURRENT_STREAMS value with empty HTTP/2 SETTINGS frame

From: Daniel Stenberg via curl-users <>
Date: Mon, 8 Jun 2020 23:55:57 +0200 (CEST)

On Mon, 8 Jun 2020, Alexandre Pion via curl-users wrote:

> It seems that <> answers with an empty SETTINGS frame and
> curl/nghttp2 says it allows 4294967295 MAX_CONCURRENT_STREAMS (which is
> maybe true, but seems a lot compared to the value of ~100 concurrent streams
> seen on most other HTTP/2 servers).


> As I see it, the HTTP/2 server didn't explicitly send the number of
> MAX_CONCURRENT_STREAMS supported in a SETTINGS frame, so nghttp2 uses its
> default value (4294967295) and curl reads this value. I am right or did I
> miss something ?

That's also my understanding of what happens. curl knows there's an incoming
SETTINGS frame but curl doesn't know any specific details of the frame, just
that it arrived. Then it asks nghttp2 for what value it has for a few

  / | Commercial curl support up to 24x7 is available!
                   | Private help, bug fixes, support, ports, new features
Received on 2020-06-08