TSN Qav測試實(shí)踐
1.前言
我們在以往的文章中介紹了TSN相關(guān)的各個內(nèi)容,包括《TSN(時間敏感網(wǎng)絡(luò))純干貨分享》、《TSN(Time-Sensitive Networking)時間敏感網(wǎng)絡(luò) 協(xié)議導(dǎo)讀:時間同步 | 延時 | 802.1Qav | 802.1Qch | 802.1Qbv | 802.1Qbu》、《基于TSN 802.1AS協(xié)議的時間同步分析(7種延時,1次厘清)》等等。本次將介紹TSN Qav的相關(guān)內(nèi)容。
2.什么是Qav
IEEE 802.1Qav 是時間敏感網(wǎng)絡(luò)(TSN)標(biāo)準(zhǔn)族中的重要組成部分,全稱為"Forwarding and Queuing for Time-Sensitive Streams"(時間敏感流的轉(zhuǎn)發(fā)和排隊(duì)),其核心在于引入了基于信用的整形器(Credit-Based Shaper, CBS),確保時間敏感流和普通流能夠獲得預(yù)期的整形流量。
在談到流量整形時,我們先看一下基礎(chǔ)的數(shù)據(jù)轉(zhuǎn)發(fā)方式。在二層VLAN數(shù)據(jù)的VLAN tag中,我們定義了不同數(shù)據(jù)使用了不同的優(yōu)先級,在交換機(jī)的目標(biāo)端口進(jìn)行多個源端口的數(shù)據(jù)轉(zhuǎn)發(fā)時,會根據(jù)緩存隊(duì)列中數(shù)據(jù)的優(yōu)先級進(jìn)行發(fā)送,高優(yōu)先級數(shù)據(jù)會持續(xù)使用發(fā)送資源,最終的數(shù)據(jù)情況如圖所示。
上圖表示了一段1ms窗口內(nèi)目標(biāo)端口轉(zhuǎn)發(fā)的數(shù)據(jù)(紅框?yàn)榉糯髨D),其中高優(yōu)先級數(shù)據(jù)占據(jù)了所有的帶寬資源,形成了蜂擁的現(xiàn)象。這一情況可能會存在2個問題,一是低優(yōu)先級數(shù)據(jù)被完全阻塞無法發(fā)送(雖然數(shù)據(jù)的優(yōu)先級低,但還是希望能有一部分帶寬用于低優(yōu)先級數(shù)據(jù)發(fā)送),二是高優(yōu)先級數(shù)據(jù)蜂擁浪費(fèi)了帶寬資源且增加數(shù)據(jù)丟失的風(fēng)險(即雖然數(shù)據(jù)優(yōu)先級高,但并不期望蜂擁到達(dá)目標(biāo)終端)。
Qav為了優(yōu)化這部分的流量整形,一是限定了高優(yōu)先級流量的最大帶寬來保證可以發(fā)送低優(yōu)先級的數(shù)據(jù),二是使用CBS算法來離散高優(yōu)先級的數(shù)據(jù)發(fā)送。CBS算法為基于信用的計算方式,簡單來說,數(shù)據(jù)想要發(fā)送就需要支付信用點(diǎn),當(dāng)信用點(diǎn)小于0則不允許被發(fā)送,信用點(diǎn)會隨時間恢復(fù)。
如上圖所示,數(shù)據(jù)1、2、3需要轉(zhuǎn)發(fā)到目標(biāo)端口,數(shù)據(jù)1發(fā)送后信用點(diǎn)降低,當(dāng)數(shù)據(jù)1發(fā)送完畢,需要等待信用點(diǎn)恢復(fù)到0后才可以發(fā)送數(shù)據(jù)2,蜂擁的數(shù)據(jù)1、2、3就被整形成了間隔均勻的目標(biāo)數(shù)據(jù)。
使用TSN Systems公司的TSN CoreSolution進(jìn)行數(shù)據(jù)分析后,即可獲得上述的流量圖,in的那一行是源端口的蜂擁數(shù)據(jù),out那一行是經(jīng)過Qav整形后的目標(biāo)端口的數(shù)據(jù),可以直觀地看到,源端口的蜂擁數(shù)據(jù)在目標(biāo)端口轉(zhuǎn)發(fā)后被整形為間隔均勻的目標(biāo)數(shù)據(jù)。
設(shè)置不同的帶寬限制就可以獲得不同的信用點(diǎn)上升和下降速率(即idleSlope和sendSlop),就能控制相應(yīng)數(shù)據(jù)的發(fā)送頻率。結(jié)合低優(yōu)先級數(shù)據(jù)的發(fā)送行為,就會形成特定的數(shù)據(jù)流。
如上圖所示,在低優(yōu)先級數(shù)據(jù)發(fā)送過程中,接收到發(fā)送數(shù)據(jù)1的指令,則信用點(diǎn)會增加,當(dāng)?shù)蛢?yōu)先級數(shù)據(jù)發(fā)送完畢后可以發(fā)送數(shù)據(jù)1,同時消耗信用點(diǎn),數(shù)據(jù)1發(fā)送完畢后由于還有信用點(diǎn),則可以開始發(fā)送數(shù)據(jù)2,數(shù)據(jù)2 發(fā)送完畢后信用點(diǎn)小于0,需要等待信用點(diǎn)恢復(fù)后才能發(fā)送數(shù)據(jù)3。
由此我們可以知道,當(dāng)數(shù)據(jù)延遲在可接受范圍內(nèi),可以通過Qav的方式進(jìn)行流量整形,以達(dá)到平緩數(shù)據(jù)和保證低優(yōu)先級數(shù)據(jù)不被長時間阻塞的目的。
3.怎么測試Qav
理清了Qav基本內(nèi)容后,我們來說明一下如何進(jìn)行Qav的測試。我們把Qav測試分為一致性測試和自定義測試,一致性測試是基于AVnu發(fā)布的一致性測試規(guī)范,而自定義測試則是需要基于OEM的需求以及Qav相關(guān)的流量配置來進(jìn)行測試。
1)Qav一致性測試
Qav的一致性測試主要包含3個章節(jié)的內(nèi)容,分別是轉(zhuǎn)發(fā)機(jī)制驗(yàn)證、CBS算法驗(yàn)證、AVB及非AVB的交換機(jī)特殊性驗(yàn)證。測試環(huán)境大部分是基于一個源端口轉(zhuǎn)發(fā)到一個目標(biāo)端口,如下圖所示。
也存在特殊的環(huán)境,如一進(jìn)二出和二進(jìn)一出的場景,如下圖所示。
一致性測試的過程中通常需要根據(jù)不同的測試要求,修改交換機(jī)以及Qav的配置,如設(shè)置特定的預(yù)留帶寬、配置特定的轉(zhuǎn)發(fā)流等。
2)Qav自定義測試
Qav的自定義測試通常需要OEM的需求和配置作為前提,比如在設(shè)計階段,需要拆解存在哪些流量,每個流量應(yīng)該如何分類到Qav的配置中,對應(yīng)的預(yù)留帶寬應(yīng)該是多少,有哪些端口需要啟用Qav等等。
有了這些定義之后,我們就可以對需要測試的流量進(jìn)行拆解分析,設(shè)計合適的用例來驗(yàn)證Qav的機(jī)制實(shí)現(xiàn)情況、流量偏差情況、流量沖突處理行為是否正常等等。
3)測試工具的選擇
由于Qav的測試更多地需要流量分析而不是單一數(shù)據(jù)的判斷處理,我們更推薦TSN CoreSolution來進(jìn)行這部分的測試。TSN CoreSolution可以實(shí)現(xiàn)在交換機(jī)的源端口打入特定的流量,然后對于流量的轉(zhuǎn)發(fā)關(guān)系進(jìn)行記錄和檢查,同時結(jié)合其Data Flow中用戶自定義的配置和分析規(guī)則,形成直觀的數(shù)據(jù)流量表現(xiàn),簡單操作可見如下示例。
4)測試示例
我們選擇一項(xiàng)測試來進(jìn)行說明。首先我們配置了Qav中的高優(yōu)先級和低優(yōu)先級數(shù)據(jù),同時分配高優(yōu)先級數(shù)據(jù)的預(yù)留帶寬為20Mb/s,在交換機(jī)的源端口打入高優(yōu)先級數(shù)據(jù)80Mb/s,并在高優(yōu)先級數(shù)據(jù)間隔中插入低優(yōu)先級數(shù)據(jù),期望在目標(biāo)端口只有20Mb/s的高優(yōu)先級數(shù)據(jù)。
我們需要的分析規(guī)則如下:
首先在真實(shí)環(huán)境或者LOG分析中,過濾源端口數(shù)據(jù)和目標(biāo)端口數(shù)據(jù),需要展示源端口的整體數(shù)據(jù)和帶寬,在目標(biāo)端口中過濾出高優(yōu)先級數(shù)據(jù)和低優(yōu)先級數(shù)據(jù)并展示,同時展示高優(yōu)先級數(shù)據(jù)的帶寬。在TSN CoreSolution的Data Flow具體配置如下:
然后在TSN CoreSolution的輸出頁面,可以查看到總輸入帶寬大約100Mb/s,輸出的高優(yōu)先級數(shù)據(jù)帶寬大約20Mb/s,見下圖總覽:
將展示的結(jié)果進(jìn)行放大,可以看到輸入的高優(yōu)先級數(shù)據(jù)每幀1000字節(jié),低優(yōu)先級數(shù)據(jù)每幀100字節(jié),均勻間隔穿插發(fā)送,而輸出端限制了高優(yōu)先級的數(shù)據(jù),此發(fā)送行為受CBS算法控制而形成預(yù)期帶寬的數(shù)據(jù)輸出,見下圖:
我們再放大數(shù)據(jù)展示并進(jìn)行時間戳的標(biāo)注,就可以直觀地看到當(dāng)Qav機(jī)制生效后的數(shù)據(jù)延遲表現(xiàn),如下圖示例,蜂擁的高優(yōu)先級數(shù)據(jù)被整形為間隔300多μs的目標(biāo)端數(shù)據(jù)。
4.總結(jié)
本次為大家介紹了TSN Qav的相關(guān)基礎(chǔ)知識和測試內(nèi)容,了解了其優(yōu)劣勢和相關(guān)特點(diǎn),后續(xù)會帶來更多關(guān)于TSN協(xié)議的測試實(shí)踐內(nèi)容,敬請關(guān)注。
北匯信息是TSN Systems在中國的獨(dú)家合作伙伴,借助其專業(yè)的TSN工具TSN Coresolution,能夠?yàn)橄乱淮鶨/E架構(gòu)中時間敏感網(wǎng)絡(luò)提供系統(tǒng)級測試解決方案,包括系統(tǒng)設(shè)計測試、系統(tǒng)性能測試以及系統(tǒng)魯棒性測試等
注:文中圖片來源于TSN CoreSolution、AVnu
參考文獻(xiàn)
[1] IEEE Std 802.1Qav
[2] Automotive Bridge SR Class & FQTSS Test Plan
本文來自博客園,作者:{北匯信息},轉(zhuǎn)載請注明原文鏈接:{http://www.rzrgm.cn/polelink/}

浙公網(wǎng)安備 33010602011771號