一种负载均衡集群中访问请求处理方法、系统和可读介质与流程

文档序号:18597619发布日期:2019-09-03 22:14阅读:185来源:国知局
一种负载均衡集群中访问请求处理方法、系统和可读介质与流程

本发明涉及互联网技术领域,尤其涉及一种负载均衡集群中访问请求处理方法、系统和可读介质。



背景技术:

现有的fullnat负载均衡集群中常用的容灾处理方法为基于主备模式的处理方法,参考图1所示的容灾系统,主备模式下有两台实现负载均衡的网关,但这两个网关在同一时刻只有一个网关处于工作状态,而另一个网关处于热备状态。所有的内网ip都配置到这两个网关上,但只有处于工作状态的网关才能启用内网ip为客户端提供服务。但现有的容灾处理方法存在以下缺陷:当处于工作状态的网关崩溃时,需要将基于工作状态的网关建立的连接切换到处于热备状态的网关上,同时处于热备状态的网关变为工作状态,但需要等到切换完成后该网关才能为客户端提供服务,不仅存在延时而且可能会存在客户端需要重新建立连接的情况,一旦两个网关均崩溃则无法为客户端提供服务;此外,由于同一时间只有一个网关处于工作状态,负载均衡集群性能受限于该网关,扩展性不强。

因此,如何提高负载均衡集群中网关的容灾能力是亟待解决的技术问题之一。



技术实现要素:

本发明实施例提供一种负载均衡集群中访问请求处理方法、系统和可读介质,用以提高负载均衡集群中网关的容灾能力。

第一方面,本发明实施例提供一种负载均衡集群中访问请求处理系统,包括:负载均衡集群、上联交换机和至少一个服务器,所述负载均衡集群中包含至少两个网关,其中:

所述上联交换机分别通信连接每一个网关,用于监测所述负载均衡集群中各个网关是否故障,并将客户端发送的访问请求转发给未发生故障的网关;

所述至少两个网关两两互相通信连接,每一个网关,用于分别接收其他网关同步的连接信息并存储到本地;且

每一个网关分别通信连接每个服务器,用于在接收到所述上联交换机转发的访问请求时,如果该访问请求为未建立连接的访问请求,则为所述客户端和其中一个服务器建立连接并将访问请求转发给建立连接的服务器,以及将新建立的连接的连接信息存储到本地并同步给其他各个网关;如果该访问请求为已经建立连接的访问请求,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器。

这样可以保证某一网关故障时,基于本地存储的自身建立的与其他网关同步的连接信息,其他网关能够将之前由故障网关处理的客户端的访问请求准确转发至服务器,同时提升了负载均衡集群的容灾处理能力。

较佳地,每个网关,还用于分别监测其他网关是否故障,并在监测到故障网关时,将故障网关的部分内网ip地址接管为本地内网ip地址,以及根据本地存储的连接信息,在接收到之前由故障网关处理的访问请求时,使用其接管的故障网关的部分内网ip地址转发访问请求,每个网关的内网ip地址包括多个,并且初始化时进行配置,所述内网ip地址用于在客户端和服务器之间转发访问请求。

在负载均衡集群中存在故障网关时,其他网关通过接管故障网关的内网ip地址,可以在接收到之前由故障网关处理的访问请求,基于为客户端建立的连接信息,由接管的内网ip地址将访问请求准确转发至服务器,在一定程度上提升了负载均衡集群中网关的容灾能力。

优选地,每个网关,具体用于在接收到之前由故障网关处理的访问请求时,将所述访问请求中的源ip地址修改为故障网关的内网ip地址,其中所述故障网关的内网ip地址为故障网关在发生故障之前同步到本网关的连接信息中与客户端的ip地址对应的内网ip地址;并将所述访问请求的目的ip地址修改为故障网关在发生故障之前同步到本网关的连接信息中与客户端的ip地址对应的服务器的ip地址;并将修改后的访问请求转发给所述服务器的ip地址对应的服务器。

通过将预先为客户端建立的连接信息同步至其他网关,通过同步的连接信息将源ip地址修改为连接信息中故障网关的内网ip地址,目的ip地址修改为连接信息中服务器的ip地址,从而可以保证访问请求由同一服务器处理,实现了会话保持。

较佳地,所述系统,还包括:下联交换机;

每个网关,还用于在接管故障网关的部分内网ip地址后,将接管的部分内网ip地址与自身网关的多媒体访问控制mac地址携带在地址解析协议arp报文中发送给下联交换机;

所述下联交换机,用于在接收到所述arp报文后,根据所述arp报文中携带的内网ip地址与mac地址,更新存储的内网ip地址与mac地址的对应关系;以及在接收到服务器返回的处理结果后,根据更新后的内网ip地址与mac地址的对应关系,确定所述处理结果中包含的内网ip地址对应的mac地址,并将所述处理结果返回至确定出的mac地址对应的网关,由确定出的网关将所述处理结果返回给客户端,其中,确定出的网关为接管所述故障网关的内网ip地址的网关或内网ip地址归属的网关。

通过设置下联交换机,保证服务器返回的处理结果准确到达至客户端。

优选地,每个网关,具体用于在检测到故障网关时,将所述故障网关的所有内网ip地址和所述负载均衡集群中除故障网关外的所有网关的管理ip地址分别进行排序,所述管理ip地址为登录网关所需的ip地址;并根据排序后的所有内网ip地址和排序后的管理ip地址,按照轮转方式将归属到自身管理ip地址的故障网关的内网ip地址接管为本地内网ip地址。

一方面,可以防止故障网关的所有内网ip均由一个网关接管情况的发生,另一方面,可以有效防止同一内网ip由两个网关接管的情况发生。

较佳地,所述上联交换机,具体用于对所述访问请求中的源ip地址和目的ip地址进行哈希计算得到哈希值;并根据对应关系列表中存储的哈希值与网关的mac地址的对应关系,确定计算得到的哈希值对应的mac地址;并将所述访问请求发送给确定出的mac地址对应的网关。

这样,可以保证将客户端发送的访问请求均匀转发到负载均衡集群中未发生故障的各个网关上。

第二方面,本发明实施例提供一种负载均衡集群中访问请求处理方法,包括:

接收上联交换机转发的访问请求;

如果确定出该访问请求为未建立连接的访问请求,则为所述客户端和其中一个服务器建立连接并将访问请求转发给建立连接的服务器,以及将新建立的连接的连接信息存储到本地并同步给其他各个网关;

如果确定出该访问请求为已经建立连接的访问请求,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器。

较佳地,所述方法,还包括:

分别检测其他网关是否故障,并在检测到故障网关时,将故障网关的部分内网ip地址接管为本地内网ip地址;以及

根据本地存储的连接信息,在接收到之前由故障网关处理的访问请求时,使用其接管的故障网关的部分内网ip地址转发访问请求,所述网关的内网ip地址包括多个,并且初始化时进行配置,所述内网ip地址用于在客户端和服务器之间转发访问请求。

较佳地,在接收到之前由故障网关处理的访问请求时,使用其接管的故障网关的部分内网ip地址转发访问请求,具体包括:

在接收到之前由故障网关处理的访问请求时,将所述访问请求中的源ip地址修改为故障网关的内网ip地址,其中所述故障网关的内网ip地址为故障网关在发生故障之前同步到本网关的连接信息中与客户端的ip地址对应的内网ip地址;以及

将所述访问请求的目的ip地址修改为故障网关在发生故障之前同步到本网关的连接信息中与客户端的ip地址对应的服务器的ip地址;并

将修改后的访问请求转发给所述服务器的ip地址对应的服务器。

优选地,在将故障网关的部分内网ip地址接管为本地内网ip地址之后,还包括:

将接管的部分内网ip地址与自身网关的多媒体访问控制mac地址携带在地址解析协议arp报文中发送给下联交换机,以使所述下联交换机在接收到所述arp报文后,根据所述arp报文中携带的内网ip地址与mac地址,更新存储的内网ip地址与mac地址的对应关系;以及在接收到服务器返回的处理结果后,根据更新后的内网ip地址与mac地址的对应关系,确定所述处理结果中包含的内网ip地址对应的mac地址,并将所述处理结果返回至确定出的mac地址对应的网关,由确定出的网关将所述处理结果返回给客户端,其中,确定出的网关为接管所述故障网关的内网ip地址的网关或内网ip地址归属的网关。

较佳地,将故障网关的部分内网ip地址接管为本地内网ip地址,具体包括:

在检测到故障网关时,将所述故障网关的所有内网ip地址和所述负载均衡集群中除故障网关外的所有网关的管理ip地址分别进行排序,所述管理ip地址为登录网关所需的ip地址;并

根据排序后的所有内网ip地址和排序后的管理ip地址,按照轮转方式将归属到自身管理ip地址的故障网关的内网ip地址接管为本地内网ip地址。

第三方面,本发明实施例提供一种负载均衡集群中访问请求处理方法,包括:

检测负载均衡集群中各个网关是否故障;并

将客户端发送的访问请求转发给未发生故障的网关,以使所述网关在接收到所述上联交换机转发的访问请求时,如果该访问请求为未建立连接的访问请求,则为所述客户端和其中一个服务器建立连接并将访问请求转发给建立连接的服务器,以及将新建立的连接的连接信息存储到本地并同步给其他各个网关;如果该访问请求为已经建立连接的访问请求,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器。

较佳地,将客户端发送的访问请求转发给未发生故障的网关,具体包括:

对所述访问请求中的源ip地址和目的ip地址进行哈希计算得到哈希值;并

根据对应关系列表中存储的哈希值与网关的mac地址的对应关系,确定计算得到的哈希值对应的mac地址;并

将所述访问请求发送给确定出的mac地址对应的网关。

第四方面,本发明实施例提供一种负载均衡集群中访问请求处理装置,包括:

接收单元,用于接收上联交换机转发的访问请求;

第一处理单元,用于如果确定出该访问请求为未建立连接的访问请求,则为所述客户端和其中一个服务器建立连接并将访问请求转发给建立连接的服务器,以及将新建立的连接的连接信息存储到本地并同步给其他各个网关;

第二处理单元,用于如果确定出该访问请求为已经建立连接的访问请求,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器。

第五发明,本发明实施例提供一种负载均衡集群中访问请求处理装置,包括:

检测单元,用于检测负载均衡集群中各个网关是否故障;

转发单元,用于将客户端发送的访问请求转发给未发生故障的网关,以使所述网关在接收到所述上联交换机转发的访问请求时,如果该访问请求为未建立连接的访问请求,则为所述客户端和其中一个服务器建立连接并将访问请求转发给建立连接的服务器,以及将新建立的连接的连接信息存储到本地并同步给其他各个网关;如果该访问请求为已经建立连接的访问请求,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器。

第六方面,本发明实施例提供一种计算机可读介质,其存储有可由计算装置执行的计算机程序,当所述程序在计算装置上运行时,使得所述计算装置执行网关侧提供的负载均衡集群中访问请求处理方法的步骤,或者执行上联交换机侧的负载均衡集群中访问请求处理方法的步骤。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为现有技术中热备模式的容灾系统的结构示意图;

图2为本发明实施例提供的负载均衡集群中访问请求处理系统的结构示意图;

图3为本发明实施例提供的负载均衡集群中访问请求处理方法的流程示意图;

图4为本发明实施例提供的在将客户端发送的访问请求转发给未发生故障的网关的流程示意图;

图5为本发明实施例提供的轮盘的示意图;

图6a为本发明实施例提供的将故障网关的部分内网ip地址接管为本地内网ip地址的流程示意图;

图6b为本发明实施例提供的采用轮转方式接管网关lb1的内网ip地址的示意图;

图7a为本发明实施例提供的网关lb2转发访问请求的流程示意图;

图7b为本发明实施例提供的访问请求在客户端与服务器之间的流向示意图;

图8a为本发明实施例提供的包含下联交换机的负载均衡集群中访问请求处理系统的结构示意图;

图8b为本发明实施例提供的处理结果在服务器与客户端之间的流向示意图;

图9为本发明实施例提供的网关侧的负载均衡集群中访问请求处理装置的结构示意图;

图10为本发明实施例提供的上联交换机侧的负载均衡集群中访问请求处理装置的结构示意图;

图11为本发明实施例提供的实施负载均衡集群中访问请求处理方法的计算装置的结构示意图。

具体实施方式

本发明实施例提供的负载均衡集群中访问请求处理方法、系统和可读介质,用以提高负载均衡集群中网关的容灾能力。

以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

为了便于理解本发明,对本发明实施例涉及的部分用语进行说明:

1、fullnat技术:全称为fullnetworkaddresstranslation,是将ip报文的源ip地址与目的地址都进行转换,以实现负载均衡的一种技术。

2、lb:全称为loadbalance,为提供fullnat负载均衡功能的网关,多个lb构成负载均衡集群,本发明中的负载均衡集群可以采用fullnat模式。

3、外网vip,为lb上的外网ip地址,用于向客户端转发处理结果,外网vip也是为客户端提供负载均衡服务的ip地址,在负载均衡集群中可能有不止一个外网vip。

4、上联交换机:fullnat负载均衡集群外网侧的交换机,负责分发客户端的访问请求。

5、rs:全称为realserver,用于为客户端提供真实服务的后端服务器。

6、localip:为内网ip地址,即lb上的内网静态vip地址,初始化时分配给负载均衡集群中各个网关的ip地址,localip也是经过fullnat负载均衡集群后的ip报文的源ip地址,即localip用于将接收到的报文转发给服务器。

为了解决现有技术中主备模式下网关的容灾能力较差的问题,本发明实施例给出了一种解决上述问题的负载均衡集群中访问请求处理系统,该系统的结构示意图可以参考图2所示,包括上联交换机、负载均衡集群和至少一个服务器,即图2中的服务器1~n,其中,负载均衡集群中包含至少两个网关,即图2中fullnat负载均衡集群中的网关lb1~lbn。上述系统中的上联交换机与负载均衡集群中每一个网关通信连接,负载均衡集群中包含的至少两个网关lb1~lbn互相通信连接,每一个网关用于分别接收其他网关同步的连接信息并存储到本地;以及负载均衡集群中每一个网关分别与服务器1~n通信连接。为了实现负载均衡,图2中客户端在需要访问服务器时,需要将访问请求发送给上联交换机,上联交换机实时或定期监测负载均衡集群中所有网关是否发生故障,当接收到访问请求后,将客户端发送的访问请求转发给未发生故障的网关,网关在接收到上联交换机转发的访问请求后,确定是否为该访问请求的客户端建立连接,若否则为所述客户端与其中一个服务器建立连接并将访问请求转发给建立连接的服务器,同时将新建立的连接的连接信息存储到本地并同步给其他各个网关,这样当该网关故障时,由于其他网关已同步该网关建立的连接信息,故在接收到之前由故障网关处理的访问请求时,也可以将该访问请求发送至服务器,从而也就提高了负载均衡集群中网关的容灾能力;当确定出已为所述客户端建立连接,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器,从而基于网关为客户端建立的连接信息,保证了将客户端发送的访问请求由连接信息中服务器处理该访问请求,实现了同一个客户端发送的访问请求由同一个服务器进行处理。

需要说明的是,本发明中的服务器可以为用于提供腾讯云服务的服务器,则客户端为腾讯云应用程序,该客户端可以安装在终端中,该终端可以为便携设备(例如:手机、平板、笔记本电脑等),也可以为个人电脑(pc,personalcomputer)。此外,客户端与上联交换机之间通过网络进行通信连接,该网络可以为局域网、广域网等。

此外,本发明中的服务器还可以为其它服务器,只要需要进行负载均衡均可以实施本发明实施例提供的负载均衡集群中访问请求处理系统。

下面结合图2的应用场景,参考图3-图11来描述根据本发明示例性实施方式提供的负载均衡集群中访问请求处理方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。

如图3所示,为本发明实施例提供的负载均衡集群中访问请求处理方法的流程示意图,可以包括以下步骤:

s11、客户端向上联交换机发送访问请求。

本步骤中,图2中任一客户端在需要访问服务器时即会向上联交换机发送访问请求,其中,所述访问请求的源ip地址为客户端的ip地址,目的ip地址为负载均衡集群的外网ip地址,即外网vip。需要说明的是,负载均衡集群的外网ip地址可以不止一个。此外,所述访问请求中还携带有业务信息,所述业务信息用于从服务器获取需要的数据。具体地,在将访问请求发送给上联交换机时,需要在访问请求中携带上联交互机的mac地址,这样可以保证访问请求准确到达上联交换机。

较佳地,所述访问请求中还携带有客户端的端口号和负载均衡集群的外网端口号。

s12、上联交换机监测负载均衡集群中各个网关是否故障。

本步骤中,上联交换机实时或定期向负载均衡集群中的所有网关发送探测包,根据所有网关是否在预设时间内返回相应探测结果来确定网关是否发生故障。

s13、上联交换机在接收到所述访问请求后,将客户端发送的访问请求转发给未发生故障的网关lb2。

上联交换机在分发访问请求时,为了实现负载均衡,即将所有客户端发送的访问请求均匀分布到负载均衡集群中各个网关中,引入了等价多路径(equalcostmultiplepath,ecmp),即上联交换机将通往各台网关的路径认为是等价的。

具体地,基于ecmp技术,上联交换机若确定出网关未发生故障,则在将客户端发送的访问请求转发给未发生故障的网关时,可以按照图4所示的流程实施,包括以下步骤:

s21、上联交换机对访问请求中的源ip地址和目的ip地址进行哈希计算得到哈希值。

具体实施时,上联交换机提取访问请求中的源ip地址,即客户端的ip地址,以及提取目的ip地址,即负载均衡集群的外网ip地址,如外网vip。然后对客户端的ip地址和负载均衡集群的外网vip地址进行哈希计算得到哈希值。

较佳地,在进行哈希计算时,还可以将客户端发送访问请求的端口号、外网端口号同源ip地址和目的ip地址共同进行哈希计算得到哈希值。因为客户端可能会发送不同类型的访问请求,而客户端的ip地址是一样的,故可以将端口号考虑在内,使得可能由不同的网关来转发客户端的访问请求。

s22、上联交换机根据对应关系列表中存储的哈希值与网关的mac地址的对应关系,确定计算得到的哈希值对应的mac地址。

基于步骤s21得到的哈希值,上联交换机根据本地存储的对应关系列表中存储的哈希值与网关的mac地址的对应关系,确定步骤s21计算得到的哈希值对应的mac地址。确定出的mac地址对应的网关即为本次访问请求需要转发的目的网关。

s23、将所述访问请求发送给确定出的mac地址对应的网关。

本步骤中,基于步骤s22确定出的mac地址,在将访问请求转发给确定出的mac地址对应的网关时,需要将访问请求中的mac地址修改为确定出的mac地址,从而保证访问请求可以准确到达该网关。

较佳地,当上联交换机检测到某一网关发生故障时,从对应关系列表中删除发生故障的网关的mac地址与哈希值的对应关系;并建立删除的哈希值与其它网关的mac地址的对应关系,然后利用建立的对应关系更新所述对应关系列表;以及在接收到所述访问请求后,再对所述访问请求中的源ip地址和目的ip地址进行哈希计算得到哈希值;并根据更新后的对应关系列表中存储的哈希值与网关的mac地址的对应关系,确定计算得到的哈希值对应的mac地址;并将所述访问请求发送给确定出的mac地址对应的网关。这样一来,可以保证将客户端的访问请求转发至正常工作的网关,从而也就保证了客户端的访问请求能够到达服务器。

参考图2所示,以上联交换机将客户端发送的访问请求发送给网关lb2为例进行说明。

s14、网关lb2在接收到所述上联交换机转发的访问请求时,如果该访问请求为未建立连接的访问请求,则为所述客户端和其中一个服务器建立连接。

负载均衡集群中各个网关间可以彼此同步网关建立的连接信息,则网关lb2本地存储的连接信息除了包含网络lb2自身为客户端与服务器之间建立的连接信息外,还包括其他网关建立的连接信息。

具体地,本步骤中网关lb2在接收到访问请求,可以根据访问请求中携带的客户端的ip地址和外网vip,根据本地存储的连接信息,确定本地存储的连接信息中是否包含访问请求中携带的客户端的ip地址和外网vip,若不包含则确定未为该访问请求建立连接信息,则按照轮询方式确定用于处理该访问请求的服务器。针对首次访问请求,在确定用于处理该访问请求的服务器时,各个服务器具有权重,以图2中具有n个服务器为例进行说明,则可以得到n个服务器的权重p1~pn,然后按照轮盘赌选择算法,确定用于处于访问请求的服务器,服务器的权重用于指示该服务器的负载情况。基于n个服务器的权重可以得到图5所示的轮盘。在执行轮盘赌选择算法时,可以随机旋转该轮盘中的箭头,当箭头停驻时,确定停驻位置对应的权重,则将该权重对应的服务器确定为处于该访问请求的服务器。当然,也可以使用其他的方法来确定用于处理访问请求的服务器,目的是保证服务器间的负载均衡。

较佳地,所述连接信息至少包括:客户端的ip地址、负载均衡集群的外网ip地址、接收客户端的访问请求的网关的内网ip地址,以及用于处理所述访问请求的服务器的ip地址,则将该连接信息同步给其他网关。

较佳地,内网ip地址为初始化时分配给负载均衡集群中各个网关的,且为各个网关分配的内网ip地址不止一个,所述内网ip地址用于在客户端和服务器之间转发访问请求。具体地,以图2所示的系统中负载均衡集群包含的网关为例进行说明,在初始化时,会为负载均衡集群中网关lb1~lbn分别分配一个内网ip列表,也可以称为归属localip列表,每个内网ip列表中包含多个内网ip,较佳地,包含的内网ip的数量可以但不限于为4个。例如为网关lb1分配的内网ip列表中包含lip1~lip4这4个内网ip地址,为网关lb2分配的内网ip列表中包含lip5~lip8这4个内网ip地址,为网关lb3分配的内网ip列表中包含lip9~lip12这4个内网ip地址,为网关lb4分配的内网ip列表中包含lip13~lip16这4个内网ip地址等等,依次类推。

优选地,所述连接信息还可以包括客户端的端口号、外网ip地址的端口号、内网ip地址的端口号和服务器的端口号。当访问请求中包含端口号时,还可以根据本地存储的连接信息,确定是否存在包含访问请求中的客户端的ip地址、端口号、外网vip和外网端口号的连接信息,如果存在则确定已为所述客户端建立了连接信息,否则确定未为所述客户端建立连接信息。

负载均衡集群中各个网关在接收到客户端首次发送的访问请求后,可以为客户端与处理该访问请求的服务器之间建立连接,在建立连接后可以将建立的连接的连接信息一方面进行本地存储,另一方面同步到其他网关中,这样可以保证当某一网关崩溃导致故障时,将之前由故障网关处理为客户端转发访问请求时,当该客户端再次发送访问请求时,可以由其他网关根据存储的连接信息将客户端再次发送的访问请求准确到达之前为客户端与服务器建立的连接信息对应的服务器,同时增强了负载均衡集群中网关的容灾能力。

s15、网关lb2将访问请求转发给建立连接的服务器。

在确定出该服务器后,则将该访问请求发送给确定出的服务器。具体地,需要将该访问请求的源ip地址修改为网关lb2的内网ip地址,将目的ip地址修改为确定出的服务器的ip地址,然后再将修改后的访问请求发送给确定出的服务器。网关lb2在确定出该服务器响应所述访问请求后,则确定为客户端与该服务器建立了连接,并将建立的连接的连接信息同步给其他网关。后续当该客户端再发送访问请求时,即可基于建立的连接信息将访问请求发往建立的连接信息包含的服务器ip地址对应的服务器。

优选地,当连接信息包含端口号时,还需要将所述内网ip地址的端口号和服务器的端口号携带在访问请求中发送给服务器。

s16、网关lb2将新建立的连接的连接信息存储到本地并同步给其他各个网关。

基于步骤s14和s15,网关lb2可以将建立的连接信息存储到本地并同步到其他各个网关,即同步给图2中的lb1、lb3~lbn。

s17、网关lb2在接收到所述上联交换机转发的访问请求时,如果该访问请求为已经建立连接的访问请求,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器。

基于步骤s12描述的确定是否为该访问请求建立连接的方法,若确定出已为该客户端建立了访问请求,则将所述访问请求转发给包含客户端ip地址和外网vip的连接信息中包含的服务器的ip地址对应的服务器。一般情况下,如果网关没有发生故障,则当同一客户端再次发送访问请求时,上联交换机会将该访问请求转发至相同的网关,并由该网关基于之前建立的连接信息将访问请求发送至相同的服务器。例如,上联交换机将客户端第一次的访问请求发送至网关lb2处理,lb2利用内网iplip5将访问请求转发至服务器1,则当网关lb1正常时,后续该客户端发送访问请求时,上联交换机还是会将后续的访问请求转发至lb2,同样lb1会利用内网iplip5将后续的访问请求发送至服务器1。

具体地,在步骤s17中将访问请求发送给服务器之前,需要先根据包含客户端ip地址和外网vip的连接信息,确定该连接信息中的内网ip地址,然后将访问请求的源ip地址修改为确定出内网ip地址,将目的ip地址修改为确定出的服务器的ip地址。

当连接信息中包含端口号时,还需要将内网ip的端口号和服务器ip的端口号携带在访问请中发送给服务器。

需要说明的是,步骤s14~s16和步骤s17同一时间只能执行一个,也就是说网关要么执行步骤s14~s16,要么执行步骤s17。为了进行区分,图3中步骤s14~s16以实线表示,步骤s17中用虚线表示。

s18、网关lb2分别监测其他网关是否故障。

本步骤中,负载均衡集群中网关之间定时互发探测报文,基于此来获知是否存在故障网关。具体地,还基于图2进行说明,若lb2监测到超过预设时间没有收到集群中网关lb1的探测报文,则可以确定网关lb1已经崩溃,即网关lb1发生故障。需要说明的是,网关lb1发生故障这一事件同样会被lb3、lb4等其他网关监测到。为了描述方便,以图2所示的系统中lb1网关发生故障为例进行说明。

s19、网关lb2在监测到故障网关lb1时,将故障网关lb1的部分内网ip地址接管为本地内网ip地址。

本步骤中,由于lb1发生故障,为了保证基于lb1处理的访问请求正确到达相应服务器,因lb1建立的连接的连接信息中包含内网ip地址,故本发明提出将lb1的内网ip地址由其他正常网关接管。较佳地,为了实现负载均衡,避免正常网关接管故障网关较多内网ip地址导致正常网关因负载增多导致崩溃的风险增加,本发明基于负载均衡考虑,将故障网关的内网ip地址均衡的分配到其他正常网关中。

具体地,可以按照图6a所示的方法将故障网关的部分内网ip地址接管为本地内网ip地址,可以包括以下步骤:

s31、网关lb2在检测到故障网关时,将所述故障网关的所有内网ip地址进行排序。

本步骤中,还以故障网关为lb1为例进行说明,由于lb1有4个内网ip地址,lip1~lip4,则可以将这4个ip地址按升序进行排序,以lip1<lip2<lip3<lip4为例进行说明。

s32、网关lb2将所述负载均衡集群中除故障网关外的所有网关的管理ip地址进行排序。

负载均衡集群中各个网关均配置有管理ip地址,所述管理ip地址为登录网关所需的ip地址。以负载均衡集群中n=4为例进行说明,则对负载均衡集群中除网关lb1以外的其他三个网关的管理ip地址进行排序,以网关lb1~lb4对应的管理ip地址为分别为mip1~mip4为例进行说明,同样按升序对lb2~lb4的管理ip地址进行排序,以mip2<mip3<mip4为例进行说明。

s33、网关lb2根据排序后的所有内网ip地址和排序后的管理ip地址,按照轮转方式将归属到自身管理ip地址的故障网关的内网ip地址接管为本地内网ip地址。

本步骤中,轮转方式可以理解为:排序后的第一个内网ip分配给排序后的第一个管理ip对应的网关,排序后的第二个内网ip分配给排序后的第二个管理ip对应的网关等等,当参与排序的内网ip的数量大于参与排序的管理ip的数量时,例如参与排序的内网ip数量为m,参与排序的管理ip的数量为n,且m>n,则当将排序后的第n个内网ip分配给排序后的第n个管理ip对应的网关,则在确定接管排序后的第n+1个内网ip的网关时,则将排序后的第n+1个内网ip分配给排序后的第1个管理ip地址,然后将排序后的第n+2个内网ip分配给排序后的第2个管理ip地址,依次类推。

结合步骤s31和s32,在对网关lb1的内网ip地址和除网关lb1以2外的三个网关的管理ip地址进行排序后,在按照本步骤的轮转方式确定接管内网ip地址的网关时,可以确定出lip1和lip4由lb2接管,lip2由lb3接管,lip3由lb4接管,可以参考图6b所示。

需要说明的是,负载均衡集群中除故障网关以外的其他网关均执行步骤s31~s33的流程,这样,一方面可以防止故障网关的所有内网ip均由一个网关接管情况的发生,另一方面,可以有效防止同一内网ip由两个网关接管的情况发生。

需要说明的是,当故障网关未发生故障前接管了其他故障网关的内网ip地址时,则在进行排序时还需要将接管的ip地址参与排序。如故障网关lb1在未发生故障之前接管了网关lb5的内网ip地址lip17,则当网关lb1故障且网关lb5未恢复正常时,参与排序的内网ip除了lip1~lip4之外,还包括llip17。网关未发生故障前接管的内网ip在网关发生故障时,同样需要由负载聚合集群中其他正常网关来接管,同样可以按照上述步骤s31~s33所述的流程实施。

s110、网关lb2根据本地存储的连接信息,在接收到之前由故障网关lb1处理的访问请求时,使用其接管的故障网关lb1的部分内网ip地址转发访问请求。

本步骤中,网关lb2在接收到上联交换机转发的访问请求后,可以根据访问请求中的客户端的ip地址和负载均衡集群的外网vip,以及本地存储的网关之间互相同步的连接信息,若确定出是由故障网关lb1为客户端建立的连接,则网关lb2在发送该访问请求时,将该访问请求的源ip地址修改为确定出的连接信息中的内网ip地址,并将访问请求的目的ip地址修改为确定出的连接信息中的服务器的ip地址,从而保证了将该客户端的访问请求由连接信息中的服务器进行处理。

具体地,可以按照图7a所示的方法转发访问请求,可以包括以下步骤:

s41、网关lb2在接收到之前由故障网关处理的访问请求时,将所述访问请求中的源ip地址修改为故障网关的内网ip地址。

其中所述故障网关的内网ip地址为故障网关在发生故障之前同步到本网关的连接信息中与客户端的ip地址对应的内网ip地址。

具体地,以网关lb2根据客户端的访问请求确定出的连接信息中的内网ip地址为lip2、服务器ip地址为ip2为例进行说明,参考图7b所示,则网关lb2在发送所述访问请求时,由于网关之间互相同步了连接信息,故需要将所述访问请求中的源ip地址修改为lip2。

s42、网关lb2将所述访问请求的目的ip地址修改为故障网关在发生故障之前同步到本网关的连接信息中与客户端的ip地址对应的服务器的ip地址。

本步骤中,在修改源ip地址的同时,还需要将目的ip地址修改为连接信息中的服务器的ip地址,即ip2,然后再将修改后的访问请求发送至ip2对应的服务器2。

s43、网关lb2将修改后的访问请求转发给所述服务器的ip地址对应的服务器。

较佳地,由于当负载均衡集群中存在故障网关时,为了保证之前接入故障网关的客户端发送的访问请求正常被传输到相应服务器,其他网关需要接管故障网关的内网ip地址。为了保证服务器返回的处理结果正常返回至客户端,本发明提供的负载均衡集群中访问请求处理系统还包括下联交换机,参考图8a所示的结构。当任一服务器对访问请求处理完后,会返回处理结果,需要按照步骤s111~s117的流程实施,以下详细介绍之:

s111、网关lb2在接管故障网关lb1的部分内网ip地址后,将接管的部分内网ip地址与自身网关的多媒体访问控制mac地址携带在地址解析协议arp报文中发送给下联交换机。

本步骤中,负载均衡集群中所有未发生故障网关在执行接管操作后,会通过发送地址解析协议(addressresolutionprotocol,arp)报文的方式,通知下联交换机各个内网ip地址对应的网关的mac地址。以网关lb2接管故障网关lb1的内网ip地址为lip1、lip4为例进行说明,网关lb2会将lip1、lip4与网关2的mac地址携带在免费arp报文中发送给下联交换机。

由于网关lb3接管了lip2,同样lb3也会将lip2与lb3的mac地址携带在免费arp报文中发送给下联交换机,同理网关lb4会将lip3与lb4的mac地址携带在免费arp报文中发送给下联交换机。

s112、下联交换机在接收到所述arp报文后,根据所述arp报文中携带的内网ip地址与mac地址,更新存储的内网ip地址与mac地址的对应关系。

