[摘要]:
隨著自動化技術(shù)的發(fā)展,以及國家對網(wǎng)絡(luò)安全的重視,申請公網(wǎng)的固定IP變得越來越困難了,那么如何實現(xiàn)用一臺固定IP的機器與多臺動態(tài)IP機器的通信呢,基于此種情況,紫金橋公司開發(fā)了一種新的連接方式,“逆向通信”技術(shù)來滿足廣大用戶的需求。利用該技術(shù)與“動態(tài)加點”功能的完美配合,用戶可以輕松指揮遠程的任何一臺工控機。也就是說,用戶可以坐在辦公室內(nèi)對目標機器進行建點、修改點、重啟目標機器、指揮更新文件等功能。
[關(guān)鍵詞]:紫金橋、逆向通信、組態(tài)軟件、動態(tài)加點、遠程建點、遠程更新、重新啟動
本文介紹的內(nèi)容如下:
1、逆向連接通信功能
2、動態(tài)加點功能
3、其它遠程指揮功能
逆向連接通信功能
一、解決的問題
數(shù)據(jù)源逆向通信解決的是客戶端與服務(wù)器端沒法直接建立連接的問題。我們舉例說明。如下圖所示,圖中上面的節(jié)點C為中心服務(wù)器,有固定IP;S1-Sn為前置數(shù)采機,IP地址為局部IP地址。

C作為中心服務(wù)器負責集中采集下面站點中的數(shù)據(jù)。C對外身份是服務(wù)器,但是在C與S1-Sn組成的節(jié)點中,C為數(shù)據(jù)的請求者,S1-Sn為數(shù)據(jù)的提供者,所以C為客戶端,S1-Sn為服務(wù)器端。
正常情況下,客戶端主動與服務(wù)器建立連接,然后向服務(wù)器發(fā)送數(shù)據(jù)請求,服務(wù)器根據(jù)請求信息響應(yīng)客戶請求。
但上述的情況是,客戶端地址是可得到的,而服務(wù)方的地址是未知的。 也就是客戶端得不到服務(wù)方的地址,但是客戶端地址對服務(wù)器是可見的。逆向連接就是為了解決該類問題而產(chǎn)生的。通過數(shù)據(jù)源的逆向鏈接方式,可以實現(xiàn)客戶端地址已知,服務(wù)方地址未知的數(shù)據(jù)庫間數(shù)據(jù)通信。
二、逆向通信原理
逆向連接是由服務(wù)器首先向客戶端發(fā)出連接請求,從而建立通信信道,客戶端再利用該信道向服務(wù)器請求數(shù)據(jù),服務(wù)端也是利用該信道回答相應(yīng)客戶請求。請求示意圖如下:

客戶端根據(jù)服務(wù)端的節(jié)點名稱來識別不同的服務(wù)方。服務(wù)器節(jié)點名稱是在數(shù)據(jù)源定義時指定的。
下面介紹逆向連接中數(shù)據(jù)源的配置,配置分為服務(wù)器端數(shù)據(jù)源配置與客戶端數(shù)據(jù)源配置。
服務(wù)器端數(shù)據(jù)源配置:
服務(wù)器端數(shù)據(jù)源配置如下圖所示。要啟動服務(wù)器向客戶端的逆向鏈接,要勾選下圖中的自動連接,并指定本地節(jié)點名稱。注意該名稱不要與其他服務(wù)器中指定的名稱相同。只有遠程數(shù)據(jù)源,且為網(wǎng)絡(luò)連接方式時才能在“高級選項”對話框中配置自動連接和指定本地名稱。本地名稱系統(tǒng)唯一,即該名稱與本機相關(guān)聯(lián),而不是跟數(shù)據(jù)源相關(guān)聯(lián)。
配置好客戶端與服務(wù)器端數(shù)據(jù)源后,數(shù)據(jù)庫間遠程數(shù)據(jù)庫連接就會自動建立。

客戶端數(shù)據(jù)源配置:
使用逆向連接,客戶端數(shù)據(jù)源的連接方式要指定為“逆向連接”,如下圖所示。使用逆向連接方式要指定服務(wù)方的節(jié)點名稱。該名稱就是服務(wù)器端配置的“本地節(jié)點名稱”。
注意:如果這里指定的“遠程節(jié)點名稱”與服務(wù)方的“本地節(jié)點名稱”不一致,將無法建立通信。

簡單應(yīng)用舉例
假設(shè):節(jié)點C的IP地址是192.168.0.101,S1-Sn節(jié)點沒有固定的IP地址。
此時,節(jié)點C要采集S1-Sn節(jié)點的數(shù)據(jù),那么在C中要配置若干代表S1-Sn節(jié)點的數(shù)據(jù)源,以便在數(shù)據(jù)庫點連接時使用。
具體操作步驟如下:
首先,我們在S1節(jié)點建立一個數(shù)據(jù)源,名稱為DS1,并建立兩個點DS1_A1、DS1_A2。 建立的數(shù)據(jù)源如下圖:

點擊“高級選項”按鈕,勾選“自動連接”,填寫“本地節(jié)點名稱”。

然后,在節(jié)點C建立一個代表DS1節(jié)點的數(shù)據(jù)源,連接方式選擇“逆向連接”(因為我們沒法填寫其IP地址,其地址對站點C是不可見的),輸入遠程節(jié)點名稱,該名稱是在客戶機端指定的“本地節(jié)點名稱”,如下圖:

最后,在節(jié)點C中的點組態(tài)內(nèi)建立A1、A2兩個點,并關(guān)聯(lián)節(jié)點S1中的點。如下圖:

到此,逆向連接通信的功能就介紹完了。
動態(tài)加點功能
動態(tài)加點:是指用戶可以在數(shù)據(jù)源通訊正常的情況下,對目標機器進行動態(tài)新建點、修改點、刪除點等操作,該操作不需要目標機器重新啟動軟件,直接可以進行數(shù)據(jù)采集。
注:該功能已經(jīng)被紫金橋公司包裝成向?qū)Х绞?,用戶可以通過向?qū)Э焖偕芍付c類型的動態(tài)加點功能。
下面簡單看一下如何通過向?qū)赡M點類型的動態(tài)加點功能畫面。
下圖是動態(tài)加點向?qū)У倪\行界面:

我們選擇“模擬點”,功能畫面選中“全選”復(fù)選框,點擊“下一步”,進入完成畫面,如下圖:

點擊“完成”按鈕,就可以在紫金橋開發(fā)環(huán)境中馬上看到剛剛生成的畫面。
生成后的畫面,運行效果如下圖:




其它遠程指揮功能
1、重新啟動目標計算機,重啟動可以讓紫金橋軟件自動運行。
2、重新啟動目標計算機中的紫金橋軟件
3、指揮更新目標計算機中的紫金橋軟件,包括工程畫面。
4、獲取目標計算機中正在執(zhí)行的進程列表(只包括:紫金橋軟件啟動的進程列表)。
5、獲取目標計算機的系統(tǒng)狀態(tài)。包括內(nèi)存,磁盤,CPU等占用情況等字段。