W3C home > Mailing lists > Public > ietf-http-wg@w3.org > April to June 2014

Re: why not multiple, short-lived HTTP/2 connections?

From: Greg Wilkins <gregw@intalio.com>
Date: Tue, 24 Jun 2014 21:40:16 +0200
Message-ID: <CAH_y2NESMP+67+HAugWq6yb5viRZiTkN=StBovbX0SVXfmUxvw@mail.gmail.com>
To: bizzbyster@gmail.com
Cc: HTTP Working Group <ietf-http-wg@w3.org>
On 24 June 2014 19:50, <bizzbyster@gmail.com> wrote:
>
>
>    1. Servers must keep open idle connections, making load balancing more
>    complex and creating DOS vulnerability.
>
>
Servers keep idle connections open for a period already and with multiple
connections, that is a whole bunch more resources held idle on the server.

>
>    1. The number of simultaneous GET requests I'm able to upload in the
>    first round trip is limited to the compressed amount that can fit in a
>    single initcwnd. Yes compression helps with this but if I use multiple
>    connections I will get the benefit of compression for the requests on the
>    same connection, in addition to having multiple initcwnds!
>
>
Don't forget push.   Ideally a client will request a just a single html
resource and in response get 10s of streams of related content without
needing to request it.


Multiple short-lived HTTP/2 connections gives us all the performance
> benefits of multiplexing without any of the operational or performance
> drawbacks.
>

It means every request gets slow started, so that is not all the benefits
of HTTP/2

>From a server point of view, we have to commit significant extra resources
per HTTP/2 connection in order to support the multiplexing.    If multiple
HTTP/2 connections become the norm then we may as well go back to just
using HTTP/1.0 as I expect I can serve that much more efficiently for
single request connections.

Indeed it will be interesting to see what proxies just terminate HTTP/2 and
forward with HTTP/1.0 (as some already do with HTTP/1.1 and SPDY
already).     I'm hoping that push will be a good incentive to have HTTP/2
terminate on the application server rather than the load balancer.

I accept that proxies are a bit of a special case and it is going to take
some time to work out how to allow them good flow control and stream limits
without opening the server to DoS attacks.  So I think SHOULD NOT is about
right.  Please don't do it, but I'll accept it if you have to...

cheers




-- 
Greg Wilkins <gregw@intalio.com>
http://eclipse.org/jetty HTTP, SPDY, Websocket server and client that scales
http://www.webtide.com  advice and support for jetty and cometd.
Received on Tuesday, 24 June 2014 19:40:44 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:14:31 UTC