作者:黃玉棟,北京郵電大學(xué)網(wǎng)絡(luò)與交換國(guó)家重點(diǎn)實(shí)驗(yàn)室研一在讀,研究方向?yàn)槲磥?lái)網(wǎng)絡(luò)體系架構(gòu),確定性網(wǎng)絡(luò)
什么是時(shí)延敏感網(wǎng)絡(luò)
時(shí)延敏感網(wǎng)絡(luò)(TSN, Time Sensitive Network)是指能保證時(shí)延敏感流的服務(wù)質(zhì)量,實(shí)現(xiàn)低時(shí)延、低抖動(dòng)和零丟包率的網(wǎng)絡(luò)。
時(shí)延敏感流可分為周期時(shí)延敏感流(PTS, Periodic Time Sensitive),比如工廠里的循環(huán)控制指令、同步信息,和非周期/零星時(shí)延敏感流(STS,Sporadic Time Sensitive),比如事件告警信息。
對(duì)于周期時(shí)延敏感流,一般采用同步的調(diào)度整形機(jī)制,即要求全網(wǎng)設(shè)備進(jìn)行精準(zhǔn)的納秒級(jí)時(shí)鐘同步,其最早的思想來(lái)自時(shí)間觸發(fā)以太網(wǎng)(TTE, Time-Triggered Ethernet),當(dāng)前研究的機(jī)制包括時(shí)間感知整形(TAS)、循環(huán)排隊(duì)轉(zhuǎn)發(fā)(CQF)、基于信用整形(CBS)。
對(duì)于零星時(shí)延敏感流,一般采用異步的調(diào)度整形機(jī)制,即不需要全網(wǎng)時(shí)鐘同步,當(dāng)前的研究機(jī)制包括基于緊急度的調(diào)度(Urgency-Based Scheduler,UBS)、帕特諾斯特機(jī)制(Paternoster)和幀搶占(Frame Preemption)。
看到這么多機(jī)制和新名詞,它們各自有什么作用,又有什么關(guān)聯(lián)和區(qū)別,大腦已經(jīng)反應(yīng)不過(guò)來(lái)了對(duì)不對(duì)?沒(méi)關(guān)系,忘掉以上名詞,接下來(lái)小編將帶領(lǐng)大家化繁為簡(jiǎn)、抽絲剝繭、撥云見(jiàn)日,直擊時(shí)延敏感網(wǎng)絡(luò)調(diào)度整形機(jī)制的本質(zhì)。
什么是調(diào)度整形機(jī)制
調(diào)度整形機(jī)制是交換機(jī)中的兩種服務(wù)質(zhì)量保障機(jī)制,調(diào)度是指隊(duì)列調(diào)度,一般實(shí)現(xiàn)在交換機(jī)的出端口,包含進(jìn)入隊(duì)列、根據(jù)調(diào)度算法選擇發(fā)送隊(duì)列、出隊(duì)傳輸三個(gè)部分;整形是指流量整形,通過(guò)限制端口的轉(zhuǎn)發(fā)速率從而防止交換機(jī)內(nèi)部或下一跳出現(xiàn)擁塞。
由于異步調(diào)度整形機(jī)制無(wú)法保證包的最壞時(shí)延滿足一定閾值,只能保證包的平均時(shí)延和同步方法相當(dāng),且時(shí)延抖動(dòng)比較大,在網(wǎng)絡(luò)擁塞的情況下時(shí)延敏感流很容易產(chǎn)生丟包,當(dāng)前的異步機(jī)制并不成熟,為更好的闡明時(shí)延敏感網(wǎng)絡(luò)的本質(zhì),后文主要先討論使用同步機(jī)制傳輸周期時(shí)延敏感流(PTS)的場(chǎng)景。
如何實(shí)現(xiàn)低時(shí)延、低抖動(dòng)和零丟包率
那么時(shí)延敏感網(wǎng)絡(luò)如何才能實(shí)現(xiàn)低時(shí)延呢?首先,網(wǎng)絡(luò)的每跳時(shí)延可分為鏈路傳播時(shí)延、交換機(jī)處理時(shí)延、出端口排隊(duì)時(shí)延三部分,而端到端時(shí)延為逐跳時(shí)延求和。鏈路時(shí)延和處理時(shí)延基本為固定值,所以減少時(shí)延必須要減少排隊(duì)時(shí)延,即時(shí)延敏感網(wǎng)絡(luò)的本質(zhì)就是不排隊(duì):先通過(guò)優(yōu)先級(jí)隊(duì)列將時(shí)延敏感流和盡力而為流隔開(kāi),再?gòu)臅r(shí)間上(劃分時(shí)隙)或空間上(規(guī)劃路由)將同樣的時(shí)延敏感流隔開(kāi)。
實(shí)現(xiàn)低時(shí)延后,包在交換機(jī)里的停留時(shí)間很短,包的累積不會(huì)超過(guò)隊(duì)列緩沖區(qū)大小,從而實(shí)現(xiàn)零丟包率;同時(shí),抖動(dòng)是指時(shí)延的變化差值,低時(shí)延降低了最壞時(shí)延,讓時(shí)延上界靠近時(shí)延下界,減小了時(shí)延的變化區(qū)間,從而也實(shí)現(xiàn)了低抖動(dòng)。
PTS的頭號(hào)問(wèn)題:配置時(shí)隙
傳統(tǒng)的以太網(wǎng)采用“盡力而為”的轉(zhuǎn)發(fā),無(wú)法保證包的端到端最壞時(shí)延,時(shí)延敏感網(wǎng)絡(luò)采用類似時(shí)分復(fù)用的方式,為每一個(gè)包配置時(shí)隙,保證其有足夠的時(shí)間進(jìn)行轉(zhuǎn)發(fā)。以下總結(jié)三種基于時(shí)間的調(diào)度整形機(jī)制和一個(gè)時(shí)隙配置模型。
時(shí)間觸發(fā)以太網(wǎng)(TTE):把時(shí)間戳打在包上,通過(guò)時(shí)間表控制包的發(fā)送,讓每個(gè)包自己知道自己的發(fā)送時(shí)間,在發(fā)包側(cè)就將各個(gè)包的發(fā)送時(shí)間隔開(kāi),嚴(yán)格保證時(shí)延抖動(dòng)滿足要求。
時(shí)間感知整形(TAS):利用優(yōu)先級(jí)門(mén)控隊(duì)列,即在優(yōu)先級(jí)隊(duì)列后加上門(mén)控開(kāi)關(guān),通過(guò)門(mén)控時(shí)間表控制門(mén)控開(kāi)關(guān)的打開(kāi)閉合來(lái)保證時(shí)延抖動(dòng)要求。其可以阻斷盡力而為流的持續(xù)轉(zhuǎn)發(fā),讓高優(yōu)先級(jí)的包得到穩(wěn)定的間隔轉(zhuǎn)發(fā)時(shí)間,同時(shí)PTS流之間依然要將發(fā)包時(shí)間隔開(kāi),時(shí)延抖動(dòng)保證效果才最好。比如每跳時(shí)延為T(mén),共有n跳,則可保證端到端時(shí)延最大為nT。和TTE相比,讓優(yōu)先級(jí)隊(duì)列決定包何時(shí)被轉(zhuǎn)發(fā),降低了對(duì)發(fā)端的要求,同時(shí)時(shí)延抖動(dòng)保證粒度也會(huì)弱一些。
循環(huán)排隊(duì)轉(zhuǎn)發(fā)(CQF):把TAS里只用一個(gè)最高優(yōu)先級(jí)隊(duì)列來(lái)接收時(shí)延敏感流,變?yōu)橛闷媾純蓚€(gè)隊(duì)列循環(huán)接收,即所謂的乒乓隊(duì)列。其可以用于解決流聚合問(wèn)題,如果兩個(gè)PTS流同時(shí)到達(dá)了,必有一個(gè)PTS要等待轉(zhuǎn)發(fā),循環(huán)排隊(duì)轉(zhuǎn)發(fā)可以保證等待的流只等待前一個(gè)PTS流轉(zhuǎn)發(fā),即一個(gè)周期T,自己再轉(zhuǎn)發(fā)一個(gè)周期T,假設(shè)共有n跳,則端到端時(shí)延可保證最大為2nT。
時(shí)隙配置模型:時(shí)隙的配置問(wèn)題等同于二進(jìn)制背包問(wèn)題,是一個(gè)NP-hard問(wèn)題,時(shí)延敏感網(wǎng)絡(luò)的流量調(diào)度和時(shí)隙配置架構(gòu)流程如下圖所示,首先需要確定合適的轉(zhuǎn)發(fā)平面調(diào)度整形機(jī)制,然后中心化用戶配置(CUC)采集各個(gè)發(fā)端的發(fā)包周期、包大小、流大小、對(duì)時(shí)延抖動(dòng)的要求等信息,以及網(wǎng)絡(luò)的拓?fù)湫畔?,并將這些信息作為輸入,放入時(shí)隙配置模型中;模型包含一系列的多項(xiàng)式約束條件,可采用整數(shù)線性規(guī)劃(ILP)或可滿足性模理論(SMT)等方式進(jìn)行建模,然后用解析器工具或者蟻群算法、模擬退火算法、遺傳算法、禁忌搜索算法等啟發(fā)式算法進(jìn)行求解,最后輸出為滿足這些約束條件的一個(gè)時(shí)隙配置方案,并可采用離線靜態(tài)或者在線增量式的方法進(jìn)行配置下發(fā)。
PTS的衍生問(wèn)題:流聚合、流增量、流突發(fā)
流聚合:當(dāng)拓?fù)鋸?fù)雜、拓?fù)洳粚?duì)稱、存在多個(gè)分支節(jié)點(diǎn)時(shí),得到毫無(wú)排隊(duì)的時(shí)隙配置會(huì)非常困難,下游聚合節(jié)點(diǎn)會(huì)產(chǎn)生流聚合現(xiàn)象,導(dǎo)致PTS流排隊(duì)。CQF是一種解決流聚合的機(jī)制。
流增量:一般的配置方案是離線的靜態(tài)配置方案,每次計(jì)算出方案可能需要花費(fèi)數(shù)個(gè)小時(shí),然后進(jìn)行部署,當(dāng)有新的設(shè)備加入網(wǎng)絡(luò)時(shí),需要考慮逐個(gè)的規(guī)劃時(shí)延敏感流的時(shí)隙配置,同時(shí)保證已下發(fā)的配置不受影響。目前結(jié)合SDN進(jìn)行時(shí)延敏感網(wǎng)絡(luò)增量調(diào)度是一個(gè)比較火的方向,叫TSSDN(Time-sensitive Software-defined Network )。
流突發(fā):當(dāng)網(wǎng)絡(luò)中有零星時(shí)延敏感流時(shí),很有可能與周期時(shí)延敏感流的轉(zhuǎn)發(fā)產(chǎn)生沖突,擾亂已有的時(shí)隙配置?;旌蠒r(shí)延敏感流調(diào)度是當(dāng)前還沒(méi)有解決的一個(gè)問(wèn)題。
PTS的共流問(wèn)題:考慮混合流的QoS和網(wǎng)絡(luò)利用率
共流問(wèn)題也叫做混合流問(wèn)題,時(shí)延敏感網(wǎng)絡(luò)的流量可以分為三類:時(shí)延敏感流(TS),速率限制流(RT)和盡力而為流(BE)。其中時(shí)延敏感流已在第一節(jié)介紹;速率限制流是指專業(yè)音視頻等有一定時(shí)延抖動(dòng)要求,同時(shí)占用帶寬大,需要進(jìn)行速率限制的流量;盡力而為流是普通的可以隨意轉(zhuǎn)發(fā)的以太網(wǎng)流量。
優(yōu)先級(jí)等級(jí)上,TS > RT > BE,一般是轉(zhuǎn)發(fā)完TS流后,剩余的時(shí)隙用來(lái)轉(zhuǎn)發(fā)RT和BE流,并設(shè)立保護(hù)帶寬隔離三種流量。保證了PTS流的服務(wù)質(zhì)量后,從網(wǎng)絡(luò)整體性能出發(fā),還需要考慮保證RT和BE流的服務(wù)質(zhì)量,降低其丟包率,并盡量提高整個(gè)網(wǎng)絡(luò)的帶寬資源利用率。
PTS的隱藏問(wèn)題:時(shí)鐘漂移、廣域時(shí)鐘同步、復(fù)雜度和擴(kuò)展性
PTS調(diào)度整形機(jī)制的實(shí)現(xiàn)都有一個(gè)大前提,那就是嚴(yán)格的全網(wǎng)時(shí)鐘同步,但由于溫度等原因,時(shí)鐘會(huì)產(chǎn)生漂移,一次時(shí)隙沒(méi)有對(duì)齊,就會(huì)導(dǎo)致包無(wú)法在預(yù)計(jì)的時(shí)刻被發(fā)送完,導(dǎo)致整個(gè)調(diào)度出現(xiàn)嚴(yán)重問(wèn)題,只能重啟設(shè)備。
同時(shí),當(dāng)前的時(shí)鐘同步機(jī)制只能保證7跳以內(nèi)大小的局域網(wǎng)內(nèi)的時(shí)鐘同步,如何實(shí)現(xiàn)廣域的時(shí)鐘同步,在更大的范圍內(nèi)實(shí)現(xiàn)時(shí)延抖動(dòng)的保障,同時(shí)還要考慮實(shí)現(xiàn)的復(fù)雜度和實(shí)現(xiàn)成本,這些問(wèn)題都有待討論。
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5419瀏覽量
171598 -
交換機(jī)
+關(guān)注
關(guān)注
21文章
2637瀏覽量
99529 -
時(shí)鐘
+關(guān)注
關(guān)注
10文章
1733瀏覽量
131446
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論