來源:TSNLAB 微信公眾號
去年夏天在上海,和一位自動化專家聊了一下午,TSN究竟有什麼用,最終,對方用自己的方式總結出一句話,反而一語點醒我們做網絡的人——“有了TSN,UDP也能保障確定性!”
和一些工控企業、相關院所的專家和工程師交流,聊到如何構建我們自主可控的工業網絡方案的時候,最終常常會傾向於做一套端到端的“私有方案”。可能背後有兩點,雖然大家很少直接提及,但很大程度上影響了上麵的決策:
1、傳統的ETH、IP、UDP/TCP網絡沒有確定性,無法普遍用於工控場景。
2、行業裏的老大哥們是怎麼幹的呢?總線或者工業以太啊!那我們自然要做一套新的總線或者工業以太啊!
再看ICT,如果說CT就是基礎設施,那麼IT應用,涉及互聯網通信的話,大部分都是基於UDP或TCP的。如果“有了TSN,UDP也能保障確定性!”之後,OT領域也可以基於UDP等通用協議棧自由開發應用,不需要再受限於私有硬件、需購買軟件授權等,同時網絡確定性性能還優於EtherCAT、PROFINET IRT(後麵會講)。那麼,Why not?
因此,我們提出通用確定性方案,其願景就是讓用戶、供應商可以基於通用算力和軟硬件(含Ethernet TSN網絡)來研發設備、開發應用、構建方案。同時,通用確定性的命名,也是為了打破“確定性要求越高,越需要封閉專用方案”的一般性認識。
通用確定性方案的任務自然也就明確了。舉例說明,當下做一個APP,在通信的部分基於UDP開發,不論是軟件接口還是案例參考,都是豐富且成熟的。那麼,距離“有了TSN,UDP也能保障確定性!”還缺少什麼?
•工作任務1、性能驗證:講道理誰都可以,TSN的道理也講了很多年,但基於通用軟硬件(含TSN)的應用,究竟能達到怎樣的確定性性能指標?對比EtherCAT、PROFINET IRT這些工控領域用於運動控製的高精尖工業以太技術又如何?
•工作任務2、開發方案:TSN看起來好複雜,我端側需要怎麼弄、網絡需要怎麼配?有沒有可以一個開放的開發平台,既可以提供方案文檔作為參考,也可以提供開發接口以便進行快速原型驗證?
這就是我們的工作目標。並且通過這篇文章,我們隆重宣布,工作任務1已經完成了性能驗證的基線測試,結果是驚人的好!
麵向工業控製,通用確定性方案三大核心性能指標定義如下:
•指標1:端到端PTP時間同步精度——>影響同步控製精度——> 與時間同步軟硬件能力相關
•指標2:端側發包精度(抖動)——>影響指標3 ——> 與端側係統實時性、網卡能力相關
•指標3:端到端確定性低時延 ——> 影響控製響應速度——> 與TSN網絡方案相關
用標準Ethernet、IPv4、UDP協議棧在Linux PC上寫了一個根據係統時鍾周期發包的程序,模擬工控應用。上結論,如下圖:

指標1,基於Linux自帶的PTP能力,配合網絡TSN交換機的PTP能力,從端側係統、到網卡、到對端網卡、到對端係統,同步精度在129ns以內;
指標2,使用了Linux Preempt rt軟實時、配合i210網卡,能使發包精度在98ns以內(即應用側要求在1點整把報文發送到網絡上,而網卡實際完成這件事情的時間差異不超過98ns);
指標3,關鍵控製流報文的端到端時延,在有無1500Byte背景流大包的影響下無變化,如下圖,注意縱坐標單位是ns。不計算鏈路時延(鏈路長度/光速)和受自身包長影響的存儲轉發時延(包長/鏈路帶寬,如100Byte@1Gbps大約為1.2us)的情況下,基本上每跳3us!也就是隻有固有交換機處理時延,沒有排隊時延。

把這樣的性能代入到典型的工控場景和PROFINET IRT、EtherCAT進行對比計算,得到如下表格。計算的基本原理參考下麵這篇文章,用一句話來概括,就是“同周期內多個從站的報文在PLC出口到第一跳設備的串行排隊時延或主站到離它最遠的那個從站的總網絡傳輸時延成為了製約周期進一步降低的因素”。
J. Jasperneite, M. Schumacher and K. Weber, "Limits of increasing the performance of Industrial Ethernet protocols," 2007 IEEE Conference on Emerging Technologies and Factory Automation (EFTA 2007), Patras, Greece, 2007, pp. 17-24, doi: 10.1109/EFTA.2007.4416748IF: NA NA NA. keywords: {Ethernet networks;Communication industry;Automation;TCPIP;Job shop scheduling;Bit rate;Network topology;Electrical equipment industry;Media Access Protocol;Measurement},

TSN之所以在網絡能力上有顯著的優勢,最主要的原因不是因為有什麼了不得的新機製設計,而是通用開放的Ethernet帶來的10倍起步的帶寬優勢(甚至可能還更便宜!)。
通用確定性還有四個影響性能的關鍵因素:
•1、算力與架構。
•2、係統與軟硬實時方案。
•3、端側網卡硬件。
•4、網絡協議棧。
我們的基線測試是基於x86工控機、Linux preempt rt軟實時、i210網卡、標準UDP+IPv4+Ethernet協議棧進行的。實際上當然可以用不同的排列組合。我們同時還測試了僅使用網絡硬件時間戳做PTP,無定時發送功能(即網卡無“Qbv”)情況下的幾個case,如下表(PTP精度同上,不受影響,故未列出)。

