基于FAST的TSN交換(5)TSN交換機隊列結構和延時(shí)分析
發布時(shí)間:2019-1-22
&nbs木了p; 交換機中的排隊延時(shí)是給分組端到端延時(shí)我到帶來不(bù)确定性的重要因素。由于要支持确定性的延時(shí),TSN交換相農機中的隊列設計必須有别于傳統的标準交換機。基于FAST流水線擴展模型和CQF樂森-UDO模塊設計,我們(men)在openbox-S4可編機笑程平台上展開(kāi)TSN交換機原型(FAST-TSN-04)設的制計,本文詳細介紹了該原型機中的隊列模型,并對分組交換延時(shí)進行分秒金析。
一、FAST-TSN-04的隊列模型
電學 FAST-TSN-04要離基于Openbox-S4實現(核心FPGA為(wèi)ZynqXC7Z030)鐘地,支持4個千兆以太網接口分組和TSN的CQF流量整形,可保證精通子确的分組交換延時(shí)。其内部的隊列結構如(rú)下圖所示。分組交換他內過程的緩存主要分為(wèi)三個階段,即輸入緩存,交換緩存和務地輸出緩存。
圖1 FAST-TSN-04的緩存結構
(1)輸出緩存
樹外 輸入緩存在openb著河ox-S4平台提供的FPGA OS中實現,用戶無法根據TSN的科木轉發需求進行任何修改和定制。每個接口接收的分組不(bù)加們學區别的按照先來先服務的隊列形式保存在輸入緩存FIFO隊列中。FIFO隊列的寬你城度為(wèi)128bit,時(shí)鐘機公(zhōng)頻率為(wèi)125HHz。由于每個接口速率為(年道wèi)1Gbps,因此進入FIFO隊列的速率最大(dà)為(wèi對線)1Gbps,而在A點調度器(qì)調度分組輸出帶寬為(wèi)1事上6Gbps(128b*125MHz)。
&n裡就bsp;參考文獻[1]證明了在上述隊列結構下,每個FIFO隊列不(bù那東)溢出的條件為(wèi):
&n刀雨bsp;且分組在隊列中的最大(dà)延時(讀票shí):
員國 将Vi=1Gbps,f=125MHz,Bd=12錯讀8b,L=1500B,N=4帶入可得(de)将每個接收的FI女路FO隊列長(cháng)度設置為(wèi)1外些.8KB即可保證無分組溢出,分組的最大(dà)延時(shí)為(wèi)請木4.5us。
(2)交換緩會視存
窗讀 交換緩存采用共享存儲方式,即B點(FAST流水家長線中的GPP模塊)從PB獲取空閑的緩沖區塊地址,将每個到達日新的分組寫入PB中存儲,同時(shí)将地址信息寫入分組的元數據家個中。FAST流水線模塊(GKE、GME、腦睡GAC)利用分組的元數據進行交換查表,得(de)到其目的輸出接口,即女房可将分組的元數據(包含分組優先級和輸出接口号)寫入相應的媽弟輸出隊列中等待調度。
&nbs門腦p; GAC沒有對TSN進行優中麗化設計,每個端口僅支持高(H)低(dī)短街(L)兩個優先級隊列。支持TSN時(shí),可配置将男跳優先級4-7的分組元數據送高優先級隊列緩存,優先級女問0-3的分組元數據送低(dī)優先級隊列緩存。C點(GAC模塊)的調度器(qì行都)采用兩級調度的思想,第一級是每個輸出端口調度高優先級議土分組輸出,第二級是在多個優先級隊列中采用Round-Robin方式進行調度。
錢南
&nbs有國p; 采用RR調度可能導緻一個端口的低(dī)優先級幀科文先于另一個端口的高優先級隊列發送,這種情況是合理的,因為(wèi)GAC通長調度對應的速率為(wèi)16Gbps,而對應CQF-UDO的輸出帶寬為(w說聽èi)1Gbps,即使高優先級幀被優先調度到UDO模塊中答,還需要在UDO模塊中進行進一步緩存。
&nbs吃通p; 交換緩存是交換機中的重要緩存。當多很些個輸入端口向一個輸出端口同時(shí)發送數據時(shí),交換機理想的緩男農存應該在一定流量條件下保證輸出接口不(bù)溢出。目前TSN工(g老信ōng)作組正在制定面向工(gōng)業自動化場景的TSN規範草案“購章IEC/IEEE 60802 TSN Pr愛業ofile for Industrial Automation“,年玩在工(gōng)作組最新文檔(參考文獻2)中給出制業了交換機輸出接口緩存資(zī)源MinimumFrameMemor作西y的計算公式:
MinimumFrameMemory=船化 (NumberOfPorts – 1) × MaxPortBlocki飛女ngTime × Linkspeed
其中NumberOfP城子orts為(wèi)交換機接口數,MaxPor笑頻tBlockingTime為(wèi)數據緩存務外時(shí)間,Linkspeed為(wèi兵匠)接口鍊路速率。通(tōng)過上述公式,文檔給出了當接口數目為嗎跳(wèi)4,鍊路速率為(wèi)1Gbps,MaxPortBlocki物鐵ngTime為(wèi)典型值200us時(sh書拍í),需要的緩存大(dà)小為(wèi)75又刀KB。
(3)輸出緩存
草司輸出緩存位于CQF-UDO内部,是針對TSN CQF流量整形機好讀制設計的專用隊列。CQF-UDO包含4個隊列,其中Q7和Q6為(wèi湖暗)保存時(shí)間敏感分組的乒乓隊列,Q4為(wèi)保存帶寬預約分組知城的隊列,Q0為(wèi)保留Best Effort分組的低(dī)優先級黃慢隊列。
由于時(s員站hí)間敏感分組(優先級為(wèi)7)和預約帶寬分組(優紙內先級為(wèi)4)在交換緩存中作為(wèi)高優先級分組會(huì)被優先湖黃調度到UDO,因此對于合理的離線調度(不(bù)會(hu離內ì)造成輸出端口擁塞),高優先級流量不(舊對bù)會(huì)在輸出端口長(cháng)子離時(shí)間排隊。
&從化nbsp; 造成輸出接口Q7/Q6排隊的是C銀得QF模型。假設時(shí)間敏感流量乒乓隊列切換的時(shí)間槽為(wèi綠女)125us(802.1Qch中給出的典型切換時(shí)間),且時(跳腦shí)間敏感流量不(bù)超過鍊路負載的20%(200Mb分西ps),因此Q7和Q6每個隊列緩存最大(dà坐兒)需要125us*20%*1Gbps,即3.2KB。
&nb我子sp;Q4隊列主要保存帶寬預約流量,由于在D點(GOE)可使用東睡令牌桶對流量整形,因此Q4的長(cháng)度隻等她花于令牌桶的桶深即可,這裡可設置為(wèi)4KB。
愛窗
&n白樹bsp; Q0隊列隻是用于16G速率到接口聽會1Gbps速率的轉換,隻要D點(GOE)對UDO進行正體1Gbps的帶寬限速老醫,Q0隊列隻需緩存一個大(dà)的完整分組即可,因此選擇2KB即可。
腦城
二、緩存資(zī)源和轉發延時(shí)評估
 件公;(1)存儲資(zī)源評估
根據體時以上分析,對FAST-TSN-04使用的內信存儲資(zī)源進行評估如(rú)下表所示。
動站
&nb校些sp;Opnebox-S4選用Zynq芯片XC7Z030内東什嵌的緩沖區為(wèi)9.3Mb,而FAST-TS綠內N-04使用的緩沖區大(dà)小為(wèi)140KB,約1.1Mb。因此即多他使考慮數據成塊分配導緻緩存效率降低(dī), FPGA内部緩存是可以滿足需照器求的。
(2)延時(sh姐女í)評估
&n舊城bsp; 對FAST-TSN-04的延時(shí)評估主要針對學劇時(shí)間敏感流量和帶寬預約流量。基于上述分析,圖中各參考現明點之間的延時(shí)估算如(rú)下表所示。北器表中的延時(shí)估算為(wèi)頭進到頭出的延時(shí)。員自對于最大(dà)分為(wèi)1500B和千兆帶寬,分組頭進尾出延時(shí和資)還要增肌1500*8b/1GBps=12中機us左右。由于FAST流水線時(shí)鐘(zhōng)為(笑動wèi)125MHz,每個時(shí)鐘(zhōng)節拍8ns,門去1us約125個時(shí)鐘(zhōng)節拍。
離訊
 山火;基于上述分析,不(bù)考慮CQF的緩存需求,交換流程中高優先唱文級分組(時(shí)間敏感分組和預約帶寬分組)最大(d鐵物à)延時(shí)約15us。對于無離線規劃的best effort分組制制,最大(dà)延時(shí)可能超過600us(75場山KB/1Gbps)。
參考文獻
[1] 李韬,孫志剛等,面向下一木裡代互聯網實驗平台的新型報文處理模型——EasySwitch,裡區 計算機學報,2011年11期
[2] Use CasesIEC/IEEE 60802 V1.3,h朋月ttps://1.ieee802.org/t近鄉sn/iec-ieee-60802-tsn-pro靜是file-for-industrial-automation討制/