Skip to content

Configure HTTP/2 receive window size #49897

@CarnaViire

Description

@CarnaViire

Background and Motivation

Current HTTP/2 receive window size is 64 Kb, which is too small for many scenarios. It leads to poor throughput, see e.g. #43086

Just increasing the default window size may result in unwanted memory consumption in some cases. It is proposed to enable users to configure flow control properties that so they can reach a compromise between memory consumption and throughput.

Proposed API

public sealed partial class SocketsHttpHandler
{
    ...
    public bool EnableMultipleHttp2Connections { get; set; }
+   public int InitialHttp2ConnectionWindowSize { get; set; }
+   public int InitialHttp2StreamWindowSize { get; set; }
+   public int Http2StreamWindowUpdateRatio { get; set; }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions