按规定的策略在多服务器实施ip数据报发送的方法和系统的制作方法

文档序号:7727690阅读:232来源:国知局
专利名称:按规定的策略在多服务器实施ip数据报发送的方法和系统的制作方法
技术领域
本发明涉及计算机网络,特别地涉及在网际协议(IP)网络中多个服务器上按照所规定的策略实施网际协议(IP)数据报发送的方法和系统。
因特网是计算机和计算机网络(“NET”)的全球网络。因特网连接着使用各种不同操作系统或语言的计算机,包括UNIX,DOS,Windows,Macintosh等。为了有助于和允许在这些各种系统和语言之间通信,因特网使用称为TCP/IP(“传输控制协议/网际协议”)的语言。TCP/IP协议支持因特网的三种基本应用·发送和接收电子邮件,·计算机远程登录(“Telnet”),和·从一个计算机向另一个计算机传送文件和程序(“FTP”或“文件传送协议”)TCP/IPTCP/IP协议组根据两个最重要的协议命名·传输控制协议(TCP),和·网际协议(IP)。
它的另一个名称是网际协议组。更普通的术语TCP/IP用于指整个协议组。TCP/IP的第一设计目的是建立网络间的互联,提供通用的通信服务网间网,或互联网。取决于通信接口,每个物理网络具有它自己的技术,以程序接口的形式提供运行在物理网络和用户应用程序之间的基本通信功能。物理网络的结构用户是无法知道的。TCP/IP的第二目的是互联不同的物理网络以形成对于用户所呈现的一个大网络。
TCP是提供端到端数据传输的传输层协议。它负责提供在两个计算机系统之间的可靠信息交换。在两个计算机系统之间的一个TCP连接上可以同时支持多个应用。
IP是网络层协议,将物理网络结构隐藏在其下。计算机之间传递信息的一部分是路由功能,保证消息在该网络中正确地传送到它们目的。IP提供这个路由功能。一个IP消息称为一个IP数据报。
应用层协议用于TCP/IP顶层从始发计算机系统向目的计算机系统传输用户和应用数据。这种应用层协议例如是文件传输协议(FTP),Telnt,Gopher,超文本传送协议(HTTP)。
IP路由器“路由器”是一个计算机,它连接两个网络并且从一个网络向另一个网络传递消息。路由器能够选择网络之间的最佳传输路径。基本路由功能是在TCP/IP协议堆栈的IP层实现的,因此在一个以上接口运行的TCP/IP的任何主机(或计算机)或工作站在理论上能够在网络间传递消息。因为IP实现了基本路由功能,术语“IP路由器”被经常使用。可是,称为“路由器”的专用网络硬件设备可以提供比IP中实现的最小路由功能更复杂的路由功能。
环球网随着因特网容量和复杂性的增大,已经开发了工具以帮助在网络上查找信息,通常称为导航器或导航系统。已经开发的导航系统包含标准例如Archie,Gopher和WAIS。环球网(“WWW”或“Web”)是当前的高级导航系统。Web是·基于因特网的导航系统,·用于因特网的信息分配和管理系统,和·用于在Web上通信的动态格式。
对于使用Web无缝隙地组合了包括静止图象,文本,音频和视频信息的格式。利用图象用户接口(“GUI”,发音为“gooey”)的Web上的用户可以透明地与系统上不同主机和不同系统应用(包括FTP和Telnet)以及用于文件和文献例如包括文本、声音和图象的不同信息格式通信。
超媒体Web使用超文本和超媒体。超文本是超媒体的子集并且称为基于计算机的“文件”,其中读者可以以非线性方式从文件的一个位置移动到另一个位置或另一个文件。为此,Web使用了用户-服务器结构。Web服务器能够使用户通过Web和用户计算机访问超文本和超媒体信息。(用户的计算机称为Web服务器计算机的客户计算机。)该客户机向Web服务器发送请求,服务器反应、搜索和响应。Web允许客户机应用软件利用到其它超媒体文件的超文本链接能力从Web文件服务器请求和接收超媒体文件(包括格式的文本,音频,视频和图象)。
Web然后可以作为驻留在Web主机上的文档文件集浏览,该主机使用网络协议由超链接互联,形成跨越因特网的可视“web”。
均匀资源定位器因特网资源是通过均匀资源定位器(URL)明确识别的,该定位器是在特定位置的特定资源的指针。URL指定用于访问服务器的协议(例如HTTP,FTP,……),服务器名称和在该服务器上文件的位置。
超文本传送协议出现在Web客户机的监视器上的每个Web页可以作为复合文件出现,该文件集成了例如文本,图象,声音和动画。每个这种页还可以包括到其它Web文件的超链接,以便客户计算机上的用户利用鼠标可以点击图标和可以启动超链接跳到相同或不同Web服务器上的新的页上(该新的页是另一个文档文件的图形表达)。
Web服务器是WEB主机上的软件程序,该程序一般通过因特网回答来自WEB客户机的请求。所有WEB使用语言或协议与WEB客户机通信,称为超文本传送协议(HTTP)。所有数据类型可以使用这种协议在WEB服务器和客户机之间进行交换,包括超文本置标语言(HTML),图象,声音和视频。HTML描述了文件和页的版面的布局,内容和超链接。当浏览时WEB客户机·将用户指定命令转换为HTTP GET请求,·连接到适当的服务器以获得信息,和·等待响应。来自服务器的响应可以是所请求的文件或错误消息。
在返回文件或错误消息后,WEB客户机与WEB服务器之间的连接闭合。
第一版本的HTTP是无国籍协议。即利用HTTP在每个客户机和每个服务器之间没有连续的连接。使用HTTP的WEB客户机接收作为HTML数据或其它数据的响应。本说明应用于1.0版本的HTTP协议,而新的1.1版本在一定条件下通过在服务器与客户机之间保持有效的连接而突破了无国籍协议的障碍。
在接收后,WEB客户机格式化和提交数据或启动辅助应用例如声音播放器来呈现该数据。为此,服务器或客户机确定所接收的各个类型数据。WEB客户机也称为WEB浏览器,因为它实际上浏览从WEB服务器检索到的文件。
域名主机或计算机名称(例如WWW.entreprise.com)使用称为DNS(“域名服务”)的方法翻译为数字因特网地址(例如194.56.78.3),和反之相同。DNS由网络驻留服务器也称为域名服务器或DNS服务器支持。
内联网一些公司使用相同结构作为WEB在他们自己的公司内部通信。在此情况下,该结构称为“内联网”。这些公司使用相同网络/传输协议和基于本地的WEB服务器以粘贴方式提供对大量的公司信息的访问。由于这个数据可以是公司专用的,和因为公司成员仍然需要访问公共WEB信息,他们利用称为防火墙的特别设备防止对他们网络的访问。防火墙用于避免不属于公司的人从公共因特网访问专用内联网。
防火墙防火墙防止连接到因特网的外部计算机利用因特网连接访问一个或多个计算机。防火墙是一种网络结构,通常由硬件和软件产生,形成防火墙内网络计算机与防火墙外计算机之间的界限。防火墙内的计算机形成具有内部访问能力的安全子网并共享外部计算机不能使用的资源。
典型地,对内部和外部计算机的访问由单一设备控制,所述设备包括防火墙。由于其上有防火墙的计算机直接与因特网交互作用,因此对来自外部计算机的不希望访问的严格安全措施是需要的。
防火墙通常用于保护实际建筑或机构场所内的信息例如电子邮件和数据文件。防火墙减少来自因特网未经许可的人侵入的危险。相同的安全措施对于防火墙内希望在外部访问信息的人可以限制或要求特定软件。防火墙可以使用“代理”或“SOCKS”配置以控制来自防火墙每侧对信息的访问。
代理服务器HTTP代理是特别服务器,允许对因特网的访问。它一般结合防火墙软件运行。该代理服务器·等待来自防火墙内的请求(例如HTTP请求),·将该请求传递给防火墙外的远程服务器,
·读取响应,和·将该响应发送回客户机。
一个计算机可以运行几个服务器,每个服务器连接以端口号码识别。代理服务器例如HTTP服务器或FTP服务器占用一个端口。典型地,对每个协议连接使用标准化的端口号码(例如,HTTP=80和FTP=21)。这就是为什么最终用户不得不为每个限定的代理服务器选择指定的端口号码。WEB浏览器通常让最终用户在用户化面板设置主机名称和代理服务器的端口号码。协议例如HTTP,FTP,Gopher,WAIS和Security通常具有指定的代理。一般在SOCKS上最好使用代理,以便能够执行高速缓存、高级登录和访问控制,因为它们提供每个网络服务协议的特定连接。
HTTP高速缓存HTTP是应用层协议,用于WEB浏览器和HTTP代理服务器之间的TCP连接。因此,在WEB浏览器与HTTP代理服务器之间交换的IP数据报包括HTTP数据。由于HTTP代理服务器确定和管理HTTP连接,它们查看和处理包括在IP数据报中的HTTP数据并且它们能够在内部高速缓存器上存储HTTP数据的本地副本。
当HTTP代理服务器从信源系统系统(WEB浏览器)接收请求以便查寻位于目的系统(WEB服务器)的HTTP数据(WEB页)时,根据已经存储在本地高速缓存器中的所请求的HTTP数据可能出现两个情况,或不出现。
·如果所请求的HTTP数据已经位于本地高速缓存器中,HTTP代理服务器马上发送响应给具有存储在高速缓存器中数据的信源系统。
·如果所请求的HTTP数据没有位于本地高速缓存器最,HTTP代理服务器向目的WEB系统(WEB服务器)传递该请求。当HTTP代理服务器从该目的WEB系统(WEB服务器)接收包括HTTP数据(WEB页)的响应时,它在其本地高速缓存器中缓存所述HTTP数据,和向信源系统(WEB浏览器)传递该响应。
当HTTP数据已经位于缓存器中时,该请求不需要由HTTP代理服务器传递给目的WEB系统。由HTTP代理服务器马上返回一个响应。
HTTP高速缓存提供几个优点·改善了HTTP业务的响应时间。当所述HTTP数据已经存储在HTTP代理服务器的高速缓存器中时,HTTP代理服务器马上回答该请求以便查寻HTTP数据。
·优化了网络资源利用率。因为所请求的HTIP数据已经存储在高速缓存器中,所以不需要HTTP代理服务器与目的WEB系统之间的业务。
SOCKS和SOCKS服务器SOCKS是一种协议,其采用了应用程序层协议(例如FTP,Telnet,Gopher,HTTP)的一些封装的形式。利用SOCKS,运行SOCKS客户机软件的系统与运行SOCKS服务器软件的系统之间的应用程序层业务被封装在两个系统之间的虚拟SOCKS通道中。SOCKS主要用于内联网内的系统以便获得到位于内联网外系统的安全访问。
SOCKS服务器起内联网内的系统与内联网外的系统之间中继的作用,因此外部因特网不知道内部系统。它被认为是防火墙的一种形式。
SOCKS服务器(也称为SOCKS网关)是一个软件,允许防火墙内的计算机访问因特网。SOCKS服务器通常安装在位于防火墙内或外的服务器上。防火墙内的计算机作为SOCKS客户机访问SOCKS服务器以到达因特网。WEB浏览器通常让最终用户在定制的面板中设置主机名称和SOCKS服务器的端口号码。在一些操作系统中,SOCKS服务器被指定在单独的文件中(例如SOCKSs.conf文件)。由于SOCKS服务器起协议(HTTP,FTP,……)下层的作用,它不能高速缓存数据(如代理那样),因为它不对协议解码以获知它传输何种数据。
选项WEB浏览器经常建议最终用户在不同选项“没有代理”、“人工代理配置”或“自动代理配置”之间选择,以指定他的计算机与因特网之问的连接。
·直接与因特网连接的用户应当使用缺省选项,即“没有代理”。
·如果内联网由一个或几个防火墙保护,最终用户可以·通过在“人工代理配置”中输入其主机名称来选择这些防火墙之一作为所选择的代理,或·通过指定远端服务器中公共配置文件根据各位置之间的代理属性自动地查阅公司策略。这是通过选择“自动代理配置”和通过对WEB浏览器提供位于远端服务器中的公共配置文件(“通用资源定位器”或“URL”)的唯一地址实现的。
现在,配置大部分WEB浏览器通过SOCKS防火墙传递所有请求,甚至对内部主机的请求。所以,当最终用户想访问基于内部的WEB应用时,他的请求传递给防火墙,然后反射到内部网络中。这种机制在长路径上产生内部业务,在防火墙和在网络上增加了额外负荷,最坏地是,降低最终用户从应用和他试图访问的WEB页看到的响应时间。这称为“非灵活”SOCKS访问(当每个访问都通过SOCKS服务器时)。
人工代理配置WEB浏览器的人工代理配置容易处理。可是,主要缺点是防火墙(或代理)选择是静态的。没有用于选择防火墙的动态标准,例如按照响应时间选择防火墙。防火墙故障要求导航软件的人工重新配置,以便指定另一个有效的防火墙,因为人工配置通常只允许定义每个协议一个防火墙而没有预先配置备用防火墙的可能性。除了WEB浏览器中的人工代理配置外,外部的过程可以用于提供在防火墙选择中的某些稳固性。这例如依赖于使用具有定义在域名服务器(DNS)中别名相同名称的多个防火墙。但是基于这个技术的别名定义仍然有缺点,因为例如当所述WEB客户机本地高速缓存名称解决方案时,WEB客户机例如不总是为名称解决方案连接DNS。使用外部硬件设备的其它技术例如负载和请求调度程序提供了更多的稳固性和负载平衡,但是仍然具有缺点例如需要额外和昂贵硬件。
自动代理配置每次启动WEB浏览器时,自动代理配置(或也称为“自动代理”)可以设置HTTP,FTP,和Gopher代理的位置。自动代理查寻地址范围文件并且命令WEB浏览器直接访问内部IBM主机或到SOCKS服务器访问因特网上的主机。
自动代理配置在WEB浏览器中比简单的代理服务器配置是更希望的,因为能够实现有关查寻(直接或间接)WEB页方式的更复杂规则。自动代理配置对于用户有用,因为如果代理服务器故障,WEB浏览器知道如何直接检索页。代理请求也可以凭系统管理器处理引导至另一个或多个代理服务器,而最终用户不必进行他的WEB浏览器配置的另外改变。一般地,这些代理配置文件(也称为“自动代理编码”)通常用Java描述语言写成。自动代理设施也可以包括地址范围文件,用于命令WEB浏览器直接访问内部主机或到SOCKS服务器访问因特网上主机。SOCKS服务器防止对内部网络不希望的公共访问,同时允许网络成员对因特网的访问。“自动代理”机制的缺点之一是没有前置防火墙故障检测也没有响应时间考虑。
有关在上述部分中提供的技术领域的更多解释可以在下列结合作为参考的出版物中找到·Martin W.Murhammer,Orcun Atakan,Stefan Bretz,Larry R.Pugh,KazunariSuzuki,David H.Wood等人所著“TCP/IP指南和技术综述”,International Technicalsup端口Organization,1998年10月,GG24-3376-05。
·Elliotte Rusty Harold所著“Java网络编程”,O'Reilly出版,1997年2月。
·“简单的因特网”,Valerie Quercia所著,O'Reilly出版,1997年10月。
·“构建因特网防火墙”,Brent Chapman和Elizabeth Zwichky所著,O'Reilly出版,1997年2月。
问题要解决的问题是在内联网内的WEB业务。
当多个代理服务器由内联网内的源设备(例如运行WEB浏览器软件的工作站)使用以访问位于内联网内WEB系统时,访问规则通常由网络管理器定义。所述访问规则的目的是定义由每个源设备(工作站)或内联网内每个源设备组(工作站组)应当使用的代理服务器,以访问位于内联网内的WEB系统。访问规则通常由网络管理器定义。所述访问规则的目的是例如,位于法国的源设备应当使用位于法国的代理服务器,而位于德国的源设备应当使用位于德国的代理服务器。
所述访问规则可以按照应用层协议(ALP)而不同。ALP业务是指包括利用所述ALP的IP数据报数据(例如,HTTP业务是指所有包括HTTP数据的IP数据报)。例如,访问规则可以规定位于比利时的源设备应当访问一个位于法国用于HTTP业务的特定代理服务器和应该访问位于比利时用于FTP业务的特定代理服务器。这些访问规则定义了从内联网访问WEB网的策略,因此称为“WEB访问策略”或“WEB业务策略”。所述WEB业务策略的主要目的是·优化内联网内的网络资源。例如,代理服务器的技术规范和成本取决于将访问该服务器的源设备数量。将由500个源设备访问的代理服务器将比由10000个源设备访问的代理服务器小和因此便宜。
·改善WEB访问服务的性能(来自源设备到位于内联网内WEB系统的访问)。例如,配置设立在法国的代理服务器提供对法国指定数量的源设备的WEB访问服务。当比所预计更多的源设备(例如位于比利时的源设备)访问所述代理服务器时,所述代理服务器的性能可能下降和可能影响WEB访问服务。
·优化网络资源的利用率,特别是使用于访问WEB系统的内联网内所需要带宽最小。例如,当位于法国的源设备想通过代理服务器访问WEB系统时,所述源设备应当使用位于法国的代理服务器而不使用位于日本的代理服务器,使内联网的路径最小(和因此是法国与日本之间的网络资源利用率和带宽最小)以便到达该代理服务器。
·利用WEB业务高速缓存,因为代理服务器通常提供HTTP和FTP高速缓存·优化位于代理服务器与WEB系统之间的网络资源利用率。当由源设备请求HTTP数据已经位于所述代理服务器缓存内时,在代理服务器与目的WEB系统之间不需要业务。
·改善了HTTP业务的响应时间。已经位于HTTP代理服务器高速缓存内的检索HTTP数据的请求马上可以被HTTP代理服务器满足。
一般认为有效的WEB高速缓存必须尽可能靠近源设备进行。因此,对于所述源设备来说访问位于它们附近的代理服务器是很重要的。
问题是在整个内联网内应用WEB访问策略。例如,当WEB访问策略限定位于法国的源设备应当使用位于法国的一个指定代理服务器时,问题是保证所述源设备准确使用所述指定代理服务器并且不使用另一个代理服务器(例如位于日本的)。
当前的解决方案部分地提出该问题·运行在工作站上的WEB应用软件(例如WEB浏览器)可以人工配置目标代理服务器。这个解决方案的主要缺点如下·代理服务器名称必须是已知的并且由最终用户人工配置。错误的代理服务器名称则可能由最终用户输入,并且不应用WEB业务策略。例如,位于图卢兹(法国)的最终用户可能人工配置其WEB浏览器使用位于巴黎而非位于图卢兹的代理服务器。
·WEB浏览器可能以自动代理特性配置。在此情况下,目标代理服务器的静态列表(WEB业务策略)从专用自动代理URL(均匀资源定位器)系统下载到WEB浏览器。这个解决方案的主要缺点如下·最终用户必须配置他的WEB浏览器,以便使用自动代理特性。如果最终用户没有正确地配置其浏览器,WEB业务策略则不能应用。
·自动代理特性必须在内联网内实现。例如,自动代理编码必须在自动代理URL系统上实现。
本发明目的·本发明目的是在多个服务器上按照所定义的策略实施网际协议(IP)数据报的发送。
·本发明的另一个目的是优化WEB访问服务的性能,使源设备按照特定WEB业务策略通过指定代理服务器访问因特网。
·本发明的又一个目的是通过减少内联网网络内WEB业务优化内联网网络资源利用率。
·本发明的另一个目的是简化内联网内WEB业务的设备资源配置。
发明概述按照所定义策略在多个服务器上在网络设备中实施网际协议(IP)数据报发送的方法和系统,每个IP数据报从源设备的信源端口发送到包括多个服务器和至少一个客户机的内联网网络中的目的地设备的目的地端口。该方法包括步骤·确定输入IP数据报的源设备是客户机或是服务器如果IP数据报的源设备是客户机·识别客户机地址,客户机端口,目的地地址,和IP数据报的目的地端口;·在第一列表中搜索服务器地址和服务器端口,该第一列表包括由客户机地址,客户机端口,目的地地址和目的地端口识别的每个连接的服务器地址和服务器端口;如果在所述第一列表中识别服务器地址和服务器端口,和如果所述服务器地址和目的地地址不同或如果所述服务器端口与目的地端口不同·用该服务器地址和服务器端口分别替代IP数据报中的目的地地址和目的地端口;·通过IP网络发送IP数据报。
被认为是本发明特点的新颖和创造性在附带的权利要求书中阐述。可是,当结合附图阅读时,参照对下列说明性详细实施例详细描述,本发明自身以及优选的使用方式、其它目的和优点将更容易理解,其中·

图1是按照现有技术访问环球网的最终用户系统逻辑图。
·图2是按照现有技术访问环球网的最终用户系统的概略图。
·图3表示按照现有技术的IP数据报。
·图4表示具有按照现有技术的多个代理服务器的最终用户工作站。
·图5表示按照本发明管理WEB业务的系统。
·图6表示按照本发明由WEB业务管理扩展使用的表。
·图7是按照本发明管理定义生成器部分的流程图。
·图8是按照本发明的业务分析器部分的流程图。
·图9是按照本发明的入站管理处理器部分的流程图。
·图10是按照本发明的出站管理处理器部分的流程图。
·图11是按照本发明的管理管理器部分的流程图。
本发明优选实施例访问环球网逻辑视图图1表示具有用户接口(102)的用户系统,包括用于访问环球网(WWW)的WEB浏览器(101)。WWW内容利用HTTP协议传输。HTTP请求和响应在WEB浏览器程序(101)与包含用户想要访问的WWW信息的目的地WEB服务器(103)之间交换。在WEB浏览器(101)与WEB服务器(103)之间的SOCKS服务器(104)起中间HTTP中继作用,将HTTP请求和响应传递给它们的目的地。WEB浏览器程序(101)对HTTP代理服务器(104)进行HTTP请求,而HTTP代理服务器将该请求传递给目的地WEB服务器(103)。相反方向的流程(HTTP响应)也通过HTTP代理服务器到达WEB浏览器(101)。以此方式,HTTP代理服务器可以按照其配置(基于某些限定的安全性和访问控制策略)将业务限制在许可的事务处理内。HTTP代理服务器因此保护了WEB浏览器所在的网络。
实际视图图2是图1所述逻辑地建立的实际视图。在该特定示例中,WEB浏览器(201)运行在与内联网(202)网络连接的系统上(工作站)。该内联网网络包括例如IP路由器(206)的网络设备。保护内联网的代理服务器(203)连接(专用)内联网(202)和(公共)因特网(204)两者。目的地WEB服务器(205)也连接到因特网。注意,代理服务器连接到两个网络并且因此起所述两个网络之间通信中间媒介的作用是重要的。通常使用多个代理服务器以便提供访问的稳固性和负载共享。
IP数据报在TCP/IP中数据分组的传输单位称为IP数据报。它是由包含IP协议信息的标题和只与更高层协议有关的数据组成。图3表示在图1和2中描述的实施例中IP数据报的格式。
·(301)IP数据报。IP数据报是在2个计算机系统之间通过TCP/IP网络交换的消息。IP数据报被分成2个部分·标题,和·数据。
·(302)IP数据报标题。标题包括字段例如·信源IP地址(310)(发送IP数据报的计算机的IP地址)。
·目的地IP地址(311)(IP数据报目的地计算机的IP地址)。
IP数据报主要用于发送IP数据报到最终目的地。
·(304)IP数据报数据。该字段包括由发信方发送给目的地计算机系统的数据。目的地计算机系统处理这个数据。由于TCP/IP协议组是以层构成的,IP数据报包括与更高层协议(它是在与本发明有关的环境中的TCP)有关的消息。
·(304)TCP段。TCP消息是通常称为TCP段。
·(305)TCP标题。TCP标题包括例如信源端口(312)和目的地端口(313)的字段,该字段识别由TCP传输的应用层协议(例如HTTP,FTP,Telnet,SOCKS)。该字段主要由IP数据报目的地确定哪个应用包括处理由TCP传输的数据。
·(306)TCP数据。TCP数据字段包括应用数据,由发信方发送给目的地计算机系统。目的地计算机系统处理该数据。由于TCP/IP协议组按层构成,TCP数据部分包括与更高层协议有关的信息,更高层为应用层协议(例如HTTP,FTP,Telnet,SOCKS)。
·(307)应用层消息。IP数据报的TCP数据部分包含应用层消息。例如SOCKS消息,HTTP消息,FTP消息或Telnet消息。按照应用层协议,这个应用层消息也可以分成两个部分。
·(308)应用层标题。应用层标题是与应用协议例如HTTP,FTP,Telnet有关的标题。
·(309)应用层数据。是由负责处理应用层协议的应用处理的数据部分。通常是与最终用户直接有关的数据(例如由最终用户在其工作站输入的数据)。
WEB浏览器和代理服务器图4表示连接到内联网(402)的最终用户工作站(401)。保护内联网的代理服务器(403)与(专用)内联网(402)和(公共)因特网两者连接。目的地WEB系统(405)也与内联网连接(WEB系统例如是WEB服务器,FTP服务器或与可以从内联网访问的因特网连接的任何系统)。
每个代理服务器(403)在本地高速缓存器中存储由位于内联网上的工作站从位于因特网的WEB系统中检索的HTTP(和可能FTP)数据的本地副本。
最终用户工作站(401)包括称为WEB浏览器(406)的软件程序。WEB浏览器配置用于通过代理服务器(403)访问位于因特网的WEB系统。
当WEB浏览器要从目的地WEB系统(405)中检索HTTP数据(例如WEB页)时,最终用户工作站发送(408)包括检索所述HTTP数据的请求的IP数据报给内联网网络上的目的地代理服务器。内联网内的IP路由器接收IP数据报并且将其传递(409)给其目的地。每个IP路由器使用在IP数据报标题内的目的地IP地址字段确定内联网内的下次转发。
当代理服务器从工作站接收检索位于目的地WEB系统(WEB服务器)的HTTP数据(WEB页)的请求时,所请求的HTTP数据可以已经位于本地高速缓存器中或没有位于本地缓存器中·如果所请求的IP地址已经位于缓存器中,HTTP代理服务器马上用包括高速缓存器中的数据的响应回答(412)该请求。
·如果所请求的HTTP数据没有位于缓存器中,HTTP代理服务器将该请求传递(410)给目的地WEB系统(WEB服务器)。当HTTP代理服务器从目的地WEB系统(WEB服务器)接收包括HTTP数据(WEB页)的响应(411)时,所述HTTP数据(WEB页)在本地高速缓存,并且被传递给(412)发信方系统(WEB浏览器)。
工作站也可能包括SOCKS客户机软件,以便访问位于因特网的WEB系统。在此情况下,所述访问通过SOCKS服务器系统进行而非通过代理服务器进行。
IP路由器系统本发明涉及在内联网中管理WEB业务的一个系统和一种方法。图5是用于按照本发明的管理WEB业务的系统的特定实施例图。
包括WEB浏览器的最终用户工作站(源设备)(501)连接到内联网(502)。多个代理服务器(503)可用于访问与因特网(504)连接的WEB系统。按照本发明,称为ALP(应用层协议)管理定义系统(507)并且位于内联网网络内的系统被定义。该ALP管理定义系统包括称为ALP管理定义表的表(508)。配置ALP管理定义表用于需要在内联网中管理的每个ALP业务。典型地,一个表配置用于每个主要WEB应用层协议(例如HTTP,FTP和SOCKS)。为每个特定ALP定义的ALP管理定义表包括涉及所述ALP的WEB业务管理的信息。具体地,每个ALP管理定义表包含必须用作使用所述ALP传输数据的IP数据报的目标的认可服务器的列表。例如,配置用于HTTP的ALP管理定义表包括涉及必须由内联网内工作站(源设备)使用用于访问位于因特网的WEB系统的HTTP代理服务器列表的信启。
可能使用两个镜像ALP管理定义系统以便提供ALP管理定义表的备份(例如使用两个系统前端的调度程序系统)。
内联网内的IP路由器系统(506)负责发送IP数据报。按照本发明,所述IP路由器系统也负责管理WEB业务。它包括·IP路由部分(509),用于发送内联网内任何IP数据报。该IP路由器部分可以是任何现存的IP路由器。
·WEB业务管理扩展部分(510)。
WEB业务管理扩展WEB业务管理扩展提供了在IP路由器系统内管理WEB业务的方法。WEB业务管理扩展以ALP管理配置表(512)配置,所述表包括涉及ALP管理定义表(508)的信息。
一旦它被启动,WEB业务管理扩展马上启动管理定义生成器部分。
·(511)管理定义生成器部分使用ALP管理配置表(512)从ALP管理定义系统(507)检索ALP管理定义系统(508),并且在IP路由器系统中存储所述表的本地副本(508)。
当IP路由器系统(506)从最终用户工作站(501)接收(518)IP数据报时,该IP数据报被传递到WEB业务管理扩展(510)。然后IP数据报被顺序传递到多个其它部分以按照本发明执行该方法·(513)业务分析器部分分析IP数据报并且确定所述IP数据报是发自源设备(工作站)或发自服务器(代理服务器)。
·(514)入站管理处理器部分处理由源设备发出的每个IP数据报。该入站管理处理器·根据的管理连接表(516)和根据所述IP数据报的源IP地址、源端口、目的地IP地址和目的地端口字段确定是否必须更新所述IP数据报,和·如果必须更新所述IP数据报,使用从所述管理连接表(516)检索到的信息更新所述IP数据报的目的地IP地址和目的地端口字段。
·(515)出站管理处理器部分处理由服务器始发的每个IP数据报。出站管理处理器·根据的管理连接表(516)和根据所述IP数据报的源IP地址、源端口、目的地IP地址和目的地端口字段确定是否必须更新所述IP数据报,和·如果必须更新所述IP数据报,使用从所述管理连接表(516)检索到的信启更新所述IP数据报的信源IP地址和信源端口字段。
(517)管理管理器部分处理由源设备始发的每个IP数据报。该管理管理器使用所述IP数据报的目的地端口字段确定包括在所述IP数据报内的数据的ALP(应用层协议),使用所述IP数据报的源IP地址,源端口,目的地IP地址和目的地端口字段从ALP管理定义表(508)(为包括在所述IP数据报的数据的ALP定义的)检索所述IP数据报的管理信息。
如果由所述管理信息请求
丢弃所述IP数据报,以该IP数据报的特性和以所述管理信息建立管理连接表。
使用所述管理信息更新所述IP数据报的目的地IP地址和目的地端口字段。
WEB业务管理扩展最终将IP数据报传递到IP路由器系统内的IP路由器(509)部分。该IP路由器部分发送(519)IP数据报到其目的地。本发明不依赖于IP路由器部分和不依靠由该IP路由器部分处理和发送IP数据报的方式。
WEB业务管理扩展可以在IP路由器系统启动或关闭,例如利用所述IP路由器系统的配置参数。典型地,WEB业务管理扩展·在访问内联网边界的IP路由器系统时启动。
·在位于内联网骨干内的IP路由器系统关闭。
WEB业务管理扩展表图6表示由包括在WEB业务管理扩展内的各种部分使用的不同表。
WEB业务管理扩展使用包括WEB业务管理信息的配置表(508)。对于需要在内联网内管理的每个ALP业务有一个配置表(508)。典型地,为每个主要WEB应用层协议(例如HTTP,FTP和SOCKS)配置一个表。在开始WEB管理业务扩展前,每个配置表产生(例如通过网络管理器)并存储在ALP管理定义系统(507)内。WEB管理业务扩展然后检索并且接收来自所述ALP管理定义系统(507)的每个ALP管理定义表。
·(606)ALP管理定义表。对于需要由WEB业务管理扩展管理的每个ALP业务有一个表。每个表包括内联网内的每个源设备(典型地为工作站)或每组源设备(典型地为工作站组)。
·将用作发自所述源设备(或源设备组)的IP数据报目的地的服务器地址,和包括使用所述ALP的数据,和·丢弃所述IP数据报的指示。
WEB业务管理扩展也使用包括涉及每个ALP管理定义表信息的配置表(512)。在WEB管理业务扩展启动前产生该配置表(例如由网络管理器)。
·(601)ALP管理配置表。对每个应用层协议这个表包括·包括所述ALP的管理信启的有关ALP管理定义表地址,和
·检索所述ALP管理定义表的频率。
其它表由WEB业务管理扩展为内部目的而动态地产生并使用·(612)管理连接表。对于始发由WEB业务管理扩展管理的WEB业务的每个源设备这个表包括·从所述源设备始发的IP数据报内使用的目的地服务器,和·目的地服务器,用作所述被管理业务的实施目的地。
在图6中详细介绍这三个表。
ALP管理配置表ALP管理配置表(601)(在优选实施例中的平面文件)由负责内联网的网络管理器产生。该表将每个应用层协议与包括所述ALP业务的管理信息在检索所述ALP管理定义表频率的ALP管理定义表的地址相关。该表包括记录清单(602),每个记录包括下列信息·(603)ALP(应用层协议)。对于需要由WEB业务管理扩展管理的每个应用层协议有一个值。典型地,为包括HTTP、FTP和SOCKS的每个主要WEB协议定义一个记录。
·(604)ALP管理定义地址。这是为每个ALP(603)定义的ALP管理定义表地址,并且位于ALP管理定义系统(507)。该信息由WEB业务管理扩展使用以便从ALP管理定义系统(507)检索ALP管理定义表(508)。
·(605)频率。在从ALP管理定义系统检索新版ALP管理定义表前,WEB业务管理扩展等待一个给定时间段。该频率由WEB业务管理扩展用于周期性地更新ALP管理定义表本地副本。
ALP管理定义表每个ALP管理配置表(606)(在优选实施例中的平面文件)由负责内联网的网络管理器生成。对于需要由WEB业务管理扩展管理的ALP业务有一个表。每个表将每个源设备(典型地为工作站)或源设备组与内联网相关,具有·将用作IP数据报目的地的服务器地址·发自所述源设备(或源设备组)和·包括使用所述ALP的数据·用于丢弃所述IP数据报的指示。
该表包含一个记录清单(607),每个记录包括下列信息
·(608)客户机IP地址。这是内联网内源设备(典型地为工作站)的IP地址,或与内联网内源设备组(例如位于特定站点的所有工作站)相关的IP地址范围。典型地,为在网络管理器想要管理的业务初始点的每个源设备(或源设备组)定义一个记录。
·(609)服务器IP地址。这是由始发ALP业务的源设备(608)(或源设备组)必须使用的服务器系统的IP地址。服务器IP地址应当是IP数据报目的地IP地址(311)·由源设备(608)发送,和·包括使用与该表(606)(为每个ALP定义一个表)相关的应用层协议的TCP数据。
例如,为HTTP配置的ALP管理定义表包括由内联网内工作站访问位于因特网的WEB系统必须使用的HTTP代理服务器清单。服务器IP地址则是应使用工作站(608)的HTTP代理服务器的IP地址。
·(610)服务器端口。这是标识运行在由服务器IP地址(609)识别的服务器系统的程序(应用)的端口号码,该号码是处理ALP业务所必须使用的。服务器端口是用作IP数据报目的地端口(313)的端口号码·由源设备发送(608),和·包括使用与该表(606)(为每个ALP定义一个表)相关的应用层协议的TCP数据。
例如,为HTTP配置的ALP管理定义表包括应由内联网内工作站访问位于因特网的WEB系统必须使用的HTTP代理服务器清单。服务器端口则是运行在处理HTTP业务的HTTP代理服务器的程序的端口号码(例如80)。该端口号码则是由工作站(608)使用作为发送给由服务器IP地址(609)识别的HTTP代理服务器的HTTP业务的目的地端口。
·(611)强制丢弃。这是丢弃由源设备(608)发出的IP数据报的指示。强制丢弃指示的值可以是“是”或“否”·“是”表示目的地不是服务器系统(609)的IP数据报必须由WEB业务管理扩展丢弃。
·“否”表示目的地不是服务器系统(609)的IP数据报不必由WEB业务管理扩展丢弃。
该表包括所有没有在特定记录(607)中清楚地定义的所有源设备的缺省记录。
管理连接表管理连接表(612)是由管理管理器部分建立并且由入站管理处理器和出站管理处理器部分使用的内部表。该表用于存储发出由WEB业务管理扩展管理的WEB业务的每个源设备·由发自所述源设备的IP数据报使用的目的地服务器,和·用作所述被管理业务的强制目的地的目的地服务器。
该表包括记录清单(613),每个记录提供了下列信息·(614)客户机IP地址。这是发出管理业务的源设备的IP地址。客户机IP地址包括属于所述业务的IP数据报的源IP地址字段(310)的值。
·(615)客户机端口。这是识别在发出管理业务的源设备上运行的程序(应用)的端口号码(该应用称为“源应用”)。客户机端口包括属于所述业务的IP数据报信源端口字段(312)的值。
典型地,在内联网内发出管理WEB业务的每个系统由一个记录(613)。每个系统利用源设备(由客户机IP地址标志(614))和源应用(由客户机端口标志(615))以唯一方式识别。每个记录(613)则是由客户机IP地址(614)和它的客户机端口(615)唯一方式识别。
·(616)目的地IP地址。这是服务器系统的IP地址,是由客户机端口(615)识别并且运行在由客户机IP地址(614)识别的源设备上的源应用始发的IP数据报的目的地。目的地IP地址包括所述IP数据报的目的地IP地址字段(311)值。
·(617)目的地端口。这是识别运行在服务器系统(616)的程序(应用)的端口号码,是由客户机端口(615)识别并且运行在由客户机IP地址(614)识别的源设备的源应用发出的IP数据报的目的地。
目的地端口包括所述IP数据报的目的地端口字段(311)的值。
·(618)服务器IP地址。这是必须是IP数据报目的地的服务器系统的IP地址,该数据报由客户机端口(615)识别运行在客户机IP地址(614)识别的源设备的源应用发出。服务器IP地址由使用ALP管理定义表的管理管理器部分确定。
·(619)服务器端口。这是识别运行在服务器系统(616)的程序(应用程序)的端口号码,它必须是由该源应用始发的IP数据报的目的地,该源应用由在客户机IP地址(614)识别的源设备运行的客户机端口(615)识别。服务器端口由使用ALP管理定义表的管理管理器部分确定。
管理定义生成器WEB业务管理扩展的管理定义生成器部分最好是运行在IP路由器系统上的计算机程序。
该部分负责·利用ALP管理配置表(601)从ALP管理定义系统(507)检索ALP管理定义表(606)·存储IP路由器系统内所述表的本地副本。
当WEB业务管理扩展启动时管理定义生成器部分马上启动。图7是管理定义生成器部分内部逻辑的流程图。该部分·(701)从ALP管理配置表(610,705)检索所有记录。
·(702)对于ALP管理配置表(705)中的每个记录(ALP)(603)·从ALP管理定义系统(706)中检索与ALP(603)有关的ALP管理定义表(707)。所述表利用ALP管理定义地址(604)检索。所述表将由WEB业务管理扩展用于管理与所述ALP(603)有关的业务。最好,使用HTTP(或FTP)协议检索所述表(ALP管理定义地址用作URL)。也可以使用加密的协议(例如加密HTTP)。
·在WEB业务管理扩展正运行的网络设备中存储所述检索出的ALP管理定义表的本地副本(508)。
·(703)建立具有记录在ALP管理配置表(705)中的应用层协议清单(ALP管理清单)。由于必须管理的每个ALP业务有一个记录(603),ALP管理清单包括必须由WEB业务管理扩展管理的所有ALP(例如HTTP,FTP,SOCKS)的清单。
·(704)在环回再次检索ALP管理定义表(707)前,等待一定的时间。该时间从ALP管理配置表(601)内的频率字段(605)中扣除。例如,对于HTTP(603)定义的记录(602)中30分钟的频率(605)表示每30分钟从ALP管理定义系统中检索一次对于HTTP定义的ALP管理定义表。该体制使管理定义生成器(因而WEB业务管理扩展)周期性地检索和存储ALP管理定义表的更新。
可能ALP管理定义系统(706)可以登记管理定义生成器,以便自动发送ALP管理定义表的更新。
业务分析器WEB业务管理扩展的业务分析器部分最好是运行在IP路由器系统上的计算机程序。该部分负责确定每个接收的IP数据报是始发自源设备(典型地为工作站)或始发自服务器系统(典型地为代理服务器)。
图8是称为业务分析器部分的内部逻辑的流程图。该部分·(801)检索一个IP数据报(输入IP数据报)。
·(802)从管理定义生成器获得ALP管理清单。ALP管理清单包括必须由WEB业务管理扩展管理的所有ALP(例如HTTP,FTP,SOCKS)的清单。
·(803)从IP数据报检索与由包括在所述IP数据报内的数据所使用的ALP有关的信息。
·DT目的地端口=目的地端口字段(313)(在所述IP数据报的TCP标题(305)中)·DT源端口=信源端口字段(312)(在所述IP数据报的TCP标题(305)中)·(804)测试IP数据报是否发自源设备并且包括使用必须被管理的ALP的数据。如果DT目的地端口被列入ALP管理表,则IP数据报发自源设备并且包括使用必须被管理的ALP业务的数据(303)。
·如果DT目的地端口被列入ALP管理表·(805)呼叫入站管理处理器·如果DT目的地端口没有列入ALP管理表·(806)测试是否IP数据报始发自服务器系统并且包括使用必须管理的ALP的数据。
如果DT源端口列入ALP管理表,则IP数据报发自服务器系统并且包括使用必须管理的ALP业务的数据(303)。
·如果DT源端口被列入ALP管理表
·(807)呼叫出站管理处理器·如果DT源端口没有列入ALP管理表,则IP数据报不包括使用必须被管理的ALP的数据。
·(808)将IP数据报传递给IP路由器部分·(809)退出WEB业务管理扩展,并且等待下个IP数据报。
入站管理处理器WEB业务管理扩展的入站管理处理器部分最好是运行在IP路由器系统上的计算机程序。该部分处理由源设备始发的每个IP数据报,并且负责·根据管理连接表(612)和根据源IP地址、源端口、目的地IP地址和所述IP数据报的目的地端口字段,确定所述IP数据报是否必须被更新,和·如果所述IP数据报必须被更新,利用从所述管理连接表(612)检索的信息更新所述IP数据报的目的地IP地址和目的地端口字段。
图9是称为入站管理处理器部分内部逻辑的流程图。该部分包括·(901)检索一个IP数据报·(902)检索管理连接表(903)的所有记录·(904)从IP数据报中检索表示所述IP数据报的源和目的地·DT源IP地址=信源IP地址(310)(在所述IP数据报的IP标题(302)中)·DT目的地IP地址=目的地IP地址字段(311)(在所述IP数据报的IP标题(302)中)·(905)在管理连接表(903)中找到由(四个条件)识别的一个记录(613)·客户机IP地址(614)=DT源IP地址·客户机端口(615)=DT源端口·目的地IP地址(616)=DT目的地IP地址·目的地端口(617)=DT目的地端口·如果没有满足所述四个条件则IP数据报属于还没有在管理连接表中定义的一个连接。
·(911)呼叫管理管理器部分。
·如果有一个记录(称为“record-R”)满足了所述四个条件则IP数据报属于已经在管理连接表中定义的一个连接。
·(906)从“record-R”中检索表示哪个服务器系统是IP数据报目的地服务器系统的信息·服务器IP地址(618)·服务器端口(619)·(907)利用识别所述目的地服务器系统的信息更新IP数据报·IP标题(302)中的目的地IP地址字段(311)=服务器IP地址(618)·TCP标题(305)中的目的地端口地址字段(313)=服务器端口(619)这迫使IP数据报发送到目的地服务器系统(618),该系统在WEB业务管理中定义。包括在IP数据报中的校验字段值(例如在IP标题中的标题校验)因此而被更新。
·(908)保持管理连接表(908)和特别是从管理连接表(908)中去除属于关闭的连接的记录。例如利用TCP标题中的FIN和ACK指示检测关闭的连接。随意地,在该连接上没有IP数据报一定时间段后,连接被认为关闭(该定时器值可以是例如WEB业务管理扩展的配置参数)。检测关闭或半关闭(例如当该连接的一个末端已经非正常地终止时)TCP连接的任何其它现存算法也可以用于从该表中消除这种连接。
·(909)传递更新过的IP数据报给IP路由器部分。则更新后的IP数据报发送给在WEB业务管理中定义的服务器系统。
·(910)退出WEB业务管理扩展,和等待下个IP数据报。
管理管理器WEB业务管理扩展的管理管理器部分最好是运行在IP路由器系统上的计算机程序。该部分处理由源设备始发的每个IP数据报。它负责·使用所述IP数据报的目的地端口字段确定包括在所述IP数据报中的数据的ALP(应用层协议),·利用所述IP数据报的源IP地址、源端口、目的地IP地址和目的地端口字段从ALP管理定义表(508)中检索与所述IP数据报有关的某些管理信息,该表由包括在所述IP数据报中的数据ALP定义。
·如果由所述管理信息获得·丢弃所述IP数据报,·利用IP数据报特性和利用所述管理信息建立管理连接表(612)。
·使用所述管理信息更新所述IP数据报的目的地IP地址和目的地端口字段。
图10是称为管理管理器部分内部逻辑的流程图。该部分·(1001)检索一个IP数据报。
·(1002)选择必须用于管理IP数据报的ALP管理定义表。所述表与由包括在IP数据报内数据使用的ALP相关。所述ALP等于DT目的地端口。例如,如果IP数据报包括使用HTTP的数据,则所选择的表是与HTTP协议有关的ALP管理定义表。
·(1003)从所述选择的ALP管理定义表(1004)中检索与IP数据报有关的记录(称为“record-P”)。所述记录由以下识别·客户机IP地址(608)=DT源-IP地址(客户机IP地址是识别一个源设备的特定IP地址),或·客户机IP地址(608)包括DT源-IP地址(客户机IP地址是识别一组源设备的IP地址范围),·(1005)测试是否必须管理IP数据报。当目的地系统不是应当使用的服务器系统时必须管理IP数据报。该测试使用从“record-P”中检索出的某些管理信息。如果(两个条件)·DT目的地-IP地址=服务器-IP地址(609),和·DT目的地端口=服务器端口(610)则IP数据报的目标是必须要使用的服务器系统,和因此IP数据报不需要被管理。反之,IP数据报必须被管理。
·如果IP数据报不需要管理·(1012)将IP数据报传递给IP路由器部分。然后该IP数据报被发送给已经由源设备正确地设置的服务器系统。不强制WEB业务管理。
·(1013)退出WEB业务管理扩展,和等待下个IP数据报。
·如果必须管理IP数据报·(1006)测试是否必须丢弃IP数据报。如果在“record-P”中Enforc-Discard(611)=“是”该IP数据报必须丢弃。
·如果必须丢弃IP数据报·(1007)丢弃IP数据报
·(1013)退出WEB业务管理扩展,和等待下个IP数据报。
·如果不必要丢弃IP数据报·(1008)在管理连接表(1009)中为IP数据报的连接产生新的记录(613)·客户机IP地址=DT源IP地址·Client端口地址=DT端口地址·目的地IP地址=DT目的地IP地址·目的地端口=DT目的地端口·服务器-IP地址=服务器-IP地址(609)(来自“record-P”)·服务器端口=服务器端口(610)(来自“record-P”)·(1010)利用识别必须使用的目的地服务器系统的信息更新IP数据报·在IP标题(302)中的目的地IP地址字段(311)=服务器-IP地址(609)·在TCP标题(305)中的目的地端口字段(313)=服务器端口(610)这迫使IP数据报发送给在WEB业务管理中定义的目的地服务器系统(609)。包括在IP数据报中的校验字段值(例如在IP标题中的标题校验和)因此被更新。
·(1011)保持管理连接表(908)和特别是从管理连接表(908)中丢弃属于关闭连接的记录。使用例如TCP标题中的FIN和ACK指示检测关闭的连接。随意地,在该连接上没有IP数据报一定时间段后连接被认为关闭(该定时器值例如可以是WEB业务管理扩展的配置参数)。检测关闭或半关闭(例如当该连接的一个末端已经非正常地终止时)TCP连接的任何其它现存算法也可以用于从该表中去除这种连接。
·(1012)传递更新过的IP数据报给IP路由器部分。则更新后的IP数据报被发送给在WEB业务管理中定义的服务器系统。
·(1013)退出WEB业务管理扩展,和等待下个IP数据报。
出站管理处理器WEB业务管理扩展的出站管理处理器部分最好是运行在IP路由器系统上的计算机程序。该部分处理由服务器系统始发的每个IP数据报。它负责·根据管理连接表(612)和根据源IP地址、源端口、目的地IP地址和所述IP数据报的目的地端口字段,确定所述IP数据报是否必须更新,和·如果所述IP数据报必须更新,利用从所述管理连接表(612)检索的信息更新所述IP数据报的信源IP地址和信源端口字段。
图11是称为出站管理处理器部分内部逻辑的流程图。该部分·(1101)检索一个IP数据报。
·(1102)检索管理连接表(1103)的所有记录·(1104)从IP数据报中检索表示所述IP数据报的源和目的地信息·DT源IP地址=信源IP地址(310)(在所述IP数据报的IP标题(302)中)·DT目的地IP地址=目的地IP地址字段(311)(在所述IP数据报的IP标题(302)中)·(1105)在管理连接表(1103)中找到由(四个条件)识别的记录(613)·客户机IP地址(614)=DT目的地IP地址·客户机端口(615)=DT目的地端口·服务器IP地址(618)=DT源IP地址·服务器端口(619)=DT源端口·如果没有满足四个条件的记录,则IP数据报属于不在管理连接表内定义的连接。因此,对于IP数据报不需要WEB业务管理。
·(1109)将IP数据报传递给IP路由器部分。
·(1110)退出WEB业务管理扩展,并且等待IP数据报。
·如果有满足所述四个条件的记录(称为“record-R”),则IP数据报属于已经在管理连接表中定义的连接。
·(106)从表示发自源设备的IP数据报目的地系统“record-R”信息中检索·目的地IP地址(616)·目的地端口(617)·(1107)利用识别所述目标系统的信息更新IP数据报·IP标题(302)中的源IP地址字段(310)=目的地IP地址(616)·TCP标题(305)中的源端口字段(312)=目的地端口(617)因此,IP数据报呈现出由作为由源设备(614)始发的IP数据报的目的地系统(616)发送的。包括在IP数据报中校验和字段值(例如IP标题中的标题校验和)因此被更新。
·(1108)保持管理连接表(11103)和具体地从管理连接表(908)中去除与关闭连接有关的记录。例如利用TCP标题中的FIN和ACK指示检测关闭连接。随意地,在连接上没有IP数据报一定时间段后认为连接被关闭(此定时器值例如可以是WEB业务管理扩展的配置参数)。任何其它现存的检测关闭或半关闭(例如该连接的一端异常地终止)TPC连接的算法也可以用于从表中去除这种连接。
·(1109)将IP数据报传递给IP路由器。然后将更新的IP数据报发送给已经在WEB业务管理中定义的服务器系统。
·(1110)退出WEB业务管理扩展,并且等待下个IP数据报。
本发明提供下列优点·在一个中心位置定义WEB业务管理(ALP管理定义系统),和不必在多个网络设备或工作站配置。
·与WEB业务管理有关的更新可以由包括WEB业务管理扩展的网络设备周期性地检索。例如,可以为源设备组建立新代理服务器以便提供更好的WEB访问服务。因为周期性地检索WEB业务管理更新,则WEB业务管理扩展能够对所述新代理服务器实施由所述源设备组发出的业务。
·可以由包括WEB业务管理扩展的网络设备自动地接收WEB业务管理更新。例如,新代理服务器可以为源设备组建立以便提供更好WEB访问服务,因为它自动地接收WEB业务管理更新,WEB业务管理扩展则能够对所述新代理服务器实施由所述源设备组始发的业务。
·WEB业务管理迫使由最终用户工作站始发的WEB业务使用内联网内预定的服务器,即使在最终用户工作站没有正确地配置时。由于WEB业务管理是在内联网内进行(通过WEB业务管理扩展),可以校正最终用户工作站配置中的错误。例如,位于图卢兹(法国)的工作站可以配置用于发送HTTP业务给位于巴黎的HTTP代理服务器。WEB业务管理扩展可以将所述业务传递到最近的HTTP代理服务器(例如位于图卢兹的HTTP代理服务器)。
·优化内联网内的网络资源。例如,代理服务器的技术规范和成本是与将访问它的源设备数量有关。由500个源设备访问的代理服务器比由10000源设备访问的代理服务器小和因而便宜。
·改善WEB访问服务的性能。例如,当在法国建立代理服务器时,它配置用于对法国的特定数量的源设备提供WEB访问服务。当比预计的多的源设备(例如位于比利时的源设备)访问所述代理服务器时,所述代理服务器的性能由于WEB访问服务性能的影响而降低。WEB业务管理保证该服务器不被不希望的源设备访问。
·优化网络资源利用率。特别地,节省了内联网内的带宽。例如,当位于法国的源设备想要通过代理服务器访问WEB系统时,所述源设备将利用位于法国的代理服务器而不使用其它代理服务器(例如位于日本的代理服务器)。内联网内到达代理服务器的路径最小(网络资源利用率和法国与日本之间所需要的带宽也最小)。
·对最终用户工作站没有影响也没有依赖。
尽管参照优选实施例已经具体地表示和描述了本发明,但是应当理解在不脱离本发明精神和范围的情况下可以进行形式和细节的各种修改。特别是本发明不限于由代理服务器处理WEB业务,而涉及在内联网(SOCKS服务器,FTP服务器,WEB服务器,……)由任何服务器处理的任何IP业务(SOCKS,FTP,HTTP,…)。
权利要求
1.在网络设备中按照所限定策略实施多个服务器(503)上网际协议(IP)数据报发布的一种方法,每个IP数据报从源设备上的信源端口发到内联网网络(502)中目的地设备目的地端口,该内联网网络包括多个服务器(503)和至少一个客户机(501),所述方法包括步骤·确定(804,806)输入IP数据报的源设备是客户机(501)或是服务器(503);如果(805)IP数据报的源设备是客户机(501)·识别(803,904)IP数据报(301)的·客户机地址(310),·客户机端口(312),·目的地地址(311),·目的地端口(313),·在第一表(612)中搜索(906)服务器地址和服务器端口,所述第一表包括由客户机地址(614)、客户机端口(615)、目的地地址(616)和目的地端口(617)识别的每个连接(613)的服务器地址(618)和服务器端口(617);如果在所述第一表中识别服务器地址和服务器端口,和如果所述服务器地址与目的地地址不同或如果所述服务器端口和目的地端口不同·用服务器地址(618)和服务器端口(619)分别替代(907)IP数据报中的目的地地址(311)和目的地端口(313);·经过IP网络(502)发送(909)IP数据报。
2.按照前面权利要求的一种方法,包括进一步步骤如果服务器地址与目的地地址相同和如果服务器端口与目的地端口相同·保持IP数据报中的目的地地址(311)和目的地端口(313);·经过IP网络(502)发送IP数据报。
3.按照前面任权利要求的一种方法,包括进一步步骤如果(807)IP数据报的源设备是服务器(503)·识别(803,1104)IP数据报(301)的·服务器地址(310),·服务器端口(312),·客户机地址(311),·客户机端口(313),·在所述第一表(612)中搜索(1106)目的地地址和目的地端口,所述第一表包括由服务器地址(618),服务器端口(619),客户机地址(614)和客户机端口(615)识别的每个连接(613)的目的地地址(616)和目的地端口(617)如果在所述第一表中识别目的地地址和目的地端口,和如果服务器地址与目的地地址不同或如果服务器端口与目的地端口不同·用目的地地址(616)和目的地端口(617)分别替代(1107)IP数据报中的服务器地址(310)和服务器端口(312)·经过IP网络(502)发送(1109)IP数据报。
4.按照前面权利要求的一种方法,其中如果在所述第—表中没有识别目的地地址和目的地端口,或者如果服务器地址与目的地地址相同和如果服务器端口与目的地端口相同·保持IP数据报中的服务器地址(310)和服务器端口(312);·经过IP网络(502)发送IP数据报。
5.按照前面任意一个权利要求的一种方法,其中所述IP数据报包括在IP标题(302)中的源IP地址字段(310)和目的地IP地址字段(311),用于识别源设备和目的地设备,以及传输控制协议(TCP)标题(305)中的源端口地址字段(312)和目的地端口地址字段(313),用于识别所述源设备和目标设备的源端口和目的地端口。
6.按照前面任意一个权利要求的一种方法,其中确定(804,805)输入IP数据报的源设备是客户机(501)或是服务器(503)的步骤包括进一步步骤·确定是否包括在IP数据报中的目的地端口字段(313)的值等于服务器(503)的目的地端口的值或是否包括在IP数据报中的源端口字段(312)的值等于服务器(503)上源端口的值。
7.按照前面任意一个权利要求的一种方法,其中IP数据报利用应用层协议传输数据和其中在第一表(612)中搜索(905)服务器地址和服务器端口的所述步骤包括进一步步骤如果(911)在所述第一表(612)中没有为客户机地址(614),客户机端口(615),目的地地址(616)和目的地端口(617)识别服务器地址与服务器端口,·识别(1002)由IP数据报中所传输数据使用的应用层协议;·查阅第二表(606)确定(1003)服务器地址和服务器端口,对于该识别的应用层协议,所述第二表(606)包括由客户机地址(608)或客户机地址范围识别的每个客户机或客户机组,服务器地址(609)和服务器端口(610);如果(1005)目的地地址(311)与服务器地址(609)不同或如果目的地端口(313)与服务器端口(610)不同·在所述第—表中产生(1008)新的记录,包括·客户机地址(310,608,614);·客户机端口(311,615);·目的地地址(312,616);·目的地端口(313,617);·服务器地址(609,618);·服务器端口(610,619)。
8.按照前面任意一个权利要求的一种方法,其中IP数据报利用应用层协议传输数据和其中查阅第—表(612)确定(906)服务器地址和服务器端口的所述步骤包括进一步步骤如果所述第一表(612)中没有为客户机地址(614),客户机端口(615),目的地地址(616)和目的地端口(617)识别服务器地址和服务器端口,·识别(1002)由IP数据报中所传输数据使用的应用层协议;·查阅第二表(606)确定(1003)服务器地址和服务器端口,对于该识别的应用层协议,所述第二表(606)包括由客户机地址(608)或客户机地址范围识别的每个客户机或客户机组,服务器地址(609)和服务器端口(610);如果(1005)目的地地址(311)与服务器地址(609)不同或如果目的地端口(313)与服务器端口(610)不同·在第二表(606)中识别用于丢弃IP数据报的指示,对于该识别的应用层协议,所述第二表(606)包括由客户机地址(608)或客户机地址范围识别的每个客户机或客户机组,丢弃IP数据报的指示(611);如果(1006)设置丢弃IP数据报的指示·丢弃(1007)该IP数据报;如果没有设置丢弃该IP数据报的指示(611)·在所述第—表(612)中产生(1008)新的记录,包括·客户机地址(310,608,614);·客户机端口(311,615);·目的地地址(312,616);·目的地端口(313,617);·服务器地址(609,618);·服务器端口(610,619)。
9.按照前面任意一个权利要求的一种方法,包括进一步步骤·配置所述第二表(606),所述第二表包括每个表所支持应用层协议的表。
10.按照前面任意一个权利要求的一种方法,其中配置所述第二表(606)的步骤包括步骤·从IP网络(502)中的一个或多个服务器系统(507)中检索(702)所述第二表(606)的一部分或全部。
11.按照前面任意一个权利要求的一种方法,其中配置所述第二表(606)的步骤包括步骤·从网络中的所述一个或多个服务器系统(507)中检索(702)所述第二表(606)的更新。
12.按照前面任意一个权利要求的一种方法,其中检索所述第二表(606)一部分或全部和检索所述第二表(606)更新的步骤包括进一步步骤·查阅第三表(601)确定存储所述第二表(606)一部分或全部的所述一个或多个服务器系统(507)的地址。
13.按照前面任意一个权利要求的一种方法,其中配置所述第二表(606)的步骤包括步骤·从网络内的所述一个或多个服务器系统(507)接收所述第二表的一部分或全部。
14.按照前面任意一个权利要求的一种方法,其中配置所述第二表(606)的步骤包括步骤·从网络内的所述一个或多个服务器系统(507)接收所述第二表的更新。
15.按照前面任意—个权利要求的一种方法,其中配置所述第二表(606)的步骤包括步骤·在网络设备(506)内本地存储所述第二表(606)和/或所述第二表(606)的更新。
16.按照前面任意一个权利要求的一种方法,其中所述多个服务器是代理服务器(503)。
17.—种网络设备,具体地为路由器(506),包括适合于执行按照前面的任何一个权利要求的方法的装置。
18.—种计算机可读介质,包括用于执行按照权利要求1到16的任何一个权利要求的方法的指令。
全文摘要
在网络设备中按照规定的策略在多个服务器(503)实施网际协议(IP)数据报发送的一种方法和一种系统,每个IP数据报被从源设备的源端口发送到包括多个服务器(503)和至少一个客户机(501)的内联网网络(502)中目的地设备的目的地端口。该方法包括步骤:●确定(804,806)输入IP数据报的源设备是客户机(501)或是服务器(503);如果(805)IP数据报的源设备是客户机(501);......;●经过IP网络(502)发送(909)IP数据报。
文档编号H04L29/12GK1305289SQ0013383
公开日2001年7月25日 申请日期2000年9月16日 优先权日1999年10月21日
发明者O·赫里考特 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1