I propose to backport mod_proxy_http2 to 2.4.x as an experimental
module with the same restrictions as mod_http2.

Purpose:
mod_proxy_http2 allows proxy HTTP/2 connections, using its own
h2: and h2c: proxy schemes for the configuration. It expects
the backend to talk HTTP/2 and will not fallback to HTTP/1.1.

When called inside a HTTP/1.1 connection, it will open/reuse
an existing HTTP/2 backend connection for this one request. 

When called inside a HTTP/2 connection, new requests can be 
transferred to an already ongoing backend HTTP/2 connection
for the same master. So, in an ideal case, all concurrent streams
inside one frontend connection are managed to the backend over
a single connection as well.

Status:
The module functions in standard HTTP/2 test scenarios and seems
stable under basic load. Performance is good for small requests
but flow control handling is not good for large responses and 
performance degrades. Collecting feedback from early testers
will be valuable - as was for mod_http2.


Reply via email to