• web(3)


    WEB代理

    1.中间媒体:在客户机与服务器之间的路径上存在的媒体,如代理,网关,遂道
    2.中间媒体的作用
      中间媒体的出现,可为客户机与服务器两方都提供帮助,减少一些不必要的通信。例如,中间媒体可以有一个自己的高速缓存,这样便可在不涉及原始服务器的情况下向客户机直接回传响应。当中间媒体离客户机近时,客户机感觉到延迟时间会变得短一些。因为消息只须传一个较短距离,网络的负载也降低了,同时,中间媒体也降低了服务器负载。中间媒体是可与始发请求在同一台机器上,也可以在不同机器上的程序。

    3.代理定义:
      中间媒体程序既充当服务器又充当客户机,用于对请求进行转发。代理通常作为通过网络防火墙的门户使用,代理服务器从其他客户机那里接收请求,并为它们提供服务,或者将这些请求传递给其他服务器(并进行可能的转换【将http协议转成其他协议】)

    4.网关  

      通常是非HTTP服务器(比如邮件或FTP服务器)的中间媒介,向非HTTP服务器转发一条消息时,网关会将HTTP请求转换成其他服务的协议,响应会返回网关,再由网关经过适当的转换后,将响应转发给原始的发送方。

      网关又称网间连接器、协议转换器。网关在传输层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互连,也可以用于局域网互连;    

      网关实质上是一个网络通向其他网络的IP地址,比如有网络A和网络B,属于两个不同的网段,在没有路由器的情况下,这两个网络之间是不能进行TCP/IP通信的。A中的机子如果要也B中的机子通信,则首先A中的机子先把消息发送给A中的网关,再由A中的网关把消息发送给B中的网关,B中的网关再把消息发送给B中的某台机子,所以,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。网关的IP地址是具有路由功能的设备的IP地址,如路由器

    5.遂道
      遂道是在两个连接之间对数据进行中继的中间媒体,它不分析或解释经过它的HTTP消息。相反,它只读取请求行(HTTP消息的第一行),以定位要联系的主机。遂道并不高速缓存响应,它的生存时间是与连接双方之间的通信时间相等的,如果连接双方关闭,遂道便不复存在了。

    6.代理的高级分类

    A.常规代理与高速缓存代理

       常规代理只是转发请求和响应,不做缓存处理;而高速缓存代理还维护着一个私有的存储空间,在其中保存过去已接收的响应。

    B.透明代理与不透明代理  

       透明代理对通过的消息只做肤浅的修改,如:添加同它自己或接收消息的那台服务器有关的身份验证信息,不会对请求或响应进行任何深层次的改动,     

       不透明代理可对请求、响应进行深层次的修改。对请求的一种典型修改便是匿名,目的是隐藏客户机的信息;对响应进行修改的一个例子便是媒体类型的转换-----图像从一种格式转换成另一种格式,以减少响应数量

    7.代理的应用

    A.共享WEB访问

       客户机通过代理共享Internet连通性,并可同时共享资源。如多个客户机向原始服务器请求同一资源,代理和原始服务器之间只需建立单一连接。否则,便需要在各个客户机和原始服务器之间建立单独的连接,从而增加原始服务器的负载。如果发出的是对不同资源的请求,那么代理可对这些请求进行排队【串行化】,如获取第一个请求的响应出现延迟,那么第二个请求也会延迟。

    B.调整缓存响应  

       代理的高速缓存功能是可选的,即可配置的

    C.匿名客户机  

       代理在隐藏它后面的各个客户机的身份时,起着重要的作用。当WEB请求经过代理转发给原始服务器时,原始服务器会认为那个代理就是发出请求的客户机,并不知道是代理后面的具体哪一台WEB客户机。

    D.转换请求和响应

    E.充当非HTTP系统的网关  

       代理可充当WEB客户机和FTP服务器之间的中间媒体,代理像作为WEB中间媒体使用时那样工作:把客户机的请求转发给服务器,把响应回送给客户机。然而,由于WEB客户机和FTP服务器采用的不是同一协议,所以代理必须把客户机的HTTP请求转换成一个FTP请求,并把FTP服务器的响应重新格式化为HTTP响应,因此,代理在此起的是网关的作用

    F.过滤请求和响应  

       充当着门卫的角色,可过滤掉不合适的请求和响应。代理可根据目的地站点而过滤掉特定的请求【如:公司内部禁止访问部分网站】,也可根据像响应大小或响应的数据格式【如:病毒】这样的特征而过滤掉特定的响应。

    8.含有代理的HTTP请求示意图

    A. 浏览器针对它事先配置好的一个代理执行域名系统查找,找到代理服务器的IP地址后,然后同它建立一个TCP连接(步骤1和2)

    B. 浏览器向代理服务器发送HTTP请求(步骤3)

    C. 代理服务器对针对原始服务器的请求执行DNS查找,找到原始服务器的IP地址后,然后同原始服务器建立一个TCP连接(步骤4,5)

       【从技术的角度看,浏览器和代理完全可用不同的DNS服务器完成各自的查找】

    D. 代理把HTTP请求发送给原始服务器(步骤6)

    E. 原始服务器把HTTP响应发送给代理(步骤7),然后代理把HTTP响应转发给浏览器(步骤8)

       【在这一阶段,浏览器可选择建立与代理的并行连接,而代理可选择建立与原始服务器的并行连接(步骤9,10)】

  • 相关阅读:
    结巴分词 0.14 版发布,Python 中文分词库
    Lazarus 1.0.2 发布,Pascal 集成开发环境
    Android全屏 去除标题栏和状态栏
    服务器日志现 Android 4.2 传将添多项新特性
    Percona XtraBackup 2.0.3 发布
    长平狐 Android 强制设置横屏或竖屏 设置全屏
    NetBeans 7.3 Beta 发布,全新的 HTML5 支持
    CppDepend现在已经支持Linux
    GromJS 1.7.18 发布,服务器端的 JavaScript
    Apache OpenWebBeans 1.1.6 发布
  • 原文地址:https://www.cnblogs.com/notebook2011/p/2829752.html
Copyright © 2020-2023  润新知