摘 要: 對當前主流電子表決投票系統架構進行梳理,理論結合實際對系統存在的安全隱患進行分析歸納,找出關鍵原因。結合理論知識和現有系統特點,制定最優技術改進方案,暨組建環狀總線通信網絡結構,同時實現控制器雙機熱備功能。以最低成本優化了系統結構,提高了系統安全性和可靠性。同時注意改進方案帶來的新問題,避免新方案帶來新的不可靠因素。
0 引言
伴隨著電子芯片、集成電路、計算機等技術的進步,電子表決投票系統應運而生。電子表決投票系統正式進入我國使用要追溯到20世紀80年代末90年初,最初應用在人大、政協、政府等部門的各類議案表決、民主評議、人事選舉等方面,確保了各類表決事項的結果精確,準確表達了各方意見。后來,隨著電子表決系統的發展以及各類選秀、比賽等節目的發展,催生了電子表決系統在現場投票、測評打分、現場互動等方面的需求。
1 電子表決投票系統的結構
電子表決投票系統可分為有線表決投票系統和無線表決投票系統,本文主要針對有線表決投票系統進行探討。現在主流表決投票系統一般采用總線型網絡結構,由終端計算機、控制器和終端表決器3部分組成,如圖1所示。
控制計算機安裝串口[1]控制卡,通過串口線(RS-232、RS-422或RS-485)與表決器控制器連接;表決控制器通過專用總線(以1條為例)與終端表決器連接,承擔通信和給表決器供電功能;表決器之間采用手拉手連接方式,供電電路實際為并聯模式,通信接口則采用總線型網絡結構。
數據流采用逐級增加地址報頭的方式生成數據幀[2],結構如表1所示。
其中,表決器地址用來標示定位表決器,8 bit,地址范圍為0~255;控制器地址用來識別特定控制器,8 bit,地址范圍為0~255;串口卡地址用來區別串口卡,8 bit,地址范圍為0~255,但實際中計算機卡槽有限;系統標識符用來判斷是否為表決系統數據,8 bit,特定字段,比如全0;信息幀為表決系統的控制指令、通信信息數據和系統數據核心報文。這樣從數據結構上,保證了系統的大容量和擴充性。
2 系統主要安全隱患
電子表決系統由于應用環境非常特殊,對于其數據結果的準確性和實時性要求非常高,尤其在法律議案表決、人事選舉等方面要求更高,絕不能出現因為系統故障而改變最終結果的情況,因此對系統的安全可靠性提出了更高的要求。從理論上和實際使用中看,目前系統都存在結構性安全隱患,實際中也曾出現過系統故障,影響較大。其主要隱患表現在以下幾方面。
2.1 網絡結構安全隱患
目前控制器到終端表決器采用手拉手式總線型網絡拓撲結構[3],總線上傳輸信息通常多以基帶形式串行傳遞,每個表決器上的接口板硬件均具有收、發功能,控制器負責接收總線上的串行信息并轉換成并行信息送到工作站。理論上采用總線型結構,表決器之間互不影響通信,但是在實際使用環境中,由于手拉手的結構,每個表決器都承擔了總線的傳輸作用,如圖2所示。
如果第1個表決器故障或失效,將導致其下端的多個表決器全部出現數據錯誤、失效、表決器掉線等問題。實際維護過程中,這個問題也經常出現,很大程度影響系統的安全性、可靠性,影響投票表決結果的準確性、真實性、可信度。為提升系統安全可靠性,克服網絡結構的缺陷是應著手解決的問題。
2.2 單控制器的安全隱患
控制器雖然有幾條干線,但是每一組表決器只有一條線路連接,一旦主干線出現故障,則該組表決器全部掉線、失效。即便通過線路備份方式,也只是冷備份,會議過程中根本來不及更換處理。
同時,系統采用單一控制器連接多組終端表決器。由于沒有熱備份,一旦控制器出現故障,則該控制器所連接的所有表決器(通常上百個)都會失效,影響范圍很大,系統存在很大的安全隱患。
從安全可靠性角度看,控制器方面有很大的提升空間。解決這一問題,是提高系統整體可靠性的至關重要的一步,是重點考慮的努力方向。
3 技術改進方案
針對系統存在的安全隱患,特提出控制器與表決器組網改進方案,以便提升系統安全性、可靠性。組網方式借鑒計算機網絡的拓撲結構和網絡管理知識進行研究,同時又要考慮網絡實施成本、復雜度、設備接口情況等因素,綜合考慮,選擇最優網絡方案。
在所有網絡結構中,星形網絡拓撲結構[3]似乎可靠性最高,而且優點明顯:便于集中控制,終端表決器互不影響,安全可靠;網絡延遲時間較小,傳輸誤差較低。但是與此同時,其缺點也很突出:線路繁多,不能共用;線路維護工作復雜;中心設備接口多(要求表決控制器接口256個以上),維修檢測工作量很大;成本太高,施工復雜。綜合各方因素不建議采用。
3.1 組網建議方案
組網方案力求既要增加安全可靠性,又要兼顧施工維護復雜度、成本等因素。原有網絡結構雖然有很大隱患,但其優點也很突出,比如:施工費用低、布線要求簡單、組網靈活、擴充方便等。建議在原有總線型網絡基礎上改造成環狀雙向總線網絡。系統表決器之間仍采用手拉手的方式連接,由兩臺控制器分別作為主、備控制器,連接在表決器組的首尾兩端,主、備控制器之間通過控制線相連,組網成環,如圖3所示。
從另一方面看,雙控制器實際上處于雙機熱備[4]工作狀態。主備控制器工作在主-備方式(Active-Standby方式)下,主-備方式指的是一臺控制器處于某種業務的激活狀態(即Active狀態),另一臺控制器處于該業務的備用狀態(即Standby狀態)。
3.2 工作原理
系統具備實現環路雙向通信功能,主備控制器采用雙機冗余工作和信息同步[5]的方式。正常工作時,所有表決器與主控制器進行正向通信;備控制器可視為一個總線終端匹配器,處于監聽工作狀態,實時監聽主控制器指令和表決器返回的數據,與主控制器進行信息同步,當兩者數據相匹配時,可視為通信正常。
當某個表決器出現故障時,啟用系統級故障檢測機制(心跳檢測),當檢測到其下聯的表決器無法與主控制器通信時(如圖4所示),主控制器指令和表決器返回的數據不能匹配,則備控制器馬上激活工作,既向表決器轉發主控制器指令,又向主控制器發送表決器返回數據,實現反方向傳輸數據,從而實現故障時系統正常通信,提升系統安全性可靠性。
通過主備控制器和手拉手表決器將總線網絡形成環路,繼承了手拉手總線結構優點,又實現了系統鏈路冗余備份,建立備份機制,同時實現了控制器雙機熱備的體系,以有限的代價、簡化的維護程序、較短維修時間,大幅提高系統可靠性、安全性。
3.3 需要解決的問題
新的網絡結構方案雖然具備能大幅提高系統的安全可靠性,但是實際還有一些應該注意的問題。
(1)控制器需重新設計軟硬件和接口,包括:控制器能夠進行主備機狀態設置;優化優先級和權限分配,避免出現沖突;增加互連接口等方面。
(2)注意解決主備控制器雙機熱備的手動切換模式操作步驟和故障切換的沖突處理。
(3)表決器需要具備數據記錄、數據重發等功能,供故障發生后備用控制器調用。
(4)需另外增加備用主干線路連接至備用控制器。
4 結論
改進結構的技術方案,通過網絡結構和控制器工作模式的優化升級,保留了原系統結構的眾多優點,消除了原有系統安全隱患,大幅提高了系統可靠性,并指出了電子表決投票系統的一個改進方向。隨著技術不斷進步,系統還會不斷升級完善,安全可靠性也會越來越高。
參考文獻
[1] BRAHLER ICS.Documentation of MATH32.DLL for CDS 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