本發(fā)明涉及在基于以太網(wǎng)的運載工具中網(wǎng)絡(luò)中的進入調(diào)度幀(scheduledframe)的切換,其中,網(wǎng)絡(luò)提供時間感知流量整形(tas)且包括配置成用于傳輸基于tas的幀的至少一個橋。
背景技術(shù):
對于在運載工具中網(wǎng)絡(luò)中獲得極低的時延(latency)和時基抖動(jitter)數(shù)據(jù)傳輸?shù)男枰呀?jīng)激發(fā)了基于以太網(wǎng)的時間感知整形器(ieee802.1qbv)的開發(fā),該基于以太網(wǎng)的時間感知整形器當前由ieee802.1工作組限定。針對該開發(fā)的另一動機是對預測運載工具中的時間和安全重要的網(wǎng)絡(luò)的時序行為的需要。
時間感知整形器(tas)的一個目標是實現(xiàn)來自橋/開關(guān)中的隊列的流量的確定調(diào)度。在沒有tas的情況下,任意高優(yōu)先級流量(traffic)必須在隊列存儲器中等待調(diào)度,直到在出口端口(egressport)上的當前調(diào)度的幀已經(jīng)被傳輸。這引入了額外的可變時延,這在時間敏感的流(調(diào)度的流量)的情形中,例如在工業(yè)和機動車網(wǎng)絡(luò)中(其中,確定的時延是一種約束)是不可接受的。tas要求針對每個出口端口上的隊列中的每一個的調(diào)度機制,這意味著,每一個橋/開關(guān)均必須了解調(diào)度流量預期到達的時間,使得在這種特定時間窗口/時間間隙(slot)中,阻止更低優(yōu)先級的流量傳輸。
這是為了確保調(diào)度流量在確定的延遲下從發(fā)送者通過所有網(wǎng)絡(luò)節(jié)點轉(zhuǎn)發(fā)至接收器。為了保護調(diào)度流量不干擾可以恰好開始傳輸?shù)姆钦{(diào)度流量,可要求防護頻帶(guardband),使得在調(diào)度流量的傳輸?shù)拈_始不久之前,阻止從所有隊列的傳輸。防護頻帶的大小取決于干擾幀的最大可能的大小。
tas的主要特性中的一個是其保證端到端時延和時基抖動。然而,只要當網(wǎng)絡(luò)的一部分,例如橋或發(fā)送裝置不恰當?shù)剡\轉(zhuǎn)時,就可能不能保證時延和時基抖動。具體地,當相比于預期更遲地發(fā)送調(diào)度幀時,這可能導致一種狀況,其中后續(xù)調(diào)度幀也相比于預期更遲地到達。而且,如果隨后的幀發(fā)送得過晚,則總體誤差可增大。例如如果存在在調(diào)度幀發(fā)送裝置上運行的時間同步軟件堆棧的功能異常,則可出現(xiàn)這些問題。甚至時間同步軟件的重置也可引起這些結(jié)果。
技術(shù)實現(xiàn)要素:
獨立權(quán)利要求的方法和裝置限定針對這種問題的解決方案。具體地,本發(fā)明的益處是改善要求極低時延和時基抖動的時間-和-安全重要的數(shù)據(jù)包的輸送。因此其改善了運載工具中時間-和-安全重要的網(wǎng)絡(luò)的可靠性和安全性。
根據(jù)本發(fā)明的一個方面,例如針對位于基于以太網(wǎng)的網(wǎng)絡(luò)中的橋中的開關(guān)限定入口流量限制(ingresspolicing)構(gòu)思,以便避免任何相當大的意外延遲,其否則將以不能接受的方式增大重要的調(diào)度幀的端到端時延和時基抖動?;旧希鉀Q方案由檢測在節(jié)點中相對于時間感知整形器的調(diào)度功能異常和及時撤銷(drop)在錯誤的點處傳輸?shù)娜我庹{(diào)度幀組成,因此保護在正確的時刻傳輸?shù)钠渌{(diào)度幀不發(fā)生意外的延遲。
附圖說明
本發(fā)明的實施例以示例且不受限于附圖中的圖的方式圖示,在附圖中,同樣的附圖標記指示相似的元件,以及附圖中:
圖1示出在支持時間感知整形器的裝置中的隊列模型的概覽;
圖2示出在基于以太網(wǎng)的運載工具中網(wǎng)絡(luò)中的調(diào)度幀的操縱的示例;
圖3示出由位于不恰當?shù)毓ぷ鞯慕K端裝置中的時間感知整形器所引起的效果的示例;
圖4給出本發(fā)明的一些基本構(gòu)思的概覽;
圖5示出所建議的發(fā)明對于源于不恰當?shù)毓ぷ鞯难b置的調(diào)度幀的操縱的效果;
圖6給出位于橋中且配置成執(zhí)行本發(fā)明的開關(guān)的一些元件的概覽;以及
圖7是示出創(chuàng)造性方法的實施例的一些步驟的流程圖。
具體實施方式
在以下描述中,引入許多具體細節(jié)以提供對于本發(fā)明的實施例的透徹理解,以及實現(xiàn)針對本發(fā)明的實施例的描述。然而,相關(guān)領(lǐng)域技術(shù)人員將認識到,能夠在沒有一個或多個具體細節(jié)的情況下或者用其它部件、系統(tǒng)等實踐這些實施例。在其它情形中,公知結(jié)構(gòu)或操作未被示出,或者未被詳細描述,以避免使所公開的實施例的方面模糊。
圖1示出支持tas的裝置1的出口或輸出端口12處的幀列隊機制。根據(jù)ieee802.1q標準(時間感知整形器基于該標準),在輸出端口12處允許最多八個隊列13。
實際上,切換的以太網(wǎng)裝置中的幀傳輸模式?jīng)]有沖突。然而,由于輸出端口12處的干擾,數(shù)據(jù)包的傳輸能夠經(jīng)受一些不確定的延遲。當數(shù)據(jù)包或幀準備好傳輸,但是因為正在相同鏈路上傳輸另一幀而不能夠被傳輸時,出現(xiàn)干擾。由于不可預測的延遲,該狀況能夠增大端到端的時延。對于要求極低時延和時基抖動的一些重要的數(shù)據(jù)包,必須避免干擾。這是tas的一個目標。
如圖1中所示,每一個調(diào)度幀隊列13具有門14,其能夠打開和關(guān)閉,且因此確定是否必須傳輸幀。門14由門驅(qū)動器15控制。調(diào)度幀的傳輸以1/t的頻率被周期性地執(zhí)行。當針對調(diào)度幀打開門時,輸出端口必須是空閑的,以便避免易于延遲傳輸?shù)母蓴_。這通過基于1/t的頻率的防護頻帶保證。
大體而言,在給定周期i中的時間t_gbi處防護頻帶16的開始處,所有門14均關(guān)閉。在一定時間間隔,例如t2-tgb1(其為對應(yīng)于由裝置1操縱的最長幀的傳輸延遲的時間間隔)之后,適當?shù)恼{(diào)度幀隊列門14被打開,以允許基于tas的幀的傳輸。在該情形中,當非調(diào)度的幀的傳輸在t_gbi之前開始時,這種幀的傳輸將在t2之前完成,因此避免對調(diào)度幀的干擾。
在調(diào)度幀已被完全發(fā)送之后,對應(yīng)的門14關(guān)閉,且其它門14打開。該場景然后在后續(xù)周期中重復,例如,t3、t4、t5.....為了保證橫跨多跳(hop)的網(wǎng)絡(luò)從終端裝置1到另一終端裝置的幀的輸送期間的零干擾,發(fā)送和轉(zhuǎn)發(fā)該幀的每一個節(jié)點均必須運行tas。
圖1還示出帶有防護頻帶16的時間線17。基于時間線18示出用于第一調(diào)度隊列的門狀態(tài),以及基于時間線19示出另一調(diào)度隊列的門狀態(tài)。在這兩個門狀態(tài)圖表中,字母'c'標記關(guān)閉的門,且字母'o'標記打開的門。從這些圖表中能夠看到,在每一個防護頻帶16處,所有門14均關(guān)閉以便傳輸。
圖2示出在包括兩個終端裝置1、6和四個橋2、3、4、5的網(wǎng)絡(luò)中基于tas的幀f1、f2、f3和f4的傳輸。圖2還示出對應(yīng)于裝置1的時間線21和分別對應(yīng)于橋2到5的時間線22到25。時間線26對應(yīng)于裝置6。
如從時間線21中能夠看到的,裝置1在時間t21處發(fā)送第一調(diào)度幀f1。時間線22示出由橋2提供防護頻帶16,其在時間t22處控制幀f1的轉(zhuǎn)發(fā)。以相同的方式,橋3、4和5設(shè)置其防護頻帶23、24、25以在傳輸幀f1時防止干擾,直至幀f1在裝置6處被接收。在第二防護頻帶16之后,裝置1發(fā)送第二幀f2,其將經(jīng)由橋2、3、4、5被傳輸至裝置6。然后針對調(diào)度幀f3和f4重復相同的過程。
圖3示出其中裝置1相比于預期更遲地傳輸調(diào)度幀f1的狀況(時間線31)。幀f1也以虛線圖示,以便相比于預期在時間t1處完成的計劃調(diào)度時間示出傳輸?shù)膶嶋H時間。這意味著,意外延遲被添加至該幀f1以及還有其它調(diào)度幀f2、f3的端到端時延,盡管是在計劃時間點處傳輸這些幀f2、f3的。
時間線32示出假設(shè)裝置1中沒有故障發(fā)生的狀況,這意味著所有幀f1、f2、f3均在正確時間到達,且能夠因此根據(jù)內(nèi)部防護頻帶16被傳輸。
時間線33示出其中幀f1到達過晚的狀況。該問題能夠由裝置1的硬件或軟件的運轉(zhuǎn)中的任意問題引起。引起這種問題的一個示例可以是裝置1的運轉(zhuǎn)故障的同步軟件堆棧。如圖3中所示,幀f1相比于預期時間t1更遲地到達橋1的輸入端口或入口端口處,其中時間t1是其調(diào)度到達時間。因此,當幀f1到達橋2的輸出端口處時,門已經(jīng)針對調(diào)度流量關(guān)閉。因此,幀f1必須等待直到下一個周期,下一個周期最初是針對幀f2的轉(zhuǎn)發(fā)保留的。該狀況可例如因為裝置1的時間同步軟件堆棧的重置而發(fā)生,這相應(yīng)地可由裝置1的基準時鐘的不良的同步引起。在該示例中,在必須傳輸幀f2之前,裝置1的內(nèi)部時鐘可以被調(diào)整到基準時鐘。這意味著幀f2可在正確時間傳輸。然而,由于在幀f1仍然在等待傳輸?shù)耐瑫rf2到達橋2的輸出隊列,因此幀f2必須等待直至幀f1被傳輸為止。如果在任意傳輸周期內(nèi)僅可以傳輸一個調(diào)度幀,則該問題尤其顯著。但是即使情況并非如此,幀f2將仍然在幀f1之后被轉(zhuǎn)發(fā),這導致調(diào)度轉(zhuǎn)發(fā)時間的延遲。
在圖3中示出的示例中,幀f2在時間t13處傳輸,該時間最初是針對幀f3的傳輸(時間線33)保留的。顯然,對于要求極低時延和時基抖動的時間-和-安全重要的機動車應(yīng)用而言,這種狀況是不能夠容忍的。不幸地是,不存在解決這種問題或者為其給出解決方案的與tas相關(guān)的標準。
在此示出的解決方案將基于所謂的撤銷窗口和到達窗口來描述。然而,這兩個術(shù)語僅用于示出基本構(gòu)思,這意味著存在針對確定應(yīng)當撤銷還是傳輸進入的幀所限定的至少一個時間間隔。
當前同步的品質(zhì)影響時間感知整形器的時基抖動。在不同節(jié)點之間的同步誤差是tas的性能中的這種時基抖動的原因。在重要的應(yīng)用中,不可以超過特定同步誤差閾值。該最大可容許誤差取決于應(yīng)用。為了描述本發(fā)明的原理,假設(shè)最大可容許同步精確度被限定為+/-α,其表示在裝置的時鐘和網(wǎng)絡(luò)的基準時鐘之間的最大時間偏差。從這點導出在網(wǎng)絡(luò)中的兩個裝置之間的最大可容許時鐘偏差是2α。這在圖5中關(guān)于幀f1用附圖標記55標記。當然,其同樣適用于幀f2和f3。
基于這些假設(shè),建議限定到達窗口41和撤銷窗口42,如圖4中所示。有利地,到達窗口稍微大于2α,具體地其可以被限定為2α+余量(margin),其中,在圖4中所示的示例中,余量是大于0的值。當然,余量也能夠是等于0的值。在圖4中所示的示例中,時間間隔2α+余量由箭頭43圖示。到達窗口41的時間間隔由箭頭44圖示,且撤銷窗口42的時間間隔由箭頭45指示。圖4中也示出每一個周期的持續(xù)時間t。
在圖5中,基于時間線52示出理想情形。在該情形中,調(diào)度幀f1、f2、f3中的每一個均在預期時間t1、t2、t3處到達,且分別在時間t11、t12、t13處轉(zhuǎn)發(fā)。然而,在裝置1和橋2之間存在同步誤差的情形中,調(diào)度幀f1、f2、f3可在預期到達時間之前或之后到達橋2處。由于預期到達時間和實際到達時間之間的差異是至少2α,因此兩個連續(xù)調(diào)度幀f1、f2、f3的到達之間的最大時間間隔至少等于t-2α,且具有最大值t+2α。相同的觀測適用于操縱調(diào)度幀f1、f2、f3的任意兩個直接鏈接的節(jié)點或橋2、3、4、5。
時間線53示出與圖3中圖示的時間線33相似的狀況。然而,時間線54示出如果橋1被配置成利用到達窗口41(如時間間隔44圖示)和撤銷窗口42(如時間間隔45圖示)則將發(fā)生什么情況。
能夠總結(jié)出,所建議的入口流量限制包括設(shè)置被稱為撤銷窗口42的時間窗口,其中,在該時間間隔45內(nèi)從裝置1接收的所有調(diào)度幀f1、f2、f3均將被撤銷。限定被稱為到達窗口44的另一時間窗口為時間間隔44,其中,在該時間間隔44內(nèi)到達的所有調(diào)度幀f1、f2、f3均將被接受且由接收裝置(例如橋2)轉(zhuǎn)發(fā)。該機制旨在于包括開關(guān)的橋中實現(xiàn),其中開關(guān)負責網(wǎng)絡(luò)流量的列隊和轉(zhuǎn)發(fā)。
只要當調(diào)度幀f1、f2、f3到達橋2的輸入端口處,后續(xù)調(diào)度幀f2、f3就可最早在t-2α之后且最遲在t+2α處到達。因此,到達窗口41的間隔44優(yōu)選地被設(shè)置為2α+余量,且撤銷窗口42的時間間隔45優(yōu)選地被設(shè)置為t-2α-余量。當然,余量能夠等于0。根據(jù)這些撤銷窗口42和到達窗口41配置的開關(guān)和橋確保在沒有tas的功能異常的情況下到達的調(diào)度幀將根據(jù)計劃被傳輸,因為它們在到達窗口41內(nèi)到達。然而,如果存在tas功能異常,那么在有延遲的情況下到達的所有幀均將被撤銷。如時間線54上所示,到達窗口44位于防護頻帶16內(nèi)。
有利地,在所有橋2、3、4、5上執(zhí)行所描述的機制,以便確保貫穿整個網(wǎng)絡(luò)不存在意外的非確定延遲。
圖6示出開關(guān)60的示例,其可在橋2、3、4、5中的任一個中實現(xiàn)。開關(guān)60具有輸入端口61和輸出端口62。開關(guān)60包括中央處理單元cpu63,在其上執(zhí)行建議的入口流量限制算法。cpu63與地址總線64、控制總線65和數(shù)據(jù)總線66連接。
轉(zhuǎn)發(fā)引擎67被示出為包括若干定時器68,其也被標記為ptimer,其控制開關(guān)中斷控制器69。開關(guān)中斷控制器69與cpu63經(jīng)由轉(zhuǎn)發(fā)引擎接口70連接。
圖6中所示的開關(guān)60可如下工作:
在每一個到達窗口41和撤銷窗口42的末尾處,由對應(yīng)的計時器68向cpu63發(fā)送irq(中斷請求)。在這種配置中,存在用于每一個輸入端口61的計時器68,以設(shè)置到達窗口和撤銷窗口的時間間隔。cpu63執(zhí)行isr(中斷服務(wù)程序),其對應(yīng)于所建議的入口流量限制算法。isr可包括以下步驟:
在已經(jīng)接收irq之后,開關(guān)中斷控制器69經(jīng)由轉(zhuǎn)發(fā)引擎接口70、數(shù)據(jù)總線66和控制總線65向cpu63轉(zhuǎn)發(fā)irq。轉(zhuǎn)而,cpu63經(jīng)由接口70發(fā)送回所謂的中斷應(yīng)答。開關(guān)中斷控制器69然后將地址發(fā)送至cpu63,其對應(yīng)于當前執(zhí)行的irq。cpu63將然后運行位于該地址處的isr。
圖7示出包括所建議的方法的實施例的一些步驟的流程圖。在步驟100中,假設(shè)網(wǎng)絡(luò)啟動。在該步驟中,限定了第一調(diào)度幀f1在橋2中的預期到達時間t1,以及到達窗口41的末尾,其是t2。限定了周期計數(shù)器,且其以0開始。
在步驟101中,檢查幀是否在到達窗口41內(nèi)到達。如果情況不是這樣,則在步驟102中檢測到異常。否則,所接收的幀被傳輸?shù)捷敵龆丝?2,且被轉(zhuǎn)發(fā)至例如橋3。撤銷窗口42在到達窗口41之后。在步驟104中,檢查幀是否在撤銷窗口45的時間間隔44期間到達。如果一個或多個幀已在時間間隔44期間到達,則這些幀將在步驟105中被撤銷。已經(jīng)到達撤銷窗口42的末尾時,方法繼續(xù)到步驟101,這意味著在后續(xù)到達窗口41開始的情況下,再次檢查幀是否在到達窗口41內(nèi)到達。
當然,如上文所描述的實施例的元件能夠組合以提供更多的實施例。并且盡管方法的示例性實施例和網(wǎng)絡(luò)的各種部件已經(jīng)在附圖中圖示且在前述詳細描述中描述,但是將理解的是,本發(fā)明不限于公開的實施例,而是包括如以下權(quán)利要求所闡述和限定的許多重新配置、改型和替代物。例如,圖7中所示的流程圖當然僅粗略地描述了所建議的方法的真實實施方案。對于圖6中所示的系統(tǒng)也同樣如此。然而,本領(lǐng)域技術(shù)人員應(yīng)當能夠完全地理解本發(fā)明的原理,并且也應(yīng)當能夠?qū)崿F(xiàn)本發(fā)明。