Re: "Hits" pragma (objection and alternative)

Reinier Post (
Tue, 22 Aug 1995 16:23:56 +0200 (MET DST)

James Pitkow writes:

[It was suggested that HTTP requests use a Forwarded: header to propagate
usage information from proxy service to data server]

[I proposed to use HTTP requests instead, and make the proxy server serve
excepts from logfiles under certain URLs]

>As a server, how do you know, maintain, & schedule which proxies to query?
>This is not an easy problem to solve reliably.

You can extract this from your access logs. The information wouldn't be sent
along with the requests; instead, the requests would be used to determine
which queries to pose, and they would retrieve exactly the information you need
at exactly the moment you need it.

>> Servers, and clients as well, have the right to view the exact imprints they
>> make in proxy logs. Why invent a special format allowing proxies to censor
>> this information? Just serve the logs!
>Except that this information is considered in the HTTP 1.0 draft as private and
>misuse of this information may violate certain privacy laws in certain countries.

As long as proxies serve only the part of the logfile that pertains to the host
requesting them, there shouldn't be a problem. Proxy servers on firewalls
probably want to anonimise the client hostnames before passing out their logs
to a server. Apart from that, I feel the proxies have something close to an
obligation to propagate their logging info to the server, and enable the server
to compile logging info as if the proxy wasn't there in the first place.

>You'd need to employ access control mechanisms to ensure that this information
>was not accessible by everyone whenever.

Possibly. The technique could be abused if people succeed in getting logs that
do not pertain to their own server. To do this, they would have to pose as
that server, forging the hostname. This vulnerability is already there in
the original proposal. It's just more obvious now, because proxies are no
longer limited to sending information in chunks that can comfortably be fit
into a Forwarded: header. I think the original proposal is inadequate due to
this limitation, and some other resaons.

Finally, a proxy can put these requests under access protection, or simply
decide not to honour any request at all.

> Furthermore, how do you specify the
>time period that proxies need to keep the logs? High volume proxies can generate
>100's of megabytes per day.

Proxies would indicate the range of queries they are ready to honour.
(A special 'report' request would exist to provide this information.)

The idea is to use a range of output formats, one of which may happen to be
the actual format used for logging. A compressed format would be more common.
Additional formats may be used that already summarise information, like
getstats reports or wwwstat reports.

I don't think volume is a problem. If a proxy or a server can generate
100M of logfiles, it also has the capacity to send them out and receive them.

>I am not in favor of this alternative proposal.

Have you considered the advantages?


Reinier Post
a.k.a. <A HREF="">me</A>