能够以无缝方式引入和移除的中间设备的制作方法

文档序号:7610285阅读:257来源:国知局
专利名称:能够以无缝方式引入和移除的中间设备的制作方法
技术领域
本发明涉及逻辑插入以客户机和服务器为代表的信息处理设备之间的网络的中间设备,特别涉及在下述环境下提供扩展已经从信息处理设备得到的服务的新服务的中间设备,在所述环境中,诸信息处理设备暂时保持通信所固有的信息并且使用这种信息彼此通信。
背景技术
多个信息处理设备经由网络彼此通信,以提供诸信息处理设备之间的服务。
例如,在客户机/服务器系统中,客户机和服务器相互通信,所以服务器提供服务,以及客户机使用该服务。
客户机/服务器系统有时具有可以变化的服务供应结构,以改善服务器提供的服务,将诸服务器彼此关联以提供某种类型的服务,并且把服务器提供的服务传递给另一服务器。中间设备用来改变服务供应结构。
点对点(peer to peer)系统包括多个称为点(peer)的信息处理设备。点不固定发挥客户机或服务器的作用,而是依据情况改变作用。如同客户机/服务器系统一样,点对点系统具有彼此通信的诸点,所以一个点提供服务,而另一点使用服务。点对点系统还需要改变服务供应结构,并且中间设备被用来改变服务供应结构。
为了在这些系统中实行服务(service),这些系统可以利用具有用于信息处理设备的程序(过程)的通信协议来交换和保持通信对话中所固有的状态信息,以及利用该状态信息相互通信。
在一个典型系统中,客户机和服务器交换和在一定时间内保持固有的状态信息,并使用该状态信息相互通信。该典型系统把协议用作实际标准如NFS(网络文件系统)或CIFS(共用互联网文件系统)。
这些通信协议用于客户机对服务器的访问存储资源的远程文件访问。利用这种通信协议,客户机可以容易地使用服务器的存储资源,就好像访问它自己的存储资源(参见日本专利公开JP2003-203029,以及W.Katsurashima,S.Yamakawa,T.Torii,J.lshikawa,Y.Kikuchi,K.Yamaguti,K.Fujii和T.Nakashima,“NAS交换新颖CIFS服务器虚拟化,”关于海量存储器系统和技术的第12 IEEE/第11 NASA Goddard会议的学报,2003年4月)。
日本专利公开JP2003-203029建议了一种集成多个服务器的存储资源的处理,如同它们是一个存储资源并在NFS协议环境中把它提供给客户机。根据所建议的处理,改变和传递通信分组中信息的交换装置被引入在客户机与服务器之间,由此提供多个服务器的存储资源,对于客户机,这些存储资源是一个存储资源,不需要把特定软件或硬件引入到客户机和服务器。
W.Katsurashima等人的文章建议了一种用于集成多个服务器的存储资源的交换设备,它不需要在利用CIFS协议的环境(如同NFS协议环境)下,把特定软件或硬件引入客户机和服务器。
根据上述建议,由一组没有互连功能的服务器提供的服务可以通过提供中间设备来集成,该中间设备以客户机与服务器之间的网络中的交换设备为代表。因此,客户机或客户机的用户可以容易地使用服务器提供的服务,不必考虑服务器组的结构。系统管理员可以执行维持工作,以添加或移除服务器或在服务器之间传递资源,而不根据系统和服务的操作状态,改变客户机设置和停止应用。
另一典型系统利用HTTP(超文本传递协议)。在该典型系统中,客户机和服务器交换和在一定时间内保持固有状态信息,并且使用状态信息彼此通信。根据HTTP,客户机可以使用服务器中存储的Web内容。客户机向服务器请求Web内容,并且服务器把Web内容提供给服务器。具有把来自客户机的请求分配给适当服务器的功能的中间设备被称作Web交换机或者第七层交换机。
上述典型中间设备依据存储Web内容的位置来分配请求,从而集成多个服务器,使它们好像是到客户机的一个Web服务器。因此,如果根据经不同处理的Web服务,如使用CGI的内容和使用COOKIE的内容,来分类Web服务器,则可以分散基于客户机请求的处理负荷,并且可以安装具有匹配处理负荷的能力的服务器,以作为用来执行分散处理的相应Web服务器。因此,在Web站点上有效构建系统和依据状态变化来变化系统,可以可靠运行Web服务本身。
中间设备提供的服务,如从客户机向多个服务器分配远程文件访问的服务,以及从客户机向多个Web服务器分配Web服务访问的服务,此后将称之为中间设备提供的服务。

发明内容
在使用上述中间设备的系统中,最好是,在客户机与服务器之间安装中间设备,客户机将访问的目的地被设置为中间设备,以及客户机经由中间设备开始通信。根据这种系统配置,可以改变服务器系统,以及可以改变资源分配,但是不改变客户机设置不停止应用。
然而,这种改变在某些情况中不一定是可能的。例如,如果当在客户机与服务器之间已经开始某种服务时,新引入中间设备,则必须暂时停止应用并改变客户机设置,以便改变服务器系统并改变资源分配。
客户机和服务器在交换和保持彼此的固有状态信息的同时,彼此通信。为了新引入提供服务的中间设备,必须暂时停止客户机上的应用,从而断开服务器与客户机之间的通信,然后把客户机待连接的目的地从服务器改变到中间设备。
为了移除连接在客户机与服务器之间的中间设备,与新引入中间设备一样,还必须暂时停止客户机上运行的应用,从而断开服务器与客户机之间的通信,然后将客户机待连接的目的地从中间设备改变到服务器。移除中间设备可以是替代中间设备或者去掉已经用来暂时应用的中间设备。暂时应用可以是替代已有服务器或暂时使用中间设备,用于把诸服务器提供的服务集成为一个服务器上的服务。
本发明的目的是提供一种中间设备,它可以无缝地新引入和移除,而不停止客户机上运行的应用或者不改变客户机将连接的目的地的设置。
为了实现上述目的,本发明的中间设备适合于设置在经由网络提供信息处理服务的第一信息处理设备与接收信息处理服务的第二信息处理设备之间,用于提供附加给信息处理服务的中间服务。中间设备具有状态信息获取装置、中间服务管理装置和传递控制装置。
状态信息获取装置从第一信息处理设备或者第二信息处理设备获取维持对话状态所需的状态信息,其中为了信息处理服务在第一信息处理设备与第二信息处理设备之间建立所述对话。
中间服务管理装置基于状态信息生成传递规则,该传递规则用来把中间服务应用于在第一信息处理设备与第二信息处理设备之间发送和接收的信息处理服务的数据,并且传递应用中间服务的数据。
传递控制装置根据传递规则在它自己与第二信息处理设备之间维持第一信息处理设备与第二信息处理设备之间建立的已有对话的状态,建立它自己与第一信息处理设备之间的新对话,以及使用已有对话和新对话传递数据。


