[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Distros (byte-ranging)

> Section 14.36 states that clients and servers don't *have* to support
> byte-range operations, but most popular ones do.  So, HTTP 1.1 does support
> resuming downloads, usually. :)

I don't know of any HTTP clients that support partial downloads for arbitrary
URLs via the user interface. Does Mozilla? No. Does IE? No. Does Opera? No. Does
Lynx? No. They "support" it in the sense that they will allow applications
using them as a control (i.e. a plugin or embedding the browser) to issue
any HTTP request they like - including those created with Byte-Range headers.

Do they implement it? Yes, per above. But you only actually use this feature 
when viewing PDFs. How do I know this? Because byte-ranging was "invented" (in
general) by Adobe, specifically, the Acrobat plug-in, to support PDF rendering.


PDF is basically a series of self-contained PostScript "pages", thus, to
render "page 82" of a document, you can grab the TOC (at the end) and then
go back and grab just the bag of bytes that contain the PS for "page 82".

Downloading the whole PDF to render one page wasn't working for Adobe, so
they made up a way to do "byte ranging" in requests by the plug-in to only
grab the PS for the page you were looking at. They convinced NS, MS, and Apache
to add support for this, and later on it was decided that "this was a
GoodThing", and became part of HTTP 1.1.

But, absent program control of the browser, there is no way for a user to
"restart" or "resume" a partial download with HTTP using any of the common
browsers. Some of the web or download "accellerators" might implement this 
ability, but, not any of the stock browsers out there.

So, I stand by my statement that general file downloads using HTTP have no
useful restart ability - in contrast to the FTP feature that is widely 
implemented (and used) in both clients and servers.



To unsubscribe, send email to majordomo@luci.org with
"unsubscribe luci-discuss" in the body.