一种服务器双机热切换处理系统的制作方法

文档序号:14863779发布日期:2018-07-04 09:33阅读:137来源:国知局
一种服务器双机热切换处理系统的制作方法

本发明涉及通信技术领域,特别是涉及一种服务器双机热切换处理系统。



背景技术:

在当前的组网应用中,用户对网络可靠性的要求越来越高,对于一些重要的业务入口或接入点(例如,企业的internet接入点、银行的数据库服务器等),需要保证网络的不间断传输,而当设备(例如,企业的internet接入点设备)出现故障时,将会导致内外网之间的网络业务全部中断。即在重要的业务入口或接入点上若只使用一台设备时,无论该设备的可靠性多高,系统都需要承受因单点故障而导致网络中断的风险。

为了解决上述使用一台设备容易导致网络中断的问题,对于重要的业务入口设备或接入点设备,通过使用双机热备技术来提高网络的可靠性,避免单点故障而导致网络中断的风险。在实际应用中,有很多socket接口之上的ip应用服务器(即上述重要的接入点),例如行业视频监控中的vm(videomanagement,视频管理)服务器,由于该vm服务器自身的重要作用,对该vm服务器使用双机热备技术就显得尤为重要。在运行中,一台vm服务器作为主机处在工作状态,而另一台vm服务器作为备份机处在待命状态。当主机发生故障时,备份机能够在较短的时间内接替主机进行工作,即备份机将处在工作状态。

基于上面的分析,目前在使用双机热备技术对重要设备(例如,vm服务器)进行备份时,存在如下缺点:

在使用双机热备技术时,为了保证主机和备份机之间相关状态数据的同步,通常采用通信通道进行状态数据的备份,即主机通过通信通道实时的将状态数据备份到备份机,当主机出现故障时,由备份机对该状态数据进行处理。但是在主机通过通信通道实时的将状态数据备份到备份机时,必然存在一定的延时。



技术实现要素:

本发明提供一种服务器双机热切换处理系统,以在双机热备技术中,对数据进行实时处理,不会存在延时。

为了达到上述目的,本发明提出了一种双机热备技术中实时处理数据的方法,应用于双机热备网络中,该双机热备网络至少包括交换设备、主设备和备份设备,所述主设备和所述备份设备为双机设备,其中所述交换设备根据预先静态配置的arp表项将接收到的请求报文发送给所述双机设备,所述arp表项为根据预先静态配置在所述主设备和所述备份设备上相同的单播ip地址和相同的组播mac地址所静态配置的;所述方法包括以下步骤:

所述双机设备根据该请求报文产生对应的响应报文,并判断自身的工作状态;

当工作状态为主用时,所述双机设备为主设备,所述主设备将该响应报文发送所述交换设备,由交换设备进行转发;

当工作状态为备用时,所述双机设备为备份设备,所述备份设备丢弃该响应报文。

优选的,所述判断自身的工作状态具体包括:

所述双机设备根据预先存储的自身工作状态的标识判断自身的工作状态,所述标识包括主用标识和备用标识;所述主用标识表示工作状态为主用,所述备用标识表示工作状态为备用,所述主设备出现故障时,所述备份设备将自身工作状态的标识更改为主用标识。

优选的,所述方法应用的双机热备网络中还包括客户端,所述双机热备网络应用tcp协议时,所述方法还包括:

在建立所述客户端与所述双机设备的tcp连接时,所述备份设备根据所述主设备向所述客户端返回的响应报文中携带的seq值更改自身存储的seq值。

本发明提出了一种双机热备技术中实时处理数据的系统,应用于双机热备网络中,该双机热备网络至少包括交换设备、主设备和备份设备,所述主设备和所述备份设备为双机设备,其中所述交换设备根据预先静态配置的arp表项将接收到的请求报文发送给所述双机设备,所述arp表项为根据预先静态配置在所述主设备和所述备份设备上相同的单播ip地址和相同的组播mac地址所静态配置的;

所述双机设备,用于根据该请求报文产生对应的响应报文,并判断自身的工作状态;当工作状态为主用时,所述双机设备为主设备,由该主设备将该响应报文发送所述交换设备;当工作状态为备用时,所述双机设备为备份设备,由该备份设备丢弃该响应报文;

所述交换设备,用于接收来自所述主设备的响应报文,并转发该响应报文。

本发明提出了一种双机设备,应用于双机热备网络中,该双机热备网络至少包括交换设备、主设备和备份设备,所述主设备和所述备份设备为双机设备,其中所述交换设备根据预先静态配置的arp表项将接收到的请求报文发送给所述双机设备,所述arp表项为根据预先静态配置在所述主设备和所述备份设备上相同的单播ip地址和相同的组播mac地址所静态配置的;所述双机设备包括:

接收模块,用于接收来自所述交换设备的请求报文;

判断模块,用于根据该接收模块接收的请求报文产生对应的响应报文,并判断自身的工作状态;

处理模块,用于当所述判断模块判断出工作状态为主用时,将该响应报文发送所述交换设备,由交换设备进行转发;

当所述判断模块判断出工作状态为备用时,丢弃该响应报文。

优选的,所述判断模块具体用于:

根据预先存储的自身工作状态的标识判断自身的工作状态,所述标识包括主用标识和备用标识;所述主用标识表示工作状态为主用,所述备用标识表示工作状态为备用,当所述主设备出现故障时,将所述备份设备工作状态的标识更改为主用标识。

优选的,所述设备应用的双机热备网络中还包括客户端,所述双机热备网络应用tcp协议时,所述处理模块还用于:

在建立所述客户端与所述双机设备的tcp连接时,根据所述主设备向所述客户端返回的响应报文中携带的seq值更改所述备份设备所存储的seq值。

与现有技术相比,本发明具有以下优点:通过在主设备和备份设备上配置相同的单播ip地址和组播mac地址,使所有来自客户端的请求报文均可以发送到主设备和备份设备上,主设备向客户端返回响应报文,而备份设备直接丢弃响应报文,从而保证了响应报文可以实时的发送给客户端,即双机设备对数据进行实时处理,不会存在延时的情况。

附图说明

图1本发明提出的一种双机热备技术中实时处理数据的方法流程图;

图2本发明应用场景下提出的组网模式图;

图3本发明应用场景下提出的一种双机热备技术中实时处理数据的方法流程图;

图4为本发明应用场景下tcp建立连接过程示意图;

图5为本发明提出的一种双机设备的结构图。

具体实施方式

本发明的核心思想是通过静态配置ip的方法在主设备和备份设备上配置相同的单播ip地址,并对应在主设备和备份设备上静态配置相同的组播mac地址,根据该单播ip地址和组播mac地址在交换设备上静态配置arp表项,使得来自客户端的所有请求报文均可以根据该arp表项发送到主设备和备份设备上,主设备和备份设备均根据该请求报文产生对应的响应报文,在发送该响应报文之前,判断自身的工作状态,当获知自身的工作状态为主设备时,由该主设备向客户端返回响应报文,当获知自身的工作状态为备份设备时,由该备份设备直接丢弃响应报文,从而保证了响应报文可以实时的发送给客户端,不会存在延时的情况。

进一步的,若主设备发生故障时,备份设备将及时的更改自身的工作状态,即将自身的工作状态更改为主设备,此时,在需要向客户端返回响应报文时,该备份设备将获知自身的工作状态为主设备,从而将该响应报文发送给客户端,进一步的保证了响应报文的实时发送。

本发明提出的一种双机热备技术中实时处理数据的方法,应用于双机热备网络中,该双机热备网络至少包括交换设备、主设备和备份设备,所述主设备和所述备份设备为双机设备,其中所述交换设备根据预先静态配置的arp表项将接收到的请求报文发送给所述双机设备,所述arp表项为根据预先静态配置在所述主设备和所述备份设备上相同的单播ip地址和相同的组播mac地址所静态配置的;如图1所示,所述方法包括以下步骤:

步骤s101,所述双机设备根据该请求报文产生对应的响应报文,并判断自身的工作状态。

步骤s102,当工作状态为主用时,所述双机设备为主设备,所述主设备将该响应报文发送所述交换设备,由交换设备进行转发。

步骤s103,当工作状态为备用时,所述双机设备为备份设备,所述备份设备丢弃该响应报文。

本发明一种应用场景下提出的双机热备技术中实时处理数据的方法,该方法应用在双机热备技术中,如图2所示的组网模式图,应用服务器是网络中的重要设备,即在组网中需要有两台应用服务器,应用服务器1为主机处在工作状态,应用服务器2为备份机处在待命状态,当然,该选择主机和备份机的方式为根据实际需要任意选取的,应用服务器1和应用服务器2通过交换设备连接到internet上,即客户端需要通过internet访问该,应用服务器1和应用服务器2,其中,该交换设备包括但不限于3层设备、接入路由器、3层交换机等。需要说明的是,在双机热备技术中,根据组网的情况有主备模式和负载分担模式两种工作模式,而本发明是应用在主备模式下的双机热备技术,如图3所示,该双机热备技术中实时处理数据的方法包括以下步骤:

步骤s301,在初始配置的过程中,通过静态配置的方法为主机和备份机配置相同的单播ip地址,并静态配置与该单播ip地址对应的相同组播mac(mediaaccesscontrol,媒体访问控制)地址。其中,上述配置的相同单播ip地址和相同组播mac地址是静态配置在主机的业务口和备份机的业务口的。

