Web Cache中三种代理模式(正向代理、反向代理、透明代理)

以下内容根据雷葆华所著《CDN技术详解》整理得到。

Web Cache

       通常来说,根据缓存内容的不同可以将Cache设备分为Web Cache流媒体Cache两大类。Web Cache设备主要用于缓存普通网页的内容和对象,同时大多数设备也具备文件下载、流媒体服务等能力;流媒体Cache设备主要是针对视频流媒体服务进行加速,功能相对单一。
设备厂商通常不会进行明确区分,但是CDN服务提供商会采用不同的技术路线和实现方式进行优化。
       Web Cache作为一种网页缓存技术,可以在用户访问网站服务器的任何一个中间网元上实现。根据HTTP协议的定义,在一次网页访问中,用户从客户端发出请求到网站服务器响应请求内容的交互过程中,通常会涉及4个关键的网元:用户、代理、网关和Web服务器

  1. 用户端可以通过在浏览器中缓存访问过的网页,再次访问时可以直接访问网页副本;
  2. 根据不同的应用场景和用户需求,Web Cache通常作为代理或网关部署在用户的访问路径上.部署的位置不同、工作模式不同,对Web Cache有不同的要求。

       当Web Cache作为代理使用时,通常工作在正向代理或者透明代理的模式,Web Cache可以在这两种模式下实现访问内容副本的缓存和服务;Web Cache应用最多的地方还是在网关上,网关通常工作在反向代理模式。

三种代理

正向代理和透明代理中,用户主机和代理服务器在同一网络环境中,反向代理中,代理服务器和应用服务器在同一网络环境中。

正向代理

正向代理(Forward Proxy)方式下,使用者需要配置其网络访问的代理服务器地址为Cache设备的地址,内网用户对互联网的所有访问都通过代理服务器代理完成。此时也可以在其上加一些过滤规则,针对某些应用和某类访问设置代理。
正向代理工作示意图
       配置完成后,用户在上网时其主机对外网服务器的数据传输首先要传输给正向代理服务器,代理服务器检查代理缓存中是否保存了用户请求数据,如果有则直接返回给用户;如果没有缓存请求内容,则正向代理服务器负责发送用户主机请求数据到外网目标服务器,接收并缓存外网服务器响应数据,同时将响应数据反馈给用户主机。(在执行正向代理功能时也可以完成安全认证和访问控制功能,比如可以设置某些特定用户在工作时间访问外网站点,或者禁止访问某些外部站点等。)
       正向代理多用于中小企业网络环境,Cache设备作为企业网的出口网关提供代理服务、内容缓存、Internet访问控制、安全认证等功能。在正向代理模式下,Cache设备可以为企业网节省出口带宽,提高企业内部网络的安全性,防止员工滥用网络资源并在一定程度上防御病毒感染。
       代理服务器一定程度上也缓解了源节点访问的压力,有点分级缓存的概念。

反向代理

反向代理(Backward Proxy)方式中,用户不需要配置代理服务器地址,Cache设备的地址作为被访问域的服务地址写入DNS记录,并利用Cache设备的内容路由/交换能力完成代理访问。反向代理和其他代理方式的区别是,反向代理专门对定制的内容进行加速,如域名streamabc.com之中的所有网页内容或域名streamcde.com之中的所有流媒体内容。
反向代理工作示意图
       用户直接访问代理服务器获取应用服务器提供的服务,而不需要配置任何代理服务。大致流程为,用户首先发送数据请求到外网的反向代理服务器,代理服务器检查代理缓存中是否保存了用户请求的数据,如果有则直接返回给用户,如果没有缓存请求的内容,则反向代理服务器将用户主机请求数据发送给应用服务器,同时接收应用服务器响应数据并反馈给用户主机,同时缓存用户请求相关内容。在执行反向代理功能时,代理服务器响应了大部分应用访问请求,大大减轻了应用服务器的负载压力。
       在反向代理方式下,当Cache数量较多,网络规模较大时,需要部署**GSLB(Global Server LoadBalancing)**来对全网中的Cache进行负载均衡,并对全网的内容分发策略进行设定,就形成了CDN网络的雏形。反向代理多用于大型ISP/ICP和运营商环境,对于运营商和ISP,反向代理可以实施透明的内容缓存,增加用户访问内容的速度和提高客户满意度。

透明代理

透明代理(Transparent Proxy)方式下,用户的浏览器不需要配置代理服务器地址,但是用户的路由设备需要支持WCCP协议(Web Cache Control Protocol)。路由器配置了WCCP功能后,会把指定的用户流量转发给Cache,由Cache对用户提供服务。或者采用四层交换机实现,都可以支持负载均衡,可以对多台cache平均分配流量,从而扩展网络规模,支持大量用户访问。
透明代理可以看做是通过网络设备或协议实现的正向代理工作模式,因而具备很多与正向代理相同的特点,多用于企业网环境和运营商环境。

Web Cache实现

       首先,Web Cache的技术本质是缓存,在面向用户一侧时扮演服务器的角色,在面向网站的源服务器时扮演客户端的角色。因为Web Cache的介入,原始的客户端直接访问源服务器的访问过程就变成了从客户端到Web Cache,再从Web Cache到源服务器的两个访问过程,所以原有的点到点的单次HTTP协议过程也变成了多次HTTP协议过程,因此Web Cache应具备HTTP协议所描述的基本功能。
       其次,在实现最基本的HTTP协议能力和缓存工作方式的基础上,要根据应用场景和工作模式确定Web Cache应具备的功能,并明确应达到的性能指标。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LLXIN7

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值