Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-7692

http2-* attributes def values in Undertow for listeners and mod-cluster

    XMLWordPrintable

Details

    Description

      For http-listener, https-listener and mod-cluster filter in Undertow subsystem, there are some http2 related attributes:

                  "http2-header-table-size" => {
                      "type" => INT,
                      "description" => "The size of the header table used for HPACK compression, in bytes. This amount of memory will be allocated per connection for compression. Larger values use more memory but may give better compression.",
                      "expressions-allowed" => true,
                      "nillable" => true,
                      "unit" => "BYTES",
                      "access-type" => "read-write",
                      "storage" => "configuration",
                      "restart-required" => "all-services"
                  },
                  "http2-initial-window-size" => {
                      "type" => INT,
                      "description" => "The flow control window size that controls how quickly the client can send data to the server",
                      "expressions-allowed" => true,
                      "nillable" => true,
                      "unit" => "BYTES",
                      "access-type" => "read-write",
                      "storage" => "configuration",
                      "restart-required" => "all-services"
                  },
                  "http2-max-concurrent-streams" => {
                      "type" => INT,
                      "description" => "The maximum number of HTTP/2 streams that can be active at any time on a single connection",
                      "expressions-allowed" => true,
                      "nillable" => true,
                      "access-type" => "read-write",
                      "storage" => "configuration",
                      "restart-required" => "all-services"
                  },
                  "http2-max-frame-size" => {
                      "type" => INT,
                      "description" => "The max HTTP/2 frame size",
                      "expressions-allowed" => true,
                      "nillable" => true,
                      "unit" => "BYTES",
                      "access-type" => "read-write",
                      "storage" => "configuration",
                      "restart-required" => "all-services"
                  },
                  "http2-max-header-list-size" => {
                      "type" => INT,
                      "description" => "The maximum size of request headers the server is prepared to accept",
                      "expressions-allowed" => true,
                      "nillable" => true,
                      "unit" => "BYTES",
                      "access-type" => "read-write",
                      "storage" => "configuration",
                      "restart-required" => "all-services"
                  },
      

      By default, all of these attributes are set as undefined. This might be reasonable e.g. for http2-max-concurrent-streams which in that case might mean that actual maximal value is not restricted anyhow (is it actually true?). But for other attributes this might be misleading for user as he actually does not know what is real default and used value (e.g. for http2-initial-window-size is used 65535) in such situation. Thus I think that we should provide some default values here so user knows what values are used.

      EDIT: also please pay some attention to a max-ajp-packet-size attribute that is available in ajp-listener and mod-cluster filter - there is no default value set here (undefined by default although I believe some default is actually used - 8192?) and also no units are specified in resource-description for that one (bytes, I believe, should that be).

      Attachments

        Issue Links

          Activity

            People

              chaowan@redhat.com Chao Wang
              chaowan@redhat.com Chao Wang
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: