全 巍,楊翔瑞,孫志剛,嚴(yán)錦立,姜旭艷
(國(guó)防科技大學(xué) 計(jì)算機(jī)學(xué)院,湖南 長(zhǎng)沙 410073)
在工業(yè)控制和裝備制造等領(lǐng)域,以太網(wǎng)代替?zhèn)鹘y(tǒng)的控制總線已經(jīng)成為一個(gè)重要的發(fā)展趨勢(shì)。特別是隨著802.1 TSN標(biāo)準(zhǔn)的逐漸完善,如何有效利用TSN網(wǎng)絡(luò)為應(yīng)用提供確定性和高可靠的數(shù)據(jù)交換也逐漸成為學(xué)術(shù)界研究的新熱點(diǎn)。目前國(guó)際上僅有少量基于SoC和FPGA的TSN產(chǎn)品,而國(guó)內(nèi)TSN研究則相對(duì)落后,缺乏自主化的TSN解決方案。為了快速實(shí)現(xiàn)TSN的自主化解決方案,ASIC和SoC的解決方法存在周期長(zhǎng)、投入高、風(fēng)險(xiǎn)大等缺陷。相比而言,F(xiàn)PGA的實(shí)現(xiàn)方案則可以避免這一缺陷,但單純的FPGA由于資源有限,難以構(gòu)建完整的TSN解決方案。因此CPU+FPGA的軟硬件協(xié)同實(shí)現(xiàn)方式則為T(mén)SN整體解決方案提供了有效的途徑。為了建立一套基于CPU+FPGA架構(gòu)的完善自主化TSN方案,加速TSN的自主化研制進(jìn)程,本文提出了面向TSN的同步網(wǎng)絡(luò)模型--SyncNet。SyncNet模型以全網(wǎng)高精度時(shí)鐘同步為基礎(chǔ),結(jié)合網(wǎng)絡(luò)設(shè)備的確定性轉(zhuǎn)發(fā)機(jī)制以及全局流量調(diào)度規(guī)劃軟硬件協(xié)同保障TSN的確定性傳輸?;赟yncNet模型,本文在可編程網(wǎng)絡(luò)設(shè)備上構(gòu)建了一套TSN原型系統(tǒng)。該原型系統(tǒng)包含了SyncNet模型中所必備的TSN端系統(tǒng)、TSN交換機(jī)、TSN_CNC(centralized network configuration)、TSN_CUC(centralized user configuration),其端系統(tǒng)和交換機(jī)上實(shí)現(xiàn)了PTP時(shí)間同步和CQF流量整形功能來(lái)提供確定性傳輸保障,同時(shí)實(shí)現(xiàn)了基于Beacon的帶內(nèi)遙測(cè)機(jī)制方便TSN網(wǎng)絡(luò)的管理和控制。
本文的主要貢獻(xiàn)包括:①提出了SyncNet同步網(wǎng)絡(luò)模型,為CPU+FPGA架構(gòu)下TSN實(shí)現(xiàn)提供了理論支撐;②基于SyncNet模型構(gòu)建了一套支持PTP和CQF機(jī)制的TSN原型系統(tǒng);③為基于SyncNet模型的TSN原型系統(tǒng)構(gòu)建了測(cè)試環(huán)境,驗(yàn)證了該系統(tǒng)的確定性傳輸能力。
在許多具有硬實(shí)時(shí)需求的分布式系統(tǒng)中,其所采用的基于總線的網(wǎng)絡(luò)技術(shù)已經(jīng)難以應(yīng)對(duì)逐步增長(zhǎng)的通信帶寬需求。以汽車(chē)系統(tǒng)為例,常用通信協(xié)議CAN[1]、FlexRay[2]僅能提供10 Mbps以內(nèi)的帶寬能力,而新興汽車(chē)應(yīng)用如自動(dòng)駕駛、車(chē)載娛樂(lè)系統(tǒng)等則需要至少100 Mbps甚至更高的帶寬需求。為了滿足急劇增長(zhǎng)的帶寬需求,在汽車(chē)、列車(chē)、航空航天、5G和工業(yè)控制等眾多領(lǐng)域,工業(yè)界考慮采用具有高帶寬、低成本優(yōu)勢(shì)的交換式以太網(wǎng)取代總線技術(shù)[3]。然而現(xiàn)有的交換式以太網(wǎng)技術(shù)采用盡力轉(zhuǎn)發(fā)服務(wù)來(lái)保障網(wǎng)絡(luò)帶寬利用和網(wǎng)絡(luò)平均延遲,但這種盡力轉(zhuǎn)發(fā)服務(wù)在保障上述領(lǐng)域所需的確定性端到端時(shí)延、零丟包率和最小延遲抖動(dòng)(可靠性)方面則受到嚴(yán)重限制。為突破這一局限,類似時(shí)間觸發(fā)以太網(wǎng)TTEthernet[4,5]、EtherCAT[6]等半公開(kāi)的技術(shù)得到發(fā)展,但這類技術(shù)的核心部分仍舊掌握在提出這些技術(shù)的公司中,并不對(duì)外開(kāi)放,因而限制了其互操作性和互聯(lián)性[7]。國(guó)際上目前成熟的TSN方案,例如博通BCM53570[8]和恩智浦LS1028A[9]的片上系統(tǒng)方案(SoC)以及Intel和TTtech推出的FPGA方案[10]。國(guó)內(nèi)針對(duì)TSN方面的研究則相對(duì)落后,缺少成熟的自主化TSN解決方案,華為、摩莎等企業(yè)雖然推出了相關(guān)TSN交換機(jī)產(chǎn)品,但是否采用自主設(shè)計(jì)芯片以及交換機(jī)內(nèi)部架構(gòu)尚不明確。
在TSN標(biāo)準(zhǔn)方面,為了推進(jìn)以太網(wǎng)技術(shù)在上述具有確定性傳輸需求的應(yīng)用領(lǐng)域的發(fā)展,IEEE 802.1 TSN 工作組(由音頻/視頻橋接工作組演變而來(lái))正在致力于時(shí)間敏感網(wǎng)絡(luò)(time sensitive networking,TSN)的標(biāo)準(zhǔn)化[11]。TSN旨在為以太網(wǎng)在網(wǎng)絡(luò)第二層提供兼容當(dāng)前以太網(wǎng)標(biāo)準(zhǔn)的確定性、高可靠服務(wù)[12]。TSN標(biāo)準(zhǔn)涵蓋廣泛,其中IEEE 802.1ASrev[13]時(shí)鐘同步協(xié)議、IEEE802.1Qbu[14]幀搶占機(jī)制以及IEEE 802.1Qbv[15]流量調(diào)度功能等標(biāo)準(zhǔn)為分布式網(wǎng)絡(luò)中的通信提供了確定性保障[16]。在通信可靠性方面,IEEE 802.1Qca[17]定義的路徑控制和保留機(jī)制以及IEEE 802.1CB[18]的幀復(fù)制和消除機(jī)制可以實(shí)現(xiàn)流量的多路徑備份從而提高通信可靠性[19]。目前,IEEE關(guān)于TSN的多數(shù)草案仍在快速迭代更新中。當(dāng)前TSN工作組主頁(yè)已經(jīng)發(fā)布的標(biāo)準(zhǔn)共有13個(gè),而仍有17個(gè)標(biāo)準(zhǔn)仍在討論與設(shè)計(jì)中[16],涉及到本地注冊(cè)管理、QoS配置、服務(wù)提供商網(wǎng)絡(luò)的TSN配置說(shuō)明等方面。
采用CPU+FPGA軟硬件協(xié)同實(shí)現(xiàn)是快速建立和驗(yàn)證TSN整體解決方案有效的途徑。目前在網(wǎng)絡(luò)處理領(lǐng)域存在例如NetFPGA[20]、FAST[21]等開(kāi)放的網(wǎng)絡(luò)處理平臺(tái),尤其是FAST所提供的高效軟硬件協(xié)同機(jī)制以及靈活的軟硬件可編程特性,為快速構(gòu)建TSN解決方案提供了良好的基礎(chǔ)。但是這類CPU+FPGA的可編程架構(gòu)本身并不具備TSN開(kāi)發(fā)驗(yàn)證所需的基本要素,包括時(shí)間同步、資源與狀態(tài)管理抽象等方面支持。因此,本文在CPU+FPGA架構(gòu)上提出了面向TSN的同步網(wǎng)絡(luò)模型SyncNet,為T(mén)SN的軟硬件協(xié)同實(shí)現(xiàn)提供理論基礎(chǔ)。
SyncNet模型從下至上可以分為確定性交換、傳輸控制、應(yīng)用表述3個(gè)層次,如圖1所示。SyncNet的確定性交換層主要在網(wǎng)絡(luò)交換節(jié)點(diǎn)和端節(jié)點(diǎn)上提供TSN相關(guān)的機(jī)制支撐,主要包括全局時(shí)鐘同步、幀搶占、幀復(fù)制與消除、流量的過(guò)濾與限速、基于時(shí)鐘門(mén)控的整形、隊(duì)列調(diào)度等。在單個(gè)節(jié)點(diǎn)中,TSN相關(guān)的硬件在FAST架構(gòu)下被解耦為功能獨(dú)立的軟硬件模塊,模塊之間采用標(biāo)準(zhǔn)的分組數(shù)據(jù)通信格式進(jìn)行數(shù)據(jù)傳輸,可以方便用戶定義新的TSN功能模塊重組每個(gè)節(jié)點(diǎn)的確定性交換流水線。軟硬件邏輯通過(guò)FAST提供的模塊尋址機(jī)制來(lái)實(shí)現(xiàn)模塊間的數(shù)據(jù)通信。除了TSN相關(guān)邏輯,確定性交換層還提供確定性管理控制相關(guān)的邏輯模塊,包括模塊管理、網(wǎng)絡(luò)測(cè)量等功能。
圖1 SyncNet同步網(wǎng)絡(luò)模型
SyncNet傳輸控制層主要根據(jù)硬件提供的能力保障端到端的確定性、高可靠傳輸,包括網(wǎng)絡(luò)狀態(tài)監(jiān)測(cè)、資源管理與調(diào)度、確定性傳輸路徑規(guī)劃、網(wǎng)絡(luò)配置等功能。基于底層硬件提供的網(wǎng)絡(luò)測(cè)量機(jī)制實(shí)現(xiàn)全網(wǎng)范圍的輕量級(jí)帶內(nèi)遙測(cè),收集網(wǎng)絡(luò)節(jié)點(diǎn)的運(yùn)行狀態(tài)。結(jié)合當(dāng)前的網(wǎng)絡(luò)狀態(tài)信息以及用戶應(yīng)用需求是進(jìn)行全局的流量規(guī)劃與調(diào)度,生成底層網(wǎng)絡(luò)節(jié)點(diǎn)的優(yōu)化配置信息(包括轉(zhuǎn)發(fā)表、時(shí)鐘門(mén)控信息等),保障用戶應(yīng)用的端到端傳輸需求。此外,傳輸層的網(wǎng)絡(luò)配置功能還提供獨(dú)立的接口(配置文件)配置網(wǎng)絡(luò)能力,例如底層網(wǎng)絡(luò)節(jié)點(diǎn)針對(duì)不同類型流量的最大服務(wù)帶寬等,從而方便用戶按需定制TSN網(wǎng)絡(luò)。傳輸控制層承接用戶應(yīng)用與底層網(wǎng)絡(luò),實(shí)現(xiàn)應(yīng)用到底層網(wǎng)絡(luò)資源的優(yōu)化映射。
SyncNet應(yīng)用表述層為用戶使用確定性以及通用網(wǎng)絡(luò)服務(wù)提供編程接口抽象。TSN網(wǎng)絡(luò)的一大特征就是能在同一網(wǎng)絡(luò)中保障不同類型應(yīng)用流量的傳輸需求,既可以提供標(biāo)準(zhǔn)以太網(wǎng)的盡力轉(zhuǎn)發(fā)服務(wù),也可以提供帶寬預(yù)約以及確定性傳輸服務(wù)。針對(duì)不同的應(yīng)用類型,應(yīng)用表述層提供不同的協(xié)議棧以及編程接口。傳統(tǒng)的盡力轉(zhuǎn)發(fā)類流量可以繼續(xù)采用標(biāo)準(zhǔn)以太網(wǎng)協(xié)議棧以及編程接口實(shí)現(xiàn)數(shù)據(jù)傳輸,帶寬預(yù)約以及時(shí)間敏感流量都需要采用單獨(dú)的協(xié)議棧以及編程接口,根據(jù)流量的需求特征提供不同的傳輸服務(wù)。帶寬預(yù)約流量需要明確其流量帶寬需求,時(shí)間敏感流量則需要提供流量周期、每周期數(shù)據(jù)長(zhǎng)度、最大延遲約束等信息。
基于上述SyncNet同步網(wǎng)絡(luò)模型,本文在支持FAST架構(gòu)的可編程設(shè)備OpenBox-S4上進(jìn)行了原型系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)。由于TSN標(biāo)準(zhǔn)目前正在快速發(fā)展階段,且各個(gè)領(lǐng)域?qū)SN網(wǎng)絡(luò)需求各有不同,因此該TSN原型系統(tǒng)的設(shè)計(jì)秉承具備靈活定制能力的模塊設(shè)計(jì)理念,并提供標(biāo)準(zhǔn)化的軟硬件接口方便根據(jù)用戶需求進(jìn)行TSN網(wǎng)絡(luò)定制。而FAST具有可擴(kuò)展硬件流水線、FPGA/CPU協(xié)同處理以及開(kāi)源開(kāi)放等核心特征為這一設(shè)計(jì)提供了良好的基礎(chǔ),也給當(dāng)前TSN網(wǎng)絡(luò)設(shè)備實(shí)現(xiàn)帶來(lái)新的途徑。
SyncNet原型系統(tǒng)設(shè)計(jì)主要有如下設(shè)計(jì)目標(biāo):①基于FPGA實(shí)現(xiàn)支持802.1AS、802.1Qbv,802.1Qch,802.1Qci等TSN核心功能的交換機(jī)原型,支持對(duì)TSN性能的評(píng)估驗(yàn)證[22];②基于FPGA實(shí)現(xiàn)支持802.1AS、802.1Qbv等功能的TSN接口適配器(端系統(tǒng)使用),為時(shí)間敏感應(yīng)用提供編程接口;③基于交換機(jī)和適配器原型,搭建TSN網(wǎng)絡(luò);④實(shí)現(xiàn)TSN網(wǎng)絡(luò)CNC控制器原型,實(shí)現(xiàn)對(duì)TSN網(wǎng)絡(luò)的離線規(guī)劃和配置;⑤實(shí)現(xiàn)支持802.1AS、802.1Qci和802.1Qbv的TSN測(cè)試儀原型,支持TSN數(shù)據(jù)流、Best Effort背景流的發(fā)送、接收和性能統(tǒng)計(jì);⑥實(shí)現(xiàn)TSN網(wǎng)絡(luò)遠(yuǎn)程遙測(cè)功能,可微觀觀測(cè)TSN網(wǎng)絡(luò)時(shí)間同步狀態(tài),交換機(jī)內(nèi)部隊(duì)列狀態(tài)等,為T(mén)SN核心實(shí)現(xiàn)機(jī)制的評(píng)估提供關(guān)鍵數(shù)據(jù);⑦實(shí)現(xiàn)TSN網(wǎng)絡(luò)與IP網(wǎng)絡(luò)的網(wǎng)關(guān)功能。
對(duì)應(yīng)上述設(shè)計(jì)目標(biāo),SyncNet原型系統(tǒng)主要功能節(jié)點(diǎn)包括:TSN交換機(jī)、TSN端系統(tǒng)(帶TSN接口適配器)、TSN_CNC(控制器)、TSN_CUC(用戶配置器)。其中TSN交換機(jī)和TSN端系統(tǒng)都是TSN網(wǎng)絡(luò)節(jié)點(diǎn),具備確定性轉(zhuǎn)發(fā)功能;TSN_CNC是運(yùn)行于端系統(tǒng)的TSN網(wǎng)絡(luò)控制軟件,負(fù)責(zé)對(duì)待測(cè)TSN網(wǎng)絡(luò)進(jìn)行管理控制;TSN_CUC將用戶時(shí)間敏感流量傳輸需求發(fā)送到CNC上經(jīng)過(guò)流量規(guī)劃生成TSN測(cè)試儀發(fā)送時(shí)間敏感流量的時(shí)間槽。除了上述功能節(jié)點(diǎn),為了方便TSN的管理控制以及調(diào)試測(cè)試,原型系統(tǒng)還設(shè)計(jì)了TSN流量分析器(Insight)、TSN測(cè)試儀和TSN網(wǎng)關(guān)。TSN流量分析器用于分析TSN網(wǎng)絡(luò)狀態(tài),包括時(shí)間同步精度、網(wǎng)絡(luò)各節(jié)點(diǎn)流量等;TSN測(cè)試儀負(fù)責(zé)根據(jù)用戶配置生成TSN網(wǎng)絡(luò)測(cè)試流量,包括時(shí)間敏感流量、帶寬預(yù)約流量以及盡力轉(zhuǎn)發(fā)流量,其中盡力轉(zhuǎn)發(fā)流量還可配置不同優(yōu)先級(jí)。TSN網(wǎng)關(guān)則提供接口適配功能,為T(mén)SN網(wǎng)絡(luò)與外部網(wǎng)絡(luò)互聯(lián)提供流量類型轉(zhuǎn)換。
目前,該原型系統(tǒng)所有源碼均已開(kāi)源[23],主要包含TSN相關(guān)的交換機(jī)硬件邏輯代碼、控制器軟件代碼、流量分析器軟件代碼,TSN測(cè)試和管理相關(guān)可執(zhí)行文件以及OpenBox-S4平臺(tái)相關(guān)系統(tǒng)啟動(dòng)文件。上述各節(jié)點(diǎn)詳細(xì)設(shè)計(jì)以及開(kāi)源代碼架構(gòu)請(qǐng)參見(jiàn)項(xiàng)目開(kāi)源站點(diǎn)[23]。
SyncNet原型系統(tǒng)所針對(duì)的網(wǎng)絡(luò)場(chǎng)景如圖2所示。包含9個(gè)Openbox-S4平臺(tái),4臺(tái)Linux主機(jī)和1個(gè)網(wǎng)絡(luò)攝像頭組成。其中6個(gè)Openbox-S4配置成4端口TSN交換機(jī),并組成一個(gè)環(huán)形TSN網(wǎng)絡(luò)。另外3臺(tái)Openbox-S4分別實(shí)現(xiàn)TSN測(cè)試儀、流量分析器和TSN網(wǎng)關(guān)功能。4個(gè)Linux終端分別運(yùn)行TSN網(wǎng)絡(luò)的CNC軟件,Insight軟件(TSN網(wǎng)絡(luò)內(nèi)部狀態(tài)觀測(cè)分析),TSN測(cè)試儀控制軟件和攝像頭視頻顯示軟件。
圖2 SyncNet原型系統(tǒng)工作場(chǎng)景
TSN測(cè)試儀參與TSN網(wǎng)絡(luò)的時(shí)間同步,同時(shí)模擬3個(gè)TSN接口適配器,由測(cè)試儀控制器上的軟件模擬產(chǎn)生TSN流量的應(yīng)用。TSN測(cè)試儀同時(shí)接收TSN流量,對(duì)TSN流量交換的延時(shí)進(jìn)行分析。每個(gè)交換機(jī)的3號(hào)口為T(mén)AP(test access point)口,會(huì)將進(jìn)出的流量打上時(shí)間戳送流量分析器,經(jīng)流量分析器送給TSN-Insight進(jìn)行統(tǒng)計(jì)分析。每個(gè)TSN交換機(jī)內(nèi)嵌Beacon機(jī)制,每1 ms將交換機(jī)內(nèi)部的各種狀態(tài)(同步、隊(duì)列、計(jì)數(shù)器等)發(fā)送給Insight軟件分析和顯示。在全局時(shí)鐘同步的Beacon機(jī)制下,交換機(jī)將自身狀態(tài)信息封裝在Beacon報(bào)文中,周期性地在同一時(shí)刻上報(bào)Beacon報(bào)文(基于PTP擴(kuò)充)到集中控制器,例如Insight上實(shí)現(xiàn)網(wǎng)絡(luò)狀態(tài)監(jiān)測(cè)。與常規(guī)的秒脈沖機(jī)制相比,基于Beacon機(jī)制的精度測(cè)量具有實(shí)現(xiàn)簡(jiǎn)單,無(wú)需專業(yè)的測(cè)試設(shè)備的優(yōu)點(diǎn)[24,25]。
圖2所示的環(huán)形TSN網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)并非SyncNet唯一工作場(chǎng)景,用戶可以根據(jù)其TSN網(wǎng)絡(luò)需求組建其所需的網(wǎng)絡(luò)拓?fù)?,網(wǎng)絡(luò)拓?fù)涞恼{(diào)整主要涉及各端口連接設(shè)備的MAC地址配置以及轉(zhuǎn)發(fā)表的配置。
SyncNet原型系統(tǒng)中TSN交換機(jī)硬件實(shí)現(xiàn)了IEEE 802.1AS定義的PTP時(shí)鐘同步機(jī)制、IEEE 802.1Qch的CQF整形機(jī)制來(lái)支持時(shí)間敏感數(shù)據(jù)的確定性轉(zhuǎn)發(fā)。本文基于圖2所示的SyncNet工作場(chǎng)景組建了如圖3所示的測(cè)試環(huán)境、測(cè)試TSN交換機(jī)的這兩項(xiàng)主要功能,驗(yàn)證基于這兩項(xiàng)標(biāo)準(zhǔn)的TSN確定性轉(zhuǎn)發(fā)能力。該測(cè)試場(chǎng)景包含6個(gè)TSN交換機(jī)節(jié)點(diǎn)的環(huán)形TSN網(wǎng)絡(luò),一臺(tái)TSN控制器以及一臺(tái)TSN測(cè)試儀。TSN交換機(jī)硬件邏輯除了具備確定性轉(zhuǎn)發(fā)所需的功能,還配置了用于網(wǎng)絡(luò)診斷與測(cè)量的Beacon機(jī)制用于收集同步時(shí)鐘信息、分組數(shù)據(jù)逐跳延遲等信息;TSN控制器軟件運(yùn)行于Openbox-S4內(nèi)嵌的ARM核來(lái)控制整個(gè)TSN網(wǎng)絡(luò),該設(shè)備不參與TSN網(wǎng)絡(luò)的時(shí)鐘同步,內(nèi)部硬件邏輯采用標(biāo)準(zhǔn)以太網(wǎng)交換處理邏輯。TSN測(cè)試儀硬件邏輯配置了IEEE 802.1Qci的逐流過(guò)濾與限速功能來(lái)控制不同類型測(cè)試流量的帶寬。
圖3 SyncNet原型系統(tǒng)測(cè)試場(chǎng)景
為了測(cè)試當(dāng)前設(shè)計(jì)的TSN交換機(jī)功能以及性能,TSN交換機(jī)的CQF周期設(shè)置為250 μs,隊(duì)列深度為16,PTP同步周期為1 ms。交換機(jī)相關(guān)參數(shù)可采用腳本文件通過(guò)CNC集中配置。TSN測(cè)試儀向網(wǎng)絡(luò)中注入100 Mbps的盡力轉(zhuǎn)發(fā)背景流和10 Mbps的時(shí)間敏感流量,所有數(shù)據(jù)包采用等長(zhǎng)數(shù)據(jù)包格式,每個(gè)數(shù)據(jù)包大小為250 Byte。對(duì)于CQF設(shè)置的250 μs時(shí)間周期,每個(gè)CQF周期會(huì)有10個(gè)時(shí)間敏感數(shù)據(jù)包會(huì)從測(cè)試儀注入到TSN網(wǎng)絡(luò)中,并通過(guò)回環(huán)網(wǎng)絡(luò)返回到測(cè)試儀從而獲得報(bào)文在TSN網(wǎng)絡(luò)中的傳輸延遲。除了測(cè)試儀產(chǎn)生的時(shí)間敏感數(shù)據(jù)流和盡力轉(zhuǎn)發(fā)流在TSN網(wǎng)絡(luò)中傳輸,實(shí)驗(yàn)還增加了一個(gè)網(wǎng)絡(luò)攝像頭和視頻采集終端,網(wǎng)絡(luò)攝像頭產(chǎn)生的數(shù)據(jù)流以帶寬預(yù)約流的格式進(jìn)入TSN網(wǎng)絡(luò)中,經(jīng)過(guò)TSN回環(huán)網(wǎng)絡(luò)輸出到視頻采集終端,從而形成多種流量同時(shí)在TSN網(wǎng)絡(luò)中傳輸?shù)臏y(cè)試場(chǎng)景。實(shí)驗(yàn)場(chǎng)景外接一臺(tái)運(yùn)行Insight軟件的端系統(tǒng)用于收集各交換機(jī)節(jié)點(diǎn)發(fā)送的Beacon報(bào)文進(jìn)行實(shí)驗(yàn)數(shù)據(jù)分析。實(shí)驗(yàn)包含兩個(gè)部分:PTP時(shí)鐘不同精度測(cè)試以及TSN轉(zhuǎn)發(fā)時(shí)延確定性測(cè)試,實(shí)驗(yàn)結(jié)果如下文所示。
SyncNet原型系統(tǒng)的同步精度基于上文介紹的Beacon機(jī)制進(jìn)行測(cè)試,即每個(gè)交換機(jī)在固定時(shí)間(每1 ms開(kāi)始時(shí))向Insight設(shè)備發(fā)送Beacon分組,由于Beacon分組基于PTP協(xié)議格式,因此沿途交換機(jī)會(huì)記錄該分組的透明時(shí)鐘值。Insight設(shè)備收到Beacon分組時(shí),通過(guò)透明時(shí)鐘的修正(類似AS6802標(biāo)準(zhǔn)中的固化操作)即可推斷這些Beacon源自TSN交換機(jī)之間的時(shí)間偏差。在測(cè)試儀向TSN網(wǎng)絡(luò)中注入100 M盡力轉(zhuǎn)發(fā)背景流的實(shí)驗(yàn)條件下,TSN交換機(jī)之間的同步結(jié)果如圖4所示。圖3所示的交換機(jī)1、2、3、4、5作為同步從時(shí)鐘,都和交換機(jī)0的主時(shí)鐘對(duì)齊,由于該測(cè)試場(chǎng)景中測(cè)試儀從交換機(jī)1注入數(shù)據(jù)到TSN網(wǎng)絡(luò),并通過(guò)交換機(jī)4回到測(cè)試儀。因此,圖4展示的是有背景流干擾的交換機(jī)節(jié)點(diǎn)的同步時(shí)鐘精度。
圖4 交換機(jī)時(shí)鐘同步精度
從圖4中可見(jiàn),所有交換機(jī)的時(shí)鐘同步精度都保持在100 ns以下。而交換機(jī)1~交換機(jī)4的時(shí)鐘同步精度隨著與交換機(jī)0的距離越遠(yuǎn)(TSN環(huán)數(shù)據(jù)單向流動(dòng)),其同步精度越差,其原因?yàn)槟壳盎贐eacon的測(cè)量機(jī)制在進(jìn)行時(shí)鐘同步補(bǔ)償時(shí)精度不高所造成。由于當(dāng)前實(shí)現(xiàn)的PTP機(jī)制無(wú)法將MAC核以及PHY芯片的延遲計(jì)入透明時(shí)鐘,因而需要對(duì)該部分延遲進(jìn)行估算后補(bǔ)償,目前基于Beacon的時(shí)鐘同步計(jì)算對(duì)每一跳交換機(jī)采用固定的值作為MAC和PHY延遲,由于該估算值和實(shí)際值存在誤差,因而導(dǎo)致隨著節(jié)點(diǎn)跳數(shù)增加,距離主時(shí)鐘越遠(yuǎn)的從時(shí)鐘其同步精度就越差。
本實(shí)驗(yàn)對(duì)TSN交換機(jī)所實(shí)現(xiàn)的IEEE 802.1Qch提出的CQF整形模型在典型的時(shí)間槽配置(250 μs)下對(duì)混合流量模式下的10 Mbps時(shí)間敏感流量的交換性能進(jìn)行了測(cè)試。根據(jù)CQF模型,分組在經(jīng)過(guò)n個(gè)交換機(jī)時(shí),延時(shí)可確定性保證在(n-1)*D和(n+1)*D之間。由于測(cè)試中時(shí)間槽D配置為250 μs,因此分組在經(jīng)過(guò)1、2、3、4跳交換機(jī)后,延時(shí)應(yīng)該分別在[0,500 μs],[250 μs,750 μs],[500 μs,1000 μs]以及[750 μs,1250 μs]之間。實(shí)測(cè)結(jié)果如圖5所示,符合預(yù)期。時(shí)間敏感分組數(shù)據(jù)的主要延時(shí)位于CQF隊(duì)列中的延時(shí),由于隊(duì)列切換時(shí)間為250 μs,因此分組的延時(shí)主要由其進(jìn)入隊(duì)列時(shí)間到隊(duì)列切換時(shí)間之間的差值決定,因此隨著時(shí)間的變化,分組延時(shí)成鋸齒形變化也是符合預(yù)期的。
圖5 時(shí)間敏感流量經(jīng)過(guò)各交換機(jī)延遲
經(jīng)過(guò)上述兩個(gè)實(shí)驗(yàn)測(cè)試,可為基于CPU+FPGA架構(gòu)實(shí)現(xiàn)TSN原型系統(tǒng)得到如下結(jié)論:基于硬件PTP是實(shí)現(xiàn)的同步機(jī)制,在規(guī)模有限的網(wǎng)絡(luò)中,可以取得優(yōu)于100 ns的同步延時(shí),經(jīng)過(guò)進(jìn)一步優(yōu)化可以保持在50 ns以內(nèi);TSN中基于802.1Qbv/802.1Qch的整形機(jī)制可以保證轉(zhuǎn)發(fā)延時(shí)的確定性。
針對(duì)目前國(guó)內(nèi)TSN自主化進(jìn)程緩慢,缺乏成熟TSN解決方案的問(wèn)題,本文提出了CPU+FPGA架構(gòu)下的面向TSN同步網(wǎng)絡(luò)模型SyncNet,該模型為T(mén)SN的軟硬件協(xié)同實(shí)現(xiàn)提供了理論支撐?;谠撃P捅疚臉?gòu)建了一個(gè)支持PTP、CQF等機(jī)制的原型系統(tǒng),支持對(duì)底層硬件確定性交換機(jī)制、確定性調(diào)度規(guī)劃算法以及時(shí)間敏感應(yīng)用的驗(yàn)證。最后本文針對(duì)SyncNet原型系統(tǒng)構(gòu)建了實(shí)驗(yàn)測(cè)試環(huán)境,驗(yàn)證了目前SyncNet原型系統(tǒng)的功能正確性以及有效性。