0731-84728105
15116127200
OpenBox:軟件(jiàn)定義時間敏感網絡SD-TSN
發布時間:2021-05-18
      軟件(jiàn)定義時間敏感網絡:SD-TSN。融合了軟件(jiàn)定義網絡技(jì)術(shù)與時間敏感網絡技(jì)術(shù)的綜合系統網絡。該網絡既具備軟件(jiàn)定義網絡的組網靈活性、協議無關轉發的高(gāo)适應性、轉發控制分離的高(gāo)效性與可控性,同時又(yòu)具有低(dī)延時、低(dī)抖動的時間敏感特性。通(tōng)過軟件(jiàn)流表與隊列映射的靈活定義,極大放(fàng)寬了全網流規劃調度的難度,增強了TSN網絡的适用範圍和行業(yè)兼容性。
     TSN的時間敏感特征到(dào)底是誰的屬性?毋庸置疑,這是業(yè)務的屬性。TSN的技(jì)術(shù)标準起源于音(yīn)視頻行業(yè),其核心特性要求是高(gāo)實時和同步傳輸。為(wèi)什麽是高(gāo)實時與同步傳輸這兩個(gè)特性呢(ne)?因為(wèi)這确實是屬于現代多(duō)媒體業(yè)務發展的必然需求,比如說實況賽事(shì)直播。随著(zhe)現代工(gōng)業(yè)互聯網的發展和生(shēng)産規模的擴大及協同要求,TSN所提供的網絡特性逐漸被工(gōng)業(yè)界各行業(yè)所關注和吸引,特别是在IT與OT融合和5G技(jì)術(shù)的商用背景下(xià),TSN技(jì)術(shù)的重要性越發變得明顯。
     萬物(wù)皆有宿命,技(jì)術(shù)在特定領域下(xià)所擁有的優勢也必然成為(wèi)它在适應其他領域的不足。我們深入研究技(jì)術(shù)的核心與本質,不迷信技(jì)術(shù),善于結合技(jì)術(shù)的優勢來解決業(yè)務的痛點。
      1.确定的網絡需要确定的環境
     在當前時代與技(jì)術(shù)背景下(xià),TSN确實變得很重要。但它并不是靈丹妙藥,也不是萬能(néng)解藥。TSN技(jì)術(shù)的重要性主要體現在其技(jì)術(shù)規範要求的網絡環境下(xià),可以确保業(yè)務的分組數據以确定的延時和較小(xiǎo)的抖動到(dào)達業(yè)務對端。TSN的核心特征是保證确定的延時(範圍),可以規劃出較小(xiǎo)延時。抖動大小(xiǎo)跟具體網絡業(yè)務流量、調度策略相(xiàng)關。為(wèi)保障上(shàng)述特征,在TSN網絡系統中網絡環境的各種參數,如時間、流特征以及調度控制都是其正确運行的先決條件(jiàn),确定因素。
     1.1 全局時間同步
     時鍾同步比較好理解,就(jiù)好比全中國(guó)都使用北(běi)京時間對自(zì)己的生(shēng)産和生(shēng)活進行安排參考。TSN網絡運行的前提條件(jiàn)就(jiù)是時間同步,隻有所有節點全都同步到(dào)了一(yī)個(gè)全局的時鍾刻度,才有可能(néng)為(wèi)其進行業(yè)務流的規劃,各流之間才不會(huì)碰撞。例如高(gāo)鐵網絡,各個(gè)站(zhàn)點之間如果不都是基于北(běi)京時間來進行列車調度,肯定無法完成整個(gè)高(gāo)鐵網絡的正确運轉,甚至帶來嚴重後果。時間同步是基于時間信息做規劃調度的前期和基礎。
     1.2 時間敏感流參數明确
     TSN對流的要求一(yī)是确定且固定的周期性;二是分組長(cháng)度盡量固定;三是有可接受的延時與抖動指标。TSN網絡隻能(néng)保障時間敏感流的實時性和可靠性,其關鍵原因就(jiù)是這些時間敏感流的業(yè)務特征是明确的,先知的。不具備周期性的流,調度程序無法為(wèi)其做出無限期的門(mén)控規劃。分組長(cháng)度随機(jī)的流則隻能(néng)按最壞情況(最大MTU)大小(xiǎo)為(wèi)其規劃,造成該分組轉發後的調度時隙資源的浪費(fèi),為(wèi)其他更多(duō)流的規劃帶來限制和困難。延時和抖動本身就(jiù)是時間敏感流自(zì)備的屬性,同時也是做規劃調度需要計算(suàn)考慮的因素。
     隻有這些流屬性參數都明确,才能(néng)為(wèi)其進行統一(yī)的規劃調度。否則,流的周期不确定,或是分組長(cháng)度随機(jī),都将無法為(wèi)其提供TSN流的服務,隻能(néng)當作BE流來處理。
     1.3 全網統一(yī)規劃調度
     TSN流一(yī)定是先規劃調度再上(shàng)線運行。在全局時鍾同步和時間敏感流的各項屬性參數都明确的條件(jiàn)下(xià),可以準備做全網流量轉發的規劃調度,生(shēng)成各節點各端口的門(mén)控列表。規劃調度的輸入參數非常多(duō),求解過程也非常複雜(zá)。有無解或最優解生(shēng)成取決于規劃程序對完整系統的方方面面因素的考慮與算(suàn)法的合理性。随著(zhe)TSN流數量的增加、流周期的沖突增加和最小(xiǎo)公倍數變大,規劃調度的計算(suàn)結果會(huì)程指數性變化,可能(néng)甚至無法求解。
     綜上(shàng)所述,TSN網絡需要在全局同步在同一(yī)個(gè)時鍾刻度基礎上(shàng)運行,所有時間敏感流需要具備明确的周期性、固定分組長(cháng)度和可接受的延時與抖動值。
     2.行業(yè)需求與TSN要求之間的磨合
     TSN網絡的時間特征優勢與高(gāo)帶寬優勢被許多(duō)使用傳統總線的行業(yè)所關注,這些行業(yè)正在考慮向TSN網絡轉移,如車載網絡、工(gōng)業(yè)制造控制網絡等。在我們對TSN業(yè)務調研中發現,大多(duō)數的客戶應用場景中,隻存在較少完全符合TSN特征要求的流,不管從(cóng)數量上(shàng)還(hái)是流量上(shàng)來看(kàn),10%都不到(dào),另外80%的流對實時都有要求,但并不完全符合TSN流的特征要求,特别是周期性。剩下(xià)的BE流數量不多(duō),流量也不大。可能(néng)是想上(shàng)TSN技(jì)術(shù)的行業(yè)考慮更多(duō)的主要還(hái)是有實時要求的業(yè)務,或是BE業(yè)務仍較龐大,依然保留現網的運營模式。
     2.1 流特征
     TSN整個(gè)網絡系統的正确運行是基于所有數據IO與轉發節點都同步在一(yī)個(gè)時鍾基準上(shàng),并基于全局的時鍾進行規劃的統一(yī)調度,為(wèi)每一(yī)條流都指定一(yī)個(gè)進入網絡的時間槽位置。核心内容就(jiù)是全網時鍾同步和統一(yī)規劃調度。那非周期性流是否可以當作TSN流使用呢(ne)?非固定長(cháng)度分組是否也可以呢(ne)?答案是不确定的。首先,非周期性流的不确定性主要是看(kàn)非周期性流産生(shēng)的方式,如果是純随機(jī)發生(shēng),也不存在産生(shēng)的最小(xiǎo)間隔,或者說可能(néng)的最小(xiǎo)間隔非常小(xiǎo),那這樣的流确實很難放(fàng)進TSN網絡進行規劃。其次,非固定長(cháng)度可以在規劃時統一(yī)成最大長(cháng)度進行規劃。但是會(huì)造成一(yī)些實時調度時隙的空閑。若存在調度能(néng)接受的最小(xiǎo)時間間隔和随機(jī)長(cháng)度所帶來的不穩定抖動,則可以考慮按照(zhào)其最小(xiǎo)間隔方式規劃該流,其最大抖動會(huì)是該流的最小(xiǎo)間隔長(cháng)度加上(shàng)系統抖動的最大值。若規劃結果符合TSN流的預期則可以部署實施,若無法規劃或最優解無法滿足流的延時與抖動要求,則無法完成此類型流的規劃部署要求。
     2.2 協議特征
     轉移到(dào)TSN網絡的行業(yè)場景裡(lǐ),存在大部分的總線節點,其傳輸協議并不是标準的以太網和IPv4等網絡标準協議,更多(duō)的是一(yī)些專有協議,并不完全滿足802.1Q規範。這些節點通(tōng)常又(yòu)需要實時性,是完成業(yè)務實時功能(néng)需求的必要組成。如何讓這些節點能(néng)快速接入到(dào)TSN網絡中是行業(yè)轉網的一(yī)大挑戰。可行的方案有很多(duō),無非是從(cóng)兩邊入手。要麽讓這些節點全部按照(zhào)标準協議來轉換,要麽TSN網絡能(néng)支持協議無關的轉發。二者總要有一(yī)方妥協才能(néng)組合到(dào)一(yī)起正常工(gōng)作。
     2.3 延時與抖動保障
     任何存在數據交互的行業(yè)應用對數據傳輸的要求都少不了低(dī)延時和低(dī)抖動。就(jiù)TSN技(jì)術(shù)而言,Qch标準解決的是延時确定化,而Qbv是提供實現延時最小(xiǎo)化的可能(néng)。在傳統的BE網絡,分組進入鏈路(lù)完全靠運氣,憑借著(zhe)一(yī)股執念終成正果的精神在網絡空間橫沖直撞。而在TSN網絡中,所有的時間敏感流分組都要求按規劃的時間槽進入,避免大家出現碰撞。換個(gè)技(jì)術(shù)詞彙可以用時分網絡來形容一(yī)下(xià)。在時分網絡中,時間的規劃是至關重要的。
     Qch以乒乓隊列形式進行調度,其流的規劃策略相(xiàng)對簡單,流在每個(gè)節點至少等待一(yī)個(gè)調度周期,故其到(dào)達目标節點的時間是在固定範圍之内的。這種調度方式固然實現确定延時,但無法有效降低(dī)延時,也不适應不同周期、延時和抖動差異化要求的混合業(yè)務調度。
     Qbv可以實現多(duō)個(gè)不同隊列,每個(gè)隊列可映射不同的TSN流進行轉發。舉個(gè)更為(wèi)形象的例子,TSN網絡就(jiù)好比是多(duō)車道交通(tōng)網絡,每個(gè)分組為(wèi)一(yī)輛小(xiǎo)車。每輛車都會(huì)行駛在一(yī)條指定的車道上(shàng),在通(tōng)過交叉路(lù)口的時候根據紅(hóng)綠信号燈通(tōng)行。不同車道都有一(yī)個(gè)信号燈指示其可否通(tōng)行。Qbv的調度跟上(shàng)述模型基本一(yī)緻,當我們規劃某輛車在某條車道上(shàng)行駛,規劃好其進入車道的時間,行進到(dào)路(lù)口時,将其車道亮起綠燈,并且确保直至目的地的每個(gè)路(lù)口都在車輛到(dào)達時刻為(wèi)綠燈,則該車輛将以最短時間通(tōng)過該交通(tōng)網絡。這種開(kāi)車體驗隻有與你在路(lù)口沒亮交通(tōng)信号燈也沒有交通(tōng)警察指揮(BE網絡)的情況下(xià)開(kāi)車對比後才能(néng)夠得到(dào)。這麽美好的開(kāi)車體驗是不是人人想要?整個(gè)交通(tōng)網絡都按照(zhào)這種方式來控制信号燈是否可行?是不是可以一(yī)條道車開(kāi)到(dào)終點?人工(gōng)智能(néng)與自(zì)動駕駛技(jì)術(shù)的到(dào)來會(huì)加速這一(yī)可能(néng),但并不是所有交通(tōng)網絡都會(huì)這樣運行。回到(dào)TSN網絡上(shàng),如果TSN的流很少,很明顯可以比較容易做到(dào)這一(yī)點。但是随著(zhe)TSN流的數量增加,其周期性、延時與抖動要求互不讓步的情況下(xià),這種規劃調度的難度會(huì)越來越來大,甚至變得不可能(néng)。
     所以,在TSN網絡系統中最難的事(shì)情既不是時鍾同步、也不是Qbv調度,而是全系統TSN流的調度規劃。特别是在現有TSN的規範标準和現有行業(yè)需求背景下(xià),其靈活度、适應性和普适性是很難滿足各行各業(yè)特有時間敏感需求的功能(néng)場景。
     宿命并非終點,命運是通(tōng)往終點的過程。任何技(jì)術(shù)都是為(wèi)了解決行業(yè)需求産生(shēng)的,在具體行業(yè)場景下(xià),技(jì)術(shù)能(néng)力必須适用本行業(yè)特征,支持行業(yè)特性的定義與定制。
     1.SDN是網絡架構,TSN是網絡屬性
     在TSN技(jì)術(shù)規範定義的時候,SDN的概念剛剛興起。SDN的出現,打破了對傳統網絡的管理與調度方式,其數控分離理念與流表定義的方式使得網絡轉發更具規劃性與可控性。SDN是一(yī)種網絡架構及管理層面的突破,是為(wèi)了讓網絡數據平面更專注、控制平面更靈活。而TSN的時間敏感特征應該是網絡分組的一(yī)個(gè)專有屬性,是對網絡流特征的一(yī)種規範和定義,參考其規範要求實現傳輸則可以滿足時間敏感特性,與網絡架構、拓撲組成以及分組轉發方式等無關。其核心調度規劃和門(mén)控輸出其實也符合SDN思想,可以通(tōng)過軟件(jiàn)方式來靈活定義不同的門(mén)控數據以控制流的精确傳輸。
     2.将SDN架構網絡賦予TSN屬性
     從(cóng)網絡架構與功能(néng)特性上(shàng)分析,将TSN的流特性加入到(dào)SDN網絡中應該會(huì)是一(yī)個(gè)更好的網絡解決方案。同時具備時間敏感特性和網絡靈活定義,其應用範圍與适應能(néng)力會(huì)得到(dào)更好的擴大和強化。
     結合目前行業(yè)需求與TSN規範中存在的問題,我們分析認為(wèi),網絡的轉發行為(wèi)及方式需要由我們自(zì)己靈活定義,并且是可以為(wèi)每個(gè)節點不同隊列定義不同的行為(wèi)與方式。TSN通(tōng)過VLAN的優先級字段映射到(dào)不同調度隊列,是屬于類流調度。SDN的流表匹配及隊列映射也可以實現将不同流映射到(dào)不同調度隊列,這二者其實差異不大,無非是SDN的流表可以用更多(duō)元組字段表示,最終都是将流映射到(dào)了某個(gè)指定隊列。但SDN的流表可以在不同交換機(jī)上(shàng)設置不同的映射隊列,錯(cuò)開(kāi)某個(gè)産生(shēng)碰撞的隊列和時間。在複雜(zá)的調度規劃中,部分交換機(jī)的流量可能(néng)會(huì)比較大,隊列的不同時間槽會(huì)排得比較滿,導緻某些流按同一(yī)優先級隊列調度輸出可能(néng)産生(shēng)碰撞。那麽在延時和抖動允許的條件(jiàn)下(xià),我們可以在适當節點為(wèi)其換個(gè)隊列,繼續轉發,以保證系統可以調度規劃更多(duō)的流。SDN的靈活定義在此顯得格外重要,當然,我們也可以通(tōng)過SDN流表定義該流走網絡中的另一(yī)條路(lù)徑來躲避這種可能(néng)。SDN技(jì)術(shù)可以為(wèi)全系統的流量調度規劃帶來更大、更多(duō)的可能(néng)性。
     3.軟件(jiàn)定義更多(duō)可能(néng)
     軟件(jiàn)定義時間敏感網絡沒有從(cóng)根本上(shàng)解除時間敏感網絡流的本質要求,隻是将其時間調度模型的條件(jiàn)限制變得更加寬松,适應範圍變得更加廣泛,以滿足更多(duō)不同行業(yè)對時間敏感流的規劃調度需求。同時再加上(shàng)SDN的軟件(jiàn)定義能(néng)力和網絡綜合管理配置功能(néng),能(néng)極大的簡化用戶使用和管理網絡的複雜(zá)度。如靈活自(zì)組網、協議無關轉發、在線規劃調度、增量規劃調度、實時流路(lù)徑遷移和交換節點熱切換等等。
     TSN的時間敏感特性是屬于業(yè)務的,業(yè)務數據的生(shēng)産與消費(fèi)通(tōng)過TSN網絡來聯通(tōng)。這從(cóng)系統架構層對整個(gè)TSN網絡提出的全實時的要求,主要包括業(yè)務數據的生(shēng)産消費(fèi)、數據在系統中的傳遞、接入TSN網絡的網卡、中間的網絡交換機(jī)等所有業(yè)務數據流經的每個(gè)環節。首先,端節點與交換機(jī)需要都支持全局時鍾同步,端節點不僅是網卡還(hái)包括主機(jī)系統。即使主機(jī)系統不進行時鍾同步,也需要實時感知網絡的時鍾刻度。其次,所有的業(yè)務流産生(shēng)、傳輸都需要嚴格按照(zhào)全網的規劃調度進行。TSN流的規劃是從(cóng)網卡接入開(kāi)始的,業(yè)務數據的産生(shēng)和傳輸到(dào)網卡的時間則交給應用自(zì)己控制。應用精準控制的前提就(jiù)需要實時感知網絡時鍾刻度和系統提供實時服務。
     1)實時應用
     TSN網絡的業(yè)務都是實時應用,實時應用需要運行在實時系統之上(shàng),而且應用可以對網絡全局時鍾實時感知。實時業(yè)務流都需要通(tōng)過全網規劃調度後确定其準入網絡的具體時間槽位置,流的調度起點從(cóng)網卡開(kāi)始。故業(yè)務需要将數據内容在其網卡調度時間槽位置時刻前送達網卡,以确保準時進入網絡。業(yè)務流到(dào)網卡的時間主要由系統調度模型決定,非實時調度系統無法保障用戶數據到(dào)達網卡時間的确定性。
     2)實時系統
     實時系統為(wèi)實時應用提供實時數據IO服務,該服務不僅要求系統調度模型是實時,同時還(hái)需要包含實時網絡協議棧、實時網絡驅動等。實時調度系統可以提供較小(xiǎo)抖動和較低(dī)延時的分組IO能(néng)力,不是完全時間确定的。實時系統還(hái)可以分為(wèi)軟實時系統和硬實時系統。通(tōng)過與普通(tōng)系統的實驗測試發現,延時排名是:硬實時系統<><><><普通系统。根据用户对业务流延时和抖动的允许差值可以选择软实时系统或硬实时系统。允许误差范围较大的甚至也可以使用普通系统。若对延时与抖动要求极低,则可以考虑使用裸cpu运行实时应用或采用转用硬件实现业务功能。>
     3)TSN網卡
     TSN網卡必須和其TSN網絡中的時間主節點進行時鍾同步,并提供實時的網絡時刻給上(shàng)層應用。網卡是實時流調度的起點,TSN流必須在其規劃調度的确定時間槽位置發送進入網絡。提前到(dào)達則會(huì)引發其他流的抖動,占用交換機(jī)緩沖區時間較長(cháng),影響交換機(jī)吞吐率。滞後到(dào)達影響更大。TSN的技(jì)術(shù)規範中有輸入檢查,判斷數據輸入的有效性與合法性,以确保整網的調度正常。
     4)TSN交換機(jī)
     TSN交換機(jī)是整個(gè)TSN網絡的核心,各交換節點中必須有一(yī)台是時鍾主節點,其他節點向主節點進行時鍾同步。交換機(jī)的輸入檢查、隊列映射、門(mén)控列表和調度方式也是其核心内容。Qbv是一(yī)種高(gāo)靈活性的調度方式,适應不同周期性流的靈活映射與實時控制。
     5)網絡控制器(qì)
     采用軟件(jiàn)定義時間敏感網絡的系統,其網絡管理配置功能(néng)由SDN的控制器(qì)完成。為(wèi)支持控制器(qì)對TSN交換機(jī)的門(mén)控等一(yī)系列參數的配置,需要擴展北(běi)向REST API接口、控制器(qì)支撐模塊、南(nán)向協議支持規範等,滿足對TSN特性的功能(néng)的配置。
     本文是作者結合多(duō)年(nián)SDN研究、TSN研究和客戶需求分析交流的一(yī)些總結。受知識、經驗和行業(yè)了解的限制,一(yī)些觀點不一(yī)定都正确。行業(yè)調查數據及測試數據都隻在特定行業(yè)和場景下(xià)獲得。敬請理性看(kàn)待。
     任何技(jì)術(shù)都有優缺點,在不同應用場景下(xià)其表現形式也不同。采用軟硬件(jiàn)全可編程平台和軟件(jiàn)定義方案隻是能(néng)更多(duō)的适應場景變化,在不同場景應用下(xià),其軟硬件(jiàn)功能(néng)和定義方法也不盡相(xiàng)同,都隻是為(wèi)了更好的适應場景要求。
      好在這樣的平台和方法可以支持各行業(yè)用戶場景的編程和定義的要求。

關注FAST開(kāi)源社區
FAST一(yī)一(yī)開(kāi)源、開(kāi)放(fàng)、高(gāo)速、高(gāo)效、可編程、可定義!軟硬件(jiàn)協同并行處理。