《電子技術應用》
您所在的位置:首頁 > 電源技術 > 設計應用 > 一種分布式SCADA消息中間件設計方案
一種分布式SCADA消息中間件設計方案
2016年電子技術應用第3期
史耀政1,庫流亨2
1.呼和浩特鐵路局,內蒙古 呼和浩特010020;2.華北計算機系統工程研究所,北京100083
摘要: 隨著分布式SCADA系統在鐵路牽引供電應用的不斷推廣,SCADA系統節點之間以及與其他異構系統之間進行消息數據傳遞面臨著效率降低、接口不統一等問題。針對此問題,提出一種基于發布/訂閱模式的分布式SCADA消息中間件的設計方案,該方案使用了N-Tree結構將系統消息進行邏輯區域劃分,設計了一套完善的消息傳遞與反饋處理機制,方案中利用Quorum-Based改進型算法確保了分布式節點的消息一致性。實踐及仿真實驗證明,本方案提高了SCADA系統的消息傳遞效率,降低了分布式系統的運行負載和通信開銷。
中圖分類號: TP274+.2
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.03.024
中文引用格式: 史耀政,庫流亨. 一種分布式SCADA消息中間件設計方案[J].電子技術應用,2016,42(3):84-86.
英文引用格式: Shi Yaozheng,Ku Liuheng. A design scheme of distributed message middleware for SCADA system[J].Application of Electronic Technique,2016,42(3):84-86.
A design scheme of distributed message middleware for SCADA system
Shi Yaozheng1,Ku Liuheng2
1.Hohhot Railway Bureau,Hohhot 010020,China; 2.National Computer System Engineering Research Institute of China,Beijing 100083,China
Abstract: With the development of distributed SCADA system in railway traction power supply application, the data transfer between nodes in SCADA system and other heterogeneous systems is faced with the problems such as lower efficiency, and the interface is not uniform. Aiming at this problem, this paper proposes a design scheme of distributed SCADA message oriented middleware based on publish / subscribe model. The scheme uses the N-Tree structure to divide the system message into a logical area, and designs a set of perfect message passing and feedback processing mechanism. In the scheme, the Quorum-Based algorithm is used to ensure the consistency of the distributed nodes. Practice and simulation experiments prove that this scheme improves the message passing efficiency of SCADA system, and reduces the running load and communication overhead of the distributed system.
Key words : SCADA;Quorum;distributed system;middleware

0 引言

    數據采集與監視控制(Supervisory Control And Data Acquisition,SCADA)系統在鐵路牽引供電及其他工業控制系統領域占據著重要地位,可以對現場的運行設備進行實時數據監視和控制,實現數據采集、設備控制、測量分析、參數調節以及各類信號報警等功能。隨著分布式技術在SCADA系統中應用的不斷推廣,SCADA系統各個子系統之間以及與其他異構系統之間的消息傳遞變得更加復雜化、多樣化[1]

    本文針對分布式環境下SCADA系統復雜的應用場景,提出了一套高效可靠的分布式消息中間件設計方案。該方案采用N-Tree結構[2]對分布式系統節點進行消息區域劃分,各個子區域的消息根據應用需求進行收集和傳遞。系統采用經典的Publisher-Subscriber(發布/訂閱)模式設計,產生消息的節點稱之為Publisher(發布者),獲取并處理消息的節點稱之為Subscriber(訂閱者)。訂閱者首先需要對特定的消息區域進行“消息訂閱”,發布者會自動將訂閱的消息推送到各訂閱節點。

    系統采用了特殊設計的分布式一致性算法,確保系統中分布式節點之間的消息一致性和完整性,同時提高了分布式消息訪問的效率。本文將重點描述消息分發系統設計和分布式一致性算法設計。

1 分布式SCADA系統

    SCADA系統在鐵路電氣化遠動系統上的應用較早,近些年來隨著中國鐵路的迅猛發展,也帶動了鐵路電氣化遠動系統向更高的目標發展。當前我國SCADA系統發展處于第三階段,即基于分布式計算機網絡以及關系數據庫技術的、能夠實現大范圍聯網的SCADA系統[3]

    一個典型的鐵路供電調度SCADA系統結構圖如圖1所示。

ck5-t1.gif

    圖中每一個方框僅標示了一種分布式SCADA系統功能角色,在實際的SCADA系統中,每一種系統角色一般均對應了多臺分布式計算機節點。每一個系統節點根據實際應用情況的不同負責相應的計算任務,完成各自所屬角色的功能。

