前言
上一個主題我們介紹了TSN的發展歷史和協議族現狀,它為建立統一的確定性網絡傳輸基礎設施提供了有力保障。
TSN是一套協議標准,以保證確定性信息在標准以太網的不同場景下的順利傳輸。TSN協議族本身具有很高的靈活性,用戶可以根據應用的具體需求來選擇相應的協議組合。
TSN協議族包含了定時與同步、延時、可靠性、資源管理這四個類別的子協議,我們借用下圖來簡要敘述TSN各個子協議的作用和功能。
時間同步
此部分僅包含一份協議,即IEEE STD 802.1AS(最新版本已於2020年6月發布),此協議包含兩部分內容:定時與同步,這是實現確定性通信的重要機制,它具有以下特點:
• 是IEEE 1588 PTP同步協議的Profile,支持不同的TSN器件實現同步兼容性
• 為TSN網絡中每個節點參與流量調度提供了時間基准
• 此協議增加了對容錯和多個Grand Master主時鍾源的支持,使時鍾同步系統具備更強的魯棒性
• 可以在主時鍾源失效的情況下,無縫切換至冗余時鍾源
延時
此部分通過定義不同的整形機制將數據流的延時限定在一定范圍內,以此滿足不同的低延時場景需求。在傳統以太網中,數據流的通信延時是不確定的,由於這種不確定性,數據接收端通常需要預置大緩沖區來緩沖輸出,但是這樣會導致數據流,例如音視頻流,缺失了實時方面的特性。
TSN不僅要保證時間敏感據流的到達,同時也要保證這些數據流的低時延傳輸。
通過優化控制時間敏感流和best-effort流、以及不同時間敏感流之間在網絡中的傳輸過程,來保證對數據流的傳輸時間要求,這個優化控制的方式就是整形。
802.1Qav
此協議制定初衷是確保傳統的異步以太網數據流不會干擾到AVB的實時數據流傳輸。現在Qav不再局限於音視頻的傳輸。
此協議規定了每類優先級的入口計量、優先級再生以及處理時間感知隊列的算法(CBS,效果如下圖)。
其利用IEEE 802.1AS協議生成的定時信息,和VLAN優先級來隔離受控和非受控隊列之間的幀,同時支持時間敏感流量在有線或無線局域網之間傳輸。
802.1Qch
由於Qav中定義的CBS機制實現的僅是軟實時級別機制,但網絡傳輸路徑拓撲的復雜和各種干擾會導致持續的延時增加,而最差延時情況與拓撲、跳數、交換機的緩沖都有相關性,802.1Qch(循環隊列轉發機制或蠕動整形)就是用於改善這些狀況。
通過同步控制入隊和出隊的策略,使得轉發過程得以在一個周期內實現,以便使數據流經過交換機的時間更具確定性。
802.1Qch協議還定義了CQF(需與Qci協議配合使用),其中Qci標准會根據達到時間、速度、帶寬,對Bridge節點輸入的每個隊列進行過濾和監管,用於保護帶寬、增加對Burst流以及錯誤的處理。
802.1Qbv
流量調度是TSN的核心概念,根據時間同步協議802.1AS提供的全局時間基准,創建調度任務並將其分發給參與的網絡器件。
802.1Qbv定義了通過控制TSN交換機出口處閘門的開關來控制排隊流量的機制,這些隊列中的消息將在預設的時間窗口中進行傳輸。
通常,在這些時間窗口內,其他隊列的傳輸將被阻止,從而避免被調度流量被非調度流量阻塞,這樣保證數據通過交換機的延遲是確定的。
802.1Qbu
盡管Qbv的機制可以保護關鍵消息免受其他流量的干擾,但不一定能夠實現最佳帶寬使用和最小通訊延遲。如果這些因素對於需要傳輸的數據很重要,可以采用802.1Qbu + 802.3br所定義的幀搶占機制來保障。
802.1Qbu協議中定義了中斷標准以太網幀和巨型幀的傳輸,使高優先級幀優先通過的機制,同時可以恢復先前被中斷的幀的傳輸。
如下所示,通過縮減為干擾幀所設置的保護區域的大小、對干擾幀進行合理切片來達到目的。
802.1Qcr
Qch和Qbv中設計的整形算法主要用於超低延時的數據,其高度依賴網絡時間同步,以及在強制的周期中增強的包傳輸,但是對帶寬的利用率並不高,因此有了Qcr(也叫ATS)用於異步流調度。
通過此整形方式,Bridge和終端節點無需時間同步,可以更加高效的利用帶寬傳輸混合周期和非周期數據流的應用。
可靠性
對數據傳輸實時性要求高的應用除了需要保證數據傳輸的時效性,同時也需要高可靠的數據傳輸機制以便應對Bridge節點失效、線路斷路和外部攻擊帶來的各種問題,來確保功能安全和網絡安全。
802.1CB
為了減少由於鏈路和節點失效對網絡造成的影響,通過冗余消息以及在網絡中設置冗余鏈路進行並行傳輸來提高可靠性。
802.1Qca路徑控制和預留標准定義了設置此類路徑的方式,然后冗余管理機制將這些冗余消息組合在一起,以生成發送方至接收方的單個信息流。
802.1Qci
802.1Qci為了防止網絡故障影響或惡意攻擊對網絡造成的干擾,將故障隔離到網絡中的特定區域。它工作於交換機的入口,通過各種約束來監管每個流的輸入,以防止出站隊列被非法幀淹沒。
資源管理
在TSN網絡中,每一種實時應用都有特定的網絡性能需求。
使能TSN網絡的某個特性是對可用的網絡資源進行配置和管理的過程,其允許在同一網絡中通過配置一系列TSN子協議,來合理分配網絡路徑上的資源,以確保它們能夠按照預期正常運行。
802.1Qat
流預留協議(SRP)。它根據流的資源要求和可用的網絡資源情況指定准入控制,保留資源並通告從數據源發送端至數據接收端之間的所有網絡節點,確保指定流在整條傳輸路徑上有充足的網絡資源可用。
802.1Qcc
此協議為流預留協議(802.1Qat)的增強,包含對更多流的支持、可配置的流預留類與流、更完善的流特征識別、對高層流的支持、確定性流預留融合以及用於路由和預留的用戶網絡接口(UNI)。
802.1Qcc支持TSN網絡調度的離線或在線配置。
802.1Qcp
YANG數據模型。其定義了基於統一建模語言(UML)的信息模型和YANG數據模型,該模型允許對Bridge節點進行配置和狀態報告。
它同時也定義了信息和數據模型之間的關系,協議中指定的其他管理功能以及IEEE Std 802.1AX和IEEE Std 802.1X的模型。
小結
由於篇幅有限,文中僅摘錄了TSN中相對成熟的子協議進行了解釋。更多相關內容,歡迎大家與我們進行探討交流,后續我們也將分享更多相關技術干貨,敬請關注!