TSN簡介 TSN介紹 時間敏感網(wǎng)絡(TSN:Time Sensitive Networking)是IEEE802.1工作組中的TSN任務組開發(fā)的一套協(xié)議標準。該標準定義了以太網(wǎng)數(shù)據(jù)傳輸?shù)臅r間敏感機制,為標準以太網(wǎng)增加了確定性和可靠性,以確保以太網(wǎng)能夠為關鍵數(shù)據(jù)的傳輸提供穩(wěn)定一致的服務級別。 TSN是一組IEEE 802.1協(xié)議標準,包括802.1AS-Rev、802.1Qbv、802.1Qbu、802.1CB等多個協(xié)議,工作在OSI七層網(wǎng)絡模型中的第二層—數(shù)據(jù)鏈路層。 圖 1 TSN是目前國際產(chǎn)業(yè)界正在積極推動的全新工業(yè)通信技術。時間敏感型網(wǎng)絡允許周期性與非周期性數(shù)據(jù)在同一網(wǎng)絡中傳輸,使得標準以太網(wǎng)具有確定性傳輸?shù)膬?yōu)勢,并通過廠商獨立的標準化進程,已成為廣泛聚焦的關鍵技術。 TSN主要價值特點: (1)TSN提供微秒級確定性服務,保證各行業(yè)的實時性需求。 TSN可達到10us級的周期傳輸,性能優(yōu)于主流的工業(yè)以太網(wǎng)。并且,TSN面向音視頻、工業(yè)、汽車等多種行業(yè),將實時性延伸至更高的層次。 (2)TSN降低整個通信網(wǎng)絡復雜度,實現(xiàn)周期性數(shù)據(jù)和非周期性數(shù)據(jù)同時傳輸。 以工業(yè)為例,當前周期性控制數(shù)據(jù)使用工業(yè)以太網(wǎng)傳輸,非周期性數(shù)據(jù)使用標準以太網(wǎng)傳輸。TSN通過其調(diào)度機制能夠?qū)崿F(xiàn)周期性數(shù)據(jù)和非周期性數(shù)據(jù)在同一網(wǎng)絡中傳輸,進一步簡化了整個通信中的網(wǎng)絡復雜性。 (3)TSN統(tǒng)一網(wǎng)絡傳輸,提高經(jīng)濟性。 TSN能夠幫助實現(xiàn)信息技術(IT)與運營技術(OT)融合,統(tǒng)一的網(wǎng)絡能夠減少開發(fā)部署成本,降低控制器等產(chǎn)品網(wǎng)絡配置所需的工程時間。 時鐘同步機制 TSN的標準協(xié)議:Timing over packet (802.1AS-2011,IEEE1588,gPTP) with linuxptp (ptp4l)。 IEEE1588協(xié)議簡稱精確時鐘協(xié)議PTP(Precision Timing Protocol),它的全稱是“網(wǎng)絡測量和控制系統(tǒng)的精密時鐘同步協(xié)議標準”(IEEE1588 Precision Clock Synchronization Protocol),用于同步計算機網(wǎng)絡中的時鐘。 IEEE1588其工作的基本原理,是通過主從節(jié)點之間進行同步數(shù)據(jù)幀的發(fā)送,記錄數(shù)據(jù)幀的發(fā)送時間和接收時間信息進行工作,并且將該時間信息添加到該數(shù)據(jù)幀中。從節(jié)點獲取這些時間信息,并計算從節(jié)點本地時鐘與主時鐘的時間偏差和網(wǎng)絡節(jié)點之間的傳輸延時,對本地時鐘進行糾正,使之與主節(jié)點時鐘同步。 開發(fā)環(huán)境 本文主要介紹的是基于創(chuàng)龍科技TLIMX8MP-EVM評估板的TSN時鐘同步、PTP對時案例,創(chuàng)龍科技TLIMX8MP-EVM是基于NXP i.MX 8M Plus的四核ARM Cortex-A53 + 單核ARM Cortex-M7異構多核處理器設計的高性能工業(yè)評估板。 本次案例演示的開發(fā)環(huán)境如下: Windows開發(fā)環(huán)境:Windows 7 64bit、Windows 10 64bit 虛擬機:VMware15.5.5 U-Boot:U-Boot-2022.04 Kernel:Linux-5.15.71 Linux SDK:L5.15.71_2.2.0 硬件開發(fā)環(huán)境:創(chuàng)龍科技TLIMX8MP-EVM評估板 案例測試 本文主要演示基于TSN的時鐘同步機制進行PTP(高精度時間同步協(xié)議)對時測試。 請準備2個創(chuàng)龍科技TLIMX8MP-EVM評估板,分別執(zhí)行如下命令,創(chuàng)建ptp.cfg配置文件,并配置超時參數(shù)tx_timestamp_timeout。 Target# vi ptp.cfg Target# cat ptp.cfg ptp.cfg配置文件添加如下內(nèi)容: [global] tx_timestamp_timeout 600 圖 2 評估板1 圖3 評估板2 下文為IEEE1588對時測試,請使用一根網(wǎng)線將2個評估板的ETH1網(wǎng)口直接連接。本次測試中,評估板1的ETH1網(wǎng)口作為Master,評估板2的ETH1網(wǎng)口作為Slave。 執(zhí)行如下命令,將2個評估板配置為靜態(tài)IP,并測試評估板之間的網(wǎng)絡連通性。 Target# ifconfig eth0 192.168.1.10 netmask 255.255.255.0 //配置評估板1靜態(tài)IP Target# ifconfig eth0 192.168.1.20 netmask 255.255.255.0 //配置評估板2靜態(tài)IP Target# ping 192.168.1.20 Target# ping 192.168.1.10 圖 4 評估板1 圖 5 評估板2 進入評估板1文件系統(tǒng),執(zhí)行如下命令,進行對時測試。 Target# ptp4l -E -4 -H -i eth0 -l 6 -m -q -f ptp.cfg 圖 6 進入評估板2文件系統(tǒng),執(zhí)行如下命令,進行對時測試。下圖第一列紅色框打印的信息為2個評估板的對時時差,單位為ns;查看s2時鐘的master offset數(shù)據(jù),可見IEEE1588對時功能基本正常。第二列紅色框打印的信息為path delay,單位為ns。按"Ctrl + C"可停止測試。 Target# ptp4l -E -4 -H -i eth0 -s -l 6 -m -q -f ptp.cfg 圖 7 參數(shù)解析: (1)命令參數(shù)解析如下: 表 1 (2)打印信息參數(shù)解析如下: a)master offset:測量與主設備的偏移(以ns為單位),即對時時差; b)s0、s1、s2:不同的時鐘伺服狀態(tài); c)path delay:從主設備發(fā)送同步消息的延遲(以ns為單位)。 |