2 消息分發系統設計

    (1)角色分類

    在分布式SCADA系統中,按照消息的收集與分發功能的不同,劃分為兩種角色:消息供應者與消息訂閱者。

    消息供應者負責按照N-Tree結構對系統中的消息進行區域劃分,并注冊、收集指定區域的消息,主動推送給訂閱節點或者等待消息訂閱者查詢。消息訂閱者則根據實際應用需求,通過指定機器節點名、區域名去“訂閱”消息內容,在消息訂閱時可以指定是否需要由消息供應者主動推送。

    (2)消息分類與確認

    按照消息緊急程度的不同,可以劃分為兩大類消息:緊急消息和一般消息。這兩大類消息都可以根據實際應用需求的不同來劃分應用子類,其區別在于:緊急消息具有“告警”和“正常”兩種狀態且需要消息訂閱者進行“確認”,而一般消息則沒有狀態區分且不需要被確認。

    (3)消息緩存與傳遞

    系統針對不同類型消息的應用特點,設計了兩種緩存方式:“鏈式隊列”緩沖和“環形隊列”緩沖。對于重要程度較高的且需要等待確認的緊急消息,則應采用“鏈式隊列”緩沖模式,確保消息不會丟失;對于一般性消息則可以采用“環形隊列”緩沖模式,在極端情況下早期的消息可能會丟失,但同樣保證了最新的消息被緩存。

    系統中每一個節點均需要維護自己的消息緩沖區和消息訂閱需求列表,消息節點之間的通信采用TCP/IP網絡傳輸。消息訂閱與傳遞遵循以下步驟:

    (1)消息訂閱者將訂制的消息請求(包括指定優先級、消息區域等)傳遞給消息供應者進行“訂閱”操作;

    (2)消息供應者維護自身節點和遠程節點的消息訂閱請求,當產生新的消息時,根據消息訂閱請求進行篩選;

    (3)消息訂閱者的消息緩沖區中的內容得到更新,可以根據應用需求定制后續行為(例如報警、打印、存庫等)。

    消息分發系統模型見圖2。

ck5-t2.gif

3 分布式一致性算法

    本文提出采用基于“Quorum-Based算法”[4]與消息區域模型相結合的機制,對分布式消息中間件的數據一致性做出保證。這里采用的方案能夠保證分布式SCADA系統中的消息緩沖數據“最終一致性”,而不是滿足“強一致性”。所謂“強一致性”指的是當消息訂閱者對系統消息進行獲取或確認時,必須檢查或更新相關節點的所有消息副本狀態是否一致,只有保證所有消息副本狀態一致才能完成讀寫操作。而最終一致性的概念是:在每次獲取或更新數據狀態時,并不保證所有節點上的數據副本均保持一致,而是根據設定的策略保證部分數據是最新的,剩余不同步的副本則由系統內部負責自行同步,系統保證在沒有后續更新的情況下最終返回上一次更新的最新狀態。

    由于本文設計的分布式一致性算法不屬于強一致性算法,且經過了特殊優化,因此系統工作的效率較高,且能夠確保分布式SCADA系統的數據一致可靠性。本文設計的分布式一致性算法描述如下:

    (1)系統中每一個消息區域的消息供應者(總數量V)均可以對訪問(讀)操作和確認(寫)操作進行授權許可,每次授權尚未完成的情況下不可重復授權其他操作,防止出現讀寫沖突的情況;

    (2)每一次消息訪問(讀)操作必須獲得Vr個節點授權許可才能進行,同樣,每一次消息確認(寫)操作必須獲得Vw個節點授權才能進行;

    (3)系統中各項操作的授權許可數量滿足如下關系:

    ck5-gs1-3.gif

    式(1)表示一次讀操作所需授權數與一次寫操作所需授權數之和應該大于系統授權總數,這樣可以保證同一份數據拷貝不會發生并行讀寫的情況,因為一旦讀操作獲得了授權,就不可能存在足夠的寫操作授權了,反之亦然。式(2)表示一次寫操作必須獲得半數以上的授權,確保同一份數據拷貝不會同時被2個及以上請求修改,這樣就能保證系統數據寫入的串行化和一致性。式(3)屬于優化的可選策略,表示一次讀操作所需授權數應當盡可能小,以提高系統數據訪問效率。

    圖3中給出了本系統中描述的分布式SCADA系統消息供應者與消息訂閱者之間的訪問關系。

ck5-t3.gif

    在圖3中,消息供應者會對某個消息邏輯區域提供訂閱功能,而這樣的節點一般可以存在多個,提供相同消息區域供應的多個節點構成了分布式節點群集。當消息供應者需要訪問或確認某區域消息時,需要遵循本文描述的分布式一致性算法規則。而SCADA系統中的消息區域狀態與各消息供應者之間的同步,則由系統在操作完成后自動進行。

