On Fri, Aug 25, 2023 at 08:52:00PM +0200, Aleksandar Lazic wrote: > Looks like that "Reverse HTTP Transport" will be only possible with H2 & H3 > for now, right. This looks then to me that quic + H3 will be implemented > also for server as "proto h3", right?
No, it's only H2 for now. And indeed server-side h3 will be needed before this can be ported to H3. And I don't even know if it's possible to reverse a QUIC connection (I wouldn't want to give Fred a heart attack). However it could combine well with something I wanted to do long ago in a limited way: I wanted to support prepending an HTTP/1 CONNECT header to outgoing TCP connections so that it would be possible to encapsulate outgoing TCP connections into HTTP. Nowadays with protocol muxes it wouldn't work that way anymore, but it would be great if we could upgrade TCP to HTTP CONNECT in H1/H2/H3, because combined with the stuff above, this could even allow to forward TCP through two layers of reverse-H2! Imagine SSHing home from outside by connecting to a public gateway port, or exposing some MQTT services, or accessing some of your phone's applications locally via an always-on reverse-http connection. > Will HAProxy be the first one which will have this or is there anybody else > which have also implemented this into there SW? I don't know. I saw products do that over HTTP/1 20+ years ago. It was absolutely horrible and unreliable. A user clicking stop during a download was sufficient to either break the HTTP connection or have the gateway drain it. H2 offers more possibilities and several of us who discussed about some possibilities during various workshops evocated such future opportunities, without knowing if anyone would have the guts and time to really start it. But it's still possible that in parallel others have already done this, even in proprietary products, because the concept looks quite obvious when you look at the protocol, it's "just" quite tricky to do given all the implicit stuff that characterizes a client or server connection in a gateway! Cheers, Willy

