hc-httpclient-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shawn Heisey <apa...@elyograg.org>
Subject Re: Support HTTP/2 protocol
Date Mon, 30 Jan 2017 15:43:32 GMT
On 1/26/2017 8:15 AM, Oleg Kalnichevski wrote:
> ALPN will be supported as soon as it is supported by the Java platform
> (which is not going to happen until Java 9). 

I see evidence that the other Java http implementations have ALPN
support already ... but those systems implement both server and client. 
Could it be that those ALPN implementations are server-side only?  I
can't seem to easily locate anything saying for sure.

> ALPN can be used to advertise server protocol capabilities at the time
> of SSL handshake and allow clients to pick the desired protocol from
> the list of supported protocols. If one knows supported protocols
> beforehand ALPN is completely useless. Clients can go straight to using
> HTTP/2 if the server is known to support it.
> In the next release of HttpCore I would like to add protocol detection
> logic to enable endpoints to detect HTTP protocol version by examining
> the first packet received from the opposite endpoint. This in my
> opinion would be a much more practical feature. ALPN presently is very
> low on my priority list.
> Having said that ALPN support contribution would be welcome if someone
> is willing to develop it.

Knowing in advance that HTTP/2 support is available may be problematic. 
I can imagine a situation where servers are upgraded gradually, and the
client may not know whether the one it's connecting to can support the
new protocol.  Can HTTP/2 detection be reliable without ALPN, even in
situations where connecting to the same host/port may support HTTP/2 on
one connection, but not the next?  TCP load balancing is relatively
common with SSL.  If such detection can be reliable, then there won't be
anything to worry about.

For my webserver installations, I am hoping to get HTTP/2 support
enabled in the load balancer and worry about support on the back end
later.  I'm expecting the back-end LAN to be fast enough that multiple
connections can easily be established while the Internet-facing side
works through the inherent packet latency.


To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org

View raw message