cURL / Mailing Lists / curl-library / Single Mail


Re: HTTP 2.0 performance is slower than HTTP 1.1 in libcurl

From: Tatsuhiro Tsujikawa <>
Date: Mon, 23 May 2016 23:16:57 +0900


On Mon, May 23, 2016 at 9:28 PM, Daniel Stenberg <> wrote:

> On Mon, 23 May 2016, Tatsuhiro Tsujikawa wrote:
> In my opinion, I recommend to keep using nghttp2's auto WINDOW_UPDATE
>> feature while enlarging window size to 512MiB unless you'd want to
>> implement custom WINDOW_UPDATE scheduler. With large WINDOW_SIZE, nghttp2
>> will send WINDOW_UPDATE less frequently (current implementation, it sends
>> WINDOW_UPDATE when it receives 256MiB without sending any WINDOW_UPDATE).
>> Bumping up window size of connection should be done in initialization
>> phase, e.g., after nghttp2_submit_settings in http2_switched.
> Right, thanks for that input. I agree that it seems like the smartest
> approach.
> Speaking of this (changing the window size), I was trying to find the
> automated sizing logic documented on the web site but I
> failed, did I just not look at the right place?
​We haven't written anything about it since it is rather implementation
detail. The current implementation keeps track of the amount of DATA
received without acking with WINDOW_UPDATE, and if it reaches the half of
window size (e.g., 256MiB in case of 512MiB), send WINDOW_UPDATE with the
received bytes as increment.

Best regards,
Tatsuhiro Tsujikawa

> --
> /
> -------------------------------------------------------------------
> List admin:
> Etiquette:

List admin:
Received on 2016-05-23