專利名稱:用于標(biāo)簽交換數(shù)據(jù)流量的多徑轉(zhuǎn)發(fā)的技術(shù)的制作方法
用于標(biāo)簽交換數(shù)據(jù)流量的多徑轉(zhuǎn)發(fā)的技術(shù) 相關(guān)申請(qǐng)的交叉引用
本申請(qǐng)是2006年7月31日遞交的美國(guó)專利申請(qǐng)第11/496,256號(hào)的繼 續(xù)申請(qǐng)。上述申請(qǐng)的全部教導(dǎo)通過引用被結(jié)合于此。
背景技術(shù):
通信網(wǎng)絡(luò)是地理上分布的節(jié)點(diǎn)和網(wǎng)段的集合,節(jié)點(diǎn)由通信鏈路進(jìn)行互 連,網(wǎng)段用于在通信單元(終端節(jié)點(diǎn))之間傳送通信(例如,數(shù)據(jù)、語(yǔ) 音、視頻),所述通信單元例如是個(gè)人計(jì)算機(jī)、某些電話機(jī)、個(gè)人數(shù)字助 理(PDA)、視頻單元等。許多類型的通信網(wǎng)絡(luò)都可用,所述類型范圍從 局域網(wǎng)(LAN)到廣域網(wǎng)(WAN) 。 LAN通常連接位于諸如大樓或者校 園的同一普通的地理位置中的專門的私有通信鏈路上的節(jié)點(diǎn)。另一方面, WAN通常連接在諸如公共載波電話線的長(zhǎng)距離通信鏈路上的大量地理上 散布的節(jié)點(diǎn)。互聯(lián)網(wǎng)是WAN的示例,其連接遍布世界的網(wǎng)絡(luò),提供各種 網(wǎng)絡(luò)上的節(jié)點(diǎn)之間的全球通信。這些節(jié)點(diǎn)通常通過根據(jù)諸如傳輸控制協(xié)議/ 網(wǎng)際協(xié)議(TCP/IP)的預(yù)定的協(xié)議交換不連續(xù)的幀或者數(shù)據(jù)分組而在網(wǎng)絡(luò) 中進(jìn)行通信。在該上下文中,協(xié)議是定義節(jié)點(diǎn)如何相互交互的一組規(guī)則。
通信網(wǎng)絡(luò)可以包括一系列中間節(jié)點(diǎn)(例如,路由器),所述中間節(jié)點(diǎn) 被配置為攜帶通信經(jīng)過網(wǎng)絡(luò)到終端節(jié)點(diǎn)。路由器是通常被配置為在網(wǎng)絡(luò)中 的各種節(jié)點(diǎn)之間"路由"諸如分組的數(shù)據(jù)的一類中間節(jié)點(diǎn)。路由在層3 (L3)中被執(zhí)行,層3是開放系統(tǒng)互聯(lián)參考模型(OSI-RM)的網(wǎng)絡(luò)層。
路由器常常維護(hù)轉(zhuǎn)發(fā)信息庫(kù)(FIB),轉(zhuǎn)發(fā)信息庫(kù)(FIB)通常被配置 為保存路由器用來確定如何轉(zhuǎn)發(fā)數(shù)據(jù)以到達(dá)其目的地的路由信息(例如, L3地址)和接口信息。典型的FIB是被組織為包含一個(gè)以上條目的表格的 數(shù)據(jù)結(jié)構(gòu),其中每個(gè)條目包含目的地節(jié)點(diǎn)的L3目的地地址和關(guān)于可以經(jīng) 過其到達(dá)目的地節(jié)點(diǎn)的路由器上的接口的接口信息。包含與FIB中的條目的目的地地址相匹配的目的地地址的數(shù)據(jù)(例如,數(shù)據(jù)分組)被路由器轉(zhuǎn) 發(fā)到由匹配條目指定的接口 ,以在一條路徑上被轉(zhuǎn)發(fā)到目的地節(jié)點(diǎn)。
路由器可以執(zhí)行一個(gè)以上路由協(xié)議,這些路由協(xié)議使得路由器能夠路 由分組并且與網(wǎng)絡(luò)中的其它路由器交換路由信息。這些路由器常常使用該
信息去配置(例如,計(jì)算)它們的FIB。這些路由協(xié)議可以包括諸如路由 信息協(xié)議(RIP)的距離矢量協(xié)議和諸如中間系統(tǒng)對(duì)中間系統(tǒng)(IS-IS)協(xié) 議和開放最短路徑優(yōu)先(OSPF)協(xié)議的鏈路狀態(tài)協(xié)議。
路由信息通常以廣告消息的形式在路由器之間被交換。例如,執(zhí)行 IS-IS協(xié)議的節(jié)點(diǎn)使用被稱為鏈路狀態(tài)分組(LSP)的廣告消息來交換路由 信息。同樣,執(zhí)行OSPF協(xié)議的節(jié)點(diǎn)使用被稱為鏈路狀態(tài)廣告(LSA)的 廣告消息來交換路由信息。獲取廣告消息的路由器可以使用包含在廣告消 息中的信息來更新其FIB。
某些通信網(wǎng)絡(luò)采用多協(xié)議標(biāo)簽交換(MPLS)技術(shù)來將數(shù)據(jù)分組沿著 從源到目的地的路徑傳送穿越通信網(wǎng)絡(luò)。MPLS是用于在通信網(wǎng)絡(luò)中提供 對(duì)流量流(數(shù)據(jù)流)的有效指定、路由、轉(zhuǎn)發(fā)和交換的公知技術(shù)。與所述 流相關(guān)聯(lián)的數(shù)據(jù)流量經(jīng)由被稱為標(biāo)簽交換路徑(LSP)的路徑而被攜帶通 過網(wǎng)絡(luò)。LSP是通信網(wǎng)絡(luò)中由在沿著從源到目的地的路徑的每個(gè)節(jié)點(diǎn)處的 標(biāo)簽序列定義的路徑??梢栽跀?shù)據(jù)傳輸之前或者在檢測(cè)到某一數(shù)據(jù)流時(shí)建 立LSP。在2001年1月的請(qǐng)求注解(Request for Comments, RFC) 3031 的互聯(lián)網(wǎng)工程任務(wù)組(Intern改Engineering Task Force, IETF)第1-61頁(yè)中 E.Rosen等人的"Multiprotocol Label Switching Architecture (多協(xié)議標(biāo)簽交 換結(jié)構(gòu)體系)"中描述了MPLS。
支持MPLS的網(wǎng)絡(luò)通常稱為MPLS網(wǎng)絡(luò)。在MPLS網(wǎng)絡(luò)中,MPLS分 組通常由被稱為標(biāo)簽交換路由器(LSR)和標(biāo)簽邊緣路由器(LSR)的專 門的路由器處理。LSR和LSR兩者都參與LSP的建立和基于所建立的 LSP的數(shù)據(jù)流量的高速交換。LER是在MPLS網(wǎng)絡(luò)邊緣進(jìn)行操作并且提供 到網(wǎng)絡(luò)的接入的路由器。LSR通常是包括MPLS網(wǎng)絡(luò)的核心并且沿著LER 之間的路徑交換MPLS分組的高速路由器。
MPLS使用確定流量如何沿著LSP被交換(轉(zhuǎn)發(fā))的標(biāo)簽。所述標(biāo)簽
6通常駐留在MPLS分組的層2 (L2)和L3頭之間。標(biāo)簽通常包括標(biāo)簽字 段、實(shí)驗(yàn)字段、"S"字段和生存時(shí)間(TTL)字段。標(biāo)簽字段保存該標(biāo)簽 的值。實(shí)驗(yàn)字段持有為實(shí)驗(yàn)使用而預(yù)留的值。在一些MPLS實(shí)現(xiàn)中,該字 段持有代表與該標(biāo)簽相關(guān)聯(lián)的服務(wù)類別(CoS)的值。"S"字段持有這樣 的值,該值指示該標(biāo)簽是否在包含在MPLS分組中的標(biāo)簽的棧(以下將進(jìn) 一步描述)的底部。TTL字段指示與該標(biāo)簽相關(guān)聯(lián)的"生存時(shí)間"值。
MPLS分組包含具有一個(gè)以上標(biāo)簽的棧,該棧有時(shí)也被稱為分組的 MPLS標(biāo)簽棧。MPLS標(biāo)簽棧包括底部標(biāo)簽,并且可選地包括一個(gè)以上附 加標(biāo)簽。用于底部標(biāo)簽的"S"比特通常被設(shè)置成為1的值,以指示該標(biāo) 簽是在該棧的底部。用于附加標(biāo)簽的"S"比特通常被設(shè)置成為0的值, 以指示這些標(biāo)簽不在該棧的底部。
MPLS分組中的每個(gè)標(biāo)簽與轉(zhuǎn)發(fā)等價(jià)類(FEC)相關(guān)聯(lián)。FEC指示在 轉(zhuǎn)發(fā)分組時(shí)如何處理分組。與同樣的FEC相關(guān)聯(lián)的分組在被轉(zhuǎn)發(fā)到它們的 目的地時(shí)一般都經(jīng)過同樣的處理。換言之,F(xiàn)EC描述可以按照同樣的方式 被轉(zhuǎn)發(fā)的一組分組;即,它們可以被綁定到同樣的MPLS標(biāo)簽。
標(biāo)簽通常只在特定的本地節(jié)點(diǎn)有意義。因此,對(duì)于特定的FEC,與 FEC相關(guān)聯(lián)的標(biāo)簽在不同的節(jié)點(diǎn)處可以不同。例如, 一個(gè)節(jié)點(diǎn)可以將標(biāo)簽 值"45"關(guān)聯(lián)到特定的FEC,而另一節(jié)點(diǎn)可以將標(biāo)簽值"52"與同一 FEC 關(guān)聯(lián)。
如上所述,LSP被配置為攜帶流量數(shù)據(jù)流。數(shù)據(jù)流是指從特定的源傳 送到特定的目的地的數(shù)據(jù)流(例如,數(shù)據(jù)分組)。包括數(shù)據(jù)流的數(shù)據(jù)分組 通常具有同樣的源和同樣的目的地地址。在MPLS中,數(shù)據(jù)流在LSP上被 逐跳傳送經(jīng)過網(wǎng)絡(luò)。在沿LSP的每個(gè)節(jié)點(diǎn)處,在MPLS分組的MPLS標(biāo)簽 棧的頂部標(biāo)簽通常被用于確定分組采用哪條路徑到沿LSP的下一跳。
在一些情況中,可能存在兩條路徑,屬于不同流的分組可以采用這兩 條路徑來達(dá)到下一跳。在此,可以采用負(fù)載均衡技術(shù)來對(duì)來自穿越這兩條 路徑的各種數(shù)據(jù)流的流量進(jìn)行"負(fù)載均衡"。 一種用于對(duì)穿越多條路徑的 MPLS流量進(jìn)行均衡的常用技術(shù)是IP等價(jià)多徑(ECMP)負(fù)載均衡技術(shù)。
IP ECMP適合于對(duì)屬于可以采用多條路徑達(dá)到其下一跳的多個(gè)流的IP型分組進(jìn)行負(fù)載均衡。負(fù)載均衡通常是通過根據(jù)包含在分組中的源和目的 地地址而選擇所述路徑之一并且在所選擇的路徑上轉(zhuǎn)發(fā)該分組來完成的。
在典型的IP ECMP實(shí)現(xiàn)中,通過散列(hash)包含在分組的IP頭中的源 地址和目的地址比特的某一組合而選擇所選擇的路徑,當(dāng)在數(shù)據(jù)鏈路層觀 察時(shí),分組的IP頭通常包含在分組的有效載荷部分中。然后,根據(jù)散列結(jié) 果選擇用于該分組的路徑。
某些IP ECMP實(shí)現(xiàn)在應(yīng)用IP ECMP技術(shù)之前嘗試檢査流量以確保其 確實(shí)是基于IP的流量。在此,分組的網(wǎng)絡(luò)層頭的第一半位元組(nibble) 通常被檢査以確定其是否包含"4"或"6"的值,"4"或"6"分別指示 該分組是IP版本4 (IPv4)型分組和IP版本6 (IPv6)型分組。如果該分 組在分組的網(wǎng)絡(luò)層頭的第一字節(jié)中包含這些值中的任一個(gè),則該分組被認(rèn) 為是IP分組并且IP ECMP技術(shù)被應(yīng)用來確定到它下一跳的分組路徑。
如附圖中所示,從以下對(duì)本發(fā)明優(yōu)選實(shí)施例的更具體的說明,本發(fā)明 的以上和其它目的、特征和優(yōu)點(diǎn)將顯而易見,在附圖中,不同視圖中的同 樣的標(biāo)號(hào)是指相同部件。圖不一定成比例,重點(diǎn)在于說明本發(fā)明的原理。圖l是可以與本發(fā)明一起使用的示例性通信網(wǎng)絡(luò)的框圖2是可以與本發(fā)明一起使用的中間節(jié)點(diǎn)的框圖3是可以與本發(fā)明一起使用的監(jiān)控器引擎(supervisor engine)的框
圖4是可以與本發(fā)明一起使用的示例性多協(xié)議標(biāo)簽交換(MPLS)數(shù) 據(jù)分組的框圖5是可以與本發(fā)明一起使用的標(biāo)簽轉(zhuǎn)發(fā)信息庫(kù)(LFIB)的框圖; 圖6是根據(jù)本發(fā)明的一個(gè)方面的可以用于處理MPLS分組的步驟序列 的流程圖。
具體實(shí)施例方式
以下是本發(fā)明優(yōu)選實(shí)施例的說明。應(yīng)當(dāng)注意,在此所述的本發(fā)明的說明性實(shí)施例被描述為使用多協(xié)議標(biāo)
簽交換(MPLS)結(jié)構(gòu)體系來轉(zhuǎn)發(fā)數(shù)據(jù)流量。在2001年1月的請(qǐng)求注解 (RFC) 3031第1-61頁(yè)的E.Rosen等人的"Multiprotocol Label Switching Architecture (多協(xié)議標(biāo)簽交換結(jié)構(gòu)體系)"中描述了可以與本發(fā)明一起使 用的MPLS結(jié)構(gòu)體系版本,其可以從互聯(lián)網(wǎng)工程任務(wù)組(IETF)獲得,并 且通過引用結(jié)合于此,如同在此做了全面闡述。在1998年4月的RFC 2328第1-244頁(yè)的J.Moy的"OSPF Version 2 (OSPF版本2)"中描述了 在此引用的等價(jià)多徑(Equal Cost Multiple Path, ECMP)技術(shù)版本,其可 以從IETF獲得,并且通過應(yīng)用結(jié)合于此,如同在此做了全面闡述。應(yīng)當(dāng) 注意,其它數(shù)據(jù)流量轉(zhuǎn)發(fā)體系結(jié)構(gòu)、負(fù)載均衡技術(shù)和標(biāo)簽交換協(xié)議可以適 于利用本發(fā)明。
上述用于MPLS流量負(fù)載均衡的網(wǎng)際協(xié)議(IP) ECMP方法的一個(gè)問 題是雖然其可以將IP型流量處理好,但不可以將某些非IP流量處理得 很好。例如,非IP數(shù)據(jù)分組在其被解析為假定的網(wǎng)絡(luò)層頭的第一半位元組 的位置處的有效載荷中碰巧具有"4"或"6"的值時(shí),這樣的非IP數(shù)據(jù)分 組可能使得IP ECMP被應(yīng)用于選擇用于這些分組的路徑。這進(jìn)而可能使得 相關(guān)的分組在不同路徑上被轉(zhuǎn)發(fā)到目的地。在不同路徑上轉(zhuǎn)發(fā)相關(guān)分組可 能使得這些分組"順序錯(cuò)誤"地或者過不穩(wěn)定地到達(dá)它們的目的地,這可 能使得應(yīng)用失敗。
本發(fā)明通過以下方式克服了這些缺點(diǎn)提供一種與跨越多個(gè)路徑的通 信網(wǎng)絡(luò)中的對(duì)標(biāo)簽交換流量進(jìn)行負(fù)載均衡相關(guān)的技術(shù),以使得與特定的標(biāo) 簽交換路徑(label-switched path, LSP)相關(guān)聯(lián)的流量在單個(gè)路徑上被轉(zhuǎn) 發(fā)通過網(wǎng)絡(luò)。根據(jù)本技術(shù)的一個(gè)方面,定義了新的轉(zhuǎn)發(fā)等價(jià)類(FEC), 其使得ECMP被應(yīng)用于分組而不考慮這些分組是否包含IP頭。ECMP被 根據(jù)與包含在這些分組中的標(biāo)簽相關(guān)聯(lián)的FEC而應(yīng)用于這些分組。這些標(biāo) 簽被用于從多個(gè)ECMP技術(shù)中選擇用于識(shí)別用于這些分組的接口的ECMP 技術(shù)。在此,可以通過與用于選擇ECMP技術(shù)的一個(gè)以上標(biāo)簽相關(guān)聯(lián)的 FEC的語(yǔ)義來建立ECMP技術(shù)。
所選擇的ECMP技術(shù)可以被配置為從數(shù)據(jù)分組的有效載荷部分之外的
9部分中包含的信息來識(shí)別用于該數(shù)據(jù)分組的輸出接口。例如,分組中的
MPLS標(biāo)簽棧中的MPLS標(biāo)簽可以被散列以產(chǎn)生哈希值。然后,該哈希值 可以被用來從多個(gè)接口中識(shí)別(選擇)分組將在其上被轉(zhuǎn)發(fā)的接口。
圖1是可以與本發(fā)明一起使用的示例性通信網(wǎng)絡(luò)100的框圖。網(wǎng)絡(luò) 100包括耦合以形成節(jié)點(diǎn)互聯(lián)網(wǎng)絡(luò)的幀中繼裝置130、邊緣節(jié)點(diǎn)140和中 間節(jié)點(diǎn)200。這些聯(lián)網(wǎng)的節(jié)點(diǎn)通過根據(jù)預(yù)先定義的一組網(wǎng)絡(luò)協(xié)議交換數(shù)據(jù) 分組而進(jìn)行通信,所述網(wǎng)絡(luò)協(xié)議例如是MPLS協(xié)議、傳輸控制協(xié)議/網(wǎng)際協(xié) 議(TCP/IP)、幀中繼(FR)和以太網(wǎng)。
幀中繼裝置130a和130b是傳統(tǒng)的幀中繼裝置,被配置為處理幀中繼 流量。數(shù)據(jù)流量作為經(jīng)由標(biāo)簽交換路徑(LSP)而穿越網(wǎng)絡(luò)100的一串 MPLS分組而從一個(gè)幀中繼裝置130經(jīng)過網(wǎng)絡(luò)100流到另一個(gè)幀中繼裝置 130。
中間節(jié)點(diǎn)200a至200d和邊緣節(jié)點(diǎn)140a、 140b配置為形成MPLS網(wǎng) 絡(luò)。具體而言,邊緣節(jié)點(diǎn)140a和140b是傳統(tǒng)的邊緣節(jié)點(diǎn)(例如,路由 器),被配置為實(shí)現(xiàn)MPLS標(biāo)簽交換邊緣路由器(LER)。同樣地,中間 節(jié)點(diǎn)200a至200d是傳統(tǒng)的中間節(jié)點(diǎn)(例如,路由器),被配置為實(shí)現(xiàn) MPLS標(biāo)簽交換路由器(LSR)。此外,如以下將要描述的,中間節(jié)點(diǎn) 200a至200d被配置為根據(jù)在此所述的技術(shù)的多個(gè)方面進(jìn)行標(biāo)簽交換流量 負(fù)載均衡。
在網(wǎng)絡(luò)100中,每個(gè)LSP包括一串標(biāo)簽并且被綁定到特定的轉(zhuǎn)發(fā)等價(jià) 類(FEC)。因此,每個(gè)與LSP關(guān)聯(lián)的標(biāo)簽被綁定到LSP的FEC。此外, 在網(wǎng)絡(luò)100中,標(biāo)簽、LSP和FEC信息由用戶說明性地定義,并且被使用 諸如公知的標(biāo)簽分布協(xié)議(LDP)的分布協(xié)議而分布在LER和LSR之 間。在2001年1月的RFC 3036第1-132頁(yè)的L.Aanersson等人的"LDP Specification (LDP規(guī)范)"中描述了可以與本發(fā)明一起使用的LDP版 本,其可以從IETF獲得,并且通過應(yīng)用全部結(jié)合于此,如同在此做了全 面闡述。
圖2是可以和本發(fā)明一起使用的中間節(jié)點(diǎn)200的高級(jí)框圖。中間節(jié)點(diǎn) 200包括由背板220互連的一個(gè)以上線卡(line card) 210和監(jiān)控器引擎卡300。節(jié)點(diǎn)200被配置為執(zhí)行各種傳統(tǒng)的層2 (L2)和層3 (L3)交換和路 由功能。在此使用的L2和L3分別是指開放系統(tǒng)互聯(lián)參考模型(OSI-RM)的數(shù)據(jù)鏈路層和網(wǎng)絡(luò)層。節(jié)點(diǎn)200還可以被配置為支持各種協(xié)議組 合,所述協(xié)議例如包括開放最短路徑優(yōu)先(OSPF)、中間系統(tǒng)對(duì)中間系統(tǒng) (IS-IS) , TCP/IP、以太網(wǎng)、異步傳輸模式(ATM)和FR??梢院捅景l(fā) 明一起使用的合適的中間節(jié)點(diǎn)包括可從加利福尼亞州的圣何塞(San Jose)的思科系統(tǒng)公司獲得的思科7600系列路由器。
背板220包括諸如被配置為互連各種卡并且允許數(shù)據(jù)和信號(hào)在這些卡 之間進(jìn)行傳輸?shù)目偩€的互連。線卡210將中間節(jié)點(diǎn)200與網(wǎng)絡(luò)100進(jìn)行連 接(接合)并且允許數(shù)據(jù)分組使用諸如ATM、以太網(wǎng)和FR的各種協(xié)議而 經(jīng)由物理端口 205在中間節(jié)點(diǎn)200和網(wǎng)絡(luò)IOO之間進(jìn)行傳輸。在這端,線 卡210包括合并信號(hào)的、電子的和機(jī)械的特性的傳統(tǒng)的接口電路和交換電 路,需要用它們來接合網(wǎng)絡(luò)IOO的物理介質(zhì)和運(yùn)行在該介質(zhì)上的協(xié)議。
線卡210還包含一個(gè)以上網(wǎng)絡(luò)接口 (未示出),它們是與一個(gè)以上物 理端口 205關(guān)聯(lián)的說明性邏輯實(shí)體。通過特定端口 205從網(wǎng)絡(luò)100接收到 的分組與該端口的網(wǎng)絡(luò)接口相關(guān)聯(lián)并且由中間節(jié)點(diǎn)200進(jìn)行處理,如同它 們是由網(wǎng)絡(luò)接口接收到的一樣。同樣,去往網(wǎng)絡(luò)100的分組與用于將這些 分組"路由"到(與該網(wǎng)絡(luò)接口相關(guān)聯(lián)的)特定的物理端口 205以傳送到 網(wǎng)絡(luò)100的網(wǎng)絡(luò)接口相關(guān)聯(lián)。應(yīng)當(dāng)注意,在本發(fā)明的其它實(shí)施例中,網(wǎng)絡(luò) 接口是被配置為將分組傳送到網(wǎng)絡(luò)的物理實(shí)體。
根據(jù)本發(fā)明的各個(gè)方面,監(jiān)控器引擎300包括被配置為這樣的邏輯, 其管理節(jié)點(diǎn)200、執(zhí)行諸如MPLS的各種協(xié)議并且執(zhí)行包括處理MPLS分 組的其它功能。圖3是可以與本發(fā)明一起使用的監(jiān)控器引擎300的高級(jí)框 圖。
監(jiān)控器引擎300包括接口邏輯360、分組緩沖器350、系統(tǒng)控制器 330、處理器320和存儲(chǔ)器340。接口邏輯360將監(jiān)控器引擎300與背板 220進(jìn)行接合,并且使得數(shù)據(jù)能夠在背板220和監(jiān)控器引擎300之間進(jìn)行 傳送。分組緩沖器350是這樣的存儲(chǔ)器,其包括能夠存儲(chǔ)由接口邏輯360 獲取并且由處理器320處理的數(shù)據(jù)分組(例如,MPLS分組)的高速隨機(jī)存取存儲(chǔ)器(RAM)裝置。系統(tǒng)控制器330耦合到處理器320、存儲(chǔ)器 340和分組緩沖器350,并且包括被配置為使得處理器320能夠訪問(例 如,讀,寫)存儲(chǔ)器340和分組緩沖器350中所包含的存儲(chǔ)位置的電路。 處理器320包括這樣的處理邏輯,該處理邏輯被配置為實(shí)現(xiàn)執(zhí)行計(jì)算機(jī)可 執(zhí)行指令并且操縱存儲(chǔ)器340中所包含的數(shù)據(jù)的傳統(tǒng)的中央處理單元 (CPU)。
存儲(chǔ)器340是包括諸如動(dòng)態(tài)RAM (DRAM裝置)的隨機(jī)存取存儲(chǔ)器 (RAM)裝置的計(jì)算機(jī)可讀介質(zhì)。存儲(chǔ)器340包含由處理器320使用的計(jì) 算機(jī)可讀指令和數(shù)據(jù)結(jié)構(gòu),這些計(jì)算機(jī)可讀指令和數(shù)據(jù)結(jié)構(gòu)包括實(shí)現(xiàn)本發(fā) 明的各個(gè)方面的計(jì)算機(jī)可執(zhí)行指令和數(shù)據(jù)結(jié)構(gòu)。具體而言,存儲(chǔ)器340包 括操作系統(tǒng)342、路由服務(wù)344、流量工程服務(wù)346和標(biāo)簽轉(zhuǎn)發(fā)信息庫(kù) (LFIB) 500。
操作系統(tǒng)342是傳統(tǒng)的操作系統(tǒng),其包括被配置為支持處理器320中 的進(jìn)程(例如,路由服務(wù)344,流量工程服務(wù)346)的執(zhí)行的計(jì)算機(jī)可讀 指令和數(shù)據(jù)結(jié)構(gòu)。具體而言,操作系統(tǒng)342被配置為執(zhí)行各種傳統(tǒng)的操作 系統(tǒng)功能,例如,使得進(jìn)程能夠被安排以便在處理器320上執(zhí)行和提供對(duì) 諸如存儲(chǔ)器340的各種資源的控制訪問。路由服務(wù)344是包括實(shí)現(xiàn)諸如 OSPF和IS-IS的各種路由協(xié)議的計(jì)算機(jī)可執(zhí)行指令和數(shù)據(jù)結(jié)構(gòu)的軟件進(jìn) 程。這些功能可以被配置為管理FIB (未示出),F(xiàn)IB例如包括用于對(duì)由 監(jiān)控器引擎300處理的分組做出各種轉(zhuǎn)發(fā)決策的數(shù)據(jù)。根據(jù)本發(fā)明的各個(gè) 方面,流量工程服務(wù)346是包括這樣的計(jì)算機(jī)可執(zhí)行指令和數(shù)據(jù)結(jié)構(gòu)的軟 件進(jìn)程,這些計(jì)算機(jī)可執(zhí)行指令和數(shù)據(jù)結(jié)構(gòu)被配置為實(shí)現(xiàn)MPLS結(jié)構(gòu)體系 的各個(gè)方面和為由節(jié)點(diǎn)200處理的MPLS分組確定路徑。
應(yīng)當(dāng)注意,可以全部或者部分使用硬件和/或軟件的某一組合來實(shí)現(xiàn)由 中間節(jié)點(diǎn)200執(zhí)行的功能,所述功能包括實(shí)現(xiàn)本發(fā)明的各個(gè)方面的功能。 還應(yīng)當(dāng)注意,實(shí)現(xiàn)本發(fā)明各個(gè)方面的計(jì)算機(jī)可執(zhí)行指令和/或計(jì)算機(jī)數(shù)據(jù)可 以存儲(chǔ)在其它計(jì)算機(jī)可讀介質(zhì)中,所述其它計(jì)算機(jī)可讀介質(zhì)例如是易失性 存儲(chǔ)器、非易失性存儲(chǔ)器、閃存、可移除盤、不可移除盤等。此外,應(yīng)當(dāng) 注意,諸如無線信號(hào)、在電線上攜帶的電信號(hào)、在光纖上攜帶的光信號(hào)等
12的各種電磁信號(hào)可以被編碼為例如在通信網(wǎng)絡(luò)中攜帶實(shí)現(xiàn)本發(fā)明的各個(gè)方 面的計(jì)算機(jī)可執(zhí)行指令和/或計(jì)算機(jī)數(shù)據(jù)。
圖4是可以和本發(fā)明一起使用的示例性MPLS數(shù)據(jù)分組400的框圖。 分組400包括具有數(shù)據(jù)鏈路層頭410的非有效載荷部分、包括一個(gè)以上 MPLS標(biāo)簽實(shí)體420的MPLS棧440和具有MPLS有效載荷字段430的有 效載荷部分。數(shù)據(jù)鏈路層頭410持有數(shù)據(jù)鏈路頭(例如,以太網(wǎng)分組的 頭)。有效載荷字段430持有與分組相關(guān)聯(lián)的有效載荷數(shù)據(jù)。該有效載荷 數(shù)據(jù)可以包括網(wǎng)絡(luò)層頭(例如,IP頭)。
每個(gè)MPLS標(biāo)簽條目420還包括標(biāo)簽字段422、實(shí)驗(yàn)(EXP)字段 424、"棧底"指示符("S")字段426和生存時(shí)間(TTL)字段428。 標(biāo)簽字段422持有代表MPLS標(biāo)簽的值,MPLS標(biāo)簽用于沿著通信網(wǎng)絡(luò) 100中的路徑(LSP)交換分組。EXP字段424持有實(shí)驗(yàn)信息。該字段可 以被配置為持有代表與標(biāo)簽422相關(guān)聯(lián)的服務(wù)類別(CoS)的值。"S"字 段持有指示條目420是否位于MPLS棧440的底部的值。說明性地,該字 段中值為1指示條目420在MPLS棧440的底部并且值為0指示條目420 不在棧440的底部。TTL字段428持有代表與MPLS標(biāo)簽條目420相關(guān)聯(lián) 的存活時(shí)間的值。
MPLS棧440被組織為具有底部標(biāo)簽420,并且可選地具有一個(gè)以上 附加標(biāo)簽條目420。在分組400中,底部標(biāo)簽條目420緊在有效載荷字段 430之前。如果有附加標(biāo)簽條目420的話,附加標(biāo)簽條目420位于底部標(biāo) 簽條目420和數(shù)據(jù)鏈路層頭410之間。在棧440的最頂部處的標(biāo)簽420被 認(rèn)為是桟440的頂部的標(biāo)簽420。
LFIB 500是這樣的數(shù)據(jù)結(jié)構(gòu),所述數(shù)據(jù)結(jié)構(gòu)包含說明性地被用于識(shí)別 用于由中間節(jié)點(diǎn)200處理的MPLS分組400的接口的信息。圖5是可以和 本發(fā)明一起使用的LFIB 500的框圖。LFIB 500說明性地被組織為這樣的 表格,所述表格包括一個(gè)以上條目510,其中,每個(gè)條目510包括輸入標(biāo) 簽字段515、 ECMP選擇字段525和輸出接口列表指針字段545。每個(gè)條目 510被"綁定到"特定的FEC。
輸入標(biāo)簽字段515持有代表包含在分組的標(biāo)簽棧440的MPLS標(biāo)簽條目420中的標(biāo)簽422的值。如以下將要進(jìn)一步描述的,輸入標(biāo)簽字段515 的內(nèi)容用于將條目510與由中間節(jié)點(diǎn)200處理的分組400進(jìn)行關(guān)聯(lián)。 ECMP選擇字段525持有指定要被用于選擇用于分組400的輸出網(wǎng)絡(luò)接口 的ECMP技術(shù)的值。ECMP技術(shù)可以是可被用于選擇用于網(wǎng)絡(luò)100中所處 理的分組的輸出網(wǎng)絡(luò)接口的多種ECMP技術(shù)中的一種。并且,可以根據(jù)標(biāo) 簽棧中包含的一個(gè)以上標(biāo)簽的值來從多種技術(shù)中選擇ECMP技術(shù)。每種技 術(shù)可以通過與用于選擇ECMP技術(shù)的一個(gè)以上標(biāo)簽相關(guān)聯(lián)的一個(gè)以上FEC 的語(yǔ)義而建立。說明性地,根據(jù)輸入標(biāo)簽515的值來選擇選擇字段525中 所代表的ECMP技術(shù),并且根據(jù)與輸入標(biāo)簽515中所包含的標(biāo)簽相關(guān)聯(lián)的 FEC的語(yǔ)義來建立該ECMP技術(shù)。輸出接口列表指針545持有指向輸出接 口列表550的值。
每個(gè)輸出接口列表550是這樣的數(shù)據(jù)結(jié)構(gòu),其說明性地被組織為配置 成持有一個(gè)以上條目570的表格。每個(gè)條目570包含輸出標(biāo)簽字段575和 輸出接口字段580。輸出標(biāo)簽575持有代表被置于輸出分組的標(biāo)簽棧440 中的標(biāo)簽422的值,以將分組400捆綁到被綁定到與分組400相關(guān)聯(lián)的條 目510的FEC。輸出接口字段580持有代表可以用來將分組400傳送到通 信網(wǎng)絡(luò)IOO中的下一跳的網(wǎng)絡(luò)接口的值。
可操作地,在線卡210處經(jīng)由端口 205通過中間節(jié)點(diǎn)200接收到的 MPLS數(shù)據(jù)分組400與該端口的網(wǎng)絡(luò)接口相關(guān)聯(lián)。分組400被傳送到監(jiān)控 器引擎300,監(jiān)控器引擎300通過在LFIB 500中查找與該數(shù)據(jù)分組相關(guān)聯(lián) 的條目510并從與條目510相關(guān)聯(lián)的信息中選擇輸出標(biāo)簽和輸出接口來識(shí) 別用于分組400的輸出標(biāo)簽和輸出接口,等等。
說明性地,分組的標(biāo)簽棧400的最頂部的標(biāo)簽條目420中的標(biāo)簽422 被與LFIB 500中的條目510的輸入標(biāo)簽515進(jìn)行比較,以定位其輸入標(biāo)簽 515與該分組的標(biāo)簽422匹配的條目510。與匹配條目570相關(guān)聯(lián)的輸出接 口列表550被檢測(cè),以確定其是否包含不止一個(gè)條目570。如果列表550 只包含一個(gè)條目570,則選擇該條目570用于分組400。否則,如果列表 550包含多個(gè)條目570,則匹配條目510的ECMP選擇字段525被檢測(cè), 以確定如何生成用于在接口列表550中選擇用于分組400的條目570的哈希值。
如果ECMP選擇字段525指示(例如,如在RFC 2328中所述的)傳 統(tǒng)的IP ECMP技術(shù)被用于生成哈希值,則根據(jù)傳統(tǒng)的IP ECMP技術(shù)生成 哈希值(例如,從分組400的有效載荷部分430中包含的源地址和目的地 址生成哈希值)。如果ECMP選擇字段525指示應(yīng)用IP ECMP技術(shù)之外 的ECMP技術(shù)來生成哈希值,則包含在該數(shù)據(jù)分組的非有效載荷部分中的 信息(例如,分組的標(biāo)簽棧440中的一個(gè)以上標(biāo)簽)被用于生成哈希值。
說明性地,分組的棧440中包含的MPLS標(biāo)簽條目420的標(biāo)簽422 (例如,桟的底部處的標(biāo)簽條目420中的標(biāo)簽422)被散列以生成哈希 值。所產(chǎn)生的哈希值作為用于輸入接口列表550的索引被用于選擇用于分 組400的條目570。
然后,所選擇的條目570的輸出標(biāo)簽575和輸出網(wǎng)絡(luò)接口 580被用作 用于分組400的所識(shí)別的輸出標(biāo)簽和所識(shí)別的輸出網(wǎng)絡(luò)接口。通常,分組 的標(biāo)簽棧440的最頂部標(biāo)簽422由所識(shí)別的輸出標(biāo)簽575替換,并且分組 400被轉(zhuǎn)發(fā)到所識(shí)別的輸出接口 580中代表的網(wǎng)絡(luò)接口以將分組轉(zhuǎn)發(fā)到通 信網(wǎng)絡(luò)IOO中它的下一跳。與網(wǎng)絡(luò)接口關(guān)聯(lián)的端口 205將分組400傳送到 網(wǎng)絡(luò)100。
圖6是根據(jù)本發(fā)明一個(gè)方面的用于處理MPLS分組400的步驟序列的 流程圖。序列從步驟605開始并且進(jìn)行到步驟610,在步驟610,接收來 自網(wǎng)絡(luò)的MPLS分組400。接著,在步驟620,如上所述,中間節(jié)點(diǎn)200 識(shí)別用于分組400的輸出標(biāo)簽。在步驟630,如上所述,所識(shí)別的輸出標(biāo) 簽被置于分組的標(biāo)簽棧440的頂部。在步驟640,如上所述,識(shí)別用于分 組400的輸出網(wǎng)絡(luò)接口。在步驟650,分組經(jīng)由所識(shí)別的到網(wǎng)絡(luò)100中它 的下一跳的網(wǎng)絡(luò)接口而被轉(zhuǎn)發(fā)到網(wǎng)絡(luò)100。序列在步驟695結(jié)束。
例如,參考圖1和6,假定非IP數(shù)據(jù)分組要在從邊緣節(jié)點(diǎn)140a延伸 到邊緣節(jié)點(diǎn)140b的LSP上從幀中繼裝置130a被發(fā)送到幀中繼裝置130b。 還假定,LSP與FEC相關(guān)聯(lián),該FEC使得在LSP上傳送的MPLS分組 400根據(jù)本發(fā)明的各個(gè)方面被轉(zhuǎn)發(fā)。
幀中繼裝置130a將分組轉(zhuǎn)發(fā)到網(wǎng)絡(luò)100并且該分組由邊緣節(jié)點(diǎn)140a接收。邊緣節(jié)點(diǎn)140a將該分組封裝為MPLS分組400并且將該分組在LSP 上轉(zhuǎn)發(fā)到節(jié)點(diǎn)140b。具體而言,邊緣節(jié)點(diǎn)140a將MPLS標(biāo)簽條目420置 于分組的棧440中,分組的棧440包含以傳統(tǒng)的方式與LSP的FEC相關(guān)聯(lián) 的標(biāo)簽422。然后,邊緣節(jié)點(diǎn)140將分組400轉(zhuǎn)發(fā)給中間節(jié)點(diǎn)200a。
中間節(jié)點(diǎn)200a在端口 205處接收來自網(wǎng)絡(luò)100的MPLS分組400 (步 驟610)。該分組與端口的網(wǎng)絡(luò)接口相關(guān)聯(lián)并且經(jīng)由背板220被轉(zhuǎn)發(fā)到監(jiān) 控器引擎300。接口邏輯360接收分組400并且將它置于分組緩沖器350 中。如上所述,處理器320經(jīng)由系統(tǒng)控制器330訪問該分組并且識(shí)別用于 該分組的輸出標(biāo)簽(步驟620)。然后,如上所述,處理器320將所識(shí)別 的輸出標(biāo)簽置于分組的標(biāo)簽桟440中(步驟630),并且識(shí)別要使用包含 在分組的標(biāo)簽棧440中的標(biāo)簽422而將該分組傳送到網(wǎng)絡(luò)的輸出網(wǎng)絡(luò)接口
(步驟640)。標(biāo)簽査找提供與該分組相關(guān)聯(lián)的FEC類型的語(yǔ)義。這進(jìn)而 影響對(duì)分組的ECMP處置。
注意,該分組可能在將分組轉(zhuǎn)發(fā)到中間節(jié)點(diǎn)200b的網(wǎng)絡(luò)接口上或者 在將分組轉(zhuǎn)發(fā)到中間節(jié)點(diǎn)200c的網(wǎng)絡(luò)接口上被轉(zhuǎn)發(fā)。如上所述,中間節(jié)點(diǎn) 200a說明性地通過以下方式選擇接口以將分組400攜帶到它的下一跳
(即,節(jié)點(diǎn)200b或節(jié)點(diǎn)200c):散列包含在分組的標(biāo)簽棧440中的標(biāo)簽 422以生成哈希值,并且使用該哈希值在到節(jié)點(diǎn)200b的接口和到節(jié)點(diǎn)200c 的接口之間進(jìn)行選擇。
假定選擇了到節(jié)點(diǎn)200b的網(wǎng)絡(luò)接口。然后,分組400被轉(zhuǎn)發(fā)到所選 擇的網(wǎng)絡(luò)接口,所選擇的網(wǎng)絡(luò)接口經(jīng)由端口 205將分組400轉(zhuǎn)發(fā)到節(jié)點(diǎn) 200b (步驟650)。具體而言,處理器320指導(dǎo)接口邏輯360將分組400 經(jīng)由背板220轉(zhuǎn)發(fā)到與該網(wǎng)絡(luò)接口相關(guān)聯(lián)的線卡210。線卡210使用與該 網(wǎng)絡(luò)接口相關(guān)聯(lián)的端口 205將分組400置于網(wǎng)絡(luò)100中。
分組400被傳送到接收分組400、如上所述處理該分組并且將該分組 轉(zhuǎn)發(fā)給節(jié)點(diǎn)200d的節(jié)點(diǎn)200b。 200d接收分組400并且如上所述處理該分 組并且將其轉(zhuǎn)發(fā)到節(jié)點(diǎn)140b。節(jié)點(diǎn)140b接收分組400并且將該分組轉(zhuǎn)發(fā) 給幀中繼裝置130b。因此,裝置130b最終接收該分組并對(duì)其進(jìn)行處理。 應(yīng)當(dāng)注意,上述說明將MPLS分組描述為正在由監(jiān)控器引擎300進(jìn)行處理。這并不意欲是對(duì)本發(fā)明的限制。在本發(fā)明的其它實(shí)施例中,上述處
理發(fā)生在線卡210上或者在網(wǎng)絡(luò)接口 210和監(jiān)控器引擎的某種組合中。在 此,線卡210可以包含LFIB 500和被配置為根據(jù)本發(fā)明的各個(gè)方面處理標(biāo) 簽交換分組的處理邏輯。例如,如上所述,本處理邏輯可以被配置為識(shí)別 用于標(biāo)簽交換分組的輸出接口 (例如,端口 205)和輸出標(biāo)簽。此外,如 上所述,該處理邏輯可以被配置為將所識(shí)別的輸出標(biāo)簽置于標(biāo)簽交換分組 中并且將該分組轉(zhuǎn)發(fā)到所識(shí)別的輸出接口 。
盡管已經(jīng)參考本發(fā)明的優(yōu)選實(shí)施例具體示出和描述了本發(fā)明,但是, 本技術(shù)領(lǐng)域技術(shù)人員將理解,在不脫離所附權(quán)利要求所包括的本發(fā)明的范 圍的情況下可以在形式和細(xì)節(jié)上做出各種更改。
權(quán)利要求
1.一種用于在通信網(wǎng)絡(luò)中轉(zhuǎn)發(fā)數(shù)據(jù)分組的方法,所述方法包括接收包含標(biāo)簽棧的數(shù)據(jù)分組,所述標(biāo)簽棧具有一個(gè)以上用于在所述通信網(wǎng)絡(luò)中的路徑上交換所述數(shù)據(jù)分組的標(biāo)簽;根據(jù)包含在所述標(biāo)簽棧中的一個(gè)以上標(biāo)簽的值來從多種等價(jià)多徑(ECMP)技術(shù)中選擇一種ECMP技術(shù);使用所選擇的ECMP技術(shù)來識(shí)別接口;以及在所識(shí)別的接口上轉(zhuǎn)發(fā)所述數(shù)據(jù)分組。
2. 根據(jù)權(quán)利要求1所述的方法,其中,所選擇的ECMP技術(shù)從所述數(shù) 據(jù)分組中除有效載荷部分之外的部分中所包含的信息來識(shí)別所述接口。
3. 根據(jù)權(quán)利要求2所述的方法,還包括散列包含在所述標(biāo)簽棧中的一個(gè)以上標(biāo)簽以產(chǎn)生哈希值;和使用該哈希值來識(shí)別所述接口 。
4. 根據(jù)權(quán)利要求3所述的方法,其中,用于產(chǎn)生所述哈希值的包含在 所述標(biāo)簽棧中的標(biāo)簽是處于所述標(biāo)簽棧的底部的標(biāo)簽。
5. 根據(jù)權(quán)利要求3所述的方法,還包括 使用所述哈希值來識(shí)別用于所述數(shù)據(jù)分組的輸出標(biāo)簽;和將所述輸出標(biāo)簽置于所述標(biāo)簽棧中。
6. 根據(jù)權(quán)利要求3所述的方法,還包括在標(biāo)簽轉(zhuǎn)發(fā)信息庫(kù)(LFIB)中査找與所述數(shù)據(jù)分組相關(guān)聯(lián)的條目,所 述標(biāo)簽轉(zhuǎn)發(fā)信息庫(kù)具有一個(gè)以上條目,其中每個(gè)條目與多個(gè)接口相關(guān)聯(lián);和使用所述哈希值從與所述條目相關(guān)聯(lián)的多個(gè)接口中識(shí)別所述接口。
7. 根據(jù)權(quán)利要求1所述的方法,其中,所選擇的ECMP技術(shù)是通過與 用于選擇所述ECMP技術(shù)的一個(gè)以上標(biāo)簽相關(guān)聯(lián)的一個(gè)以上轉(zhuǎn)發(fā)等價(jià)類(FEC)的語(yǔ)義而建立的。
8. 根據(jù)權(quán)利要求7所述的方法,其中,所選擇的ECMP技術(shù)從所述數(shù) 據(jù)分組中除有效載荷部分之外的部分中所包含的信息來識(shí)別所述接口。
9. 根據(jù)權(quán)利要求1所述的方法,其中,所述數(shù)據(jù)分組是多協(xié)議標(biāo)簽交 換(MPLS)數(shù)據(jù)分組,并且所述標(biāo)簽是MPLS標(biāo)簽。
10. —種通信網(wǎng)絡(luò)中的中間節(jié)點(diǎn),包括網(wǎng)絡(luò)接口,被配置為接收包含標(biāo)簽棧的數(shù)據(jù)分組,所述標(biāo)簽棧具有一 個(gè)以上用于在通信網(wǎng)絡(luò)中的路徑上交換數(shù)據(jù)分組的標(biāo)簽;和 處理邏輯,被配置為(a) 根據(jù)包含在所述標(biāo)簽棧中的一個(gè)以上標(biāo)簽的值來從多種等 價(jià)多徑(ECMP)技術(shù)中選擇一種ECMP技術(shù);(b) 使用所選擇的ECMP技術(shù)來識(shí)別接口;以及(c) 在所識(shí)別的接口上轉(zhuǎn)發(fā)所述數(shù)據(jù)分組。
11. 根據(jù)權(quán)利要求10所述的中間節(jié)點(diǎn),其中,所述所選擇的ECMP技 術(shù)從所述數(shù)據(jù)分組中除有效載荷部分之外的部分中所包含的信息來識(shí)別所 述接口。
12. 根據(jù)權(quán)利要求ll所述的中間節(jié)點(diǎn),其中,所述處理邏輯還被配置為(a) 散列包含在所述標(biāo)簽棧中的一個(gè)以上標(biāo)簽以產(chǎn)生哈希值;和(b) 使用該哈希值來識(shí)別用于所述數(shù)據(jù)分組的所述接口。
13. 根據(jù)權(quán)利要求12所述的中間節(jié)點(diǎn),其中,用于產(chǎn)生所述哈希值的 包含在所述標(biāo)簽棧中的標(biāo)簽是處于所述標(biāo)簽桟的底部的標(biāo)簽。
14. 根據(jù)權(quán)利要求12所述的中間節(jié)點(diǎn),其中,所述處理邏輯還被配置為(a) 使用所述哈希值來識(shí)別用于所述數(shù)據(jù)分組的輸出標(biāo)簽;和(b) 將所述輸出標(biāo)簽置于所述標(biāo)簽棧中。
15. 根據(jù)權(quán)利要求12所述的中間節(jié)點(diǎn),還包括標(biāo)簽轉(zhuǎn)發(fā)信息庫(kù),所述標(biāo)簽轉(zhuǎn)發(fā)信息庫(kù)具有一個(gè)以上條目,其中每個(gè)條目與多個(gè)接口相關(guān)聯(lián);并且其中,所述處理邏輯還被配置為(a) 在與所述數(shù)據(jù)分組相關(guān)聯(lián)的LFIB中查找條目,和(b) 使用所述哈希值來從與所述條目相關(guān)聯(lián)的多個(gè)接口中識(shí)別所述接口。
16. 根據(jù)權(quán)利要求10所述的中間節(jié)點(diǎn),其中,所選擇的ECMP技術(shù)是 通過與用于選擇所述ECMP技術(shù)的一個(gè)以上標(biāo)簽相關(guān)聯(lián)的一個(gè)以上轉(zhuǎn)發(fā)等 價(jià)類(FEC)的語(yǔ)義而建立的。
17. 根據(jù)權(quán)利要求16所述的中間節(jié)點(diǎn),其中,所選擇的ECMP技術(shù)從所述數(shù)據(jù)分組的除有效載荷部分之外的部分中所包含的信息來識(shí)別所述接 □。
18. —種通信網(wǎng)絡(luò)中的設(shè)備,包括用于接收包含標(biāo)簽棧的數(shù)據(jù)分組的裝置,所述標(biāo)簽棧具有一個(gè)以上用于在通信網(wǎng)絡(luò)中的路徑上交換數(shù)據(jù)分組的標(biāo)簽;用于根據(jù)包含在所述標(biāo)簽棧中的一個(gè)以上標(biāo)簽的值來從多種等價(jià)多徑 (ECMP)技術(shù)中選擇一種ECMP技術(shù)的裝置;用于使用所選擇的ECMP技術(shù)來識(shí)別接口的裝置;以及 用于在所識(shí)別的接口上轉(zhuǎn)發(fā)所述數(shù)據(jù)分組的裝置。
19. 根據(jù)權(quán)利要求18所述的裝置,其中,所選擇的ECMP技術(shù)從所述 數(shù)據(jù)分組的除有效載荷部分之外的部分中所包含的信息來識(shí)別所述接口。
20. 根據(jù)權(quán)利要求19所述的裝置,還包括用于散列包含在所述標(biāo)簽棧中的一個(gè)以上標(biāo)簽以產(chǎn)生哈希值的裝置;和用于使用該哈希值來識(shí)別所述接口的裝置。
21. 根據(jù)權(quán)利要求20所述的裝置,還包括用于在標(biāo)簽轉(zhuǎn)發(fā)信息庫(kù)(LFIB)中査找與所述數(shù)據(jù)分組相關(guān)聯(lián)的條目 的裝置,所述標(biāo)簽轉(zhuǎn)發(fā)信息庫(kù)具有一個(gè)以上條目,其中每個(gè)條目與多個(gè)接 口相關(guān)聯(lián);和用于使用所述哈希值從與所述條目相關(guān)聯(lián)的多個(gè)接口中識(shí)別所述接口 的裝置。
全文摘要
一種用于在跨越多個(gè)路徑的通信網(wǎng)絡(luò)中對(duì)標(biāo)簽交換數(shù)據(jù)流量進(jìn)行多徑轉(zhuǎn)發(fā)以使得與特定標(biāo)簽交換路徑(LSP)相關(guān)聯(lián)的流量在網(wǎng)絡(luò)中的相同路徑上被轉(zhuǎn)發(fā)的技術(shù)。與分組相關(guān)聯(lián)的輸入標(biāo)簽用于選擇等價(jià)多徑(ECMP)技術(shù)。該等價(jià)多徑(ECMP)技術(shù)用于從多個(gè)接口中識(shí)別分組可以在其上被轉(zhuǎn)發(fā)的接口。與該分組相關(guān)聯(lián)的輸入標(biāo)簽用于識(shí)別用于該分組的輸出標(biāo)簽和分組可以在其上被轉(zhuǎn)發(fā)的多個(gè)接口。該分組的標(biāo)簽棧中的標(biāo)簽被散列以產(chǎn)生哈希值。然后,該哈希值被用來從多個(gè)接口中識(shí)別分組在其上被轉(zhuǎn)發(fā)的接口。輸出標(biāo)簽被置于分組中,并且該分組在所識(shí)別的接口上被轉(zhuǎn)發(fā)。
文檔編號(hào)H04L12/28GK101496348SQ200780028014
公開日2009年7月29日 申請(qǐng)日期2007年7月27日 優(yōu)先權(quán)日2006年7月31日
發(fā)明者喬治·斯沃洛 申請(qǐng)人:思科技術(shù)公司