需要说明的是,由于是通过静态配置的方式在主机和备份机上配置相同的单播ip地址,即不会出现冲突的情况;在实际应用中,mac地址是不会相同的,而本发明中通过静态配置的方式配置相同的mac地址,由于arp(addressresolutionprotocol,地址解析协议)在传输数据时需要将ip地址映射为mac地址,若静态配置相同的单播mac地址,则arp在传输数据时只能通过一个端口传输数据,即只能将数据传输给一台设备,无法将数据传输到两台具有相同单播mac地址的设备上;而本发明中通过静态配置相同的组播mac地址,使得可以从两个(或多个)端口传输数据,从而将数据传输给两台设备,即arp在传输数据时可以将数据传输到两台具有相同组播mac地址的设备上。

本发明中,上述通过静态配置的方法配置相同的单播ip地址和相同的组播mac地址的方式为根据实际需要任意配置的。例如,将主机和备份机均配置为该主机的ip地址,将主机和备份机均配置为该主机的mac地址,并将该mac地址修改为组播mac地址;对于其他的配置方式,在此不再赘述。

步骤s302,通过静态配置的方式在交换设备上配置对应于上述单播ip地址和组播mac地址的arp表项,即在arp表项中存储步骤s301中静态配置的单播ip地址和静态配置的组播mac地址之间的对应关系。

步骤s303,在主机和备份机中存储自身工作状态的标识。本发明中,由于应用服务器1为主机处在工作状态,则该应用服务器1存储自身为主用的标识,应用服务器2为备份机处在待命状态,则该应用服务器2存储自身为备份的标识。其中,该主用的标识和备份的标识为根据实际需要任意选择的,例如,应用服务器1通过将自身标识为0表示自身为主机,应用服务器1通过将自身标识为1表示自身为备份机。对于其他的标识方式,在此不再赘述。

需要说明的是,当主机出现故障时,则备份机将替代该主机处在工作状态,此时,该备份机需要修改自身的工作状态的标识,即将自身的工作状态的标识修改为主用的标识,例如,将自身的标识修改为0表示为主用。进一步的,当主机恢复并继续担当主机处在工作状态时,则需要再次修改备份机的标识信息,在此不再赘述。

其中,上述步骤s301至步骤s303为初始的配置过程,且该步骤s303与上述的步骤s301和步骤s302没有必然的先后顺序关系。

步骤s304,初始配置完成后,交换设备将通过internet接收到来自客户端的请求报文。其中,该请求报文为该客户端需要访问应用服务器的请求报文。

步骤s305,交换设备通过查找arp表项,将该请求报文发送给应用服务器1和应用服务器2。

本发明中,该交换设备通过该请求报文中携带的ip地址查找对应的arp表项,查找过程中,该ip地址对应了应用服务器1的ip地址和应用服务器2的ip地址(二者相同),arp将该ip地址映射成mac地址,由于被映射成了相同的组播mac地址,则交换设备根据该arp表项需要将该请求报文发送给应用服务器1和应用服务器2。

步骤s306,主机和备份机均将接收到该请求报文,并根据该请求报文产生对应的响应报文。

步骤s307,主机和备份机分别判断自身的工作状态。其中,主机和备份机通过获取自身的工作状态的标识来判断自身的工作状态,当该工作状态的标识为主用的标识时,则工作状态为主机,转到步骤s308;当该工作状态的标识为备份的标识时,则工作状态为备份机,转到步骤s309。当然,本发明中还可以通过其他的方式来判断自身的工作状态。例如,通过处理业务的情况判断自身的工作状态,在此不再赘述。

步骤s308,主机将响应报文发送给交换设备,并由该交换设备通过internet将该响应报文发送给客户端。

步骤s309,备份机丢弃响应报文。

需要说明的是,本发明中,主机和备份机还可以实时的通过工作状态的标识获取自身的工作状态,在接收到来自交换设备的请求报文时,对于获取到主用标识的主机来说,可以产生对应响应报文,并将该响应报文发送给交换设备;而对于获取到备份标识的备份机来说,可以不根据该请求报文生成对应的响应报文,并直接丢弃该请求报文;当然,根据实际的需要,也可以根据该请求报文生成对应的响应报文,只是不发送该响应报文。

可见,通过以上的操作,对于来自客户端的所有请求报文,主机和备份机均可以生成相同的响应报文,若主机没有发生故障,则有该主机将该响应报文发送给该客户端,而当该主机发生故障时,则可以由备份机将该响应报文直接发送给该客户端,从而保证了响应报文发送的实时性,不会出现延时的情况。

其中,本发明方法可以根据实际需要对各个步骤顺序进行调整。