可見,網卡無“Qbv”時(shi),性(xing)能(neng)會(hui)有(you)所(suo)下(xia)降(jiang),但(dan)也(ye)仍(reng)然(ran)是(shi)很(hen)不(bu)錯(cuo)的(de)水(shui)平(ping)。除(chu)此(ci)之(zhi)外(wai),其(qi)它(ta)不(bu)同(tong)的(de)排(pai)練(lian)組(zu)合(he)會(hui)有(you)怎(zen)樣(yang)的(de)效(xiao)果(guo),哪(na)些(xie)因(yin)素(su)會(hui)成(cheng)為(wei)對(dui)整(zheng)體(ti)性(xing)能(neng)的(de)主(zhu)要(yao)影(ying)響(xiang)因(yin)素(su),這(zhe)裏(li)一(yi)方(fang)麵(mian)能(neng)拓(tuo)展(zhan)出(chu)不(bu)少(shao)有(you)價(jia)值(zhi)的(de)學(xue)術(shu)研(yan)究(jiu)的(de)課(ke)題(ti),另(ling)一(yi)方(fang)麵(mian)綜(zong)合(he)考(kao)慮(lv)成(cheng)本(ben)的(de)組(zu)合(he)也(ye)會(hui)對(dui)未(wei)來(lai)商(shang)用(yong)方(fang)案(an)選(xuan)型(xing)提(ti)供(gong)參(can)考(kao)。因(yin)此(ci)我(wo)們(men)肯(ken)定(ding)希(xi)望(wang)、也呼籲產業界學術界的同仁們廣泛參與到“通用確定性:基於通用軟硬件做工控”的討論中。同時我們會在ZIGGO平(ping)台(tai)上(shang)公(gong)開(kai)本(ben)文(wen)性(xing)能(neng)驗(yan)證(zheng)的(de)開(kai)發(fa)方(fang)案(an)文(wen)檔(dang)和(he)代(dai)碼(ma),給(gei)感(gan)興(xing)趣(qu)的(de)讀(du)者(zhe)作(zuo)為(wei)參(can)考(kao)或(huo)實(shi)現(xian)快(kuai)速(su)原(yuan)型(xing)驗(yan)證(zheng)。當(dang)然(ran)我(wo)們(men)更(geng)加(jia)期(qi)待(dai)您(nin)使(shi)用(yong)不(bu)同(tong)的(de)軟(ruan)硬(ying)件(jian)組(zu)合(he)複(fu)現(xian)測(ce)試(shi),把(ba)新(xin)的(de)文(wen)檔(dang)、代碼與測試結果再貢獻回開放平台。同期,我們正在進行組合了x86 IPC、嵌入式ARM和OpenEuler操作係統的方案測試。理想的情況是,在未來,對於常用的算力與架構、係統與軟硬實時方案、端側網卡硬件和網絡協議棧的組合,都可以在開放平台上找到上述三個關鍵性能指標的參考數值(前述工作任務1),和開發方案的文檔與代碼(工作任務2)。
-----------------------------------------
ZIGGO是由清華大學楊錚教授團隊研發的全棧式TSN工業網絡平台,包含了交換機、流量調度管理、網絡性能測試和故障診斷等功能模塊。ZIGGO 全麵支持TSN標準,包括 IEEE 802.1AS、Qav、Qbv、Qcc等協議,實現了網絡設備間納秒級的時間同步,為關鍵數據流量提供了確定性轉發與超低時延傳輸,支持IT流量與OT流量的共網傳輸。ZIGGO 提供了即插即用的協議一致性評估和組網性能評估解決方案,支持對TSN網絡設備進行性能分析和協議驗證,包括時間同步精度分析與協議一致性分析、關鍵流量時延與抖動分析、Qbv門控精度與帶寬保障檢測等。
網址:http://tns.thss.tsinghua.edu.cn/ziggo/
-----------------------------------------
其實當前的運動控製方案中,除了EtherCAT,基本上都已經是(或下一代即將是)X over Ethernet/TSN了。例如PROFINET的ccD、CC-Link IE TSN是X over TSN,CIP Motion是X over UDP Ethernet + 1588v2,Powerlink是X(CANopen) over Ethernet,OPC UAFX是X(類似SERCOS)over TSN。那麼如果要做不被卡脖子的方案,最自然的方案就是X over TSN或X over UDP TSN,這個X是CANopen等,或者自己製定,都可以。然後具體到端設備怎麼做,控製器、驅qu動dong器qi的de軟ruan硬ying件jian方fang案an可ke以yi根gen據ju性xing能neng要yao求qiu從cong上shang麵mian四si個ge關guan鍵jian因yin素su中zhong選xuan取qu組zu合he,同tong時shi從cong通tong用yong確que定ding性xing開kai發fa平ping台tai上shang找zhao到dao對dui應ying的de方fang案an文wen檔dang和he代dai碼ma進jin行xing快kuai速su原yuan型xing驗yan證zheng。我wo們men提ti出chu通tong用yong確que定ding性xing,最zui終zhong的de關guan鍵jian目mu的de,是shi讓rang供gong應ying商shang可ke以yi自zi由you選xuan擇ze通tong用yong軟ruan硬ying件jian組zu合he、並基於此開發設備應用方案,讓用戶能用到充分競爭市場下的、性價比和供應鏈都更好的通用ICT硬件,讓工業軟件知識更容易被兼容和複用。
-----------------------------------------
回顧一下,本文提出了通用確定性的
一個願景:讓用戶、供應商可以基於通用算力和軟硬件(含Ethernet TSN網絡)研發設備、開發應用、構建方案。
兩個工作任務:提供性能驗證demo;構建開發平台,提供方案參考文檔和代碼。
三個核心性能指標(針對工控):端到端PTP時間同步精度;端側發包精度(抖動);端到端確定性低時延。
四個影響性能的關鍵因素:算力與架構;係統與軟硬實時方案;端側網卡硬件;網絡協議棧。