來源:TSNLAB 微信公眾號
在《TSN六問——你誤解了幾個》這篇文章的“TSN門控需要網絡各節點之間配合,所以需要精準時間同步?”問題中,我們舉了一個工業自動化中多軸同步運動控製的例子。這是對控製精度要求非常高的一種場景。簡單舉例理解:
控製器要在同一時刻讓設備A控製機械運動到位置a、讓設備B控製機械運動到位置b。而在實際操作中,控製器指令發出的時間可能有差異(發包先後之分)、傳輸路徑可能有長短之別、設備收到指令後到執行所花費的時間也會受設備自身的周期任務調度的影響,最終要保證機械A和B盡量同時執行這次指令,並不簡單——這是需求A。
同時,如果控製的要求比較精細,或者涉及反饋控製,那麼控製器可能需要以很高的頻率(例如1ms或500us)接收輸入信號,然後以很高的頻率周期性地下發新的位置指令。指令下發到被執行的這個過程的時間顯然不能太長——這是需求B。
muqianchangyongdegongyeyitaiwangfanganzhong,yinjutiyingyongchangjingxuqiudebutong,youbutongdeyingduisilu。danjibenkeyiduihaoruzuodaoyixiazongjiedesanzhongyingduisilushang。yongjinkenengjiandanfangshilaijiang,fenbieshi:
1、用戶設備側時間同步,網絡傳輸有絕對時限要求。
2、用戶設備側時間同步,網絡傳輸有確定邊界就行。
3、用戶設備側隨意,網絡傳輸有確定邊界就行。
對應這三種思路,流量的行為特征也不同。IEC/IEEE 60802(TSN用於工業自動化)標準文稿中(取自文稿2.0版本)將其定義為三種流量類型:Isochronous(等時同步)、Cyclic-synchronous(周期同步)、Cyclic-asynchronous(周期異步)。

對應上述兩類需求、三種應對思路和流量類型,我們整理出這個表格,也是本文的重點:

從數量級的角度,需求A要求嚴格時,往往通過PTP(1588v2)或類似的時間同步技術,實現用戶設備側10ns-1us級別的時間同步精度。而需求B要求嚴格時,任務周期也很少會降低到250us以下,折合成對於網絡傳輸時延上限的要求,一般在100us-10ms級別。所以這兩者是有數量級上的差異的。因此,表格中也沒有寫需求A要求寬鬆而需求B要求嚴格的情況。
TSN技術集可以提供ns級的時間同步和us-ms級的有界(低)時延,剛好可以通過組合使用,匹配上述需求場景。
下圖就是需求A和需求B都要求比較嚴格的場景。采用應對思路一:通過精準的時間同步,保障設備A和B任務周期執行的邊界(或者說相位)一致,這個邊界對齊的精度在ns級別。而一次任務周期常常在百微秒或毫秒級,此時網絡需要保障us或ms級別的有界(低)時延,即需在下一次周期開始前的一段時間把數據傳到接收端。

對於需求A要求嚴格,需求B要求相對寬鬆的場景,這時,要麼任務周期本身比較長,如達到10ms或以上,要麼允許網絡傳輸的時間多於一個周期(比如3個周期)——這時就可以使用應對思路二,即網絡要支持端設備實現精準時間同步,保障有界時延,但對低時延的要求就會降低一些。
而如果需求A、B都相對寬鬆,網絡也不再需要支持精準時間同步,保障有界時延即可——應對思路三。