图1是显示本发明实施方式的系统结构的方框图;图2是显示中间设备的结构的方框图;图3是显示当根据过程1引入中间设备时执行的处理流的流程图;图4是显示当根据过程2引入中间设备时执行的处理流的流程图;图5是显示当根据过程3引入中间设备时执行的处理流的流程图;图6是当拆除中间设备时执行的处理流的流程图;图7是显示本发明第一实施方式的系统结构的方框图;图8是显示根据NFS协议的NFS服务器的文件处理的实例的表;图9是显示本发明第三实施方式的系统结构的方框图;图10是显示本发明第四实施方式的系统结构的方框图。
具体实施例方式
下面将参考附图详细描述本发明的实施方式。
图1是显示本发明实施方式的系统结构的方框图。如图1所示,系统具有客户机100,中间设备200,服务器300、301,和网络交换机150。尽管在图1中图示了每个设备的一个或两个单元,但是每个设备的数量是任意的。
客户机100、中间设备200、服务器300、301之每个具有用于网络连接的接口,以便与其它设备通信。中间设备200连接网络1,客户机100连接网络2,服务器300连接网络3,服务器301连接网络4。网络1至4连接网络交换机150的各端口。系统的这种配置允许客户机100、中间设备200和服务器300、301相互通信。
图1所示网络配置仅仅通过举例方式来图示,本发明不限于此。中间设备200至少可以被逻辑地安装在客户机100与服务器300、301之间,并且可以被物理地安装在客户机100与服务器300、301之间。
服务器300、301可以提供允许客户机100经由网络使用WEB页的服务或提供包括允许客户机100访问文件数据的服务的信息处理服务。在下文中,将把服务器提供的服务称之为“信息处理服务”。
客户机100可以访问服务器300、301,并且使用由服务器300、301提供的信息处理服务。
网络交换机150具有在端口之间传递通信分组的功能,并且还具有复制和传递通信分组的功能,通常称作端口镜像(mirroring)。端口镜像是将传递到某个路径的分组传递到另一路径的功能。
中间设备200被安装在客户机100与服务器300、301之间,并且提供在其间传递通信分组,以及增强服务器所提供的信息处理服务的附加服务。图2是显示中间设备200的结构的方框图。
如图2所示,中间设备200包括网络接口201,分组传递控制单元202,中间设备供应服务管理单元203,对话监视单元204,对话解除控制单元205,以及信息收集单元206。
分组控制单元202重新配置分组或者重新组合报头,并且传递客户机100与服务器300、301之间的数据。分组传递控制单元202执行的传递处理由中间设备操作的协议、中间设备提供的服务(以下称之为“中间设备供应服务”)的种类和操作员为中间设备供应服务作出的设置来确定。本发明操作的中间设备供应服务包括不同内容的服务。
中间设备供应服务的内容可以由操作员设置。下面将给出操作实例。如果中间设备供应服务不被提供,则分组传递控制单元202仅仅传递客户机100与服务器300之间的分组。如果中间设备供应服务被提供,则分组传递控制单元202根据传递规则传递客户机100与服务器300、301之间的分组。此时,分组传递控制单元202可以改变通信分组的报头,和传递数据,或者可以提取用通信分组发送的数据,以及用新通信分组传递所提取的数据。中间设备供应服务是由信息处理服务的服务器300、301提供的附加服务,并且由中间设备200提供。传递数据的传递目的地也许不一定与传输源指定的传输目的地相同。
当中间设备200管理客户机100与服务器300、301之间的数据传递目的地、报头或者数据时,中间设备供应服务由中间设备200实现。因此,某些传递规则对于提供中间设备供应服务是必须的。传递规则代表关于数据传递的规则,用于实行上述确定的传递处理。中间设备供应服务的实例是用于控制中间服务200的服务,把来自客户机100的访问适当分配给多个服务器300、301,由此集成多个服务器300、301,使它们看来是对客户机100的一个服务器。
中间设备供应服务管理单元203控制中间设备供应服务的供给。特别是,中间设备供应服务管理单元203根据操作员为中间设备供应服务作出的设置,确定将由分组传递控制单元202、对话监视单元204、对话解除控制单元205或者信息收集单元206执行的处理,并且指令单元执行该处理。例如,中间设备供应服务管理单元203根据对话监视单元204、信息收集单元206收集的信息和操作员作出的设置,确定传递规则,并且指令传递控制单元202根据传递规则传递数据。
对话监视单元204监视客户机100与服务器300、301之间建立的对话的状态,并且从对话中交换的数据中收集开始中间设备供应服务所需的对话信息。对话信息涉及关于每次通信的对话的固有状态信息,并且仅仅在建立对话的周期期间对于所述对话是有效的。如果在服务器300与客户机100之间无缝地引入中间设备200并且开始(启动)中间设备供应服务,中间设备200维持迄今为止在服务器300与客户机100之间已经维持的对话的状态。因此,中间设备需要获得维持对话状态所需的状态信息。
如果中间设备200操作具有初始化对话的功能的协议,则对话解除控制单元205可以向客户机100和服务器300、301发送命令,用于初始化已经建立的对话。例如,对话解除控制单元205可以发送强制无效对话的命令。当客户机100和服务器300、301执行该命令时,对话被无效。初始化对话是指无效已有对话以及重新建立取代已有对话状态的新对话。
信息收集单元206经由网络从客户机100和服务器300、301无缝地收集开始中间设备供应服务所需的服务固有信息,并且向中间设备供应服务管理单元203发送服务固有信息及对话监视单元204收集的对话信息。服务固有信息是指服务器提供的信息处理服务中固有的状态信息,并且被多个对话共同使用。
(指令中间设备的过程)存在下文所示的用于引入中间设备200的三个过程,其中依赖使用的网络协议、中间设备供应服务以及应用的系统环境引入中间设备200。可以根据诸过程之一引入中间设备200,或者可以根据作为依赖于应用中间设备200的系统的多过程组合的过程引入中间设备200。
(过程1)下面描述当在客户机100与服务器300之间已经建立对话和它们已经经由网络2、3相互通信时无缝引入中间设备200的过程。假设在引入中间设备200的同时,添加服务器301。还假设,操作员如系统操作员预先在中间设备200中注册了关于由中间设备200将提供的中间设备供应服务的配置设置和执行细节设置。操作员设置和注册的信息由中间设备供应服务管理单元203管理。
应用过程1的环境是,第三方可以从对话信息知晓或者不知晓关于在客户机100和服务器300上运行的信息处理服务的事件。中间设备200试图获取必要的对话信息。如果中间设备200不能获得所有必要信息,则在引入中间设备200之前已经建立的对话不能在引入中间设备200之后重新创建。例如,在引入中间设备200之前在客户机100与服务器300之间已经建立的对话可以通过客户机100与服务器300之间的协商加密。在这种情况下,中间设备200不能重新创建对话,因为它不能理解对话中交换的信息。
图3是当根据过程1引入中间设备时执行的处理流的流程图。图3所示的过程开始于已经在客户机100与服务器300之间建立对话和它们正在经由网络2、3相互通信时。
中间设备供应服务管理单元203依据操作员指定的服务设置生成获取执行中间设备供应服务所需的信息的列表(以下称之为“所需信息列表”),并且在对话监视单元204中注册所需信息列表(步骤S1)。
例如,如果中间设备200操作的协议是TCP(传输控制协议),则中间设备供应服务管理单元203确定执行如下的服务的所需信息列表。
当在客户机100与服务器300之间建立对话(TCP称之为“连接”)时,客户机100和服务器300之每个把序号添加到数据的通信分组上,并且发送该通信分组。当已经接收已添加序号的通信分组的客户机100或服务器300响应通信分组时,将添加到已接收分组的序号加“1”,并且把序号添加到响应的通信分组上。当客户机100或服务器300收到响应的通信分组时,它参照所添加的序号,并确认自己发送的通信分组发送达到对方。TCP还包括控制客户机100和服务器300的接收缓存器中存储的数据量和对话状态如对话的建立(开始)或解除(结束)的功能。
对于将在客户机100与服务器300之间无缝引入并且在TCP对话中传递通信分组的中间设备200,中间设备200需要收集序号、接收缓存器中存储的数据量和来自对话信息的对话状态,并且把传递通信分组前后不造成失配的对话信息添加到待传递的通信分组上。中间设备200需要的信息代表关于序号、接收缓存器中存储的数据量和对话状态的信息。
当所需信息被确定时,中间设备200和服务器301重新连接网络交换机150。系统现在采用图1所示的物理结构。
网络交换机150已经被设置为,利用复制和传递上述通信分组的功能把在网络2、3之间流动的通信分组传递到中间设备200的网络1。当通信分组被传递给中间设备200时,经由网络接口201获得的数据分组被发送给对话监视单元204。
对话监视单元204分析在已经在客户机100与服务器300之间建立的已有对话中发送的对话信息,并且提取与中间设备供应服务管理单元203注册的获取信息列表一致的对话信息。对话监视单元204随后与服务器300提供给客户机100的信息处理服务事件关联起来,向中间设备供应服务管理单元203发送对话信息(步骤S2)。
中间设备供应服务管理单元203确定是否可以从引入中间设备200前已经建立的对话组中获取获取信息列表中描述的所有信息(步骤S3)。
如果可以获取所有信息,那么中间设备供应服务管理单元203获取信息,从所获取的信息和操作员指定的设置生成用来适当传递通信分组的传递规则,并且在分组传递控制单元202中注册传递规则(步骤S4)。然而,此时仅仅注册传递规则,但是还没有生效。
对话上流动的通信分组的路由从客户机100直接延伸到服务器300的路由改变到客户机100经由中间设备200到服务器300的路由。此时,利用改变网络交换机150的设置和改变中间设备200或服务器300的IP地址等依赖于连接网络交换机150的网络配置的处理的方法。
当经由中间设备200路由通信分组时,已有对话中从客户机100发送给服务器300的通信分组通过网络接口201到达中间设备200中的分组传递控制单元202。中间设备200建立中间设备200与服务器300之间的新对话,使用中间设备200与服务器300之间建立的新对话,传递来自客户机100的通信分组的数据,并且根据预先获得的对话信息维持对话,所以在引入中间设备200之前建立的对话将不会被切断(步骤S5)。
中间设备供应服务管理单元203在分组传递控制单元202中追加注册新传递规则,以便实现客户机100和中间设备200间的对话信息与中间设备200和服务器300间的对话信息之间的匹配。
当对于在中间设备200被引入之前建立的所有对话完成传递规则以及可以用两个对话之间实现的匹配传递数据时,中间设备供应服务管理单元203指令分组传递控制单元202使预先注册的传递规则有效。分组传递控制单元202根据传递规则开始传递数据,从而开始提供中间设备供应服务。
在中间设备供应服务已经开始后,当需要根据传递规则把来自客户机100的访问传递到新引入的服务器301时,中间设备200建立中间设备200与服务器301之间的新对话,并且传递数据(步骤S6)。此时,中间设备200传递客户机100和中间设备200间对话与中间设备200和服务器301间对话之间的数据,或者传递还包括中间设备200与已有服务器300之间的对话的三个对话之间的数据,维持这些对话。
如上所述,中间设备200使用所获取的对话信息生成传递规则,取代它自己与客户机100之间的已有对话的状态,建立它自己与服务器300之间的新对话,以及使用已有对话和新对话传递数据。因此,中间设备200被无缝引入,以开始提供中间设备供应服务,而又不使客户机100的用户意识到中间设备200的引入。
如果需要的信息不能在步骤S3中获取,则中间设备供应服务管理单元203指令分组传递控制单元202在中间设备200被引入之前建立的对话中传递通信分组并维持该对话。如果对话信息因为加密而不能解码,则不能获取需要的信息。如果存在从客户机100建立新对话的请求,则中间设备供应服务管理单元203建立它自己与客户机100之间的对话,建立它自己与服务器300之间的对话,以及指令分组传递控制单元202传递这些对话之间的数据(步骤S7)。
结果,只有中间设备200传递两个对话之间的数据的对话,即只有在引入中间设备200后建立的对话,才经历中间设备供应服务。
如果对话需要在此时加密,则中间设备200在建立新对话时执行加密验证,建立它自己与客户机100之间的对话,并且建立它自己与服务器300之间的对话,由此它能够传递两个对话之间的数据。
在中间设备供应服务已经开始之后,当需要仅仅传递通过从客户机100到服务器301的请求重新建立的对话时,中间设备200建立它自己与服务器301之间的新对话,并且传递数据(步骤S8)。由于对话通常不会无限连续,因此对话将最终经历中间设备供应服务。
如上所述,如果不能获得所有需要的状态信息,则中间设备200开始中间设备供应服务,而已有对话不受此支配,并且持续已有对话。因此,尽管迄今为止提供的服务一直被连续供应给接收已有对话中的信息处理服务的客户机100的用户,但是中间设备200被无缝引入,以开始中间设备供应服务。
(过程2)如同过程1一样,下面描述当在客户机100与服务器300之间已经建立对话和它们已经经由网络2、3相互通信时无缝引入中间设备200的过程。假设在引入中间设备200的同时,添加服务器301。还假设,操作员如系统操作员预先在中间设备200中注册了关于由中间设备200将要提供的中间设备供应服务的配置设置和执行细节设置。操作员设置和注册的信息由中间设备供应服务管理单元203管理。
应用过程2的环境是,可以使用已有协议,直接从客户机100或服务器300获得中间设备200传递通信分组所需的服务固有信息的环境。在此情况中,中间设备200试图直接从客户机100和服务器300获取所需信息。
图4是当根据过程2引入中间设备时执行的处理流的流程图。图4所示的过程开始于已经在客户机100与服务器300之间建立对话和它们正在经由网络2、3相互通信时。
中间设备供应服务管理单元203依据操作员指定的服务设置生成获取执行中间设备供应服务所需的服务固有信息的列表(以下称之为“所需服务固有信息列表”),并且在信息收集单元206中注册所需服务固有信息列表(步骤S10)。
中间设备200和服务器301现在重新连接网络交换机150。系统现在使用图1所示的物理结构。
然后信息收集单元206在客户机100和服务器300、301上查询由中间设备供应服务管理单元203生成的所需服务固有信息列表所述的服务固有信息。使用客户机100和服务器300、301预先提供的协议进行查询。信息收集单元206向中间设备供应服务管理单元203发送所获得的服务固有信息,该信息与从服务器300、301供应给客户机100的信息处理服务的事件相关联(步骤S11)。该信息被保存在中间设备供应服务管理单元203中。
然后,中间设备供应服务管理单元203确定是否可以从客户机100或服务器300、301获取所需服务固有信息列表中描述的所有信息(步骤S12)。
如果可以获取所有信息,则中间设备供应服务管理单元203依据所保存的服务固有信息和操作员指定的服务设置,生成传递规则,用来适当传递应用中间设备供应服务的通信分组的数据,并且在分组传递控制单元202中注册所述传递规则(步骤S13)。
如果在步骤S12中不能获得全部所需信息,则中间设备信息供应服务管理单元203根据操作员的输入指令获取固有服务信息(步骤S15),并且在步骤S13中,依据所获取的服务固有信息和操作员指定的服务设置,生成适当传递通信分组的数据的传递规则,把传递规则注册在分组传递控制单元202中。如果所需服务固有信息甚至不能通过操作员的输入来注册,则不可能提供中间设备供应服务。
客户机100与服务器300之间的通信分组的路由从客户机100直接延续到服务器300的路由改变到客户机100经由中间设备200延续到服务器300的路由。此时,使用改变网络交换机150的设置和改变中间设备200或服务器300的IP地址等依据连接网络交换机150的网络配置的结构的方法。
当通信分组发送给中间设备200的分组传递控制单元202之后,在中间设备供应服务开始的同时,根据传递规则把来自客户机100通信分组传递给服务器300或301(步骤S14)。
(过程3)如同过程1、2一样,下面将描述当在客户机100与服务器300之间已经建立对话和它们已经经由网络2、3相互通信时无缝引入中间设备200的过程。假设在引入中间设备200的同时,添加服务器301。还假设,操作员如系统操作员预先在中间设备200中注册了关于由中间设备200将要提供的中间设备供应服务的配置设置和执行细节设置。操作员设置和注册的信息由中间设备供应服务管理单元203管理。
应用过程3的环境是,利用各种通信协议中具有恢复被客户机或服务器的意外故障无效的对话状态的功能的协议的环境。此类通信协议具有,在对话被故障无效之后,一旦从客户机或服务器的故障中恢复,就重新建立客户机与服务器之间对话的功能,该功能把对话状态恢复到故障出现前的状态。当不可能从已经建立对话的通信分组的内容中获取所需状态信息的通信协议被利用时,本过程有效。甚至在该情况下,中间设备200重新建立对话,并且在重新建立对话中获取所需状态信息,从而无缝启动中间设备供应服务。
图5是显示当根据过程3引入中间设备时执行的处理流的流程图。图5所示的过程开始于已经在客户机100与服务器300之间建立对话以及它们经由网络2、3相互通信时。
中间设备供应服务管理单元203生成需要从操作员指定的服务设置中获取执行服务的信息列表(以下称之为“所需信息列表”),并且把所需的信息列表注册到对话监视单元204中(步骤S20)。
中间设备200和服务器301现在重新连接网络交换机150。系统采用图1所示的物理结构。客户机100与服务器300之间的通信分组的路由从客户机100直接延续到服务器300的路由改变到客户机100经由中间设备200延续到服务器300的路由。此时,利用改变网络交换机150的设置和改变中间设备200或服务器300的IP地址等依赖连接网络交换机150的网络配置的处理的方法。
然后,中间设备200向客户机100和服务器300发送无效或者初始化来自对话解除控制单元205的对话的命令(步骤S21)。无效或初始化对话的命令被发出,以便重新建立对话。
收到该命令的客户机100和服务器300试图根据对话恢复功能建立新对话。如果中间设备200在对话恢复过程中收集客户机100与服务器300之间的通信分组,则中间设备200可以获取从建立对话的处理开始的所有对话信息。对话信息由对话监视单元204收集,并且所收集的对话信息被注册在中间设备供应管理单元203中(步骤S22)。
中间设备供应服务管理单元203依据操作员指定的服务设置,生成用来适当传递中间设备供应服务被应用的通信分组的传递规则,并且把该传递规则注册到分组传递控制单元202中(步骤S23)。此时,中间设备供应服务管理单元203向分组传递控制单元202发送在步骤S22中获得的对话信息,以作为分组传递的辅助信息。
然后,中间设备供应服务管理单元203建立客户机100与服务器300、301之间的对话,并且根据传递规则传递不同对话之间的数据。
(移除中间设备的过程)下面将说明依据如图1所示的客户机100与服务器300、301之间暂时引入中间设备200的状态,无缝移除中间设备200的过程。
图6是显示当移除中间设备时执行的处理流的流程图。
举例来说,假设中间设备200被暂时引入,把服务器300提供的服务转给服务器301,而又不使客户机知晓信息的转移。为了不使客户知晓服务器之间的信息处理服务的转移,中间设备200可以用服务器301的服务替代服务器300的服务,同时集成服务器300和服务器301的信息处理服务。当完成服务器之间的信息处理服务转移时,移除中间设备200。
如图6所示,当中间设备200把服务器300提供的服务转交给服务器301之后(步骤S30),移除中间设备200。
当中间设备200的分组传递控制单元202从客户机100收到通信分组时,分组传递控制单元202确定是否是请求建立新对话的通信分组(步骤S31)。
如果来自客户机100的通信分组是请求建立新对话的通信分组,则中间设备200免除通信分组的中间设备供应服务的应用,把通信分组直接传递给新服务器301,并且不自己建立对话(步骤S32)。现在直接在客户机100与服务器301之间建立新对话,而没有中间设备200的干预。
如果来自客户机100的通信分组是已有对话的通信分组,则中间设备200把中间设备供应服务应用于通信分组,并且传递两个对话之间的数据,这两个对话是如前所述的客户机100与中间设备200之间的对话和客户机100与服务器301或301之间的对话(步骤S33),处理返回步骤S31。
在步骤S32之后,分组传递控制单元202确定所有对话是否被免除中间设备供应服务(步骤S34)。由于通话不会无限继续,因此所有对话将最终被免除中间设备供应服务的应用。
如果所有对话被免除中间设备供应服务的应用,则通信分组的路由被改变到不经由中间设备200的路由(步骤S35)。如果在步骤S34中残存经历中间设备供应服务的对话,则控制返回到步骤S34,并且中间设备200继续中间设备供应服务,直至所有对话变得免除中间设备供应服务的应用。
在步骤S35,中间设备200断开网络连接并且进入可移除状态。
如上所述,中间设备200把中间设备供应服务连续应用于已有对话,直至结束对话,免除新对话的中间设备供应服务,并且当所有对话变成免除中间设备供应服务的应用时,将其判断为处于可移除状态。因此,中间设备200可以从客户机100与服务器300、301之间移除,而且不会使已有对话的用户和新对话的用户知晓中间设备200的移除。
(第一实施方式)下面将说明本发明的中间设备应用于通常使用的NFS协议环境的第一实施方式。中间设备供应服务是从NFS客户机向多个NFS服务器的访问被集成,以使NFS客户机的用户不知道NFS服务器的数量和配置。
(NFS协议环境下的中间设备的引入)下面将说明将中间设备无缝引入NFS服务器提供一种信息处理服务的环境,所述信息处理服务能够根据NFS协议提供对它自己的存储资源的访问。中间设备用来集成多个NFS服务器的存储资源并把这些资源供应给NFS客户机。
图7是显示根据本发明第一实施方式的系统的结构的方框图。图7显示了已经引入中间设备和新添加的NFS服务器的系统的结构。第一实施方式的系统具有NFS客户机101,中间设备200,NFS服务器302、303,以及网络交换机150。尽管在图7中图示了一个或两个每个设备,但是每个设备的数量是任意的。
NFS客户机101、中间设备200和NFS服务器302、303之每个具有用于网络连接的接口,以便与其它设备通信。中间设备200连接网络1,NFS客户机101连接网络2,NFS服务器302连接网络3,NFS服务器303连接网络4。网络1至网络4连接网络交换机150的各端口。系统的该配置允许客户机101、中间设备200和NFS服务器302、303相互连接。
NFS服务器302、303可以经由网络把信息处理服务供应给NFS客户机101。NFS服务器302、303提供的信息处理服务是允许客户机访问存储资源的服务,并且将被称之为“数据访问服务”。
NFS客户机101可以访问NFS服务器302、303,并且使用NFS服务器302、303提供的数据访问服务。
网络交换机150和中间设备200与图1和图2所示的相同。
(引入过程)下面将说明在NFS客户机101和NFS服务器302根据NFS协议相互通信的环境下,无缝引入中间设备200和NFS服务器303的过程。网络2、3被分配相应IP地址,使得它们处于相同的网域中,并且NFS客户机101和NFS服务器302根据NFS协议,经由网络2、3相互通信。
中间设备供应服务管理单元203依据操作员指定的服务设置生成执行服务需要的服务固有信息的列表(以下称之为“所需服务固有信息列表”),并且把所需服务固有信息列表注册在信息收集单元206中。
在该情况下,中间设备200的网络1和NFS服务器303的网络4连接网络交换机150。在网络1、4被分配相应IP地址使得它们处于域网络2、3相同的网域之后,网络1、4被激活。还为中间设备200和NFS服务器303作出网络设置。
在激活网络1、4之后,新的NFS服务器303激活数据访问服务,用来为客户机提供对它自己的存储资源的访问,从而使它能够根据NFS协议访问存储资源。
在为中间设备200和NFS服务器303作出网络设置之后,中间设备200的信息收集单元206从NFS服务器302和NFS服务器303,使用NFS协议的收集集成数据访问服务所需的服务固有信息,所述数据访问服务是根据NFS协议的NFS服务器302和NFS服务器303提供的。
集成数据访问服务是指通过NFS客户机101经由中间设备200的访问,将把NFS服务器302和NFS服务器303作为一个NFS服务器,即一个存储资源提供给客户机。
为了实现上述集成,中间设备200从来自NFS客户机101的访问请求确定请求目的地,并且把请求传递给把资源存储为请求目的地的NFS服务器。
根据NFS协议,称作由NFS服务器生成的文件句柄的标识符被用作唯一标识待访问的数据对象如目录或文件的ID。当NFS客户机使用数据访问服务时,来自NFS客户机的请求必须包括文件句柄。
通过把由中间设备200集成的诸NFS服务器的标识符并入各文件句柄中,中间设备200可以容易地把NFS服务器标识为传递目的地。
如果在引入中间设备200之前,NFS客户机101和NFS服务器302正在相互通信,则存在由NFS服务器302生成的原始文件句柄。为了使中间设备200被无缝引入,中间设备200实际上必须连续使用原始文件句柄。因此,中间设备200必须依据请求中包含的原始文件句柄,把NFS服务器302或NFS服务器303标识为请求的传递目的地。
尽管生成文件句柄的处理通常是任意的,但是通常通过每个NFS服务器的安装形成模型。所生成的文件句柄包含存储数据对象的文件系统的信息和被存装置的信息。这些信息项包括相同NFS服务器中诸文件句柄共用的数据串。如果中间设备200可以提取多个文件句柄共用的模型的规律性,则中间设备200可以把它用作标识NFS服务器的标识符(以下称之为“服务器标识符”),用于传递通信分组给NFS服务器。特别是,如果从代表标识数据对象的信息的文件句柄中提取能够标识具有数据对象的服务器的服务器标识符,则该服务器标识符可以用作服务固有信息。中间设备200需要依据数据对象的文件句柄,标识目的地服务器,以便在中间设备供应服务中传递通信分组的数据。如果可以提取服务器标识符,则中间设备200不需要获取和记录所有已有文件句柄,并且可以仅仅通过查看包含在文件句柄的一部分中的服务器标识符来标识目的地服务器。结果,中间设备200可以以较少的处理量和较低的存储容量实现中间设备供应服务。
NFS文件句柄的数据长度在每个NFS服务器中是可变的或者是固定的。例如,如果文件句柄的数据长度在诸NFS服务器之间是不同的,则该数据长度可以用作把通信分组传递到NFS服务器的服务器标识符。
中间设备200根据NFS协议,从NFS服务器302和NFS服务器303获取多个文件句柄,并且从上述所获取的文件句柄和文件句柄生成处理中提取集成数据访问服务所需的服务器标识符。
图8是显示NFS协议的NFS服务器的文件句柄的实例的表。图8所示的文件句柄表400显示两个NFS服务器A、B的文件句柄的数据模型的列表。
根据NFS服务器A的列表,从所有数据模型左起的第三至第六位代表共用于所有文件句柄的“cfde”。根据NFS服务器B的列表,从所有数据模型左起的第三至第六位表共用于所有文件句柄的“0000”。这指示中间设备200可以提取第三至第六位的数据作为能够标识服务器的服务器标识符。
如果中间设备200不能依据从NFS服务器302和NFS服务器303获取的文件句柄,提取基于某些模型或者某些数据长度的服务器标识符,则中间设备200从NFS服务器302和NFS服务器303中获取所有文件句柄,在表中关联文件句柄和NFS服务器,并且保持该表。当中间设备200从NFS客户机101接收通信分组时,中间设备200对照表检验包含在通信分组中的文件句柄,以把NFS服务器表示为传递目的地。
在中间设备200中,包含在NFS协议的通信分组中的NFS服务器的原始文件句柄被注册在分组传递控制单元202,以用于依据原始文件句柄标识适当的NFS服务器,并且把用来集成数据访问服务的中间设备供应服务的传递规则从中间设备供应服务管理单元203注册到分组传递控制单元202中。此后,中间设备200开始中间设备供应服务。接着,改变网络设置,从客户机101经由中间设备200路由通信分组。在图7所示的实例中,分配给NFS服务器302的网络3的IP地址被分配给中间设备200的网络1,网络3的IP地址被改变到另一IP地址。网络3的IP地址被注册在中间设备200中,以作为前往NFS服务器302的通信分组的传递目的地的地址。根据设置改变,改变必须经由中间设备200路由通信分组101的路由。
一般来说,NFS协议把TCP或者UCP(Unified Datagram Protocol,联合数据报协议)用作对应于其底层的传输层。
根据TCP,通常必须避免诸如序号的信息的失配,使中间设备200持续TCP对话。如果不避免这种信息失配,TCP对话将被切断。然而根据NFS协议,由于TCP是独立于NFS协议控制的,因此除了某些异常情况,即使TCP对话被切断,作为高于TCP的协议的NFS协议的控制不受影响。根据UDP,在UDP本身没有这种如对话的概念。
因此根据TCP,当通信分组的传递目的地从NFS服务器302改变到中间设备200时,中间设备200引入前NFS客户机101与NFS服务器302之间的对话可以被切断,并且可以在中间设备200与客户机101之间建立新对话。根据UDP,当通信分组的传递目的地从NFS服务器302变到中间设备200时,中间设备200实际上把来自NFS客户机101的通信分组传递给NFS服务器302。至于上述的传输层的协议,中间设备200可以处理通信控制,而不会在NFS协议的控制下出现失配。
在异常情况中,如果NFS文件系统是根据TCP软安装的,则当对话被切断时,NFS客户机把对话切断检测为错误。因此,如果存在根据TCP软安装的NFS文件系统,则在NFS客户机被操作员预先注册在中间设备200之后,中间设备200被引入。然后,对话监视单元204根据网络交换机150的端口监视功能获取软安装的NFS客户机的TCP对话的对话信息,并且中间设备供应服务管理单元203生成传递规则并且把传递规则注册在分组传递控制单元202。
如上所述,来自NFS客户机101的通信分组包含由NFS服务器302生成的原始文件句柄。通过参照注册从NFS服务器302和NFS服务器303获得的文件句柄信息中提取的文件句柄的某些模型的表,或者参照NFS服务器302和NFS服务器303的所有文件句柄,分组传递控制单元202确定传递目的地。
如果传输层的协议是TCP,则中间设备200用分组传递控制单元202建立它自己与NFS服务器302之间的新TCP对话,或者根据生成的传递规接管软安装NFS客户机的对话,并且将通信分组从NFS客户机101传递到NFS服务器302。如果传输层的协议是UDP,则中间设备200实际上用分组传递控制单元202把通信分组从NFS客户机101传递给NFS服务器302。
在中间设备200已经开始启动作为中间设备供应服务的集成数据访问服务的服务之后,当中间设备200从客户机101接收通信分组时,分组传递控制单元202可以利用相应NFS服务器生成的原始文件句柄,根据操作员设置的集成服务的规则(内容),确定NFS服务器302或者NFS服务器303为传递目的地,并且把通信分组传递给已确定的传递目的地。
NFS客户机101由此可以访问一个NFS服务器,而不会意识到包括NFS服务器302和NFS服务器303的两个NFS服务器的存在。换言之,对于NFS客户机101,无缝地执行中间设备200的引入以及作为中间设备200的中间设备供应服务的数据访问服务的集成。
{第二实施方式}下面将说明本发明的中间设备应用于NLM(Network LockManager,网络锁定管理器)协议环境的第二实施方式。中间设备供应服务的内容与第一实施方式的内容相同。
(NLM协议环境下的中间设备的无缝引入)
下面将说明与第一实施方式相同的在NFS客户机101与NFS服务器302之间无缝引入中间设备200的实例。
NLM协议是提供文件锁定功能的协议,它通常用于利用NFS协议的环境。由于NFS协议没有锁定功能,因此NLM协议弥补锁定功能。在利用NFS协议和NLM协议的环境中,文件锁定被保存为NFS服务器和NFS客户机中的状态信息,以便锁定文件。
为了把中间设备无缝地引入环境并且没有失配地持续NLM协议的锁定控制,中间设备需要在引入中间设备之前,识别所有被锁定的状态信息。
NLM协议具有作为知晓文件被锁定状态的功能的检查文件锁定的命令。在中间设备200进入NFS客户机101与NFS服务器302之间的网络时,中间设备200可以使用该命令依次获得由NFS服务器302预先提供的各文件的锁定状态信息。如果由NFS服务器302管理的文件数量是巨大的,则要花费时间获得所有锁定状态信息。尽管在依次获得各文件的锁定状态信息期间,但是获得的文件的锁定状态很可能改变。因此,中间设备200难于用锁定检查命令精确识别中间设备200被引入时的所有文件的锁定状态信息。
在故障后的NFS服务器的重新引导准备好时,NLM协议具有恢复锁定状态信息的功能,该锁定状态信息在重新引导NFS服务器之前是有效的。此外,在故障后的NFS客户机的重新引导准备就绪时,NLM协议具有丢弃由NFS服务器拥有的锁定状态信息的功能。中间设备200使用这些功能识别引入它之前的锁定状态。
(引入过程)由于NLM协议通常用于利用NFS协议的环境,因此系统具有与图7所示的第一实施方式相同的配置。
中间设备供应服务管理单元203依据操作员指定的服务设置生成,执行中间设备供应服务需要的服务固有信息的列表(以下称之为“所需服务固有信息列表”),并且把所需服务固有信息列表注册在对话监视单元204中。
与第一实施方式一样,中间设备200和NFS服务器303连接网络交换机150,并且网络设置被改变。因此,信息收集单元206从NFS服务器302获取向NFS服务器302进行文件访问的NFS客户机的列表,并且把NFS客户机的列表发送给中间设备服务管理单元203。客户机列表是NFS客户机的IP地址和计算机名称的列表,并且可以使用必须与NFS协议一起使用的MOUNT协议的命令(MOUNT_DUMP)来获得。
在获得客户机列表之后,与第一实施方式一样,改变IP地址,所以通常应当发送给NFS服务器302的通信分组将被发送给中间设备200。在作出路由改变设置之后,中间设备供应服务管理单元203把NFS客户机列表发送给对话解除控制单元205,向客户机列表中包含的NFS客户机101发送一个通知,该通知指示NFS服务器302被认为正在重新引导以及在重新引导NFS服务器302之前已经生效的锁定被无效。根据与NLM协议一起使用的SM(状态监视器)协议中可得到的命令(SM_NOTIFY)发送该通知。实际上,NFS服务器302不被重新引导,而是中间设备200发送作为伪命令的SM_NOTIFY命令,以便知晓NFS服务器302的锁定状态。
在收到SM_NOTIFY之后,NFS客户机101向NFS服务器302发送重新锁定已经被锁定的所有文件的重新锁定请求,以便在引入中间设备200之前立即恢复已经生效的锁定状态。
当重新锁定请求被发送给中间设备200时,对话监视单元204从重新锁定请求的内容中,获取由NFS客户机101放置的NFS服务器302的文件的所有锁定状态,并且把所获取的锁定状态注册在对话解除控制单元205中。
对话解除控制单元205发送指示NFS客户机101被重新引导到NFS服务器302的命令(SM_NOTIFY)。实际上,客户机101不被重新引导,而是中间设备200发送作为伪命令的SM_NOTIFY命令,以便清除由NFS服务器302保持的锁定状态。NFS服务器302中保持的锁定状态信息被清除。因而,对话解除控制单元205根据已注册的锁定状态信息从NFS客户机101向NFS服务器302发送重新锁定请求。锁定状态信息从适当保持锁定的文件注册到中间设备供应服务管理单元203中。
例如,中间设备200向NFS服务器302发送指示根据SM协议重新引导NFS客户机101的SM_NOTIFY命令。然而,中间设备200可以改为利用用来无效由NLM协议中可用的请求源保持的所有锁定的命令(NLM_FREEALL)。后者命令可以用来无效由NFS服务器302保持的所有锁定。
根据上述一系列操作,中间设备200可以在中间设备200引入之前,立即获得已经生效的锁定状态信息。中间设备200由此可以匹配它自己识别的锁定状态和NFS服务器302中实际锁定状态。
由中间设备200的中间设备供应设备管理单元203识别的锁定信息被用作中间设备供应服务之一。例如中间设备200可以根据中间设备供应服务之一,在NFS服务器302与NFS服务器303之间移动数据,以用于平滑NFS服务器的存储容量和分散访问负荷的目的。在这种情况下,最好应当采用对NFS客户机101隐藏的方式执行移动数据的处理,并且移动数据的目的地需要重新创建与移动数据的源中相同的锁定状态。因此,中间设备供应服务管理单元203将锁定状态信息反映到传递NLM分组的传递规则中,并且把锁定状态信息作为分组传递的辅助信息注册在分组传递控制单元202。
{第三实施方式}下面将描述本发明的中间设备应用于CIFS协议环境的第三实施方式。中间设备供应服务的内容与第一和第二实施方式的内容相同。
(CIFS协议环境中的中间设备的无缝引入)假设为了集成多个CIFS服务器的存储资源的目的引入中间设备。新的CIFS服务器被引入,中间设备集成已有CIFS服务器和新引入的CIFS服务器。
图9是显示本发明第三实施方式的系统的结构的方框图。图9显示了已经引入中间设备200和新添加的CIFS服务器305的系统的结构。
如图9所示,根据本发明实施方式的系统具有CIFS客户机102、中间设备200、CIFS服务器304、305和网络交换机150、151。CIFS服务器305是新引入的CIFS服务器,尽管在图9中显示了一个或两个每个设备,但是每个设备的数量是任意的。
CIFS客户机102、中间设备200以及CIFS服务器304、305之每个具有用于网络连接的接口,以便与其它设备通信。中间设备200连接网络1和网络5,CIFS客户机102连接网络2,CIFS服务器304连接网络3,以及CIFS服务器305连接网络4。网络1至3连接网络交换机150、网络4、5连接网络交换机151。该系统配置允许CIFS客户机102、中间设备200和CIFS服务器304、305相互通信。
CIFS服务器304、305可以经由网络向CIFS客户机102提供信息处理服务。CIFS服务器304、305提供的信息处理服务是允许客户机访问存储资源的服务,并且将称之为“数据访问服务”。
CIFS客户机102可以访问CIFS服务器304、305,并且使用CIFS服务器304、305提供的数据访问服务。
网络交换机150与网络交换机151相同,网络交换机150和中间设备200与图1和图2所示的相同。
(引入过程)下面将描述在CIFS客户机102与CIFS服务器304之间建立CIFS协议的对话以及CIFS客户机102和CIFS服务器304相互通信的情况下,在CIFS客户机102与CIFS服务器304之间的网络中无缝引入中间设备200的过程。
假定CIFS客户机102和CIFS服务器304已经经由连接网络150的网络2、3建立对话,以及已经在相互通信。然后,中间设备200的网络1连接网络交换机150,以及中间设备200的网络5和CIFS服务器350的网络6连接网络交换机151。
然后,CIFS服务器350的网络4被分配IP地址,使得它处于与网络2和网络3相同的网域中。网络设置是中间设备200作出的,所以中间设备200将起到网络1与网络5之间的网桥作用,并且网络开始操作。
在伪中间设备200和CIFS服务器305作出网络设置之后,CIFS服务器304的网络3从网络交换机150断开,并连接网络交换机151。
随着网络3的连接由此改变,来自根据CIFS协议的CIFS客户机102的通信分组经由网络1、中间设备200、网络5和网络3发送给CIFS服务器304。
根据CIFS协议,为了标识已经建立对话的用户,在CIFS客户机102与CIFS服务器304之间验证用户,并且此后由CIFS服务器304分配仅仅在对话中有效的用户ID。用户ID代表防止作为用户验证信息的用户名和口令被第三方获取的信息。因此,即使当中间设备200收集CIFS客户机102与CIFS服务器304之间的通信分组时,中间设备200也不能标识在中间设备200被引入之前已经建立的对话的用户信息。中间设备200由此把中间设备200被引入之前已经建立的对话处理为免除中间设备供应服务。
在引入中间设备200后从CIFS客户机102新建立的对话中,中间设备200可以从建立对话时发送和接收的通信分组中获得用户验证信息。中间设备200还可以通过获得根据CIFS协议建立对话时发送和接收的通信分组,无遗漏地获得对话信息如CIFS服务器的文件的锁定状态。使用这些信息项,中间设备200可以建立它自己与CIFS服务器之间的对话,并且根据中间设备供应服务的规则把CIFS服务器变为来自CIFS客户机102的连接目的地。在此方式中,中间设备200把在中间设备200被引入后新建立的对话处理为免除中间设备供应服务。
因此,在中间设备200中,除了处理基于操作员指定的服务设置的分组传递规则外,中间设备供应服务管理单元203把在引入中间设备200之前建立的对话处理为免除中间设备供应服务,并且把通信分组传递给CIFS服务器。中间设备供应服务管理单元203还把引入中间设备200后建立的对话处理为免除中间设备供应服务,并且把向CIFS服务器传递通信分组的传递规则注册在分组传递控制单元202。因此,中间设备200可以没有中断地处理引入中间设备200前已经建立的对话。所以,可以无缝地引入中间设备200。
{第四实施方式}下面将描述本发明的中间设备应用于联机购物站点的第四实施方式。中间设备供应服务是集成由多个WEB服务器提供的WEB服务并把它们作为一个WEB服务供应给WEB客户机的用户的服务。例如,该服务允许用户在一次访问中购买和结算在多个联机购物站点出售的货物。
(联机购物站点环境中的中间设备的无缝引入)
引入中间设备的目的是,集成多个WEB服务运行联机购物站点,以集成各购物站点和把它们显示为一个购物站点。
图10是显示本发明第四实施方式的系统的结构的方框图。本系统具有中间设备200、至少两个WEB服务器306、307,结算服务器308、至少一个WEB客户机103以及网络交换机150。
WEB客户机103可以从网络2经由互联网7访问图10所示的服务器组,并从WEB服务器获得WEB内容并显示信息。
WEB服务器306、307经由网络3、4连接网络交换机150。WEB服务器306、307向WEB客户机103提供相当于联机购物的货物选择的WEB内容,并且管理彼此关联的WEB客户机103的信息和所选货物信息作为一次对话。WEB服务器306、307随后向结算服务器308发送对话信息。
结算服务器308是经由网络5连接网络交换机150的WEB服务器。结算服务器308从WEB服务器306、307接收对话信息,并且向WEB客户机103提供用来选择货物的结算方法和配送方法的WEB内容。
假定WEB客户机103不能执行在它自己与WEB服务器306、307之间的用来标识个人的登录处理和加密通信,并且当它访问结算服务器308时,执行登录处理和加密通信。
网络交换机150和中间设备200与图1和图2所示的相同。
当WEB客户机103访问联机购物站点和在上述系统中选择货物时,中间设备200向WEB客户机103提供中间设备供应服务,用来集成WEB服务器306和WEB服务器307的联机购物站点,并允许WEB客户机103在WEB服务器306和WEB服务器307两者的联机购物站点选择货物。
假定运行联机购物站点的操作员已经在中间设备200中作出设置,用来集成WEB服务器306和WEB服务器307的联机购物站点。例如,作出把WEB服务器307提供的货物添加到由WEB服务器306提供的货物选择页上的设置,并且显示所添加的货物的信息。
(引入过程)下面将说明在WEB客户机103与WEB服务器306之间建立对话以及WEB客户机103和WEB服务器306相互通信的情况下,在WEB客户机103与WEB服务器306之间的网络中无缝引入中间设备200的过程。
假定WEB客户机103和WEB服务器306已经经由连接网络150的网络2、3建立对话,并且已经相互通信。则中间设备200的网络1连接网络交换机150。
在中间设备200中,中间设备供应服务管理单元203依据操作员指定的服务设置,生成执行服务需要的信息列表(以下称之为“所需信息列表”),并在对话监视单元204中注册所需信息列表。所需信息列表包括对话ID和货物编号。对话ID是在WEB客户机103与WEB服务器306之间的对话信息中标识各对话的标识符。货物编号是代表WEB客户机从WEB服务器306提供的货物中选择的货物的编号。
在确定所需信息列表之后,中间设备200重新连接网络交换机150。系统现在采用图10所示的物理结构。
网络交换机150已经被设置成,使用复制和传递通信分组的功能,把网络2、3之间流动的通信分组传递给中间设备200的网络1。当通信分组被传递给中间设备200时,数据分组经由网络接口201到达对话监视单元204。
对话监视单元204分析在客户机100与服务器300之间已经建立的已有对话中传送的对话信息,并且从对话信息中提取对话ID和由WEB客户机103选择的所有货物的货物编号,以及把对话ID和货物编号发送给中间设备供应服务管理单元203。
如果在中间设备的引入之前已经建立的对话中的所有ID和货物编号可以从对话信息中获得,则中间设备供应服务管理单元203依据所获得的信息和操作员指定的服务设置,生成适当传递通信分组的传递规则,并且在分组传递控制单元202中注册所生成的传递规则。传递规则是当WEB客户机103请求用于显示货物列表的WEB内容的URL地址时,集成WEB服务器306和WEB服务器307的WEB内容的规则。根据传递规则,当请求WEB服务器306的WEB内容时,WEB服务器307的货物列表的WEB内容被获取,并且与WEB服务器306的内容集成(结合),并且把它们作为一个WEB内容分组回送给WEB客户机103。
当生成传递规则时,对话上流动的通信分组的路由从WEB客户机103直接延伸到WEB服务器306的路由,改变到客户机WEB103经由中间设备200延伸到WEB服务器306的路由。此时,利用改变网络交换机150的设置和改变中间设备200或WEB服务器306的IP地址等依赖于连接网络交换机150的网络配置的方法。
当经由中间设备200路由通信分组时,WEB客户机103与WEB服务器306之间建立的对话上发送的通信分组通过网络接口201到达中间设备200的分组传递控制单元202。中间设备200建立它自己与WEB服务器306之间的新对话,使用新建立的对话传递从WEB客户机103发送的通信分组的数据,并且基于预先获得的对话信息维持对话,以便在引入中间设备200之前建立的对话将不被切断。
此外,中间设备供应服务管理单元203重新把传递规则添加给分组传递控制单元202,以便匹配WEB客户机103与中间设备200之间的对话信息和中间设备200与WEB服务器306之间的对话信息。传递规则涉及这样的规则,即在WEB客户机103与中间设备200之间的对话中,使用WEB客户机103与WEB服务器306之间生成的对话ID,并且执行中间设备200和WEB客户机103间的对话ID与中间设备200和WEB服务器306间的对话ID之间的变换的规则。
在中间设备200被引入前建立的所有对话已经开始经由中间设备200路由,以及WEB客户机103与中间设备200之间的对话和中间设备200与WEB服务器306之间的对话已经被匹配之后,中间设备供应服务管理单元203指令分组控制单元202使预注册的传递规则生效,开始中间设备供应服务。
在中间设备供应服务开始被提供之后,当WEB客户机103请求某个URL的WEB内容时,中间设备200根据内容集成的传递规则,建立它自己与WEB服务器307之间的新对话,获取希望的WEB内容,从WEB服务器306中获取WEB内容,并且集成所获取的WEB内容。在中间设备200以WEB内容描述指示已选货物已经被选择的信息之后,中间设备200把集成的WEB内容回送给WEB客户机103。此时,在三个对话之间更换通信数据,这三个对话包括WEB客户机103与中间设备200之间的对话、中间设备200与WEB服务器306之间的对话以及中间设备200与WEB服务器307之间的对话,维持这些对话。
当WEB客户机103请求结算处理时,中间设备200向WEB服务器306、307发送结算请求,并且接收从WEB服务器306和WEB307发送给结算服务器308的对话ID和货物编号信息。中间设备200随后把中间设备引入前由客户机建立的对话的对话ID以及来自WEB服务器306、307的货物编号一起传递给结算服务器308。中间设备200把WEB内容回送给WEB客户机103,所述WEB内容包括结算服务器308的WEB内容的URL。
中间设备200不参与结算服务器308与WEB客户机103之间的通信。
权利要求
1.一种中间设备,适于设置在经由网络提供信息处理服务的第一信息处理设备与接收所述信息处理服务的第二信息处理设备之间,用于提供附加到所述信息处理服务上的中间服务,包括状态信息获取装置,用于从所述第一信息处理设备或所述第二信息处理设备获取维持对话的状态所需的状态信息,其中为所述信息处理服务在所述第一信息处理设备与所述第二信息处理设备之间建立所述对话;中间服务管理装置,基于所述状态信息生成传递规则,该传递规则用来把所述中间服务应用于在所述第一信息处理设备与所述第二信息处理设备之间发送和接收的所述信息处理服务的数据,并且传递应用所述中间服务的数据;以及传递控制装置,根据所述传递规则,在它自己与所述第二信息处理设备之间,维持所述第一信息处理设备与所述第二信息处理设备之间建立的所述已有对话的状态,建立它自己与所述第一信息处理设备之间的新对话,以及使用已有对话和新对话传递所述数据。
2.根据权利要求1所述的中间设备,其中所述状态信息获取装置具有对话监视装置,用于获取在所述第一信息处理设备与所述第二信息处理设备之间发送和接收的所述对话中固有的对话信息,以作为所述状态信息的一部分。
3.根据权利要求1所述的中间设备,其中所述状态信息获取装置具有信息收集装置,用于通过在所述第一信息处理设备或所述第二信息处理设备上询问,获取作为所述状态信息的一部分的所述信息处理服务中固有的服务固有信息。
4.根据权利要求3所述的中间设备,其中所述状态信息获取装置在所述第一信息处理设备或所述第二信息处理设备上,对于多个访问对象,询问为了标识所述第一信息处理设备上各个访问对象而已经分配的访问对象标识信息,并且提取多个已获取的所述访问对象标识信息共有的规则性,由此获取作为所述服务固有信息的一部分的设备标识符,该设备标识符用来标识具有所述访问对象的所述第一信息处理设备。
5.根据权利要求1所述的中间设备,其中所述传递控制装置具有在所述第一信息处理设备与所述第二信息处理设备之间传递已有对话的数据的操作模式,该数据不经历所述中间服务;以及,当由所述第二信息处理设备请求新建立所述信息处理服务的对话时,建立中间设备与所述第二信息处理设备和所述第一信息处理设备双方的对话的操作模式,该操作模式还使用所述对话把所述中间服务应用于所述信息处理服务的数据,以及传递所述数据。
6.根据权利要求1所述的中间设备,其中所述状态信息获取装置具有解除控制装置,用于向所述第一信息处理设备和所述第二信息处理设备发出用来暂时无效和重新建立所述对话的命令,和根据所述命令获取在重新建立对话的处理中的所述状态信息。
7.根据权利要求1所述的中间设备,其中所述中间服务具有由操作员预先注册的内容。
8.根据权利要求7所述的中间设备,其中所述信息处理服务包括允许所述第二信息处理设备访问所述第一信息处理设备上的资源的服务,并且所述中间服务包括改变从所述第二信息处理设备对所述第一信息处理设备上资源的访问的服务,以变换访问目的地。
9.根据权利要求7所述的中间设备,其中所述信息处理服务包括允许所述第二信息处理设备访问所述第一信息处理设备上的WEB页的服务,所述中间服务包括集成由多个所述第一信息处理设备提供的所述信息处理服务,并向所述第二信息处理设备提供已集成的信息处理服务的服务。
10.根据权利要求1所述中间设备,其中当所述中间服务结束供应时,所述传递控制装置当从所述第二信息处理设备请求新建立所述信息处理服务的对话时,传递所述第二信息处理设备与所述第一信息处理设备之间的数据,由此在所述第一信息处理设备与所述第二信息处理设备之间直接建立对话,同时该数据免除所述中间服务;以及对于已经供应的所述信息处理服务,使用它自己与所述第一信息处理设备之间的对话和它自己与所述第二信息处理设备之间的对话,连续传递应用所述中间服务的数据,直至所述第二信息处理设备结束使用所述信息处理服务。
11.一种服务供应方法,用中间设备提供附加到信息处理服务上的中间服务,所述中间设备被设置在经由网络提供所述信息处理服务的第一信息处理设备与接收所述信息处理服务的第二信息处理设备之间,包括第一步骤,控制设置在所述第一信息处理设备与所述第二信息处理设备之间的所述中间设备,用于从所述第一信息处理设备或所述第二信息处理设备获取维持对话的状态所需的状态信息,其中为所述信息处理服务在所述第一信息处理设备与所述第二信息处理设备之间建立所述对话;第二步骤,基于所述状态信息控制所述中间设备生成传递规则,该传递规则用来把所述中间服务应用于在所述第一信息处理设备与所述第二信息处理设备之间发送和接收的所述信息处理服务的数据,并且传递应用所述中间服务的数据;以及第三步骤,控制所述中间设备,根据所述传递规则,在所述中间设备与所述第二信息处理设备之间维持在所述第一信息处理设备与所述第二信息处理设备之间建立的所述已有对话的状态,建立所述中间设备与所述第一信息处理设备之间的新对话,以及使用已有对话和新对话传递所述数据。
12.根据权利要求11所述的服务供应方法,其中在所述第一步骤中,所述中间设备获取在所述第一信息处理设备与所述第二信息处理设备之间发送和接收的所述对话中固有的对话信息,以作为所述状态信息的一部分。
13.根据权利要求11所述的服务供应方法,其中在所述第一步骤中,所述中间设备通过在所述第一信息处理设备或所述第二信息处理设备上询问,获取作为所述状态信息的一部分的所述信息处理服务中固有的服务固有信息。
14.根据权利要求13所述的服务供应方法,其中所述中间设备在所述第一信息处理设备或所述第二信息处理设备上,对于多个访问对象,询问为了标识所述第一信息处理设备上各个访问对象而已经分配的访问对象标识信息,并且提取多个已获取的所述访问对象标识信息共有的规则性,由此获取作为所述服务固有信息的一部分的设备标识符,该设备标识符用来标识具有所述访问对象的所述第一信息处理设备。
15.根据权利要求11所述的服务供应方法,其中在所述第一步骤中,当不能够获取需要的所有所述状态信息时,所述中间设备传递在所述第一信息处理设备与所述第二信息处理设备之间的已有对话的数据,该数据不经历所述中间服务;以及,当由所述第二信息处理设备请求新建立所述信息处理服务的对话时,所述中间设备建立中间设备与所述第二信息处理设备和所述第一信息处理设备两者之间的对话,使用所述对话把所述中间服务应用于所述信息处理服务的数据,以及传递所述数据。
16.根据权利要求11所述的服务供应方法,其中在所述第一步骤中,所述中间设备向所述第一信息处理设备和所述第二信息处理设备发出用来暂时无效和重新建立所述对话的命令,和获取在重新建立对话的处理中的所述状态信息。
17.根据权利要求11所述的服务供应方法,其中所述中间服务具有由操作员预先注册在所述中间设备中的内容。
18.根据权利要求17所述的服务供应方法,其中所述信息处理服务包括允许所述第二信息处理设备访问所述第一信息处理设备上的资源的服务,并且所述中间服务包括改变从所述第二信息处理设备对所述第一信息处理设备上资源访问的服务,以变换访问目的地。
19.根据权利要求17所述的服务供应方法,其中所述信息处理服务包括允许所述第二信息处理设备访问所述第一信息处理设备上的WEB页的服务,所述中间服务包括集成由多个所述第一信息处理设备提供的所述信息处理服务,以及向所述第二信息处理设备提供已集成的信息处理服务的服务。
20.根据权利要求11所述服务供应方法,还包括第四步骤,当所述中间服务结束供应时,当由所述第二信息处理设备请求新建立所述信息处理服务的对话时,传递所述第二信息处理设备与所述第一信息处理设备之间的数据,由此在所述第一信息处理设备与所述第二信息处理设备之间直接建立对话,同时数据免除所述中间服务;以及第五步骤,对于已经供应的所述信息处理服务,使用所述中间设备与所述第一信息处理设备之间的对话和所述中间设备与所述第二信息处理设备之间的对话,连续传递应用所述中间服务的数据,直至所述第二信息处理设备结束使用所述信息处理服务。
21.一种服务供应程序,通过在计算机上运行提供附加到信息处理服务上的中间服务,所述计算机被设置在经由网络提供所述信息处理服务的第一信息处理设备与接收所述信息处理服务的第二信息处理设备之间,所述程序能够使所述计算机执行第一处理,控制状态信息获取装置,从所述第一信息处理设备或所述第二信息处理设备获取维持对话的状态所需的状态信息,其中为了所述信息处理服务在所述第一信息处理设备与所述第二信息处理设备之间建立所述对话;第二处理,基于所述状态信息控制中间服务管理装置生成传递规则,该传递规则用来把所述中间服务应用于在所述第一信息处理设备与所述第二信息处理设备之间发送和接收的所述信息处理服务的数据,并且传递应用所述中间服务的数据;以及第三处理,控制传递控制装置,根据所述传递规则,在它自己与所述第二信息处理设备之间维持在所述第一信息处理设备与所述第二信息处理设备之间建立的所述已有对话的状态,建立它自己与所述第一信息处理设备之间的新对话,以及使用所述已有对话和所述新对话传递所述数据。
22.根据权利要求21所述的服务供应程序,其中在所述第一处理中,获取在所述第一信息处理设备与所述第二信息处理设备之间发送和接收的所述对话中固有的对话信息,以作为所述状态信息的一部分。
23.根据权利要求21所述的服务供应程序,其中在所述第一处理中,通过在所述第一信息处理设备或所述第二信息处理设备上询问,获取作为所述状态信息的一部分的所述信息处理服务中固有的服务固有信息。
24.根据权利要求23所述的服务供应程序,其中询问所述第一信息处理设备或所述第二信息处理设备,其中对于多个访问对象,询问为了标识所述第一信息处理设备上各个访问对象而已经分配的访问对象标识信息,并且提取多个已获取的所述访问对象标识信息共有的规则性,由此获取作为所述服务固有信息的一部分的设备标识符,该设备标识符用来标识具有所述访问对象的所述第一信息处理设备。
25.根据权利要求21所述的服务供应程序,其中在所述第一处理中,当不能够获取需要的所有所述状态信息时,所述传递控制装置传递所述第一信息处理设备与所述第二信息处理设备之间的已有对话的数据,该数据不经历所述中间服务;以及,当由所述第二信息处理设备请求新建立所述信息处理设备的对话时,所述传递控制装置建立传递控制装置与所述第二信息处理设备和所述第一信息处理设备两者之间的对话,使用所述对话把所述中间服务应用于所述信息处理服务的数据,以及传递所述数据。
26.根据权利要求21所述的服务供应程序,其中在所述第一处理中,解除控制装置向所述第一信息处理设备和所述第二信息处理设备发出用来暂时无效和重新建立所述对话的命令,以及所述状态信息获取装置获取在重新建立对话的处理中的所述状态信息。
27.根据权利要求21所述的服务供应程序,其中所述中间服务具有由操作员预先注册在所述中间设备中的内容。
28.根据权利要求27所述的服务供应程序,其中所述信息处理服务包括允许所述第二信息处理设备访问所述第一信息处理设备上的资源的服务,并且所述中间服务包括改变从所述第二信息处理设备对所述第一信息处理设备上资源访问的服务,以变换访问目的地。
29.根据权利要求27所述的服务供应程序,其中所述信息处理服务包括允许所述第二信息处理设备访问所述第一信息处理设备上的WEB页的服务,所述中间服务包括集成由多个所述第一信息处理设备提供的所述信息处理服务,以及向所述第二信息处理设备提供已集成的信息处理服务的服务。
30.根据权利要求21所述服务供应程序,还包括第四处理,当所述中间服务结束供应时,当由所述第二信息处理设备请求新建立所述信息处理服务的对话时,控制所述传递控制装置传递所述第二信息处理设备与所述第一信息处理设备之间的数据,由此在所述第一信息处理设备与所述第二信息处理设备之间直接建立对话,同时该数据免除所述中间服务;以及第五处理,对于已经供应的所述信息处理服务,控制所述传递控制装置使用它自己与所述第一信息处理设备之间的对话和它自己与所述第二信息处理设备之间的对话,连续传递应用所述中间服务的数据,直至所述第二信息处理设备结束使用所述信息处理服务。
31.一种由计算机运行的服务供应程序,在经由网络提供信息处理服务的第一信息处理设备与接收所述信息处理服务的第二信息处理设备之间提供附加到信息处理服务上的中间服务,所述程序能够使所述计算机执行第一处理,从所述第一信息处理设备或所述第二信息处理设备获取维持对话的状态所需的状态信息,其中为所述信息处理服务在所述第一信息处理设备与所述第二信息处理设备之间建立所述对话;第二处理,基于所述状态信息生成传递规则,该传递规则用来把所述中间服务应用于在所述第一信息处理设备与所述第二信息处理设备之间发送和接收的所述信息处理服务的数据,并且传递应用所述中间服务的数据;以及第三处理,根据所述传递规则,在它自己与所述第二信息处理设备之间维持在所述第一信息处理设备与所述第二信息处理设备之间建立的所述已有对话的状态,建立它自己与所述第一信息处理设备之间的新对话,以及根据所述传递规则,使用所述已有对话和所述新对话传递所述数据。
全文摘要
本发明公开了一种可以以无缝方式引入和拆除的中间设备。状态信息获取装置从第一信息处理设备或第二信息处理设备获取维持对话的状态所需的状态信息,其中为了信息处理服务在第一信息处理设备与第二信息处理设备之间建立所述对话。根据状态信息,中间服务管理装置创建传递规则,该传递规则通过把中间服务应用于信息处理服务上的数据来传递。根据传递规则,传递控制装置在传递控制装置与第二信息处理设备之间维持已有对话的状态,同时建立传递控制装置与所述第一信息处理设备之间的新对话,以便通过使用已有对话和新对话传递数据。
文档编号H04L29/08GK1926523SQ200480042510
公开日2007年3月7日 申请日期2004年11月15日 优先权日2004年3月19日
发明者山川聪, 鸟居隆史, 桂岛航 申请人:日本电气株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1