1. OPC UA客戶端/服務器模型
客戶端/服務器模型是OPC UA中標準的通信模型?;谶@樣一種思想:存在一個被動的服務器組件,該組件對所有客戶端的應用程序公開其數(shù)據(jù)。客戶端應用程序可以通過一些標準化的服務從服務器訪問數(shù)據(jù)和信息。
客戶端/服務器模型在客戶端/服務器架構下,客戶端要做的第一件事是實現(xiàn)與服務器的連接??蛻舳送ㄟ^一個連接地址(在此我們略過一些細節(jié)),將創(chuàng)建一個與服務器的會話通道。該會話包含一個安全的報文,其中包括可選擇的加密和身份驗證等參數(shù)——用于識別服務器中的客戶端應用程序和用戶是否匹配??蛻舳诉€可以識別服務器,并決定是否允許與該服務器通信。
會話建立之后,客戶端應用程序可以從服務器請求一些標準服務。這些服務包括:
1.連接并創(chuàng)建會話
2. 瀏覽地址空間——查找服務器上可用的內容
3.讀取-變量值或原始數(shù)據(jù)
4. 寫入-變量值或原始數(shù)據(jù)
5. 調用方法
6. 閱讀歷史信息-變量和事件
7. 關閉會話并斷開連接
所以最后,當客戶端完成需求時,它將關閉會話并斷開連接。
客戶端/服務器訂閱
客戶端/服務器模型內還包含一個訂閱模型。在這個模型中,每個客戶端可以創(chuàng)建任意數(shù)量的服務器訂閱(在此的訂閱為訂閱功能)。每個訂閱都可以包括變量、EventNotifier的MonitoredItems(具有EventNotifier屬性集的對象節(jié)點)。
客戶端/服務器模型內訂閱客戶端/服務器的優(yōu)缺點
客戶端/服務器模型已經成功地用于各種的SCADA場景中,當不同應用程序之間的連接數(shù)量不是很多時,它就會順利交互。但是如果有數(shù)十或數(shù)百個設備(即服務器)需要持續(xù)連接或類似數(shù)量的客戶端需要連接到任何服務器,可能會在資源配置方面遇到麻煩,因為每個連接和訂閱都需要內部維護,并且它們會在網(wǎng)絡中占用單獨的流量。
客戶端/服務器模型主要場景OPC UA的設計不是為了實現(xiàn)任何確定性的通信或不可靠網(wǎng)絡上的通信。但是它支持同步服務調用,接收即時結果或對操作指令的確認,這對應用程序非常重要。其安全性也很靈活,可以為每個應用程序和用戶定義規(guī)則,甚至為每個變量定義規(guī)則。
隨著OPCUA技術的應用范圍越來越廣,對OPCUA技術的更多需求也不斷增加。很多應用希望OPCUA能具備更多確定性通訊特性,或者具備更好的伸縮性。為了應對這類需求,OPCUA定義了Pub/Sub模型。下期我們深入討論Pub/Sub模型的技術詳情。
-
OPC
+關注
關注
7文章
317瀏覽量
45995 -
OPCUA
+關注
關注
1文章
25瀏覽量
2284
發(fā)布評論請先 登錄
相關推薦
評論