隨著計算機、通信技術的發展,以傳統經典控制理論為基礎的模擬控制系統、計算機控制系統正在快速向網絡控制系統演進,如何建立穩定、可靠、高實時、高保障的廣域控制控制網絡,對于輸油氣管線以及電力、水利等各類專網自動化控制系統至關重要。
當前石油天然氣管道輸送系統中建立SCADA網絡一般可以使用四種方案:光通訊系統直放直連通道、光通訊系統結合路由器與交換機、光通訊系統結合工業以太網交換機、工業以太網交換機直接組建光網絡。
目前第一種方案已被淘汰,光通訊系統直放直連通道方式缺乏使用靈活性,本地SCADA系統接口向以太網轉化這兩點決定了這一方式退出了主流系統。
國內近幾年建立的系統主要基于光通訊系統結合路由器與交換機,國外近年經常使用工業以太網交換機直接組建光網絡方式,兩種方案差異很大。這種差異主要起于設計指導要求,由于國內通訊網具有通訊業務需求,因此主干通道必須使用電信方案建立主通道,而國外的專線主要為SCADA系統服務,建立簡捷可靠的專用網絡,附帶提供語音、視頻傳輸服務。由于需求不同,組網技術的選擇就不同,一個來自電信,一個來自SCADA控制網的延伸。
根據國內專網的需求,在確保滿足通信業務的同時,借用工業以太網技術,使用光通訊系統結合工業以太網交換機方案來解決廣域SCADA組網需求成為一種折中的方案。這一方案與國內常規使用的光通訊系統結合路由器與交換機方案相比,有哪些技術優勢?以下加以說明。
以下將兩種方案分別簡稱為工業以太網、路由器。
在正式說明前,我們先明確廣域SCADA網絡的需求與特征,SCADA系統是一種集控體制,在站場外的廣域通訊中,只存在各站場與調度中心的通訊,站場間禁止互通,其邏輯拓撲相當于一個簡單的星狀結構,全網只有兩層,調度中心一層、站場一層。SCADA通訊需要高可靠,因此每個節點均提供一條以上的通訊鏈路,包括一條公網備用鏈路。
路由器方案使用時,先利用交換機解決本地數據交換,再通過路由器實現冗余通道下與調度中心的數據交換。
工業以太網方案,直接解決本地數據交換,再通過上鏈接冗余通道實現可靠的上連通訊。
在兩種方案中都基于二層交換實現本地交換,雖然工業以太網交換機在性能、可靠性方面均優于一般OA交換機,但是在系統中兩方案的主要差異在于多路徑選擇這一廣域組網要求上。
在說明兩種方案的差異前,有必要對一些基本技術概念作出澄清。
下文引自《Cisco路由器手冊》
路由器工作在O S I參考模型的網絡層(第三層),它完成路由功能,這種設備連接不同的網絡并且隔離廣播域, R o u t e r是依賴協議的。
交換機起初是多端口的橋,功能是隔離沖突域。第二層交換機已經代替了H u b,并且通過V L A N提高了性能和功能。第二代交換機將增強其第三層路由決定功能,這樣就可以完成一個路由器的功能。
橋接和路由
橋接這里用透明網橋討論,而源路由網橋( So u r c e -Route Bridging, SRB)正好相反,它更接近路由而不是橋接。橋接工作在O S I參考模型的數據鏈路層、對應的IEEE 802.3/802.5標準提供的M A C子層。路由在O S I參考模型的網絡層發生作用。橋把網絡看成一個單一的邏輯網,只要一次跳躍就可以到達目的地。路由能在異構網絡之間經過多次跳躍到達目的地,這樣就導致了路由和橋接有以下四個方面的顯著不同:
■ 數據鏈路報文的頭部與網絡層報文的頭部包含的信息不同。
■ 橋不用通過握手協議建立連接,而網絡層設備用這種協議。
■ 橋無需對同一個源的報文進行排序,而網絡層協議由于分段要進行排序。
■ 橋定義目標結點用M A C地址,網絡層設備,如路由器,用一個網絡層地址通過線路到達接入設備。
盡管在路由和橋之間存在這些不同,有些情況下橋會比路由器更能滿足需求,反過來也一樣。
橋與路由器相比,有以下的優勢:
■ 透明網橋具有自學習功能。因此,如果需要配置的話,配置也最小。路由器需要為每一個接口分配一個網絡地址,這些網絡地址在整個網絡上必須唯一。
■ 橋在處理報文時,比路由器處理更少的頭部信息。
■ 橋是協議獨立設備,路由器依賴協議。
■ 橋可以轉發所有的L A N協議,路由器用網絡層信息,因此只能轉發路由報文。
相反,路由器與橋相比,有以下的優勢:
■ 路由允許在源和目的之間選擇最佳路徑,橋只限定為一個特殊路徑。
■ 路由器通過在每一個路由結點,保持具有最新的、完全的網絡拓撲信息的路由表來路由,而橋保持一張連接到接口上的設備表,這樣就導致了橋學習網絡的速度慢于路由器,因此路由器可以提供高等級的服務。
■ 路由器利用網絡層地址,因此能把一個路由設備歸屬到一個區域內,從而建立分級的地址結構,這樣可以提高支持無限的底層結點;橋保持數據鏈路層的M A C地址,因此,它們不能被分組,也就導致了只能支持有限的底層結點。
■ 路由器通過阻止廣播到所有的接口,從而阻止了廣播風暴;橋擴展物理L A N段到多段,因此會轉發一個廣播到所有相連的L A N段。
■ 路由設備可以把大報文分段成小報文,從而可以分別選定相應的路徑,在傳送到終點前再重組成原來大小的報文。橋將把發送到本段的太大的報文丟掉,而不給發送方任何說明。
■ 當網絡阻塞時,路由設備通知發送方減慢發送的數據(阻塞反饋);而橋沒有這種能力。
交換
交換是指報文從接入接口到目的接口的這一過程。第二層交換利用幀中的M A C地址,第三層交換是利用幀中的網絡地址。
第二層交換本質上是透明網橋。在交換設備中保存一張表來映射M A C地址與相應的接口。這張表是通過檢查進入接口幀的源M A C地址而建立起來的。交換機的工作是檢查目標M A C地址,并且與交換表上地址相比較。如果找到了匹配,該幀就被發向相應的接口。如果某幀的目的M A C地址在交換表中沒找到,則交換機把此幀廣播到本交換機的所有接口上。返回幀允許交換機學習這個接口,從而把此M A C地址填入交換表。
M A C地址是由網卡(Network Interface Card, NIC)制造商預先定義的。制造廠將用I E E E唯一定義分配的號碼,給每一塊網卡一個唯一的制造號。這種方法最終保證唯一的M A C地址。
這些廠商的地址經常是指固化地址( Burned-In address, BIA)或者全球管理地址( U n i v e r s a l l yAdministered Address, UAA ),然而一些銷售商不顧U A A而用本地管理地址(L o c a l l y Administered Address, LAA),第二層交換的網絡是平面結構。
相比較來說,第三層交換本質上是完成路由器功能。第三層交換設備與第二層設備一樣建立一個交換表,不同的只是前者入口映射的是網絡層地址,而后者是接口。在物理網上,既然網絡層地址被分配了一個邏輯連接,利用第三層交換就可以建立一個層次結構。當報文進入第三層交換的接口時,源網絡層地址被存儲在表內,在表中接口和網絡層地址相互參照。交換機利用它們,分隔廣播域和網絡拓撲結構表來決定最優路徑。
組合第二層交換與第三層交換于單一設備中,這樣就減少了路由器的負擔,使得路由從一個地點到另一個地點的報文變得簡單,如圖3 - 4所示。由于由硬件決定交換,從而提高了吞吐率,降低了C P U在路由器的工作,并且清除了源地址與目標地址之間的跳躍數。圖3-4 第二層和第三層組合的交換和Cisco的路由器
之所以引用以上章節是因為,這段文字扼要的概括了工業以太網方案與路由器方案的主要技術特征與優劣比對,當然工業以太網交換機由于自身技術特性的不同,與上文所述的常規交換機相比有相當的差異,使工業以太網交換機的實際使用性能得以優于路由技術,下文將加以具體解釋。
上文首先清楚地說明了,不論是二層交換機還是路由器都具有路徑選擇能力,而第二層交換適于平面結構。事實上,三層能做到的冗余方式,二層交換都可以做到。由于交換機被視作一種橋,我們就引用橋的技術比對加以逐條說明:
橋與路由器相比,有以下的優勢:
■ 透明網橋具有自學習功能。因此,如果需要配置的話,配置也最小。路由器需要為每一個接口分配一個網絡地址,這些網絡地址在整個網絡上必須唯一。
交換機在網絡管理中具備簡單的結構,更容易管理。
■ 橋在處理報文時,比路由器處理更少的頭部信息。
交換機端口時延小于路由器,工業以太網交換機的端口時延更遠小于普通交換機,路由的時延是ms級的,工業以太網交換機是us級的。
■ 橋是協議獨立設備,路由器依賴協議。
路由器有協議處理時延,這近一步拉大了與工業以太網交換機在這一指標上的性能差距。
■ 橋可以轉發所有的L A N協議,路由器用網絡層信息,因此只能轉發路由報文。
控制系統中實際存在大量的專用協議,這些協議與LAN協議完全兼容,沒有理由限制使用這些協議。
相反,路由器與橋相比,有以下的優勢:
■ 路由允許在源和目的之間選擇最佳路徑,橋只限定為一個特殊路徑。
這是正確的。但是,在專網確定性的通訊鏈路條件下,實時選擇最佳路徑是沒有價值的,實際上,冗余路徑的優先等級是由設計方給出要求,并付諸實施的,所謂的最佳路徑不依賴路由去計算。相反為取得所謂的最佳路徑需要花費時間完成計算,這種冗余切換上的時間開銷不但是無意義而且是有害的,甚至可以不客氣地歸之為安全隱患!比如,若在某些事故(如水擊、輸油機組聯鎖故障等)發生同時,SCADA通信信道也需要倒換,則因倒換時間的不確定,很可能延遲生產工況安全聯鎖保護的可靠執行,進而釀成重大事故。
以路由器協議中收斂時間較快的OSPF協議為例(以下文字應引用于:《Cisco路由器手冊》)
路由是把報文從一個網絡轉發到另一個網絡的過程。路由是由源網絡的設備―路由器根據特定路由協議的度量標準決定的,路由協議能夠用以下度量標準的幾種或全部來決定到目的地的最好路徑。
■ 路徑長度。
■ 可靠程度。
■ 延遲。
■ 帶寬。
■ 負載。
■ 通信代價。
路徑長度可以用代價或跳躍數來衡量,在鏈路狀態路由協議中,花費是指這條路徑上每一段鏈路的花費之和。距離向量路由協議給路徑長度指定一個跳躍數,用來衡量從源端到目的端一個報文所要通過的路由器個數。
衡量一個鏈路連接的可靠性,典型情況下是用連到源端或目的端之間路由器的位出錯率來衡量。對于大多數的路由協議,一個鏈路的可靠程度可以由網絡工程師指定,正是由于它可以人為指定,所以可以改變或創建一些優于其他路徑的通路。
延遲是指一個報文經過所有網絡設備、鏈路和所有路由器的隊列所花費時間的總和。此外,在估計延遲時間時,還要考慮網絡阻塞和從源端到目的端的距離等因素。由于延遲值考慮了許多變量,在最優路徑計算時延遲是一個有影響力的度量標準。
利用帶寬作為度量標準計算最優路徑時可能產生誤導,盡管一個1 . 5 4 4 M b p s的帶寬優于5 6 K b p s,但由于當前1 . 5 4 4 M b p s鏈路的利用率高,或者鏈路終端接收設備負載重,它可能并非最優路徑。
負載是依靠所有資源利用情況來給網絡資源分配一個值,這個值由C P U利用情況、每秒報文的通過情況和報文的分拆組裝情況及其他一些情況合成而定。但是監控設備資源本身就是一個重負載的加工過程。
在一些情況下,對于公共網通信鏈路是按利用率或直接按月收費,例如I S D N鏈路是以所用時間和在此時間上的數據傳輸量來記費。在這些例子中,通信花費在決定最優路徑上成為一個重要因素。
在設計一個基于協議的路由網絡時,設計路由算法要具有以下特性:
■ 最優( O p t i m a l i t y):為了計算出最優的路由,對于一個路由協議就要考慮用幾種或全部的度量標準。不同的路由協議也許提供某種不同的度量標準作為更重要的衡量標準,用此值來衡量最優的路由,了解這些對選擇路由協議至關重要。
■ 簡單(S i m p l i c i t y):盡管路由協議本身也許很復雜,但它們的實現和操作必須簡單。路由器開支和高效利用路由器資源是保持網絡穩定和可靠的重要方面。
■ 強壯( R o b u s t n e s s):網絡設計要選擇能夠適應需要的路由算法。在某些情況下,例如對于小網絡,一個簡單的距離向量路由就足夠了;然而對于大的網絡就需要層次式路由協議,需要協議具有變規模能力。因而在網絡上,網絡的大小將不成為阻礙其發展的因素。
■ 快速收斂(Rapid Converg e n c e):為達到網絡實用性和服務等級的要求,收斂時間所用的重計算時間和重新在源端和目的端之間建立最優路徑,成為重要的考慮因素。
■ 靈活性(F l e x i b i l i t y):被選中的路由協議所使用的算法必須是靈活的,并且能夠適應網絡資源的動態變化和適用于整個網。
從上文可以明確了解,無論那種路由協議均需要通過實時測算,測出所連接鏈路的通斷、可用率,并根據實時計算的結果求得新通訊路徑。其中影響最終恢復速度的因素包括,鏈路監測、實時計算、重建鏈接,由于鏈路監測取決于設計規劃和網絡條件,涉及太多非確定因素,在比較中假設即時發現。那么最終系統的收斂時間就作為我們比較的重點。
開放式最短路徑優先( O S P F)協議是一個基于標準的鏈路狀態路由協議,它是由I n t e r n e t工程任務組( I E T F)O S P F工作組定義發布在R F C(Request for comment)1 2 4 7內。O S P F是以自治系統(autonomous system, AS)為基礎。O S P F定義的A S是指在用鏈路狀態協議時,交換路由信息的一組路由器。O S P F用于層次結構的網絡。定義層次需要定義出表示O S P F區域和地址分配的邊界。
O S P F算法在網絡拓撲變化后用泛洪技術通知鄰居。鄰居越多,對C P U的要求越高。這是因為新路由必須重新計算,并且要發向所有連接的鄰居。C i s c o通過研究得出結論:與一個O S P F路由器連接的鄰居不要超過6 0個。
O S P F是在路由器內為一個定義的特定區域利用鏈路狀態算法來進行重計算的。區域路由器通常是指區域邊界路由器( Area Border Router, ABR ),這種路由器在O S P F網中對兩個O S P F區域支持、保留兩個路由表。一般情況下,對于A B R來說,要連接兩個最小的區域:一個主干區和一個非主干區。O S P F建議一個路由器支持的區域數限制在3以內,這樣可以最小的占用計算和發布鏈路狀態更新的資源。
以上文字明確指出限制專網SCADA網絡使用OSPF路由方案的技術問題,由于路由方案中多個場站的通訊鏈路疊合在調度中心路由器上,且因輸油場站廣域分布,部分場站通信有可能分屬主備不同信道傳輸,因此不能將網間分割成多區域,這對路由器的計算資源是一種考驗。實際上,專網冗余鏈路路由方案在形成疊加環結構后處于對OSPF收斂最不利的狀態,網絡既不能使用分區降低計算負荷,也不能利用簡單環路降低鏈路數目,優化計算。我們知道,CISCO給出的路由收斂計算時間指標是,三路由器成環,約在3秒內完成重構,那么四交換機會用多久?只能知道會大于3秒,如果有三個以上的疊加環呢?沒有明確答案,但我們可以從相關事件推測,中國電信的一臺核心路由實效,一個城市的區域斷路持續兩小時;香港地鐵系統的任一路由器失效,至少斷路一分鐘,該系統的鏈路結構均比當前輸油氣管道SCADA控制專網三鏈路冗余簡單。從案例可知,一旦發生涉及路由器的斷點、丟失連接故障,SCADA網絡會癱瘓一分鐘到一小時,具體時間不可預測,其可能帶來的連鎖反應難以評估。
工業以太網方案與使用OSPF協議的路由器方案相比,不存在區域分割問題,其全網均使用局部監測及恢復設置,不涉及全系統倒換鏈路問題,可以取得一致的收斂時間,一般均小于1S,兩相比較,工業以太網方案優勝。路由方案改善性能的唯一方法是,增加中心的路由器數目,增加鏈路數目,但這樣的設計缺乏成本、可靠性的對比可能性。
OSPF收斂性
由于O S P F是基于鏈路狀態的路由協議,當網絡拓撲變化時,它可以快速調整。O S P F檢測拓撲變化是通過接口狀態,或者在一個給定的時間內沒有收到所連接的鄰居的一個響應OSPF HELLO報文。O S P F在一個廣播的網內(如L A N)定義的缺省時間為4 0 s,對于非廣播網(如WA N)定義的缺省時間為2 m i n。
當路由器發現了一個鏈路失效,并且向一個區域內的所有路由器發送鏈路狀態報文,然后路由開始重計算,這時每一個路由器都要計算它路由表中的所有路由。
工業以太網交換機的MAC地址表的缺省周期與之相當,但最低可在10S內強制的周期性刷新MAC地址,也就是說,即使不采取任何快速冗余技術,僅使用鏈路監測系統也可以在10秒內實現通訊重構。
兩相比對,無論哪方面看,工業以太網交換機的收斂速度都回快于同樣要求的路由器方案。
■ 路由器通過在每一個路由結點,保持具有最新的、完全的網絡拓撲信息的路由表來路由,而橋保持一張連接到接口上的設備表,這樣就導致了橋學習網絡的速度慢于路由器,因此路由器可以提供高等級的服務。
這一點,在電信業務或大型OA網絡中才會成立,在SCADA網絡中是不成立的。SCADA網絡只有兩層,SCADA系統中的網絡設備是持續運行的,沒有什么學習問題。工業以太網交換機沒有這一問題,因為工業控制的高可靠要求,當發生網線掉線類型連接故障時,需要即時刷新交換機地址表,以赫斯曼的現場工業交換機為例,其交換機帶負載掃描周期為2.5ms,當使用工業以太網交換機實施冗余切換時,同樣使用這一技術保障整個冗余切換過程的穩定實現。
■ 路由器利用網絡層地址,因此能把一個路由設備歸屬到一個區域內,從而建立分級的地址結構,這樣可以提高支持無限的底層結點;橋保持數據鏈路層的M A C地址,因此,它們不能被分組,也就導致了只能支持有限的底層結點。
所謂只能支持有限的底層結點,指的是在電信網絡中由于用戶規模不斷擴張,其網絡邊界不可預測,而橋不適合這種無限擴張的網絡。但在SCADA網中由于設計規模是有限的,在結構上沒有無限擴展層級的需要,一般均有確定的網絡層次,那么所謂有限的節點數對SCADA網不是問題,因為我們可以在設計時確定,我們需要三級、四級還是更多級的網,需要100、1000還是數千個節點,這樣的明確性網絡完全可以使用橋來連接。
■ 路由器通過阻止廣播到所有的接口,從而阻止了廣播風暴;橋擴展物理L A N段到多段,因此會轉發一個廣播到所有相連的L A N段。
交換機中使用VLAN可以達到類似的功能,加上工業以太網交換機具備的端口廣播流量限制器,可以有效控制廣播風暴問題的危害。
■ 路由設備可以把大報文分段成小報文,從而可以分別選定相應的路徑,在傳送到終點前再重組成原來大小的報文。橋將把發送到本段的太大的報文丟掉,而不給發送方任何說明。
SCADA網絡中傳輸的是各種長度的幀不存在這種問題。
■當網絡阻塞時,路由設備通知發送方減慢發送的數據(阻塞反饋);而橋沒有這種能力。
當前工業以太網交換機已同樣具有流控機制。
從以上分析可以看出,工業以太網方案在SCADA廣域網應用中的全部優劣比對中沒有一項差于路由器方案。有關鍵的優勝點--時延,包括端口時延、處理時延、路徑選擇時延。由于這些設計用于SCADA系統,而作為工業應用,傳輸系統的總時延越小越好,這是一個關鍵的性能指標。而且工業以太網交換機還為SCADA運用提供了更多的附加功能,如時鐘同步等。因此,無論性能、可靠性、功能等各方面比較,工業以太網方案均優越于路由器組網方案。
兩種技術方案的主要系統特征比較:
|
|
工業以太網 |
路由加交換機 |
可靠性 |
|
高 |
一般 |
故障點 |
|
少 |
多 |
可接觸性 |
|
好 |
一般(需要專業知識) |
維護性 |
|
好 |
一般 |
端口時延 |
|
低 |
高 |
|
4.5us |
總計大于5ms | |
鏈路切換時延 |
|
低&穩定 |
高&不穩定 |
|
<500mS |
>3S(OSPF),多網絡疊加時會>60S甚至更為不確定 |
作為SCADA系統技術的領先行業,當今電力行業除各省網使用調度機、各大電網間使用MSTP加路由解決互聯問題外,在需要高實時保障的基層SCADA,比如電力綜保、在變電站內繼保應用中,近年來均已全面轉為使用工業以太網交換機或簡單HUB組網,在直控層次中不使用路由器,僅在系統管理層面引入路由方式。
2003年6月份,國際IEC協會遠動專委會TC57通信專業向全球頒布了一個重要的最新國際標準:IEC61850變電站自動化通信網絡和系統標準。該標準亦明確認為SCADA系統的數據經網關機和中間通信控制器才能送到主控計算機會破壞系統的實時性、透明性,因此IEC61850對自動化SCADA系統網絡結構提出了如下建議方案:
SCADA系統的三層結構間均采用以太網直接通訊,監控站與本站過渡設備及一次儀表之間用局域網聯接,不設中間網關機。新型控制網絡結構圖示如下:
但筆者認為,長輸管道自動化行業在引入該標準時尚不宜完全遵循該結構。因為同比電力通信網絡建設的環網甚至網格網的建設優勢,管道通信網絡一般仍為單一的線性鏈狀結構,對于需要主備信道的SCADA網絡,若完全舍棄網關機,則主備信道的多路經倒換將難以控制和實現,因此,筆者認為,采用具備鏈路監測發現的工業以太網交換機分布式組網,應是更為符合新型長輸管道SCADA系統需要的方式。
綜上所述,筆者認為,當前管道SCADA系統建設應盡快向全面工業以太網結構轉型。