The definition of surrogate in
http://www.ietf.org/internet-drafts/draft-ietf-wrec-taxonomy-03.txt
surrogate (a.k.a. "reverse proxies", "web server accelerators")
An intermediary program which acts as a server or tunnel for the
purpose of responding to requests on behalf of one or more origin
servers. Requests are serviced internally from a cache or by
tunnelling them on to origin servers. The implementation
requirements for surrogates have not been standardized; depending
on the implementation, surrogates may or may not respond to the
cache directives defined in [1] . Surrogates are also known as
"reverse proxies" and "(origin) server accelerators".
is not accurate because it refers to "tunnelling". A surrogate does
not tunnel requests -- it forwards them. Likewise, the content may be
transformed or redirected in the process. Note that it is impossible
for an HTTP tunnel to cache responses.
HTTP defines these things as "gateways". While I understand the
reluctance to use such an overloaded term, there is no way to avoid
including all aspects of an HTTP-to-HTTP gateway when defining this
new term, unless you want to add more restrictive requirements
(such as: "surrogates" only applies to HTTP-to-HTTP gateways, or
perhaps only non-transforming HTTP-to-HTTP gateways).
The implementation requirements for HTTP-aware "surrogates" have been
standardized. They are all the requirements for gateways in HTTP.
Changing the name doesn't change those requirements. Changing the name
doesn't make the currently broken implementations of "reverse proxies"
any more compliant with HTTP.
...........................................................................
Roy T. Fielding fielding@ebuilt.com
eBuilt, Inc. tel:+1.949.609.0000
2652 McGaw Ave. fax:+1.949.609.0001
Irvine, CA 92614-5840 USA http://www.eBuilt.com
...........................................................................
This archive was generated by hypermail 2b29 : Thu Nov 18 2004 - 11:21:28 MST