CN102118309A - 一种双机热备份方法及系统 - Google Patents
一种双机热备份方法及系统 Download PDFInfo
- Publication number
- CN102118309A CN102118309A CN201010620086XA CN201010620086A CN102118309A CN 102118309 A CN102118309 A CN 102118309A CN 201010620086X A CN201010620086X A CN 201010620086XA CN 201010620086 A CN201010620086 A CN 201010620086A CN 102118309 A CN102118309 A CN 102118309A
- Authority
- CN
- China
- Prior art keywords
- packet
- main computer
- buffer memory
- machine
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种双机热备份方法和系统。所述方法,采用时效输出缓存与集线器配合,在正常情况下,主用机接收集线器发送的数据包、并进行处理以及回注过程;备用机处于standby状态,缓存集线器首次广播的数据包;同时当收到主用机回注的数据包时,缓存命中成功,缓存删除;在主用机工作正常但数据包回注异常情况下,主用机流量回注失败,备用机的缓存仅仅缓存了集线器首次广播的数据包,时效输出缓存通过线程轮询的策略回注此数据包,保证网络应用处理丢包率为零;在主用机工作异常情况下,备用机实时检测到主用机失败,备用机完成切换过程,备用机接替主用机继续工作。
Description
技术领域
本发明涉及网络应用技术领域,特别是涉及一种基于时效输出缓存的双机热备份方法和系统。
背景技术
随着整个社会的信息化程度不断提高,社会生活逐渐与计算机系统密不可分。人们越来越关心计算机系统以及相关应用的可用性。所谓可用性,一般定义为计算机系统正常工作时间与计算机系统总运行时间之比。对于某些执行关键使命的计算机系统,要求系统能够长时间稳定运行,即具备365×24不停顿运行的能力。对于这类系统,暂时的停机都会导致数据的丢失和灾难性的后果。因此采用主备用系统通过冗余的部件和专门的软件,能够在单一系统出现单点故障时降级运行,大大提高了系统的可用性。
目前组建主备用系统有多种技术方案。从备份的规模来讲有单机备份、双机备份和异地双机备份。从后备系统的准备程度来讲,有冷备份、温备份和热备份。从系统的工作方式来讲,主要有主从方式以及双机双工方式。其中,目前应用最广的是双机热备份系统。
双机热备份技术,概括地说,就是在系统运行过程中使用两台服务器,装载完全相同的系统和数据,通过即时备份数据的方式,实现系统的高可用性。其基本原理是这两台服务器,一台处于active状态,称为主用机,一台处于standby状态,称为备用机。在正常情况下,由处于active状态的主用机提供服务。备用机不断检测主用机状态,备用机检测到主用机出现物理异常或接收到主用机的切换命令时,进行主备切换。而整个过程无需人工干预,在短时间内自动完成服务接管。对于双机热备份技术而言,保证运行时数据的同步是至关重要的。
目前,双机数据同步的主要解决方案包括以下几种:基于共享磁盘或磁盘阵列的数据同步;基于第三方备份软件的数据同步;基于网络通信的数据同步。
采用基于共享磁盘或磁盘阵列的数据同步方案的双机热备份技术中,主用机和备用机使用同一个存储设备存储数据。这个共享存储设备可以是RAID(磁盘阵列),也可以是NAS(网络附属存储器)。在正常情况下主用机将数据库放到共享存储器上,当主服务发生故障时,备用机访问同样的设备,读写相同的数据。这种方式不存在数据滞后的问题,适合数据量大的场合,且通常会在共享存储器上利用数据压缩卡来节省存储空间。但是,其存在以下缺陷,第一,工作存储器方案配置复杂,需要外部存储器的支持;第二,共享存储器方案存在单点故障问题,即一旦存储器出现故障,系统将无法继续提供服务。
采用基于第三方备份软件的数据同步方案的双机热备份技术中,主用机和备用机的数据都放入第三方备份软件中进行保存,使用备份软件自身提供的备份功能,可以保证主备系统中的数据一致性。其优点是处理逻辑简单。但是,存在以下缺点,第一,使用第三方备份软件,成本高昂,而且操作系统兼容性差;第二,处理效率低,应用复杂。
采用基于网络通信的数据同步方案的热备份技术中,正常情况下,主用机对外提供服务,备用机上的服务进程没有启动,不对外提供服务。两台机器中间有一条单独的网络电缆,主用机上的数据同步软件不时将主用机的配置数据通过该网络电缆发送给备用机,使得两者的配置达到一致。一旦主用机发生故障,它将放弃其网络地址,而备用机会启用网口,启动服务进程,利用相同的配置继续向外提供服务。这种方案的缺点是带来大量无用的传输,不仅会加重CPU和网络的负荷,而且长时间不断地读写数据,会缩短硬盘的寿命;另外,单纯依赖软件实现的数据同步处理能力不高。
发明内容
本发明的目的在于提供一种双机热备份方法和系统。其针对现有双机热备份技术的不足,提出一种基于时效输出缓存的双机热备份技术,具备网络适应性和扩展性,在保证网络应用高处理效率和零丢包率的同时,避免了现有技术方案带来的缺陷和不足。
为实现本发明的目的而提供的一种双机热备份方法,采用时效输出缓存与集线器配合,在正常情况下,主用机接收集线器发送的数据包、并进行处理以及回注过程;备用机处于standby状态,缓存集线器首次广播的数据包;同时当收到主用机回注的数据包时,缓存命中成功,缓存删除;
在主用机工作正常但数据包回注异常情况下,主用机流量回注失败,备用机的缓存仅仅缓存了集线器首次广播的数据包,时效输出缓存通过线程轮询的策略回注此数据包,保证网络应用处理丢包率为零;
在主用机工作异常情况下,备用机实时检测到主用机失败,备用机完成切换过程,备用机接替主用机继续工作。
所述方法,包括下列步骤:
步骤100.所述集线器从数据源接收一个网络数据包,将此时的数据包的状态标记为PKT_ORIGIN;
步骤200,集线器判断所述数据包是否是以太网类型,若是,则广播所述数据包;否则,丢弃所述数据包;
步骤300.主用机和备用机的管理调度模块分别接收所述数据包,并将所述数据包的状态标记为PKT_BCAST_F;所述主用机执行步骤400,所述备用机执行步骤600;
步骤400.所述主用机的管理调度模块对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F,则执行步骤500;否则,丢弃所述数据包;
步骤500.用户程序执行相关业务的处理,所述管理调度模块判断是否回注所述数据包,若是,所述数据包被回注到集线器,集线器进行第二次数据包广播,将数据包状态被标记为PKT_BCAST_S,返回步骤300;否则,结束备份;
步骤600.所述备用机的管理调度模块对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F或PKT_BCAST_S,则执行步骤700;否则,丢弃所述数据包;
步骤700.所述备用机的时效输出缓存模块提取所述数据包的信息,判断所述数据包是否命中缓存,若是,则删除缓存数据包;否则,在缓存中添加所述数据包,执行步骤800;
步骤800.所述备用机进行缓存时效性的验证;判断是否回注所述数据包,若是,则所述数据包被回注到集线器,返回步骤300;否则,继续进行所述备用机进行缓存时效性的验证。
所述时效输出缓存模块的数据结构采用哈希表结合双向时间链表的方式实现,当采用固定内存管理策略时,将所述哈希表中的哈希结点以及双向时间链表结点放置在固定内存管理的LRU双向链表中。
当采用可扩展内容管理策略时,时效缓存模块实时统计已分配缓存的利用率,当缓存利用率超过65%时,再次分配缓存。
所述哈希表的关键码采用了以下七元组的形式,{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移},其中,IPID字段为IP数据报文的唯一标志;IP分片位移字段,用于当数据包是IP分片数据包时,区分某个特定的数据包在分片序列中的位置。
所述步骤700,包括下列步骤:
步骤710.所述时效输出缓存模块提取所述数据包的七元组信息{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移};
步骤720.根据所述七元组信息查找所述时效输出缓存模块中的哈希表,判断所述数据包是否命中,若是,则执行步骤730;否则,执行步骤740;
步骤730.删除所述哈希表的相应表项;
步骤740.在所述哈希表中添加所述数据包的表项。
步骤800中,所述缓存时效性验证,是采用线程定期轮询的方式进行,预定义缓存失效时间T,假设数据包初次缓存添加时间为T1,线程轮询到此数据包的时间点为T2。如果T2-T1>T,则认定缓存时效性匹配失败,应该回注此数据包;否则认定数据包在缓存中仍然有效,不进行回注。
所述时效输出缓存模块的数据结构,采用可扩展大小的缓存,时效缓存模块实时统计已分配缓存的利用率,当缓存利用率超过65%时,再次分配缓存。
所述双机热备份方法中,还采用了心跳机制来进行主用机的存活性验证,主用机上的心跳程序周期性地发送状态消息,以表示本机的当前状态;备用机上的心跳程序会实时地监听主用机发送的状态消息;当主用机出现故障时,备用机在设定的时间间隔内没有收到主用机的状态消息,就认为主用机已经失效。
所述心跳程序实现的是接收者发起的方式,并且通过在计时器时间内限制接收者请求重传消息包的次数,来限制网络通信流量。
所述心跳程序采用应急呼唤信号验证的方式,当第一次超时没有收到心跳信号时,即向主用机发出一个紧急的呼唤信息,主用机应该优先响应此信息回送一个心跳,如果主用机第二个时间间隔内还没有收到心跳,才进行服务和数据接管。
为实现本发明的目的,还提供一种双机热备份系统,包括:主用机、备用机、集线器,其中:
所述集线器从数据源接收一个网络数据包,将此时的数据包的状态标记为PKT_ORIGIN;判断所述数据包是否是以太网类型,若是,则广播所述数据包;否则,丢弃所述数据包;
在正常情况下,主用机接收集线器发送的数据包、并进行处理以及回注过程;备用机处于standby状态,缓存集线器首次广播的数据包;同时当收到主用机回注的数据包时,缓存命中成功,缓存删除;
在主用机工作正常但数据包回注异常情况下,主用机流量回注失败,备用机的缓存仅仅缓存了集线器首次广播的数据包,时效输出缓存通过线程轮询的策略回注此数据包,保证网络应用处理丢包率为零;
在主用机工作异常情况下,备用机实时检测到主用机失败,备用机完成切换过程,备用机接替主用机继续工作。
所述主用机和备用机,都包括:用户程序模块、管理调度模块、时效输出缓存模块,其中:
所述用户程序模块,用于从所述集线器接收网络数据包,执行相关业务的处理;
所述管理调度模块,用于接收所述数据包,完成用户程序接入并进行参数管理以及相关策略性调度;
主用机的所述管理调度模块,对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F,则所述管理调度模块判断是否回注所述数据包,若是,所述数据包被回注到集线器,集线器进行第二次数据包广播,将数据包状态被标记为PKT_BCAST_S;否则,结束备份;若所述数据包的状态不是KT_BCAST_F,则丢弃所述数据包;
备用机的所述管理调度模块对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F或PKT_BCAST_S,则所述备用机的时效输出缓存模块提取所述数据包的信息,判断所述数据包是否命中缓存,若是,则删除缓存数据包;否则,在缓存中添加所述数据包,进行缓存时效性的验证;判断是否回注所述数据包,若是,则所述数据包被回注到集线器;否则,继续进行缓存时效性的验证;若所述数据包的状态不是PKT_BCAST_F或PKT_BCAST_S,则丢弃所述数据包。
所述时效输出缓存模块的数据结构采用哈希表结合双向时间链表的方式实现,当采用固定内存管理策略时,将所述哈希表中的哈希结点以及双向时间链表结点放置在固定内存管理的LRU双向链表中。
所述哈希表的关键码采用了以下七元组的形式,{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移},其中,IPID字段为IP数据报文的唯一标志;IP分片位移字段,用于当数据包是IP分片数据包时,区分某个特定的数据包在分片序列中的位置。
所述备用机的时效输出缓存模块提取所述数据包的七元组信息{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移};根据所述七元组信息查找所述时效输出缓存模块中的哈希表,判断所述数据包是否命中,若是,则删除所述哈希表的相应表项;否则,在所述哈希表中添加所述数据包的表项。
所述缓存时效性验证,是采用线程定期轮询的方式进行,预定义缓存失效时间T,假设数据包初次缓存添加时间为T1,线程轮询到此数据包的时间点为T2。如果T2-T1>T,则认定缓存时效性匹配失败,应该回注此数据包;否则认定数据包在缓存中仍然有效,不进行回注。
所述时效输出缓存模块的数据结构,采用可扩展大小的缓存,时效缓存模块实时统计已分配缓存的利用率,当缓存利用率超过65%时,再次分配缓存。
双机热备份系统中,所述主用机和备用机,还分别包括:
主用机的心跳模块,用来进行主用机的存活性验证,主用机上的心跳程序周期性地发送状态消息,以表示本机的当前状态;
备用机的心跳模块,用于实时地监听主用机发送的状态消息;当主用机出现故障时,备用机在设定的时间间隔内没有收到主用机的状态消息,就认为主用机已经失效。
所述心跳模块实现的是接收者发起的方式,并且通过在计时器时间内限制接收者请求重传消息包的次数,来限制网络通信流量。
所述心跳模块采用应急呼唤信号验证的方式,当第一次超时没有收到心跳信号时,即向主用机发出一个紧急的呼唤信息,主用机应该优先响应此信息回送一个心跳,如果主用机第二个时间间隔内还没有收到心跳,才进行服务和数据接管。
本发明的有益效果在于:
本发明的双机热备份方法和系统,充分考虑了网络应用数据包级别备份的需求,而且能够根据实际网络部署环境进行策略调整,具有良好的灵活性和扩展性。其主要包括时效输出缓存模块、双机心跳模块以及管理调度模块,根据以上模块的应用,实现了在兼容流量回注功能的同时,保证双机工作模式切换时网络应用丢包率为零。可适用于对高可用性要求比较高的网络应用,如QOS保障系统,入侵检测系统等。
附图说明
图1是本发明的一种双机热备份方法的步骤流程图;
图2是本发明中主用机的时效输出缓存模块判断数据包是否命中缓存的步骤流程图;
图3是本发明的一种双机热备份系统的结构示意图;
图4是本发明的一种双机热备份系统的一实施例的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明的一种双机热备份方法和系统进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明的一种双机热备份方法和系统。采用了软硬件结合的方式,在软件方面,采用时效输出缓存提供数据包缓存功能,并通过线程轮询的方式定期回注缓存匹配失败的数据包,通过时效输出缓存提供了数据包级别的网络应用备份。在硬件方面,引入了OSI第一层交换设备集线器,集线器属于纯硬件网络底层设备,它发送数据时都是没有针对性的,而是采用广播方式发送。集线器的应用避免了单纯依赖软件进行数据同步的缺点,其数据传输效率相对较高,可靠性强。
下面结合上述目标详细说明本发明的双机热备份方法,其中:时效缓存模块与集线器配合,在正常情况下,主用机接收集线器发送的数据包、并进行处理以及回注过程;备用机处于standby状态,缓存集线器首次广播的数据包;同时当收到主用机回注的数据包时,缓存命中成功,缓存删除。在主用机工作正常但数据包回注异常情况下,主用机流量回注失败,备用机的缓存仅仅缓存了集线器首次广播的数据包,时效缓存模块通过线程轮询的策略回注此数据包,保证网络应用处理丢包率为零。在主用机工作异常情况下,备用机实时检测到主用机失败,备用机完成切换过程,接替主用机继续工作。
图1是本发明的一种双机热备份方法的步骤流程图,如图1所示,所述方法,包括下列步骤:
步骤100.从数据源接收一个网络数据包,此时的数据包的状态被看做为PKT_ORIGIN;
步骤200,集线器判断所述数据包是否是以太网类型,若是,则广播所述数据包;否则,丢弃所述数据包;
较佳地,本发明引入了OSI第一层交换设备集线器,集线器属于纯硬件网络底层设备,基本上不具有类似于交换机的“智能记忆”能力和“学习“能力。它也不具备交换机所具有的MAC地址表,所以它发送数据时都是没有针对性的,而是采用广播方式发送。也就是说当它要向某节点发送数据时,不是直接把数据发送到目的节点,而是把数据包发送到与集线器相连的所有节点。集线器的应用避免了单纯依赖软件进行数据同步的缺点,其数据传输效率相对较高,可靠性强。
本发明中的时效输出缓存模块以数据包为处理单元,该数据包是指网络应用对应的外部接口数据源,其特性为以太网数据包类型。
步骤300.主用机和备用机的管理调度模块分别接收所述数据包,并将所述数据包的状态标记为PKT_BCAST_F;所述主用机执行步骤400,所述备用机执行步骤600;
步骤400.所述主用机的管理调度模块对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F,则执行步骤500;否则,丢弃所述数据包;
较佳地,为了在内部处理中对数据包的状态进行明确,时效输出缓存模块将数据包划分为以下状态,分别为原始数据报文,集线器首次广播报文,集线器第二次广播报文以及其他状态报文。分别采用PKT_ORIGIN,PKT_BCAST_F,PKT_BCAST_S,PKT_OTHERS来对以上状态进行标识。原始数据报文PKT_ORIGIN指数据源接入的报文;由于集线器的广播功能,集线器会对原始数据报文进行广播,首次广播后的报文即集线器首次广播报文PKT_BCAST_F;主用机上的管理调度模块对集线器首次广播报文进行处理,会将需要回注的数据报文重新返回给集线器,集线器会再次广播该报文,即集线器第二次广播报文PKT_BCAST_S,PKT_OTHERS标识除此状态之外的报文类型。
步骤500.用户程序执行相关业务的处理,管理调度模块判断是否回注所述数据包,若是,所述数据包被回注到集线器,集线器进行第二次数据包广播,此时的数据包状态被标记为PKT_BCAST_S,返回步骤300;否则,结束备份;
步骤600.所述备用机的管理调度模块对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F或PKT_BCAST_S,则执行步骤700;否则,丢弃所述数据包;
所述时效输出缓存模块是本发明的核心,在正常情况下,主用机的时效输出缓存模块处于非使能状态,备用机的时效输出缓存模块处于使能状态,同时接收并缓存主用机传送过来的数据包。
步骤700.所述主用机的时效输出缓存模块提取所述数据包的信息,判断所述数据包是否命中缓存,若是,则删除缓存数据包;否则,在缓存中添加所述数据包,执行步骤800;
较佳地,所述时效输出缓存模块的数据结构采用哈希表结合双向时间链表的方式实现。双向时间链表是时效输出缓存模块的核心组成部分,用来进行时效性验证;对于时效输出缓存,有两种内存管理方式,即固定内存管理及可扩展内存管理,当采用固定内存管理策略时,其将哈希表中的哈希结点以及双向时间链表结点放置在固定内存管理的LRU双向链表中。
在哈希表中,采用桶内链表的方法解决冲突。哈希表,是根据关键码值(Keyvalue)而直接进行访问的数据结构。它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做哈希表。采用哈希表结构使数据包查找的时间复杂度为常数。同时,在TCP/IP协议栈中,如果数据包过大,网络层会对数据包进行分片处理,为了使本发明可以兼容对IP分片数据包的处理,哈希表的关键码采用了以下七元组的形式,即{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移}。其中,IPID字段为IP数据报文的唯一标志;当数据包是IP分片数据包时,为了区分某个特定的数据包在分片序列中的位置,本发明引入了IP分片位移字段。
所述时效输出缓存模块对于数据包的处理策略分为缓存添加以及缓存删除两种。对于外部数据源引入的数据包,备用机都采取缓存添加策略,将数据源发送的数据包进行缓存;对于集线器将主用机回流的数据包进行广播,所有备用机会收到主用机回流的数据包,备用机采用缓存删除策略,缓存删除策略的执行依据是根据{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移}七元组的命中成功来确定。
图2是本发明中主用机的时效输出缓存模块判断数据包是否命中缓存的步骤流程图,如图2所示,所述步骤700,包括下列步骤:
步骤710.所述时效输出缓存模块提取所述数据包的七元组信息{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移};
步骤720.根据所述七元组信息查找所述时效输出缓存模块中的哈希表,判断所述数据包是否命中,若是,则执行步骤730;否则,执行步骤740;
步骤730.删除所述哈希表的相应表项;
步骤740.在所述哈希表中添加所述数据包的表项。
步骤800.所述备用机进行缓存时效性的验证;判断是否回注所述数据包,若是,则所述数据包被回注到集线器,返回步骤300;否则,继续进行所述备用机进行缓存时效性的验证。
所述缓存时效性验证,是采用线程定期轮询的方式进行,具体实施方式为预定义缓存失效时间T,假设数据包初次缓存添加时间为T1,线程轮询到此数据包的时间点为T2。如果T2-T1>T,则认定缓存时效性匹配失败,应该回注此数据包;否则认定数据包在缓存中仍然有效,不进行回注。
所述时效输出缓存模块通过以上数据结构、缓存策略以及发送策略的设计,可以实现数据包级别的应用备份。
在本发明的双机热备份方法中,采用管理调度模块负责对用户程序接入进行制定,运行参数管理以及策略性调度。
所述用户程序接入的制定是指在管理调度模块中指定用户程序接入模块为用户程序接入提供标准化流程及配置。所述用户程序接入模块具体包括缓存处理接口、主用机存活性验证接口和工作模式切换接口等。各个接口分别提供“注册初始化”和“注销”接口供应用来调用。
所述运行参数管理是指在本发明中,各个模块相关的运行情况可以进行参数化,通过在不同的应用场景配置不同的运行参数,可以提供相关软件模块的适应性和可扩展性。详细的运行参数指标包括:缓存预分配大小,缓存遍历间隔,心跳间隔等。
本发明中,所述时效缓存模块为了满足不同的应用场景,分别提出了基于固定缓存的LRU机制以及基于可扩展内存的机制。相关策略的采用由管理调度模块来统一支配。
所述策略性调度根据时效输出缓存模块的机制,包括二种规则:
(1)基于固定缓存LRU机制的缓存调度策略
(2)基于可扩展内存的缓存调度策略
所述基于固定缓存LRU机制的缓存调度策略,其特点为使用LRU机制淘汰最近最少使用的散列节点,避免了过多的缓存占用,避免了使用定时器进行超时检测所付出的代价。散列节点和LRU链表节点存在一一对应关系。
散列节点根据在LRU双向链表中所处位置的不同,分为以下四种状态,空闲状态(STATE_IDLE):节点未被使用,位于内存池,初始化时总数为M。LRU双向链表头状态(STATE_HEAD):最近被引用的那个节点,数目为1个。LRU双向链表尾状态(STATE_TAIL):很久没有被引用的节点,占链表总数X%。LRU双向链表中状态(STATE_MIDDLE):介于最近被引用的那个节点和很久没被引用节点之间的链表节点,当内存池中的节点全部被分配时,链表中节点数目为M*(1-X/100)-1个。
初始化时所有节点均位于内存池中,处于空闲状态;当新接收一个数据包时,系统从内存池申请一个空闲节点,处理好映射关系后插入到缓存哈希表,同时插入到LRU双向链头部,节点从空闲状态转换成链表头状态;在缓存哈希表中的节点,一旦长时间未被引用,将会随着新节点不断插入LRU双向链表头,从链表头状态转换为链表中状态,进一步还将转换为链表尾状态;同样的,一旦缓存哈希表表中的节点被引用到,该映射节点将立即插入到LRU双向链表头部,不管其本来的状态是在链表中还是链表尾;当内存池没有空闲节点时,接入点将把尾部节点(即:占链表总数X%的节点)从缓存哈希表和LRU双向链表删除,归入到内存池,节点重新变为空闲状态。
例如在内存中申请10个固定节点的内存区域,初始化时10个节点都处于空闲状态,当节点1被引用时,节点1被插入到链表头,进入链表头状态;当节点2被引用时,节点2被插入到链表头,进入链表头状态,节点1进入链表中状态;依次类推,当节点3被引用时,节点3被插入到链表头,进入链表头状态,链表状态为3->2->1;依次类推,引用10个节点时,链表状态为10->9->8->7->6->5->4->3->2->1;此时,如果节点4被引用,则链表状态转换为4->10->9->8->7->6->5->3->2->1;当仍然需要引用内存节点时,由于节点已经都被使用,所以需要进行LRU淘汰,淘汰的原则是尾部淘汰(例如20%),链表状态为4->10->9->8->7->6->5->3,此时被淘汰的1和2进入空闲状态,可供下次引用使用。
所述基于可扩展内存的缓存调度策略,其特点在于所述时效输出缓存模块使用可扩展大小的缓存。时效缓存模块实时统计已分配缓存的利用率,当缓存利用率超过65%时,再次分配缓存。该策略适合于网络数据包分布较广,网络流速较高的应用场景中。
较佳地,在本发明的双机热备份方法中,还采用了心跳机制来进行主用机的存活性验证,心跳机制设计的目地是保证主用机和备用机之间灵敏的存活性感知。主用机上的心跳程序周期性地发送状态消息,以表示本机的当前状态。备用机上的心跳程序会实时地监听主用机发送的状态消息。当主用机出现故障时,备用机在设定的时间间隔内没有收到主用机的状态消息,就认为主用机已经失效。
较佳地,由于主备用机之间可能会出现颠簸现象,主用机有可能会因忙碌等原因,出现“假死”现象,即长时间不发出心跳信号。如果备用机一旦听不到主用机的心跳信号,就马上接管主用机的工作,则可能导致“颠簸”现象,则主用机和备用机频繁出现交接,造成服务中断。因此,本发明采用接收者发起的方式来保证可靠消息传输,备用机设有一个缓冲窗口,当第一次超时没有收到心跳信号时,即向主用机发出一个紧急的呼唤信息,主用机应该优先响应此信息回送一个心跳。如果备用机第二个时间间隔内还没有收到心跳,才进行服务接管。另外,为了尽可能不激活备用机,主用机在发现某些服务不正常时应尝试自己恢复这些服务,只有当恢复无效时才停止发送心跳来激活备用机。
另外,心跳模块还通过在计时器时间内限制接收者请求重传消息包的次数,来限制网络通信流量。
作为一种可实施方式,采用心跳机制的心跳模块包含多个进程,分别为主状态进程、FIFO进程、心跳介质读进程、心跳介质写进程。其中主状态进程是核心进程,同时是其他三个进程的父进程,其功能主要是:定期发送心跳信号;读取心跳信号并进行处理;处理各个管道的输入。FIFO进程是主状态进程的Fork子进程,其功能主要是:读取用户程序输入,并发送到FIFO管道上。心跳介质写进程是主状态进程的Fork子进程,其功能主要是:读取通讯管道上的输入;通过心跳链路plug in模块进行节点间通信。心跳介质读进程是主状态进程的Fork子进程,其功能主要是:读取心跳介质上的消息,将消息放置在通讯管道上。
较佳地,由于网络负载不均以及UDP心跳协议的不可靠性,主备用机可能在响应较高网络负载时过于“忙碌”,暂时无法处理心跳信号,此时极有可能出现主备用机之间的丢包或颠簸现象。为了实现消息包可靠传输,心跳程序实现的是接收者发起的方式,并且通过在计时器时间内限制接收者请求重传消息包的次数,来限制网络通信流量。为了防止颠簸现象,本发明采用应急呼唤信号验证的方式来解决此问题,当第一次超时没有收到心跳信号时,即向主用机发出一个紧急的呼唤信息,主用机应该优先响应此信息回送一个心跳。如果主用机第二个时间间隔内还没有收到心跳,才进行服务和数据接管。
所述心跳模块将节点的状态划分为以下几种,当心跳系统启动时,节点处于INIT状态,主状态进程启动后,节点进入UP状态。节点接收到两个节点的状态信息后,进入ACTIVE状态。如果节点在deadtime时间间隔内,没有接收到对方节点的状态信息,则认为对方节点死亡,进入DEAD状态。
所述心跳模块的节点死亡判断规则如下:主状态进程使用本地时间记录获得节点状态信息的时间。每当主状态进程获得节点状态信息,主状态进程使用当前时间更新相应节点的时间记录TL。主状态进程利用时间记录判定节点是否失效。使用公式T=TC-TD计算出可以判定节点死亡的时间值T,其中TC表示当前时间,TD表示可以认定节点死亡的时间间隔。如果TL不小于T,认为节点正常,否则认定节点已经死亡。也就是说,如果节点在deadtime内没有接收到另一个节点发送来的状态信息,节点判定另一个节点失效。
相应于本发明的一种双机热备份方法,还提供一种双机热备份系统,图3是本发明的一种双机热备份系统的结构示意图,图4是本发明的一种双机热备份系统的一实施例的示意图,如图3和图4所示,所述系统,包括:主用机1、备用机2、集线器3,其中:
所述集线器从数据源接收一个网络数据包,将此时的数据包的状态标记为PKT_ORIGIN;判断所述数据包是否是以太网类型,若是,则广播所述数据包;否则,丢弃所述数据包;
在正常情况下,主用机接收集线器发送的数据包、并进行处理以及回注过程;备用机处于standby状态,缓存集线器首次广播的数据包;同时当收到主用机回注的数据包时,缓存命中成功,缓存删除;
在主用机工作正常但数据包回注异常情况下,主用机流量回注失败,备用机的缓存仅仅缓存了集线器首次广播的数据包,时效输出缓存通过线程轮询的策略回注此数据包,保证网络应用处理丢包率为零;
在主用机工作异常情况下,备用机实时检测到主用机失败,备用机完成切换过程,备用机接替主用机继续工作。
所述主用机1包括:用户程序模块11、管理调度模块12、时效输出缓存模块13和心跳模块14,其中:
所述用户程序模块11,用于从所述集线器接收网络数据包,执行相关业务的处理;
所述管理调度模块12,用于接收所述数据包,并将所述数据包的状态标记为PKT_BCAST_F;
所述管理调度模块12,对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F,则所述管理调度模块12判断是否回注所述数据包,若是,所述数据包被回注到集线器,集线器进行第二次数据包广播,将数据包状态被标记为PKT_BCAST_S;否则,结束备份;若所述数据包的状态不是KT_BCAST_F,则丢弃所述数据包;
所述心跳模块14,用来进行主用机的存活性验证,主用机上的心跳程序周期性地发送状态消息,以表示本机的当前状态。
所述备用机2包括:用户程序模块21、管理调度模块22、时效输出缓存模块23和心跳模块24,其中:
所述管理调度模块22,对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F或PKT_BCAST_S,则所述时效输出缓存模块23提取所述数据包的信息,判断所述数据包是否命中缓存,若是,则删除缓存数据包;否则,在缓存中添加所述数据包,进行缓存时效性的验证;判断是否回注所述数据包,若是,则所述数据包被回注到集线器;否则,继续进行缓存时效性的验证;若所述数据包的状态不是PKT_BCAST_F或PKT_BCAST_S,则丢弃所述数据包。
所述时效输出缓存模块23提取所述数据包的七元组信息{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移};根据所述七元组信息查找所述时效输出缓存模块中的哈希表,判断所述数据包是否命中,若是,则删除所述哈希表的相应表项;否则,在所述哈希表中添加所述数据包的表项。
所述心跳模块24,用于实时地监听主用机发送的状态消息;当主用机出现故障时,备用机在设定的时间间隔内没有收到主用机的状态消息,就认为主用机已经失效。
较佳地,所述用户程序模块通过所述管理调度模块中指定用户程序接入模块5为用户程序接入提供标准化流程及配置。所述用户程序接入模块5具体包括缓存处理接口51、主用机存活性验证接口52和工作模式切换接口53等。
本发明的有益效果在于:
1)数据包级别的双机热备份。本发明通过时效缓存技术的应用,实现了数据包级别的网络应用热备份,备份粒度细,故障空间小。
2)网络适应性和扩展性强。本发明将各个模块工作流程独立执行并进行参数化,可根据目标应用场景的不同进行相关策略的选择,适应不同网络应用的高可用性需求。
3)实现了在兼容流量回注功能的同时,保证双机工作模式切换时网络应用丢包率为零。
4)部署成本低,应用简单。本发明将双机热备份的相关功能都内置到应用中,不依赖于第三方的备份软件或系统的支撑,对外部环境没有任何额外要求,策略配置简单。可用性强。可适用于对高可用性要求比较高的网络应用,如QOS保障系统,入侵检测系统等。
通过结合附图对本发明具体实施例的描述,本发明的其它方面及特征对本领域的技术人员而言是显而易见的。
以上对本发明的具体实施例进行了描述和说明,这些实施例应被认为其只是示例性的,并不用于对本发明进行限制,本发明应根据所附的权利要求进行解释。
Claims (20)
1.一种双机热备份方法,其特征在于,采用时效输出缓存与集线器配合,在正常情况下,主用机接收集线器发送的数据包、并进行处理以及回注过程;备用机处于standby状态,缓存集线器首次广播的数据包;同时当收到主用机回注的数据包时,缓存命中成功,缓存删除;
在主用机工作正常但数据包回注异常情况下,主用机流量回注失败,备用机的缓存仅仅缓存了集线器首次广播的数据包,时效输出缓存通过线程轮询的策略回注此数据包,保证网络应用处理丢包率为零;
在主用机工作异常情况下,备用机实时检测到主用机失败,备用机完成切换过程,备用机接替主用机继续工作。
2.根据权利要求1所述的双机热备份方法,其特征在于,所述方法,包括下列步骤:
步骤100.所述集线器从数据源接收一个网络数据包,将此时的数据包的状态标记为PKT_ORIGIN;
步骤200,集线器判断所述数据包是否是以太网类型,若是,则广播所述数据包;否则,丢弃所述数据包;
步骤300.主用机和备用机的管理调度模块分别接收所述数据包,并将所述数据包的状态标记为PKT_BCAST_F;所述主用机执行步骤400,所述备用机执行步骤600;
步骤400.所述主用机的管理调度模块对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F,则执行步骤500;否则,丢弃所述数据包;
步骤500.用户程序执行相关业务的处理,所述管理调度模块判断是否回注所述数据包,若是,所述数据包被回注到集线器,集线器进行第二次数据包广播,将数据包状态被标记为PKT_BCAST_S,返回步骤300;否则,结束备份;
步骤600.所述备用机的管理调度模块对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F或PKT_BCAST_S,则执行步骤700;否则,丢弃所述数据包;
步骤700.所述备用机的时效输出缓存模块提取所述数据包的信息,判断所述数据包是否命中缓存,若是,则删除缓存数据包;否则,在缓存中添加所述数据包,执行步骤800;
步骤800.所述备用机进行缓存时效性的验证;判断是否回注所述数据包,若是,则所述数据包被回注到集线器,返回步骤300;否则,继续进行所述备用机进行缓存时效性的验证。
3.根据权利要求1所述的双机热备份方法,其特征在于,所述时效输出缓存模块的数据结构采用哈希表结合双向时间链表的方式实现,当采用固定内存管理策略时,将所述哈希表中的哈希结点以及双向时间链表结点放置在固定内存管理的LRU双向链表中。
4.根据权利要求3所述的双机热备份方法,其特征在于,所述哈希表的关键码采用了以下七元组的形式,{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移},其中,IPID字段为IP数据报文的唯一标志;IP分片位移字段,用于当数据包是IP分片数据包时,区分某个特定的数据包在分片序列中的位置。
5.根据权利要求1所述的双机热备份方法,其特征在于,所述步骤700,包括下列步骤:
步骤710.所述时效输出缓存模块提取所述数据包的七元组信息{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移};
步骤720.根据所述七元组信息查找所述时效输出缓存模块中的哈希表,判断所述数据包是否命中,若是,则执行步骤730;否则,执行步骤740;
步骤730.删除所述哈希表的相应表项;
步骤740.在所述哈希表中添加所述数据包的表项。
6.根据权利要求1所述的双机热备份方法,其特征在于,步骤800中,所述缓存时效性验证,是采用线程定期轮询的方式进行,预定义缓存失效时间T,假设数据包初次缓存添加时间为T1,线程轮询到此数据包的时间点为T2。如果T2-T1>T,则认定缓存时效性匹配失败,应该回注此数据包;否则认定数据包在缓存中仍然有效,不进行回注。
7.根据权利要求1所述的双机热备份方法,其特征在于,所述时效输出缓存模块的数据结构,采用可扩展大小的缓存,时效缓存模块实时统计已分配缓存的利用率,当缓存利用率超过65%时,再次分配缓存。
8.根据权利要求1所述的双机热备份方法,其特征在于,所述双机热备份方法中,还采用了心跳机制来进行主用机的存活性验证,主用机上的心跳程序周期性地发送状态消息,以表示本机的当前状态;备用机上的心跳程序会实时地监听主用机发送的状态消息;当主用机出现故障时,备用机在设定的时间间隔内没有收到主用机的状态消息,就认为主用机已经失效。
9.根据权利要求8所述的双机热备份方法,其特征在于,所述心跳程序实现的是接收者发起的方式,并且通过在计时器时间内限制接收者请求重传消息包的次数,来限制网络通信流量。
10.根据权利要求8所述的双机热备份方法,其特征在于,所述心跳程序采用应急呼唤信号验证的方式,当第一次超时没有收到心跳信号时,即向主用机发出一个紧急的呼唤信息,主用机应该优先响应此信息回送一个心跳,如果主用机第二个时间间隔内还没有收到心跳,才进行服务和数据接管。
11.一种双机热备份系统,其特征在于,所述系统,包括:主用机、备用机、集线器,其中:
所述集线器从数据源接收一个网络数据包,将此时的数据包的状态标记为PKT_ORIGIN;判断所述数据包是否是以太网类型,若是,则广播所述数据包;否则,丢弃所述数据包;
在正常情况下,主用机接收集线器发送的数据包、并进行处理以及回注过程;备用机处于standby状态,缓存集线器首次广播的数据包;同时当收到主用机回注的数据包时,缓存命中成功,缓存删除;
在主用机工作正常但数据包回注异常情况下,主用机流量回注失败,备用机的缓存仅仅缓存了集线器首次广播的数据包,时效输出缓存通过线程轮询的策略回注此数据包,保证网络应用处理丢包率为零;
在主用机工作异常情况下,备用机实时检测到主用机失败,备用机完成切换过程,备用机接替主用机继续工作。
12.根据权利要求11所述的双机热备份系统,其特征在于,所述主用机和备用机,都包括:用户程序模块、管理调度模块、时效输出缓存模块,其中:
所述用户程序模块,用于从所述集线器接收网络数据包,执行相关业务的处理;
所述管理调度模块,用于接收所述数据包,完成用户程序接入并进行参数管理以及相关策略性调度;主用机的所述管理调度模块,对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F,则所述管理调度模块判断是否回注所述数据包,若是,所述数据包被回注到集线器,集线器进行第二次数据包广播,将数据包状态被标记为PKT_BCAST_S;否则,结束备份;若所述数据包的状态不是KT_BCAST_F,则丢弃所述数据包;
备用机的所述管理调度模块对所述数据包进行数据包状态判别,若所述数据包的状态为PKT_BCAST_F或PKT_BCAST_S,则所述备用机的时效输出缓存模块提取所述数据包的信息,判断所述数据包是否命中缓存,若是,则删除缓存数据包;否则,在缓存中添加所述数据包,进行缓存时效性的验证;判断是否回注所述数据包,若是,则所述数据包被回注到集线器;否则,继续进行缓存时效性的验证;若所述数据包的状态不是PKT_BCAST_F或PKT_BCAST_S,则丢弃所述数据包。
13.根据权利要求12所述的双机热备份系统,其特征在于,所述时效输出缓存模块的数据结构采用哈希表结合双向时间链表的方式实现,当采用固定内存管理策略时,将所述哈希表中的哈希结点以及双向时间链表结点放置在固定内存管理的LRU双向链表中。
14.根据权利要求13所述的双机热备份系统,其特征在于,所述哈希表的关键码采用了以下七元组的形式,{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移},其中,IPID字段为IP数据报文的唯一标志;IP分片位移字段,用于当数据包是IP分片数据包时,区分某个特定的数据包在分片序列中的位置。
15.根据权利要求12所述的双机热备份系统,其特征在于,所述备用机的时效输出缓存模块提取所述数据包的七元组信息{源IP地址;目的IP地址;源端口;目的端口;协议;IPID;IP分片位移};根据所述七元组信息查找所述时效输出缓存模块中的哈希表,判断所述数据包是否命中,若是,则删除所述哈希表的相应表项;否则,在所述哈希表中添加所述数据包的表项。
16.根据权利要求12所述的双机热备份系统,其特征在于,所述缓存时效性验证,是采用线程定期轮询的方式进行,预定义缓存失效时间T,假设数据包初次缓存添加时间为T1,线程轮询到此数据包的时间点为T2。如果T2-T1>T,则认定缓存时效性匹配失败,应该回注此数据包;否则认定数据包在缓存中仍然有效,不进行回注。
17.根据权利要求12所述的双机热备份系统,其特征在于,所述时效输出缓存模块的数据结构,采用可扩展大小的缓存,时效缓存模块实时统计已分配缓存的利用率,当缓存利用率超过65%时,再次分配缓存。
18.根据权利要求11所述的双机热备份系统,其特征在于,双机热备份系统中,所述主用机和备用机,还分别包括:
主用机的心跳模块,用来进行主用机的存活性验证,主用机上的心跳程序周期性地发送状态消息,以表示本机的当前状态;
备用机的心跳模块,用于实时地监听主用机发送的状态消息;当主用机出现故障时,备用机在设定的时间间隔内没有收到主用机的状态消息,就认为主用机已经失效。
19.根据权利要求18所述的双机热备份系统,其特征在于,所述心跳模块实现的是接收者发起的方式,并且通过在计时器时间内限制接收者请求重传消息包的次数,来限制网络通信流量。
20.根据权利要求18所述的双机热备份系统,其特征在于,所述心跳模块采用应急呼唤信号验证的方式,当第一次超时没有收到心跳信号时,即向主用机发出一个紧急的呼唤信息,主用机应该优先响应此信息回送一个心跳,如果主用机第二个时间间隔内还没有收到心跳,才进行服务和数据接管。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010620086XA CN102118309B (zh) | 2010-12-31 | 2010-12-31 | 一种双机热备份方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010620086XA CN102118309B (zh) | 2010-12-31 | 2010-12-31 | 一种双机热备份方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102118309A true CN102118309A (zh) | 2011-07-06 |
CN102118309B CN102118309B (zh) | 2013-08-21 |
Family
ID=44216911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010620086XA Expired - Fee Related CN102118309B (zh) | 2010-12-31 | 2010-12-31 | 一种双机热备份方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102118309B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102760101A (zh) * | 2012-05-22 | 2012-10-31 | 中国科学院计算技术研究所 | 一种基于ssd 的缓存管理方法及系统 |
CN103067209A (zh) * | 2013-01-25 | 2013-04-24 | 浪潮电子信息产业股份有限公司 | 一种心跳模块自检测方法 |
CN103425553A (zh) * | 2013-09-06 | 2013-12-04 | 哈尔滨工业大学 | 一种双机热备份系统及该系统的故障检测方法 |
CN103546427A (zh) * | 2012-07-11 | 2014-01-29 | 中国银联股份有限公司 | 一种实现加密机应用的高可用性的方法和系统 |
CN103970624A (zh) * | 2014-05-06 | 2014-08-06 | 上海动联信息技术股份有限公司 | 一种身份认证一体机的备份方法及还原方法 |
CN105099793A (zh) * | 2015-09-24 | 2015-11-25 | 华为技术有限公司 | 热备方法、装置及系统 |
CN105955841A (zh) * | 2016-04-18 | 2016-09-21 | 华中科技大学 | 一种raid双控制器利用磁盘进行写缓存镜像的方法 |
WO2016202051A1 (zh) * | 2015-06-15 | 2016-12-22 | 中兴通讯股份有限公司 | 一种通信系统中管理主备节点的方法和装置及高可用集群 |
CN107171870A (zh) * | 2017-07-17 | 2017-09-15 | 郑州云海信息技术有限公司 | 一种双机热备份方法及装置 |
CN108196956A (zh) * | 2017-12-28 | 2018-06-22 | 郑州云海信息技术有限公司 | 一种nas服务节点实现nas服务的方法及系统 |
CN110992203A (zh) * | 2019-10-23 | 2020-04-10 | 北京微电子技术研究所 | 一种基于冗余技术的核电通信控制模块 |
CN111062066A (zh) * | 2019-11-04 | 2020-04-24 | 湖南源科创新科技有限公司 | 防固态硬盘数据丢失的方法和数据存储系统 |
CN113542028A (zh) * | 2021-07-17 | 2021-10-22 | 辽宁工业大学 | 一种物联网数据接收的双机热备方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1510845A (zh) * | 2002-12-26 | 2004-07-07 | 华为技术有限公司 | 一种交叉主备保护的热备份方法 |
CN1852146A (zh) * | 2005-09-06 | 2006-10-25 | 上海华为技术有限公司 | 一种热备份系统和方法 |
-
2010
- 2010-12-31 CN CN201010620086XA patent/CN102118309B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1510845A (zh) * | 2002-12-26 | 2004-07-07 | 华为技术有限公司 | 一种交叉主备保护的热备份方法 |
CN1852146A (zh) * | 2005-09-06 | 2006-10-25 | 上海华为技术有限公司 | 一种热备份系统和方法 |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102760101A (zh) * | 2012-05-22 | 2012-10-31 | 中国科学院计算技术研究所 | 一种基于ssd 的缓存管理方法及系统 |
CN102760101B (zh) * | 2012-05-22 | 2015-03-18 | 中国科学院计算技术研究所 | 一种基于ssd 的缓存管理方法及系统 |
CN103546427A (zh) * | 2012-07-11 | 2014-01-29 | 中国银联股份有限公司 | 一种实现加密机应用的高可用性的方法和系统 |
CN103546427B (zh) * | 2012-07-11 | 2017-02-08 | 中国银联股份有限公司 | 一种实现加密机应用的高可用性的方法和系统 |
CN103067209A (zh) * | 2013-01-25 | 2013-04-24 | 浪潮电子信息产业股份有限公司 | 一种心跳模块自检测方法 |
CN103067209B (zh) * | 2013-01-25 | 2017-09-15 | 浪潮电子信息产业股份有限公司 | 一种心跳模块自检测方法 |
CN103425553A (zh) * | 2013-09-06 | 2013-12-04 | 哈尔滨工业大学 | 一种双机热备份系统及该系统的故障检测方法 |
CN103425553B (zh) * | 2013-09-06 | 2015-01-28 | 哈尔滨工业大学 | 一种双机热备份系统及该系统的故障检测方法 |
CN103970624A (zh) * | 2014-05-06 | 2014-08-06 | 上海动联信息技术股份有限公司 | 一种身份认证一体机的备份方法及还原方法 |
CN106330475A (zh) * | 2015-06-15 | 2017-01-11 | 中兴通讯股份有限公司 | 一种通信系统中管理主备节点的方法和装置及高可用集群 |
WO2016202051A1 (zh) * | 2015-06-15 | 2016-12-22 | 中兴通讯股份有限公司 | 一种通信系统中管理主备节点的方法和装置及高可用集群 |
CN106330475B (zh) * | 2015-06-15 | 2020-12-04 | 中兴通讯股份有限公司 | 一种通信系统中管理主备节点的方法和装置及高可用集群 |
CN105099793B (zh) * | 2015-09-24 | 2019-02-05 | 华为技术有限公司 | 热备方法、装置及系统 |
CN105099793A (zh) * | 2015-09-24 | 2015-11-25 | 华为技术有限公司 | 热备方法、装置及系统 |
US11416359B2 (en) | 2015-09-24 | 2022-08-16 | Huawei Technologies Co., Ltd. | Hot standby method, apparatus, and system |
US11734138B2 (en) | 2015-09-24 | 2023-08-22 | Huawei Technologies Co., Ltd. | Hot standby method, apparatus, and system |
CN105955841B (zh) * | 2016-04-18 | 2018-09-21 | 华中科技大学 | 一种raid双控制器利用磁盘进行写缓存镜像的方法 |
CN105955841A (zh) * | 2016-04-18 | 2016-09-21 | 华中科技大学 | 一种raid双控制器利用磁盘进行写缓存镜像的方法 |
CN107171870A (zh) * | 2017-07-17 | 2017-09-15 | 郑州云海信息技术有限公司 | 一种双机热备份方法及装置 |
CN108196956A (zh) * | 2017-12-28 | 2018-06-22 | 郑州云海信息技术有限公司 | 一种nas服务节点实现nas服务的方法及系统 |
CN110992203A (zh) * | 2019-10-23 | 2020-04-10 | 北京微电子技术研究所 | 一种基于冗余技术的核电通信控制模块 |
CN111062066A (zh) * | 2019-11-04 | 2020-04-24 | 湖南源科创新科技有限公司 | 防固态硬盘数据丢失的方法和数据存储系统 |
CN113542028A (zh) * | 2021-07-17 | 2021-10-22 | 辽宁工业大学 | 一种物联网数据接收的双机热备方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102118309B (zh) | 2013-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102118309B (zh) | 一种双机热备份方法及系统 | |
US11075795B2 (en) | Arbitration method, apparatus, and system used in active-active data centers | |
CN102739799B (zh) | 一种分布式应用中的分布式通讯方法 | |
CN103207841B (zh) | 基于键值对缓存的数据读写方法及装置 | |
US7272741B2 (en) | Hardware coordination of power management activities | |
US20140254347A1 (en) | Ethernet Ring Protection Switching Method, Node, and System | |
WO2010072083A1 (zh) | 基于web应用的数据库系统及其数据管理方法 | |
WO2021093763A1 (zh) | 一种数据缓存方法和装置 | |
CN101393527A (zh) | 集中式轮询服务 | |
CN102316160A (zh) | 网站系统及其通信方法 | |
CN101237415B (zh) | 一种实现arp协议ip核的方法 | |
CN102833352A (zh) | 分布式缓存管理系统和实现分布式缓存管理的方法 | |
TWI410084B (zh) | 於負載平衡網路環境中之智慧型故障排除 | |
WO2012097588A1 (zh) | 数据存储方法、设备和系统 | |
CN102591717A (zh) | 外接设备和虚拟设备的业务信息处理方法、装置和系统 | |
CN103139018A (zh) | 一种调变一体化系统下的网卡状态监测与tcp通信方法 | |
CN102455976A (zh) | 一种中间件内存管理方案 | |
WO2006005251A1 (fr) | Procede et systeme de realisation de la fonction de commutation dans un systeme de communication | |
CN116701485A (zh) | 基于分布式检索系统的系统优化装置、方法、设备及介质 | |
CN101605051A (zh) | 一种实现控制板上业务的主备倒换方法和装置 | |
CN102752144B (zh) | 一种软重启不中断业务升级过程中拓扑变化的处理方法及装置 | |
CN113542373B (zh) | 用于paas平台的路由服务发现装置及方法 | |
WO2021249173A1 (zh) | 一种分布式存储系统及其异常处理方法和相关装置 | |
CN100474815C (zh) | 调整链路容量的方法 | |
CN101702713A (zh) | 一种提高udp发送效率的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130821 Termination date: 20191231 |