专利名称:负载平衡器的利记博彩app
技术领域:
本发明涉及一种负载平衡器,尤其涉及一种用于缓解服务器负载集中的负载平衡器。
背景技术:
各种形式的负载平衡器是已经公知的。其中的一个例子在图16中图示,负载平衡器LB通过路由器R1和R3接收客户机CL所发送的一个分组,根据分组的IP首部中所包括的源地址(SA)或源地址和TCP端口号的组合选择一个服务器作为将要连接的目标。
而且,例如,存在一种在较高的应用层上指定一个服务器分配目标的形式,或者一种根据将要连接目标的URL选择一个服务器的系统。
而且,已经可以通过识别一个SSL(加密套接字层一个用于确保传输层上TCP/IP通信安全的加密协议)会话ID或一个Cookie变量来进行服务器分配,所述Cookie变量用于标识万维网服务器生成由服务器和浏览器存储的字符串信息“Cookie variable(Cookie变量)”处的一个用户。
与这样一个负载平衡器的功能有关的另一个要点是通信过程中服务器连贯性(业务处理连贯性)的功能。
例如,当在线购物所用的服务器负载被平衡时,对于维持从产品选择到购买以及结算一系列过程中客户机和服务器之间的通信来说,“连贯性维持功能”非常重要。
在负载服务器未提供这样一个连贯性维持功能的情况下,在通信过程中将访问分配给不同的服务器,导致电子商务的一系列处理不能被正确地操作。
因此,许多负载平衡器提供了基于IP首部信息的连贯性维持功能。
当图16所示的客户机CL是一个固定终端时,IETF(互联网工程任务组)现在推荐了根据IP协议管理终端移动的移动IP技术。这一技术用于即使在IP终端移动的情况下也能维持通信,并通过在IP终端移动时获取新的转交地址(CoA)和通过在原籍代理(HA)或目的终端中登记转交地址来实现移动通信。
当使用这一技术从一个IP终端访问一个服务器时和当执行服务器负载平衡时,只要IP终端移动即改变其IP地址(转交地址),从而改变源地址。因此,不能实现在通信过程中使用源地址(或结合使用源地址)的服务器连贯性维持功能。
将参考如图1所示使用移动IPv6时分组传输的示意图来描述这种情况。
准备并发送一个分组,该分组的源地址(SA)在移动节点(在下文中称作移动IP终端)MN连接到路由器R1所属区域时是转交地址CoA1,在因为移动连接到路由器R2的所属区域时是转交地址CoA2。
假设以与图16相同的方式在路由器R3和服务器S1和S2之间设置负载平衡器LB,当负载平衡器LB接收这样一个分组并以与图16相同的方式将源地址(SA)用作检索(选择)关键字时,负载平衡器将来自同一移动IP终端MN的访问误认为是来自另一移动IP终端的访问,因此从服务器S1改变成服务器S2,所以存在不能确保服务器连贯性的问题。
发明内容
因此,本发明的一个目的是提供一种负载平衡器,其中即使终端是一个移动IP终端,也能保证通信过程中的服务器连贯性维持功能。
为了实现上述目的,根据本发明的一种负载平衡器包括用于从一个到达分组中提取专用于一个移动IP终端的标识信息的装置;和用于根据该标识信息确定一个将要连接的目标服务器的装置。(权利要求1)即,在本发明中,为了向移动IP终端提供负载平衡功能,从一个到达分组中提取专用于一个移动IP终端的标识信息。根据所提取的标识信息将该分组分配给将要连接的目标服务器。
对于上述标识信息,可以使用一个目标选项首部中所包括的一个原籍地址,所述目标选项首部被添加给移动IP终端移动时所发送的一个IP分组。(权利要求2)即,如通过在使用移动IPv6的情况下一个服务器寻址分组格式的一个例子所表示的(参见图4),当由负载平衡器接收的一个分组的转交地址(源地址)随着移动IP终端移动而改变时,原籍地址是相同的。因此,通过使用这个原籍地址进行服务器选择,能够维持服务器连接的连贯性。
而且,对于上述标识信息,可以使用一个分组源地址的预定低位比特中所规定的内容,所述分组使用非正式地址配置法。(权利要求3)即,存在如下两种准备移动IPv6地址的系统(方法)(1)非正式地址生成系统(非正式自动地址配置)(stateless auto address configuration),其中一个终端自由地准备一个将要使用的地址;和(2)正式地址生成系统(正式自动地址配置)(stateful auto address configuration),其中终端在使用一个地址时需要获得许可。在这两种方法中,当使用上述非正式系统(1)时,移动IP终端自身的L2地址标识符(例如在以太网情况下组合MAC地址的数目)被用于移动IP终端所准备的一个转交地址的低位64比特(参见图6)。
因为地址标识符是一个专用于移动IP终端的数值,使得负载平衡器可以通过使用所接收分组的低位64比特或者通过组合该64比特与其它信息来选择服务器。
而且,对于上述标识信息,如果加密的话,可以使用该分组的加密参数索引(SPI)。(权利要求4)存在通过一个用于分组自身加密措施的IPSEC(加密)来加密一个移动IPv6分组的情况。在这种情况下,在加密区域之后的区域内,如果不在两个终端之间使用加密密钥则不能解码这些编码。
在这种情况下,可以使用加密参数索引(SPI参见图9)来保证服务器选择的连贯性。这个加密参数索引(SPI)是两个终端协商来表示由两端使用的加密算法和加密密钥之间关系,并被写入在加密负载的头部内的一个号码。
而且,根据本发明的负载平衡器可以包括用于请求原籍代理在一旦寻址一个服务器的第一分组到达时在一个终端的转交地址已经改变时通知转交地址变化的装置;和用于通过将所通知的转交地址视为标识信息来确定将要连接的一个目标服务器的装置。(权利要求5)即,接收分组的转交地址随着移动IP终端的移动而改变。转交地址和原籍地址之间的关系由一个原籍代理来管理。因此,当接收到一个包括转交地址的分组时,负载平衡器可以指示原籍代理在转交地址改变时始终通知一个新的转交地址,从而即使在通信过程中不生成分组,原籍代理也在终端移动时将改变后的转交地址通知负载平衡器。
因此,负载平衡器始终知道最新的转交地址,并可以使用它来选择目标服务器。
在上述情况下,原籍代理适合于在转交地址改变时将改变后的转交地址通知负载平衡器。然而,考虑到移动IP终端自身知道转交地址的改变,可以请求移动节点自身替代原籍代理以在第一到达分组内的转交地址改变时通知转交地址的变化,可以将所通知的转交地址视为标识信息来执行服务器连接分配。(权利要求6)而且,当上述提取装置在分组到达时提取从原籍链路发送的一个分组,并且该分组并不包括目标选项首部时,确定装置可以将该分组的源地址视为标识信息来确定目标服务器。(权利要求7)。
即,当第一分组到达并且该分组是从一条原籍链路发送或者是从一个未移动的移动IP终端发送的时候,该分组的源地址被视为标识信息来确定目标服务器。
而且,可以给上述确定装置中提供一个用于存储目标服务器的地址的表格,所述目标服务器使用一个分组的源地址即转交地址作为检索关键字,从而使用到达分组的源地址来确定目标服务器。(权利要求8)而且,可以给上述确定装置中提供一个用于存储目标服务器的地址的表格,所述目标服务器使用一个分组的源地址即转交地址作为检索关键字,从而使用到达分组的源地址来确定目标服务器,当通知新的转交地址时,该表格可以准备一个使用新的转交地址作为检索关键字的表目,并且可以作为存储数据将所存储的目标服务器地址存储为一个旧转交地址表目的数据。(权利要求9)而且,上述确定装置可以在表目数据中存储使用期限,可以定期递减该使用期限,可以在每次一个使用该表目的分组到达时更新该使用期限,并可以在使用期限过期时使该表目无效。(权利要求10)而且,作为上述服务器替代的一个移动IP终端的原籍代理可以作为将要连接的目标。(权利要求11)。
即,不仅服务器而且一个移动IP终端的原籍代理可以实现负载平衡的目的。
而且,可以实现一个原籍代理,它根据负载平衡器的请求,定期地或者当因移动IP终端的转交地址改变而在操作上触发时,将该原籍代理自身所管理的汇集高速缓冲存储器信息(binding cache information)通知该负载平衡器。(权利要求12)而且,可以实现一个移动IP终端,它根据负载平衡器的请求,定期地或者当因移动IP终端自身的转交地址改变而在操作上触发时,将该移动IP终端自身所管理的汇集高速缓冲存储器信息通知该负载平衡器。(权利要求13)
图1图示应用根据本发明的负载平衡器的一个网络实施例(1);图2是图示根据本发明的负载平衡器的结构(1)的方框图;图3是一个流程图,表示在根据本发明的负载平衡器的结构(1)中所使用的IPv6首部信息提取器的一个操作例子(其中使用原籍地址作为检索关键字);图4是一个格式图,图示在根据本发明的负载平衡器的结构(1)中所使用的移动IPv6分组(从终端到服务器);图5图示在根据本发明的负载平衡器的结构(1)中所使用的负载平衡表的结构(其中使用原籍地址作为检索关键字);图6是IPv6分组的普通全局地址的格式图;图7图示在根据本发明的负载平衡器的结构(1)中所使用的负载平衡表的结构(其中使用源地址的低位64比特作为检索关键字);图8是一个流程图,图示在根据本发明的负载平衡器的结构(1)中使用的IPv6首部信息提取器的一个操作例子(其中使用SPI作为一个检索关键字);图9是一个格式图,表示在根据本发明的负载平衡器的结构(1)中使用的一个IPSEC加密移动IPv6分组(从终端到服务器);图10图示在根据本发明的负载平衡器的结构(1)中所使用的负载平衡表的结构(其中使用SPI作为检索关键字);图11图示应用根据本发明的负载平衡器的一个网络实施例(2)(当接收到第一分组时);图12图示应用根据本发明的负载平衡器的一个网络实施例(2)(当移动IP终端移动时);图13是图示根据本发明的负载平衡器的结构(2)的方框图;图14A和14B是流程图,图示在根据本发明的负载平衡器的结构(2)中使用的一个IPv6首部信息提取器的一个操作例子(其中使用源地址作为检索关键字);图15图示在根据本发明的负载平衡器的结构(2)中使用的一个负载平衡表的结构(其中使用源地址作为检索关键字);和图16图示应用现有技术的负载平衡器的网络结构。
在所有附图中,类似的参考数字表示类似或相应的组件。
具体实施例方式
网络实施例(1)图1图示应用根据本发明的负载平衡器的一个网络实施例(1)。在这个实施例中,当移动IP终端MN从路由器R1的所属区域移动到路由器R2的所述区域,并且其转交地址从CoA1转变为CoA2时,提取专用于该移动IP终端MN的标识信息(检索关键字),因此如果已经选择了服务器S1,则在通信过程中同样选择服务器S1,从而保持服务器连贯性维持功能。
图2图示图1所示的负载平衡器LB的结构(1)。在这一结构中,该负载平衡器LB包括一个IPv6首部信息提取器1、一个负载平衡表2、一个表格控制器3和一个分配处理器4。
IPv6首部信息提取器1提取标识信息,以便表格控制器3使用该标识信息作为一个检索关键字查找负载平衡表2。分配处理器4根据如此获得的服务器信息确定将被分配的一个目标服务器。
注意到负载平衡表2、表格控制器3和分配处理器4构成确定装置。
(1)在使用原籍地址作为检索关键字的情况下图3图示在使用原籍地址作为上述检索关键字(标识信息)来据以选择一个服务器的情况下的IPv6首部信息提取器1的一个操作例子。
即,首先执行一个首部提取(在步骤T1),其中从图4所示的移动IPv6分组(从终端到服务器)的IPv6首部10开始顺序地检查“下一首部”字段,直到发现一个指示IPv6目标选项的编码“60”(在步骤T2)。
当未发现目标选项编码“60”时,确定移动IP终端MN未移动,而是连接到原籍链路,所以表格控制器3如下所述使用一个源地址(SA)作为检索关键字从表格2中检索将要连接的目标服务器。分配处理器4将该分组发送给服务器(在步骤T3)。
反之,如果发现目标选项编码“60”,则表示一个目标选项首部20存在于该IPv6首部之后的字段中。
随后,确定在目标选项首部20中包括的选项类型是否是“201”(在步骤T4)。如果选项类型不是“201”,则该程序前进到上述步骤T3。如果选项类型是“201”,这个选项类型表示一个原籍地址选项,即,移动IP终端MN已移动。因此,分配处理器4使用该原籍地址作为检索关键字从一个服务器组中选择一个相应的服务器(在步骤T5)。
图5图示图2所示的负载平衡表2的表格结构。在这个表格中,使用原籍地址“2000.16”作为检索关键字,存储这个原籍地址和与其一对一相关的目标服务器地址“S1”。
目标服务器地址是根据通信开始时的负载平衡算法来确定的服务器地址。存在多种选择目标服务器的方法或算法,例如一种利用循环法选择服务器的方法和一种选择具有较低服务器负载的服务器的方法。可以不加改变地使用这些常规方法。
注意到图5所示的原籍地址具有这样一种格式,其中“2000”对应于图6所示的移动IPv6分组的全局地址格式的网络ID(64比特),“16”对应于接口ID(64比特)。在下文中,检索关键字的地址表示格式相同。
而且,在图3的步骤T3使用源地址(SA)作为检索关键字的目标服务器地址检索表同样存储在上述负载平衡表2中(参考号亦相同)。除了替代原籍地址的源地址SA被写入检索关键字字段之外,这一表格的例子与图5相同。
(2)在使用SA地址的低位64比特作为检索关键字的情况下除了如上所述使用原籍地址作为检索关键字的情况之外,当通过非正式地址生成系统准备分组时,还可以使用图6所示的移动IPv6的全局地址的低位64比特作为一个检索关键字。注意到在这种情况下图2的结构(1)可以被用作负载平衡器LB的结构。
即,在上述非正式地址生成系统的情况下,移动IPv6分组的全局地址的低位64比特使用一个L2地址标识符,例如通过将其与诸如在以太网中该终端自身的MAC地址相组合而获得的一个号码。
因此,因为该地址对于每一终端来说是唯一的,可以提取全局地址的低位64比特而不是搜索原籍地址。
而且,在此情况下负载平衡表2的结构在图7中表示。如果源地址(SA)的低位64比特是“16”,表示目标服务器地址是“S1”,从而分配处理器4根据该检索结果分配服务器的连接目标。
(3)在使用SPI作为检索关键字的情况下除了如上所述使用原籍地址或源地址的低位64比特之外,当移动IPv6分组被加密时,还可以使用一个加密参数索引(SPI)来执行负载平衡。注意到在这种情况下也可以将图2的结构(1)用于负载平衡器LB的结构。
在这种情况下的IPv6首部信息提取器1的一个操作例子在图8中图示。首先,IPv6首部信息提取器1如上所述执行首部提取(在步骤T11)。在这种情况下,如图9的移动IPv6分组(从终端到服务器)的IPSEC加密格式所表示,从IPv6首部10开始顺序地检查“下一首部”字段,直到发现一个表示加密首部(ESP首部)40的编码“50”(在步骤T12)。
如果未发现编码“50”,根据源地址(SA)选择服务器(在步骤T13),否则下一选项首部是ESP首部40。
在ESP首部40的顶部,加密参数索引SPI被写入,以便使用如此获得的索引SPI作为下一个将要查找表格的检索关键字(在步骤T14)。
图10图示当如此使用索引SPI作为检索关键字时负载平衡表2的结构。在这个例子中,存储与索引SPI“218”一对一相关的目标服务器地址“S1”。目标服务器地址“S1”是在如上所述通信开始时由负载分配算法确定的服务器的地址。
网络实施例(2)图11和图12图示应用根据本发明的负载平衡器的网络实施例(2)。这个实施例是在原籍代理HA和负载平衡器LB之间交换信息以便随着移动IP终端MN的移动而改变检索关键字的系统。
在下文中,将参考图11和图12描述这一实施例的总体操作。
首先,将描述如图11所示当负载平衡器LB从移动IP终端MN接收到第一分组时的操作例子。
①由负载平衡器LB通过路由器R1和R3接收来自处于转交地址CoA1上的移动IP终端MN的移动IPv6分组。
②负载平衡器LB提取该移动IP终端MN的源地址(SA=CoA1)以及该终端MN的原籍地址。
③根据所提取的转交地址CoA1(和其它信息),例如服务器S1被选作目标服务器。同时,执行首部重写处理等,并将该分组发送给所选择的服务器S1。
④通过上述③,负载平衡器LB从CoA通知请求生成器5向移动IP终端MN所在的原籍代理HA发送一个转交地址通知请求,以在转交地址改变时获知转交地址变化。
⑤原籍地址HA返回一个对转交地址通知请求的响应。
将描述如图12所示移动IP终端MN进一步移动时的一个操作例子。
①移动IP终端MN从属于转交地址CoA1的路由器R1移动到属于转交地址CoA2的路由器R2。
②移动IP终端MN获得转交地址CoA2。
③移动IP终端MN向原籍代理HA发送一个汇集更新,指示转交地址已经从CoA1改变成CoA2。
④已经接收到该汇集更新的原籍代理HA将原籍代理HA自身的汇集高速缓冲存储器中的转交地址从CoA1更新成CoA2。
⑤原籍代理HA将转交地址CoA2的汇集更新通知负载平衡器LB。
⑥负载平衡器以与原籍代理HA相同的方式在其内部高速缓冲存储器中将转交地址从CoA1更新成CoA2。
⑦负载平衡器LB随后以与转交地址CoA1相同的方式根据转交地址CoA2选择服务器S1。
执行这样一个操作的负载平衡器LB的结构(2)在图13中图示,与图12所示的不同之处在于添加了CoA通知请求生成器5。
在下文中,将描述负载平衡器LB的结构(2)中图14A和14B所示的IPv6首部信息提取器1的一个操作例子,其中一部分与上面的描述相同。
首先,IPv6首部信息提取器1如上所述提起所接收分组的首部(在图14A的步骤T21)。通常,因为作为转交地址的源地址(SA)被用作检索关键字,确定所接收的分组是否是图12所示表示源地址(SA)改变的通知消息⑤(在步骤T22)。
结果,如果不是源地址(SA)改变的消息,使用源地址(SA)作为检索关键字从图15所示的负载平衡表2中选择目标服务器(在步骤T23)。
在这个例子中,因为源地址(SA)是“2000.12”,选择具有目标服务器地址“S1”的服务器。
反之,当在步骤T22发现源地址(SA)的改变通知消息时,执行一个新表目的准备(在步骤T24)。
在这种情况下,执行图14B的流程图,以便首先查找图15所示的负载平衡表(在步骤T231)以确定是否已经存在一个表目(在步骤T232)。
结果,如果未准备该表目,即如果使用通知消息⑤中所包括的一个旧转交地址(=CoA1)作为检索关键字的检索导致未检索到结果,则重新准备一个表目。
此时,将要登记的检索关键字是新的转交地址。然而,作为所准备表目的内容,使用在通知消息⑤中所包括的旧转交地址作为检索关键字再次查找表格2,所获得的旧服务器地址被存储为图15所示检索关键字是新转交地址的表目的数据(在步骤T233和T234)。这是为了即使同一移动IP终端移动也选择相同的服务器。
因而,与旧转交地址结合使用的服务器地址被复制到新转交地址的表目,以便即使该移动IP终端移动也可以连接到同一服务器。
注意到在图15的表格2中,图示了一个使用期限。这个使用期限表示该表目的使用期限,在每一固定的时间周期减少一次以在到达作为超时的“0”时删除该表目。
因此,源地址(SA)与相同的服务器地址共存一固定的使用期限,从而当移动IP终端MN再次返回转交地址CoA1时不必准备一个新表目(在步骤T235)。
注意到在图11和图12所示的实施例(2)中,负载平衡器LB执行到原籍代理HA的转交地址改变通知请求。然而,因为IP终端本身就知道转交地址的改变,当负载平衡器LB请求这个IP终端地址一旦转交地址改变进行通知时,执行如上所述的相同操作。
如上所述,根据本发明的负载平衡器被如此构成,以便从一个到达分组中提取专用于一个移动IP终端的标识信息,并根据该标识信息确定将要连接的一个目标服务器。因此,在从该移动IP终端访问服务器时,始终维持了服务器连接的连贯性。
而且,通过请求原籍代理或终端在终端的转交地址改变时通知转交地址的变化,并通过将所通知的转交地址视为标识信息确定将要连接的目标服务器,同样可以维持服务器连接的连贯性。
权利要求
1.一种负载平衡器,包括用于从一个到达分组提取专用于一个移动IP终端的标识信息的装置;和用于根据该标识信息确定将要连接的一个目标服务器的装置。
2.如权利要求1所述的负载平衡器,其中标识信息包括在分组的目标选项首部中所包括的一个原籍地址。
3.如权利要求1所述的负载平衡器,其中标识信息被规定在使用一个非正式地址配置方法的分组的源地址的预定低位比特中。
4.如权利要求1所述的负载平衡器,其中如果加密的话,标识信息包括分组的一个加密参数索引。
5.一种负载平衡器,包括用于请求原籍代理在一旦寻址一个服务器的第一分组到达时在一个终端的转交地址改变时通知该转交地址改变的装置;和用于通过将所通知的转交地址视为标识信息来确定将要连接的一个目标服务器的装置。
6.一种负载平衡器,包括用于请求一个终端在一旦寻址一个服务器的第一分组到达时在该终端的转交地址改变时通知该转交地址改变的装置;和用于通过将所通知的转交地址视为标识信息来确定将要连接的一个目标服务器的装置。
7.如权利要求2所述的负载平衡器,其中当提取装置在分组到达时提取从原籍链路发送的一个分组,并且该分组并不包括目标选项首部时,确定装置通过将该分组的源地址视为标识信息来确定目标服务器。
8.如权利要求1所述的负载平衡器,其中确定装置中被提供一个用于存储目标服务器的地址的表格,该目标服务器具有与作为一个检索关键字的转交地址相关的一个源地址,从而使用到达分组的源地址来确定目标服务器。
9.如权利要求5所述的负载平衡器,其中确定装置中被提供一个用于存储目标服务器的地址的表格,该目标服务器具有与作为一个检索关键字的转交地址相关的一个源地址,从而使用到达分组的源地址来确定目标服务器,并且当新的转交地址已经被通知时,该表格使用新转交地址作为检索关键字来准备一个表目,并且可以作为存储数据将所存储的目标服务器地址存储为一个旧转交地址的表目的数据。
10.如权利要求9所述的负载平衡器,其中确定装置在表目数据中存储一个使用期限,定期递减该使用期限,在每次使用该表目的一个分组到达时更新该使用期限,并在使用期限过期时使该表目无效。
11.如权利要求1所述的负载平衡器,其中把作为服务器替代的一个移动IP终端的原籍代理作为将要连接的目标。
12.一种原籍代理,它根据负载平衡器的请求,定期地或者通过移动IP终端的转交地址改变在操作上触发时,将原籍代理自身管理的汇集高速缓冲存储器信息通知给负载平衡器。
13.一种移动IP终端,它根据负载平衡器的请求,定期地或者通过移动IP终端的转交地址改变在操作上触发时,将移动IP终端自身管理的汇集高速缓冲存储器信息通知给负载平衡器。
14.如权利要求7所述的负载平衡器,其中确定装置中被提供一个用于存储目标服务器的地址的表格,该目标服务器具有与作为一个检索关键字的转交地址相关的一个源地址,从而使用到达分组的源地址来确定目标服务器。
15.如权利要求6所述的负载平衡器,其中确定装置中被提供一个用于存储目标服务器的地址的表格,该目标服务器具有与作为一个检索关键字的转交地址相关的一个源地址,从而使用到达分组的源地址来确定目标服务器,并且当新的转交地址已经被通知时,该表格使用新转交地址作为检索关键字来准备一个表目,并且可以作为存储数据将所存储的目标服务器地址存储为一个旧转交地址表目的数据。
16.如权利要求15所述的负载平衡器,其中确定装置在表目数据中存储一个使用期限,定期递减该使用期限,在每次使用该表目的一个分组到达时更新该使用期限,并在使用期限过期时使该表目无效。
全文摘要
在即使一个终端是移动终端的情况下也能保持通信过程中服务器连贯性维持功能的一种负载平衡器中,从一个到达分组中提取专用于一个移动IP终端的标识信息,根据该标识信息确定一个将要连接的目标服务器。而且,当该终端的转交地址已经改变时,请求一个原籍代理或一个终端通知该转交地址的变化,和通过将所通知的转交地址视为标识信息来确定一个将要连接的目标服务器。
文档编号H04L29/06GK1416064SQ0214670
公开日2003年5月7日 申请日期2002年10月31日 优先权日2001年10月31日
发明者小野英明, 武智竜一, 中津川惠一 申请人:富士通株式会社