栗聯盟 吳向軍 張經緯
(武漢數字工程研究所 武漢 430205)
隨著海軍信息化時代的來臨,戰斗力評估模式也發生變化,在具有高性能的艦載武器的同時,如何合理的調度和利用這些武器裝備,提高艦船的作戰能力是各國海軍非常重視的地方[1]。艦船上的裝備系統復雜多樣,每種系統的物理布局、布線相互獨立,可能會造成前期部署的工作量增大;各個系統間運行的協議技術可能不同,對運維人員技術要求高多[2]。如何實現將艦船中各個系統集成到一起,進行統一的資源調度、信息交互、指令響應,以滿足全艦各業務的傳輸需求,并實現資信息充分共享、物理布局合理、管理維護簡單、應用服務便捷是艦船一體化網絡的目標[3]。
SDN 網絡數控分離,具有良好的擴展性,能夠很好地適應未來復雜多變的網絡環境和實時可靠的網絡需求[4]。以SDN 網絡為核心的艦船一體化網絡架構可以滿足未來艦船上對于網絡資源的要求[5]。
艦船網絡的子網主要有艦船作戰網、艦船通信網以及艦船平臺網等[6]。由于艦船網絡的各個子網之間的功能目的通常不同,所以它們之間往往存在著很大的差異,因而這些不同子網之間的通信調度及資源高效利用需要通過艦船網絡的一體化設計完成[7]。
艦船網絡一體化包括五個方面即:設施一體化、技術體制一體化、管控一體化、業務一體化和服務一體化。五個一體化包含了在設備部署、管理控制、日常運維、資源調度、業務服務等幾個方面的優化,旨在統籌部署軟硬件設施、降低日常運維難度、提升資源調度能力和提高服務質量。
如圖1 所示,艦船一體化網絡由四個層次組成分別是硬件接入層、數據傳輸層、管理控制層和用戶應用層。
1)硬件接入層包括各種信息終端設備,如PC機、電話、定位、火炮、各種傳感設備和一些現場處理設備。這些設備充當系統中的信息采集和交互終端,業務要求不同,所以采用的信息傳輸方式也有所不同。
2)數據傳輸層有很多信息傳輸方式,對時間精度要求較高的通過TSN網絡傳輸、設備部署困難傳輸信息量較小的可以用無線方式進行傳輸、需要快速啟動部署的子系統可以通過無線自組織網絡進行傳輸。
3)管理控制層管理各個子網的運行,主要功能有流量監控、網絡管理、拓撲發現和時鐘控制等,采用SDN的方法將各個網絡管理起來。
4)用戶應用層主要是艦船網絡上的一些應用程序,例如綜合態勢顯示、設備管理、天氣信息和基礎辦公等功能。
本架構中SDN控制器為架構的核心,管控整個網絡中的業務,具有全局視圖,對全局的網絡資源進行統一的管理,網絡的操作和運維也將更加方便。未來艦船一體化網絡中,對于業務的可靠性具有很高的要求,TSN 網絡是實時性網絡傳輸的主要技術,本文將也著重介紹SDN技術管控TSN網絡的方式。
SDN是一種網絡架構和技術,最大的特點就是將數據平面和控制平面解耦合,控制平面能夠集中化地控制數據平面的設備,數據平面設備對于控制平面來說處于完全透明的狀態,有效地解決了網絡的可擴展性差,網絡結構不靈活等問題,可以更好地滿足未來業務的發展需要,能夠有效地降低網絡的控制管理難度[8~9]。
工業互聯網時代到來,傳統工業逐漸得到轉型。傳統工業以太網已經很難滿足工業4.0 的要求,工業以太網來到了確定性通信時代。時間敏感網絡(TSN)是確定性以太網的代表技術。目前TSN技術已在很多領域應用[10~11]。
在TSN 網絡管理方面,TSN 工作組制定了IEEE802.1Qcc協議,該協議給出了三種TSN管控模型,三種模型分別適用于不同的場景。而實現IEEE802.1Qcc 的前提:1)鏈路層發現協議(Link Layer Discovery Protocol,LLDP);2)基于YANG模型(Yet Another Next Generation)的遠程配置功能;3)TSN流量調度[12]。
SDN 通過解耦合的方式將數據平面和控制平面分離開來,可以更好地管理整個網絡,也因其特有的網絡架構,使得SDN網絡和TSN網絡的完全集中式模型能夠更好地進行融合,達到對TS 流的調度,使得TSN網絡更具有擴展性[13]。
SDN 控制器如何實現控制TSN 網絡國內外有很多學者進行研究分析。文獻[8]通過SDN控制器指定主時鐘來化解主時鐘選舉及原主時鐘失效后新主時鐘的產生等一系列問題,用NEON 技術,配置生成了IEEE802.1Qcc 模型、SDN 中的控制器和北向接口,在獲取時鐘信息后進行相應配置,最終驗證了主時鐘配置的成功性[14]。文獻[9]認為在未來的網絡系統中,不同的業務場景對于數據的速率、延遲、抖動和可靠性等方面都有著不同的需求。利用軟件控制流預留(SDFR)的方法,在Openflow 協議上通過SDN 控制器實現了IEEE802.1Qcc里的標準,實現了業務的靈活調度[15]。文獻[10]中提出了將TSN、SDN 和OPC UA 結合起來,用SDN控制器來管理TSN 的業務流,OPC UA 作為工控程序之間和工控程序與網絡控制平面之間的交互,該架構仍不完善,需要進一步研究[16]。
鏈路層發現協議(Link Layer Discovery Protocol,LLDP)是實現TSN 管控的基礎,SDN 也需要通過LLDP 協議來獲取網絡拓撲,從而實現路由信息的下發。SDN 網絡中實現LLDP 的思路是如圖2 所示。