4 實踐結果分析

    本文利用GT-ITM提供的Transit-Stub(TS)模型[5],構建一個分層結構網絡對此消息中間件進行性能測試。

    仿真系統根據鐵路SCADA系統實際應用需求劃分角色區域,每個區域有多個系統節點。假設消息供應者每200 ms新增一條消息,每條消息為128 B的數據包,每一個消息訂閱者都訂閱所有區域消息以模擬最大負載情況。通常,服務器節點既充當消息供應者又充當消息訂閱者。仿真實驗測試在不同應用規模下的系統負載情況。實驗結果如表1所示。

ck5-b1.gif

    從表1中可以看出,相同消息供應者的情況下,消息訂閱者數量的增加會導致網絡吞吐量線性增長,但是增量不會呈現倍數關系。這說明本方案的設計有效地降低了相同節點上多個消息訂閱者的消息傳遞負載。消息供應者數量的增加會使得網絡吞吐量和CPU負載呈現比率上升趨勢,這是因為消息供應者需要維護和更新各消息訂閱者隊列,實時推送消息內容。當消息供應者和消息訂閱者的數量按照同等規模擴大時,系統表現出穩定的線性增長趨勢。這表明系統能夠穩定有效地控制分布式消息傳遞,具有良好的運行效率。

5 結束語

    本文針對鐵路牽引供電SCADA系統中消息傳遞效率較低、接口復雜不統一的問題,設計并實現了一套通用的消息中間件方案。該方案對系統角色、消息內容進行區域劃分,對消息傳遞的機制進行了改進,利用Quorum-Based改進算法確保了分布式節點之間的消息一致性。仿真實驗及實踐結果表明,本方案設計的消息中間件能夠適應不同規模的SCADA系統應用,具有良好的可靠性和運行效率。

參考文獻

[1] 張平.我國高速鐵路牽引供電SCADA系統的分析與探討[J].鐵道建筑技術,2010(4):72-74.

[2] Chris Gauthier Dickey,Virginia Mary Lo,Daniel Zappala.Using n-trees for scalable event ordering in peer-to-peer games[C].Proceedings of NOSSDAV,2005.

[3] 崔瑞超.淺談中國高速鐵路的發展[J].新課程學習(學術教育),2010(10):30-31.

[4] 熊庭剛,盧正鼎,張家宏,等.基于Quorum系統的分布式訪問控制框架研究[J].計算機科學,2010(5).

