快速瞭解時間敏感網路(TSN)_Part2
大家好,上期我們介紹了TSN是什麼,能夠給我們帶來什麼好處以及TSN的用途。在文章的最後也給我們的協議介紹起了個頭,講解了TSN中用到的時鐘同步系統IEEE 802.1AS-Rev。
今天我們就開始介紹TSN協議族中的其他成員包括:延遲(TAS和幀搶佔)、流量監控(802.1Qci)和冗餘(802.1CB)
IEEE 802.1Qbv Time Aware Shaper
時間感知整形(TAS)可以說是TSN裡的一個核心協議,正是它的應用為車內時間敏感資料提供了超低的延時及抖動的保證。我們知道,乙太網的資料是在匯流排上序列傳輸的,如圖5,當有多個資料在交換機出口等待被轉出時(不同的資料會根據VLAN Tag中的優先順序在不同的佇列中排隊等待),誰先出誰後出就決定了資料的延遲大小。
圖5 乙太網出口佇列示意圖
TAS透過開關門的機制,來控制資料的傳送。如圖6,透過右側的Gate Control list來控制每個佇列在某一時刻的開關門狀態,以右側黑框圈出的T05舉例,該時刻 佇列7到佇列0的開關門狀態分別是CoCCoCCC(C表示關門,o表示開門)。資料只有在開門的時候才可以進行傳送,也就是說該時刻只有佇列6和佇列3可以傳送資料。
圖6 TAS 開關門控制 (圖片部分引自IEEE 802.1Q)
一般來講 Gate Control List是週期迴圈的,在關鍵資料(圖7中TC1資料)傳送前和傳送中,我們會關閉其他資料的傳送,以保證TC1資料不會受到影響。從而為TC1提供超低的延時保證。
同時週期性開關門的特性也說明TAS更適合為週期性資料提供延時的保障。
圖7 TAS舉例
IEEE 802.1 Qbr & IEEE 802.3bu 幀搶佔
幀搶佔是TSN協議族中另一個提供延遲保障機制的協議,該協議透過修改前導碼將正常的
乙太網幀分為兩類:Express MAC (EMAC 高優先順序幀) 和 Preamble MAC(PMAC 低優先順序幀)。透過高優先順序幀可以打斷正在傳送的低優先順序幀這一特性,減小高優先順序的等待時間。以圖8中的資料為例,正常情況下,第一行藍色的PMAC幀先傳送後,即使後面再來的EMAC幀也必須等待當前正在傳送的PMAC幀傳送完成後才能傳送。但是應用了幀搶佔後,EMAC幀可以打斷PMAC幀進行傳送,當EMAC幀傳送完成後,剩餘的PMAC幀再進行傳送。這樣一來就可以節約下了EMAC幀的等待時間。
圖8 幀搶佔舉例
除了幀搶佔自己單獨使用可降低延時之外。還可以與上面提到的TAS結合使用以減小Grandband的大小(如圖9),從而在頻繁開關門的情況下提高網路利用率。
圖9 幀搶佔結合TAS減小Grandband
最後在應用幀搶佔的時候有三點注意:
•
資料 “被且僅被” 分成兩類:PMAC幀和EMAC幀
•
需要依賴底層支援,將原有的MAC層分為EMAC 和 PMAC
•
PMAC可被打斷的最小幀長度為124Bytes 小於該長度不能被打斷
IEEE 802.1Qci Per-Stream Filtering and Policing
TSN協議族中的PSFP協議類似防火牆的機制,它可以對轉發前的資料進行篩選和過濾,對特定標識的資料幀加以控制。以圖10為例,正常情況下ECU1和ECU2各自傳送20Mbps資料,但是由於ECU1受到網路攻擊或者自身發生錯誤,導致傳送90Mbps的資料。此時由於switch出口處僅支援100M頻寬,那麼ECU2最多能傳送10Mbps的資料,因此無法正常工作。
如果該系統中應用了PSFP,那麼此機制可以提前根據資料流的特徵(VLAN,MAC地址,IP地址等)識別出ECU1允許傳送的資料流僅能為20Mbps,因此就會對其進行錯誤處理,方式分為兩種:
•
PSFP限制:限制資料流傳送,降低到預設值
•
PSFP阻斷:完全阻斷錯誤資料流
此外PSFP還可以防止網路攻擊(例如ARP攻擊),以及透過其中的門控機制確保被篩選出的資料在特定的時機進行傳送等。
圖10:PSFP舉例
IEEE 802.1CB Frame Replication and Elimination for Reliability (FRER)
802.1CB 協議主要負責資料的冗餘備份傳輸,利用冗餘機制解決環路網路拓撲中,可能由CRC、線路開路,聯結器斷開等導致的資訊錯誤或丟失。
如果應用了自動駕駛,並且有一個較高的功能安全等級,那麼FRER幾乎成為了一個優先的選擇。
圖11. R-tag 及序列號
在傳送時,其會為特定資料打上標籤和序列碼(如圖11),並且在不同通路上覆制傳輸。在鏈路匯聚點處,複製資訊會被識別並消除,以防止接收節點的上層應用處理多個重複資料。其應用大致分為兩種形式:終端節點承擔FRER工作(如圖12)或 Switch節點成端FRER工作(如圖13)。後者相比於前者,實現起來難度較低,設計變更和複雜程度也會相對較小。
圖12. 終端節點承擔FRER功能
圖13. Switch承擔FRER功能
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31535135/viewspace-2677254/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- TSN時間敏感網路技術入門級解決方案TSN BasicSolution
- 通過“表白”的方式,讓我們快速瞭解網路協議協議
- 快速瞭解jQueryjQuery
- Java 獲取本地時間與網路時間Java
- 網路時間協議介紹以及伺服器同步網路時間協議伺服器
- 5分鐘帶你瞭解網路安全中間人攻擊!
- ubuntu 修改時區或時間 及網路同步時間Ubuntu
- 詳解NTP網路時間協議工作過程協議
- 卷積神經網路 part2卷積神經網路
- 網路協議全瞭解(轉)協議
- python獲取網路時間和本地時間Python
- Linux 網路時間同步Linux
- 網際網路時代的時間管理
- 找工作時如何快速瞭解一家公司?
- 五分鐘瞭解網路連線
- 一分鐘瞭解PON網路
- C#—獲取網路時間C#
- 快速瞭解 React Hooks 原理ReactHook
- Spring Security 快速瞭解Spring
- 快速瞭解雲端計算
- 帶你快速瞭解HTMLHTML
- 瞭解常見網路攻擊方式,做好網路安全防範!
- 時間流網際網路之未來(上)
- 30分鐘快速瞭解webpackWeb
- 快速瞭解雲原生架構架構
- 5分鐘快速瞭解 RedisRedis
- 快速瞭解 Deno 目前的 APIAPI
- 快速簡單的瞭解VLAN(VXLAN)和埠鏈路型別型別
- 網路配置檔案快速解讀(轉)
- 13個網路管理員必須瞭解的網路監控工具
- 一圖瞭解“網際網路+”產業發展——資訊圖產業
- NTP網路時間伺服器助力金融網路系統安全伺服器
- 網路營銷的基礎知識瞭解
- 專案經理的時間管理秘籍,你真的瞭解嗎?
- 快速瞭解蘋果企業簽名蘋果
- 快速瞭解iOS簽名機制iOS
- 快速瞭解Web MVC設計模式WebMVC設計模式
- 你真的瞭解python嗎?這篇文章帶你快速瞭解!Python