测控计算机系统双机热备份方法研究
摘要:该文主要阐述通常测控计算机系统双机热备份方法,依此提出双机热备份方法的改进设计,对各种方案的优缺点进行对比说明,并论述了其关键技术的实现途径。
关键词:计算机;备份;转换技术
中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)18-4465-02
在航天测控领域中,测控系统通常是由测控计算机系、通信系统和测控设备组成,测控软件作为测控系统作为数据处理和通信枢纽软件,是一个集网络互联、数据处理、实时显示、实时控制、信息传输、信息共享、辅助决策、模拟仿真等于一体的规模庞大的实时应用软件,其重要性不言而喻。系统具有实时性强、可靠性高、数据量大、接口关系复杂等特点,所以,纵观测控系统的发展历程,计算机系统其在任务随行过程中扮演着极其重要的角色,随着数据源、数据类型和网络需求的增多软件工作量可能几何倍数增加,对其重要性实时性可靠性要求和任务实施的成功率要求使测控系统使用双机热备份方案成为必然。在两台测控计算机上运行的相同测控软件,无论在操作系统平台、数据处理方法、软件系统架构、软件编程语言等方面选择相同运行环境和测控软件,还是选择不同运行环境测控软件,均应构成双机热备份提高系统可靠性。今后无论一级指挥中心计算机、二级指挥中心计算机甚至测控设备主控计算机越来越多使用双机热备份机制,在通信网络高端交换机双机热备份配合下,使完全自主运行的测控系统提高系统可用性,进而提高完成任务的有效性,同时可以实现远程双机热备份提高灾难恢复能力。
1 通用方法及不足
传统测控计算机双机热备份方法有两种:一是硬件双工控制台模式,二是纯软件控制模式。
1.1 硬件双工控制台模式
由双工控制台同时向两台计算机提供标准时间信号、中断信号和通信控制信号,实现两台计算机主备转换、同步和数据流向控制,此模式也是过去使用较为普遍的双机热备份模式。双工控制台提供软件启动、主备机切换等中断信号,由计算机内部中断符合板接收后交相对应中断处理程序执行,同时主备机切换信号连接对外通信处理设备,在主备机切换信号的控制下对外通信处理设备完成两台计算机中当前主机信息对外发送和接收外部信息的一分为二。两台计算机中运行软件相对较为简单,双机运行状态和主备机切换由岗位人员完成。
其主要不足是:系统硬件相对庞杂,既需要双工控制台,又需要通信控制柜,两者配合实现数据通信的双工切换;双机主备转换只能由人工完成,操作人员判断双机工作状态后,操作双工控制台按键实现主备转换,判断状态和按键过程较长,致使数据通信中断时间较长,这是指挥人员最无法容忍的缺点;硬件费用昂贵,使双工控制台和通信控制柜费用大于两台计算机甚至多台计算机的经费,显得系统性价比较低。
1.2 纯软件控制模式
纯软件控制模式通过网络通信或串口通信收发控制信息,在两台计算机中增加辅助控制功能实现主备切换和同步。纯软件双机热备份系统就是采用多线程的编程思想或主控程序中添加切换控制代码。测控软件采用多进程多线程体系结构,使系统中的实时测量数据采集与处理、实时控制、实时显示、远程信息交换、测控数据模拟、过程复现及测控数据仿真等功能与辅助控制功能协调工作。测量计算机系统通过主干网和外设网网络接口其它设备进行信息交换、网络数据通信所使用的通信协议主要为UDP/IP协议,网络编程主要采用套接字Socket网络编程接口。
在应用程序中,编写一个辅助线程负责串口或独立网络接口通信和控制命令解读,而主线程完成辅助线程的操作及其数据的计算和显示,主线程与辅助线程之间数据的交换是通过事件消息进行。主机在完成数据的计算和显示的同时在其辅助线程中发送实时数据给备机,备机负责监控主机的任务,同时也将自身的运行状态发送给主机。当备机接收到的数据为有效数据时,则说明主机运行正常;如果备机接收到的数据为无效数据时,或连续多次次接收不到数据,则判断主机处于非正常状态,提示用户对主机进行检查,同时置本机器为主机,完成相应计算、显示的功能。为了确保备援主机处于正常工作状态,在主机的辅助线程中设立相同程序判断备援主机是否发生故障,提示进行修复。
其主要不足是:软件设计变得复杂,增加双机心跳检测的设计;对于两台计算机输出数据无法检查,心跳检测对软件运行和部分硬件进行检测,而对输出接口部分无法检测;在主备转换过程中可能出现一帧错误数据,在此模式中其实只有主用计算机对外提供服务,备用计算机未将服务信息发送中网络中,当主用计算机出现故障时,测控系统通常采用UDP数据包协议,没有错误重发机制,并且备用计算机可能在实时性要求规定时间内无法送出相应正确数据,而可能导致对方接收数据错误,虽然相对上一种方法有大幅度改进,但不确定性错误对测控设备可能造成影响。
2 改进方案设计
随着计算机网络应用广泛深入推进,通信质量的不断提升,也逐步改变了双机热备份模式,形成一种新的第三方控制模式,通过第三台计算机监测两台计算机状态并实现数据汇集分发功能。测控计算机系统担负的主要任务是对测量控制设备获得的数据进行跳点剔除、断点补点、数据平滑、数据记录和多数据融合处理,并对测量控制设备发送相应控制信息,对指挥人员提供全要素多形式任务态势和参数显示。目前测控系统数据通信主要特点是数据帧格式固定、帧长度变化不大、帧频率不变、数据源较多。鉴于以上特点,在设计新的计算机系统双机热备份体系结构时,将多数据源网络接收发部分放在第三方控制计算机,分担多次接收和发送数据产生的大量系统开销;在数据通信输入/输出控制上采用两种不同驱动机制,收数据采用数据驱动机制,发数据采用时间驱动机制,充分利用两种机制的优点,既实现了同步控制功能,又保证了测控数据的完整性,提高了测控数据的实时传输质量和效率;系统只有一台计算机对外通信,节约网络带宽和对端计算机软件工作量,若使用双机同时接收对外数据,会产生两倍的数据量和对端软件分别发送两次数据;第三方控制计算机将记录数据分析检查和回放可全面检查两台热备份计算机软件运行的正确性,也可达到对计算机软件仿真验证效果;通过软件设计可完全实现主备双机主备转换过程中对外数据通信无中断,并非如传统测控计算机系统双机热备份方法中无法避免在主备机转换过程中可能对外数据通信中断;系统中计算机可以放置在距离相对较远的地方,具有容灾和抗毁伤效果。另外此种方法可灵活运用,使之成为分布式计算机系统或者多种功能域网络数据的融合。
3 主要关键技术
3.1 双机心跳协议
心跳协议是双机热备系统中进行运行状态监测、故障模式诊断、主备机正常切换的基础,也是影响系统实时性、可靠性和整体性能的关键技术。在应用层利用Socket以UDP、TCP 、ICMP报文方式或串口通信方式实现心跳协议,应因地制宜选择不同心跳协议实现机制。由于其心跳信息的传输需要经过双机传输层、内核与通信接口软件,并受到应用层任务切换的影响,使主备服务器之间切换时间较长,难以满足测控计算机系统实时性要求。根据UDP协议实时性应用特点,设计了一个网络层的双机心跳协议,它与IP协议在层次上等同,利用自身定义的UDP可靠传输数据包格式直接进行心跳信息的交互,程序实现中对心跳信息直接进行封装。与通常的心跳报文传输方式相比,它有以下的特点:一是设计特有的报文格式。根据UDP协议双机热备份系统本身的特点设计报文格式,交互信息丰富,可扩展性强。二是相对编程比较简单。利用平台提供网络驱动程序提供的接口,在程序中容易构造心跳协议报文,根据帧头的类型字段,可直接填写不同的监视数据和控制命令;三是在网络环境下数据传输速度更快,效率更高,甚至可以用组播技术实现系统中相关成员同步实现任务状态转换。
通常心跳检测数据包中主要包括以下参数:主线程计数,检测主线程运行情况;网络数据接收是否存在校验错等错误情况;计算机系统是否存在报错。
3.2 主备机转换技术
在第三方控制模式中,主备机转换主要由运行在该计算机的软件自动完成,同时具有人工干预主备机转换的功能。主备机转换只能由主用计算机和第三方控制计算机发起,主要是主用计算机自检有异常或需停止程序时,由主用计算机发起,第三方控制计算机通过心跳检测主用计算机错误或数据错误时,由该计算机发起主备机转换。由于双机热备份最终数据输出由控制计算机决定,所以主备机转换的执行由控制计算机完成选择输出哪一台计算机的数据,哪一台计算机其实就是当前的主用计算机。除非主用计算机主动申请主备转换时其应当发出指令外,其余主备转换对于两台计算机是毫无察觉的。
4 结束语
在双机热备份方案设计中方法可变形为多种模式,可根据系统需求和条件选择其中一种,为使系统中增加数据同步性能,可使用硬件时统卡或软件对时方式与计时器相结合的方法。对于第三方控制计算机如何进行数据检查判断接收数据的正确性还需进一步研究,以及在对内对外数据模拟仿真和数据复现方面同样还有许多内容值得思考。
参考文献:
[1] 唐六华.基于TCP协议的双机热备份系统[J].信息安全与通信保密,2006(8).
[2] 马二伟.综合信息网双机备份系统应用方案的分析[J].矿业快报,2003(11).
推荐访问: 双机 测控 计算机系统 备份 方法