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