張 弛,韓 麗,楊 宏
(中國電子技術標準化研究院,北京 100007)
隨著智能制造、汽車工業等領域的不斷發展,對數據傳輸的實時性和可靠性需求越來越大。然而在傳統以太網中,網絡帶寬由不同終端設備共享。這些設備沒有基于時間的流量控制,而是盡最大可能發送數據,極易造成網絡擁塞,數據排隊時間無法預計,甚至一部分數據會被丟棄。因此,傳統以太網無法保證數據的確定性傳輸[1]。
時間敏感網絡(time sensitive networking,TSN)是IEEE 802.1 TSN任務組基于以太網研發的一系列協議標準。TSN在以太網的基礎上加入時鐘同步、流量調度和網絡配置等關鍵技術,為時間敏感型數據提供低時延、低時延抖動和低丟包率特性的傳輸服務[2]。
近年來,TSN技術的快速發展引起國內外相關組織和企業的重視,IEEE 802.1、ISO/IEC JTC1/SC6、IEC/TC65、Avnu聯盟等標準組織均在積極開展相關的標準制定。TSN在音視頻、汽車控制、工業控制等領域有著廣泛的應用前景,尤其是在智能制造的互聯互通方面被寄予厚望。
TSN是由IEEE 802.1工作組下TSN任務組開發的一套標準,ISO/IEC JTC1/SC6、Avnu聯盟、IEC/TC65等標準組織均在積極開展相關的標準制定。
TSN系列標準的實施需要一些基礎標準支撐[3],如下所示。
①IEEE Std 802.1Q-2018:Bridges and Bridged Networks(橋接和橋接網絡)。
②IEEE Std 802.1AB-2016:Station and Media Access Control Connectivity Discovery (specifies the Link Layer Discovery Protocol (LLDP))(站點和媒體訪問控制互聯發現)。
③IEEE Std 802.1AS-2011:Timing and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks(時鐘同步)。
④IEEE Std 802.1AX-2014:Link Aggregation(鏈路聚合)。
⑤IEEE Std 802.1BA-2011:Audio Video Bridging (AVB) Systems(音視頻橋接系統)。
⑥IEEE Std 802.1CB-2017:Frame Replication and Elimination for Reliability(可靠性的幀復制和消除)。
⑦IEEE Std 802.1CM-2018:Time-Sensitive Networking for Fronthaul(面向前向回傳流的時間敏感網絡)。
TSN TG已發布的標準如表1所示。

表1 TSN TG已發布的標準Tab.1 Published standards of TSN TG
2017年6月,IEC/TC65(工業過程測量控制和自動化)/SC65C(工業網絡分委會)成立TSN項目組,與IEEE聯合開展TSN國際標準《工業通信網絡 行規 第6部分:基于IEEE 802.1和IEEE 802.3的時間敏感網絡(TSN)行規》的制定。標準主要包括一致性測試、物理層和媒體訪問控制速度、數據鏈路層、時鐘同步、信息安全、性能指標等內容。
TSN具有三大關鍵技術:時鐘同步、流量調度和網絡配置。
TSN的流量調度是基于時隙的,因此時鐘同步是TSN的基礎。TSN的時鐘同步是保證所有網絡設備的的時鐘一致,而不需要與自然界的時鐘保持同步。IEEE 802.1AS-2011規定了TSN整個網絡的時鐘同步機制,提出了廣義精確時間協議(general precision time protocol,gPTP)。gPTP是在IEEE 1588-2008的精確時間協議(precision time protocol,PTP)的基礎上進行擴展,兩者工作模式相同。首先介紹PTP,然后分析PTP與gPTP的不同點。
PTP能夠使網絡設備的時鐘精度達到亞微秒級別[4]。PTP主要通過兩個步驟同步系統中的時鐘:①確定系統中的主從時鐘結構;②進行系統時鐘同步。
PTP時鐘同步是整個網絡的時鐘以主父時鐘(grandmaster clock)的時間為參考值進行同步。在整個網絡中,主父時鐘的時鐘性能最好。IEEE 1588-2008[5]定義了最佳主時鐘(best master clock,BMC)算法,用于比較系統中的時鐘性能,從而選擇主父時鐘。時鐘端口具有PTP_INITIALIZING、PTP_MASTER、PTP_SLAVE、PTP_DISABLEDAD等9種狀態。當時鐘上電后,首先廣播Announce消息,Announce消息中包含時鐘屬性,同時偵聽其他時鐘發送的Announce消息。如果收到比它性能好的時鐘的Announce消息,則端口狀態調整為PTP_SLAVE,進入Slave狀態,停止廣播Announce消息;如果在一定時間內沒有接收到更好的時鐘發來的Announce消息,則設它為最優時鐘,端口狀態設為PTP_MASTER[6]。當最優時鐘不具備作為時鐘源的性能或退出系統時,BMC算法能夠自動地在系統中重新選擇一個最優時鐘。最優時鐘確定后,其他時鐘利用雙向多播通信方式與其上層主時鐘進行同步。時鐘消息傳輸過程如圖1所示[7]。

