鄧淇夫
(上海北匯信息科技有限公司北京分公司,北京 102208)
物聯(lián)網(wǎng)、5G、工業(yè)互聯(lián)網(wǎng)等新一代信息通信技術(shù)的發(fā)展,加快了傳統(tǒng)行業(yè)轉(zhuǎn)型升級(jí)的步伐,物物互聯(lián)的通信需求也隨之增加。例如在智能制造中,實(shí)時(shí)控制、邊緣計(jì)算、數(shù)字孿生等應(yīng)用場(chǎng)景對(duì)低延時(shí)、低抖動(dòng)和高可靠性的承載需求要求非常嚴(yán)格。傳統(tǒng)以太網(wǎng)已經(jīng)不能滿足越來越多的數(shù)據(jù)和廣泛分布的網(wǎng)絡(luò)需求,時(shí)間敏感網(wǎng)絡(luò)(TSN)技術(shù)應(yīng)運(yùn)而生[1]。TSN協(xié)議族根據(jù)實(shí)現(xiàn)功能可以分為:定時(shí)與同步、延時(shí)、可靠性和資源管理四個(gè)類別[2],本文則將介紹實(shí)現(xiàn)可靠性功能中的802.1Qci協(xié)議。
IEEE 802.1 Qci全稱Per-Stream Filtering and Policing(以下簡(jiǎn)稱PSFP),即對(duì)每個(gè)數(shù)據(jù)流采取過濾和控制策略,以確保輸入流量符合規(guī)范,從而避免由故障或惡意攻擊(如Dos攻擊)引起的異常流量問題。本文將通過分析異常流量問題,闡釋可行的過濾控制策略,以及為什么Qci推薦使用對(duì)每個(gè)數(shù)據(jù)流(Per-stream)的過濾控制策略,最后介紹PSFP的基本工作過程。
異常流量是指發(fā)送端或交換機(jī)發(fā)送了過多流量,或是在錯(cuò)誤的時(shí)間發(fā)送流量,這樣就占用了其他流量的帶寬,導(dǎo)致這些流量的帶寬和時(shí)延都無法保證,甚至?xí)绊懙秸麄€(gè)網(wǎng)絡(luò)。
圖1展示了基本的異常流量現(xiàn)象,圖1中T1、T2是2個(gè)發(fā)送節(jié)點(diǎn),L1、L2、L3作為3個(gè)接收節(jié)點(diǎn),B1、B2是2個(gè)Bridge設(shè)備,紅色、綠色分別表示T1、T2發(fā)送的數(shù)據(jù)流;這里T1發(fā)送的數(shù)據(jù)流超出其規(guī)定的帶寬,導(dǎo)致同樣從B1流出的T2數(shù)據(jù)流受到影響,使得接收節(jié)點(diǎn)L3接收數(shù)據(jù)的帶寬和延遲要求沒有滿足。
圖1 數(shù)據(jù)流T2受到數(shù)據(jù)流T1影響
為了解決上述的異常流量現(xiàn)象,可以在異常流量進(jìn)入Bridge設(shè)備時(shí)采取過濾和控制策略,如圖2所示。
圖2 過濾后,數(shù)據(jù)流T2不再受到影響
圖2中,在B1輸入端口處引入過濾器,過濾器會(huì)對(duì)經(jīng)過的異常流量采取限制措施,使得在B1輸出端口處各流量均能滿足其帶寬要求。
在對(duì)流量的限制上,有多種過濾和控制策略。按照過濾方式可以分為:對(duì)單個(gè)流量過濾(以下簡(jiǎn)稱單流)[3](圖3)和對(duì)單個(gè)流量類(Traffic class)過濾(以下簡(jiǎn)稱單類)(圖4)。按照控制方式可以分為限流和阻斷。組合起來就有4種過濾和控制策略,接下來分析這些策略。需要注意的是,過濾和控制都是針對(duì)有帶寬要求的流量,即不適用于BE(Best Effort)數(shù)據(jù)流。
圖3 單個(gè)流量過濾
圖4 單個(gè)流量類過濾
如圖5所示,每個(gè)交換節(jié)點(diǎn)的輸入端口均設(shè)置了單類過濾器,在輸出端口設(shè)置有基于信用的整型器(CBS)。圖中的紅、藍(lán)、綠3種顏色表示的流量均屬于同一流量類,因此,在B1的單類過濾器處,由于紅色流量發(fā)生異常,導(dǎo)致總的流量類帶寬為35+20,超出40Mbit/s的限額,從而觸發(fā)限流控制策略,使得紅色流量實(shí)際輸出帶寬為30Mbit/s,藍(lán)色流量實(shí)際輸出帶寬變?yōu)?0Mbit/s;在B2輸入端口處,紅、綠、藍(lán)流量均滿足了單類過濾器的要求,但在輸出端口處,紅、綠流量之和為30+55,超出了75Mbit/s整型要求,使得綠色流量的最終輸出變?yōu)?5Mbit/s。
圖5 單類限流方式
由此可以看出,單類+限流的過濾控制策略不能隔絕異常流量的影響,在圖5中藍(lán)、綠流量自身沒有異常,但最終仍受到紅色異常流量的影響。
如圖6所示,通過改變控制方式為阻斷,可以確保綠色流量的帶寬要求,但藍(lán)色流量因?yàn)榕c紅色流量同屬一個(gè)流量類,因此也被阻斷。
圖6 單類阻斷方式場(chǎng)景1
再考慮另一情況,如圖7所示,同樣是單類+阻斷的過濾控制,但是僅紅色流量異常變?yōu)?0Mbit/s,而藍(lán)色流量此時(shí)沒有數(shù)據(jù)發(fā)送,所以對(duì)于B1的單類過濾器無法檢測(cè)出紅色流量的異常;在B2輸出端口,由于CBS限制使得紅色流量變?yōu)?5Mbit/s,而綠色流量變?yōu)?0Mbit/s,由此可以看出單類檢測(cè)會(huì)存在不能徹底檢測(cè)異常流量的情況,也就無法隔絕異常流量對(duì)其他流量的影響。
圖7 單類阻斷方式場(chǎng)景2
如圖8所示,采用單流+限流的方式,成功限制了異常流量,并且其他流量沒有受到影響;但是,由于采用限流的方式,這意味著存在選擇性丟包的情況,即數(shù)據(jù)可能發(fā)生錯(cuò)誤,而接收端會(huì)認(rèn)為接收到的是正常的流量。
圖8 單流限流方式
圖9是單流+阻斷的過濾控制策略,此時(shí),僅有出現(xiàn)異常的流量受到影響,其他流量正常傳輸。
圖9 單流阻斷方式
從以上4種過濾控制策略的對(duì)比可以看出,單類過濾僅需要實(shí)現(xiàn)更少的過濾器,但無法保證正常流量的帶寬和延時(shí)要求;與之相對(duì)的,單流過濾可以確保僅異常流量受到控制,其他正常流量不受影響,但需要對(duì)每個(gè)流量都要實(shí)現(xiàn)單獨(dú)的過濾器,這無疑需要更多開銷;阻斷控制相比限流控制更直接也更安全,一方面確保惡意流量無法進(jìn)入,另一方面確保流入的數(shù)據(jù)是完整的。
PSFP支持以上4種過濾控制方式,但推薦采用的是單流過濾和阻斷控制的組合,因?yàn)榇朔N方式既隔絕異常流量,又不影響網(wǎng)絡(luò)中其他流量,又能最大程度地保障數(shù)據(jù)的完整性。
PSFP由圖10中Stream Filters、Stream Gates和Flow Meters 3個(gè)表配合完成[4],下面簡(jiǎn)要介紹它們。
圖10 PSFP工作過程
1)Stream Filters,即流過濾器表,每個(gè)表項(xiàng)表示某個(gè)流對(duì)應(yīng)的過濾器,與下文中的特定門控(Gate)和流量計(jì)(Meter)關(guān)聯(lián)。
2)Stream Gates,即流門控表,每個(gè)表項(xiàng)表示對(duì)某個(gè)流采取的門控措施(如門控狀態(tài)為關(guān),表示禁止對(duì)應(yīng)流量流入)。
3)Flow Meters,即流量計(jì)表,每個(gè)表項(xiàng)表示對(duì)某個(gè)流的流量統(tǒng)計(jì),當(dāng)該流量超過了限制帶寬則采取限流或阻斷的控制。
PSFP的基本工作流程:首先流過濾器根據(jù)其中定義的流標(biāo)識(shí)(Stream ID)、優(yōu)先級(jí)(Priority)信息,識(shí)別出流量是否遵循該過濾器,若由該過濾器控制,根據(jù)對(duì)應(yīng)的門控決定是否允許流量流入,若允許流入,則由流量計(jì)中參數(shù)判斷是否超出限額,若超出限額,根據(jù)配置決定采用限流還是阻斷。
再來考慮PSFP的基本應(yīng)用場(chǎng)景:①對(duì)于未知來源的流量,PSFP通過設(shè)置門控關(guān)閉,阻止可疑流量流入;②對(duì)于已知來源的異常流量,這里的異常表現(xiàn)不限于帶寬(帶寬超出預(yù)留帶寬),還包括如最大數(shù)據(jù)服務(wù)單元(SDU)長(zhǎng)度超出要求等,PSFP可以選擇阻斷或限流。
由此,PSFP通過對(duì)入站流量的過濾和控制策略,提高了網(wǎng)絡(luò)的可靠性。
IEEE 802.1 Qci作為TSN協(xié)議中高可靠性部分的重要協(xié)議,使用過濾和控制策略,確保輸入流量符合規(guī)范,防止惡意攻擊引起的異常流量,由此提升整體網(wǎng)絡(luò)的健壯性和安全性。