Subject: Re: Taxonomy Term closure needed

From: Joe Touch <[email-masked]>
Date: Fri, 10 Sep 1999 12:27:00 -0700 (PDT)

> From: Ian Cooper <[email-masked]>
> To: Joe Touch <[email-masked]>
> Cc: [email-masked]
> 
> On Thu, 9 Sep 1999 17:40:49 -0700 (PDT), Joe Touch wrote:
> 
> >> Mirror
> >>   Not defined. Editors View - Nees Discussion
> >>   Editors-Note: An attempt at taxonomy has been made.  It is clear
> >>   from discussion that a definition is in order.  The taxonomic variants
> >>   can then be defined from it.
> >
> >Hmm - a MIRROR is a server with content identical to that of another
> >server. (?) Such equality is maintained on a periodic basis. (?)
> 
> Would that limit us to an environment where www.apache.org.uk is a
> mirror for www.apache.org, but
> http://sunsite.org.uk/Mirrors/ftp.apache.com/pub/apache/ is not?
> 
> "Identical" in what sense and in which direction?

Identical 'direction' would be in terms of the user.
The semantic definition of identical (same protocol, same data content)
is something we can let float (and say it's a matter of judgement
and interpretation).

> >Why not just call it a "server-side, or server-proximal" cache?
> 
> I thought we agreed on this (and your issues) in Oslo?
> 
> The idea was (correct me if I'm wrong) to bundle "accelerators" and
> "reverse proxies" under the same general heading and to acknowledge
> the various synonyms that are in common usage.

Sounds good to me.

> >> Caching Reverse Proxy (Accelerator)
> >>   Not Defined.  Editors View - Needs Discussion
> >>   Editors-Note: Do we need it?  Suggested definition
> >>   "A reverse proxy with a cache, acting as server to clients, and
> >>    a client to servers"
> >
> >A proxy cache co-lococated (or nearly-so) with a server.
> >The term "server-side or server-proximal" would be better.
> 
> Hmm.  Is a "caching reverse proxy" the same as a "reverse proxy"?

Dunno - can a proxy do anything besides cache? (it seems so).
In that case there could be a reverse proxy that (e.g.) 
redirects, but doesn't cache.

Joe

---

From: Henrik Nordstrom <[email-masked]>
Date: Sat, 11 Sep 1999 14:22:35 +0200

> Dunno - can a proxy do anything besides cache? (it seems so).

Yes. A proxy can do any number of things. It is a middle hand in the
request chain, and can besides forwarding requests implement

* Redirection to another server
* Caching
* Request modification
* Response modification
* Virus filtering
* and a number of other things which may be handled by a middle-hand.

All these uses fit in the definition of the general term proxy. This is
why RFC2616 defines the term "transparent proxy" as a proxy which does
not modify the request/response outside what is required by forwarding
the request.

> redirects, but doesn't cache.

Yes, and in my world that is the common definition of a reverse proxy

A proxy which receives requests on behalf of the origin server and
forwards them towards the origin server.

The most important aspect for a reverse proxy is "on behalf", which
implies that is is set up by and under the administrative control of the
content provider.

Reverse proxies often also function as application level firewalls in
front of a origin servers to sanitize and filter out "bad" requests
before received by the origin server.

reverse-proxy is a term being actively used today.

--
Henrik Nordstrom

---

From: Henrik Nordstrom <[email-masked]>
Date: Sat, 11 Sep 1999 15:08:26 +0200

> implies that is is set up by and under the administrative control of the

Sorry, I was a bit uncareful in the wording there. The administrative
control is usually that of the network managers of the origin server,
which does not neccesary imply that it is under the control of the
content provider. It should however be included in the a service
agreement between the content provider and management of the origin
server, network connection or reverse proxy.

--
Henrik Nordstrom

---

From: Joe Touch <[email-masked]>
Date: Sat, 11 Sep 1999 09:35:08 -0700

> server, network connection or reverse proxy.

Whether a term is in wide use or not does not necessarily
require its use in the core of the taxonomy document. 

We can easily define an appropriate term and define 'reverse proxy'
in terms thereof.

What concerns me about the above is the use of "intent"
in a definition. There must be some objective metric.
Management control, service agreeements, etc. aren't
useful objective metrics.

Is there any definition of a reverse proxy that is objective?
(and can distinguish it completely from a non-reverse proxy cache?)

Joe

---

From: "Brian D. Davison" <[email-masked]>
Date: Sat, 11 Sep 1999 14:19:12 -0400 (EDT)

> (and can distinguish it completely from a non-reverse proxy cache?)

How about this:

  A reverse proxy (usually in the form of an httpd accelerator) handles
  requests for lots of users but for only (relatively) few objects.

  This is in comparison to a forward proxy which handles requests for
  relatively few users but lots of objects.

In any case, the terms ('forward proxy' and 'reverse proxy') identify the
ends of a spectrum of possible implementations and the line between them is
quite blurred.

Brian D. Davison                Laboratory for Computer Science Research
[email-masked]                 Rutgers, The State Univ. of New Jersey
[email-masked]          http://www.cs.rutgers.edu/~davison/
========== WEB CACHING RESOURCES: http://www.web-caching.com/ ==========

---

From: Henrik Nordstrom <[email-masked]>
Date: Mon, 13 Sep 1999 20:17:17 +0200

> useful objective metrics.

Noted.

The problem being that real life is perhaps a bit to blurred to be able
to clearly define what is reverse with a "reverse proxy", and why that
makes it a "reverse proxy" as opposed to a "non-revers proxy" without
bringing such terms into the definition.

I think of it as a distinction where the proxy is deployed and for what
purpose. Other see it as a difference in technical details of how the
request looks like when received by the proxy, which may classify TCP
hijacking proxies as being reverse proxies, and I stronly object to
that.

> (and can distinguish it completely from a non-reverse proxy cache?)

What about this:

A reverse proxy is officially published (in DNS and/or by official IP
address) as the origin server and forwards received request towards the
real origin server. Common usage is relaying requests through a server
side firewall or providing alternate access points where traffic is
relayed through private network(s).

Leave out the common use examples if you like, but I think they help to
clarify the intent of the definition.

Why I say towards and not to is because it may be deployed in several
layers in some extreme cases. If the examples is left out then the
definition better reads to and not towards to remove some ambuigity
where the term may be applied.

--
Henrik Nordstrom