Re: persistent conncetion HOL blocking

Hi,

Thank you so much for enlightening me.

How could a client know in advance that it will have got a hugh response
so that it opens another connection?
specification by file type?

Kaming


On Thu, 11 May 2000, Jeffrey Mogul wrote:

> Kaming Young writes:
> 
>     HOL blocking means Head Of Line blocking
> 
>     What i mean is consider Alice send out a request for a large latest
>     hit MP3 file and then a request for a small text file which both
>     resides on the same server.  so the response for MP3 file will
>     block the second response and the response that follow in the
>     persistent connection case.
>     
> The HTTP/1.1 Draft Standard (RFC2616) address the head-of-line
> blocking issue with respect to proxies, in section 8.1.4, where
> it says:
>    			A proxy SHOULD use up to 2*N connections to
>    another server or proxy, where N is the number of simultaneously
>    active users.
> 
> I can't remember why we didn't say "to avoid head-of-line blocking"
> in this sentence, since this is precisely the reason for saying
> that proxies aren't expected to multiplex lots of clients on
> one connection.
> 
> The same paragraph says:
>    A single-user client SHOULD NOT maintain more than 2 connections
>    with any server or proxy.
> 
> The reasoning behind that requirement is related to a kind of
> head-of-line blocking.  Consider a client loading a long HTML
> page with lots of images.  The client should probably start
> the process of loading the images (on connection #2) while
> continuing to load the HTML (on connection #1); we don't want
> the images blocked until the entire HTML file is loaded.
> 
> I'm not sure it makes sense for a single browser window to
> be simultaneously loading a text file and an MP3 file, but
> I guess it would make sense for a single user to be loading
> both in separate windows of a single browser application.
> Even so, the spec still allows these two simultaneous connections.
> 
> Anyway, we never specifically defined "single-user", so I
> think a client implementor should use good judgement in
> deciding whether a browser with multiple active windows
> counts as one "user" or several.
> 
> The point of these requirements was not to force people to
> suffer from head-of-line blocking.  It was to allow the
> implementation of clients and proxies that do not suffer
> from head-of-line blocking, while discouraging them from
> using more TCP connections than necessary.
> 
> -Jeff
> 
> 

Received on Friday, 12 May 2000 00:17:40 UTC