[5] CALVERT K,EAGAN J,MERUGU S,et al.Extending and enhan-cing GT-ITM[C].Proc of ACM SIGCOMM Workshop on Models,Methods and Tools for Reproducible Network Research,2003.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
韩国美女久久| 亚洲天堂黄色| 国产女同一区二区| 国产精品magnet| 欧美日韩色婷婷| 欧美三级乱人伦电影| 欧美日韩国产成人高清视频| 欧美激情偷拍| 欧美了一区在线观看| 欧美男人的天堂| 欧美日韩二区三区| 欧美日韩精品一区二区| 欧美日韩四区| 欧美特黄a级高清免费大片a级| 欧美日韩国产区| 欧美日韩在线播放三区四区| 欧美视频在线观看视频极品| 国产精品国产自产拍高清av| 国产精品视频一二三| 国产精品日韩专区| 国产人成精品一区二区三| 国产一区二区毛片| 伊人春色精品| 亚洲人成网站在线观看播放| 99天天综合性| 亚洲一区二区三区三| 欧美亚洲视频在线观看| 久久国产欧美精品| 亚洲精品美女在线观看播放| 夜夜爽99久久国产综合精品女不卡| 亚洲色图制服丝袜| 性视频1819p久久| 久久久国产91| 欧美电影在线| 欧美色另类天堂2015| 国产精品专区第二| 激情另类综合| 日韩一区二区精品葵司在线| 亚洲尤物在线视频观看| 欧美一区国产在线| 亚洲精品亚洲人成人网| 亚洲天天影视| 欧美在线91| 欧美成人蜜桃| 国产精品久久久久永久免费观看| 国产日本亚洲高清| 亚洲第一区在线观看| 日韩视频免费| 欧美一区二区| 日韩一级二级三级| 羞羞色国产精品| 欧美成ee人免费视频| 国产精品扒开腿爽爽爽视频| 国产网站欧美日韩免费精品在线观看| 伊人男人综合视频网| 99国产精品视频免费观看| 欧美有码视频| 99人久久精品视频最新地址| 午夜精品国产精品大乳美女| 麻豆精品一区二区av白丝在线| 欧美日韩四区| 在线不卡视频| 亚洲综合视频一区| 亚洲精品视频免费在线观看| 午夜国产不卡在线观看视频| 欧美va日韩va| 国产免费亚洲高清| 亚洲精品视频一区二区三区| 午夜日韩激情| 国产精品99久久久久久宅男 | 国产欧美视频一区二区| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲一区二区三区久久| 亚洲乱亚洲高清| 久久一日本道色综合久久| 国产精品99免费看| 亚洲国产高清在线| 午夜精品久久久99热福利| 99精品视频免费观看| 久久亚洲捆绑美女| 国产精品亚洲美女av网站| 亚洲国产精品成人一区二区| 欧美一区二区三区免费大片| 亚洲一区二区三区在线视频| 免费日韩av电影| 国产一区在线视频| 亚洲一区二区伦理| 亚洲桃色在线一区| 欧美韩日精品| 在线精品视频免费观看| 欧美在线综合视频| 欧美影院成年免费版| 欧美日韩一区二区欧美激情 | 一本色道久久综合一区 | 欧美精品一区二区三区四区| 黄色成人小视频| 午夜激情亚洲| 亚洲欧美日韩系列| 欧美日韩中文字幕精品| 亚洲人久久久| 亚洲免费av网站| 欧美激情第10页| 亚洲国产专区校园欧美| 亚洲国产精品99久久久久久久久| 久久精品亚洲一区二区三区浴池| 国产乱码精品一区二区三区不卡| 亚洲视频欧美在线| 亚洲伊人久久综合| 国产精品magnet| 99精品99久久久久久宅男| 一本色道久久综合狠狠躁的推荐| 欧美国产高清| 亚洲人成人一区二区三区| 亚洲美女av黄| 欧美精品三级在线观看| 亚洲欧洲在线视频| a91a精品视频在线观看| 欧美噜噜久久久xxx| 亚洲精品久久久久久久久久久久久 | 久久久免费精品| 国产亚洲欧美一区在线观看| 亚欧成人在线| 久久综合色综合88| 在线精品视频免费观看| 91久久亚洲| 欧美激情视频一区二区三区在线播放 | 日韩视频一区二区三区在线播放免费观看| 亚洲精品在线免费| 欧美绝品在线观看成人午夜影视| 亚洲欧洲日韩在线| 一本一本久久a久久精品综合妖精| 欧美日本在线观看| 一本久久a久久精品亚洲| 亚洲一区二区三区四区中文| 国产精品萝li| 性欧美xxxx视频在线观看| 久久久精品国产一区二区三区 | 亚洲欧美精品中文字幕在线| 国产精品亚洲人在线观看| 亚洲欧美综合国产精品一区| 久久久久国产精品厨房| 亚洲第一成人在线| 一区二区三区你懂的| 国产精品久久久一区二区三区| 午夜影视日本亚洲欧洲精品| 另类亚洲自拍| 日韩亚洲欧美综合| 欧美在线一二三四区| 狠狠色狠狠色综合| 一区二区三区 在线观看视频 | 国产欧美日韩一区二区三区在线| 久久av红桃一区二区小说| 另类亚洲自拍| 99www免费人成精品| 性亚洲最疯狂xxxx高清| 激情亚洲一区二区三区四区| 99re这里只有精品6| 国产精品稀缺呦系列在线| 亚洲高清视频一区| 欧美日韩免费观看中文| 性欧美1819sex性高清| 欧美高清在线一区| 亚洲一区美女视频在线观看免费| 久久一区二区三区国产精品| 亚洲人成网站在线观看播放| 欧美一区二区三区精品| 亚洲国产1区| 欧美一级二级三级蜜桃| 亚洲大胆女人| 香蕉免费一区二区三区在线观看| 激情六月婷婷久久| 亚洲一区二区视频| 国内精品视频666| 亚洲午夜一区二区| 一区三区视频| 午夜精品免费视频| 亚洲国产欧美一区| 欧美一级片在线播放| 亚洲国产mv| 久久成人18免费网站| 亚洲美女福利视频网站| 久久久久久久性| 中文久久乱码一区二区| 欧美va亚洲va国产综合| 亚洲综合日韩在线| 欧美日韩国产精品| 久久精品人人做人人综合| 国产精品久久久| 亚洲精品小视频| 国产一区二区三区四区在线观看| 国产精品99久久久久久人| 伊甸园精品99久久久久久| 欧美一区二区三区免费观看视频 | 亚洲一二三区在线| 欧美欧美天天天天操| 久久精品二区亚洲w码| 国产精品免费小视频| 日韩亚洲精品视频| 精品电影一区| 久久成人精品一区二区三区|