|
代理服务器一些特殊类型的应用
应用级与回路级代理
应用级代理是已知代理服务为哪个应用提供的代理,它能了解并解释应用协议中的命令,而回路级代理在客户端与服务器之间不解释应用协议中的命令就建立了连接回路。大多数应用级代理的最新版本是一个像sendmail的应用,由它来完成存储转发协议。大部分最新回路级代理是一个新式的代理网关,这个网关对外像一个代理,对内象一个过滤路由器。
应用级代理使用修改的过程,回路级代理使用修改的客户程序。这与代理的实用性有关。为了实现一个代理连接,你必须知道连接的方向。一个混合网关可以很容易地阻止连接,但一个代理主机只能接收连接,并从得到的信息中判断它要往那里继续进行连接。一个回路级代理不能解释应用协议,需要通过其它方式给它提供信息。因为客户程序的能力是很有效的,应用级代理通常是为了利用它们了解应用协议的优点,因此他们能使用修改的过程。而回路级代理,通常无法使用修改的过程,只能使用修改的客户程序。
尽管还没有修改的应用级代理,但确实存在着修改的回路级代理,如plug?gw就是一个修改的过程并且是一个回路级代理。它连接的目标地址完全取决于源地址和与之连接的源及目标端口。
一个回路级代理的优点在于它能够为各种不同的协议提供服务。大多数回路级代理服务器也是公共代理服务器,它们几乎对于任何协议都支持,但不是每个协议都能由回路级代理轻易实现的,如FTP协议就是这样。它要求从客户端的数据端口连接到服务器上,并要求作协议级的调整和应用级的知识。回路级代理的缺点在于它对因代理而产生的事件几乎无法控制,像包过滤一样,它为源地址和目的地址提供连接,但是不能判断出经过它的命令是否安全或超出了协议的范围。回路级代理会很容易地被服务器设置的、分给其它服务器的端口号所蒙骗。
公共与专用代理服务器
虽然“应用级”和“回路级”是常用的术语,但是我们更加注重“公共”和“专用”代理服务器的区别。一个专用代理服务器只适用于单个协议,而一个公共代理服务器则适用多个协议。实际上专用代理服务器是应用级的,而公共代理服务器是属于回路级的。由于存在一个了解许多协议的公共的应用级代理服务器,或一个专用的回路级代理服务器(只提供一个服务,但了解多个协议),因此采用“专用”和“公共”这两个术语要比“应用级”和“回路级”好理解一些。
智能代理服务器
如果一个代理服务器不光是转发请求,同时还能够做其它许多事情的话,这样的代理服务器就称为智能代理服务器,如CERN HTTP代理服务器还能够将数据保存在缓存中,以便同样的数据可以不必再从因特网上下载了。代理服务器(特别是应用级代理服务器)可以比其它方式提供更好的日志和访问控制功能。代理服务器的功能在不断迅速地发展,现在已有许多代理服务器除了提供基本功能外,还在不断增加新的功能。对于一个专用的应用级代理来说很容易升级到智能代理服务器,但对一个回路级的代理来说则较为困难。 |
|