[undertow-dev] Supporting HTTP CONNECT over HTTP/2?

Stuart Douglas sdouglas at redhat.com
Mon Apr 13 23:15:14 EDT 2020


On Mon, 13 Apr 2020 at 01:34, Ivan Ristic <ivan.ristic at gmail.com> wrote:

> Hello list,
>
> Is there any interest in getting HTTP CONNECT over HTTP/2 to work? I spent
> some time on it, but although I fixed two small issues, I hit a third that
> was beyond my undertow knowledge. I was left feeling that getting this to
> work only requires a few connecting pieces, although naturally I could be
> wrong.
>

It's a cool idea, but it's unlikely we will have time to look at it in the
short term. If you wanted to look into it we should be able to give you
some tips.

Stuart


>
> Here's what I discovered:
>
> - In Http2ReceiveListener, there's code that refuses requests that don't
> have path set (with "No :path header sent in HTTP/2 request"). However,
> path must be omitted with CONNECT per
> https://tools.ietf.org/html/rfc7540#page-64
>
> - Later on, ConnectHandler doesn't expect the path to be null.
> - The acceptConnectRequest handler from
> https://github.com/undertow-io/undertow/blob/master/core/src/main/java/io/undertow/server/handlers/ConnectHandler.java
> is not getting called and the connection is thus not setup. This is because
> Http2ServerConnection#setConnectListener doesn't do anything, unlike its
> counterpart HttpServerConnection.
>
> For context, I was playing with the idea of building a general-purpose
> forward TCP proxy based on undertow. HTTP/2 is of interest here because of
> multiplexing, which would eliminate connection setup costs [of both TCP and
> TLS] between the client and proxy and substantially improve performance
> when many connections are needed.
>
> If it matters, I used Jetty's HTTP/2 client library to connect to
> Undertow, although I had to patch it to not send path and scheme when
> method is CONNECT.
>
> --
> Ivan
> _______________________________________________
> undertow-dev mailing list
> undertow-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/undertow-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/undertow-dev/attachments/20200414/738f60d5/attachment.html 


More information about the undertow-dev mailing list