提高电子表决投票系统可靠性的技术方案
2015-11-10谢克峰
谢克峰
(人民大会堂管理局,北京 100800)
0 引言
伴随着电子芯片、集成电路、计算机等技术的进步,电子表决投票系统应运而生。电子表决投票系统正式进入我国使用要追溯到20世纪80年代末90年初,最初应用在人大、政协、政府等部门的各类议案表决、民主评议、人事选举等方面,确保了各类表决事项的结果精确,准确表达了各方意见。后来,随着电子表决系统的发展以及各类选秀、比赛等节目的发展,催生了电子表决系统在现场投票、测评打分、现场互动等方面的需求。
1 电子表决投票系统的结构
电子表决投票系统可分为有线表决投票系统和无线表决投票系统,本文主要针对有线表决投票系统进行探讨。现在主流表决投票系统一般采用总线型网络结构,由终端计算机、控制器和终端表决器3部分组成,如图1所示。
图1 电子表决摘票系统结构图
控制计算机安装串口[1]控制卡,通过串口线(RS-232、RS-422或 RS-485)与表决器控制器连接;表决控制器通过专用总线(以1条为例)与终端表决器连接,承担通信和给表决器供电功能;表决器之间采用手拉手连接方式,供电电路实际为并联模式,通信接口则采用总线型网络结构。
数据流采用逐级增加地址报头的方式生成数据帧[2],结构如表1所示。
表1 表决投票系统数据帧结构
其中,表决器地址用来标示定位表决器,8 bit,地址范围为0~255;控制器地址用来识别特定控制器,8 bit,地址范围为 0~255;串口卡地址用来区别串口卡,8 bit,地址范围为 0~255,但实际中计算机卡槽有限;系统标识符用来判断是否为表决系统数据,8 bit,特定字段,比如全0;信息帧为表决系统的控制指令、通信信息数据和系统数据核心报文。这样从数据结构上,保证了系统的大容量和扩充性。
2 系统主要安全隐患
电子表决系统由于应用环境非常特殊,对于其数据结果的准确性和实时性要求非常高,尤其在法律议案表决、人事选举等方面要求更高,绝不能出现因为系统故障而改变最终结果的情况,因此对系统的安全可靠性提出了更高的要求。从理论上和实际使用中看,目前系统都存在结构性安全隐患,实际中也曾出现过系统故障,影响较大。其主要隐患表现在以下几方面。
2.1 网络结构安全隐患
目前控制器到终端表决器采用手拉手式总线型网络拓扑结构[3],总线上传输信息通常多以基带形式串行传递,每个表决器上的接口板硬件均具有收、发功能,控制器负责接收总线上的串行信息并转换成并行信息送到工作站。理论上采用总线型结构,表决器之间互不影响通信,但是在实际使用环境中,由于手拉手的结构,每个表决器都承担了总线的传输作用,如图2所示。
图2 手拉手总线结构故障示意图
如果第1个表决器故障或失效,将导致其下端的多个表决器全部出现数据错误、失效、表决器掉线等问题。实际维护过程中,这个问题也经常出现,很大程度影响系统的安全性、可靠性,影响投票表决结果的准确性、真实性、可信度。为提升系统安全可靠性,克服网络结构的缺陷是应着手解决的问题。
2.2 单控制器的安全隐患
控制器虽然有几条干线,但是每一组表决器只有一条线路连接,一旦主干线出现故障,则该组表决器全部掉线、失效。即便通过线路备份方式,也只是冷备份,会议过程中根本来不及更换处理。
同时,系统采用单一控制器连接多组终端表决器。由于没有热备份,一旦控制器出现故障,则该控制器所连接的所有表决器(通常上百个)都会失效,影响范围很大,系统存在很大的安全隐患。
从安全可靠性角度看,控制器方面有很大的提升空间。解决这一问题,是提高系统整体可靠性的至关重要的一步,是重点考虑的努力方向。
3 技术改进方案
针对系统存在的安全隐患,特提出控制器与表决器组网改进方案,以便提升系统安全性、可靠性。组网方式借鉴计算机网络的拓扑结构和网络管理知识进行研究,同时又要考虑网络实施成本、复杂度、设备接口情况等因素,综合考虑,选择最优网络方案。
在所有网络结构中,星形网络拓扑结构[3]似乎可靠性最高,而且优点明显:便于集中控制,终端表决器互不影响,安全可靠;网络延迟时间较小,传输误差较低。但是与此同时,其缺点也很突出:线路繁多,不能共用;线路维护工作复杂;中心设备接口多(要求表决控制器接口256个以上),维修检测工作量很大;成本太高,施工复杂。综合各方因素不建议采用。
3.1 组网建议方案
组网方案力求既要增加安全可靠性,又要兼顾施工维护复杂度、成本等因素。原有网络结构虽然有很大隐患,但其优点也很突出,比如:施工费用低、布线要求简单、组网灵活、扩充方便等。建议在原有总线型网络基础上改造成环状双向总线网络。系统表决器之间仍采用手拉手的方式连接,由两台控制器分别作为主、备控制器,连接在表决器组的首尾两端,主、备控制器之间通过控制线相连,组网成环,如图3所示。
图3 手拉手总线结构故障示意图
从另一方面看,双控制器实际上处于双机热备[4]工作状态。主备控制器工作在主-备方式 (Active-Standby方式)下,主-备方式指的是一台控制器处于某种业务的激活状态(即Active状态),另一台控制器处于该业务的备用状态(即Standby状态)。
3.2 工作原理
系统具备实现环路双向通信功能,主备控制器采用双机冗余工作和信息同步[5]的方式。正常工作时,所有表决器与主控制器进行正向通信;备控制器可视为一个总线终端匹配器,处于监听工作状态,实时监听主控制器指令和表决器返回的数据,与主控制器进行信息同步,当两者数据相匹配时,可视为通信正常。
当某个表决器出现故障时,启用系统级故障检测机制(心跳检测),当检测到其下联的表决器无法与主控制器通信时(如图4所示),主控制器指令和表决器返回的数据不能匹配,则备控制器马上激活工作,既向表决器转发主控制器指令,又向主控制器发送表决器返回数据,实现反方向传输数据,从而实现故障时系统正常通信,提升系统安全性可靠性。
图4 改进网络后表决器故障示意图
通过主备控制器和手拉手表决器将总线网络形成环路,继承了手拉手总线结构优点,又实现了系统链路冗余备份,建立备份机制,同时实现了控制器双机热备的体系,以有限的代价、简化的维护程序、较短维修时间,大幅提高系统可靠性、安全性。
3.3 需要解决的问题
新的网络结构方案虽然具备能大幅提高系统的安全可靠性,但是实际还有一些应该注意的问题。
(1)控制器需重新设计软硬件和接口,包括:控制器能够进行主备机状态设置;优化优先级和权限分配,避免出现冲突;增加互连接口等方面。
(2)注意解决主备控制器双机热备的手动切换模式操作步骤和故障切换的冲突处理。
(3)表决器需要具备数据记录、数据重发等功能,供故障发生后备用控制器调用。
(4)需另外增加备用主干线路连接至备用控制器。
4 结论
改进结构的技术方案,通过网络结构和控制器工作模式的优化升级,保留了原系统结构的众多优点,消除了原有系统安全隐患,大幅提高了系统可靠性,并指出了电子表决投票系统的一个改进方向。随着技术不断进步,系统还会不断升级完善,安全可靠性也会越来越高。
[1]BRAHLER ICS.Documentation of MATH32.DLL forCDS System[Z].BRAHLER ICS Germany,2007.
[2]冯博琴,吴宁.微型计算机原理与接口技术(第3版)[M].北京:清华大学出版社,2011.
[3]郭军.网络管理(第 3版)[M].北京:北京邮电大学出版社,2008.
[4]刘胜永,黄力.基于双机热备结构的嵌入式系统设计[J].微计算机信息,2007,2(2):16-18.
[5]姜坚华.双机热备系统的技术研究和具体实现[J].微型电脑应用,2004,3(3):9-11