LOAD TEST supports following HTTP version settings:
Auto
HTTP version will be based on the maximum HTTP version supported by the server.
HTTP/1.1
Use HTTP/1.1 protocol for all requests in the selected group.
HTTP/2
Use HTTP/2 protocol for all requests in the selected group.
HTTP/3
Use HTTP/3 protocol for all https requests in the selected group. For http requests, it will use HTTP/2 or HTTP/1.1 based on the maximum HTTP version supported by the server.

## How Auto Works

### For Non-Secure (http URI) Requests:

HTTP/1.1 request with Connection, Upgrade and HTTP2-Settings header and payload (if any) is sent.
For example
GET / HTTP/1.1
Host : server.example.com
Connection : Upgrade, HTTP2-Settings
Upgrade : h2c
HTTP2-Settings : < base64url encoding of HTTP/2 SETTINGS >
< Payload >
A server that does not support HTTP/2 will respond to the request as if the Upgrade header field were absent:
For example
HTTP/1.1 200 OK
Content-Length : 243
Content-Type : text/html
...
In this case, all requests on this connection will continue using HTTP/1.1 protocol.
A server that supports HTTP/2 accepts the upgrade with a 101 (Switching Protocols) response. After the empty line that terminates the 101 response, the server begins sending HTTP/2 frames. These frames include a response to the request that initiated the upgrade.
For example
HTTP/1.1 101 Switching Protocols
Connection : Upgrade
Upgrade : h2c
[ HTTP/2 connection ...
The first HTTP/2 frame sent by the server is a server connection preface consisting of a SETTINGS frame. Upon receiving the 101 response, the client sends a connection preface, which includes a SETTINGS frame.
The HTTP/1.1 request that is sent prior to upgrade is assigned to a stream identifier of 1 with default priority values. Stream 1 is implicitly "half-closed" from the client toward the server, since the request is completed as an HTTP/1.1 request. After commencing the HTTP/2 connection, stream 1 is used for the response.

### For Secure (https URI) Requests:

With starting version is HTTP/2
In this case, starting version is always HTTP/1 and then in subsequent cases alpn h3 and h2 can come from the server. So whichever version is the highest version, the connection will be upgraded to that version automatically.
If HTTP/2 connection is refused then upgrade to HTTP/3 and if this is failed then connection is failed.
With starting version is HTTP/3
SSL handshake uses QUIC with the application-layer protocol negotiation (ALPN) extension [TLS-ALPN]. HTTP/3 over QUIC uses the "h3" protocol identifier."
If HTTP/3 connection fails, then downgrade to HTTP/2.
Runtime Changeable No