圖1 時鐘消息傳輸過程圖Fig.1 The process of clock messages transmission
假設時鐘間的上下行鏈路是對稱的,從時鐘與主時鐘的時間偏移設為toffset,傳輸時延設為tdelay。首先,主時鐘發送同步報文(Sync)給從時鐘,報文包含消息發送時間t1。從時鐘接收同步報文后記錄接收時間t2。由于同步報文中的t1是預計的發送時間,而不是真實的發送時間,因此主時鐘繼續發送跟隨報文(Follow_Up),報文包含確定的同步報文發送時間t1。從時鐘收到跟隨報文后記錄時間戳t1。此時,從時鐘計算t2和t1的時間差,它是時間偏移和傳輸時延的和,即:
t2-t1=toffset+tdelay
(1)
因此,還需要計算從時鐘和主時鐘的傳輸時延。從時鐘發送延遲請求報文(Delay_Req)至主時鐘,并記錄報文發送時間t3。主時鐘收到Delay_Req后記錄接收報文時間t4,并發送延遲應答報文(Delay_Resp)至從時鐘,Delay_Resp內包含t4的時間戳。從時鐘收到延遲應答報文后,計算傳輸時延。由于假設上下行鏈路對稱,所以傳輸時延為:
(2)
最終可以得到時間偏移:
(3)
PTP是針對穩定和安全的網絡環境所設計,適用于本地化、網絡化的系統。因此,PTP設計簡單,占用的網絡和計算資源較少。與PTP相比,gPTP基于二層網絡,能夠對不同網絡進行時鐘同步。時鐘類型更為簡單,只有端節點和橋節點兩種類型設備。
IEEE 802.1Q-2014根據網絡中數據流的類型和用途對其進行了優先級的劃分,交換機端口可設置優先級隊列。優先級高的數據流優先進入緩沖隊列,從而保證時間敏感型數據的優先傳輸。但是,如果當前網絡中已經有低優先級數據流在傳輸時,高優先級數據流只能在緩沖隊列中排隊緩沖,等待低優先級數據流傳輸完成,這樣就無法滿足時間敏感型數據的實時性要求。因此,IEEE 802.1Qbv-2015針對這一問題提出了門控制策略[8]。
門控制策略主要是在交換機的緩沖隊列中增加了門結構。門的狀態分為開和關兩種,記錄在門控制列表中。交換機通過改變門的狀態,可以控制數據流的輸出。它的基本思想是時分多址,將傳輸信道劃分為多個重復的調度周期,在一個調度周期內,為不同類型數據流劃分為多個時隙。IEEE 802.1Qbv-2015的工作機制如圖2所示。