圖2 SDN LLDP實現方法
1)SDN控制器構造PacketOut消息向S1的三個端口分別發送LLDP數據包,其中將Chassis ID TLV和Port ID TLV分別置為S1的dpid和端口號;
2)控制器向交換機S1 中下發流表,流表規則為:將從Controller 端口收到的LLDP 數據包從他的對應端口發送出去;
3)控制器向交換機S2 中下發流表,流表規則為:將從非Controller 接收到LLDP 數據包發送給控制器;
4)控制器通過解析LLDP 數據包,得到鏈路的源交換機和源接口,通過收到的PacketIn 消息知道目的交換機和目的接口。
圖3 是在SDN 仿真平臺Mininet 中實現LLDP的效果圖,實驗環境為搭載了Mininet 仿真平臺和Ryu控制器的Ubuntu64位虛擬機,下面幾個實驗也是在同樣的環境中進行。實驗結果通過矩陣方式給出,為四個交換機組成的簡單串行結構。

圖3 LLDP實現結果
鏈路延遲的獲取能夠幫助控制器了解鏈路的擁塞情況,為時間敏感流的傳輸進行保障。實現鏈路延遲測量的方法是通過ECHO 報文。下圖流程是控制器發送ECHO 報文給交換機,ECHO 報文經交換機轉發后回到控制器。控制器在發送ECHO報文時記錄發送時刻的時間戳,在報文返回到控制器時獲得返回的時間戳,即可獲取到控制器到交換機的時延。其流程如圖4所示。

圖4 鏈路延遲計算原理
圖5 是路徑延遲的測量結果,前四個是交換機到控制器的延遲,后四個是交換機間的延遲。

圖5 鏈路延遲的結果
對于實時通信而言,時間同步在TSN網絡中起到了非常重要的作用,端到端的傳輸延遲具有難以商定的時間界限,因此網絡中的所有設備都需要共同的時間參考。時鐘同步也可以利用echo 報文來實現。在計算出單邊的鏈路延遲后,以SDN控制器下發自身的時鐘作為參考,交換機的時鐘是控制器時鐘與鏈路延遲之和。在交換機進行時間同步后,通過echo報文將自身時鐘信息返回給控制器,控制器判斷精度是否達到要求、是否需要再次進行時鐘同步。
如圖6 是時鐘同步的效果圖,可以看到所有時鐘都同步到了1625310748.8460317這個時間戳,精確度達到納秒級,可以滿足部分可靠性傳輸的要求。

圖6 時鐘同步實現效果
進行測試的網絡拓撲如圖7 所示,有兩個主機,主機間有四條線路,實驗中h1 發包到h2,控制器會循環調用四條鏈路進行傳輸。

圖7 負載均衡實驗拓撲

圖8 負載均衡實現結果圖
圖8 是實驗結果,h1 對h2 發包,經wireshark 軟件抓包后的結果如圖所示,數據包并不只走某一條鏈路,而是四條鏈路循環調用,以達到負載均衡的效果。
本文提出了一種艦船一體化網絡的架構,該架構以SDN 控制器為核心,通過管控TSN 網絡、無線自組織網絡、無線蜂窩網局域網等實現多種業務和功能,能夠適應未來戰爭中復雜多變的戰場環境。本文主要介紹了SDN控制器如何管控TSN網絡,并初步實現了一些功能,如LLDP、鏈路延遲測量、時鐘同步和負載均衡等功能,后續將在SDN仿真平臺上實現其他TSN功能。