專利名稱:用于實施p2mp路徑計算的方法和設備的制作方法
技術領域:
本發(fā)明涉及通信網絡,尤其涉及一種用于實施點到多點(Point-to-Multipoint,P2MP)路徑計算的方法和設備。
背景技術:
路徑計算單元(Path Computation Element, PCE)是能夠基于網絡圖來計算網絡路徑或路由,并應用計算約束條件的實體、部件、應用程序或網絡節(jié)點。路徑計算客戶(PathComputation Client,PCC)是請求待由PCE執(zhí)行的路徑計算的客戶應用程序。RFC4655中描述了一種基于PCE的結構,用于多協(xié)議標簽交換(Multiprotocol Label Switching, MPLS)和通用多協(xié)議標簽交換(Generalized Multiprotocol Label Switching,GMPLS)流量工程(Traffic Engineering, TE)標簽交換路徑(Label Switched Paths, LSP)的路徑計算。當PCC和PCE不搭配時,需要PCC與PCE之間建立通信協(xié)議。路徑計算單元通信協(xié)議(Path Computation Element Communication Protocol, PCEP)是按照 RFC4657 特別為PCC與PCE之間或兩個PCE之間的通信設計的協(xié)議。PCEP具有以下能力:要求通過單個請求來對一個以上路徑進行計算(例如,對不同鏈接路徑的集合進行計算)。例如,PCC可使用PCEP來將針對一個或多個TE LSP的路徑計算請求傳輸到PCE,而且如果可發(fā)現(xiàn)滿足該請求中的約束條件集的一個或多個路徑,則PCE可回復計算路徑集合。針對點到多點(Point-to-Multipoint,P2MP)流量工程標簽交換路徑(以下稱為“草案”)的擴展了路徑計算單元通信協(xié)議(PCEP),指定了路徑計算請求(Path ComputationRequest,PCReq)消息,該消息用于PCC針對多個目的地的P2MP路徑計算請求。PCReq消息包括應用于所有目的地的約束條件。然而,草案中指定的PCReq消息無法單獨為每個目的地定義約束條件,即,無法支持每個目的地的約束條件。具體而言,PCReq消息在以下方面不具靈活性:應用每個目的地的顯式路徑,應用每個目的地的域序列,以及攜帶每個所計算的路徑的度量值。因此,在所屬領域需要提供一種用于實施可支持每個目的地的約束條件的P2MP路徑計算的方案。
發(fā)明內容
本發(fā)明實施例將要解決的問題是:實現(xiàn)在以下方面可具有靈活性的P2MP路徑計算:應用每個目的地的顯式路徑,應用每個目的地的域序列,以及攜帶每個所計算的路徑的
度量值。根據本發(fā)明的一個實施例,提供了一種用于通過PCC來請求P2MP路徑計算的方法包括:生成用于針對多個目的地請求路徑計算的PCReq消息,在所述PCReq消息包含每個目的地約束條件;以及將所述PCReq消息傳輸到PCE,以根據所述PCReq消息來執(zhí)行路徑計算。
根據本發(fā)明的另一個實施例,一種用于通過PCE來執(zhí)行P2MP路徑計算的方法包括:從PCC接收用于針對多個目的地請求路徑計算的PCReq消息;從所述PCReq消息中提取每個目的地的約束條件;根據所提取的每個目的地的約束條件來執(zhí)行所述路徑計算;以及將所述路徑計算的結果返回到所述PCC。根據本發(fā)明的另一個實施例,一種用于用于請求P2MP路徑計算的設備包括:PCReq消息生成單元,用于生成用于針對多個目的地請求路徑計算的PCReq消息,所述PCReq消息包含每個目的地的約束條件;以及,PCReq消息傳輸單元,用于將所述PCReq消息傳輸到PCE,以根據所述PCReq消息來執(zhí)行路徑計算。根據本發(fā)明的另一個實施例,一種用于執(zhí)行P2MP路徑計算的設備包括=PCReq消息接收單元,用于從PCC接收用于針對多個目的地請求路徑計算的PCReq消息;每個目的地的約束條件提取單元,用于從PCReq消息中提取每個目的地的約束條件;路徑計算執(zhí)行單元,用于根據所提取的每個目的地的約束條件來執(zhí)行路徑計算;以及,結果返回單元,用于將路徑計算的結果返回到PCC。根據本發(fā)明的另一個實施例,一種用于請求P2MP路徑計算的設備,包括存儲器和處理器。所述處理器與所述存儲器連接,所述處理器,用于生成用于針對多個目的地請求路徑計算的PCReq消息,所述PCReq消息包含每個目的地的約束條件;以及,將所述PCReq消息傳輸到PCE,以根據所述PCReq消息來執(zhí)行路徑計算。根據本發(fā)明的另一個實施例,一種用于執(zhí)行P2MP路徑計算的設備包括存儲器和處理器。所述處理器與所述存儲器連接,所述處理器用于:從PCC接收用于針對多個目的地請求路徑計算的PCReq消息;從PCReq消息中提取每個目的地的約束條件;根據所提取的每個目的地的約束條件來執(zhí)行路徑計算;以及,將路徑計算的結果返回到PCC。通過上述用于實施P2MP路徑計算的方法和設備,本發(fā)明可在P2MPPCReq消息中攜帶每個目的地的顯式路徑、每個目的地的域序列,以及,每個所計算的路徑的度量值,從而可支持每個目的地的約束條件。
圖1為根據相關技術的路徑計算過程中PCC的常規(guī)操作示意圖。圖2為根據相關技術的路徑計算過程中PCE的常規(guī)操作示意圖。圖3為END-P0NITS對象的格式示意圖。圖4為本發(fā)明的一項實施例的不同對象之間的映射關系示意圖。圖5A和圖5B為本發(fā)明的另一項實施例的不同對象之間的映射關系不意圖。圖6是本發(fā)明實施例中用于通過PCC來請求P2MP路徑計算的方法的流程圖。圖7是本發(fā)明實施例中用于通過PCE來執(zhí)行P2MP路徑計算的方法的流程圖。圖8是本發(fā)明實施例中用于請求P2MP路徑計算的設備示意圖。圖9是本發(fā)明實施例中用于執(zhí)行P2MP路徑計算的設備示意圖。
具體實施例方式為了使本發(fā)明的目標、技術解決方案以及優(yōu)點更清晰,下文將參考附圖和實施例進一步詳細地描述本發(fā)明。應理解,本文所述的具體實施例僅用于解釋本發(fā)明而非限制本發(fā)明。
圖1為根據相關技術的路徑計算過程中PCC的常規(guī)操作示意圖。步驟110,PCC與一個或多個PCE成功建立PCEP會話之后,PCC檢測可觸發(fā)對計算路徑集合的請求的路徑計算事件。步驟120,PCC從一個或多個PCE中選擇PCE。應注意,對PCE的選擇可能已經在PCEP會話建立之前發(fā)生。步驟130,PCC生成用于針對多個目的地請求路徑計算的PCReq消息。所述PCReq消息含有多種對象,這些對象為即將計算的路徑指定約束條件和屬性集合。例如,PCReq消息可請求計算TE LSP路徑,其中源IP地址=x.y.z.t、目的IP地址=x’.y’.z’.t’、帶寬=BMb it/s、建立/保持優(yōu)先級=P等。此外,通過在請求中分配請求優(yōu)先級,PCC可指定此類請求的緊迫性。每個請求由請求ID號和PCC-PCE地址對以獨特的方式識別。步驟140,PCC將PCReq消息傳輸到所選擇的PCE。步驟150,PCC從PCE接收攜帶了路徑計算結果路徑計算回復(PCRep)消息。圖2為根據相關技術的路徑計算過程中PCE的常規(guī)操作示意圖。步驟210,PCE 從 PCC 接收 PCReq 消息。步驟220,PCE根據PCReq消息來觸發(fā)并執(zhí)行路徑計算。
步驟230,PCE確定路徑計算是否成功。步驟240,如果確定路徑計算成功,即,PCE發(fā)現(xiàn)能滿足PCReq消息中的約束條件集合的路徑集合,則PCE在PCRep消息中將肯定回復返回到請求PCC,所述PCRep消息含有所計算的路徑集合。步驟250,如果確定路徑計算不成功,即,PCE并未發(fā)現(xiàn)能滿足PCReq消息中的約束條件集合的路徑,則PCE在PCRep消息中將否定回復返回到請求PCC,所述PCRep消息可任選地含有各種附加信息,例如,導致路徑計算失敗的約束條件集合。此外,接收到否定回復之后,PCC可進一步決定是否將修改的請求重新發(fā)送到PCE,可選地,是否采取任何其他適當的措施。在草案中,該草案的內容出于所有目的以全文引入的方式并入本文本中,從PCC傳輸到PCE的PCReq消息的格式指定如下:
〈PCReq Message)::=<Common Header〉
〈request〉
其中:
〈request〉::= <RP>
<end-point-rro-pair-list>
[<OF>]
[<LSPA>]
[〈BANDWIDTH〉]
[〈metric-list〉]
[<IRO>]
[〈LOAD-BALANCING〉]其中:
〈end-point-rro-pa ir-!ist>::=
<END-POINTS>[<RRO-Lisi>][<BANDW
IDTH>]
[<end-point-nO-pair-]ist>]
<RRO-List>::=<RRO>[<BANDVVIDTH>][<RRO-Lisi>]
<meiric-list>::= <METRIC>|"<metric-list>i
其中“〈>”之間提及的短語被看作要支持的必選字段,且“[]”之間提及的短語被看作可選字段。〈Common Header〉指定消息頭。〈request〉指定將包含請求消息中的對象,而且此短語可由以下項替換:
<end-poin t-rro-pair-list>
[<OF>]
[<LSPA>]
[〈BANDWIDTH:〉]
[<metric-list>]
[<IRO>]
[< LO A D-BA LANCIN G>]<RP>指定攜帶唯一請求ID的請求參數(RP)對象。<end-point-rro-pair-list> 由以下項替換:
<END-P0INTS>[<RR0-List>][〈BANDWIDTH〉]
[<end-point-rro-pair-list>]
其中END-PONITS (端點)對象是必選的,而且它之后可跟著可選的報告路由對象(Reported Route 0b ject,RR0)-List 和 BANDWIDTH 對象。END-P0NITS 對象攜帶一個源和多個目的地,對此需要計算端對端路徑。下文將參考圖3詳細描述END-P0NITS對象的格式。如果RRO-List存在,則RRO-List由以下項替換:
<RR0>[〈BANDWIDTH〉][<RR0-List>]
其中RRO對象是必選的,而且它之后可跟著可選的BANDWIDTH對象。這些字段可重復多次,因此可被看作列表。RRO對象攜帶最后計算的路徑。[<0F>]指定目標函數(Objective Function, OF)對象。[<LSPA>]指定 LSP 屬性(LSP Attributes, LSPA)對象。
[〈BANDWIDTH〉]指定 BANDWIDTH 對象。[<metric-list>]由以下項替換:〈METRIC〉[<metric-list>]
其中〈METRIC〉表示METRIC對象。如果存在一個以上度量約束條件,則此字段重復多次。[<IR0>]指定包含路由對象(Include Route Object, IRO)。[LOAD-BALANCING〉]指定 LOAD-BALANCING 對象。如下表I所示,除了 RP對象和END-P0INTS對象,其他所有對象均用來攜帶用于即將計算的路徑的約束條件。
權利要求
1.一種用于通過路徑計算客戶PCC請求點到多點P2MP路徑計算的方法,其特征在于,所述方法包括: 生成用于針對多個目的地請求路徑計算的路徑計算請求PCReq消息,所述PCReq消息中包含每個目的地的約束條件;以及, 將所述PCReq消息傳輸到路徑計算單元PCE,以根據所述PCReq消息來執(zhí)行所述路徑計笪ο
2.根據權利要求1所述的方法,其特征在于,其中在所述PCReq消息中包含每個目的地的約束條件包括: 在所述PCReq消息中包含以下列表中的至少一者:包含路由對象IRO列表、排除路由對象XRO列表,以及報告路由對象RRO列表和METRIC列表, 其中所述IRO列表中的每個IRO為所述多個目的地中的一個目的地定義相容跳,所述XRO列表中的每個XRO為所述多個目的地中的一個目的地定義獨占跳,所述RRO列表攜帶所計算的路徑,而且所述METRIC列表中的每個度量為每個目的地所編碼的所述RRO列表中的每個RRO定義度量約束條件。
3.根據權利要求2所述的方法,其特征在于,其中生成PCReq消息包括: 生成指定源的網際互聯(lián)協(xié)議IP地址和所述多個目的地的IP地址的端點END-POINTS對象, 其中由所述END-POINTS對象指示的所述多個目的地相繼——對應地映射到所述IRO列表、所述XRO列表或所述RRO列表和所述METRIC列表中的所述約束條件。
4.根據權利要求3所述的方法,其特征在于,所述方法進一步包括: 如果由所述END-POINTS對象指示的所述多個目的地可分別映射到所述IRO列表、所述XRO列表或所述RRO列表和所述METRIC列表中它們自己的約束條件,則在所述PCReq消息中包含所述END-POINTS對象。
5.根據權利要求3所述的方法,其特征在于,所述方法進一步包括: 如果由所述END-POINTS對象指示的所述多個目的地無法分別映射到所述IRO列表、所述XRO列表或所述RRO列表和所述METRIC列表中它們自己的約束條件,則將所述END-P0INTS對象分成兩個END-P0INTS對象,以便將由所述兩個END-P0INTS對象中的每個對象指示的目的地分別映射到它們自己的約束條件;以及, 在所述PCReq消息中包含所述兩個END-P0INTS對象。
6.根據權利要求5所述的方法,其特征在于,其中將所述END-P0INTS對象分成兩個END-P0INTS對象基于以下規(guī)則: 所述兩個END-P0INTS對象中的第一 END-P0INTS對象按順序指示符合所述IRO列表和所述XRO列表中的所述約束條件的所有目的地、僅符合所述IRO列表中的所述約束條件的所有目的地,以及沒有任何約束條件的所有目的地;以及, 所述兩個END-P0INTS對象中的第二 END-P0INTS對象指示僅符合所述XRO列表中的所述約束條件的所有目的地。
7.一種用于通過路徑計算單元PCE來執(zhí)行點到多點P2MP路徑計算的方法,其特征在于,包括: 從路徑計算客戶PCC接收用于針對多個目的地請求路徑計算的路徑計算請求PCReq消息; 從所述PCReq消息中提取每個目的地的約束條件; 根據所提取的每個目的地的約束條件來執(zhí)行所述路徑計算;以及, 將所述路徑計算的結果返回到所述PCC。
8.根據權利要求7所述的方法,其特征在于,所述從所述PCReq消息中提取每個目的地的約束條件包括: 從所述PCReq消息中提取以下列表中的至少一者:包含路由對象IRO列表、排除路由對象XRO列表,以及報告路由對象RRO列表和METRIC列表, 其中所述IRO列表中的每個IRO為所述多個目的地中的一個目的地定義相容跳,所述XRO列表中的每個XRO為所述多個目的地中的一個目的地定義獨占跳,所述RRO列表攜帶所計算的路徑,而且所述METRIC列表中的每個度量為每個目的地所編碼的所述RRO列表中的每個RRO定義度量約束條件。
9.根據權利要求8所 述的方法,其特征在于,所述方法進一步包括: 從所述PCReq消息中提取端點END-POINTS對象,所述對象指定源的IP地址和所述多個目的地的IP地址, 其中由所述END-POINTS對象指示的所述多個目的地相繼——對應地映射到所述IRO列表、所述XRO列表或所述RRO列表和所述METRIC列表中的所述約束條件。
10.根據權利要求9所述的方法,其特征在于,其中 如果由所述END-POINTS對象指示的所述多個目的地可分別映射到所述IRO列表、所述XRO列表或所述RRO列表和所述METRIC列表中它們自己的約束條件,則在所述PCReq消息中包含所述END-POINTS對象。
11.根據權利要求9所述的方法,其特征在于,其中 如果由所述END-POINTS對象指示的所述多個目的地無法分別映射到所述IRO列表、所述XRO列表或所述RRO列表和所述METRIC列表中它們自己的約束條件,則將所述END-P0INTS對象分成兩個END-P0INTS對象,以便將由所述兩個END-P0INTS對象中的每個對象指示的目的地分別映射到它們自己的約束條件;以及, 在所述PCReq消息中包含所述兩個END-P0INTS對象。
12.根據權利要求11所述的方法,其特征在于,其中將所述END-P0INTS對象分成兩個END-P0INTS對象基于以下規(guī)則: 所述兩個END-P0INTS對象中的第一 END-P0INTS對象按順序指示符合所述IRO列表和所述XRO列表中的所述約束條件的所有目的地、僅符合所述IRO列表中的所述約束條件的所有目的地,以及沒有任何約束條件的所有目的地;以及, 所述兩個END-P0INTS對象中的第二 END-P0INTS對象指示僅符合所述XRO列表中的所述約束條件的所有目的地。
13.一種用于請求點到多點P2MP路徑計算的設備,其特征在于,包括: 路徑計算請求PCReq消息生成單元,用于生成用于針對多個目的地請求路徑計算的PCReq消息,所述PCReq消息中包含每個目的地的約束條件;以及, PCReq消息傳輸單元,用于將所述PCReq消息傳輸到路徑計算單元PCE,以根據所述PCReq消息來執(zhí)行所述路徑計算。
14.根據權利要求13所述的設備,其特征在于,其中所述PCReq消息生成單元包括以下單元中的至少一者:包含路由對象IRO列表包含單元、排除路由對象XRO列表包含單元,以及報告路由對象RRO列表和METRIC列表包含單元,而且其中: 所述IRO列表包含單元用于在所述PCReq消息中包含IRO列表,其中所述IRO列表中的每個IRO為所述多個目的地中的一個目的地定義相容跳, 所述XRO列表包含單元用于在所述PCReq消息中包含XRO列表,其中所述XRO列表中的每個XRO為所述多個目的地中的一個目的地定義獨占跳,以及, 所述RRO列表和METRIC列表包含單元用于在所述PCReq消息中包含RRO列表和METRIC列表,其中所述RRO列表攜帶所計算的路徑,而且所述METRIC列表中的每個度量為每個目的地所編碼的所述RRO列表中的每個RRO定義度量約束條件。
15.根據權利要求14所述的設備,其特征在于,其中所述PCReq消息生成單元包括: END-POINTS對象生成單元,用于生成指定源的IP地址和所述多個目的地的IP地址的END-POINTS 對象, 其中由所述END-POINTS對象指示的所述多個目的地相繼——對應地映射到所述IRO列表、所述XRO列表或所述RRO列表和所述METRIC列表中的所述約束條件。
16.一種用于執(zhí)行點到多點P2MP路徑計算的設備,其特征在于,包括: 路徑計算請求PCReq消息接收單元,用于從路徑計算客戶PCC接收用于針對多個目的地請求路徑計算的PCReq消息; 每個目的地的約束條件提取單元,用于從所述PCReq消息中提取每個目的地的約束條件; 路徑計算執(zhí)行單元,用于根據所提取的每個目的地的約束條件來執(zhí)行所述路徑計算;以及, 結果返回單元,用于將所述路徑計算的結果返回到所述PCC。
17.根據權利要求16所述的設備,其特征在于,其中所述每個目的地的約束條件提取單元包括以下單元中的至少一者:包含路由對象IRO列表提取單元、排除路由對象XRO列表提取單元,以及報告路由對象RRO列表和METRIC列表提取單元,而且其中: 所述IRO列表提取單元,用于從所述PCReq消息中提取IRO列表,其中所述IRO列表中的每個IRO為所述多個目的地中的一個目的地定義相容跳, 所述XRO列表提取單元,用于從所述PCReq消息中提取XRO列表,其中所述XRO列表中的每個XRO為所述多個目的地中的一個目的地定義獨占跳,以及, 所述RRO列表和METRIC列表提取單元,用于從所述PCReq消息中提取RRO列表和METRIC列表,其中所述RRO列表攜帶所計算的路徑,而且所述METRIC列表中的每個度量為每個目的地所編碼的所述RRO列表中的每個RRO定義度量約束條件。
18.根據權利要求17所述的設備,其特征在于,所述設備進一步包括: 端點END-POINTS對象提取單元,用于從所述PCReq消息中提取END-POINTS對象,所述對象指定源的IP地址和所述多個目的地的IP地址, 其中由所述END-P0INTS對象指示的所述多個目的地相繼——對應地映射到所述IRO列表、所述XRO列表或所述RRO列表和所述METRIC列表中的所述約束條件。
19.一種用于請求點到多點P2MP路徑計算的設備,其包括:存儲器;以及, 處理器,與所述存儲器連接,用于生成用于針對多個目的地請求路徑計算的路徑計算請求PCReq消息,所述PCReq消息中包含每個目的地的約束條件;以及, 將所述PCReq消息傳輸到路徑計算單元PCE,以根據所述PCReq消息來執(zhí)行所述路徑計笪 ο
20.一種用于執(zhí)行點到多點P2MP路徑計算的設備,其包括: 存儲器;以及, 處理器,與所述存儲器連接,用于從路徑計算客戶PCC接收用于針對多個目的地請求路徑計算的路徑計算請求PCReq消息; 從所述PCReq消息中提取每個目的地的約束條件; 根據所提取的每個目的地的約束條件來執(zhí)行所述路徑計算;以及, 將所述路徑計算的結 果返回到所述PCC。
全文摘要
本發(fā)明提供一種用于實施點到多點(P2MP)路徑計算的方法和設備。用于通過路徑計算客戶(PCC)來請求P2MP路徑計算的方法包括生成用于針對多個目的地請求路徑計算的路徑計算請求(PCReq)消息,方式為在所述PCReq消息中包含每個目的地的約束條件;以及將所述PCReq消息傳輸到路徑計算單元(PCE),以根據所述PCReq消息來執(zhí)行所述路徑計算。本發(fā)明的各實施例實施可支持每個目的地的約束條件的P2MP路徑計算。
文檔編號H04L12/761GK103155498SQ201080067772
公開日2013年6月12日 申請日期2010年7月15日 優(yōu)先權日2010年7月15日
發(fā)明者杜如·杜豪迪, 蘇巴布·凱薩瑞迪, 強林昆汀·趙, 郵迪亞·帕里 申請人:華為技術有限公司