- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
煤矿测控类系统双机热备软件设计
煤矿测控类系统双机热备软件设计
【摘要】针对现有煤矿测控类系统主控双机热备方案存在的定制性差、成本高和单点故障等问题,提出了一种以灵活性、低成本和可靠性为设计原则的双机热备软件设计方案,重点阐述了煤矿测控类系统双机热备软件整体架构、心跳检测模块、资源管理模块和数据同步模块的设计和实现方法。
【关键词】双机热备;测控;心跳检测;数据同步
1.引言
随着基于工业以太网的测控技术不断发展,煤炭监测监控类系统正在向网络化、智能化方面加速发展,在此过程中,安装在煤矿地面的主控计算机作为整体系统的指挥中心,是系统稳定运行的关键环节,需要使用双机热备功能,来达到一台机器发生故障时另一台机器自动接手业务并负责运行的目的,即主机通过网络采集设备层数据,一旦主机发生异常,备机将在极短的时间内代替主机,进行实时监测并保存历史数据;当主机重新启动,备机会自动将主机丢失的历史数据拷贝给主机[1]。煤矿企业的信息化建设实践证明:基于共享存储设备的简单双机热备方案有很大的局限性,除了可能会形成新的单点故障点(磁盘阵列柜设备)外,硬件成本较高和软件运行环境要求较高等都是这种解决方案在实际使用中无法避免的问题,不太符合大部分煤矿生产环境的要求。另外,商业化的一些纯软件双机热备方案数据同步时间较长,无法满足测控类系统实时数据存储的要求。因此,如何构建一个符合煤矿企业环境使用的双机热备平台成为一个急需解决的问题。
笔者从方案的灵活性、低成本和可靠性方面考虑,设计了基于专用数据同步技术的双机热备纯软件解决方案。本文将着重阐述该解决方案的整体架构、心跳信号、数据同步等技术的原理与实现方法。
2.煤矿测控类系统双机热备软件整体架构
在计算机的硬件配置方面,本文提出每台计算机提供2个网卡,一个是心跳专用网卡,使用网线直接连接,用来提供专用的心跳信号传输通道,保证心跳信号发送快速和稳定;另一个是业务网卡,连接业务网络的交换机,用来为监测监控业务数据提供传输通道。同时,业务网卡也可以作为备用的心跳网卡。
??双机热备软件分为心跳检测模块、资源管理模块[2]和数据同步模块,其中心跳检测模块用于主(A)机、备(B)机互相取得对方的存活状态信息和其他必要信息,资源管理模块用于监测和控制纳入双机热备管辖的业务服务、进程等资源,数据同步模块采用了为煤矿测控类系统专门开发的专用数据同步组件,如图1所示。
双机热备软件作为测控类系统软件的一个重要的组成部分,设计使用接口的方式发布功能,所有相关的配置信息存放在双机热备软件配置文件中。双机热备软件对外提供主机、热备的状态信号,提供主机、热备状态的切换接口,但不负责对所监视的资源进行干预,所有的切换、清理、启停等动作由业务软件自行完成,双机热备软件只提供状态判别结果作为业务软件后续执行动作的依据,这是本文提出的方案与其他方案之间的主要区别。这种设计可以提供极大的灵活性和软件兼容性,给不同的业务软件提供不同的切换策略定制空间。
3.煤矿测控类系统双机热备软件心跳检测模块
煤矿测控类系统对稳定性要求极高,而心跳信号在两台计算机之间必须持续传输,因此在心跳信号的传输渠道上设计了冗余的方式,即:
(1)专用心跳网络渠道
心跳网络是心跳信号的专用网段,只能传输双机热备心跳信息,以保证及时性和可靠性;同时,该网络应设置为物理独立的一个网络,不与办公网或其他网络进行连接,因此本文设计为使用网线直连两台计算机。
心跳信号使用UDP方式进行传输,主机、热备分别启动监听服务,同时分别启动UDP客户端把信号信息发送给对方。监听端口默认为11006,可以在配置文件中设定。
(2)业务网络渠道
业务网络中平时传输的是业务信息,但也可以作为心跳信号的备用网络使用,当心跳网络出现问题时,可以使用业务网络进行对方存活状态的判断。心跳信号传输方法不变,监听端口默认为11007,也可以在配置文件中设定。
在系统正常工作情况下,心跳交互信息由“服务正常吗”查询信息和对方计算机的“服务正常”应答信息构成[3]。而且心跳信号传输的内容必须精简,以达到快速响应的目的。同时为了保证不被特殊情况下出现的杂乱信息干扰,需要使用一定格式的协议约束心跳数据,具体设计以一个常规心跳数据帧为例进行说明:
举例:0xD1 0xE2 0x00 0x02 0x00 0x01 0x8A 0x4C,含义解释如下:
起始帧头:选取了2个字节的特定数据0xD1和0xE2来代表心跳帧的起始;
功能编号:0x00代表常规心跳命令;
数据单元长度:0x02代表后续的数据单元字节数;
数据单元:0x00代表发送者当前为备机,0x01代表发送者某项资源为正常状态;
CRC校验:0x8A 0
文档评论(0)