本步骤中,为了保证服务器返回的处理结果能够正确返回至客户端,下联交换机会在本地维护一张列表,该列表中存储有内网ip地址与网关的mac地址的对应关系。当下联交换机接收到arp报文后,会从arp报文中提取出内网ip地址与mac地址,然后利用提取到的内网ip地址与mac地址更新本地存储的列表中内网ip地址与网关的mac地址的对应关系。

以网关lb2、lb3和lb4发送的arp报文为例进行说明,下联交换机会利用提取出的lip1、lip4与网关lb2的mac地址、lip2与网关lb3的mac地址、lip3与网关lb4的mac地址更新本地存储的列表中内网ip地址与网关的mac地址的对应关系。

s113、下联交换机接收服务器返回的处理结果。

其中,所述处理结果中的源ip地址为服务器的ip地址,目的ip地址为处理结果对应的访问请求中的源ip地址。若访问请求中的源ip地址为lip2,则处理结果中的目的ip地址即为lip2。

s114、下联交换机根据更新后的内网ip地址与mac地址的对应关系,确定所述处理结果中包含的内网ip地址对应的mac地址。

本步骤中,以内网ip地址为lip2为例进行说明,下联交换机在接收到服务器返回的处理结果后,即可根据更换后的对应关系,确定出接管lip2对应的mac地址,即为网关lb3的mac地址。

s115、下联交换机将所述处理结果返回至确定出的mac地址对应的网关lb3。

基于步骤s114,下联交换机在确定出mac地址后,将处理结果返回至网关lb3。

s116、网关lb3将所述处理结果返回给上联交换机。

需要说明的是,步骤s33中其他网关在接管故障网关的内网ip地址时,可以在自身网关为接管的内网ip地址建立一个虚拟接口。如网关lb3接管了内网ip地址lip2,则会为lip2建立一个虚拟接口。

结合图8b所示,当网关lb3接收到处理结果后,首先根据处理结果中的源ip地址和目的ip地址确定连接信息,即根据服务器2的ip地址ip2和内网ip地址lip2,基于本地存储的连接信息,可以确定出包含ip2和lip2的连接信息中的外网vip和客户端的ip地址,则网关lb3会将处理结果中的源ip地址修改为确定出的外网vip,目的ip地址修改为客户端的ip地址,即ip1。然后将修改后的处理结果发送给上联交换机。这样做的目的是,保证利用客户端的同一连接信息转发客户端的访问请求和处理结果。

s117、上联交换机将所述处理结果发送给客户端。

上联交换机在接收到处理结果后,根据处理结果中的目的ip地址返回给ip1对应的客户端。

需要说明的是,若负载均衡集群中不存在故障网关,则返回处理结果时内网ip地址对应的mac地址应该为初始化分配的该内网ip地址的网关的mac地址,即网关lb1未发生故障,则基于网关lb1的lip2建立的连接信息,在接收到处理结果时,确定出的网关的mac地址依然为lb1的mac地址,则下联交换机将处理结果返回至网关lb1,由lb1将处理结果经上联交换机发送至客户端。

需要说明的是,负载均衡集群中每个网关在检测到故障网关恢复正常时,则将其接管的内网ip地址从本地卸载,同时还需要删除为接管的内网ip地址建立的虚拟接口。

与主备模式相比,从受影响的客户端的请求数由100%降低到崩溃的网关在负载均衡集群中所有网关的占比,例如负载均衡集群中有4台网关,崩溃1台,则占比数为25%,也就是说一台网关崩溃时,基于该负载均衡集群,受影响的客户端请求数由现有技术中的100%降低到25%,由此可以表明本发明提供的负载均衡集群中访问请求处理方法,大大提升了负载均衡集群中网关的容灾能力,使得大规模高性能负载均衡集群的部署成为现实,尤其是fullnat模式的负载均衡集群。

较佳地,当负载均衡集群中新增网关时,只需将新增网关的mac地址告知上联交换机,上联交换机在接收到新增网关的mac地址后,即可在接收到客户端的访问请求时,将访问请求分发至新增网关,可扩展性较强,提升了负载均衡集群的平行扩展能力。

通过采用本发明提供的负载均衡集群中访问请求处理方法,网关在为客户端建立连接后,一方面将连接信息同步到负载均衡集群中的其他网关上,这样可以保证某一网关故障时,基于同步的连接信息,其他网关能够将之前由故障网关处理的客户端的访问请求准确转发至服务器,同时还提升了负载均衡集群的容灾处理能力,与主备模式相比,本发明提供的方法,因网关崩溃而受影响的客户端请求数大大降低。

基于同一发明构思,本发明实施例中还提供了一种网关侧的负载均衡集群中访问请求处理装置,由于上述装置解决问题的原理与网关侧的负载均衡集群中访问请求处理方法相似,因此上述装置的实施可以参见方法的实施,重复之处不再赘述。

如图9所示,为本发明实施例提供的网关侧的负载均衡集群中访问请求处理装置的结构示意图,所述装置可以设置于负载均衡集群包含的所有网关中,所述负载均衡集群包含至少两个网关,每一个网关分别接收其他网关同步的连接信息并存储到本地;以及所述装置,包括:

接收单元51,用于接收上联交换机转发的访问请求。

第一处理单元52,用于如果确定出该访问请求为未建立连接的访问请求,则为所述客户端和其中一个服务器建立连接并将访问请求转发给建立连接的服务器,以及将新建立的连接的连接信息存储到本地并同步给其他各个网关。

第二处理单元53,用于如果确定出该访问请求为已经建立连接的访问请求,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器。

较佳地,所述装置,还包括:

接管单元,用于分别检测其他网关是否故障,并在检测到故障网关时,将故障网关的部分内网ip地址接管为本地内网ip地址;

