基于協(xié)同網(wǎng)絡(luò)控制器的多域源路由轉(zhuǎn)發(fā)的制作方法
【專利摘要】通過將源路由跳列表中的域內(nèi)跳列表替換為路徑標(biāo)識(shí),能夠在多域網(wǎng)絡(luò)中實(shí)現(xiàn)高效、可擴(kuò)展的源路由轉(zhuǎn)發(fā)。再將路徑標(biāo)識(shí)替換為每個(gè)對(duì)應(yīng)的域的入口邊緣節(jié)點(diǎn)上對(duì)應(yīng)的域內(nèi)跳列表。路徑標(biāo)識(shí)沒有指定沿域內(nèi)路徑段的各跳,因此,通常比域內(nèi)跳列表更短。為推動(dòng)多域源路由轉(zhuǎn)發(fā)技術(shù),更新對(duì)應(yīng)的域的邊緣節(jié)點(diǎn)的路由表,以在計(jì)算域間路徑時(shí)(或者緊隨其后)關(guān)聯(lián)路徑標(biāo)識(shí)和對(duì)應(yīng)的域內(nèi)跳列表。
【專利說明】基于協(xié)同網(wǎng)絡(luò)控制器的多域源路由轉(zhuǎn)發(fā)
[0001]本申請(qǐng)要求于2014年I月20日遞交的發(fā)明名稱為“基于協(xié)同網(wǎng)絡(luò)控制器的多域路由轉(zhuǎn)發(fā)”的第14/159,072號(hào)美國臨時(shí)申請(qǐng)案的在先申請(qǐng)優(yōu)先權(quán),該在先申請(qǐng)的內(nèi)容以引入的方式并入本文。
技術(shù)領(lǐng)域
[0002]本發(fā)明大體涉及通信網(wǎng)絡(luò),特別地,涉及一種基于協(xié)同網(wǎng)絡(luò)控制器的多域源路由轉(zhuǎn)發(fā)的技術(shù)和機(jī)制。
【背景技術(shù)】
[0003]源路由轉(zhuǎn)發(fā)允許數(shù)據(jù)包的發(fā)送方部分地或全部地指定數(shù)據(jù)包所選的經(jīng)過網(wǎng)絡(luò)的路由,就通過允許源節(jié)點(diǎn)直接管理業(yè)務(wù)流路徑以減少包序重排和擁塞來說,這是有利的。通常,源路由轉(zhuǎn)發(fā)是通過采用指定了源路由路徑的各跳的源路由跳列表得以實(shí)現(xiàn)的。源路由跳列表封裝在源節(jié)點(diǎn)的包頭,用于每個(gè)中間節(jié)點(diǎn)確定下一跳以轉(zhuǎn)發(fā)數(shù)據(jù)包。通常,傳統(tǒng)的源路由轉(zhuǎn)發(fā)技術(shù)在小型網(wǎng)絡(luò)中高效,其中的源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的跳數(shù)量相對(duì)較少。然而,傳統(tǒng)的源路由轉(zhuǎn)發(fā)技術(shù)在較大的網(wǎng)絡(luò)中可能效率偏低,其中的長(zhǎng)包頭會(huì)增加開銷比。而且,源路由轉(zhuǎn)發(fā)在多域網(wǎng)絡(luò)中不太可能實(shí)現(xiàn),其中源節(jié)點(diǎn)并不知道外域拓?fù)?。相?yīng)地,需要的是高效將源域路由延伸到較大和/或多域網(wǎng)絡(luò)中的技術(shù)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實(shí)施例通過描述一種基于協(xié)同網(wǎng)絡(luò)控制器的多域源路由轉(zhuǎn)發(fā)的技術(shù)和機(jī)制,大體上實(shí)現(xiàn)了技術(shù)優(yōu)勢(shì)。
[0005]在本實(shí)施例中,提供了一種用于多域網(wǎng)絡(luò)中源路由轉(zhuǎn)發(fā)的方法。在本示例中,所述方法包括:通過域間路徑接收數(shù)據(jù)包。所述數(shù)據(jù)包附有攜帶源路由跳列表的包頭。所述源路由跳列表指定了域內(nèi)路徑段的路徑標(biāo)識(shí),無需指定沿所述域內(nèi)路徑段的各跳。所述域內(nèi)路徑段是貫穿域的域間路徑的一部分。所述方法還包括:識(shí)別與所述路徑標(biāo)識(shí)相關(guān)聯(lián)的跳列表;將所述路徑標(biāo)識(shí)替換為源路由跳列表中的跳列表;以及將所述數(shù)據(jù)包轉(zhuǎn)發(fā)至下一跳。還提供了一種用于執(zhí)行本方法的裝置。
[0006]在另一個(gè)實(shí)施例中,提供了一種用于源路由轉(zhuǎn)發(fā)的方法。在本示例中,所述方法包括:接收計(jì)算源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間域間路徑的請(qǐng)求;以及獲得貫穿域的域內(nèi)路徑段的路徑標(biāo)識(shí)。所述域內(nèi)路徑段表示所述域間路徑的一部分。所述方法還包括:創(chuàng)建源路由跳列表,所述源路由跳列表指定了所述路徑標(biāo)識(shí),無需指定沿所述域內(nèi)路徑段的各跳;以及向設(shè)備發(fā)送所述源路由跳列表。所述源路由跳列表用于在數(shù)據(jù)包通過所述域間路徑傳遞之前,附在源節(jié)點(diǎn)的數(shù)據(jù)包上。還提供了一種用于執(zhí)行本方法的裝置。
【附圖說明】
[0007]為了更完整地理解本發(fā)明及其優(yōu)點(diǎn),現(xiàn)在參考下文結(jié)合附圖進(jìn)行的描述,其中:
[0008]圖1A-1B示出了一種通信網(wǎng)絡(luò)實(shí)施例的圖;
[0009]圖2示出了一種延伸通過網(wǎng)絡(luò)的傳統(tǒng)源路由路徑的圖;
[0010]圖3示出了一種傳統(tǒng)源路由路徑的源路由跳列表的圖;
[0011]圖4示出了一種延伸通過多域網(wǎng)絡(luò)的域間源路由路徑實(shí)施例的圖;
[0012]圖5A-5F示出了一種由于數(shù)據(jù)包通過域間源路由路徑轉(zhuǎn)發(fā)而修改的源路由跳列表實(shí)施例的圖;
[0013]圖6示出了另一種延伸通過多域網(wǎng)絡(luò)的域間源路由路徑實(shí)施例的圖;
[0014]圖7示出了一種用于建立域間源路由路徑的通信順序?qū)嵤├膮f(xié)議圖;
[0015]圖8示出了一種用于促進(jìn)域間源路由轉(zhuǎn)發(fā)的方法實(shí)施例的流程圖;
[0016]圖9示出了另一種用于促進(jìn)域間源路由轉(zhuǎn)發(fā)的方法實(shí)施例的流程圖;
[0017]圖10示出了再一種用于促進(jìn)域間源路由轉(zhuǎn)發(fā)的方法實(shí)施例的流程圖;
[0018]圖11示出了一種網(wǎng)絡(luò)設(shè)備實(shí)施例的圖;
[0019]圖12示出了一種計(jì)算平臺(tái)實(shí)施例的圖。
[0020]除非另有指示,否則不同圖中的對(duì)應(yīng)標(biāo)號(hào)和符號(hào)通常指代對(duì)應(yīng)部分。繪制各圖是為了清楚地說明實(shí)施例的相關(guān)方面,因此未必是按比例繪制的。
【具體實(shí)施方式】
[0021]下文將詳細(xì)論述本發(fā)明實(shí)施例的制作和使用。應(yīng)了解,本文所揭示的概念可以在多種具體環(huán)境中實(shí)施,且所論述的具體實(shí)施例僅作為說明而不限制權(quán)利要求書的范圍。進(jìn)一步的,應(yīng)理解,可在不脫離由所附權(quán)利要求書界定的本發(fā)明的精神和范圍的情況下,對(duì)本文做出各種改變、替代和更改。
[0022]通過采用路徑標(biāo)識(shí)替換源節(jié)點(diǎn)包頭中的域內(nèi)跳列表,本發(fā)明各方面在多域網(wǎng)絡(luò)中實(shí)現(xiàn)了高效/可擴(kuò)展的源路由轉(zhuǎn)發(fā)。一旦數(shù)據(jù)包到達(dá)對(duì)應(yīng)的域的入口邊緣節(jié)點(diǎn)后,將路徑標(biāo)識(shí)(例如,標(biāo)記和地址等)替換為域內(nèi)跳列表,以允許數(shù)據(jù)包通過對(duì)應(yīng)的域內(nèi)路徑段進(jìn)行轉(zhuǎn)發(fā)。值得注意的是,路徑標(biāo)識(shí)沒有指定沿域內(nèi)路徑段的各跳,因此,通常比域內(nèi)跳列表更短(例如,包括更少比特)。為推動(dòng)此處提供的實(shí)施例源路由轉(zhuǎn)發(fā)技術(shù),更新對(duì)應(yīng)的域的邊緣節(jié)點(diǎn)的轉(zhuǎn)發(fā)表,以關(guān)聯(lián)路徑標(biāo)識(shí)和對(duì)應(yīng)的域內(nèi)跳列表。在計(jì)算域間路徑之后,轉(zhuǎn)發(fā)表的表項(xiàng)可寫入轉(zhuǎn)發(fā)表中,并在路徑拆除時(shí)從轉(zhuǎn)發(fā)表中移除。下面將更加詳細(xì)描述這些以及其他方面。
[0023]圖1A-1B示出了一種實(shí)施例多域網(wǎng)絡(luò)100,該網(wǎng)絡(luò)包括多個(gè)域110、120、130、140,多個(gè)核心節(jié)點(diǎn)112、122、132、142,多個(gè)邊緣節(jié)點(diǎn)114、124、134、144,多個(gè)域控制器116、126、136、146,以及根控制器150。如圖1A所示,多域網(wǎng)絡(luò)100包括各個(gè)域110、120、130、140的核心節(jié)點(diǎn)112、122、132、142和邊緣節(jié)點(diǎn)114、124、134、144之間互連所形成的數(shù)據(jù)面(實(shí)線)。如圖1B所示,多域網(wǎng)絡(luò)100包括根控制器150、域控制器116、126、136、146和核心/邊緣節(jié)點(diǎn)112-114、122-124、132-134、142-144。
[0024]核心節(jié)點(diǎn)112、122、132、142可以是任何數(shù)據(jù)面單元,用于在其各自域110、120、130、140中進(jìn)行域內(nèi)路由。例如,核心節(jié)點(diǎn)112、122、132、142可以知道其各自域110、120、130、140的域內(nèi)拓?fù)?,但可能不知道域間鏈路和/或其他域的拓?fù)?。邊緣?jié)點(diǎn)114、124、134、144可以是任何數(shù)據(jù)面單元,用于指定或調(diào)整進(jìn)入域110、120、130、140,并可以既包括域內(nèi)路由能力也包括域間路由能力。在一些實(shí)施例中,邊緣節(jié)點(diǎn)114、124、134、144知道其各自域110、120、130、140的域內(nèi)拓?fù)?,也至少知道一些域間鏈路,例如,知道鄰域的邊緣部件等。域控制器116、126、136、146可以是任何控制面實(shí)體,能夠?yàn)槠涓髯杂?10、120、130、140計(jì)算域內(nèi)路徑段。根控制器150可以是任何控制面實(shí)體,能夠計(jì)算/生成域間路徑,例如,聚合域控制器116、126、136、146計(jì)算的域內(nèi)路徑段,以及選擇域間鏈路等。此處使用的術(shù)語“控制器”(根控制器、域控制器或者其他控制器)是指任何控制面實(shí)體,用于促進(jìn)多域源路由轉(zhuǎn)發(fā)。在一些實(shí)施例中,根控制器包括域間路徑計(jì)算功能,域控制器包括域內(nèi)路徑計(jì)算功能??刂破骺梢允仟?dú)立設(shè)備,或者與其他網(wǎng)絡(luò)設(shè)備共置,例如,控制器可以是邊緣節(jié)點(diǎn)的一個(gè)模塊,域控制器可以與根控制器共置等。
[0025]傳統(tǒng)源路由轉(zhuǎn)發(fā)技術(shù)可能難以在較大網(wǎng)絡(luò)中實(shí)現(xiàn),因?yàn)槠渫ǔP枰垂?jié)點(diǎn)知道整個(gè)網(wǎng)絡(luò)的拓?fù)?。圖2示出了路徑201從源節(jié)點(diǎn)211延伸至目的節(jié)點(diǎn)239所貫穿的網(wǎng)絡(luò)200。當(dāng)采用傳統(tǒng)源路由轉(zhuǎn)發(fā)技術(shù)時(shí),源節(jié)點(diǎn)211需要知道整個(gè)網(wǎng)絡(luò)200的拓?fù)?,包括知道源路由路徑的?-11。傳統(tǒng)的源路由轉(zhuǎn)發(fā)技術(shù)也可能在較大網(wǎng)絡(luò)中效率低下,因?yàn)檫^長(zhǎng)的源路由跳列表可能會(huì)極大地增加數(shù)據(jù)包包頭的開銷。圖3示出了采用傳統(tǒng)源路由技術(shù)可能生成的路徑201的源路由跳列表250。如圖所示,源路由跳列表250中指定了路徑201的跳1-11。而且,傳統(tǒng)源路由轉(zhuǎn)發(fā)技術(shù)可能不適合多域網(wǎng)絡(luò),其中的源節(jié)點(diǎn)不知道外域的拓?fù)洹?br>[0026]本發(fā)明各方面在源路由跳列表中采用路徑標(biāo)識(shí),以在較大或者多域網(wǎng)絡(luò)中實(shí)現(xiàn)高效、可擴(kuò)展的源路由。圖4示出了域間源路由路徑401從源節(jié)點(diǎn)411延伸至目的節(jié)點(diǎn)439所貫穿的實(shí)施例網(wǎng)絡(luò)400。如圖所示,實(shí)施例網(wǎng)絡(luò)400包括多個(gè)域410、420、430,多個(gè)邊緣節(jié)點(diǎn)419、421、429、431,多個(gè)核心節(jié)點(diǎn)415、425、435,以及控制器490。在本示例中,從圖5六所描繪的源路由跳列表450可知,路徑標(biāo)識(shí)PID2和PID3用于表示域420和430的域內(nèi)路徑段。控制器490執(zhí)行域間路徑計(jì)算,以計(jì)算域間源路由路徑401。此后,控制器490指示邊緣節(jié)點(diǎn)421和431更新其轉(zhuǎn)發(fā)表,以分別關(guān)聯(lián)路徑標(biāo)識(shí)PID2、PID3和域420、430的域內(nèi)路徑段對(duì)應(yīng)的域內(nèi)跳列表。具體地,將表項(xiàng)寫入邊緣節(jié)點(diǎn)421的轉(zhuǎn)發(fā)表中,以關(guān)聯(lián)路徑標(biāo)識(shí)PID2和域內(nèi)跳列表5-6-7,而將表項(xiàng)寫入邊緣節(jié)點(diǎn)431的轉(zhuǎn)發(fā)表中,以關(guān)聯(lián)路徑標(biāo)識(shí)PID3和域內(nèi)跳列表9-10-11。邊緣節(jié)點(diǎn)421和431(分別)為域420和430的入口邊緣節(jié)點(diǎn),用于一旦接收到攜帶那些標(biāo)識(shí)的數(shù)據(jù)包后,將路徑標(biāo)識(shí)PID2和PID3(分別)替換為對(duì)應(yīng)的域內(nèi)跳列表5-6-7和9-10-11。此處使用的術(shù)語“源路由路徑”是指任何建立或以其他方式與源路由轉(zhuǎn)發(fā)原理一起使用的路徑。術(shù)語“源路由跳列表”是指與源路由路徑相關(guān)聯(lián)的跳列表。術(shù)語“±或內(nèi)跳列表”是指與域內(nèi)路徑段相關(guān)聯(lián)的跳列表,例如,貫穿域的源路由路徑的段。
[0027]圖5A-5F示出了源路由跳列表450由于數(shù)據(jù)包通過域間源路由路徑401轉(zhuǎn)發(fā)而如何進(jìn)行修改。如圖5A所示,源路由跳列表450包括路徑標(biāo)識(shí)PID2和PID3。此后,如圖5B所示,由于數(shù)據(jù)包從源節(jié)點(diǎn)411轉(zhuǎn)發(fā)至邊緣節(jié)點(diǎn)421,故將跳1-2-3-4逐個(gè)從源路由跳列表450中移除。在通過延伸貫穿域420的域內(nèi)路徑段發(fā)送數(shù)據(jù)包之前,邊緣節(jié)點(diǎn)421將PID2替換為域內(nèi)跳列表5-6-7(如圖5C所示)。由于數(shù)據(jù)包從邊緣節(jié)點(diǎn)421轉(zhuǎn)發(fā)至邊緣節(jié)點(diǎn)431,故將跳5-6-7-8逐個(gè)從源路由跳列表450中移除(如圖5D所示)。一旦接受到數(shù)據(jù)包后,邊緣節(jié)點(diǎn)431將域內(nèi)跳列表9-10-11替換為源路由跳列表450中的PID3(如圖5E所示),并將修改后的數(shù)據(jù)包轉(zhuǎn)發(fā)至域430中的下一跳節(jié)點(diǎn)435。最后,由于數(shù)據(jù)包通過域430轉(zhuǎn)發(fā)至目的節(jié)點(diǎn)439,故將跳9-10-11逐個(gè)從源路由跳列表450中移除。
[0028]在一些實(shí)施例中,可以由分布式控制器來計(jì)算域內(nèi)路徑段。圖6示出了實(shí)施例網(wǎng)絡(luò)600,其中的域間路徑601的域內(nèi)段由域控制器616、626、636計(jì)算出。域控制器616、626、636可以是分布式控制器?;蛘撸蚩刂破?16、626、636可以是和根控制器共置的。在本示例中,域控制器616、626、636負(fù)責(zé)計(jì)算其各自域610、620、630的域內(nèi)段,根控制器690負(fù)責(zé)聚合域內(nèi)路徑段和域間鏈路4、8,以形成域間路徑601。域控制器616、626、636也可以負(fù)責(zé)在其各自域610、620、630中和數(shù)據(jù)面實(shí)體進(jìn)行通信。例如,域控制器626、636可以指示邊緣節(jié)點(diǎn)621、631(分別)將表項(xiàng)寫入其轉(zhuǎn)發(fā)表和/或從轉(zhuǎn)發(fā)表移除。在另一個(gè)示例中,域控制器616可以中繼轉(zhuǎn)發(fā)源節(jié)點(diǎn)611和根控制器690之間的域間路徑計(jì)算請(qǐng)求/回復(fù)。或者,可以在源節(jié)點(diǎn)611和根控制器690之間直接傳遞源路由路徑計(jì)算請(qǐng)求/回復(fù)。
[0029]圖7示出了一種用于建立域間路徑601的通信順序700。如圖所示,當(dāng)域間路徑計(jì)算請(qǐng)求710從源節(jié)點(diǎn)611發(fā)送至根控制器690時(shí),通信順序700開始。此后,根控制器690將域間路徑計(jì)算請(qǐng)求710分為多個(gè)域內(nèi)路徑計(jì)算請(qǐng)求720,域內(nèi)路徑計(jì)算請(qǐng)求720轉(zhuǎn)發(fā)至域控制器616、626、636。每個(gè)域內(nèi)路徑計(jì)算請(qǐng)求720可以請(qǐng)求計(jì)算通過分配至對(duì)應(yīng)域控制器的域的域內(nèi)路徑段。域控制器616、626、636計(jì)算對(duì)應(yīng)的域內(nèi)路徑段。每個(gè)域內(nèi)路徑段和域內(nèi)跳列表相關(guān)聯(lián)或者由域內(nèi)跳列表定義,該列表指定了沿域內(nèi)路徑段的各跳的順序。域控制器626、636關(guān)聯(lián)路徑標(biāo)識(shí)和域內(nèi)跳列表,再將控制指令730傳遞至入口邊緣節(jié)點(diǎn)621、631??刂浦噶?30指示入口邊緣節(jié)點(diǎn)621、631將表項(xiàng)寫入其轉(zhuǎn)發(fā)表中,所述表項(xiàng)關(guān)聯(lián)了路徑標(biāo)識(shí)和域內(nèi)跳列表。此后,域控制器616、626、636將指示域內(nèi)跳列表和/或路徑標(biāo)識(shí)的域內(nèi)路徑計(jì)算響應(yīng)740傳遞至根控制器690。在一個(gè)實(shí)施例中,域內(nèi)路徑計(jì)算響應(yīng)740指定了域610的域內(nèi)跳列表以及域620、630的路徑標(biāo)識(shí)。一旦接收到域內(nèi)路徑計(jì)算響應(yīng)740,根控制器690將域內(nèi)路徑段聚合為域間源路由路徑,并為域間路徑制定源路由跳列表。在一個(gè)實(shí)施例中,源路由跳列表包括和域610對(duì)應(yīng)的域內(nèi)跳列表,域610后面為域間跳4,其后為域620對(duì)應(yīng)的路徑標(biāo)識(shí),其后為域間跳8,再后面是域630的路徑標(biāo)識(shí)。根控制器690將指定源路由跳列表的域間路徑計(jì)算響應(yīng)750傳遞至源節(jié)點(diǎn)611,其中,源路由跳列表用于通過域間路徑轉(zhuǎn)發(fā)數(shù)據(jù)包。一旦完成數(shù)據(jù)包傳遞,根控制器690將拆除指令770傳遞至域控制器616、626、636。拆除指令770指示域間路徑正在拆除,并提示域控制器616、636向邊緣節(jié)點(diǎn)621、631發(fā)送控制指令780??刂浦噶?80指示邊緣節(jié)點(diǎn)621、631將之前添加的表項(xiàng)從其轉(zhuǎn)發(fā)表中移除。
[0030]本發(fā)明各方面提供了用于根據(jù)此處所述的多域源路由轉(zhuǎn)發(fā)技術(shù)操作邊緣節(jié)點(diǎn)的方法。圖8示出了一種可以由邊緣節(jié)點(diǎn)執(zhí)行的用于促進(jìn)多域網(wǎng)絡(luò)中源路由轉(zhuǎn)發(fā)的方法800。如圖所示,方法800在步驟810處開始,其中邊緣節(jié)點(diǎn)接收將表項(xiàng)寫入數(shù)據(jù)庫的指令,所述表項(xiàng)關(guān)聯(lián)路徑標(biāo)識(shí)和域內(nèi)跳列表。接下來,方法800進(jìn)入步驟820,其中邊緣節(jié)點(diǎn)將關(guān)聯(lián)路徑標(biāo)識(shí)和域內(nèi)跳列表的表項(xiàng)寫入轉(zhuǎn)發(fā)表。隨后,方法800進(jìn)入步驟830,邊緣節(jié)點(diǎn)接收攜帶了指定路徑標(biāo)識(shí)的源路由跳列表的數(shù)據(jù)包。接下來,方法800進(jìn)入步驟840,其中邊緣節(jié)點(diǎn)通過將路徑標(biāo)識(shí)替換為相關(guān)聯(lián)的域內(nèi)跳列表修改源路由跳列表。此后,方法800進(jìn)入步驟850,其中邊緣節(jié)點(diǎn)將數(shù)據(jù)包轉(zhuǎn)發(fā)至修改后的源路由跳列表中指定的下一跳。只要關(guān)聯(lián)路徑標(biāo)識(shí)和域內(nèi)跳列表的表項(xiàng)存在于邊緣節(jié)點(diǎn)的轉(zhuǎn)發(fā)表中,可以為每個(gè)攜帶路徑標(biāo)識(shí)的數(shù)據(jù)包重復(fù)步驟830-850。一旦所有與業(yè)務(wù)流相關(guān)的數(shù)據(jù)包已經(jīng)通過域間路徑傳輸,方法800進(jìn)入步驟860,其中邊緣節(jié)點(diǎn)接收將對(duì)應(yīng)的表項(xiàng)(例如,在步驟820中添加的表項(xiàng))從轉(zhuǎn)發(fā)表中移除的指令。最后,方法800進(jìn)入步驟870,其中邊緣節(jié)點(diǎn)將對(duì)應(yīng)的表項(xiàng)從轉(zhuǎn)發(fā)表中移除。
[0031]本發(fā)明各方面提供了用于根據(jù)此處所述的多域源路由轉(zhuǎn)發(fā)技術(shù)操作控制器的方法。圖9示出了一種可以由域控制器執(zhí)行的用于促進(jìn)多域網(wǎng)絡(luò)中源路由轉(zhuǎn)發(fā)的方法900。如圖所示,方法900在步驟910處開始,其中域控制器從根控制器接收域內(nèi)路徑計(jì)算請(qǐng)求。此后,方法900進(jìn)入步驟920,其中域控制器計(jì)算域內(nèi)路徑段。接下來,方法900進(jìn)入步驟930,其中域控制器指示入口邊緣節(jié)點(diǎn)將表項(xiàng)寫入轉(zhuǎn)發(fā)表中,所述表項(xiàng)關(guān)聯(lián)路徑標(biāo)識(shí)和計(jì)算出的域內(nèi)路徑段的域內(nèi)跳列表。隨后,方法900進(jìn)入步驟940,其中域控制器向根控制器發(fā)送指定了路徑標(biāo)識(shí)的域內(nèi)路徑計(jì)算響應(yīng)。此后,方法900進(jìn)入步驟950,其中域控制器從根控制器接收到拆除指令。通常,一旦完成了通過域間路徑傳遞就傳遞拆除指令。方法900再進(jìn)入步驟960,其中域控制器指示入口節(jié)點(diǎn)將之前添加的表項(xiàng)從轉(zhuǎn)發(fā)表中移除。
[0032]圖10示出了一種可以由根控制器執(zhí)行的用于促進(jìn)多域網(wǎng)絡(luò)中源路由轉(zhuǎn)發(fā)的方法1000。如圖所示,方法1000在步驟1010處開始,其中根控制器從源節(jié)點(diǎn)接收域間路徑計(jì)算請(qǐng)求。在一些實(shí)施例中,域間路徑計(jì)算請(qǐng)求由對(duì)應(yīng)的域控制器中繼轉(zhuǎn)發(fā)至根控制器。在其他實(shí)施例中,直接從源節(jié)點(diǎn)接收域間路徑計(jì)算請(qǐng)求。隨后,方法1000進(jìn)入步驟1020,其中根控制器通過選擇域的順序和域間鏈路計(jì)算域間路徑。接下來,方法1000進(jìn)入步驟1030,其中根控制器向?qū)?yīng)的域控制器發(fā)送域內(nèi)路徑計(jì)算請(qǐng)求。域內(nèi)路徑計(jì)算請(qǐng)求可以指示域控制器計(jì)算穿過其各自域的域內(nèi)路徑段。此后,方法1000進(jìn)入步驟1040,其中根控制器從域控制器接收域內(nèi)路徑計(jì)算響應(yīng)。域內(nèi)路徑計(jì)算響應(yīng)可以攜帶路徑標(biāo)識(shí)和/或與域控制器計(jì)算出的域內(nèi)路徑段相關(guān)聯(lián)的域內(nèi)跳列表。在一些實(shí)施例中,指定了路徑標(biāo)識(shí)的域內(nèi)路徑計(jì)算響應(yīng)可以排除域內(nèi)跳列表,反之亦然。隨后,方法1000進(jìn)入步驟1050,其中根控制器通過聚合域控制器計(jì)算出的域內(nèi)路徑和所選擇的域間鏈路,為計(jì)算出的域間路徑建立源路由跳列表。源路由跳列表包括至少一個(gè)從域控制器傳遞的路徑標(biāo)識(shí)。此后,方法1000進(jìn)入步驟1060,其中根控制器向源節(jié)點(diǎn)發(fā)送指定了源路由跳列表的域間計(jì)算響應(yīng)??梢灾苯酉蛟垂?jié)點(diǎn)發(fā)送或者經(jīng)由對(duì)應(yīng)的域控制器中繼轉(zhuǎn)發(fā)域間計(jì)算響應(yīng)。接下來,方法100進(jìn)入步驟17O,其中根控制器,例如一旦接收到路徑拆除請(qǐng)求,確定完成通過域內(nèi)路徑的傳遞。此后,方法1000進(jìn)入步驟1080,根控制器向域控制器發(fā)送拆除指令。
[0033]圖11示出了相當(dāng)于上述的一個(gè)或多個(gè)設(shè)備(例如,控制面實(shí)體、數(shù)據(jù)面實(shí)體、節(jié)點(diǎn)、控制器等)的實(shí)施例設(shè)備1100的框圖。實(shí)施例設(shè)備1100可以包括處理器1104、存儲(chǔ)器1106以及多個(gè)接口 1110-1114,可以(或者不用)如圖11排列。處理器1104可以是任何能夠進(jìn)行計(jì)算和/或處理相關(guān)任務(wù)的部件,存儲(chǔ)器1106可以是任何能夠?yàn)樘幚砥?104存儲(chǔ)程序和/或指令的部件。接口 1110、1112、1114可以是任何允許實(shí)施例設(shè)備1100和其他網(wǎng)絡(luò)設(shè)備進(jìn)行通信的部件或者部件的組合。
[0034]圖12顯示處理系統(tǒng)的框圖,該處理系統(tǒng)可以用來實(shí)現(xiàn)本文公開的設(shè)備和方法。特定裝置可利用所有所示的組件或所述組件的僅一子集,且裝置之間的集成程度可能不同。此外,設(shè)備可以包括部件的多個(gè)實(shí)例,例如多個(gè)處理單元、處理器、存儲(chǔ)器、發(fā)射器、接收器等。處理系統(tǒng)可以包括配備一個(gè)或多個(gè)輸入/輸出設(shè)備,例如揚(yáng)聲器、麥克風(fēng)、鼠標(biāo)、觸摸屏、按鍵、鍵盤、打印機(jī)、顯示器等的處理單元。處理單元可以包括中央處理器(centralprocessing unit,CPU)、存儲(chǔ)器、大容量存儲(chǔ)器設(shè)備、視頻適配器以及連接至總線的I/O接
□ O
[0035]總線可以是任意類型的若干總線架構(gòu)中的一個(gè)或多個(gè),包括存儲(chǔ)總線或存儲(chǔ)控制器、外設(shè)總線、視頻總線等等。CPU可包括任意類型的電子數(shù)據(jù)處理器。存儲(chǔ)器可包括任何類型的系統(tǒng)存儲(chǔ)器,例如靜態(tài)隨機(jī)存取存儲(chǔ)器(static random access memory,SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(dynamic random access memory,DRAM)、同步DRAM( synchronousdynamic random access memory,SDRAM)、只讀存儲(chǔ)器(read-only memory,ROM)或其組合等等。在實(shí)施例中,存儲(chǔ)器可包括在開機(jī)時(shí)使用的ROM以及執(zhí)行程序時(shí)使用的程序和數(shù)據(jù)存儲(chǔ)器的DRAM。
[0036]大容量存儲(chǔ)器設(shè)備可包括任何類型的存儲(chǔ)器設(shè)備,其用于存儲(chǔ)數(shù)據(jù)、程序和其它信息,并使這些數(shù)據(jù)、程序和其它信息通過總線訪問。大容量存儲(chǔ)器設(shè)備可包括如下項(xiàng)中的一項(xiàng)或多項(xiàng):固態(tài)磁盤、硬盤驅(qū)動(dòng)器、磁盤驅(qū)動(dòng)器、光盤驅(qū)動(dòng)器等等。
[0037]顯示卡以及I/O接口提供接口以將外部輸入以及輸出裝置耦合到處理單元上。如所圖示,輸入以及輸出裝置的實(shí)例包含耦合到顯示卡上的顯示器以及耦合到I/o接口上的鼠標(biāo)/鍵盤/打印機(jī)。其它裝置可以耦合到處理單元上,并且可以利用額外的或較少的接口卡。例如,可使用如通用串行總線(Universal Serial Bus,USB)(未示出)等串行接口將接口提供給打印機(jī)。
[0038]處理單元還包含一個(gè)或多個(gè)網(wǎng)絡(luò)接口,所述網(wǎng)絡(luò)接口可以包括例如以太網(wǎng)電纜或其類似者等有線鏈路,和/或用以接入節(jié)點(diǎn)或不同網(wǎng)絡(luò)的無線鏈路。網(wǎng)絡(luò)接口允許處理單元經(jīng)由網(wǎng)絡(luò)與遠(yuǎn)程單元通信。舉例來說,網(wǎng)絡(luò)接口可以經(jīng)由一個(gè)或多個(gè)發(fā)射器/發(fā)射天線以及一個(gè)或多個(gè)接收器/接收天線提供無線通信。在一個(gè)實(shí)施例中,處理單元耦合到局域網(wǎng)或廣域網(wǎng)上以用于數(shù)據(jù)處理以及與遠(yuǎn)程裝置通信,所述遠(yuǎn)程裝置例如其它處理單元、因特網(wǎng)、遠(yuǎn)程存儲(chǔ)設(shè)施或其類似者。
[0039]盡管進(jìn)行了詳細(xì)的描述,但應(yīng)理解,可在不脫離由所附權(quán)利要求書界定的本發(fā)明的精神和范圍的情況下,對(duì)本文做出各種改變、替代和更改。此外,本發(fā)明的范圍不希望限于本文中所描述的特定實(shí)施例,所屬領(lǐng)域的一般技術(shù)人員將從本發(fā)明中容易了解到,過程、機(jī)器、制造工藝、物質(zhì)成分、構(gòu)件、方法或步驟(包括目前存在的或以后將開發(fā)的)可執(zhí)行與本文所述對(duì)應(yīng)實(shí)施例大致相同的功能或?qū)崿F(xiàn)與本文所述對(duì)應(yīng)實(shí)施例大致相同的效果。相應(yīng)地,所附權(quán)利要求范圍包括這些流程,機(jī)器,制造,物質(zhì)組分,構(gòu)件,方法,及步驟。
【主權(quán)項(xiàng)】
1.一種用于網(wǎng)絡(luò)中源路由轉(zhuǎn)發(fā)的方法,其特征在于,所述方法包括: 域中邊緣節(jié)點(diǎn)通過域間路徑接收數(shù)據(jù)包,所述數(shù)據(jù)包附有攜帶源路由跳列表的包頭,其中,所述源路由跳列表指定了域內(nèi)路徑段的路徑標(biāo)識(shí),無需指定沿所述域內(nèi)路徑段的各跳,所述域內(nèi)路徑段是貫穿該域的域間路徑的一部分; 所述邊緣節(jié)點(diǎn)識(shí)別與所述路徑標(biāo)識(shí)相關(guān)聯(lián)的跳列表,其中,所述跳列表指定了沿所述域內(nèi)路徑段的跳的順序; 將所述路徑標(biāo)識(shí)替換為所述包頭內(nèi)的跳列表; 根據(jù)所述跳列表,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)至所述域內(nèi)路徑段的下一跳。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述識(shí)別與所述路徑標(biāo)識(shí)相關(guān)聯(lián)的跳列表包括: 在所述邊緣節(jié)點(diǎn)中存儲(chǔ)的轉(zhuǎn)發(fā)表中找到關(guān)聯(lián)所述路徑標(biāo)識(shí)和所述跳列表的表項(xiàng)。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述邊緣節(jié)點(diǎn)識(shí)別所述跳列表,無需在接收所述數(shù)據(jù)包和轉(zhuǎn)發(fā)所述數(shù)據(jù)包的期間查詢外部設(shè)備。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括: 在通過所述域間路徑接收數(shù)據(jù)包之前,所述邊緣節(jié)點(diǎn)從控制器接收第一控制消息,其中,所述第一控制消息指示所述邊緣節(jié)點(diǎn)將所述表項(xiàng)寫入所述轉(zhuǎn)發(fā)表; 在將所述數(shù)據(jù)包轉(zhuǎn)發(fā)至所述域內(nèi)路徑段的下一跳后,所述邊緣節(jié)點(diǎn)從所述控制器接收第二控制消息,其中,所述第二控制消息指示所述邊緣節(jié)點(diǎn)從所述轉(zhuǎn)發(fā)表中移除所述表項(xiàng)。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述數(shù)據(jù)包攜帶數(shù)據(jù),所述將所述數(shù)據(jù)包轉(zhuǎn)發(fā)至下一跳包括通過所述網(wǎng)絡(luò)的數(shù)據(jù)面轉(zhuǎn)發(fā)所述數(shù)據(jù)包。6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述路徑標(biāo)識(shí)的長(zhǎng)度小于所述跳列表的長(zhǎng)度。7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述路徑標(biāo)識(shí)包括多協(xié)議標(biāo)記交換(Multiprotocol Label Switching,MPLS)標(biāo)記。8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述路徑標(biāo)識(shí)包括第四版互聯(lián)網(wǎng)協(xié)議(Internet Protocol,IP) (Internet Protocol vers1n 4,IPv4)或者IPv6片反本(InternetProtocol vers1n 6,IPv6)地址。9.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述路徑標(biāo)識(shí)包括類型長(zhǎng)度值(type-length-value,TLV)編碼。10.一種域中的邊緣節(jié)點(diǎn),其特征在于,所述邊緣節(jié)點(diǎn)包括: 處理器; 計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),存儲(chǔ)程序供所述處理器執(zhí)行,所述程序包括指令用以: 通過域間路徑接收數(shù)據(jù)包,所述數(shù)據(jù)包附有攜帶源路由跳列表的包頭,其中,所述源路由跳列表指定了域內(nèi)路徑段的路徑標(biāo)識(shí),無需指定沿所述域內(nèi)路徑段上的各跳,所述域內(nèi)路徑段是貫穿該域的域間路徑的一部分; 識(shí)別與所述路徑標(biāo)識(shí)相關(guān)聯(lián)的跳列表,其中,所述跳列表指定了沿所述域內(nèi)路徑段的跳的順序; 將所述路徑標(biāo)識(shí)替換為所述包頭內(nèi)的跳列表; 根據(jù)所述跳列表,將所述數(shù)據(jù)包轉(zhuǎn)發(fā)至所述域內(nèi)路徑段的下一跳。11.根據(jù)權(quán)利要求10所述的邊緣節(jié)點(diǎn),其特征在于,所述指令用以識(shí)別與所述路徑標(biāo)識(shí)相關(guān)聯(lián)的跳列表的指令包括指令用以執(zhí)行以下操作: 在所述邊緣節(jié)點(diǎn)中存儲(chǔ)的轉(zhuǎn)發(fā)表中找到關(guān)聯(lián)所述路徑標(biāo)識(shí)和所述跳列表的表項(xiàng)。12.根據(jù)權(quán)利要求10所述的邊緣節(jié)點(diǎn),其特征在于,所述路徑標(biāo)識(shí)包括多協(xié)議標(biāo)記交換(Multiprotocol Label Switching,MPLS)標(biāo)記、第四版互聯(lián)網(wǎng)協(xié)議(Internet Protocol,IP) (Internet Protocol vers1n 4,IPv4)地址、IPv6版本(Internet Protocol vers1n.6,1?¥6)地址以及類型長(zhǎng)度值(^7口6-16呢1:11-¥31116)編碼其中之一。13.一種用于源路由轉(zhuǎn)發(fā)的方法,其特征在于,所述方法包括: 控制器接收計(jì)算源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間域間路徑的請(qǐng)求; 所述控制器獲得貫穿域的域內(nèi)路徑段的路徑標(biāo)識(shí),其中,所述域內(nèi)路徑段表示所述域間路徑的一部分; 創(chuàng)建源路由跳列表,所述源路由跳列表指定了所述路徑標(biāo)識(shí),無需指定沿所述域內(nèi)路徑段的各跳; 向設(shè)備發(fā)送所述源路由跳列表,其中,所述源路由跳列表用于在數(shù)據(jù)包通過所述域間路徑傳遞之前,附在源節(jié)點(diǎn)的數(shù)據(jù)包上。14.根據(jù)權(quán)利要求13所述的方法,其特征在于,所述路徑標(biāo)識(shí)排除與沿所述域內(nèi)路徑段的各跳相關(guān)的信息。15.根據(jù)權(quán)利要求13所述的方法,其特征在于,還包括: 發(fā)送或提示其他控制器發(fā)送第一控制消息至所述域中的邊緣節(jié)點(diǎn),其中,所述第一控制消息指示所述邊緣節(jié)點(diǎn)將表項(xiàng)寫入轉(zhuǎn)發(fā)表,所述表項(xiàng)關(guān)聯(lián)所述路徑標(biāo)識(shí)和指定了沿所述域內(nèi)路徑段的跳的順序的跳列表。16.根據(jù)權(quán)利要求15所述的方法,其特征在于,在所述數(shù)據(jù)包通過所述域間路徑傳遞之前,將所述第一控制消息發(fā)送至所述邊緣節(jié)點(diǎn)。17.根據(jù)權(quán)利要求16所述的方法,其特征在于,還包括: 在所述數(shù)據(jù)包通過所述域間路徑傳輸時(shí),發(fā)送或提示另一控制器發(fā)送第二控制消息至所述邊緣節(jié)點(diǎn),其中,所述第二控制消息指示所述邊緣節(jié)點(diǎn)將所述表項(xiàng)從所述轉(zhuǎn)發(fā)表移除。18.根據(jù)權(quán)利要求13所述的邊緣節(jié)點(diǎn),其特征在于,所述路徑標(biāo)識(shí)包括多協(xié)議標(biāo)記交換(Multiprotocol Label Switching,MPLS)標(biāo)記、第四版互聯(lián)網(wǎng)協(xié)議(Internet Protocol,IP) (Internet Protocol vers1n 4,IPv4)地址、IPv6版本(Internet Protocol vers1n.6,1?¥6)地址以及類型長(zhǎng)度值(^7口6-16呢1:11-¥31116,1']^0編碼其中之一。19.一種控制器,其特征在于,包括: 處理器; 計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),存儲(chǔ)程序供所述處理器執(zhí)行,所述程序包括指令用以執(zhí)行以下操作: 接收計(jì)算源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間域間路徑的請(qǐng)求; 獲得貫穿域的域內(nèi)路徑段的路徑標(biāo)識(shí),其中,所述域內(nèi)路徑段表示所述域間路徑的一部分; 創(chuàng)建源路由跳列表,所述源路由跳列表指定了所述路徑標(biāo)識(shí),無需指定沿所述域內(nèi)路徑段的各跳; 向設(shè)備發(fā)送所述源路由跳列表,其中,所述源路由跳列表用于在數(shù)據(jù)包通過所述域間路徑傳遞之前,附在源節(jié)點(diǎn)的數(shù)據(jù)包上。20.根據(jù)權(quán)利要求19所述的控制器,其特征在于,所述路徑標(biāo)識(shí)包括多協(xié)議標(biāo)記交換(Multiprotocol Label Switching,MPLS)標(biāo)記、第四版互聯(lián)網(wǎng)協(xié)議(Internet Protocol,IP) (Internet Protocol vers1n 4,IPv4)地址、IPv6版本(Internet Protocol vers1n.6,1?¥6)地址以及類型長(zhǎng)度值(^7口6-16呢也-¥311^,1'1^0編碼其中之一。
【文檔編號(hào)】H04L12/28GK105900380SQ201580003416
【公開日】2016年8月24日
【申請(qǐng)日】2015年1月19日
【發(fā)明人】伊芙琳·洛克, 彼得·艾斯伍德-史密斯
【申請(qǐng)人】華為技術(shù)有限公司