專利名稱:用于使用路徑密鑰從路徑計(jì)算元件中取回計(jì)算出的路徑的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò),更具體而言,涉及取回利用計(jì)算機(jī)網(wǎng)絡(luò)的路徑計(jì)算元件計(jì)算出的路徑。
背景技術(shù):
計(jì)算機(jī)網(wǎng)絡(luò)是通過用于在最終節(jié)點(diǎn)(例如個(gè)人計(jì)算機(jī)和工作站)之間傳輸數(shù)據(jù)的通信鏈路和網(wǎng)段互連的節(jié)點(diǎn)的地理分布式集合??色@得很多類型的網(wǎng)絡(luò),其類型從局域網(wǎng)(LAN)到廣域網(wǎng)(WAN)都可能。LAN通常通過位于同一總的物理位置(例如建筑物或校園)上的專用私有通信鏈路來連接節(jié)點(diǎn)。另一方面,WAN通常通過長距離的通信鏈路來連接地理上分散的節(jié)點(diǎn),所述長距離的通信鏈路例如是常見的載波電話線路、光路徑、同步光網(wǎng)絡(luò)(SONET)或同步數(shù)字分級(jí)(SDH)鏈路。因特網(wǎng)是WAN的一個(gè)示例,其連接遍及世界各地的不同的網(wǎng)絡(luò),從而提供各種網(wǎng)絡(luò)上的節(jié)點(diǎn)之間的全球通信。節(jié)點(diǎn)通常通過根據(jù)預(yù)定協(xié)議(例如傳輸控制協(xié)議/因特網(wǎng)協(xié)議(TCP/IP))交換離散的數(shù)據(jù)幀或分組來通過網(wǎng)絡(luò)通信。在此上下文中,協(xié)議由定義節(jié)點(diǎn)如何彼此交互的一組規(guī)則構(gòu)成。
計(jì)算機(jī)網(wǎng)絡(luò)可以通過中間節(jié)點(diǎn)(例如路由器)進(jìn)一步互連,從而擴(kuò)展每個(gè)網(wǎng)絡(luò)的有效“尺寸”。由于可以證實(shí)對(duì)互連的計(jì)算機(jī)網(wǎng)絡(luò)的大系統(tǒng)的管理很麻煩,因此可以維護(hù)計(jì)算機(jī)網(wǎng)絡(luò)的較小群組,作為路由域或自治系統(tǒng)。一個(gè)自治系統(tǒng)(AS)內(nèi)的網(wǎng)絡(luò)通常通過傳統(tǒng)的“域內(nèi)”路由器耦合在一起,所述“域內(nèi)”路由器被配置用于執(zhí)行域內(nèi)路由協(xié)議并且一般受制于一個(gè)公共機(jī)構(gòu)。為了提高路由可擴(kuò)展性,服務(wù)提供商(例如ISP)可以將AS劃分成多個(gè)“區(qū)域(area)”。但是,可能希望增大能夠交換數(shù)據(jù)的節(jié)點(diǎn)的數(shù)目;在此情況下,使用執(zhí)行域間路由協(xié)議的域間路由器來互連各種AS的節(jié)點(diǎn)。還可能希望互連在不同管理域中操作的各種AS。這里使用的連接不同區(qū)域或AS的路由器一般被稱為邊界路由器。在針對(duì)區(qū)域而非AS的情況下,由于路由器受制于一個(gè)公共機(jī)構(gòu),因此單個(gè)路由器實(shí)際上可以充當(dāng)一個(gè)區(qū)域的出口邊界路由器和另一區(qū)域的入口邊界路由器。
域間路由協(xié)議的示例是邊界網(wǎng)關(guān)協(xié)議版本4(BGP),其通過在系統(tǒng)的相鄰域間路由器之間交換路由和可達(dá)性信息來在AS之間執(zhí)行路由。鄰接性(adjacency)是出于交換路由信息消息和提取網(wǎng)絡(luò)拓?fù)涞哪康亩谒x相鄰(對(duì)等)路由器之間形成的關(guān)系。BGP一般基于可靠的傳輸協(xié)議(例如傳輸控制協(xié)議(TCP))工作,以建立TCP連接/會(huì)話。BGP協(xié)議是公知的,并且在1995年3月公布的題為“A Border Gateway Protocol 4(BGP-4)”的請(qǐng)求注釋(RFC)1771中對(duì)其有大體的描述,據(jù)此通過引用將該RFC 1771結(jié)合于此。
域內(nèi)路由協(xié)議或內(nèi)部網(wǎng)關(guān)協(xié)議(IGP)的示例是開放最短路徑優(yōu)先(OSPF)路由協(xié)議和中間系統(tǒng)-中間系統(tǒng)(ISIS)路由協(xié)議。OSPF和ISIS協(xié)議都基于鏈路狀態(tài)技術(shù),因此統(tǒng)稱為鏈路狀態(tài)路由協(xié)議。鏈路狀態(tài)協(xié)議定義了路由信息和網(wǎng)絡(luò)拓?fù)湫畔⒃贏S或區(qū)域內(nèi)被交換或處理的方式。該信息一般針對(duì)域內(nèi)路由器的本地狀態(tài)(例如路由器的可用接口和可達(dá)的鄰居或鄰接性)。OSPF協(xié)議在1998年4月的題為“OSPF Version 2”的RFC 2328中有所描述,而ISIS協(xié)議在1990年12月的題為“Use of OSIISIS for routing in TCP/IP and Dual Environments”的RFC 1195中有所描述,據(jù)此通過引用將這兩個(gè)RFC結(jié)合于此。
多協(xié)議標(biāo)簽交換(MPLS)流量工程已被開發(fā),以滿足數(shù)據(jù)聯(lián)網(wǎng)需求,例如有保障的可用帶寬或快速恢復(fù)。MPLS流量工程利用了現(xiàn)代標(biāo)簽交換技術(shù),以通過標(biāo)簽交換路由器(LSR)的IP/MPLS網(wǎng)絡(luò)建立帶寬有保障的端對(duì)端隧道。這些隧道是一種標(biāo)簽交換路徑(LSP)并因此一般被稱為MPLS流量工程(TE)LSP。MPLS TE的示例可以在2001年12月的題為“RSVP-TEExtensions to RSVP for LSP Tunnels”的RFC 3209,2004年6月的題為“Intermediate-System-to-Intermediate-System(IS-IS)Extensionsfor Traffic Engineering(TE)”的RFC 3784以及2003年9月的題為“TrafficEngineering(TE)Extensions to OSPF Version 2”的RFC 3630中找到,據(jù)此通過引用將這些文檔的全部內(nèi)容整體上結(jié)合于此。
從頭端LSR到尾端LSR的MPLS TE LSP的建立涉及通過LSR的網(wǎng)絡(luò)的路徑的計(jì)算。最理想情況下,計(jì)算出的路徑是以某種量度度量的滿足所有相關(guān)LSP流量工程限制的“最短”路徑,所述LSP流量工程限制例如是所需帶寬、每條鏈路的備份繞道隧道和路徑中包括的節(jié)點(diǎn)的可用性等等。路徑計(jì)算可以由頭端LSR執(zhí)行,也可以由作為路徑計(jì)算元件(PCE)工作的某個(gè)其他實(shí)體執(zhí)行。頭端LSR(或PCE)利用其關(guān)于網(wǎng)絡(luò)拓?fù)浜兔織l鏈路上的可用資源的知識(shí)來根據(jù)LSP流量工程限制執(zhí)行路徑計(jì)算??色@得各種路徑計(jì)算方法,包括CSPF(受限的最短路徑優(yōu)先)。MPLS TE LSP可被配置在單個(gè)IGP區(qū)域內(nèi),也可以跨越多個(gè)IGP區(qū)域或AS。
PCE是有能力計(jì)算其在AS或區(qū)域中知道的任何節(jié)點(diǎn)之間的路徑的實(shí)體。PCE之所以特別有用是因?yàn)樗鼈兏恿私馑鼈兊腁S或區(qū)域內(nèi)的網(wǎng)絡(luò)流量和路徑選擇,因此可被用于更好的路徑計(jì)算。頭端LSR還可能作為路徑計(jì)算客戶端(PCC)工作,該P(yáng)CC被配置用于向PCE發(fā)送路徑計(jì)算請(qǐng)求并接收帶有計(jì)算出的路徑的響應(yīng),該響應(yīng)可能考慮到了來自其他PCC的其他請(qǐng)求。重要的是要注意,當(dāng)一個(gè)PCE向另一PCE發(fā)送請(qǐng)求時(shí),它充當(dāng)PCC。PCE傳統(tǒng)上對(duì)其周圍區(qū)域或AS外部具有有限的可見性或不具有可見性。PCC可以通過管理員的預(yù)配置或利用PCE發(fā)現(xiàn)(PCED)消息(“通告”)而得知PCE的存在,所述PCED消息是從PCE在其區(qū)域內(nèi)或穿過整個(gè)AS發(fā)送的,用于通告其服務(wù)。
穿越AS邊界時(shí)出現(xiàn)的一個(gè)困難在于頭端LSR處的路徑計(jì)算需要頭端和尾端LSR之間整個(gè)網(wǎng)絡(luò)上的資源和網(wǎng)絡(luò)拓?fù)涞闹R(shí)。然而,在穿越AS邊界時(shí),服務(wù)提供商通常不彼此共享該信息。頭端LSR和任何單個(gè)PCE都不具有足夠知識(shí)來計(jì)算路徑。鑒于此,為計(jì)算域間TE LSP,需要MPLS流量工程路徑計(jì)算技術(shù)。在計(jì)算穿越區(qū)域的MPLS流量工程LSP的路徑時(shí)會(huì)出現(xiàn)類似問題。網(wǎng)絡(luò)拓?fù)浜唾Y源信息一般不流過區(qū)域邊界,即使單個(gè)服務(wù)提供商可以操作所有區(qū)域也是如此。
PCE的使用已經(jīng)適合于創(chuàng)建分布式PCE體系結(jié)構(gòu),以便擴(kuò)展MPLSTE LSP穿過AS或區(qū)域邊界。這種分布式體系結(jié)構(gòu)的示例在2003年9月18日由Vasseur等人遞交的題為“COMPUTING INTER-AUTONOMOUSSYSTEM MPLS TRAFFIC ENGINEERING LSP PATHS”的共同擁有、共同未決的美國專利申請(qǐng)No.10/767,574中有所描述,據(jù)此通過引用將該專利申請(qǐng)的內(nèi)容整體上結(jié)合于此。在分布式的PCE體系結(jié)構(gòu)中,計(jì)算路徑所需的可見性被擴(kuò)展到相鄰區(qū)域和AS之間,從而使得多個(gè)PCE能夠通過在保持AS之間的機(jī)密性的同時(shí)交換虛擬最短路徑樹(VSPT)來協(xié)作計(jì)算穿越多個(gè)區(qū)域或AS的路徑。VSPT可被表示為由“寬松跳(loose hop)”構(gòu)成的虛擬鏈路,它之所以被使用是因?yàn)榉?wù)提供商可能希望使它們內(nèi)部的網(wǎng)絡(luò)體系結(jié)構(gòu)和設(shè)計(jì)保持機(jī)密。一種計(jì)算VSPT的方法是使用虛擬最短路徑樹(VSPT)算法。一般而言,VSPT是一種壓縮路徑描述(區(qū)域/AS的入口和出口/目的地點(diǎn)),其通知前一PCE,可以以某種對(duì)相鄰區(qū)域或AS保密內(nèi)部路徑細(xì)節(jié)的方式從一個(gè)特定入口到一個(gè)特定出口,從而到達(dá)目的地。構(gòu)成VSPT的虛擬鏈路一般具有針對(duì)每個(gè)計(jì)算出的鏈路的相關(guān)網(wǎng)絡(luò)成本。應(yīng)該注意,在工作在一個(gè)公共機(jī)構(gòu)(例如唯一的服務(wù)提供商)下的多個(gè)AS的上下文中,這樣的虛擬鏈路還可以指定完整路徑。一組虛擬鏈路可被進(jìn)一步組織(按某些協(xié)議)在一個(gè)顯式路由對(duì)象(ERO)內(nèi),以輔助壓縮路徑描述到前一PCE的傳輸。
某些應(yīng)用可以并入單向數(shù)據(jù)流,這些單向數(shù)據(jù)流被配置用于根據(jù)某種“服務(wù)質(zhì)量”(QoS)從計(jì)算機(jī)網(wǎng)絡(luò)中的源(發(fā)送者)向網(wǎng)絡(luò)中的目的地(接收者)傳輸對(duì)時(shí)間敏感的流量。這里,可以為該單向流預(yù)留網(wǎng)絡(luò)資源,以確保與數(shù)據(jù)流相關(guān)聯(lián)的QoS被維持。資源預(yù)留協(xié)議(RSVP)是一種使得應(yīng)用能夠預(yù)留資源以便為其數(shù)據(jù)流獲得特殊的QoS的網(wǎng)絡(luò)控制協(xié)議。RSVP與路由協(xié)議協(xié)同工作,以例如為計(jì)算機(jī)網(wǎng)絡(luò)中的數(shù)據(jù)流預(yù)留資源,以便建立該數(shù)據(jù)流所需的QoS級(jí)別。RSVP在R.Braden等人的題為“Resource ReSerVation Protocol(RSVP)”的RFC 2205中定義。在流量工程應(yīng)用的情況下,RSVP信令被用于沿著遵循所需限制集合的TE LSP向路由器(例如邊界路由器)傳遞各種TE LSP屬性,例如ERO。
由于區(qū)域間或AS間TE LSP可能已經(jīng)利用合作的PCE集合被計(jì)算出,因此計(jì)算出的路徑可能被頭端LSR已知為一組寬松跳。因此,這樣的路徑將被頭端LSR利用由寬松跳構(gòu)成的ERO來以信號(hào)方式通知。但是,當(dāng)利用ERO中的寬松跳時(shí),來自區(qū)域或AS內(nèi)的PCE的計(jì)算出的路徑可能是,也可能不是,所使用的實(shí)際路徑,這是因?yàn)樗┻^的寬松跳可能不具有關(guān)于該計(jì)算出的路徑的知識(shí),因此可能計(jì)算出與PCE先前計(jì)算出的路徑不同的路徑。實(shí)際上,由于寬松跳只標(biāo)記了區(qū)域或AS的入口和出口,因此接收該寬松跳的邊界路由器(入口)一般必須根據(jù)傳統(tǒng)的ERO擴(kuò)展技術(shù)并使用其自己的網(wǎng)絡(luò)知識(shí)來重新計(jì)算到出口的路徑段。即使在入口是最初計(jì)算該路徑的PCE的情況下,PCE一般也是無狀態(tài)的,這意味著一旦其計(jì)算出路徑段并向PCC發(fā)送了響應(yīng),該路徑就不再存儲(chǔ)在存儲(chǔ)器中,因此它也必須重新計(jì)算該路徑。這樣的重計(jì)算消耗了邊界路由器的資源,并且在某些情況下,可能不提供所允諾的路徑成本(例如當(dāng)邊界路由器計(jì)算出到達(dá)出口的另一條不同的路徑段時(shí))。另外,對(duì)路徑的重新計(jì)算引入了延遲或等待時(shí)間,這可能不利地影響對(duì)時(shí)間敏感的流量工程應(yīng)用,例如TE LSP建立時(shí)間。
網(wǎng)絡(luò)中的節(jié)點(diǎn)(例如源和目的地)之間的多樣路徑(diverse path)提供了多種益處,包括在節(jié)點(diǎn)或鏈路故障情況下的冗余性(由于單個(gè)故障不可能同時(shí)影響多樣路徑)以及在嘗試限制故障對(duì)流量的某部分的影響時(shí)流量的負(fù)載平衡。因此,PCE通??赡鼙徽?qǐng)求計(jì)算多樣路徑;但是,響應(yīng)于這樣的請(qǐng)求,不能保證重新計(jì)算的路徑會(huì)保持多樣性。例如,如果一個(gè)區(qū)域的兩個(gè)入口邊界路由器獨(dú)立地接收到帶有到出口的寬松跳的路徑預(yù)留請(qǐng)求,它們則將無法知曉彼此,并無法知曉多樣性需求。鑒于此,當(dāng)重新計(jì)算路徑段時(shí),兩個(gè)邊界路由器可能沿途利用同樣的內(nèi)部網(wǎng)絡(luò)設(shè)備到達(dá)寬松跳的不同出口邊界路由器,從而丟失了所請(qǐng)求的多樣性。
因此,存在對(duì)用于取回PCE已經(jīng)計(jì)算出的特定區(qū)域內(nèi)或AS內(nèi)路徑的系統(tǒng)和方法的需求。
發(fā)明內(nèi)容
本發(fā)明針對(duì)一種用于根據(jù)有狀態(tài)(或“半狀態(tài)”)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段的技術(shù)。該有狀態(tài)PCE模型包括被配置用于存儲(chǔ)響應(yīng)于路徑計(jì)算客戶端(PCC)發(fā)布的路徑計(jì)算請(qǐng)求而由PCE計(jì)算出的一個(gè)或多個(gè)路徑段的數(shù)據(jù)結(jié)構(gòu)。注意,存儲(chǔ)在數(shù)據(jù)結(jié)構(gòu)中的每個(gè)計(jì)算出的路徑段由一個(gè)相關(guān)聯(lián)的路徑密鑰值(“路徑密鑰”)標(biāo)識(shí)。數(shù)據(jù)結(jié)構(gòu)的路徑段和路徑密鑰內(nèi)容在網(wǎng)絡(luò)中的預(yù)定位置處被臨時(shí)保存(“緩存”)一段可配置的時(shí)間。
在示例性實(shí)施例中,該數(shù)據(jù)結(jié)構(gòu)被具體化為存儲(chǔ)在網(wǎng)絡(luò)的域內(nèi)的一個(gè)或多個(gè)PCE處的計(jì)算出的路徑段表。該路徑段表包括多個(gè)條目,其中每個(gè)條目包含計(jì)算出的路徑段字段以及相關(guān)聯(lián)的路徑密鑰字段。響應(yīng)于路徑計(jì)算請(qǐng)求,PCE計(jì)算路徑段并生成路徑密鑰。計(jì)算出的段和生成的密鑰隨后分別被緩存在表中條目的計(jì)算出的路徑段和路徑密鑰字段中。此后,PCE將路徑計(jì)算響應(yīng)返回到PCC,該路徑計(jì)算響應(yīng)包括路徑密鑰和包含計(jì)算出的路徑段的壓縮路徑描述的計(jì)算出的路徑。
在接收到響應(yīng)之后,PCC生成路徑預(yù)留消息,該路徑預(yù)留消息將沿著由ERO描述的路徑被傳送到某些接收節(jié)點(diǎn),例如邊界路由器。路徑預(yù)留消息例如是資源預(yù)留協(xié)議(RSVP)路徑消息,其包括包含一個(gè)或多個(gè)密鑰標(biāo)識(shí)符(ID)子對(duì)象的新穎路徑密鑰對(duì)象。根據(jù)本發(fā)明的一個(gè)方面,每個(gè)密鑰ID子對(duì)象包含緩存了ERO的計(jì)算出的路徑段及其相關(guān)聯(lián)的路徑密鑰的PCE(“標(biāo)識(shí)的PCE”)的ID。
接收方邊界路由器掃描路徑預(yù)留消息以搜索路徑密鑰對(duì)象。響應(yīng)于定位到該對(duì)象,路由器提取PCE ID和路徑密鑰,并生成包含該提取出的信息的路徑計(jì)算請(qǐng)求以發(fā)送到標(biāo)識(shí)的PCE。標(biāo)識(shí)的PCE接收該請(qǐng)求,并例如通過使路徑密鑰字段的內(nèi)容與提取出的密鑰匹配來索引路徑段表。存儲(chǔ)在匹配的條目中的計(jì)算出的路徑段隨后經(jīng)由路徑計(jì)算回復(fù)被返回到路由器。
有利的是,這里描述的技術(shù)使得能夠高效地計(jì)算穿過網(wǎng)絡(luò)的多個(gè)域的路徑,例如域間流量工程(TE)標(biāo)簽交換路徑(LSP)和/或多樣路徑。具體而言,本發(fā)明的技術(shù)消除了針對(duì)一個(gè)或多個(gè)PCE先前計(jì)算出的域內(nèi)段執(zhí)行由ERO的壓縮路徑描述指定的一個(gè)或多個(gè)附加路徑計(jì)算的需求。本發(fā)明還提供了一組最優(yōu)的(最短)路徑段,同時(shí)保持多個(gè)域之間的機(jī)密性,并允許保持計(jì)算出的路徑的多樣性。
通過結(jié)合附圖參考以下描述,可以更好地理解本發(fā)明的以上和其他優(yōu)點(diǎn),附圖中類似標(biāo)號(hào)指示相同或功能上類似的元件圖1A是可以根據(jù)本發(fā)明使用的自治系統(tǒng)的示例性計(jì)算機(jī)網(wǎng)絡(luò)的示意性框圖;圖1B是可以根據(jù)本發(fā)明使用的區(qū)域的示例性計(jì)算機(jī)網(wǎng)絡(luò)的示意性框圖;圖2是可被有利地與本發(fā)明一起使用的示例性路由器的示意性框圖;圖3是可被有利地與本發(fā)明一起使用的RSVP路徑消息300的一些部分的示意性功能框圖;圖4是可被有利地與本發(fā)明一起使用的圖1A的計(jì)算機(jī)網(wǎng)絡(luò)的詳細(xì)示意性框圖;圖5是根據(jù)本發(fā)明可被具體化為計(jì)算出的路徑段表的數(shù)據(jù)結(jié)構(gòu)的示意性框圖;圖6是示出可被有利地與本發(fā)明一起使用的路徑密鑰對(duì)象的格式的示意性框圖;圖7是示出根據(jù)本發(fā)明用于建立針對(duì)一條(或多條)隧道計(jì)算出的路徑的步驟序列的流程圖;以及圖8是示出根據(jù)本發(fā)明用于利用計(jì)算出的路徑建立到目的地的路徑(隧道)的步驟序列的流程圖。
具體實(shí)施例方式
圖1A是包括自治系統(tǒng)AS2的示例性計(jì)算機(jī)網(wǎng)絡(luò)100a的示意性框圖,其中自治系統(tǒng)AS2與多個(gè)其他自治系統(tǒng)AS1、AS3和AS4互連。自治系統(tǒng)(AS)在這里被定義為網(wǎng)絡(luò)內(nèi)的一組中間節(jié)點(diǎn)(例如域內(nèi)路由器),它們受制于同一機(jī)構(gòu)并執(zhí)行一個(gè)或多個(gè)域內(nèi)路由協(xié)議。雖然每個(gè)AS被示為自治系統(tǒng),但本領(lǐng)域技術(shù)人員將意識(shí)到,AS也可被配置為路由域或其他網(wǎng)絡(luò)或子網(wǎng)。自治系統(tǒng)AS1包括諸如邊界路由器ASBR1*和ASBR2*之類的域內(nèi)路由器,通過這些邊界路由器,通信(例如數(shù)據(jù)分組)可進(jìn)入該自治系統(tǒng)和離開該自治系統(tǒng)到AS2的邊界路由器ASBR3和ASBR4。AS2還包括邊界路由器ASBR5*和ASBR6*,它們分別與AS3和AS4的邊界路由器ASBR7*和ASBR8*通信。此外,在AS1、AS2、AS3和AS4內(nèi),分別存在示例性的域內(nèi)路由器A、B、C和D。本領(lǐng)域技術(shù)人員將會(huì)理解,在AS中可以使用任何數(shù)目的路由器,并且這里的視圖是出于簡化目的而示出的。
數(shù)據(jù)分組可以利用預(yù)定的網(wǎng)絡(luò)通信協(xié)議在自治系統(tǒng)AS1-AS4之間交換,所述網(wǎng)絡(luò)通信協(xié)議例如是傳輸控制協(xié)議/因特網(wǎng)協(xié)議(TCP/IP)、用戶數(shù)據(jù)報(bào)協(xié)議(UDP)、異步傳輸模式(ATM)協(xié)議、幀中繼協(xié)議、因特網(wǎng)分組交換(IPX)協(xié)議等等。路由信息可以通過使用鏈路狀態(tài)通告(LSA)或鏈路狀態(tài)分組而利用預(yù)定的“內(nèi)部”網(wǎng)關(guān)協(xié)議(IGP)在AS內(nèi)的路由器間被分發(fā),所述IGP例如是傳統(tǒng)的距離向量協(xié)議或鏈路狀態(tài)協(xié)議。另外,包含網(wǎng)絡(luò)路由信息的數(shù)據(jù)分組可以利用“外部”網(wǎng)關(guān)協(xié)議在自治系統(tǒng)AS1-AS4間被交換,所述“外部”網(wǎng)關(guān)協(xié)議例如是邊界網(wǎng)關(guān)協(xié)議(BGP)。
圖1B是包括區(qū)域A1、A2和A3的示例性計(jì)算機(jī)網(wǎng)絡(luò)100b的示意性框圖,其中每個(gè)區(qū)域分別具有至少一個(gè)域內(nèi)路由器A、B和C。另外,A1和A2共享邊界路由器ABR1*和ABR2*,而A2和A3共享ABR3*和ABR4。這里使用的區(qū)域是彼此間共享全部網(wǎng)絡(luò)拓?fù)湫畔⒌灰欢ㄅc區(qū)域外的路由器共享全部網(wǎng)絡(luò)拓?fù)湫畔⒌穆酚善鞯募?。這里使用的術(shù)語“區(qū)域”還涵蓋了術(shù)語“級(jí)別(level)”,其對(duì)于采用IS-IS作為IGP的網(wǎng)絡(luò)而言具有類似的意義。這些示例都僅僅是代表性的。此外,下面參考AS間路徑計(jì)算所描述的技術(shù)可以在區(qū)域間路徑計(jì)算的上下文中使用,并且在某些情況下,參考區(qū)域間路徑計(jì)算描述的技術(shù)可被用于AS間路徑計(jì)算。本領(lǐng)域技術(shù)人員將意識(shí)到,在提及自治系統(tǒng)之處都同樣可以使用區(qū)域。
圖2是可作為域內(nèi)路由器或邊界路由器而有利地與本發(fā)明一起使用的示例性路由器200的示意性框圖。該路由器包括通過系統(tǒng)總線250互連的多個(gè)網(wǎng)絡(luò)接口210、處理器220和存儲(chǔ)器240。網(wǎng)絡(luò)接口210包含用于通過耦合到網(wǎng)絡(luò)100a、b的物理鏈路傳輸數(shù)據(jù)的機(jī)械、電氣和信令電路。網(wǎng)絡(luò)接口可被配置為利用各種不同的通信協(xié)議發(fā)送和/或接收數(shù)據(jù),所述通信協(xié)議包括TCP/IP、UDP、ATM、同步光網(wǎng)絡(luò)(SONET)、無線協(xié)議、幀中繼、以太網(wǎng)、光纖分布數(shù)據(jù)接口(FDDI)等等。
存儲(chǔ)器240包括多個(gè)處理器220和網(wǎng)絡(luò)接口210可尋址的存儲(chǔ)位置,用于存儲(chǔ)與本發(fā)明相關(guān)聯(lián)的軟件程序和數(shù)據(jù)結(jié)構(gòu)。處理器220可以包括適合于執(zhí)行軟件程序和操縱數(shù)據(jù)結(jié)構(gòu)(例如表500)的必需的元件或邏輯。路由器操作系統(tǒng)242通過調(diào)用支持諸如在路由器上執(zhí)行的PCC/PCE進(jìn)程245、路由服務(wù)247和RSVP服務(wù)249之類的軟件進(jìn)程和/或服務(wù)的網(wǎng)絡(luò)操作等方式來在功能上組織路由器,其中所述路由器操作系統(tǒng)242的某些部分通常位于存儲(chǔ)器240中并由處理器執(zhí)行。本領(lǐng)域技術(shù)人員將意識(shí)到,可以使用其它處理器和存儲(chǔ)器裝置(包括各種計(jì)算機(jī)可讀介質(zhì))來存儲(chǔ)和執(zhí)行與這里描述的發(fā)明技術(shù)相關(guān)的程序指令。
路由服務(wù)247包含由處理器220執(zhí)行以執(zhí)行由一個(gè)或多個(gè)路由協(xié)議(例如OSPF和IS-IS)提供的功能的可執(zhí)行指令。這些功能可被配置用于管理轉(zhuǎn)發(fā)信息數(shù)據(jù)庫(未示出),該數(shù)據(jù)庫例如包含用于執(zhí)行轉(zhuǎn)發(fā)判決的數(shù)據(jù)。RSVP服務(wù)249包含根據(jù)本發(fā)明用于實(shí)現(xiàn)RSVP和處理RSVP消息的計(jì)算機(jī)可執(zhí)行指令。RSVP在1997年9月R.Braden等人的題為“Resource ReSerVation Protocol(RSVP)”的請(qǐng)求注釋(RFC)2205和題為“RSVP-TEExtensions to RSVP for LSP Tunnels”的RFC 3209中有所描述,其中RFC 2205可以從IETF獲得并通過引用被結(jié)合于此,就好像在這里被完整提出一樣,RFC 3209在前文中已經(jīng)并入。
在一個(gè)實(shí)施例中,這里描述的路由器是實(shí)現(xiàn)多協(xié)議標(biāo)簽交換(MPLS)并作為標(biāo)簽交換路由器(LSR)工作的IP路由器。在一種簡單的MPLS情形中,在網(wǎng)絡(luò)的入口處,基于分組的轉(zhuǎn)發(fā)等價(jià)類向每個(gè)傳入的分組分配標(biāo)簽,然后再將分組轉(zhuǎn)發(fā)到下一跳路由器。在每個(gè)路由器處,通過使用在傳入分組中找到的標(biāo)簽作為參考查閱包括該信息的標(biāo)簽轉(zhuǎn)發(fā)表來確定轉(zhuǎn)發(fā)選擇和新的替換標(biāo)簽。在網(wǎng)絡(luò)出口處(或其前一跳),基于傳入的標(biāo)簽來執(zhí)行轉(zhuǎn)發(fā)判決,但是可選地,當(dāng)分組被發(fā)送到下一跳時(shí),沒有包括標(biāo)簽。
以這種方式穿越網(wǎng)絡(luò)的分組所采取的路徑被稱為標(biāo)簽交換路徑(LSP)。LSP的建立需要路徑的計(jì)算、沿該路徑發(fā)送信令,以及沿該路徑修改轉(zhuǎn)發(fā)表。MPLS流量工程建立了在某些情況下具有有保障的帶寬的LSP。例如,可以通過使用RSVP協(xié)議來以信號(hào)方式通知TE LSP。
根據(jù)RSVP,為了建立發(fā)送者和接收者之間的數(shù)據(jù)流,發(fā)送者可以沿著到接收者的路徑(例如單播路由)向下游逐跳發(fā)送RSVP路徑(Path)消息,以標(biāo)識(shí)發(fā)送者并指示例如容納數(shù)據(jù)流所需的帶寬以及TE LSP的其他屬性。路徑消息可以包含各種關(guān)于數(shù)據(jù)流的信息,例如包括數(shù)據(jù)流的流量特性。圖3是可被有利地與本發(fā)明一起使用的RSVP路徑消息300的某些部分的示意性框圖。消息300包含公共頭部310、發(fā)送者模板對(duì)象320、流量規(guī)范(Tspec)對(duì)象330、顯式路由對(duì)象(ERO)340等等。應(yīng)該注意,消息300可以包含其他對(duì)象,包括新穎的路徑密鑰對(duì)象600(下面將描述)。
雖然這里描述的示例性實(shí)施例針對(duì)MPLS,但是應(yīng)該注意,本發(fā)明可以有利地應(yīng)用到廣義MPLS(GMPLS),其不僅適合基于分組和信元的網(wǎng)絡(luò),還適合時(shí)分復(fù)用(TDM)和光網(wǎng)絡(luò)。GMPLS是公知的,并且在2004年10月的題為“Generalized Multi-Protocol Label Switching(GMPLS)Architecture”的RFC 3945以及題為“Generalized Multi-Protocol LabelSwitching(GMPLS)Extensions for Synchronous Optical Network(SONET)and Synchronous Digital Hierarchy(SDH)Control”的RFC 3946中有所描述,這兩個(gè)RFC的內(nèi)容通過引用被整體上結(jié)合于此。
為了計(jì)算穿過多個(gè)區(qū)域或AS的路徑,以上引用的美國申請(qǐng)No.10/767,574描述了在分布式路徑計(jì)算元件(PCE)體系結(jié)構(gòu)中使用虛擬最短路徑樹(VSPT)算法,該申請(qǐng)已被通過引用結(jié)合于此。根據(jù)VSPT算法,對(duì)于AS間路徑計(jì)算示例(例如圖1A中),PCC(路由器A)首先向其AS中的已知本地PCE(例如ASBR1*)發(fā)送路徑計(jì)算請(qǐng)求,以計(jì)算到諸如AS3中的路由器C之類的目的地(例如尾端LSR)的路徑。作為示例,圖1A和1B中標(biāo)記了“*”的邊界路由器是能夠?qū)崿F(xiàn)PCE的邊界路由器。本地PCE的地址可以手工配置?;蛘?,PCE可以通過在AS內(nèi)泛播(flooding)來通告其自身。根據(jù)2004年7月公布的Vasseur等人的“OSPF MPLS Traffic Engineering Capabilities(draft-vasseur-ospf-te-caps.txt)”,路徑計(jì)算元件發(fā)現(xiàn)(PCED)技術(shù)可被使用,該文檔通過引用被結(jié)合于此。PCED消息可以包括PCE能力的指示,PCE能力例如是計(jì)算本地路徑、區(qū)域間路徑、AS間路徑、多域路徑、多樣性路徑等等的能力。
路徑計(jì)算請(qǐng)求(和響應(yīng))可以根據(jù)2004年7月Vasseur等人在因特網(wǎng)草案“RSVP Path Computation Request and Reply Messages”中指定的協(xié)議來執(zhí)行,該草案通過引用被結(jié)合于此,就好像在這里被完整提出一樣。隨后路徑計(jì)算請(qǐng)求被傳遞到在到達(dá)目的地途中的每個(gè)AS(AS1、AS2、AS3)中的PCE。如本領(lǐng)域技術(shù)人員容易設(shè)計(jì)出的,關(guān)于其他PCE地址的知識(shí)可以通過靜態(tài)配置或BGP通告來獲取。應(yīng)該理解,RSVP的使用僅作為示例,根據(jù)本發(fā)明,可以使用其他通信協(xié)議。
一旦路徑計(jì)算請(qǐng)求到達(dá),包含目的地(路由器C)的最終AS(AS3)中的PCE(ASBR7*)就計(jì)算VSPT,該VSPT是以目的地為根并且包括從該目的地到區(qū)域的每個(gè)邊界路由器的滿足一組所需限制的最短路徑的集合的最短路徑樹。這可以利用本領(lǐng)域已知的CSPF(受限最短路徑優(yōu)先)算法或任何其他合適的算法來計(jì)算。最終區(qū)域的PCE隨后利用虛擬鏈路(或“寬松跳”)將VSPT發(fā)送到前一AS(AS2)的PCE(ASBR5*)??蛇x地,VSPT以使得AS內(nèi)部的跳和它們的成本保持機(jī)密的方式使用寬松跳。寬松跳可以具有單個(gè)相關(guān)成本,該相關(guān)成本是內(nèi)部成本的組合或代表。如果找到多個(gè)相等成本的路徑,PCE則可以將它們中的某些或全部提供給發(fā)出請(qǐng)求的PCC。其他情況下,PCE可能返回多于一條路徑,例如當(dāng)PCC請(qǐng)求計(jì)算多樣路徑時(shí)。這些多樣路徑可能具有或不具有相等的成本。
前一AS中的PCE(ASBR5*)現(xiàn)在重復(fù)VSPT算法,并將其接收自最終PCE(ASBR7*)的VSPT與其自己的AS(AS2)的拓?fù)?包括AS間鏈路)連接起來以計(jì)算新路徑。該過程在所有AS中重復(fù),直到響應(yīng)到達(dá)發(fā)端PCC(路由器A)為止。出于這個(gè)原因,VSPT算法被稱為“遞歸式后向路徑計(jì)算”。
當(dāng)上述過程在發(fā)端PCC處完成時(shí),響應(yīng)中的路徑由沿該路徑到目的地的一系列跳組成。注意,只要在網(wǎng)絡(luò)將被保持機(jī)密的情況下,跳就可以是寬松的。在此情況下,計(jì)算出的完整路徑可被認(rèn)為是通過AS的基本路徑,該基本路徑只包含每個(gè)機(jī)密AS的入口和出口點(diǎn)。以下是這種計(jì)算出的路徑的內(nèi)容的示例,也稱之為ERO(例如ERO 340)“ASBR1*,ASBR3,ASBR5*(L),ASBR7*,路由器C(L)”,其中“(L)”指寬松跳。然后,PCC可以通過在計(jì)算出的路徑上(在ERO中)向其區(qū)域或AS的出口邊界路由器轉(zhuǎn)發(fā)RSVP路徑消息300來建立到目的地的隧道(例如LSP)。應(yīng)該理解,在區(qū)域體系結(jié)構(gòu)中,出口邊界路由器是下一區(qū)域的入口邊界路由器。該下一邊界路由器隨后計(jì)算到ERO 340中的下一寬松跳所指定的下一出口邊界的特定路徑。該出口邊界路由器隨后根據(jù)ERO重復(fù)該過程,直到再次到達(dá)目的地為止,并且根據(jù)本領(lǐng)域已知的方法隧道被創(chuàng)建。
圖4是網(wǎng)絡(luò)100a的AS1和AS2的更詳細(xì)示意性框圖,其中示出根據(jù)上述方法計(jì)算出的路由器A和路由器B之間的兩條多樣路徑(虛線)。通常,這出現(xiàn)在PCC(路由器A)請(qǐng)求得出它和目的地(路由器B)之間的任何數(shù)目的多樣路徑的路徑計(jì)算時(shí)。多樣路徑是本領(lǐng)域技術(shù)人員已知的并且提供了各種益處。一個(gè)這樣的益處在于到目的地的路徑的冗余性,從而使得如果一個(gè)節(jié)點(diǎn)或鏈路以某種方式發(fā)生故障,備份路徑已經(jīng)被建立,并且流量幾乎可以立即被傳輸?shù)皆撀窂?。另一益處是?duì)沿路徑流動(dòng)的流量進(jìn)行負(fù)載平衡。例如,具有10MB/sec數(shù)據(jù)流的PCC可能希望沿一條路徑分發(fā)5MB/sec,而沿另一路徑分發(fā)5MB/sec。如果沿路徑之一的任何節(jié)點(diǎn)或鏈路發(fā)生故障,則這可能限制丟失數(shù)據(jù)的量,和/或要重定向的流量的量。本領(lǐng)域技術(shù)人員應(yīng)該理解路徑多樣性的其他益處。除了其網(wǎng)絡(luò)知識(shí)之外,PCE可以計(jì)算多樣路徑,因?yàn)樗谟?jì)算路徑的同時(shí)知曉其正在計(jì)算的所有路徑,因此它可以確保不使用沖突的節(jié)點(diǎn)或鏈路。重要的是要注意,PCC可能希望計(jì)算符合鏈路多樣性(不共享同一鏈路)、節(jié)點(diǎn)多樣性(不共享同一節(jié)點(diǎn))或共享危險(xiǎn)鏈路組(SRLG)多樣性(不共享同一SRLG)的路徑。
在圖4中,根據(jù)這里描述的方法,將在路由器A和路由器B之間建立兩條示例路徑。第一路徑開始于AS1中,并將繼續(xù)通過節(jié)點(diǎn)n1和n2到達(dá)ASBR1*。從ASBR1*,路徑通過繼續(xù)到ASBR3而行進(jìn)到AS2,并通過首先經(jīng)過節(jié)點(diǎn)n3、n4和n5而繼續(xù)到目的地路由器B。路由器A和路由器B之間的第二路徑也開始于路由器A,但已被計(jì)算為通過節(jié)點(diǎn)m1和m2到達(dá)不同的邊界路由器ASBR2*。從ASBR2*,路徑通過ASBR4繼續(xù)到AS2,然后繼續(xù)通過節(jié)點(diǎn)m3和m4到達(dá)路由器B。應(yīng)該注意,從m3到n5到B的虛線是在給定到目的地路由器B的寬松跳的情況下,根據(jù)現(xiàn)有技術(shù)的方法ASBR4可能重新計(jì)算出的路徑的示例。在此情況下,可以看出新計(jì)算的路徑既不是節(jié)點(diǎn)多樣的也不是鏈路多樣的。
本發(fā)明針對(duì)用于根據(jù)有狀態(tài)(stateful))(或者“半狀態(tài)(semi-stateful)”)PCE模型取回穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的計(jì)算出的路徑段的技術(shù)。有狀態(tài)PCE模型包括被配置用于存儲(chǔ)響應(yīng)于例如PCC發(fā)布的路徑計(jì)算請(qǐng)求而由PCE計(jì)算出的一個(gè)或多個(gè)路徑段的數(shù)據(jù)結(jié)構(gòu)。注意,存儲(chǔ)在數(shù)據(jù)結(jié)構(gòu)中的每個(gè)計(jì)算出的路徑段由相關(guān)聯(lián)的路徑密鑰值(“路徑密鑰”)來標(biāo)識(shí)。數(shù)據(jù)結(jié)構(gòu)的路徑段和路徑密鑰內(nèi)容在網(wǎng)絡(luò)中的預(yù)定位置處被臨時(shí)保存(“緩存”)一段可配置的時(shí)間。
圖5是在示例性實(shí)施例中被具體化為存儲(chǔ)在網(wǎng)絡(luò)的域內(nèi)的一個(gè)或多個(gè)PCE處的計(jì)算出的路徑段表500的數(shù)據(jù)結(jié)構(gòu)的示意性框圖。路徑段表500包括多個(gè)條目502,其中每個(gè)條目包含一個(gè)計(jì)算出的路徑段字段510和相關(guān)聯(lián)的路徑密鑰字段505。響應(yīng)于路徑計(jì)算請(qǐng)求,PCE計(jì)算路徑段并生成路徑密鑰。計(jì)算出的段和生成的密鑰隨后被分別緩存在表中的條目502的計(jì)算出的路徑字段和路徑密鑰字段中。隨后,PCE將路徑計(jì)算響應(yīng)返回到PCC,該路徑計(jì)算響應(yīng)包括路徑密鑰和計(jì)算出的路徑,其包含計(jì)算出的路徑段的壓縮路徑描述。
在接收到響應(yīng)之后,PCC生成路徑預(yù)留消息,該路徑預(yù)留消息將沿著由ERO描述的路徑被傳送到某些接收節(jié)點(diǎn),例如邊界路由器。路徑預(yù)留消息例如是包括新穎的路徑密鑰對(duì)象600的RSVP路徑消息300。圖6是示出路徑密鑰對(duì)象600的格式的示意性框圖,該路徑密鑰對(duì)象600例如被具體化為類型/長度/值(TLV)編碼格式。TLV對(duì)象600被用來標(biāo)識(shí)正被傳送(傳遞)的信息的類型(T)、將被傳遞的信息的長度(L)和被傳遞的實(shí)際信息的值(V)。長度字段610中包含的長度(L)參數(shù)通常是特定于實(shí)現(xiàn)方式的,并且可以表示從對(duì)象600的類型字段605的開頭到結(jié)尾的長度。但是,長度一般表示值(V)字段615的長度而非類型(T)或長度(L)字段的長度。
值字段615例如包含一個(gè)或多個(gè)密鑰標(biāo)識(shí)符(ID)子對(duì)象650。根據(jù)本發(fā)明一個(gè)方面,每個(gè)密鑰ID子對(duì)象650進(jìn)而包括PCE ID字段652,其包含緩存了ERO的計(jì)算出的路徑段的PCE(“標(biāo)識(shí)的PCE”)的ID。另外,密鑰ID子對(duì)象包括路徑密鑰字段,該字段包含與計(jì)算出的路徑段相關(guān)聯(lián)的路徑密鑰。在示例性實(shí)施例中,PCE ID優(yōu)選地是PCE的路由器ID,而路徑密鑰是32位的無符號(hào)數(shù)字。
根據(jù)本發(fā)明,接收方邊界路由器掃描路徑預(yù)留消息300以搜索路徑密鑰對(duì)象600。響應(yīng)于定位到該對(duì)象,路由器提取PCE ID 652和路徑密鑰654,并生成包含該提取出的信息的路徑計(jì)算請(qǐng)求以發(fā)送到標(biāo)識(shí)的PCE。標(biāo)識(shí)的PCE接收該請(qǐng)求,并例如通過使路徑密鑰字段505的內(nèi)容與提取出的路徑密鑰654匹配來索引路徑段表500。存儲(chǔ)在匹配的條目502中的計(jì)算出的路徑段510隨后經(jīng)由路徑計(jì)算回復(fù)被返回到路由器。
圖7是根據(jù)本發(fā)明用于針對(duì)一個(gè)(或多個(gè))隧道建立計(jì)算出的路徑的步驟序列的流程圖。該序列開始于步驟705,并繼續(xù)到步驟710,其中PCC生成路徑計(jì)算請(qǐng)求。通常,路徑計(jì)算請(qǐng)求包括源PCC地址和希望的隧道目的地地址。一旦路徑計(jì)算請(qǐng)求生成,PCC就在步驟715中將該請(qǐng)求發(fā)送到PCE以計(jì)算路徑段(“路徑”)。在存在多個(gè)對(duì)于PCC可見的PCE的情況下,PCC根據(jù)所需量度選擇最佳PCE。該確定的方法在Vasseur等人在同一日遞交的題為“SYSTE AND METHOD FORSELECTING A PATH COMPUTATION ELEMENT”的共同擁有、共同未決的美國申請(qǐng)No.10/983,280中有完整描述,該申請(qǐng)的內(nèi)容通過引用被整體上結(jié)合于此。
PCE(例如圖4中的ASBR5*)例如在步驟720中接收路徑計(jì)算請(qǐng)求,并在步驟725中開始計(jì)算針對(duì)所需目的地的一條或多條最優(yōu)路徑,如上所述。一旦已經(jīng)計(jì)算出這一條或多條路徑,PCE就在步驟730中為計(jì)算出的路徑創(chuàng)建路徑密鑰。路徑密鑰和計(jì)算出的路徑在步驟735中被存儲(chǔ)(緩存)在PCE的表500的條目中一段預(yù)定的時(shí)間。該預(yù)定時(shí)間可以由系統(tǒng)管理員配置,并且可以等于任何設(shè)置的時(shí)間段或根據(jù)一組給定的條件來定義,所述給定的條件例如是當(dāng)不再需要密鑰時(shí)(例如當(dāng)其已被訪問過時(shí),如下所述)。在步驟740中,PCE生成包含計(jì)算出的路徑的壓縮路徑描述(如上所述)的計(jì)算出的路徑,并在步驟745中,將包括路徑密鑰和計(jì)算出的路徑的路徑計(jì)算響應(yīng)(回復(fù))返回到PCC。PCC在步驟750中接收該回復(fù),并且序列在步驟755結(jié)束。應(yīng)該注意,在本發(fā)明的替換實(shí)施例中,PCE可以將實(shí)際計(jì)算出的路徑段與路徑密鑰一道發(fā)送到應(yīng)該接收請(qǐng)求的邊界路由器(例如ASBR3或ASBR4)。PCE隨后將不再被要求緩存計(jì)算出的路徑和路徑密鑰。
圖8是根據(jù)本發(fā)明用于利用計(jì)算出的路徑建立到目的地的路徑(隧道)的步驟序列的流程圖。該序列開始于步驟805并前進(jìn)到步驟810,其中PCC通過由ERO描述的路徑(例如n1、n2、ASBR1*、ASBR3...)將已生成的帶有ERO 340和路徑密鑰對(duì)象600的路徑預(yù)留消息300發(fā)送到某些接收節(jié)點(diǎn),例如邊界路由器。當(dāng)在步驟815中接收到消息(例如...ASBR3、B(L)...)之后,AS或區(qū)域的邊界路由器(例如圖4中的ASBR3)計(jì)算到目的地(B)的路徑。根據(jù)本發(fā)明,在步驟820中,邊界路由器檢查消息中路徑密鑰對(duì)象的存在性。如果在步驟825中確定不存在路徑密鑰對(duì)象,邊界路由器則在步驟830中利用傳統(tǒng)的ERO擴(kuò)展技術(shù)計(jì)算針對(duì)ERO上描述的寬松跳的路徑段。但是,如果消息中存在路徑密鑰對(duì)象,邊界路由器則隨后在步驟835中提取出路徑密鑰和PCE ID。在步驟840中,路由器將帶有路徑密鑰的路徑計(jì)算(例如查找)請(qǐng)求發(fā)送到由PCE ID標(biāo)識(shí)的PCE,根據(jù)本示例,該P(yáng)CE是ASBR5*在上述替換實(shí)施例中,如果邊界路由器已經(jīng)具有在本地存儲(chǔ)的路徑密鑰和計(jì)算出的路徑段,則本地查找會(huì)向邊界路由器提供該計(jì)算出的路徑。
PCE(ASBR5*)在步驟845中接收請(qǐng)求,并在步驟750中,利用路徑密鑰對(duì)計(jì)算出的路徑段表500執(zhí)行查找操作,以找到在路徑密鑰方面匹配的條目502。注意,在替換實(shí)施例中,路徑密鑰可被用來索引表以找到匹配條目。響應(yīng)于找到匹配條目,計(jì)算出的路徑段被取回(例如ASBR3、n3、n4、n5、B),并且在步驟855中,PCE將取回的路徑回復(fù)給發(fā)出請(qǐng)求的邊界路由器,該邊界路由器在步驟860中接收計(jì)算出的路徑。此時(shí),PCE可以(但不一定要)從表500中刪除該計(jì)算出的路徑段和路徑密鑰,如上所述。否則,PCE可以等待一段預(yù)定時(shí)間,然后再刪除路徑和路徑密鑰。有了計(jì)算出的路徑后,邊界路由器可以繼續(xù)根據(jù)標(biāo)準(zhǔn)隧道操作過程建立源路由器(路由器A)和目的地(路由器B)之間的隧道(步驟865)。該序列在步驟865結(jié)束。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,以上序列在跨越更多區(qū)域或AS時(shí)可以擴(kuò)展。
有利的是,這里描述的技術(shù)使得能夠高效地計(jì)算穿過網(wǎng)絡(luò)的多個(gè)域的路徑,例如域間流量工程(TE)標(biāo)簽交換路徑(LSP)和/或多樣路徑。具體而言,本發(fā)明的技術(shù)消除了針對(duì)一個(gè)或多個(gè)PCE先前計(jì)算出的域內(nèi)段執(zhí)行由ERO的壓縮路徑描述指定的一個(gè)或多個(gè)附加路徑計(jì)算的需求。本發(fā)明還提供了一組最優(yōu)的(最短)路徑段,同時(shí)保持多個(gè)域之間的機(jī)密性,并允許保持計(jì)算出的路徑的多樣性。
雖然已經(jīng)描述了根據(jù)有狀態(tài)(“半狀態(tài)”)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段的示例性實(shí)施例,但是將會(huì)理解,在本發(fā)明的精神和范圍內(nèi),可以執(zhí)行各種其他改變和修改。例如,本發(fā)明還可以被有利地用于嵌套的、或分級(jí)的區(qū)域或AS。例如,AS可以包括多個(gè)利用基于PCE的路徑計(jì)算來計(jì)算AS間以及區(qū)域間TE LSP的區(qū)域。在此情況下,在從相鄰的AS接收到請(qǐng)求之后,充當(dāng)PCE的AS邊界路由器可以返回一組壓縮路徑(指定每個(gè)區(qū)域內(nèi)的邊界路由器)以及它們的相關(guān)路徑密鑰?;蛘?,PCE還可以為單個(gè)聚集的壓縮路徑提供單個(gè)路徑密鑰,這將在本地轉(zhuǎn)化成一連串壓縮路徑與它們的相關(guān)密鑰。
上面的描述針對(duì)本發(fā)明的特定實(shí)施例。但是,顯而易見的是,可以對(duì)所述實(shí)施例執(zhí)行其他變化和修改,同時(shí)仍實(shí)現(xiàn)本發(fā)明的某些或全部優(yōu)點(diǎn)。例如,可以明確設(shè)想,本發(fā)明的教導(dǎo)可被實(shí)現(xiàn)為軟件,包括具有在計(jì)算機(jī)上執(zhí)行的程序指令的計(jì)算機(jī)可讀介質(zhì),硬件、固件或它們的組合。因此,這里的描述將僅被視為示例性的,而并非限制本發(fā)明的范圍。因此,所附權(quán)利要求書的目的是要覆蓋落入本發(fā)明的精神和范圍內(nèi)的所有這樣的變化和修改。
權(quán)利要求
1.一種用于根據(jù)有狀態(tài)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段的方法,該方法包括以下步驟接收由路徑計(jì)算客戶端(PCC)發(fā)布的路徑計(jì)算請(qǐng)求;響應(yīng)于所述路徑計(jì)算請(qǐng)求而計(jì)算一個(gè)或多個(gè)路徑段;將每個(gè)路徑段與一個(gè)路徑密鑰相關(guān)聯(lián);以及將所述一個(gè)或多個(gè)路徑段與每個(gè)相關(guān)聯(lián)的路徑密鑰存儲(chǔ)起來。
2.如權(quán)利要求1所述的方法,還包括將每個(gè)路徑段和相關(guān)聯(lián)的路徑密鑰保存在所述網(wǎng)絡(luò)中的預(yù)定位置上。
3.如權(quán)利要求1所述的方法,還包括將每個(gè)路徑段和相關(guān)聯(lián)的路徑密鑰保存一段配置的時(shí)間。
4.如權(quán)利要求1所述的方法,還包括將每個(gè)路徑段和相關(guān)聯(lián)的路徑密鑰保存在計(jì)算出的路徑段表中。
5.如權(quán)利要求4所述的方法,還包括在所述表中包含多個(gè)條目,其中每個(gè)條目包含一個(gè)計(jì)算出的路徑段字段和一個(gè)相關(guān)聯(lián)的路徑密鑰字段。
6.如權(quán)利要求1所述的方法,還包括向所述PCC返回路徑計(jì)算響應(yīng),該路徑計(jì)算響應(yīng)包括所述路徑密鑰和包含所述計(jì)算出的路徑段的壓縮路徑描述的計(jì)算出的路徑。
7.如權(quán)利要求6所述的方法,還包括將PCE標(biāo)識(shí)與所述路徑密鑰包括在一起,所述PCE標(biāo)識(shí)標(biāo)識(shí)出返回所述路徑計(jì)算響應(yīng)的PCE。
8.如權(quán)利要求1所述的方法,還包括從邊界路由器接收包括路徑密鑰的路徑計(jì)算請(qǐng)求;提取出所述路徑密鑰;索引已存儲(chǔ)的路徑密鑰,以使特定路徑段與所述提取出的路徑密鑰匹配;以及將存儲(chǔ)在匹配的條目中的計(jì)算出的路徑段經(jīng)由路徑計(jì)算回復(fù)返回到所述邊界路由器。
9.一種用于根據(jù)有狀態(tài)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段的方法,該方法包括以下步驟接收對(duì)路徑計(jì)算請(qǐng)求的響應(yīng),該響應(yīng)包括路徑密鑰和計(jì)算出的路徑,所述計(jì)算出的路徑包含計(jì)算出的路徑段的壓縮路徑描述;生成路徑預(yù)留消息,該路徑預(yù)留消息包括所述路徑密鑰和緩存有所述計(jì)算出的路徑的計(jì)算出的路徑段及其相關(guān)聯(lián)的路徑密鑰的PCE的ID;以及沿著由所述計(jì)算出的路徑所描述的路徑將所述路徑預(yù)留消息發(fā)送到某些接收節(jié)點(diǎn)。
10.一種用于根據(jù)有狀態(tài)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段的方法,該方法包括以下步驟接收路徑預(yù)留消息;掃描所述路徑預(yù)留消息以尋找路徑密鑰對(duì)象;響應(yīng)于路徑密鑰對(duì)象,提取出PCE ID和路徑密鑰;生成包含所述提取出的PCE ID和路徑密鑰的路徑計(jì)算請(qǐng)求;以及將所述路徑計(jì)算請(qǐng)求發(fā)送到由所述PCE ID標(biāo)識(shí)的PCE。
11.如權(quán)利要求10所述的方法,還包括從所述PCE接收對(duì)所述路徑計(jì)算請(qǐng)求的響應(yīng),該響應(yīng)包括計(jì)算出的路徑段;以及使用所述計(jì)算出的路徑段來完成路徑預(yù)留請(qǐng)求。
12.一種被配置用于根據(jù)有狀態(tài)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段的系統(tǒng),該系統(tǒng)包括處理器;網(wǎng)絡(luò)接口,用于接收由路徑計(jì)算客戶端(PCC)發(fā)布的路徑計(jì)算請(qǐng)求;由所述處理器執(zhí)行的PCE進(jìn)程,用于響應(yīng)于所述路徑計(jì)算請(qǐng)求而計(jì)算一個(gè)或多個(gè)路徑段并將每個(gè)路徑段與一個(gè)路徑密鑰相關(guān)聯(lián);以及存儲(chǔ)器,用于將所述一個(gè)或多個(gè)路徑段與每個(gè)相關(guān)聯(lián)的路徑密鑰存儲(chǔ)起來。
13.如權(quán)利要求12所述的系統(tǒng),還包括用于向所述PCC返回路徑計(jì)算響應(yīng)的網(wǎng)絡(luò)接口,所述路徑計(jì)算響應(yīng)包括所述路徑密鑰和包含所述計(jì)算出的路徑段的壓縮路徑描述的計(jì)算出的路徑。
14.如權(quán)利要求13所述的系統(tǒng),其中PCE標(biāo)識(shí)被與所述路徑密鑰包括在一起,所述PCE標(biāo)識(shí)標(biāo)識(shí)出返回所述路徑計(jì)算響應(yīng)的所述PCE進(jìn)程。
15.一種用于根據(jù)有狀態(tài)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段的系統(tǒng),該系統(tǒng)包括用于接收路徑預(yù)留消息的網(wǎng)絡(luò)接口;處理器,用于1)掃描所述路徑預(yù)留消息以尋找路徑密鑰對(duì)象,2)響應(yīng)于路徑密鑰對(duì)象,提取出PCE ID和路徑密鑰,以及3)生成包含所述提取出的PCE ID和路徑密鑰的路徑計(jì)算請(qǐng)求;以及用于將所述路徑計(jì)算請(qǐng)求發(fā)送到由所述PCE ID標(biāo)識(shí)的PCE的網(wǎng)絡(luò)接口。
16.一種適合于根據(jù)有狀態(tài)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段的裝置,該裝置包括用于接收由路徑計(jì)算客戶端(PCC)發(fā)布的路徑計(jì)算請(qǐng)求的裝置;用于響應(yīng)于所述路徑計(jì)算請(qǐng)求而計(jì)算一個(gè)或多個(gè)路徑段的裝置;用于將每個(gè)路徑段與一個(gè)路徑密鑰相關(guān)聯(lián)的裝置;以及用于將所述一個(gè)或多個(gè)路徑段與每個(gè)相關(guān)聯(lián)的路徑密鑰存儲(chǔ)起來的裝置。
17.一種包含可執(zhí)行的程序指令的計(jì)算機(jī)可讀介質(zhì),所述程序指令用于根據(jù)有狀態(tài)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段,所述可執(zhí)行的程序指令包括用于以下操作的程序指令接收由路徑計(jì)算客戶端(PCC)發(fā)布的路徑計(jì)算請(qǐng)求;響應(yīng)于所述路徑計(jì)算請(qǐng)求而計(jì)算一個(gè)或多個(gè)路徑段;將每個(gè)路徑段與一個(gè)路徑密鑰相關(guān)聯(lián);以及將所述一個(gè)或多個(gè)路徑段與每個(gè)相關(guān)聯(lián)的路徑密鑰存儲(chǔ)起來。
18.一種包含可執(zhí)行的程序指令的計(jì)算機(jī)可讀介質(zhì),所述程序指令用于根據(jù)有狀態(tài)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段,所述可執(zhí)行的程序指令包括用于以下操作的程序指令接收路徑預(yù)留消息;掃描所述路徑預(yù)留消息以尋找路徑密鑰對(duì)象;響應(yīng)于路徑密鑰對(duì)象,提取出PCE ID和路徑密鑰;生成包含所述提取出的PCE ID和路徑密鑰的路徑計(jì)算請(qǐng)求;以及將所述路徑計(jì)算請(qǐng)求發(fā)送到由所述PCE ID標(biāo)識(shí)的PCE。
全文摘要
一種技術(shù)根據(jù)有狀態(tài)(“半狀態(tài)”)路徑計(jì)算元件(PCE)模型取回計(jì)算出的穿過計(jì)算機(jī)網(wǎng)絡(luò)的一個(gè)或多個(gè)域的路徑段。該有狀態(tài)PCE模型包括被配置用于存儲(chǔ)響應(yīng)于路徑計(jì)算客戶端(PCC)發(fā)布的路徑計(jì)算請(qǐng)求而由PCE計(jì)算出的一個(gè)或多個(gè)路徑段的數(shù)據(jù)結(jié)構(gòu)。注意,存儲(chǔ)在數(shù)據(jù)結(jié)構(gòu)中的每個(gè)計(jì)算出的路徑段由一個(gè)相關(guān)聯(lián)的路徑密鑰值(“路徑密鑰”)標(biāo)識(shí)。數(shù)據(jù)結(jié)構(gòu)的路徑段和路徑密鑰內(nèi)容在網(wǎng)絡(luò)中的預(yù)定位置處被臨時(shí)保存(“緩存”)一段可配置的時(shí)間。
文檔編號(hào)G06F15/16GK101095311SQ200580031041
公開日2007年12月26日 申請(qǐng)日期2005年11月3日 優(yōu)先權(quán)日2004年11月5日
發(fā)明者讓·菲利普·瓦瑟爾, 理查德·布德福德 申請(qǐng)人:思科技術(shù)公司