转发单元,用于根据本地存储的连接信息,在接收到之前由故障网关处理的访问请求时,使用其接管的故障网关的部分内网ip地址转发访问请求,所述网关的内网ip地址包括多个,并且初始化时进行配置,所述内网ip地址用于在客户端和服务器之间转发访问请求。

优选地,所述转发单元,具体用于在接收到之前由故障网关处理的访问请求时,将所述访问请求中的源ip地址修改为故障网关的内网ip地址,其中所述故障网关的内网ip地址为故障网关在发生故障之前同步到本网关的连接信息中与客户端的ip地址对应的内网ip地址;以及将所述访问请求的目的ip地址修改为故障网关在发生故障之前同步到本网关的连接信息中与客户端的ip地址对应的服务器的ip地址;并将修改后的访问请求转发给所述服务器的ip地址对应的服务器。

可选地,所述装置,还包括:

发送单元,用于在所述接管单元将故障网关的部分内网ip地址接管为本地内网ip地址之后,将接管的部分内网ip地址与自身网关的多媒体访问控制mac地址携带在地址解析协议arp报文中发送给下联交换机,以使所述下联交换机在接收到所述arp报文后,根据所述arp报文中携带的内网ip地址与mac地址,更新存储的内网ip地址与mac地址的对应关系;以及在接收到服务器返回的处理结果后,根据更新后的内网ip地址与mac地址的对应关系,确定所述处理结果中包含的内网ip地址对应的mac地址,并将所述处理结果返回至确定出的mac地址对应的网关,由确定出的网关将所述处理结果返回给客户端,其中,确定出的网关为接管所述故障网关的内网ip地址的网关或内网ip地址归属的网关。

优选地,所述接管单元,具体用于在检测到故障网关时,将所述故障网关的所有内网ip地址和所述负载均衡集群中除故障网关外的所有网关的管理ip地址分别进行排序,所述管理ip地址为登录网关所需的ip地址;并根据排序后的所有内网ip地址和排序后的管理ip地址,按照轮转方式将归属到自身管理ip地址的故障网关的内网ip地址接管为本地内网ip地址。

为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本发明时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。例如,本发明提供的上述负载均衡集群中访问请求处理装置可以设置在负载均衡集群中的各个网关中,由各个网关来实现访问请求的处理和转发。

基于同一发明构思,本发明实施例中还提供了一种上联交换机侧的负载均衡集群中访问请求处理装置,由于上述装置解决问题的原理与上联交换机侧的负载均衡集群中访问请求处理方法相似,因此上述装置的实施可以参见方法的实施,重复之处不再赘述。

如图10所示,为本发明实施例提供的上联交换机侧的负载均衡集群中访问请求处理装置的结构示意图,包括:

检测单元61,用于检测负载均衡集群中各个网关是否故障;

转发单元62,用于将客户端发送的访问请求转发给未发生故障的网关,以使所述网关在接收到所述上联交换机转发的访问请求时,如果该访问请求为未建立连接的访问请求,则为所述客户端和其中一个服务器建立连接并将访问请求转发给建立连接的服务器,以及将新建立的连接的连接信息存储到本地并同步给其他各个网关;如果该访问请求为已经建立连接的访问请求,则根据本地存储的连接信息将访问请求转发给处理该访问请求的服务器。

优选地,所述转发单元62,具体用于对所述访问请求中的源ip地址和目的ip地址进行哈希计算得到哈希值;并根据对应关系列表中存储的哈希值与网关的mac地址的对应关系,确定计算得到的哈希值对应的mac地址;并将所述访问请求发送给确定出的mac地址对应的网关。

为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本发明时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。例如,本发明提供的上述负载均衡集群中访问请求处理装置可以设置在上联交换机中,由所述上联交换机来实现访问请求的接收和转发。

在介绍了本发明示例性实施方式的负载均衡集群中访问请求处理方法、系统和可读介质之后,接下来,介绍根据本发明的另一示例性实施方式的计算装置。

所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。

在一些可能的实施方式中,根据本发明的计算装置可以至少包括至少一个处理单元、以及至少一个存储单元。其中,所述存储单元存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述处理单元执行本说明书上述描述的根据本发明各种示例性实施方式的负载均衡集群中访问请求处理方法中的步骤。例如,所述处理单元可以执行如图3所示的步骤11~s117中上联交换机侧的流程或者网关侧的流程。

下面参照图11来描述根据本发明的这种实施方式的计算装置71。图11显示的计算装置71仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图11所示,计算装置71以通用计算设备的形式表现。计算装置71的组件可以包括但不限于:上述至少一个处理单元711、上述至少一个存储单元712、连接不同系统组件(包括存储单元712和处理单元711)的总线713。

总线713表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。

存储单元712可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)7121和/或高速缓存存储器7122,还可以进一步包括只读存储器(rom)7123。

存储单元712还可以包括具有一组(至少一个)程序模块7124的程序/实用工具7125,这样的程序模块7124包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

计算装置71也可以与一个或多个外部设备714(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与计算装置71交互的设备通信,和/或与使得该计算装置71能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口715进行。并且,计算装置71还可以通过网络适配器716与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器716通过总线713与用于计算装置71的其它模块通信。应当理解,尽管图中未示出,可以结合计算装置71使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

在一些可能的实施方式中,本发明提供的负载均衡集群中访问请求处理方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算机设备上运行时,所述程序代码用于使所述计算机设备执行本说明书上述描述的根据本发明各种示例性实施方式的负载均衡集群中访问请求处理方法中的步骤,例如,所述计算机设备可以执行如图3所示的步骤11~s117中上联交换机侧的流程或者网关侧的流程。

所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。

本发明的实施方式的用于负载均衡集群中访问请求处理方法的程序产品可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在计算设备上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。

此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1