国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代的技術的制作方法

      文檔序號:7677806閱讀:178來源:國知局
      專利名稱:用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代的技術的制作方法
      技術領域
      本發(fā)明涉及計算機網絡,更具體而言,涉及用于高效確定計算機網絡
      中可接受的基于鏈路的無環(huán)路替代(loop free alternate, LFA)的技術。
      背景技術
      計算機網絡是由通信鏈路和網段互連的地理上分布的節(jié)點的集合,通 信鏈路和網段用于在諸如個人計算機和工作站之類的末端節(jié)點之間傳輸數(shù) 據。許多類型的網絡是可用的,其類型范圍從局域網(LAN)到廣域網
      (WAN) 。 LAN —般通過位于同一總的物理位置(例如建筑物或校園) 中的專用私有通信鏈路連接節(jié)點。另一方面,WAN—般通過長距離通信 鏈路連接地理上分散的節(jié)點,所述長距離通信鏈路例如是公共載波電話 線、光路徑、同步光網絡(SONET)或同步數(shù)字體系(SDH)鏈路。因特 網是連接全世界的不同網絡的WAN的一個示例,其提供了各種網絡上的 節(jié)點之間的全球通信。節(jié)點一般通過根據預定義協(xié)議交換離散幀或數(shù)據分 組來經由網絡通信,所述預定義協(xié)議例如是傳輸控制協(xié)議/因特網協(xié)議
      (TCP/IP)。在這種上下文中,協(xié)議由定義節(jié)點彼此之間如何交互的一組 規(guī)則構成。計算機網絡還可以由諸如路由器之類的中間網絡節(jié)點互連,以 擴展每個網絡的有效"大小"。
      由于互連的計算機網絡的管理可能證明是繁重的,因此較小的計算機 網絡的群組可以作為路由域或自治系統(tǒng)被維護。自治系統(tǒng)(AS)內的網絡 一般通過傳統(tǒng)的被配置為執(zhí)行域內路由協(xié)議的"域內"路由器耦合在一 起,并且一般受制于一個共同的權力機構。為了提高路由可縮放性,服務 提供商(例如ISP)可以將AS劃分為多個"區(qū)域"或"級別"。然而, 可能希望增大能夠交換數(shù)據的節(jié)點的數(shù)目;在這種情況下,執(zhí)行域間路由 協(xié)議的域間路由器被用于互連各種AS的節(jié)點。而且,可能希望互連工作在不同管理域下的各種AS。這里所用的AS、區(qū)域或級別通常被稱為
      "域",并且互連不同域的路由器通常被稱為"邊界路由器"。
      特別地,服務提供商經常被配置為例如跨越域或服務提供商的網絡將 流量從一個或多個源客戶傳遞到一個或多個目的地客戶。具體而言,網絡 "邊緣"設備(例如,邊界路由器)可以接收來自外部網絡(例如,客 戶)的數(shù)據分組,該數(shù)據分組要被轉發(fā)到一般互連到不同的網絡邊緣設備 的外部網絡目的地(例如,客戶)。通常,網絡邊緣設備可以通過服務提 供商的網絡內的一個或多個網絡"核心"設備互連,以發(fā)送該"外部網絡 流量"(或"客戶流量")。這里所用的網絡邊緣設備是作為外部網絡流 量的末端點的網絡設備,即,外部網絡流量可以在網絡邊緣設備處進入或 離開提供商網絡。或者,網絡核心設備是非外部網絡流量末端點的網絡設 備,并且通常僅用于網絡邊緣設備之間的外部網絡流量的內部中轉。
      域間路由協(xié)議的一個示例是邊界網關協(xié)議版本4 (BGP),其通過在 系統(tǒng)的鄰居域間路由器之間交換路由和可達性信息來執(zhí)行域(AS)間的路 由。相鄰(adjacency)是一種在選定的鄰居(對等)路由器之間形成的關 系,其目的是交換路由信息消息并抽象網絡拓撲。由BGP對等路由器交換 的路由信息一般包括目的地地址前綴,即,由路由協(xié)議用來進行路由
      ("下一跳")判決的目的地地址的那些部分。這種目的地地址的示例包 括IP版本4 (IPv4)和版本6 (IPv6)地址。BGP通常工作在諸如TCP之 類的可靠的傳輸協(xié)議上,以建立TCP連接/會話。BGP協(xié)議是公知的,并 且在1995年3月公布的題為"^ 5oWw Gatewfl少/Votoco/ 4 的注 釋請求(RFC) 1771中有一般描述。
      域內路由協(xié)議或內部網關協(xié)議(IGP)的示例是開放最短路徑優(yōu)先
      (OSPF)路由協(xié)議和中間系統(tǒng)到中間系統(tǒng)(IS-IS)路由協(xié)議。OSPF和 IS-IS協(xié)議是基于鏈路狀態(tài)技術的,并且因此被統(tǒng)稱為鏈路狀態(tài)路由協(xié)議。 鏈路狀態(tài)協(xié)議定義了路由信息和網絡拓撲信息被在域內交換和處理的方 式。該信息通常涉及域內路由器的本地狀態(tài)(例如,路由器的可用接口和 可達鄰居或相鄰情況)。OSPF協(xié)議在1998年4月的題為"OS尸F(xiàn)Fem'o" 2"的RFC 2328中有所描述,并且用在IP上下文中的IS-IS協(xié)議在1990年12月的題為"Ose o/ OS7 /or rOV/尸aw/ Z)t/a/
      五"vz'/wzw朋to"的RFC 1195中有所描述,這兩篇RFC都通過引用結合于 此。
      中間網絡節(jié)點經常將其路由信息存儲在由路由信息庫(RIB)維護和 管理的路由表中。路由表是一種可搜索數(shù)據結構,其中網絡地址被映射到 其關聯(lián)路由信息。然而,本領域技術人員將理解,路由表不需要被組織為 表,可替換地也可以是另一類型的可搜索數(shù)據結構。盡管中間網絡節(jié)點的 路由表可以被配置具有預定的一組路由信息,但是該節(jié)點也可以在其發(fā)送 和接收數(shù)據分組時動態(tài)獲取("學習")網絡路由信息。當在中間網絡節(jié) 點處接收到分組時,分組的目的地地址可以用于標識包含與接收的分組相 關聯(lián)的路由信息的路由表條目。除此之外,分組的路由信息還指示分組的 下一跳地址。
      為了確保其路由表包含最新路由信息,中間網絡節(jié)點可以與其他中間 節(jié)點協(xié)同以散布代表當前網絡拓撲的路由信息。例如,假定中間網絡節(jié)點 檢測到其鄰居節(jié)點(即,相鄰網絡節(jié)點)之一變得不可用,例如由于鏈路 故障或鄰居節(jié)點"離線"等等。在這種情形下,中間網絡節(jié)點可以更新存 儲在其路由表中的路由信息,以確保數(shù)據分組不被路由到不可用的網絡節(jié) 點。此外,中間節(jié)點還可以將該網絡拓撲的改變傳達給其他中間網絡節(jié)點 以使得它們可以更新它們的本地路由表并繞開不可用節(jié)點。以這種方式, 每個中間網絡節(jié)點都"知道"拓撲的改變。
      一般來說,路由信息是根據預定的網絡通信協(xié)議,例如鏈路狀態(tài)協(xié)議 (例如,IS-IS或OSPF)在中間網絡節(jié)點之間散布的。傳統(tǒng)的鏈路狀態(tài)協(xié) 議使用鏈路狀態(tài)通告或鏈路狀態(tài)分組(或"IGP通告")來在互連的中間 網絡節(jié)點(IGP節(jié)點)之間交換路由信息。這里所用的IGP通告通常描述 IGP路由協(xié)議用來在互連的IGP節(jié)點(即,路由器和交換機)之間傳輸路 由信息的任何消息。在操作中,第一IGP節(jié)點可以生成IGP通告,并通過 其每個耦合到其他IGP節(jié)點的網絡接口 "洪泛"(flood)(即,發(fā)送)分 組。其后,第二IGP節(jié)點可以接收被洪泛的IGP通告,并基于包含在接收 的IGP通告中的路由信息來更新其路由表。接下來,第二IGP節(jié)點可以通過其每個網絡接口洪泛接收的IGP通告,但是接收到IGP通告的接口除 外。該洪泛過程可以重復,直到每個互連的IGP節(jié)點都已接收到IGP通告 并更新其本地路由表為止。
      在實踐中,每個IGP節(jié)點一般生成并散布這樣的IGP通告,該IGP通 告的路由信息包括中間節(jié)點的鄰居網絡節(jié)點的列表以及與每個鄰居相關聯(lián) 的一個或多個"成本"值。這里所用的與鄰居節(jié)點相關聯(lián)的成本值是用于 確定與該節(jié)點進行通信的相對難易程度的任意度量。例如,成本值可以按 照到達鄰居節(jié)點所需的跳數(shù)、分組到達鄰居節(jié)點的平均時間、稱合到鄰居 節(jié)點的網絡鏈路上的可用帶寬或網絡流量的量等等方面進行測量。
      注意,IGP通告通常被洪泛,直到每個中間網絡IGP節(jié)點已經從每個 其他互連的中間節(jié)點接收到IGP通告為止,該IGP通告可被存儲在鏈路狀 態(tài)數(shù)據庫(LSDB)中。然后,每個IGP節(jié)點(例如,在鏈路狀態(tài)協(xié)議 中)可以通過聚集所接收的鄰居節(jié)點列表和成本值來構造相同的網絡拓撲 "視圖"。為此,每個IGP節(jié)點可以將該接收到的路由信息輸入到"最短 路徑優(yōu)先"(SPF)計算中,該計算確定將中間節(jié)點與每個其他網絡節(jié)點 相耦合的最低成本網絡路徑。例如,Dijkstra算法是一種用于執(zhí)行這種SPF 計算的傳統(tǒng)技術,在1999年9月公布的Radia Perlman的課本 "/ntem "necto朋Secw^^^力'ow"的12.2.4部分中有更詳細的描述,該課 本通過引用結合于此,就好像在這里完全公開一樣。每個IPG節(jié)點基于其 SPF計算的結果更新存儲在其本地路由表中的路由信息。更具體而言, RIB更新路由表以將目的地節(jié)點與和到達這些節(jié)點的最低成本路徑相關聯(lián) 的下一跳接口相關,如SPF計算所確定的(特別地,創(chuàng)建"最短路徑樹" 或SPT,本領域技術人員將理解這一點)。
      偶爾,網絡元件(例如,節(jié)點或鏈路)會發(fā)生故障,從而導致將最初 穿過發(fā)生故障的網絡元件的流量重定向到繞開故障的其他網絡元件。通 常,該故障的通知通過新網絡拓撲的通告(例如,IGP或BGP通告)被傳 遞到網絡中的節(jié)點,并且路由表被相應更新以避免故障。利用例如純IP重 路由來響應于網絡元件故障而重配置網絡可能是費時的。然而,許多恢復 技術可用于在網絡元件故障的情況下提供快速恢復和/或網絡配置,包括"快速重路由"等等,例如IP快速重路由(IP FRR) 。 IP FRR的一個示 例在2006年3月Shand等人的"/尸7 erawte <c/ra/H'"/-Wgwg-*//r-/ramewoA-05.加>"的因特網草案和2006年2月Atlas等人的
      "5os7'c 5^eczy cariow TP FaW-丄oo/ ^ee」/temates <<^ra/ -Ze^ Wgvvg-^/AT-wec-^w-M.fcO"的因特網草案中有所描述,這兩篇因特網草 案都通過引用結合于此,就好像在這里完全公開一樣。
      IP FRR己被部署來針對網絡元件故障做出保護,其中保護方網絡節(jié)點
      (protecting network node )確定受保護網絡元件(protected network elements)的"無環(huán)路替代"(LFA)以到達特定目的地。具體而言,傳 統(tǒng)的LFA通??梢员欢x為替代的下一跳節(jié)點(即,非當前/選定的下一 跳節(jié)點),或者對到特定目的地的其他受保護網絡元件(例如,鏈路)的 替代,這種替代不會為了到達該目的地而向保護方網絡設備或受保護元件
      (例如,節(jié)點/鏈路)"環(huán)回"(返回)流量。例如,如果鄰居網絡設備己 選擇了保護方網絡設備作為到達目的地的下一跳,則從保護方網絡設備向 該鄰居網絡設備發(fā)送流量(例如,在網絡元件故障的情況下)將導致兩個 設備之間形成環(huán)路(例如,直到網絡重新收斂以去除發(fā)生故障的網絡元件 為止)。然而,通過在受保護網絡元件發(fā)生故障時采用LFA,流量可以被 轉移到LFA,以在不采用發(fā)生故障的網絡元件且不創(chuàng)建任何環(huán)路的情況下 到達目的地。
      通常,LFA可以被歸類為"基于鏈路的"LFA和"基于前綴的" LFA。傳統(tǒng)的基于鏈路的LFA技術針對共享從保護方網絡設備的相同下一 跳/接口的所有目的地地址前綴確定備份路由。換句話說,在特定鏈路發(fā)生 故障(例如,下一跳節(jié)點、接口或鏈路故障)的情況下,所有流量(無論 其目的地地址前綴如何)都可以被轉移到己被確定為不將流量返回到保護 方網絡設備的一個不同的鏈路(即,基于鏈路的LFA)?;阪溌返腖FA 相對容易管理,并且對于許多服務提供商網絡來說是具有吸引力的。然 而,基于鏈路的LFA可能在許多現(xiàn)有的網絡拓撲中是不夠的,這種拓撲經 常包括許多形成環(huán)路的機會,其中傳統(tǒng)的基于鏈路的LFA技術可能無法為 受保護鏈路定位LFA。具體而言,許多服務提供商采用它們的"核心"內的"方形"拓撲(即,服務提供商的網絡的一些部分包括網絡核心設 備),這種方形拓撲引起了比其他拓撲更少的LFA,本領域技術人員將理
      解這一點。因此,基于鏈路的LFA可能更易于實現(xiàn),但是同時可能提供有 限的保護覆蓋。
      另一方面,傳統(tǒng)的基于前綴的LFA技術可以用于針對每個目的地地址 前綴確定備份路由(即,基于"每前綴"計算LFA)。每個目的地地址前 綴隨后可具有到達目的地的主("選定"或"最優(yōu)")下一跳,以及基于 前綴的LFA。在網絡元件故障的情況下,其目的地地址前綴否則會采用發(fā) 生故障的網絡元件的流量被轉移到該目的地地址前綴的LFA。盡管基于前 綴的LFA可以提供比基于鏈路的LFA更大的保護覆蓋(基于每前綴計 算,本領域技術人員將理解這一點),但是它們可能比基于鏈路的LFA管 理和實現(xiàn)起來更復雜。具體而言,在故障的檢測期間, 一般對于轉發(fā)信息 庫(FIB)和轉發(fā)表進行實質上的改變,以便實現(xiàn)基于前綴的LFA。艮P, 在故障檢測時,基于前綴的LFA要求每個個體前綴被改變到LFA,從而 創(chuàng)建與改變的前綴數(shù)目成比例的性能成本。基于前綴的LFA可以提供更大 的保護覆蓋,但是同時這些實質上的改變可能導致不可接受的性能影響。
      因此,仍舊需要一種管理和實現(xiàn)起來相對容易的高效LFA技術。具體 而言,仍舊需要一種LFA技術,該LFA技術相比于傳統(tǒng)的基于鏈路的 LFA擴展了保護覆蓋,同時比基于前綴的LFA有更好的性能和更簡單的 實現(xiàn)方式。

      發(fā)明內容
      本發(fā)明涉及一種用于高效確定計算機網絡中可接受的基于鏈路的無環(huán) 路替代(LFA)的技術。根據該新穎技術,被配置為保護鏈路("受保護 鏈路")的保護方網絡設備將(例如,與保護方網絡設備相同域的)其他 網絡設備區(qū)分為網絡邊緣設備(即,外部網絡流量的末端點)或網絡核心 設備(即,不是外部網絡流量的末端點)。保護方網絡設備隨后可以確定 鄰居網絡設備是否將流量引導向網絡邊緣設備(即,向網絡邊緣設備環(huán) 回)。如果否(即,鄰居網絡設備僅僅向網絡核心設備環(huán)回),則保護方網絡設備可以確定該鄰居網絡設備是可接受的LFA (例如,對于外部網絡
      流量而言)。特別地,去往核心設備的流量仍可以環(huán)回,然而,該流量通 常是內部(例如,信令)流量,并且可能不受與外部流量相同的操作約束 (例如,保護)。
      根據本發(fā)明的一方面,每個網絡設備例如通過手工或動態(tài)配置確定它 是網絡邊緣設備還是網絡核心設備。例如,除非另外配置,否則網絡設備
      可以通過檢査它們的邊界網關協(xié)議(BGP)配置來動態(tài)確定它們是否是網 絡邊緣設備。具體而言,在網絡設備具有任何外部(或外在)BGP (eBGP)對等體或者發(fā)起B(yǎng)GP路由的情況下,該網絡設備是網絡邊緣設 備(即,外部網絡流量可以開始于或結束于該網絡設備處)。否則,艮P, 在網絡設備不具有任何eBGP對等體或者不發(fā)起B(yǎng)GP路由的情況下,該網 絡設備是網絡核心設備(即,外部網絡流量并不開始于或結束于該網絡設 備處)。
      根據本發(fā)明的另一方面,保護方網絡設備例如通過手工或動態(tài)配置 "學習"哪些網絡設備是網絡邊緣設備且哪些是網絡核心設備。作為示 例,網絡的每個網絡設備可以采用內部網關協(xié)議(IGP)消息來向每個其 他網絡設備通告其狀態(tài)(邊緣或核心)。例如,在IGP消息內可以采用新 穎的標志或擴展字段來傳遞網絡設備的狀態(tài)。保護方網絡設備(例如,以 及每個其他網絡設備)將接收的標識網絡邊緣設備和網絡核心設備的信息 例如存儲在鏈路狀態(tài)數(shù)據庫(LSDB)中。
      根據本發(fā)明的又一方面,為了確定可接受的LFA,保護方網絡設備針 對保護方網絡設備的受保護鏈路計算傳統(tǒng)的基于鏈路的LFA。如果保護方 網絡設備確定對于受保護鏈路沒有傳統(tǒng)的LFA可用,則保護方網絡設備計 算以鄰居網絡設備為根的最短路徑樹(SPT)。通告檢查SPT的分支,保 護方網絡設備可以確定包含受保護鏈路的特定分支是否也包含超出受保護 鏈路的任何網絡邊緣設備(即,對于外部網絡流量,該鄰居網絡設備是否 將采用受保護鏈路來到達網絡邊緣設備)。如果否(即,受保護鏈路將被 用于僅到達網絡核心設備),則保護方網絡設備可以確定對于受保護鏈路 而言鄰居網絡設備是可接受的LFA,這是因為基本上所有的外部網絡流量都被假定是去往網絡邊緣設備的。
      有利地,該新穎技術高效地確定了計算機網絡中可接受的基于鏈路的 LFA。通過區(qū)分網絡邊緣設備和網絡核心設備,該新穎技術允許了保護方
      網絡設備在傳統(tǒng)的基于鏈路的LFA技術表明不存在LFA時確定可接受的 基于鏈路的LFA。具體而言,該新穎技術定位可能僅環(huán)回到網絡核心設備 的可接受的LFA,網絡核心設備不是外部網絡流量的末端點,并且因而是 可忽略的環(huán)路的一部分。另外,本發(fā)明擴展了針對更多網絡拓撲(即,具 有環(huán)路)的傳統(tǒng)的基于鏈路的LFA技術的保護覆蓋。另外,該新穎技術的 動態(tài)方面減輕了對麻煩的手工配置的需要。


      本發(fā)明的以上和其他的優(yōu)點將通過參考下面結合附圖的描述得以更好 地理解,在附圖中相似的標號指示相同或功能類似的元件,附圖中 圖1是可以根據本發(fā)明使用的示例性計算機網絡的示意性框圖; 圖2是可以有利地用于本發(fā)明的示例性網絡設備/路由器的示意性框
      圖3是可以被路由器發(fā)送的示例性IGP通告的示意性框圖; 圖4是圖示可以有利地用于本發(fā)明的可變長度字段(TLV)的示意性 框圖5是根據本發(fā)明的圖1的計算機網絡中的網絡設備的說明性SPT的 示意性框圖6是圖示根據本發(fā)明用于區(qū)分網絡邊緣設備和網絡核心設備的過程 的流程圖;以及
      圖7是圖示根據本發(fā)明用于高效確定可接受的基于鏈路的LFA的過程 的流程圖。
      具體實施例方式
      圖1是可以有利地用于本發(fā)明的示例性計算機網絡100的示意性框 圖。網絡100包括多個互連的網絡節(jié)點/設備,例如路由器A-J。路由器可以通過如圖所示的一條或多條鏈路互連,例如通過局域網(LAN)鏈路、 無線LAN等,以形成網絡100。這里所用的連接路由器的鏈路被稱為由鏈 路互連的兩個網絡設備。例如,B可以經由鏈路A-B (或者特別地,鏈路 B-A)從A到達。作為示例,路由器A-D以"全網格"配置互連,其中路 由器A-D中的每一個經由一條鏈路連接到路由器A-D中的另一個(G-J也 是全網格配置)。另外,路由器C-F (和E-H)可以如圖所示按"方形" 或"盒狀"配置互連,本領域技術人員將理解這一點。網絡100可以被配 置為自治系統(tǒng)(域),或者配置為一個或多個區(qū)域或級別。特別地,網絡 100可以被配置為互連一個或多個外部/客戶網絡(例如,在路由器A、 B、 I和/或J處)的提供商網絡,如這里所描述的。本領域技術人員將理 解,任何數(shù)目的網絡元件(例如設備、路由器、鏈路等)可以用在計算機 網絡100中并且按多種方式互連,并且這里所示出的附圖進行了簡化。
      可以利用預定義的網絡通信協(xié)議在計算機網絡100的網絡設備之間交 換數(shù)據分組,所述預定義的網絡通信協(xié)議例如是傳輸控制協(xié)議/因特網協(xié)議 (TCP/IP)、用戶數(shù)據報協(xié)議(UDP)、異步傳輸模式(ATM)協(xié)議、幀 中繼協(xié)議、因特網分組交換(IPX)協(xié)議等等。利用預定的"內部"網關 協(xié)議(IGP)(例如傳統(tǒng)的距離向量協(xié)議或者作為示例的鏈路狀態(tài)協(xié) 議),通過使用IGP通告(例如,鏈路狀態(tài)通告或鏈路狀態(tài)分組),可以 在網絡/域100內的路由器之間分發(fā)路由信息。另外,利用"外部"網關協(xié) 議(例如邊界網關協(xié)議(BGP)),可以在整個網絡100 (例如,在啟用 的網絡邊緣設備處)和其他網絡/域(未示出)中交換包含網絡路由信息的 數(shù)據分組。
      圖2是示例性網絡設備200的示意性框圖,作為示例,網絡設備200 是可以有利地用于本發(fā)明的路由器,例如作為網絡邊緣路由器和/或網絡核 心設備。該路由器包括通過系統(tǒng)總線250互連的多個網絡接口 210、處理 器220和存儲器240。網絡接口 210包含機械的、電的和信令電路,用于 通過耦合到網絡100的物理鏈路傳輸數(shù)據。網絡接口可以被配置為利用多 種不同的通信協(xié)議來與互連的網絡節(jié)點發(fā)送和/或接收數(shù)據,這些通信協(xié)議 包括TCP/IP、 UDP、 ATM、 RSVP、同步光網絡(SONET)、無線協(xié)議、幀中繼、以太網、光纖分發(fā)數(shù)據接口 (FDDI)等等。
      存儲器240包括可由處理器220和網絡接口 210尋址的多個存儲單 元,用于存儲與本發(fā)明相關聯(lián)的軟件程序和數(shù)據結構。處理器220可包括 適合于執(zhí)行軟件程序并操作數(shù)據結構(例如鏈路狀態(tài)數(shù)據庫(LSDB) 243)的必要元件或邏輯。路由器操作系統(tǒng)242 (例如,思科系統(tǒng)公司的網 間操作系統(tǒng)或IOSTM)的一部分一般駐留在存儲器240中并由處理器執(zhí) 行,該操作系統(tǒng)在功能上通過調用支持運行在路由器上的軟件進程和/或服 務的網絡操作等等,來組織路由器。根據本發(fā)明,這些軟件進程和/或服務 可包括路由服務247、 IGP服務248、 BGP服務249和無環(huán)路替代(LFA) 進程245。本領域技術人員將清楚,其他處理器和存儲器裝置(包括各種 計算機可讀介質)可以用于存儲和執(zhí)行與這里描述的創(chuàng)造性技術有關的程 序指令。
      路由服務247包含由處理器220執(zhí)行的用于執(zhí)行由一種或多種路由協(xié) 議提供的功能的計算機可執(zhí)行指令,所述路由協(xié)議例如是作為IGP服務 248的IGP (例如,OSPF和IS-IS)、作為BGP服務249的BGP等等。這 些功能可以被配置為管理包含例如用于進行轉發(fā)判決的數(shù)據的轉發(fā)信息數(shù) 據庫(未示出)。作為示例,路由服務247可以利用一種或多種路徑計算 技術(例如最短路徑優(yōu)先等)來計算最短路徑樹(SPT),如上所述,本 領域技術人員將理解這一點。特別地,路由服務247還可以執(zhí)行與虛擬路 由協(xié)議有關的功能,例如維護VRF實例(未示出),本領域技術人員也將 理解這一點。
      BGP服務249可以在域之間的啟用BGP的設備200 (即,網絡邊緣設 備A、 B、 I和J)間的網絡可達性信息的通信期間使用,例如通過發(fā)送 并分析BGP通告??刹僮鞯兀?例如,遠程域的)遠程BGP服務可以建 立與(例如,本地域(網絡100)的)本地BGP服務的BGP會話,并向 本地BGP設備發(fā)送所生成的BGP通告。之后,本地BGP設備可以接收所 發(fā)送的BGP通告,并基于接收的BGP通告中包含的路由信息來更新其路 由表。注意,本地和遠程域之間(域間)的BGP會話是外部(或外在) BGP (eBGP)會話。本地BGP設備隨后可以將接收的BGP通告發(fā)送到本地域的其他BGP設備,直到本地域的每個互連的BGP設備都已接收到 BGP通告并更新了其本地路由表為止。還要注意,域內部(域內)的BGP 會話是內部BGP (iBGP)會話。另外,在自治系統(tǒng)內建立了新的地址前 綴或者在兩個或更多個自治系統(tǒng)之間(例如,在提供商網絡和一個或多個 客戶網絡之間)創(chuàng)建了新的連接的情況下,傳輸改變的更新后的BGP通告 可以在BGP設備之間發(fā)送,本領域技術人員將理解這一點。
      本地域(網絡100)內網絡拓撲的改變可以利用IGP服務248 (例如 傳統(tǒng)的OSPF和IS-IS鏈路狀態(tài)協(xié)議)在網絡100內的路由器200之間傳 輸。例如,假定傳輸鏈路發(fā)生故障或者與網絡節(jié)點相關聯(lián)的成本值改變。 一旦路由器之一檢測到網絡狀態(tài)的改變,該路由器就可以向網絡中的其他 路由器洪泛傳達該改變的IGP通告/消息。以這種方式,每個路由器最終 "收斂"到相同的網絡拓撲視圖。
      圖3圖示了可以由路由器200洪泛的示例性IGP通告300。作為示 例,IGP通告300被示為IS-IS鏈路狀態(tài)分組。然而,本領域技術人員將會 理解,根據本發(fā)明可以使用其他IGP通告,例如,OSPF鏈路狀態(tài)通告, 等等。通告300包括存儲標識消息的特定協(xié)議(例如,IS-IS)的值的域內 路由協(xié)議鑒別字段302和存儲指示通告的標準頭部的長度的值的長度指示 符字段304。另外,版本/協(xié)議ID擴展(ext)字段306可以用于進一步存 儲定義協(xié)議的特定版本的值。預留字段308和"R"字段被預留用于協(xié)議 的未來使用,ECO和用戶ECO字段314和316也是如此,作為示例,所 有這些字段都會被接收路由器忽略,直到用于未來版本的協(xié)議中的解碼為 止。
      類型字段310 (和相應的版本字段312)存儲指示所發(fā)送的通告300 的類型(和版本)的值,該值可以定義通告內其他類型特定字段322的存 在。例如,通告的類型可以是"Hello"分組、鏈路狀態(tài)分組等等,本領域 技術人員將理解這一點。PDU長度字段318存儲指示整個PDU (協(xié)議數(shù) 據單元,或通告300)的長度的值,該整個PDU包括頭部、類型特定字段 和數(shù)據字段。源ID字段320存儲標識生成并最初廣播通告300的路由器 的值。其他類型特定字段322可包括由協(xié)議定義的任何數(shù)目的字段,例如校
      驗和字段、最大區(qū)域地址字段等等,本領域技術人員將理解這一點。例
      如,序列號字段(未示出)可以存儲指示通告300的相對版本的序列號。 一般來說,對于通告的每一新版本,字段中存儲的序列號例如遞增1。因 此,如果通告300的序列號小于先前接收的(即,由相同通告節(jié)點生成 的)通告版本中存儲的序列號,則該通告300被認為是"陳舊的"(無效 的)。因此,路由器200可以被配置為僅存儲和轉發(fā)通告的最近版本,例 如,具有最大序列號的版本。剩余生存時間字段(未示出)也可以用于存 儲可用于確定通告300是否有效的值。剩余生存時間值一般被初始化為非 零整數(shù)值,通常以秒為單位。剩余生存時間值可以例如每一秒遞減1,直 到剩余生存時間值達到零為止,從而表明通告已變得無效。g卩,存儲或洪 泛通告300的每一路由器200持續(xù)地使分組老化,直到剩余生存時間值等 于零為止。本領域技術人員將意識到,可以替換使用其他老化機制,例如 從初始值(例如等于零)起遞增通告剩余生存時間值,直到剩余生存時間 值達到已知的上限為止。
      數(shù)據部分330包括一個或多個可變長度字段400,每個字段400具有 特定的類型(或代碼)、長度和值(TLV),這將在下面進一步描述。例 如,為了通告網絡拓撲,可以使用一對或多對鄰居節(jié)點字段(未示出)和 成本字段(未示出)。鄰居節(jié)點字段可以存儲諸如地址之類的值,該值指 示從源ID字段320中標識的中間節(jié)點可直接訪問的網絡節(jié)點。成本字段 可以存儲例如已由通告節(jié)點與在鄰居節(jié)點字段中標識的網絡節(jié)點相關聯(lián)的 值。注意,在其他實施例中,單個鄰居節(jié)點可以與多個成本值相關聯(lián)。其 他路由信息也可以被包括在IGP通告300的可變長度字段400中,例如校 驗和值、填充字段、專屬字段等,以及新穎的網絡設備狀態(tài)(邊緣/核心) 字段,這將在下面進一步描述。通常,所接收的IGP通告被存儲在路由器 200的LSDB 243中。
      具體而言,TLV編碼格式被用于標識正傳輸(傳達)的信息類型 (T)、傳達的信息長度(L)和傳達的實際信息值(V)。長度字段中包 含的長度(L)參數(shù)一般是特定于實現(xiàn)方式的,并且可以表示從對象的類型字段的開頭起直到結尾的長度。然而,長度通常表示值(V)字段的長 度,而不是類型(T)或長度(L)字段的長度。
      圖4是可以有利地用于本發(fā)明的TLV編碼格式400的示意性框圖。根 據本發(fā)明,TLV 400可以用于IGP通告300或其他協(xié)議消息中包含的可變 長度字段。TLV 400被組織為包括類型字段405和作為可變長度值的長度 字段410,類型字段405包含指示TLV 400中包含的數(shù)據類型的預定類型 值。TLV編碼格式400還可包括TLV "有效載荷"(例如,值字段415) 內承載的一個或多個無序子TLV 450,每個子TLV 450具有類型字段 455、長度字段460和值字段465。特別地,在值字段415 (和/或465)內 可以包含其他信息,例如標志字段420中的一個或多個標志。根據本發(fā) 明,TLV 400和(一個或多個)子TLV 450的字段以多種方式使用,包括 這里描述的方式。
      LFA進程245包含計算機可執(zhí)行指令,該指令可以由處理器220執(zhí)行 來執(zhí)行與傳統(tǒng)LFA技術(例如,基于鏈路的和/或基于前綴的)有關的功 能。具體而言,LFA進程245可以被配置為針對受保護網絡元件確定一個 或多個LFA,如上所述。這里所用的LFA通??梢员欢x為替代的下一 跳節(jié)點(即,非當前/選定的下一跳節(jié)點),或者對到特定目的地的其他受 保護網絡元件(例如,鏈路)的替代,這種替代不會向保護方網絡設備或 受保護元件(例如,節(jié)點/鏈路)"環(huán)回"(返回)流量。另夕卜,LFA進程 245可以被配置為執(zhí)行與這里描述的新穎LFA (擴展)技術有關的功能。
      本發(fā)明涉及一種用于高效確定計算機網絡中可接受的基于鏈路的LFA 的技術。根據該新穎技術,被配置為保護鏈路("受保護鏈路")的保護 方網絡設備將(例如,與保護方網絡設備相同域的)其他網絡設備區(qū)分為 網絡邊緣設備(即,外部網絡流量的末端點)或網絡核心設備(即,不是 外部網絡流量的末端點)。保護方網絡設備隨后可以確定鄰居網絡設備是 否將流量導向(即,環(huán)向)網絡邊緣設備。如果否(即,鄰居網絡設備僅 環(huán)向網絡核心設備),則保護方網絡設備可以確定該鄰居網絡設備是可接 受的LFA (例如,對于外部網絡流量來說)。
      根據本發(fā)明的一方面,網絡100的每個網絡設備(例如,路由器A-J)例如通過手工或動態(tài)配置來確定它是網絡邊緣設備還是網絡核心設備。 例如,除非另外配置,否則網絡設備可以通過檢查它們的BGP配置(例如
      通過BGP服務249)來動態(tài)確定它們是否是網絡邊緣設備。具體而言,網 絡邊緣設備可以被定義為作為進入和/或離開網絡100的外部網絡流量的末 端點的網絡設備,例如或者從外部源(例如,客戶)接收流量、或者向外 部目的地(例如,客戶)發(fā)送流量的網絡設備??梢园l(fā)送或接收外部流量 的網絡設備通常可被假設為具有與鄰居外部網絡設備(未示出)的一個或 多個eBGP會話。因此,在網絡設備具有任何eBGP對等體的情況下,網 絡設備可以確定它是網絡邊緣設備。例如,每個網絡設備A、 B、 I和J都 具有與外部網絡設備的eBGP會話,如圖l所示,因此,根據本發(fā)明可以 確定它是網絡邊緣設備。
      作為替換或補充,例如對于多協(xié)議標簽交換虛擬專用網(MPLS VPN),網絡設備可以在發(fā)起B(yǎng)GP路由的情況下確定它是網絡邊緣設備, 本領域技術人員將理解這一點。MPLS VPN在2006年2月公布的E. Rosen 等人的題為"5G尸/M尸丄5V尸F(xiàn)zWMa/尸n'vflte iV^worfo (T尸A^)"的RFC 4364 中有所描述,該文件通過引用結合于此,就好像在這里完全公開一樣。通 過經由BGP服務249檢査BGP配置,網絡設備可以確定從該設備是否發(fā) 起了任何BGP路由,如果是,則網絡設備可以據此推斷它是網絡邊緣設 備。
      當它不具有任何eBGP對等體或者未發(fā)起B(yǎng)GP路由時,網絡設備可以 確定它是網絡核心設備(即,外部網絡流量不在該網絡設備處開始或結 束)。具體而言,網絡核心設備通常僅用在網絡100的內部,用于將流量 (例如,外部流量)從一個網絡邊緣設備中轉到另一個,并且不發(fā)起或終 接外部網絡流量(例如,客戶流量)。作為示例,圖l中的路由器C-H是 核心路由器,因為它們中的每一個都不具有eBGP會話,也未發(fā)起任何 BGP路由。
      或者,可以執(zhí)行作為網絡邊緣設備或網絡核心設備的手工配置(例如 由系統(tǒng)管理員進行),或者可以以其他方式在網絡設備處靜態(tài)配置。例 如,某些網絡設備可以被特別配置為僅作為一種特定設備(例如,邊緣或核心)工作,并且可以像這樣被預先配置。另外,在網絡100的配置期 間,系統(tǒng)管理員可以確定哪些網絡設備是邊緣設備且哪些是核心設備,并 且可以據此手工地配置這些設備。本領域技術人員將理解用于手工配置設 備的其他原因和方法。特別地,手工配置可以優(yōu)先于動態(tài)配置,也可以不 優(yōu)先于動態(tài)配置。例如,網絡設備(例如,B)可以動態(tài)確定它具有與外
      部網絡設備的eBGP會話,并且因而它是網絡邊緣設備。然而,系統(tǒng)管理 員可以確定網絡設備B可能沒有接收到任何外部網絡流量(例如,出于其 他原因維持eBGP會話),并且因而可以被配置為"核心"設備。
      根據本發(fā)明的另一方面,保護方網絡設備(例如,C)(也可能是網 絡100的其他設備)例如通過手工或動態(tài)配置獲知哪些網絡設備是網絡邊 緣設備且哪些是網絡核心設備。同樣,手工配置可以由具備網絡拓撲知識 的系統(tǒng)管理員執(zhí)行,系統(tǒng)管理員可以利用網絡100中每個其他網絡設備的 狀態(tài)信息來靜態(tài)配置保護方網絡設備(例如,配置為邊緣設備或核心設 備)。
      作為示例,對于根據本發(fā)明的動態(tài)學習,每個網絡設備可以采用IGP 消息/通告300 (例如,在IS-IS中的路由器能力鏈路狀態(tài)分組內,或者在 在OSPF中的路由器信息鏈路狀態(tài)通告內,本領域技術人員將理解這一 點)來向每個其他網絡設備通告其狀態(tài)(邊緣或核心)。具體而言,特定 設備的狀態(tài)(尤其是該設備的新添加特性)可以被包含在IGP通告300 內,其方式例如是通過使用一個或多個新穎標志或擴展字段(TLV 400, 例如利用標志字段420)。例如,TLV的特定類型405的值字段415可包 括指定通告方網絡設備是網絡邊緣設備還是網絡核心設備的信息。作為示 例,該信息可以實現(xiàn)在標志字段420內,作為l位指示(例如,核心或邊 緣)、2位指示(例如,核心、邊緣、其他、不能確定等)等等。特別 地,本領域技術人員將理解指定信息/字段的其他實施例,并且這些實施例 在這里描述的本發(fā)明的范圍之內。
      這些IGP通告300可以在網絡100內的網絡設備之間洪泛(例如,區(qū) 域/級別范圍的洪泛),以使得每個網絡設備可以接收到網絡的每個其他網 絡設備的狀態(tài)信息。保護方網絡設備(例如,以及每個其他網絡設備)隨后可以例如在LSDB 243中存儲所接收的標識網絡的網絡邊緣設備和網絡 核心設備的信息(作為示例,在圖l中,網絡設備A、 B、 I和J被標識為 網絡邊緣設備,且網絡設備C-H被標識為網絡核心設備)。特別地,根據 本發(fā)明存儲的狀態(tài)信息可以屬于單個LSDB 243,并因而屬于單個路由區(qū) 域/級別,本領域技術人員將理解這一點。
      盡管以上描述描述了用于確定網絡設備狀態(tài)并學習其他網絡設備狀態(tài) 的手工配置(例如,系統(tǒng)管理員配置)或動態(tài)配置(例如,在沒有系統(tǒng)管 理員干預的情況下由設備自身執(zhí)行的配置),但是重要的是注意到以下這 一點,即根據本發(fā)明這兩種配置并不是互斥的。換句話說, 一個網絡設備 可以部分被配置為手工或動態(tài)配置。例如,并不是網絡100的所有網絡設 備都必須以相同方式配置。另外,盡管根據本發(fā)明的一方面一個特定網絡 設備可以被手工/動態(tài)配置,但是根據本發(fā)明的另一方面該特定網絡設備可 以不需要被手工/動態(tài)配置。另外,根據本發(fā)明,為了學習其他網絡設備的 狀態(tài), 一個網絡設備可以手工配置某些網絡設備的狀態(tài),同時動態(tài)學習其 他網絡設備的狀態(tài)。本領域技術人員將意識到其他手工和動態(tài)配置的組 合,并且這些組合據此可以用于本發(fā)明。
      根據本發(fā)明的又一方面,為了確定可接受的LFA,保護方網絡設備 (例如,網絡設備C)針對保護方網絡設備的受保護鏈路(例如,鏈路C-E)計算傳統(tǒng)的基于鏈路的LFA。示例性的傳統(tǒng)LFA技術在以上引用的 Atlas等人的題為 "5as7'c 5^eczy c加'ow々r /P FaW-7 erowte.'丄oo/ -戶ee ^tema^"的因特網草案中有所描述。簡要地說,保護方網絡設備確定除 了在受保護鏈路的另一端的受保護網絡設備之外的其鄰居網絡設備中的任 何一個(例如,鄰居網絡設備A、 B或D)是否將繞開受保護元件(例 如,鏈路C-E和/或網絡設備E)。例如,假定圖1中網絡100的每條鏈路 具有相等的成本。本領域技術人員將理解,如果朝向下游的網絡設備G的 流量將被從保護方網絡設備C重定向到鄰居網絡設備A或B,則這兩個鄰 居網絡設備將會根據它們的本地SPT將流量返回(環(huán)回)給保護方網絡設 備(例如,通過受保護元件的最短路徑是三跳)。另外,鄰居網絡設備D 可以環(huán)回也可以不環(huán)回流量(例如,從D到G的所有路徑都是三跳),因此保護方網絡設備在傳統(tǒng)上不能推斷出D不能環(huán)回流量(如圖l所示,標
      注為"C:D:C")。
      如果保護方網絡設備C確定對于受保護鏈路沒有傳統(tǒng)的LFA可用 (如上所述),則保護方網絡設備計算以(例如,非LFA)鄰居網絡設備 (例如,每個非LFA鄰居網絡設備A、 B和D)為根的SPT。作為示例, 圖5是根據本發(fā)明圖1的計算機網絡100中的鄰居網絡設備(例如,D) 的說明性SPT 500的示意性框圖。SPT 500可以利用諸如SPF計算等之類 的已知技術計算,并且可以被保護方網絡設備用來確定被鄰居網絡節(jié)點用 于到達網絡100內的各種目的地的路徑。
      通過檢查SPT 500的分支,保護方網絡設備C可以確定包含受保護鏈 路的特定分支是否也包含超出受保護鏈路以外的任何網絡邊緣設備。例 如,受保護鏈路C-E被包含在SPT分支D-C-E-G上,本領域技術人員將 理解這一點。通過將分支的網絡設備(特別地,是超出受保護鏈路的網絡 設備,因此是設備E和G)與上述學習到的狀態(tài)信息(例如,其存儲在 LSDB 243中)相比較,保護方網絡設備可以確定網絡設備中的任何一個 是否是網絡邊緣設備。如以上所確定的(從圖5中可見),網絡設備E和 G都是網絡核心設備,并且因而不是任何外部流量(例如,客戶流量)的 末端點。具體而言,網絡的網絡邊緣設備(例如,網絡邊緣設備A、 B、 I 和J)各自位于SPT的一條分支上,該分支并不包括受保護元件(例如, 鏈路C-E)。因此,保護方網絡設備C可以確定,對于外部網絡流量,鄰 居網絡設備D將不能利用受保護鏈路C-E來到達網絡邊緣設備,并且因而 不會將外部流量環(huán)回到受保護鏈路C-E。
      如果非LFA鄰居網絡設備D不采用受保護元件(鏈路C-E)來到達任 何網絡邊緣設備,則保護方網絡設備C可以確定該鄰居網絡設備對于受保 護元件(鏈路C-E)來說是可接受的LFA。具體而言,可以假定基本上穿 越網絡100的所有外部流量(客戶流量)都僅僅以網絡邊緣設備為目的 地。也就是說,在這里描述的說明性示例中,提供商網絡通常既不是外部/ 客戶流量的源,也不是其目的地,并且用作兩個或更多個客戶網絡設備之 間的中轉連接。因此,網絡100中的大多數(shù)流量都是去往網絡邊緣設備之一的外部流量。結果,基本上被重定向到可接受的LFA的所有流量都將不
      會環(huán)回到受保護元件,因為受保護元件僅僅被可接受的LFA用于非外部/ 客戶流量。例如,如果可接受LFA鄰居網絡設備D接收到來自保護方網 絡設備C的重定向流量,則基本上很有可能流量將被轉發(fā)到網絡邊緣設備 A、 B、 I或J。盡管鄰居網絡設備D可能具有到受保護元件(鏈路C-E) 的一個或多個環(huán)路,但是這些環(huán)路僅僅是去往網絡核心設備(E和G) 的。因而,受到環(huán)路影響的流量僅僅是去往網絡核心設備的流量,這種流 量最有可能不是外部流量(例如,管理流量、更新、連通性協(xié)議消息 等),本領域技術人員將理解這一點。該"內部流量"通常不受與外部流 量相同的操作約束,并且因而根據本發(fā)明不會為了確定可接受的LFA而被 認為是創(chuàng)建了 "不可接受環(huán)路"。
      可接受的LFA被保護方網絡設備C以與傳統(tǒng)LFA相同的方式使用, 如這里所描述的,本領域技術人員將理解這一點。然而,在對于保護方網 絡設備C來說沒有可用的可接受的LFA的情況下,保護方網絡設備可以 向系統(tǒng)管理員返回錯誤,或者簡單地不能保護受保護元件。特別地,盡管 作為示例以上確定可接受的LFA的技術已經被描述為保護方網絡設備內的 動態(tài)過程,但是本發(fā)明也可以被除了實際的保護方網絡設備之外的網絡設 備(例如,管理設備)所采用,或者被系統(tǒng)管理員的手工確定和配置所采 用。
      圖6是圖示根據本發(fā)明用于區(qū)分網絡邊緣設備和網絡核心設備的過程 的流程圖。過程600開始于步驟605,并且繼續(xù)到步驟610,此時網絡設 備(A-J)可以被手工或動態(tài)配置為網絡邊緣設備或網絡核心設備。如果 手工配置,則網絡設備在步驟615中被手工配置為網絡邊緣設備或網絡核 心設備,如上所述。如果在步驟610中網絡設備要被動態(tài)配置,則在步驟 620中網絡設備檢查其本地BGP配置(例如,在BGP服務249中)。在 步驟625中網絡設備具有任何eBGP對等體或者發(fā)起了任何BGP路由的情 況下,在步驟630中網絡設備確定它是網絡邊緣設備。另一方面,如果在 步驟625中網絡設備不具有任何eBGP對等體或者未發(fā)起任何BGP路由, 則在步驟635中網絡設備確定它是網絡核心設備。在步驟640,網絡設備可以手工或動態(tài)更新/存儲其他網絡設備的狀態(tài)
      (即,邊緣或核心)。如果手工配置,則網絡設備在步驟645中手工配置 網絡100中其他網絡設備的狀態(tài),并在步驟660中將其存儲在例如LSDB 243中。如果在步驟640網絡設備被配置為更新/存儲狀態(tài),則網絡設備可 以在步驟650中在網絡中通告其各自的邊緣/核心狀態(tài),這例如是通過IGP 通告300來進行的。由于在步驟655中網絡設備接收到網絡中其他網絡設 備的通告狀態(tài),因此在步驟660中這些狀態(tài)被存儲。過程600在步驟695 中結束,這時已確定并獲知了網絡設備的狀態(tài)(邊緣或核心)。特別地, 盡管以上描述提到了手工或動態(tài)配置,但是這兩種配置并不是互斥的,一 個網絡設備可以被部分配置為手工或動態(tài)配置,如上所述。
      圖7是圖示根據本發(fā)明用于高效確定可接受的基于鏈路的LFA的過程 的流程圖。過程700開始于步驟705,并且繼續(xù)到步驟710,此時保護方 網絡設備(例如,網絡設備C)針對受保護鏈路(例如,鏈路C-E)計算 傳統(tǒng)的基于鏈路的LFA。如果在步驟715中找到傳統(tǒng)的LFA,則在步驟 720中選擇LFA,并且過程在步驟795中結束。然而,如果在步驟715中 未找到傳統(tǒng)的基于鏈路的LFA,則保護方網絡設備在步驟725中計算以非 LFA鄰居網絡設備(例如,鄰居網絡設備D)為根的SPT。通過在步驟 730中檢查受保護鏈路的SPT的分支(D-C-E-G,如上所述),保護方網 絡節(jié)點可以在步驟735中確定該分支是否包含(例如,通向)超出受保護 鏈路之外的任何網絡邊緣設備,其方式例如是通過將該分支的網絡設備與 LSDB 243中存儲的狀態(tài)相比較(例如,參見圖6)。如果在步驟740沿著 受保護鏈路的分支沒有網絡邊緣設備,則在步驟745中鄰居網絡設備
      (D)被確定為可接受的LFA,如上所述。隨后在步驟720中可接受LFA 鄰居網絡設備可以被選擇為LFA,并且該過程在步驟795中結束。另一方 面,如果在步驟740中在受保護鏈路的分支上存在至少一個網絡邊緣設 備,則在步驟750中鄰居網絡設備被確定為不是可接受的LFA。如果在步 驟755中其他的非LFA鄰居網絡設備可用于保護方網絡設備,則過程700 返回到步驟725以計算以可用鄰居為根的另一 SPT。否則,LFA選擇在步 驟760中失敗,并且過程700在步驟795中結束(例如,在錯誤之后等等,如上所述)。
      有利地,該新穎技術高效地確定了計算機網絡中可接受的基于鏈路的
      LFA。通過區(qū)分網絡邊緣設備和網絡核心設備,該新穎技術允許了保護方 網絡設備在傳統(tǒng)的基于鏈路的LFA技術表明不存在LFA時確定可接受的 基于鏈路的LFA。具體而言,該新穎技術定位可能僅環(huán)回到網絡核心設備 的可接受的LFA,網絡核心設備不是外部網絡流量的末端點,并且因而是 可忽略的環(huán)路的一部分。另外,本發(fā)明擴展了針對更多網絡拓撲(即,具 有環(huán)路)的傳統(tǒng)的基于鏈路的LFA技術的保護覆蓋。另外,該新穎技術的 動態(tài)方面減輕了對麻煩的手工配置的需要。
      盡管已示出并描述了高效確定計算機網絡中可接受的基于鏈路的LFA 的說明性實施例,但是將會理解,在本發(fā)明的精神和范圍內可以進行各種 其他的適應和修改。例如,這里將本發(fā)明示出和描述為用于以方形(盒 狀)拓撲布置的網絡設備。然而,本發(fā)明在其更廣泛的意義上并不限于 此,而是實際上可以用于其他的非無環(huán)路拓撲,本領域技術人員將理解這 一點。另外,盡管以上描述描述了采用IGP通告300來傳遞網絡設備狀 態(tài),但是本領域技術人員將會理解,根據本發(fā)明也可采用其他的通信手 段,例如被設計用于發(fā)送信息的特定協(xié)議。
      另外,盡管作為示例以上描述采用了具有網絡核心和邊緣設備的提供 商網絡(本領域技術人員將理解這一點),但是本發(fā)明也可以被應用于其 他網絡配置。例如,網絡邊緣設備可以是連接到一個或多個目的地網絡設 備(例如,末端站、服務器等)的網絡設備,而網絡核心設備可以是不連 接到任何目的地網絡設備的網絡設備(例如,僅向其他路由器發(fā)送流量的 路由器)。換句話說,據此可以基于通過受保護元件環(huán)回的SPT分支是否 將被用于到達目的地網絡設備來確定可接受的LFA。
      前述描述涉及本發(fā)明的特定實施例。然而,應當清楚,可以對所描述 的實施例進行其他變化和修改,且獲得某些或全部其優(yōu)點。例如,明確地 提出本發(fā)明的教導可以實現(xiàn)為軟件(包括具有運行在計算機上的程序指令 的計算機可讀介質)、硬件、固件或其組合。另外,可以生成電磁信號來 通過例如無線數(shù)據鏈路或數(shù)據網絡(例如因特網)承載實現(xiàn)本發(fā)明的某些方面的計算機可執(zhí)行指令。因此,該描述只能被認為是示例性的,而不是 以任何方式限制本發(fā)明的范圍。因此,權利要求的目的是覆蓋在本發(fā)明的 真實精神和范圍內的所有這些變化和修改。
      權利要求
      1. 一種用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代(LFA)的網絡設備,該網絡設備包括一個或多個網絡接口;耦合到所述一個或多個網絡接口的處理器,適合于執(zhí)行軟件進程;以及適合于存儲可由所述處理器執(zhí)行的LFA進程的存儲器,該LFA進程被配置為i)將所述網絡的一個或多個其他網絡設備區(qū)分為網絡邊緣設備或網絡核心設備,ii)確定某一鄰居網絡設備是否向網絡邊緣設備環(huán)回,以及iii)如果否,則確定該鄰居網絡設備是可接受的LFA。
      2. 如權利要求1所述的網絡設備,其中所述LFA進程還被配置為通過學習來自所述一個或多個其他網絡設備的狀態(tài)來將所述網絡的一個或多個其他網絡設備區(qū)分為網絡邊緣設備或網絡核心設備(所述網絡設備的狀態(tài))。
      3. 如權利要求2所述的網絡設備,其中所述一個或多個網絡接口被配置為從所述一個或多個其他網絡設備接收一個或多個內部網關協(xié)議(IGP)通告,所述IGP通告具有所述一個或多個其他網絡設備的狀態(tài)信息。
      4. 如權利要求3所述的網絡設備,其中所述一個或多個其他網絡設備的狀態(tài)信息被包含在所述IGP通告的一個或多個標志內。
      5. 如權利要求1所述的網絡設備,其中所述LFA進程還被配置為針對保護方網絡設備的受保護鏈路計算基于鏈路的LFA;確定沒有LFA可用于所述受保護鏈路;以及作為響應,確定所述可接受的LFA。
      6. 如權利要求1所述的網絡設備,其中所述LFA進程還被配置為-確定所述鄰居網絡設備是否通過受保護鏈路環(huán)回到達任何網絡邊緣設備;以及如果否,則確定所述鄰居網絡設備是可接受的LFA。
      7. 如權利要求6所述的網絡設備,其中所述LFA進程還被配置為計算以所述鄰居網絡設備為根的最短路徑樹(SPT),所述SPT具有一個或多個分支;檢查具有所述受保護鏈路的所述SPT的分支;確定在具有所述受保護鏈路的所述SPT的分支上是否有超出所述受保護鏈路的任何網絡邊緣設備;以及如果是,則確定所述鄰居網絡設備環(huán)回到網絡邊緣設備。
      8. 如權利要求1所述的網絡設備,其中所述可接受的LFA環(huán)回到所述網絡的網絡核心設備。
      9. 如權利要求1所述的網絡設備,其中所述LFA進程還被配置為檢測所述受保護鏈路的故障;以及將來自所述受保護鏈路的流量重定向到所述可接受的LFA,其中基本上所有被重定向的流量都是去往所述網絡的網絡邊緣設備的外部網絡流
      10. —種用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代(LFA)的方法,該方法包括將所述網絡的一個或多個其他網絡設備區(qū)分為網絡邊緣設備或網絡核心設備;確定某一鄰居網絡設備是否向網絡邊緣設備環(huán)回;以及如果否,則確定該鄰居網絡設備是可接受的LFA。
      11. 一種用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代(LFA)的裝置,該裝置包括用于將所述網絡的一個或多個其他網絡設備區(qū)分為網絡邊緣設備或網絡核心設備的裝置;用于確定某一鄰居網絡設備是否向網絡邊緣設備環(huán)回的裝置;以及用于在否定結果情況下確定該鄰居網絡設備是可接受的LFA的裝置。
      12. —種用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代(LFA)的系統(tǒng),該系統(tǒng)包括適合于作為網絡邊緣設備或網絡核心設備之一工作的多個網絡設備;以及保護方網絡設備,被配置為i)在所述多個網絡設備的網絡邊緣設備和網絡核心設備之間進行區(qū)分,ii)確定所述保護方網絡設備的某一鄰居網絡設備是否向網絡邊緣設備環(huán)回,以及iii)如果否,則確定該鄰居網絡設備是可接受的LFA。
      13. 如權利要求12所述的系統(tǒng),其中所述多個網絡設備中的至少一個被配置為確定該網絡設備是網絡邊緣設備還是網絡核心設備。
      14. 如權利要求13所述的系統(tǒng),其中該至少一個網絡設備被配置為通過檢査本地邊界網關協(xié)議(BGP)配置來確定該網絡設備是網絡邊緣設備還是網絡核心設備。
      15. 如權利要求14所述的系統(tǒng),其中該至少一個網絡設備被配置為確定所述BGP配置是否指示至少一個外部BGP (eBGP)會話;以及如果是,則確定該網絡設備是網絡邊緣設備。
      16. 如權利要求14所述的系統(tǒng),其中該至少一個網絡設備被配置為確定所述BGP配置是否指示至少一個發(fā)起的BGP路由;以及如果是,則確定該網絡設備是網絡邊緣設備。
      17. 如權利要求14所述的系統(tǒng),其中該至少一個網絡設備被配置為確定所述BGP配置是否指示至少一個外部BGP (eBGP)會話或至少一個發(fā)起的BGP路由中的至少一種;如果是,則確定該網絡設備是網絡邊緣設備;以及如果否,則確定該網絡設備是網絡核心設備。
      18. —種用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代(LFA)的網絡設備,該網絡設備包括一個或多個網絡接口;耦合到所述一個或多個網絡接口的處理器,適合于執(zhí)行軟件進程;以及適合于存儲可由所述處理器執(zhí)行的無環(huán)路替代(LFA)進程的存儲器,該LFA進程被配置為i)針對所述網絡設備的受保護鏈路計算傳統(tǒng) 的基于鏈路的LFA, ii)確定沒有傳統(tǒng)的LFA可用于所述受保護鏈路, iii)作為響應,計算以某一鄰居網絡設備為根的最短路徑樹(SPT),所 述SPT具有一個或多個分支,iv)確定包含所述受保護鏈路的所述SPT的 特定分支是否包含超出所述受保護鏈路的任何網絡邊緣設備,以及v)如 果否,則確定所述鄰居網絡設備對于所述受保護鏈路來說是可接受的 LFA。
      19. 一種用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代 (LFA)的方法,該方法包括針對保護方網絡設備的受保護鏈路計算傳統(tǒng)的基于鏈路的LFA; 確定沒有傳統(tǒng)的LFA可用于所述受保護鏈路;作為響應,計算以某一鄰居網絡設備為根的最短路徑樹(SPT),所 述SPT具有一個或多個分支;確定包含所述受保護鏈路的所述SPT的特定分支是否包含超出所述受 保護鏈路的任何網絡邊緣設備;以及如果否,則確定所述鄰居網絡設備對于所述受保護鏈路來說是可接受 的LFA。
      全文摘要
      本發(fā)明公開了一種用于高效確定計算機網絡中可接受的基于鏈路的無環(huán)路替代(LFA)的技術。根據該新穎技術,被配置為保護鏈路(“受保護鏈路”)的保護方網絡設備將(例如,與保護方網絡設備相同域的)其他網絡設備區(qū)分為網絡邊緣設備(即,外部網絡流量的末端點)或網絡核心設備(即,不是外部網絡流量的末端點)。保護方網絡設備隨后可以確定鄰居網絡設備是否向網絡邊緣設備環(huán)回。如果否,則保護方網絡設備可以確定該鄰居網絡設備是可接受的LFA(例如,對于外部網絡流量而言)。特別地,去往核心設備的流量仍可以環(huán)回,然而,該流量通常是內部(例如,信令)流量,并且可能不受與外部流量相同的操作約束(例如,保護)。
      文檔編號H04L12/56GK101485160SQ200780025055
      公開日2009年7月15日 申請日期2007年7月3日 優(yōu)先權日2006年7月5日
      發(fā)明者拉斐爾·吉甘蒂諾, 斯特凡諾·B·普雷維蒂 申請人:思科技術公司
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1