圖2 IEEE 802.1Qbv-2015的工作機制Fig.2 Mechanism of IEEE 802.1Qbv-2015
從圖2可以看出,一個周期被劃分為2個時隙。時隙1只傳輸時間敏感型數據,時隙2傳輸其他數據。IEEE 802.1Qbv-2015要求網絡中的交換機時鐘同步,配置相同的調度表。這樣,所有設備就知道哪個時間點可以傳輸時間敏感型數據。
但是這個策略有一個缺陷。當時隙2傳輸的數據幀過大時,無法在有限時間內傳輸完成。由于無法中斷傳輸,就會占用下一個周期時隙1的時間,時間敏感型數據就會被延遲甚至無法傳輸。因此,IEEE 802.1Qbv-2015還提出了保護機制。在時隙2的后面增設一個保護帶,在保護帶內不可以發送新的數據,但是可以繼續完成當前數據的傳輸。保護帶的大小是最大幀的傳輸時間。
保護帶雖然解決了時間敏感型數據不受其他數據影響這一問題,但是保護帶過大會造成資源的浪費。因此IEEE 802.1Qbu-2016[9]提出了幀搶占策略。幀搶占策略的原理是暫停非時間敏感型數據的傳輸過程,轉而傳輸時間敏感型數據;時間敏感型數據傳輸完成后,再繼續傳輸非時間敏感型數據。幀搶占策略依據時延需求將數據流分為高優先級數據流和低優先級數據流。其中,低優先級數據流是可被搶占數據流。IEEE 802.1Qbu-2016工作機制如圖3所示。

圖3 IEEE 802.1Qbu-2016工作機制Fig.3 Mechanism of IEEE 802.1Qbu-2016
當鏈路中正在傳輸低優先級數據流,此時有高優先級數據流要傳輸時,會首先判斷低優先級數據流是否可以被切片。如果允許被切片,則根據IEEE 802.3br-2016在適當的位置中斷低優先級數據流的傳輸,并增添一個校驗位,將已經傳輸完的部分作為一個數據幀。經過一個幀間間隔后開始傳輸高優先級數據流。傳輸完高優先級數據流后繼續傳輸低優先級數據流的剩余部分,并在前面加上前導碼,以便識別數據類型和進行數據流重組。通過實行幀搶占策略,保護帶的長度可以減小切片的最大長度,從而減少了資源浪費。
TSN需要對發送端、接收端和網絡中的交換機進行配置,以便為時間敏感型數據提供預留帶寬等服務。IEEE 802.1Qcc-2018[10提出了TSN的配置模型,包括全集中配置模型、全分布配置模型和集中網絡/分布式用戶配置模型。集中式用戶配置(centralized user configuration,CUC),負責發送端和接收端的配置;集中式網絡配置(centralized network configuration,CNC),負責TSN交換機的配置。全集中配置模型如圖4所示。

圖4 全集中配置模型Fig.4 Fully centralized model
TSN網絡具體配置過程如下。
(1)CUC發現發送端和接收端。
(2)CUC創建TSN域。
(3)發送端和接收端把它們的流QoS需求發送給CUC。
(4)CUC把流QoS需求傳送給CNC,使用User/Network配置接口協議(UNI協議)。
(5)CNC進行必要的計算,包括計算傳輸調度、確定數據路徑等,使之滿足QoS需求。
(6)CUC對反饋結果進行判斷。
①如果TSN網絡能夠滿足QoS需求,CUC配置發送端和接收端的數據流傳輸,CNC配置TSN交換機,發送端和接收端開始通信。
②如果TSN網絡不能滿足用戶需求,則不開始通信。
CNC與TSN交換機之間使用遠程網絡管理協議。CNC通過協議發現物理拓撲,檢索交換機容量,配置TSN特性。發送端和接收端沒有遠程網絡控制協議。各端口門控列表等對象都是CNC通過網絡管理協議進行配置的。
全集中配置模型應用范圍最廣,例如在工業領域,能夠與OPC UA的Pub/Sub模型相對應,便于TSN與OPC UA的融合。全分布配置模型和集中網絡/分布式用戶配置模型如圖5所示。

圖5 配置模型Fig.5 Configuration model
TSN通過時鐘同步、流量調度和網絡配置等關鍵技術,從本質上改變了傳統以太網的不確定性,為時間敏感型應用提供低時延、高可靠的服務,有著廣泛的應用場景,也是當前的研究熱點。IEEE 802.1 TSN系列標準初步可以解決網絡實時性的問題,但是每項關鍵技術還有很多可優化和需要改進的地方。在標準化方面,除了TSN關鍵技術之外,還可以考慮與傳統以太網的適配、TSN交換機的技術要求和測試要求和與特定行業技術相融合。例如在工業領域中,TSN與OPC UA融合關鍵技術也是當前的研究熱點。因此,要積極跟進TSN國際標準化工作進展,同時在國內開展TSN技術研究和相應的標準化工作。