需要说明的是,通过以上步骤s301-步骤s309的操作过程,即可以实现本发明双机热备技术中实时处理数据的方法,例如,对于udp(userdatagramprotocol,用户数据报协议)下的数据传输过程来说,通过上述步骤s301-步骤s309即可以实现双机热备下实时的传输数据。但是对于tcp协议来说,要想实现本发明,在实现上还需要进行一些特殊的处理,以下对该特殊的处理过程进行详细描述。

在实际使用tcp协议进行数据传输的过程中,需要先完成tcp建立连接的过程,即进行tcp的三次握手过程,其中,tcp建立连接的过程是基于客户端与应用服务器1、应用服务器2之间的五元组进行的,该五元组包括源ip地址、源tcp端口、目标ip地址、目标tcp端口和协议号(本发明中为tcp);可以看出,该客户端与应用服务器1的五元组,以及客户端与用服务器2的五元组是完全一致的,即来自客户端的数据均需要发送到应用服务器1和应用服务器2中。

该tcp建立连接的过程如图4所示,具体包括以下步骤:

步骤s401,客户端向应用服务器1和应用服务器2发送一个含有seq(sequencenumbers,序号标识)标志位的数据段,向应用服务器1和应用服务器2请求建立连接。

步骤s402,应用服务器1和应用服务器2向客户端返回确认应答报文,该确认应答报文中携带了根据自身的需要设置的seq值,例如,应用服务器1将seq值设置为300,应用服务器2将seq值设置为500,在实际的过程中,应用服务器1将该确认应答报文发送给了客户端,而应用服务器2获知自身是备份机后,将丢弃该确认应答报文;但是该应用服务器2已经存储了seq值为500的相应信息。

步骤s403,客户端向应用服务器1和应用服务器2发送确认应答,即客户端与应用服务器1和应用服务器2的tcp建立过程完成,可以进行数据的交互;其中,该确认应答中携带了该seq值为300的信息。

本发明中,应用服务器1在接收到该确认应答后不需要进行相关处理,但是对于该应用服务器2来说,当应用服务器2获知自身是备份机时,根据该确认应答中的seq值,调整自身数据结构中的seq值。即需要将自身存储的seq值的信息修改为应用服务器1向客户端返回确认应答报文时携带的seq值的信息;例如,将自身存储的seq值为500的相应信息修改为seq值为300的信息。

本发明还提出的一种双机热备技术中实时处理数据的系统,应用于双机热备网络中,该双机热备网络至少包括交换设备、主设备和备份设备,所述主设备和所述备份设备为双机设备,其中所述交换设备根据预先静态配置的arp表项将接收到的请求报文发送给所述双机设备,所述arp表项为根据预先静态配置在所述主设备和所述备份设备上相同的单播ip地址和相同的组播mac地址所静态配置的;

所述双机设备,用于根据该请求报文产生对应的响应报文,并判断自身的工作状态;当工作状态为主用时,所述双机设备为主设备,由该主设备将该响应报文发送所述交换设备;当工作状态为备用时,所述双机设备为备份设备,由该备份设备丢弃该响应报文;

所述交换设备,用于接收来自所述主设备的响应报文,并转发该响应报文。

本发明还提出的一种双机设备,应用于双机热备网络中,该双机热备网络至少包括交换设备、主设备和备份设备,所述主设备和所述备份设备为双机设备,其中所述交换设备根据预先静态配置的arp表项将接收到的请求报文发送给所述双机设备,所述arp表项为根据预先静态配置在所述主设备和所述备份设备上相同的单播ip地址和相同的组播mac地址所静态配置的;如图5所示,所述双机设备包括:

接收模块51,用于接收来自所述交换设备的请求报文;

判断模块52,用于根据该接收模块51接收的请求报文产生对应的响应报文,并判断自身的工作状态;

其中,所述判断模块52具体用于根据预先存储的自身工作状态的标识判断自身的工作状态,所述标识包括主用标识和备用标识;所述主用标识表示工作状态为主用,所述备用标识表示工作状态为备用,当所述主设备出现故障时,将所述备份设备工作状态的标识更改为主用标识。

处理模块53,用于当所述判断模块52判断出工作状态为主用时,将该响应报文发送所述交换设备,由交换设备进行转发;

当所述判断模块52判断出工作状态为备用时,丢弃该响应报文。

进一步的,所述设备应用的双机热备网络中还包括客户端,所述双机热备网络应用tcp协议时,所述处理模块53还用于在建立所述客户端与所述双机设备的tcp连接时,根据所述主设备向所述客户端返回的响应报文中携带的seq值更改所述备份设备所存储的seq值。

其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以可借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明所述的方法。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

上述本发明序号仅仅为了描述,不代表实施例的优劣。

以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

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