Re: [RFC] Have-Digest and duplicate transfer suppression

From: Henrik Nordström <henrik_at_henriknordstrom.net>
Date: Mon, 15 Aug 2011 23:36:15 +0200

mån 2011-08-15 klockan 09:50 -0600 skrev Alex Rousskov:

> I agree that we can switch from entities to instances, provided we are
> OK with excluding 206, 302, and similar non-200 responses from the
> optimization. By instance definition, Squid would not be able to compute
> or use an instance digest if the response is not 200 OK. We can hope
> that the vast majority of non-200 responses are either not cachable or
> are very small and not worth optimizing.

Just some more arguments for not using entity digests:

Processing requirements on multi-GB objects such as DVD ISO files. Doing
entity digests on such objects can impose quite significant processing
demands. And size of such objects is likely to increase over time. This
could easily open up for a Denial Of Service condition by sending Range
requests for random large ranges or large cached objects.

Entity digests for 206 responses (except the simple single-range form)
is not very stable as identifiers as they depend on the exact formatting
and boundary string used when composing the 206. Quite often a random
string is used as boundary string causing each 206 to have an unique
entity even if the carried object content is identical. Squid uses a
semi-static boundary string, but for example Apache uses an unique
boundary per request.

None of this affects instance digests.

Regards
Henrik
Received on Mon Aug 15 2011 - 21:36:19 MDT

This archive was generated by hypermail 2.2.0 : Tue Aug 16 2011 - 12:00:03 MDT