應用于mpls網絡的服務實例的制作方法
【專利摘要】使用路由系統LSA在MPLS域內分布全域唯一節點標識符和全域唯一的服務標識符。MPLS網絡上的節點為每個目的地計算最短路徑樹并且基于所計算的樹來設置單播轉發狀態。節點還在通告對共用服務標識符的共同興趣的節點之間設置多播連接。不是分布與單播和多播連接結合使用的標簽,而是節點確定性地計算標簽。可以計算任何數目的標簽上下文。標簽可以是對于每個單播路徑或每個多播來說全域唯一的,或者可以是本地唯一的并且被確定性地計算以提供用于相關聯路徑的轉發上下文。多播和單播路徑可以是全等的,不過這不是要求。
【專利說明】應用于MPLS網絡的服務實例
[0001]本申請是 申請人:巖星比德科有限公司于2011年5月13日提交的同名中國專利申請200980145336.4的分案申請。
[0002]相關申請的交叉引用
本申請要求2008年11月14日提交的美國臨時專利申請序號N0.61/114,558以及2009年3月27日提交的美國實用新型專利申請序號N0.12/412,589的優先權,通過引用將它們中的每一個的內容結合于此。
【技術領域】
[0003]本發明涉及通信網絡并且更特別地涉及用于使得服務實例的概念(not1n)能夠被應用于MPLS網絡的方法和設備。
【背景技術】
[0004]數據通信網絡可以包括各種交換機、路由器、集線器以及其他被耦合并且被配置成接收數據且在網絡上轉發數據的設備。這些設備將在本文中被稱為“網絡元件”。網絡元件通常不是數據的消費者,而是被用于接收且轉發數據以使得數據可以通過網絡。通過使得網絡元件能夠通過通信鏈路在彼此之間傳遞協議數據單元(例如幀、分組、信元或段)來通過網絡傳送數據。特別的協議數據單元可以由多個網絡元件來處理并且跨越多個通信鏈路,因為其通過網絡在其源和其目的地之間行進。
[0005]通信網絡上的各種網絡元件使用優選的規則集合(在本文中被稱為協議)彼此進行通信。不同的協議被用來管理通信的不同方面,例如應如何形成用于在網絡元件之間傳輸的信號,協議數據單元的各個方面應該看起來是什么樣的,網絡元件應該如何通過網絡路由或處理協議數據單元,以及應該如何在網絡元件之間交換信息(例如路由信息)。
[0006]在以太網網絡架構中,被連接到網絡的設備競爭在任何給定時間使用共享的電信路徑的能力。在多個網橋或節點被用于互連網絡段的情況下,常常存在到相同目的地的多個潛在路徑。該架構的優點是它提供網橋之間的路徑冗余并且允許以附加鏈路的形式向網絡增加容量。然而,為了防止形成回路,生成樹通常被用來約束在網絡上廣播業務的方式。因為路由是通過廣播幀并且等待響應而獲悉的,并且因為請求和響應二者將遵循生成樹,所以大多數(如果不是全部)業務將遵循作為生成樹的一部分的鏈路。這通常導致過度利用生成樹上的鏈路以及未充分利用不是生成樹的一部分的鏈路。
[0007]為了克服以太網網絡固有的一些限制,在2006年10月2日提交的題為“ProviderLink State Bridging”的申請N0.11/537,775中公開了供應商鏈路狀態橋接網絡(鏈路狀態協議控制的以太網網絡的一個示例),通過引用將其內容結合在本文中。還在2007年
2月 5 日提交的題為 “MULTICAST IMPLEMENTAT1N IN A LINK STATE PROTOCOL CONTROLLEDETHERNET NETWORK”的美國專利申請N0.11/702, 263中進一步描述了 PLSB,通過引用將其內容結合在本文中。
[0008]PLSB使用諸如中間系統到中間系統(ISIS)之類的鏈路狀態協議來使得網絡元件能夠交換鏈路狀態路由信息。節點使用鏈路狀態路由信息來計算通過網絡的最短路徑。因為使用了最短路徑路由,所以可以從每個源節點來計算最短路徑樹以避免使用生成樹協議,以使得可以在網絡上增加鏈路利用。
[0009]MPLS網絡可以被構建在以太網網絡或其他通信網絡上。在MPLS網絡中,使用信令協議來建立通過網絡的標簽交換路徑,以使得可以跨越網絡在任何期望路徑上轉發業務。在操作中,入口節點(標簽邊緣路由器或者簡稱LER)將接收分組并且確定分組將采用哪條路徑通過網絡。LER將外部標簽應用于分組并且在標簽交換路徑(LSP)上轉發分組。LSP上的標簽交換路由器(LSR)將接收分組、移除外部標簽、使用外部標簽來確定針對分組的下一跳(hop)、將新的外部標簽應用于分組、以及在網絡上將分組轉發到下一跳。該外部標簽將因此在分組通過網絡時在每一跳處被替換,直到該分組到達其目的地為止。
[0010]MPLS通過在MPLS網絡上的節點對之間建立標簽交換路徑來在各處建立單播連接。標簽交換路徑的設立要求標簽被分布到路徑上的每個節點,以使得節點可以商定什么標簽將被用來使得分組能夠遵循通過網絡的路徑。通常被用來建立通過MPLS網絡的標簽交換路徑的一個協議通常被稱為標簽分布協議(LDP),不過還研發了其他信令協議。使用信令機制,沿著標簽交換路徑建立標簽以使得標簽交換路由器可以讀取標簽,基于該標簽確定分組的輸出,以及應用新的標簽以沿著通過網絡的路徑轉發分組。信令協議被用來沿著該路徑設置(install)標簽以及用于業務的其他適當轉發狀態。標簽交換路徑定義MPLS網絡上的單播連接,其通常被提前任意地設立。
[0011]MPLS還具有通常使用的若干不同類型的標簽。一般來說,外部標簽將被用來針對特定分組而定義轉發上下文。當分組穿過網絡時該標簽常常被逐跳地替換。一旦分組已到達了轉發上下文為隱含(implicit)的區域,該外部標簽可以被彈出分組,這通常被稱為倒數第二跳彈出(penultimate hop popping)。轉發上下文通常在離開分組的最終目的地至少一跳處被認為是隱含的,并且因此術語倒數第二已被用來指該過程。然而,外部標簽可以在沿著網絡路徑的路由變得隱含的任何點處被移除。外部標簽是節點特定的,這意味著它們具有到網絡上的特定節點的含義。外部標簽不是全局唯一的值,而是可以在網絡的不同部分被重用。
[0012]MPLS使得多個標簽能夠被堆疊到給定分組上。常常是,如上文所提到的那樣,外部標簽被用來指定分組的轉發上下文。內部標簽(偽線標簽)常常被用來使得節點能夠在出口處對來自標簽交換路徑的分組進行解復用。為了這樣做,目的地節點將為由該目的地節點處理的每個服務實例分配偽線標簽。然后,目的地還將指示網絡上的其他節點在分組進入網絡時將偽線標簽應用于所述分組,以使得出口節點可以使用內部MPLS偽線標簽來確定如何轉發分組。因此,出口節點將為其服務實例分配偽線標簽并且與入口節點協調以將那些偽線標簽應用于進入網絡的業務。像外部標簽那樣,內部偽線標簽不是網絡唯一的,而是僅對于特定出口節點唯一。內部標簽的使用使得許多不同數據流被復用以用于通過MPLS網絡上的給定LSP進行傳輸。
[0013]在操作中,LER將內部偽線標簽和外部轉發標簽二者應用于MPLS網絡入口處的分組。外部標簽將被用于通過網絡轉發分組,且內部標簽可以被目的地節點用來轉發離開MPLS網絡的分組。這使得單次查找能夠被入口 LER執行并且使得標簽交換能夠被用來通過MPLS網絡轉發分組,并且由目的地節點用來將分組轉發離開MPLS網絡例如到達客戶端網絡。
[0014]一旦已經通過建立通過網絡的LSP的全集而建立了單播連接,多播連接就可以被構建在MPLS網絡之上。不幸的是,構建多播連接需要使用不同的信令協議,這使得多播構建得更慢并且更易于出錯。例如,節點使用諸如因特網組管理協議(IGMP)之類的協議來加入和離開多播組,這使得節點添加節點并且從多播樹移除節點。當節點加入和離開多播組時,在MPLS節點上構建多播連接。將希望預訂多播的目的地節點發出加入消息并且中間節點使用所述加入消息來確定是否應該為特定多播添加轉發狀態。以這種方式來每次構建一個多播樹是耗時的并且計算上密集。因此,提供一種在MPLS網絡上實施多播的新方法是有利的。
【發明內容】
[0015]使用路由系統LSA將全域(domain-wide)唯一節點標識符以及全域唯一服務標識符分布在MPLS域內。MPLS網絡上的節點為每一個其它節點計算最短路徑樹并且基于全域唯一節點ID為每個節點設置單播轉發狀態。節點還在通告對服務標識符的共同興趣的節點之間設置多播連接。不是分布與單播和多播連接結合使用的標簽,而是節點確定性地創建標簽。所述標簽可以是每個單播路徑或每個多播全域唯一的,或者可以是本地唯一的并且被確定性地計算以為相關聯的路徑提供轉發上下文。可以使用任何數目的標簽,盡管在一個實施例中使用至少兩個標簽上下文,對于多播的每個服務一個并且對于多播的每個源一個,且對于多播的每個服務一個并且對于多播的每個目的地一個。可以使用更多標簽,只要它們被確定性地計算。
[0016]當在MPLS網絡處接收到分組時,標簽邊緣路由器將確定MPLS網絡上的分組的目的地并且將標簽應用于該分組。在標簽為全域唯一的情況下,MPLS網絡上的節點將把分組轉發到目的地,而不用在網絡上的每一跳處交換標簽。在標簽不是全域唯一的情況下,節點可以執行標簽交換以通過網絡轉發分組。多播和單播路徑可以是全等的(congruent),不過這不是要求。
【專利附圖】
【附圖說明】
[0017]利用所附權利要求的特定性來指出本發明的方面。在相似附圖標記指示類似元件的附圖中以示例的方式來說明本發明。僅為了說明而非意圖限制本發明的范圍的目的,下面的附圖公開本發明的各種實施例。為了清楚起見,不是每個部件都可以在每個圖中標記。在圖中:
圖1是說明由示例MPLS節點L通告全域唯一節點標識的示例MPLS通信網絡的功能框
圖;
圖2是圖1的示例MPLS通信網絡的功能框圖,其示出為MPLS節點中的一個建立的示例單播連接以使得MPLS網絡上的所有節點能夠向該MPLS節點轉發單播業務;
圖3是圖1的示例MPLS通信網絡的功能框圖,其示出由若干MPLS節點通告對共用服務實例的興趣;
圖4是圖1的示例MPLS通信網絡的功能框圖,其示出在已經通告了對共用服務實例的興趣的MPLS節點之間建立的示例多播連接; 圖5是被用來在MPLS網絡(例如在圖1-圖4中示出的示例MPLS網絡)上建立單播連接的過程的流程圖;
圖6是被用來在MPLS網絡(例如在圖1-圖4中示出的示例MPLS網絡)上建立多播連接的過程的流程圖;以及
圖7是可以被用來實施本發明的實施例的示例MPLS節點的功能框圖。
【具體實施方式】
[0018]圖1示出將被用來解釋本發明的實施例的實施方式的示例MPLS通信網絡。在圖1所示的實施例中,MPLS通信網絡10具有由鏈路14互連的多個節點12。MPLS網絡通常運行諸如開放最短路徑優先(OSPF)或中間系統到中間系統(IS-1S)之類的鏈路狀態路由協議。路由系統使得節點能夠發送出通告以向其他節點通知它們連接到的鏈路的狀態。這些通告將在本文中被稱為鏈路狀態通告(LSA)。一般來說,LSA將不僅識別節點而且還識別其鄰近節點。節點偵聽LSA并且使用包含在LSA中的信息來構建MPLS網絡的拓撲結構的公共視圖,其被存儲在節點的鏈路狀態數據庫(LSDB)中。然后節點可以根據需要使用鏈路狀態數據庫來計算通過MPLS網絡的路由。
[0019]在一個實施例中,節點使用LSA來傳送全域唯一節點標識值,在本文中被稱為“節點標識符”或“節點ID”。節點ID在域中是唯一的并且是確定性的。節點ID被用于源和目的地標識。在一個實施例中,節點ID是MPLS標簽,其可以被網絡上的任何其他節點用來將單播業務轉發到與該節點ID相關聯的節點。對于單播業務來說,標簽標識網絡上的目的地,并且例如可以標識目的地節點。相反,對于多播來說,標簽由源節點指定并且該標簽唯一地標識MPLS網絡上的MPLS服務實例。可以使用任何數目的標簽,盡管在一個實施例中使用至少兩個標簽上下文,對于多播的每個服務一個并且對于多播的每個源一個,且對于多播的每個服務一個并且對于多播的每個目的地一個。還可以使用更多標簽,只要它們被確定性地計算。
[0020]網絡上的節點分布被用來計算并設置轉發狀態的唯一服務實例。單播轉發狀態基于在目的地節點處終止的服務實例,而多播轉發狀態基于起源于源節點處的服務實例。針對從每個節點到預定目的地節點的單播服務實例,沿著到目的地節點的最短路徑樹設置單播轉發狀態。從源節點到通告對服務實例的共同興趣的任何其他節點設置多播轉發狀態。通過使連接基于全域唯一服務實例值,單播連接和多播連接二者可以由節點以相同的方式來建立。此外,因為可以使用路由系統來通告對服務實例的興趣,所以不需要單獨的信令協議來在MPLS網絡上建立單播或多播連接。轉發狀態也可以被確定性地計算,以避免使用用于標簽分布的標簽分布協議。因此,多播和單播連接二者可以基于服務實例而被建立,并且可以計算而不是用信號發送(signal)針對服務實例的必要轉發狀態。這允許使用路由協議并且消除對通常在MPLS網絡上使用的若干其他協議的需要。
[0021]在一個實施例中,節點ID可以被用作外部標簽以使得業務能夠被轉發到MPLS網絡上的目的地節點。在該實施例中,因為節點ID是全域唯一的,所以MPLS網絡上的節點可以設置轉發狀態以使得標記有節點ID的任何分組將沿著朝向目的地的最短路徑樹被交換。在該實施例中,當分組穿過網絡時節點交換標簽是沒有理由的;更確切地說在每一跳處可以使用相同標簽以使得不需要路徑上的節點之間的協調來使得業務能夠通過MPLS網絡被轉發。
[0022]在另一實施例中,不是使用用于到目的地的單播業務的全域唯一標簽值,而是網絡上的節點可以確定性地創建要被用來朝向網絡上的每個目的地轉發數據的標簽。如上所指出的那樣,網絡上的每個節點具有網絡拓撲結構的同步視圖,并且將為網絡上的每個節點計算最短路徑樹。作為該計算的一部分,節點可以計算什么標簽應該被用來在最短路徑樹上轉發業務。同樣地,節點可以計算當在該樹上將業務轉發到目的地時其相鄰節點將使用什么標簽。節點可以為這些標簽設置轉發狀態以使得標簽空間可以在網絡上被重用。然而,因為標簽被計算而不是被用信號發送,所以不需要節點使用LDP或另一種標簽信令協議來在網絡上建立LSP。
[0023]例如,在圖1中節點L已傳送了包含MPLS標簽的鏈路狀態通告16,所述MPLS標簽將被用作MPLS網絡上的節點L的節點ID。如在圖2中所示出的那樣,MPLS網絡上的節點將使用來自路由系統的網絡拓撲結構以確定到網絡上的每個節點的最短路徑樹18。在圖2中使用較深的線示出了最短路徑樹。當節點接收到包含節點ID的鏈路狀態通告時,MPLS網絡上的節點將使用路由系統來計算到已傳送通告的節點的最短路徑樹。網絡上的節點還將計算被用來沿著樹將業務轉發到節點的標簽,該節點將轉發狀態設置在其轉發數據庫中以使得它能夠將具有所計算的MPLS標簽的分組轉發到節點。在一個實施例中,節點ID可以是標簽,其可以被網絡上的所有節點用來向該節點轉發MPLS業務。在該實施例中將不需要節點來執行標簽交換,但是可以簡單地朝向目的地節點轉發標記有節點ID MPLS標簽的業務。這要求MPLS標簽是全域唯一的。在另一實施例中,如果不使用全域唯一的MPLS標簽,則節點可以計算要被用來轉發業務的標簽并且基于所計算的標簽來設置轉發狀態。在任一個實施例中,不需要信令來在網絡上交換標簽。
[0024]在圖1中,節點L已傳送包含節點ID=L的鏈路狀態通告。節點ID是MPLS標簽。每個節點將確定它是否在到節點L的最短路徑上,并且如果是的話,設置轉發狀態以使業務在樹上朝向節點L轉發。標簽可以是全域唯一的,并且在整個網絡范圍內都是一致的,或者節點可以計算不同標簽并且然后在朝向目的地轉發業務時對它們進行交換。
[0025]在操作中,當分組到達網絡的邊緣時,標簽邊緣路由器可以執行查找并且確定應該將分組轉發到網絡上的節點L。然后標簽邊緣路由器將用于節點L的標簽(節點L的節點ID)附著于分組并且將該分組轉發到MPLS網絡上。MPLS網絡上的每個節點具有將使得節點能夠在最短路徑樹上朝向節點L轉發分組的轉發狀態。
[0026]例如,如果節點A接收到分組20,則它將執行查找以確定如何在網絡上轉發分組。在該示例中,節點A將確定分組應該被轉發到節點L。節點A將MPLS標簽22附著于標識節點L的分組并在網絡上轉發該分組。節點E將接收到分組,讀取標簽22,并且將分組轉發到節點H。注意,在該示例中,節點E不替換標簽而是使用相同的標簽。網絡上的每個MPLS節點將執行這樣的讀取標簽22的相同過程并且然后再次應用相同的標簽以使得分組在網絡上的每一跳處使用相同的標簽。可選地,標簽22可以在最后的節點H處被彈出,或者在網絡上的轉發為隱含的別的地方以類似于倒數第二跳彈出的方式被彈出。從標簽計算的觀點來說該實施例提供了相對簡單的操作,因為每個節點使用相同的標簽來將業務轉發到目的地。本發明不限于以這種方式,因為還可以使用將使得節點能夠計算將被用來在MPLS路徑上轉發業務的其他標簽計算過程。[0027]以MPLS標簽的形式傳送全域唯一節點ID,并且然后使用路由系統來為該標簽/節點綁定設置轉發狀態,使得能夠在MPLS網絡上建立單播連接,而不需要在網絡上用信號發送單獨的標簽交換路徑。典型地,節點L將需要與網絡上的其他節點中的每一個建立單獨的標簽交換路徑。通過使用路由系統來建立單播連接,可以消除傳統的LSP信令。
[0028]還可以通過將服務實例的概念引入MPLS網絡來實施多播連接。如在本文所使用的那樣,術語“服務實例”將被用來指感興趣的多播或單播組。網絡上的節點可以使用路由系統鏈路狀態通告來通告對服務實例的興趣。與節點ID—樣,服務實例是MPLS標簽并且是全域唯一的值。服務實例上的節點使用IS-1S LSA來通告它們對服務實例的興趣。而節點ID標識目的地節點,在多播背景中,服務標識符標識多播的源。
[0029]當MPLS網絡上的節點接收到包含服務實例的LSA時,它將確定它是否在通告對服務ID的興趣的節點和與該服務實例相關聯的源節點之間的最短路徑上。在多播的源與通告對相同服務實例的共同興趣的另一節點之間的最短路徑上的任何節點將在它們的轉發數據庫中設置用于服務實例的轉發狀態。因為服務實例是MPSL標簽,所以設置用于服務實例的轉發狀態將使得節點能夠在通過MPLS網絡的最短路徑上轉發標記有服務實例標簽的任何分組。因此,可以簡單地通過使得節點通告對服務實例的興趣來創建MPLS多播連接。網絡上的MPLS節點然后可以確定性地創建用于多播樹的路徑,而不需要在網絡上單獨地用信號發送多播樹。因此,MPLS多播可以與單播同時建立并且使用相同的機制,而不需要使用LDP或其他協議來交換標簽,并且不需要使用單獨的多播組管理協議例如IGMP。
[0030]例如在圖3中,假設服務實例100將是源于節點L處的業務的多播流。節點L將通告對服務實例=100的興趣,以使得網絡上的所有節點都知道節點L是具有服務ID=10的多播的源。服務實例ID是節點L將用于在MPLS網絡上傳送多播業務的多播標簽。
[0031]在圖3所示的示例中,假設節點A和節點D將希望接收與服務實例=100相關聯的多播業務。這些節點中的每一個將傳送包含它們感興趣加入的多播的服務ID的鏈路狀態通告。因此,節點A和D將傳送包含服務ID=10的LSA。鏈路狀態通告將在MPLS網絡上被涌送(flood)。接收到鏈路狀態通告的每一個節點將檢查來看它是否在多播的源和通告通常對相同服務實例的共同興趣的葉節點之間的最短路徑上。節點E例如將確定它在節點A和節點L之間的最短路徑上并且將用于與服務實例相關聯的多播標簽的轉發狀態設置在其轉發表中。類似地,節點H將確定它在節點A和節點L之間的最短路徑上,并且它在節點D和節點L之間的最短路徑上。因此,節點H將設置轉發狀態以使從節點L接收的業務被復制并且通過兩個端口輸出,即一個端口到D和一個端口到A。在圖4中使用較粗的線來示出不例多播樹。
[0032]網絡上的每個節點將計算用于多播的服務標簽并且適當地設置用于多播的轉發狀態。多播可以使用全域唯一多播MPLS標簽,其唯一地標識MPLS網絡上的多播。在該實施例中,不需要節點來執行標簽交換,而是所有都設置用于全域唯一 MPLS標簽的轉發狀態。可替換地,節點可以計算要被用于多播的標簽并且設置用于所計算的標簽的轉發狀態。
[0033]當節點L接收到與多播相關聯的分組時,它將標簽24附著于分組以將分組標識為服務實例100的部分。可選地,節點還可以附著(使用源節點ID)標識源節點的第二標簽,并且將其用作外部標簽。一旦已經應用了(一個或多個)標簽,節點L然后就將在網絡上轉發多播分組。當節點H接收到分組時,它將讀取標簽并且執行查找以確定它應該通過哪個或哪些端口來轉發分組。節點H將確定它應該朝向節點E和節點D轉發分組,并且將復制分組且在朝向那些節點的端口上輸出分組。如果全局唯一的標簽被用于服務實例,則節點H將把與分組到達時附著于分組的標簽相同的標簽應用于分組,以使得該分組將在網絡上的每一跳處使用相同的標簽。否則,如果標簽已被確定性地計算,則節點將在在網絡上轉發分組之前將原始標簽交換成新的標簽。在轉發狀態為隱含的地方,例如在節點H和節點D之間的鏈路上,可彈出標簽。可以單獨基于服務標簽或者在使用源標簽的情況下基于服務標簽與源標簽的組合來執行轉發。
[0034]根據本發明的實施例,被用來創建多播和單播路徑的服務標簽被確定性地計算。這使得能夠創建MPLS路徑而不需要使用單獨的信令協議(B卩,能夠被用來設立并且拆除路徑的路由協議)來用信號發送路徑。在一個實施例中,MPLS多播使用用于樹的每個根的標簽空間。當它那樣做了時它使用上游定義的標簽。必須通過適合于20或更少比特的MPLS標簽空間的唯一標識符來通告源。通過可以成為外部標簽的上下文來標識標簽空間。節點可以計算每個平臺空間之中的每個源節點的外部標簽空間。每個節點計算節點標識符以使得在所有目的地上創建節點標識符。
[0035]多播操作:多播分組包括兩個標簽:外部標簽(來自在所有節點上是相同的每個平臺空間),以及內部標簽(其提供源“節點標識符”。內部標簽是全域標簽。內部標簽基于每個源的基礎并且在域中僅被設置在支持該多播樹的節點上。全域唯一內部節點基于“月艮務標識符”。
[0036]所有節點進行所有對的最短路徑計算從而創建來自每個源的樹。當節點位于兩個通告對特定服務實例的興趣的目的地之間的最短路徑上時,節點為源節點和通過該節點的每個服務標識符設置標簽空間。
[0037]轉發操作包括讀取MPLS多播上下文并且然后基于節點標識符在每個源標簽空間中查找。外部標簽可以被移除但是第二(內部)標簽確定出口端口集合。外部標簽可以被添加回去并且為每個外出的端口復制分組。
[0038]單播操作:單播分組類似地包括相同的兩個標簽。外部標簽是基于目的地“節點標識符”的全域唯一標簽。可替換地,單播路徑上的標簽可以被確定性地計算。內部標簽基于每個目的地基礎并且僅在出口上被檢驗。
[0039]所有內部和外部標簽以及/或者標簽上下文經由ISIS而被分布。所有節點進行所有對的最短路徑計算從而創建來自每個源的樹。當節點位于兩個目的地之間的最短路徑上時,如果存在共用的服務標識符則節點為目的地節點設置目的地標簽。服務標識符可以被標識為控制平面中的源或接收器(sink)并且因此可以創建單向業務。服務可以組合多個服務標識符。服務標識符可以與唯一的拓撲結構標識符相關聯。
[0040]可選地,在一個實施例中,如果所有計算都是唯一確定的,則單播路徑將與多播全等。然而,本發明不限于這種方式,因為確定通過網絡的路徑的不同過程可以被用于單播而不是用于多播。當已經使用了最短路徑樹時,這致力于確定性的所有形式的樹。因此,可以使用其他類型的確定性樹來代替最短路徑樹。此外,如果某些“節點標識符”標簽比特被用于標識為等同的樹創建標識符的不同路徑,則多路徑是可用的。
[0041]業務操縱的MPLS將使用類似于定義點到點或點到多點的標簽的多播標簽的標簽。服務標簽空間必須被分開以允許業務操縱的服務。服務標簽可以被定義為源和接收器并且還可以被定義為業務操縱的或者不是業務操縱的。關于帶寬和路徑的附加信息將必須在鏈路狀態通告中被通告以實現通過網絡建立業務操縱的路徑。
[0042]組織用于多播和單播二者的服務標識符,并且然后將邊緣處的服務映射到這些組,從開始就提供支持多播的拓撲結構,而不是事后的想法。
[0043]創建服務實例允許描述多播服務以使得只需要簡化的信令(即使用ISIS鏈路狀態通告)。將服務組的所有通告移動到鏈路狀態允許將模型從信令的當前模型移動到計算之一,從而實現沒有信令的快速收斂。MPLS當前使用標簽分布協議來創建標簽交換路徑。通過使用服務實例,有可能消除標簽分布信令以便提供類似于以太網的具有可裁減的(tailorable)多播和單播的服務模型,并且通過MPLS核心確保以太網PBB服務的適當連接。
[0044]圖5示出根據本發明的實施例在MPLS網絡上建立單播連接的過程的流程圖。如圖5所示,MPLS網絡上的節點交換鏈路狀態路由通告(100)以使得每個節點具有網絡拓撲結構的同步視圖。網絡上的每個節點被分配將被用于向該節點轉發單播業務的全域節點ID(MPLS標簽)(102)。節點使用鏈路狀態通告來通告它們的節點ID (104)并且網絡上的節點計算到每個節點的最短路徑樹(106)。節點然后將在最短路徑樹上設置轉發狀態,以使得包含目的地節點ID作為標簽的單播業務能夠在到目的地的最短路徑樹上被轉發(108)。節點ID可以在轉發標簽上使用或者節點可以確定性地計算將由樹上的上游節點使用的轉發標簽且確定性地計算應該用于朝向目的地轉發業務的轉發標簽。當在MPLS網絡的入口處接收到分組時,基于目的地的標簽將被附著于該分組(110)。該標簽將基于目的地節點ID。入口節點然后將分組轉發到MPLS網絡上并且最短路徑樹上的節點將通過MPLS網絡將分組轉發到出口節點(112)。
[0045]圖6是根據本發明的實施例在MPLS網絡上建立多播連接的過程的流程圖。如在圖6中示出的那樣,全域服務標識符被分配給要在MPLS網絡上載送的每個多播(120)。想要參與到多播中的每個節點使用鏈路狀態路由通告來通告服務標識符(122)。節點使用預先計算的最短路徑樹來確定它們是否在多播源和通告對多播的興趣的節點中的一個或多個之間的最短路徑上(124)。通告對相同服務實例的共同興趣的兩個節點之間的最短路徑上的任何節點將設置用于該服務實例的轉發狀態(126)。當要在多播樹上載送的業務到達時,入口節點將把多播服務標簽附著于每個分組并且將所述分組轉發到MPLS網絡上(128)。MPLS網絡上的節點將使用用于多播的轉發狀態來選擇性地在MPLS網絡上將多播業務從源節點轉發到對接收該業務感興趣的其他節點(130)。
[0046]圖7示出示例MPLS網絡元件的功能框圖。如在圖7中所示出的那樣,MPLS網絡元件包括路由功能70,其從其他節點接收鏈路狀態通告并且使用所述鏈路狀態通告來生成鏈路狀態數據庫72。該鏈路狀態數據庫包含關于網絡拓撲結構的信息并且被網絡元件用來計算生根于(root at)網絡的每個節點處的最短路徑樹。
[0047]根據本發明的實施例,路由功能還從鏈路狀態通告接收標簽信息并且使用該標簽信息來對轉發功能74進行編程。該標簽信息包括節點標識符(其是標識網絡上的節點的標簽)以及服務標識符(其是標識網絡上的服務實例的標簽)。
[0048]當路由功能接收到包含節點ID的鏈路狀態通告時,它將轉發狀態設置到轉發功能中以使得標記有節點ID的業務能夠被轉發到正確的輸出端口,從而業務將遵循到網絡上的目的地節點的最短路徑樹。在操作中,轉發功能將讀取標簽以為業務確定下一跳并且將業務轉發到用于連接到所確定的下一跳的適當的端口的排隊功能76。可以在傳送分組之前通過轉發功能或排隊功能來應用服務標簽。
[0049]當路由功能接收到包含服務ID的鏈路狀態通告時,它將更新其鏈路狀態數據庫以包括服務ID和發布鏈路狀態通告的節點之間的關聯。路由功能還將就也通告了對相同服務ID的興趣的其他節點而搜索其鏈路狀態數據庫。然后,每當節點在通告對相同服務實例的共同興趣的兩個節點之間的最短路徑上時,節點將用于服務實例的轉發狀態設置到轉發功能中。
[0050]在網絡元件12是標簽邊緣路由器的情況下,路由功能還可以維護額標簽數據庫78,其將被封裝功能80用來在業務到達網絡上時標記業務。當來自MPLS網絡外部的分組到達網絡元件12時,分組將被分類并且標簽將被附著。在分組是單播分組的情況下,將獲得用于單播分組的目的地標簽并且通過封裝功能來添加。在分組是多播分組的情況下,將獲得用于多播分組的基于源的多播標簽并且通過封裝功能來添加。可選地,封裝功能還可以將一個或多個內部標簽添加到分組。所封裝的分組然后將被發送到轉發功能以便從適當的端口轉發出以到達MPLS網絡上。
[0051]上面所描述的功能可以被實施為程序指令集合,其可以被存儲在計算機可讀存儲器中并且在計算機平臺上的一個或多個處理器上被執行。然而,對于本領域技術人員將是顯而易見的是,本文所描述的所有邏輯可以使用分立的部件、集成電路(例如專用集成電路(ASIC))、結合可編程邏輯器件(例如現場可編程門陣列(FPGA)或微處理器、狀態機或包括其任何組合的任何其他設備)使用的可編程邏輯來體現。可編程邏輯可以被暫時或永久地固定到可觸摸的介質(例如只讀存儲器芯片、計算機存儲器、硬盤或其他存儲介質)中。所有這樣的實施例都意圖落入本發明的范圍內。
[0052]應該理解,在附圖中示出并且在說明書中描述的實施例的各種改變和修改可以在本發明的精神和范圍內進行。因此,意圖使得包含在上文的描述中并且在附圖中示出的所有主題將以說明性而非限制的意義解釋。
【權利要求】
1.一種使得服務實例能夠被應用于MPLS網絡的方法,該方法包括以下步驟: 通過MPLS網絡中的網絡元件來交換路由通告以使得網絡元件能夠具有MPLS網絡的拓撲結構的同步視圖; 由MPLS網絡上的第一 MPLS網絡元件通告在路由通告之一中的全域唯一服務標識符;以及 由第二 MPLS網絡元件根據第二 MPLS網絡元件的MPLS網絡的拓撲結構的同步視圖、通過確定第二 MPLS網絡元件是否在生根于第一 MPLS網絡元件的最短路徑樹上而計算是否設置MPLS標簽,以設置用于服務標識符的轉發狀態。
2.根據權利要求1所述的方法,其中所述全域唯一服務標識符是全域唯一網絡元件節點標識符。
3.根據權利要求2所述的方法,其中節點標識符是全域唯一MPLS標簽。
4.根據權利要求3所述的方法,其中全域唯一MPLS標簽可以被用來向MPLS網絡上的第一網絡元件轉發單播業務。
5.根據權利要求4所述的方法,其中如果第二MPLS網絡元件設置用于服務標識符的轉發狀態,則第二MPLS網絡元件將設置用于全域唯一MPLS標簽的轉發狀態,以使由第二MPLS網絡元件接收的包含全域唯一 MPLS標簽的任何分組將被朝向第一 MPLS網絡元件轉發。
6.根據權利要求1所 述的方法,其中還包括由第二MPLS網絡元件計算要被用于轉發與服務實例相關聯的業務的至少一個MPLS標簽。
7.根據權利要求6所述的方法,其中計算所述至少一個MPLS標簽的步驟包括確定可以被用來轉發與服務實例相關聯的業務的全域唯一 MPLS標簽。
8.根據權利要求7所述的方法,其中全域唯一MPLS標簽是與MPLS網絡上的目的地節點相關聯的單播標簽。
9.根據權利要求7所述的方法,其中全域唯一MPLS標簽是與多播的源相關聯的多播標簽。
10.根據權利要求6所述的方法,其中計算至少一個MPLS標簽的步驟包括以確定性的方式計算要被用來轉發與服務實例相關聯的業務的MPLS標簽。
11.根據權利要求1所述的方法,其中由第二MPLS網絡元件根據第二 MPLS網絡元件的MPLS網絡的拓撲結構的同步視圖來計算的步驟包括確定相同的服務標識符是否已經被MPLS網絡上的第三MPLS網絡元件通告,并且如果是這樣的話,則確定第二MPLS網絡元件是否在所述第一 MPLS網絡元件和所述第三MPLS網絡元件之間的轉發路徑上。
12.根據權利要求11所述的方法,其中所述第三網絡元件是與服務標識符相關聯的多播源,并且其中第一網絡元件是與服務標識符相關聯的多播訂戶。
13.根據權利要求11所述的方法,其中轉發路徑是第一MPLS網絡元件和第三MPLS網絡元件之間的最短路徑。
14.一種使得服務實例能夠被應用于MPLS網絡的方法,該方法包括以下步驟: 由MPLS網絡上的MPLS網絡元件的子集通告對多播服務實例的興趣,所述多播服務實例是全域唯一值; 如果其它網絡元件在通告對相同多播服務實例的共同興趣的兩個網絡元件之間的最短路徑上,則由MPLS網絡上的其它網絡元件中的每一個選擇性地設置用于多播服務實例的轉發信息; 其中經由在MPLS網絡上使用的鏈路狀態路由系統來實施通告步驟。
15.根據權利要求14所述的方法,其中轉發信息是與服務實例相關聯的全域唯一標簽,以至于不需要在MPLS網絡上用信號發送標簽就使得MPLS網絡上的網絡元件能夠設置轉發信息。
16.根據權利要求14所述的方法,其中轉發信息不是全域唯一的而是由MPLS網絡上的每一個節點確定性地計算的,以至于不需要在MPLS網絡上用信號發送標簽就使得MPLS網絡上的網絡元件能夠設置轉發信息。
17.一種MPLS網絡,包括: 多個MPLS節點,被配置成運行鏈路狀態路由協議以使得每一個MPLS節點能夠構建MPLS網絡的同步視圖,所述MPLS節點被配置成經由鏈路狀態路由協議來通告對服務實例的興趣,并且在通告對特定服務實例的共同興趣的節點對之間設置轉發狀態,所述MPLS節點還被配置成計算 與轉發狀態結合使用的標簽而不是用信號發送與轉發狀態結合使用的標簽。
【文檔編號】H04L12/701GK104038417SQ201410196500
【公開日】2014年9月10日 申請日期:2009年11月5日 優先權日:2008年11月14日
【發明者】D.費迪克 申請人:巖星比德科有限公司