📄 rfc3040.txt
字号:
presentation device for content consumers.
2.4 Topological terms
The following definitions are added to describe caching device
topology:
user agent cache
The cache within the user agent program.
local caching proxy
The caching proxy to which a user agent connects.
intermediate caching proxy
Seen from the content consumer's view, all caches participating in
the caching mesh that are not the user agent's local caching
proxy.
cache server
A server to requests made by local and intermediate caching
proxies, but which does not act as a proxy.
cache array
A cluster of caching proxies, acting logically as one service and
partitioning the resource name space across the array. Also known
as "diffused array" or "cache cluster".
Cooper, et al. Informational [Page 7]
RFC 3040 Internet Web Replication & Caching Taxonomy January 2001
caching mesh
a loosely coupled set of co-operating proxy- and (optionally)
caching-servers, or clusters, acting independently but sharing
cacheable content between themselves using inter-cache
communication protocols.
2.5 Automatic use of proxies
Network administrators may wish to force or facilitate the use of
proxies by clients, enabling such configuration within the network
itself or within automatic systems in user agents, such that the
content consumer need not be aware of any such configuration issues.
The terms that describe such configurations are given below.
automatic user-agent proxy configuration
The technique of discovering the availability of one or more
proxies and the automated configuration of the user agent to use
them. The use of a proxy is transparent to the content consumer
but not to the user agent. The term "automatic proxy
configuration" is also used in this sense.
traffic interception
The process of using a network element to examine network traffic
to determine whether it should be redirected.
traffic redirection
Redirection of client requests from a network element performing
traffic interception to a proxy. Used to deploy (caching) proxies
without the need to manually reconfigure individual user agents,
or to force the use of a proxy where such use would not otherwise
occur.
interception proxy (a.k.a. "transparent proxy", "transparent cache")
The term "transparent proxy" has been used within the caching
community to describe proxies used with zero configuration within
the user agent. Such use is somewhat transparent to user agents.
Due to discrepancies with [1] (see definition of "proxy" above),
and objections to the use of the word "transparent", we introduce
the term "interception proxy" to describe proxies that receive
redirected traffic flows from network elements performing traffic
interception.
Interception proxies receive inbound traffic flows through the
process of traffic redirection. (Such proxies are deployed by
network administrators to facilitate or require the use of
appropriate services offered by the proxy). Problems associated
with the deployment of interception proxies are described in the
Cooper, et al. Informational [Page 8]
RFC 3040 Internet Web Replication & Caching Taxonomy January 2001
document "Known HTTP Proxy/Caching Problems" [23]. The use of
interception proxies requires zero configuration of the user agent
which act as though communicating directly with an origin server.
3. Distributed System Relationships
This section identifies the relationships that exist in a distributed
replication and caching environment. Having defined these
relationships, later sections describe the communication protocols
used in each relationship.
3.1 Replication Relationships
The following sections describe relationships between clients and
replicas and between replicas themselves.
3.1.1 Client to Replica
A client may communicate with one or more replica origin servers, as
well as with master origin servers. (In the absence of replica
servers the client interacts directly with the origin server as is
the normal case.)
------------------ ----------------- ------------------
| Replica Origin | | Master Origin | | Replica Origin |
| Server | | Server | | Server |
------------------ ----------------- ------------------
\ | /
\ | /
-----------------------------------------
| Client to
----------------- Replica Server
| Client |
-----------------
Protocols used to enable the client to use one of the replicas can be
found in Section 4.
3.1.2 Inter-Replica
This is the relationship between master origin server(s) and replica
origin servers, to replicate data sets that are accessed by clients
in the relationship shown in Section 3.1.1.
Cooper, et al. Informational [Page 9]
RFC 3040 Internet Web Replication & Caching Taxonomy January 2001
------------------ ----------------- ------------------
| Replica Origin |-----| Master Origin |-----| Replica Origin |
| Server | | Server | | Server |
------------------ ----------------- ------------------
Protocols used in this relationship can be found in Section 5.
3.2 Proxy Relationships
There are a variety of ways in which (caching) proxies and cache
servers communicate with each other, and with user agents.
3.2.1 Client to Non-Interception Proxy
A client may communicate with zero or more proxies for some or all
requests. Where the result of communication results in no proxy
being used, the relationship is between client and (replica) origin
server (see Section 3.1.1).
----------------- ----------------- -----------------
| Local | | Local | | Local |
| Proxy | | Proxy | | Proxy |
----------------- ----------------- -----------------
\ | /
\ | /
-----------------------------------------
|
-----------------
| Client |
-----------------
In addition, a user agent may interact with an additional server -
operated on behalf of a proxy for the purpose of automatic user agent
proxy configuration.
Schemes and protocols used in these relationships can be found in
Section 6.
3.2.2 Client to Surrogate to Origin Server
A client may communicate with zero or more surrogates for requests
intended for one or more origin servers. Where a surrogate is not
used, the client communicates directly with an origin server. Where
a surrogate is used the client communicates as if with an origin
server. The surrogate fulfills the request from its internal cache,
or acts as a gateway or tunnel to the origin server.
Cooper, et al. Informational [Page 10]
RFC 3040 Internet Web Replication & Caching Taxonomy January 2001
-------------- -------------- --------------
| Origin | | Origin | | Origin |
| Server | | Server | | Server |
-------------- -------------- --------------
\ | /
\ | /
-----------------
| Surrogate |
| |
-----------------
|
|
------------
| Client |
------------
3.2.3 Inter-Proxy
Inter-Proxy relationships exist as meshes (loosely coupled) and
clusters (tightly coupled).
3.2.3.1 (Caching) Proxy Meshes
Within a loosely coupled mesh of (caching) proxies, communication can
happen at the same level between peers, and with one or more parents.
--------------------- ---------------------
-----------| Intermediate | | Intermediate |
| | Caching Proxy (D) | | Caching Proxy (E) |
|(peer) --------------------- ---------------------
-------------- | (parent) / (parent)
| Cache | | ------/
| Server (C) | | /
-------------- | /
(peer) | ----------------- ---------------------
-------------| Local Caching |-------| Intermediate |
| Proxy (A) | (peer)| Caching Proxy (B) |
----------------- ---------------------
|
|
----------
| Client |
----------
Client included for illustration purposes only
Cooper, et al. Informational [Page 11]
RFC 3040 Internet Web Replication & Caching Taxonomy January 2001
An inbound request may be routed to one of a number of intermediate
(caching) proxies based on a determination of whether that parent is
better suited to resolving the request.
For example, in the above figure, Cache Server C and Intermediate
Caching Proxy B are peers of the Local Caching Proxy A, and may only
be used when the resource requested by A already exists on either B
or C. Intermediate Caching Proxies D & E are parents of A, and it is
A's choice of which to use to resolve a particular request.
The relationship between A & B only makes sense in a caching
environment, while the relationships between A & D and A & E are also
appropriate where D or E are non-caching proxies.
Protocols used in these relationships can be found in Section 7.1.
3.2.3.2 (Caching) Proxy Arrays
Where a user agent may have a relationship with a proxy, it is
possible that it may instead have a relationship with an array of
proxies arranged in a tightly coupled mesh.
----------------------
---------------------- |
--------------------- | |
| (Caching) Proxy | |-----
| Array |----- ^ ^
--------------------- ^ ^ | |
^ ^ | |--- |
| |----- |
--------------------------
Protocols used in this relationship can be found in Section 7.2.
3.2.4 Network Element to Caching Proxy
A network element performing traffic interception may choose to
redirect requests from a client to a specific proxy within an array.
(It may also choose not to redirect the traffic, in which case the
relationship is between client and (replica) origin server, see
Section 3.1.1.)
Cooper, et al. Informational [Page 12]
RFC 3040 Internet Web Replication & Caching Taxonomy January 2001
----------------- ----------------- -----------------
| Caching Proxy | | Caching Proxy | | Caching Proxy |
| Array | | Array | | Array |
----------------- ----------------- -----------------
\ | /
-----------------------------------------
|
--------------
| Network |
| Element |
--------------
|
///
|
------------
| Client |
------------
The interception proxy may be directly in-line of the flow of traffic
- in which case the intercepting network element and interception
proxy form parts of the same hardware system - or may be out-of-path,
requiring the intercepting network element to redirect traffic to
another network segment. In this latter case, communication
protocols enable the intercepting network element to stop and start
redirecting traffic when the interception proxy becomes
(un)available. Details of these protocols can be found in Section 8.
4. Replica Selection
This section describes the schemes and protocols used in the
cooperation and communication between client and replica origin web
servers. The ideal situation is to discover an optimal replica
origin server for clients to communicate with. Optimality is a
policy based decision, often based upon proximity, but may be based
on other criteria such as load.
4.1 Navigation Hyperlinks
Best known reference:
This memo.
Description:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -