朱 同,劉 媛
(廊坊開(kāi)發(fā)區(qū)中油龍慧自動(dòng)化工程有限公司,河北 廊坊 065000)
隔離區(qū)(demilitarized zone,DMZ)是為了防止外部網(wǎng)絡(luò)直接訪問(wèn)內(nèi)部網(wǎng)絡(luò)而設(shè)置的、非安全系統(tǒng)與安全系統(tǒng)之間的區(qū)域。通過(guò)設(shè)置DMZ,能夠有效地保護(hù)內(nèi)部網(wǎng)絡(luò)。相比一般的防火墻方案,設(shè)置DMZ 對(duì)攻擊者來(lái)說(shuō)又多了一道關(guān)卡[1]。
目前,工業(yè)控制系統(tǒng)的數(shù)據(jù)訪問(wèn)需求已不再僅僅滿足于數(shù)據(jù)的實(shí)時(shí)傳輸。DMZ 系統(tǒng)作為數(shù)據(jù)采集與監(jiān)視控制(supervisory control and data acquisition,SCADA)系統(tǒng)的對(duì)外屏障,隸屬于SCADA 系統(tǒng)。其部署了2 臺(tái)DMZ 服務(wù)器,采用雙主模式工作,是DMZ 系統(tǒng)的核心部分,負(fù)責(zé)實(shí)現(xiàn)SCADA 系統(tǒng)與外部網(wǎng)絡(luò)的數(shù)據(jù)交互。DMZ 服務(wù)器可實(shí)現(xiàn)雙向客戶端服務(wù)器(client and server,CS)模式(雙向客戶端&服務(wù)器架構(gòu))通信。即:一方面作為客戶端采集外部網(wǎng)絡(luò)數(shù)據(jù),又作為服務(wù)器向SCADA 系統(tǒng)轉(zhuǎn)發(fā)外部網(wǎng)絡(luò)數(shù)據(jù);另一方面既作為客戶端采集SCADA 系統(tǒng)數(shù)據(jù),又作為服務(wù)器向外部網(wǎng)絡(luò)轉(zhuǎn)發(fā)SCADA 系統(tǒng)數(shù)據(jù)。DMZ 服務(wù)器除了實(shí)時(shí)傳輸數(shù)據(jù)之外,還能傳遞數(shù)據(jù)質(zhì)量戳和時(shí)間戳,保證數(shù)據(jù)交互的時(shí)鐘同步性,具備數(shù)據(jù)緩存和數(shù)據(jù)回填功能,并可實(shí)現(xiàn)數(shù)據(jù)加密和證書(shū)認(rèn)證通信。
SCADA 系統(tǒng)內(nèi)部署了北京油氣調(diào)控中心研發(fā)的過(guò)程控制系統(tǒng)(process control system,PCS)工控人機(jī)界面(human machine interface,HMI)軟件,以下簡(jiǎn)稱PCS。PCS 與DMZ 服務(wù)器通信協(xié)議為 IEC104,外部網(wǎng)絡(luò)與DMZ 服務(wù)器通信協(xié)議為OPC UA。DMZ 服務(wù)器作為中轉(zhuǎn)平臺(tái),向雙方提供所需數(shù)據(jù)后,由雙方主動(dòng)從中讀取。
以下是對(duì)DMZ 系統(tǒng)安全數(shù)據(jù)交互設(shè)計(jì)開(kāi)發(fā)的詳細(xì)闡述。系統(tǒng)已在中俄東線天然氣管道工程黑河壓氣首站成功應(yīng)用并投入正常運(yùn)行。
從提高安全性考慮,將數(shù)據(jù)傳輸分為3 個(gè)區(qū)域,分別為外部網(wǎng)絡(luò)非安全數(shù)據(jù)區(qū)、DMZ 數(shù)據(jù)區(qū)、SCADA 系統(tǒng)安全數(shù)據(jù)區(qū)。SCADA 系統(tǒng)與外部網(wǎng)絡(luò)相互間均有數(shù)據(jù)交互。交互的數(shù)據(jù)主要為工藝生產(chǎn)過(guò)程數(shù)據(jù),類型主要為Float、Bool 型,并附帶傳遞數(shù)據(jù)質(zhì)量戳和時(shí)間戳,可監(jiān)測(cè)數(shù)據(jù)質(zhì)量、保證時(shí)間同步[2]。
數(shù)據(jù)傳輸總體框架如圖1 所示。
圖1 數(shù)據(jù)傳輸總體框架示意圖Fig.1 Schematic diagram of overall data transmission framework
在本方案中,DMZ 數(shù)據(jù)區(qū)包括2 臺(tái)DMZ 服務(wù)器、2臺(tái)隔離網(wǎng)閘、2 臺(tái)路由器和2 臺(tái)防火墻。其中,隔離網(wǎng)閘、路由器與防火墻用于網(wǎng)絡(luò)安全監(jiān)控及承擔(dān)網(wǎng)絡(luò)路由功能,在此不作重點(diǎn)描述。
2 臺(tái)DMZ 服務(wù)器用于數(shù)據(jù)采集和轉(zhuǎn)發(fā)。使用OPC UA 協(xié)議采集外部網(wǎng)絡(luò)非安全數(shù)據(jù)區(qū)的數(shù)據(jù),通過(guò)IEC104 協(xié)議轉(zhuǎn)發(fā)至SCADA 系統(tǒng)安全數(shù)據(jù)區(qū),并使用IEC104 協(xié)議采集SCADA 系統(tǒng)安全數(shù)據(jù)區(qū)的數(shù)據(jù),通過(guò)OPC UA 協(xié)議再轉(zhuǎn)發(fā)至外部網(wǎng)絡(luò)非安全數(shù)據(jù)區(qū)。所描述的“轉(zhuǎn)發(fā)”并非直接向目的地設(shè)備寫(xiě)入數(shù)據(jù),而是采集數(shù)據(jù)后在本地生成數(shù)據(jù)源,并進(jìn)行協(xié)議轉(zhuǎn)換后供目的地設(shè)備讀取。
DMZ 服務(wù)器采用華三H3C UniServer R4900 系列服務(wù)器。每臺(tái)DMZ 服務(wù)器配置2 塊千兆獨(dú)立網(wǎng)卡,設(shè)置不同網(wǎng)段IP 地址,分別用于對(duì)接安全數(shù)據(jù)區(qū)與非安全數(shù)據(jù)區(qū),實(shí)現(xiàn)兩個(gè)方向、兩種協(xié)議的數(shù)據(jù)采集和轉(zhuǎn)發(fā)。利用不同網(wǎng)卡,互不干擾,避免了雙方網(wǎng)絡(luò)物理上的直接接觸,增強(qiáng)數(shù)據(jù)通信的安全性[3]。DMZ 服務(wù)器中安裝Windows Server2012 操作系統(tǒng),并在此基礎(chǔ)上部署OPC UA 與IEC104 協(xié)議轉(zhuǎn)換應(yīng)用及服務(wù)程序包。
在2 臺(tái)DMZ 服務(wù)器上同時(shí)部署相同的協(xié)議轉(zhuǎn)換應(yīng)用及服務(wù)。每臺(tái)服務(wù)器需部署2 個(gè)服務(wù)程序包。協(xié)議轉(zhuǎn)換服務(wù)程序包如圖2 所示。
圖2 協(xié)議轉(zhuǎn)換服務(wù)程序包Fig.2 Protocol conversion service package
“1042OpcCon”用于IEC104 協(xié)議數(shù)據(jù)的采集,并轉(zhuǎn)發(fā)為OPC UA 協(xié)議的數(shù)據(jù),即用于SCADA 系統(tǒng)安全數(shù)據(jù)區(qū)向外部網(wǎng)絡(luò)非安全數(shù)據(jù)區(qū)的數(shù)據(jù)傳遞,部署IEC104 客戶端及OPC UA 服務(wù)應(yīng)用?!癘pc2104Con”用于OPC UA 協(xié)議數(shù)據(jù)的采集,并轉(zhuǎn)發(fā)為IEC104 協(xié)議的數(shù)據(jù),即用于外部網(wǎng)絡(luò)非安全數(shù)據(jù)區(qū)向SCADA 系統(tǒng)安全數(shù)據(jù)區(qū)的數(shù)據(jù)傳遞,部署OPC UA 客戶端及IEC104 服務(wù)應(yīng)用。為保證轉(zhuǎn)發(fā)業(yè)務(wù)運(yùn)行的可靠性,“1042OpcCon”與“Opc2104Con”兩套服務(wù)為協(xié)議轉(zhuǎn)換核心系統(tǒng),分別運(yùn)行、互不影響,既可以通過(guò)Bin 目錄下提供的Install.bat 腳本進(jìn)行服務(wù)的注冊(cè),又可以通過(guò)Uninstall.bat 腳本進(jìn)行服務(wù)的卸載。
DMZ 服務(wù)及客戶端的運(yùn)行依賴于消息隊(duì)列ActiveMq 和數(shù)據(jù)庫(kù)引擎Mysql。消息隊(duì)列用于服務(wù)與客戶端的通信,采用消息隊(duì)列方式可以最大化地降低服務(wù)和客戶端之間的耦合,使服務(wù)更加穩(wěn)定運(yùn)行,并防止客戶端對(duì)正常轉(zhuǎn)發(fā)數(shù)據(jù)的影響。Mysql 用于存儲(chǔ)歷史數(shù)據(jù),可以快速實(shí)現(xiàn)檢索和查詢。
Check_service.bat 用于守護(hù)服務(wù)的運(yùn)行。對(duì)于服務(wù)在運(yùn)行過(guò)程中可能出現(xiàn)的異常停止,此腳本可以自動(dòng)檢測(cè)并啟動(dòng)服務(wù)。
DMZ 服務(wù)器安裝了數(shù)據(jù)查詢可視化界面客戶端,并且可以可通過(guò)“1042OpcCon”服務(wù)目錄與“Opc2104Con”服務(wù)目錄下的Opc104ViewClient.exe 進(jìn)行啟動(dòng)。客戶端啟動(dòng)程序界面如圖3 所示。
圖3 客戶端啟動(dòng)程序界面Fig.3 Client startup program interface
為防止客戶端被誤關(guān)閉,客戶端最小化的時(shí)候會(huì)隱藏到系統(tǒng)托盤,雙擊即可打開(kāi)界面。啟動(dòng)后,可通過(guò)可視化界面查詢?cè)贒MZ 服務(wù)器中兩個(gè)方向數(shù)據(jù)采集信息,用于通信故障后在本地的分析和篩查??蛻舳藢?shí)時(shí)數(shù)據(jù)查詢可視化界面包括數(shù)據(jù)點(diǎn)列表(展示轉(zhuǎn)發(fā)和采集的數(shù)據(jù)點(diǎn)名稱與地址)、實(shí)時(shí)曲線顯示區(qū)域、實(shí)時(shí)數(shù)據(jù)值顯示區(qū)域。通過(guò)該可視化界面,用戶可自由查詢當(dāng)前各個(gè)采集與轉(zhuǎn)發(fā)數(shù)據(jù)點(diǎn)的實(shí)時(shí)數(shù)值與實(shí)時(shí)變化曲線。
DMZ 服務(wù)器中組態(tài)了歷史曲線界面,用于查詢歷史數(shù)據(jù);可以根據(jù)左側(cè)的轉(zhuǎn)發(fā)地址列表進(jìn)行篩選,并在右側(cè)展示歷史轉(zhuǎn)發(fā)的數(shù)據(jù)曲線??蛻舳藲v史數(shù)據(jù)查詢可視化界面包括數(shù)據(jù)點(diǎn)列表(展示轉(zhuǎn)發(fā)和采集的數(shù)據(jù)點(diǎn)名稱與地址)、歷史曲線顯示區(qū)域、歷史數(shù)據(jù)值顯示區(qū)域。通過(guò)該可視化界面,用戶可自由查詢當(dāng)前各個(gè)采集與轉(zhuǎn)發(fā)數(shù)據(jù)點(diǎn)的歷史數(shù)值與歷史曲線。
消息隊(duì)列系統(tǒng)用于在協(xié)議轉(zhuǎn)換核心系統(tǒng)和客戶端系統(tǒng)緩存和傳輸實(shí)時(shí)數(shù)據(jù)。DMZ 系統(tǒng)首先要保障的是兩個(gè)基礎(chǔ)的數(shù)據(jù)轉(zhuǎn)換服務(wù)的穩(wěn)定、可靠。從整個(gè)大系統(tǒng)的體系結(jié)構(gòu)上,要保證子系統(tǒng)之間沒(méi)有過(guò)多依賴,使核心系統(tǒng)在非必要系統(tǒng)不工作情況下也能正常運(yùn)行。子系統(tǒng)之間采用消息隊(duì)列方式通信,采用消息隊(duì)列隔離核心系統(tǒng)和客戶端界面之間的依賴,保證客戶端系統(tǒng)的運(yùn)行狀態(tài)不會(huì)影響核心系統(tǒng)的數(shù)據(jù)接入和轉(zhuǎn)發(fā)[4]。
時(shí)序數(shù)據(jù)庫(kù)系統(tǒng)用于保存系統(tǒng)交換的實(shí)時(shí)數(shù)據(jù),提供搜索引擎接口,保證數(shù)據(jù)查詢的近實(shí)時(shí)性。DMZ需要存儲(chǔ)高頻率的實(shí)時(shí)數(shù)據(jù),基本點(diǎn)位為1 000 個(gè)信號(hào),存儲(chǔ)頻率為1 s,每天的數(shù)據(jù)量量為86 400 000 條。普通的關(guān)系型數(shù)據(jù)庫(kù)無(wú)法滿足此規(guī)模的數(shù)據(jù)量的查詢,而傳統(tǒng)的實(shí)時(shí)數(shù)據(jù)庫(kù)系統(tǒng)是有損存儲(chǔ),會(huì)造成數(shù)據(jù)精度丟失。DMZ 系統(tǒng)采用近實(shí)時(shí)時(shí)序數(shù)據(jù)庫(kù)Elasticsearch 存儲(chǔ)高頻數(shù)據(jù),可以滿足數(shù)據(jù)庫(kù)存儲(chǔ)和查詢的近實(shí)時(shí)性[5]。
DMZ 服務(wù)器部署完畢后,除需要訪問(wèn)SCADA 系統(tǒng)外,在安全區(qū)網(wǎng)絡(luò)內(nèi)可能會(huì)有多個(gè)第三方系統(tǒng)訪問(wèn)DMZ 服務(wù)器讀取相關(guān)數(shù)據(jù)。為了防止未被許可的第三方系統(tǒng)隨意接入DMZ 數(shù)據(jù)區(qū)獲取數(shù)據(jù)信息,方案采用了網(wǎng)絡(luò)協(xié)議(internet protocol,IP)地址綁定的方法,提出了多用戶實(shí)時(shí)訪問(wèn)優(yōu)化方案。
除了在隔離網(wǎng)閘內(nèi)進(jìn)行IP 地址的過(guò)濾之外,在DMZ 服務(wù)器中通過(guò)設(shè)置允許客戶端訪問(wèn)清單,綁定DMZ 服務(wù)器向安全數(shù)據(jù)區(qū)發(fā)布數(shù)據(jù)的信任IP 地址,開(kāi)放同一端口號(hào),使得在信任清單里面的設(shè)備能夠訪問(wèn)、清單外的設(shè)備拒絕訪問(wèn)[6]。通過(guò)這種方式,有效實(shí)現(xiàn)了多用戶的實(shí)時(shí)訪問(wèn),也保護(hù)了DMZ 系統(tǒng)的信息安全。
IP 地址綁定舉例如下所示。
由此例可知,僅允許IP 地址為“10.211.3.11”“10.211.3.12”“10.31.147.21”和“10.31.147.22”的設(shè)備進(jìn)入DMZ 數(shù)據(jù)區(qū)訪問(wèn)。
針對(duì)數(shù)據(jù)通信可能會(huì)發(fā)生短暫中斷的情況,DMZ服務(wù)器中增加了數(shù)據(jù)緩存與推送功能,開(kāi)辟數(shù)據(jù)緩存寄存器區(qū)域。一旦發(fā)生通信中斷,DMZ 服務(wù)器會(huì)向緩存區(qū)域存儲(chǔ)緩存數(shù)據(jù)。根據(jù)預(yù)先設(shè)定的數(shù)據(jù)存儲(chǔ)量,到達(dá)溢出點(diǎn)后,新產(chǎn)生的緩存數(shù)據(jù)會(huì)把最先存儲(chǔ)的數(shù)據(jù)依次覆蓋掉[7]。當(dāng)通信恢復(fù)后,DMZ 服務(wù)器重新建立鏈接,并把緩存數(shù)據(jù)主動(dòng)推送給最終用戶。用戶可根據(jù)需要,決定是否把緩存數(shù)據(jù)回填至本地?cái)?shù)據(jù)庫(kù)。
選取某一個(gè)數(shù)據(jù)點(diǎn),模擬DMZ 服務(wù)器與SCADA系統(tǒng)安全數(shù)據(jù)區(qū)通信中斷。在一定時(shí)間內(nèi)通信恢復(fù)后,SCADA 系統(tǒng)接收到的DMZ 服務(wù)器向緩存區(qū)域?qū)懭氲臄?shù)據(jù)隊(duì)列形成的趨勢(shì)曲線圖,與在通信中斷期間該點(diǎn)的實(shí)際變化一致。DMZ 服務(wù)器數(shù)據(jù)緩存趨勢(shì)曲線如圖4 所示。
圖4 DMZ 服務(wù)器數(shù)據(jù)緩存趨勢(shì)曲線圖Fig.4 Trend curve of DMZ server data cache
OPC UA 通信可以開(kāi)啟認(rèn)證證書(shū)的校驗(yàn)功能。開(kāi)啟后,OPC 客戶端與服務(wù)器在建立通信連接時(shí)會(huì)檢測(cè)對(duì)方證書(shū)是否在自己的信任列表內(nèi):如果在信任列表內(nèi),則進(jìn)行正常數(shù)據(jù)通信;否則,通信終止。證書(shū)通過(guò)雙方的OPC 軟件生成,相互交換后,將對(duì)方證書(shū)添加到信任列表內(nèi),并可以設(shè)置證書(shū)有效期。有效期過(guò)后,原先信任的證書(shū)將不再為雙方數(shù)據(jù)通信提供認(rèn)證校驗(yàn),數(shù)據(jù)通信終止,必須重新生成證書(shū)并再次互相交換才可繼續(xù)通信。在使用認(rèn)證證書(shū)的同時(shí),還可以對(duì)通信數(shù)據(jù)進(jìn)行加密。加密方式可采用以下幾種。
①Basic128Rsa15-簽名。
②Basic128Rsa15-簽名和加密。
③Basic256-簽名。
④Basic256-簽名和加密。
⑤Basic256Sha256-簽名。
⑥Basic256Sha256-簽名和加密。
通過(guò)認(rèn)證證書(shū)和數(shù)據(jù)加密,可以有效增強(qiáng)DMZ 服務(wù)器的數(shù)據(jù)通信安全性。
以下闡述了SCADA 系統(tǒng)內(nèi)進(jìn)行的與DMZ 系統(tǒng)安全數(shù)據(jù)交互通信設(shè)置,以及數(shù)據(jù)對(duì)外發(fā)布的方案。
安全數(shù)據(jù)區(qū)SCADA 系統(tǒng)包括2 臺(tái)實(shí)時(shí)服務(wù)器、1套冗余可編程邏輯控制器(programmable logic controller,PLC)[8]。實(shí)時(shí)服務(wù)器部署了PCS 上位機(jī)軟件。
SCADA 系統(tǒng)通過(guò)實(shí)時(shí)服務(wù)器PCS 上位機(jī)軟件采集DMZ 服務(wù)器的數(shù)據(jù),在PCS 軟件內(nèi)組態(tài)配置IEC104 數(shù)據(jù)采集通道,使PCS 作為IEC104 客戶端。SCADA 系統(tǒng)IEC104 協(xié)議采集通道配置如下。
①建立通道描述,命名為“IEC104 數(shù)據(jù)采集”,通信類型選擇為實(shí)時(shí)采集。
②通信規(guī)約選擇為fes_104、客戶端模式。設(shè)置對(duì)端第一 IP 地址與對(duì)端第二 IP 地址,分別為10.211.3.11 與10.211.3.12。
③設(shè)置第一端口號(hào)與第二端口號(hào)均為2404。
規(guī)約類型選擇IEC104,通道類型為實(shí)時(shí)采集,配置PCS 上位機(jī)作為客戶端,2 個(gè)對(duì)端IP 地址分別為2臺(tái)DMZ 服務(wù)器。PCS 上位機(jī)可實(shí)現(xiàn)數(shù)據(jù)采集的雙網(wǎng)冗余,在通信不發(fā)生故障的前提下,使用對(duì)端第一IP地址作為主訪問(wèn)路徑采集數(shù)據(jù),而對(duì)端第二IP 地址路徑處于備用休眠狀態(tài)。第一端口號(hào)和第二端口號(hào)分別對(duì)應(yīng)主備兩條訪問(wèn)路徑。
SCADA 系統(tǒng)內(nèi)的數(shù)據(jù)需要通過(guò)DMZ 服務(wù)器發(fā)布給外部網(wǎng)絡(luò)非安全數(shù)據(jù)區(qū)。從安全角度考慮,禁止外部網(wǎng)絡(luò)直接訪問(wèn)SCADA 系統(tǒng)內(nèi)PLC,因此需要通過(guò)SCADA 系統(tǒng)的實(shí)時(shí)數(shù)據(jù)服務(wù)器對(duì)外轉(zhuǎn)發(fā)數(shù)據(jù)。實(shí)時(shí)服務(wù)器PCS 上位機(jī)軟件通過(guò)MDOBUS TCP/IP 協(xié)議采集PLC 數(shù)據(jù),并配置IEC104 數(shù)據(jù)轉(zhuǎn)發(fā)通道,以及數(shù)據(jù)點(diǎn)的點(diǎn)對(duì)點(diǎn)映射,在上位機(jī)軟件應(yīng)用層面實(shí)現(xiàn)MODBUS TCP/IP 數(shù)據(jù)和IEC104 數(shù)據(jù)的實(shí)時(shí)對(duì)接。當(dāng)PCS 上位機(jī)建立了與站控PLC 的MODBUS TCP/IP 通信,就會(huì)啟動(dòng)相應(yīng)的IEC104 數(shù)據(jù)轉(zhuǎn)發(fā)通道。把采集到的PLC 數(shù)據(jù)打上時(shí)間標(biāo)簽后用IEC104 數(shù)據(jù)格式向DMZ 服務(wù)器轉(zhuǎn)發(fā),從而實(shí)現(xiàn)SCADA 系統(tǒng)數(shù)據(jù)向外部網(wǎng)絡(luò)的傳輸[9]。
DMZ 系統(tǒng)2 臺(tái)服務(wù)器采用雙主機(jī)制,SCADA 系統(tǒng)PCS 上位機(jī)建立2 條獨(dú)立的IEC104 數(shù)據(jù)轉(zhuǎn)發(fā)通道。每條通道指向其中1 臺(tái)DMZ 服務(wù)器。2 條通道同時(shí)對(duì)外轉(zhuǎn)發(fā)數(shù)據(jù),2 條通道的主備由DMZ 服務(wù)器決定。
SCADA 系統(tǒng)IEC104 協(xié)議轉(zhuǎn)發(fā)通道配置如下。
①建立通道描述,命名為“IEC104 數(shù)據(jù)轉(zhuǎn)發(fā)通道1”,通信類型選擇為實(shí)時(shí)轉(zhuǎn)發(fā)。
②通信規(guī)約選擇為fes_104、服務(wù)端模式,設(shè)置對(duì)端第一IP 地址為10.211.3.11,對(duì)端第二IP 地址不作設(shè)置。
③設(shè)置第一端口號(hào)為2404,第二端口號(hào)不作設(shè)置。
規(guī)約類型選擇IEC104,通道類型為實(shí)時(shí)轉(zhuǎn)發(fā),并配置PCS 上位機(jī)作為服務(wù)端,配置對(duì)端第一IP 地址為DMZ 服務(wù)器1,端口號(hào)使用雙方預(yù)先定義的2404端口。
IEC104 數(shù)據(jù)轉(zhuǎn)發(fā)通道2 配置與通道1 一致,僅需修改對(duì)端第一IP 地址指向DMZ 服務(wù)器2 即可。
PCS 上位機(jī)除實(shí)現(xiàn)MODBUS 數(shù)據(jù)采集和IEC104數(shù)據(jù)轉(zhuǎn)發(fā)外,還可實(shí)現(xiàn)IEC104 數(shù)據(jù)采集和IEC104 數(shù)據(jù)轉(zhuǎn)發(fā)。這就為DMZ 數(shù)據(jù)上傳調(diào)控中心提供了解決方案。
由于調(diào)控中心不能直接訪問(wèn)DMZ 數(shù)據(jù)區(qū),因此也需要通過(guò)SCADA 實(shí)時(shí)數(shù)據(jù)服務(wù)器進(jìn)行轉(zhuǎn)發(fā)[10]。轉(zhuǎn)發(fā)協(xié)議采用IEC104,方法與SCADA 實(shí)時(shí)服務(wù)器向DMZ服務(wù)器的轉(zhuǎn)發(fā)一致,在PCS 上位機(jī)進(jìn)行數(shù)據(jù)點(diǎn)的地址映射,配置轉(zhuǎn)發(fā)通道,與調(diào)控中心建立連接后啟動(dòng)轉(zhuǎn)發(fā)通道。調(diào)控中心轉(zhuǎn)發(fā)通道配置如下。
①建立通道描述,命名為“DMZ 數(shù)據(jù)轉(zhuǎn)發(fā)第三方系統(tǒng)通道”,通信類型選擇為實(shí)時(shí)轉(zhuǎn)發(fā)。
②通信規(guī)約選擇為fes_104、服務(wù)端模式,設(shè)置對(duì)端第一IP 地址為10.0.1.114,設(shè)置對(duì)端第二IP 地址為10.0.1.115。
③設(shè)置第一端口號(hào)與第二端口號(hào)均為2404。
規(guī)約類型選擇IEC104,通道類型為實(shí)時(shí)轉(zhuǎn)發(fā),并配置PCS 上位機(jī)作為服務(wù)端,配置對(duì)端第一IP 地址和第二IP 地址指向調(diào)控中心2 臺(tái)服務(wù)器。
綜上所述,通過(guò)DMZ 實(shí)現(xiàn)SCADA 系統(tǒng)和外部網(wǎng)絡(luò)的安全數(shù)據(jù)交互的設(shè)計(jì)已在中俄東線天然氣管道黑河壓氣首站投入運(yùn)行,主要用于中俄雙方輸氣生產(chǎn)數(shù)據(jù)的實(shí)時(shí)交換。該應(yīng)用數(shù)據(jù)傳輸快速、穩(wěn)定、可靠,安全性高,極大地方便了中俄雙方生產(chǎn)運(yùn)行人員對(duì)數(shù)據(jù)的實(shí)時(shí)監(jiān)控分析,安全保障了雙方生產(chǎn)控制系統(tǒng)。DMZ 服務(wù)器的數(shù)據(jù)中轉(zhuǎn)應(yīng)用完全自主開(kāi)發(fā),OPC UA與IEC104 之間協(xié)議轉(zhuǎn)換可根據(jù)實(shí)際需求高效對(duì)接,兼容性優(yōu)于直接部署不同品牌的協(xié)議轉(zhuǎn)換軟件。該方案的實(shí)際應(yīng)用,為OPC UA 和IEC104 之間的協(xié)議轉(zhuǎn)換應(yīng)用開(kāi)發(fā)提供了較為完善的實(shí)現(xiàn)方法,對(duì)今后SCADA 系統(tǒng)對(duì)外數(shù)據(jù)發(fā)布具有較高的參考價(jià)值,能夠?yàn)樾畔⒒腔酃艿涝跀?shù)據(jù)共享層面的建設(shè)提供一定的指導(dǎo)。