專利名稱:路由發(fā)布方法和運營商邊緣設備的制作方法
技術(shù)領域:
本發(fā)明涉及網(wǎng)絡通信技術(shù),特別涉及路由發(fā)布方法和運營商邊緣設備(PE :Provider Edge)。
背景技術(shù):
現(xiàn)有多協(xié)議標簽交換(MPLSMultiprotocol Label Switching)三層(L3)虛擬專用網(wǎng)(VPN :Virtual Private Network)組網(wǎng)是服務提供商VPN解決方案中的一種基于PE 的三層技術(shù),其使用邊界網(wǎng)關協(xié)議(BGP :Border Gateway Protocol)在服務提供商骨干網(wǎng)上發(fā)布VPN路由,使用MPLS在服務提供商骨干網(wǎng)上轉(zhuǎn)發(fā)VPN報文。在MPLS L3VPN組網(wǎng)中,特別是嵌套VPN中,PE與用戶側(cè)設備(CE :Custom Edge)、以及PE之間通過發(fā)送VPNv4路由來交互VPN信息。其中,VPNv4路由包括8個字節(jié)的路由標識符(RD Route distinguisher)和4個字節(jié)的IPv4地址前綴,這里RD添加在IPv4地址前綴之前,目的是使添加RD之后的IPv4地址前綴稱為全局唯一的VPN IPv4地址前綴,以便于區(qū)分VPN不同的路由。參見圖1,圖I為現(xiàn)有路由發(fā)布示意圖。圖I應用于嵌套VPN組網(wǎng)中,其中,CE-Bl和CE-B3為PE-Al的嵌套子PE0在圖I中,PE-Al和CE-Bl之間使用VPNB, PE-Al和CE-B3之間使用VPNB或VPNA,基于此,圖I通過箭頭示出了路由發(fā)布過程,具體為首先,CE-Cl和CE-C3發(fā)布了地址前綴為I. I. I. 1/24的IPv4路由,并分別到達CE-Bl 和 CE-B3。CE-B3作為嵌套子PE,在接收來自CE-C3的普通IPv4路由后,在地址前綴為
I.I. I. 1/24上添加用戶VPN即CE-B3和CE-C3之間使用的VPN B2的RD形成VPNv4路由,并通過MP-BGP發(fā)布給PE-Al。同理,CE-Bl作為嵌套子PE,在接收來自CE-Cl的普通IPv4路由后,在地址前綴為I. I. I. 1/24上添加用戶VPN即CE-Bl和CE-Cl之間使用的VPN BI的RD形成VPNv4路由,并通過MP-BGP發(fā)布給PE-Al。至此,PE-Al會接收到以下兩條VPNv4路由路由1,地址前綴為I. I. I. 1/24、附加的RD為VPN BI的RD ;路由2,地址前綴為L I. I. 1/24、附加的RD為VPN B2的RD。當PE-Al接收到路由I和路由2后,根據(jù)嵌套VPN的RD替換特性,就需要將路由I的RD替換為PE-A1和CE-Bl之間使用的VPNB的RD (此時將RD替換后的路由I記為路由3),同理,也會將路由2的RD替換為PE-A1和CE-B3之間使用VPNB或VPNA的RD(此時將RD替換后的路由2記為路由4)。其中,由于PE-Al和CE-B3之間使用VPNB或VPNA,則,在PE-Al和CE-B3之間使用VPNA時(記為情況1),路由4的RD就為VPN A的RD,這與路由3中VPNB的RD不同,因此,PE-Al會認為路由3與路由4為兩條完全不同的私網(wǎng)路由,為該兩條完全不同的私網(wǎng)路由申請不同的私網(wǎng)標簽,并發(fā)布至對端PE-A2 ;而在PE-Al和CE-B3之間使用VPNB時(記為情況2),則路由4的RD就為VPN B的RD,這與路由3相同,因此,PE-Al會認為路由3與路由4為同一條私網(wǎng)路由,優(yōu)選出其中一條路由比如路由3發(fā)布至對端PE-A2。當PE-A2接收到PE-Al在情況I下發(fā)布的兩條完全不同的路由3和路由4后,該路由3和路由4均來自PE-Al,且具有相同地址前綴,因此,PE-A2會根據(jù)一系列優(yōu)選方式從接收到的路由3和路由4中選擇一個路由并下發(fā)到本地轉(zhuǎn)發(fā)表項里。而當PE-A2接收到PE-Al在情況2下僅發(fā)布的一條路由后,直接將該接收到的路由下發(fā)到本地轉(zhuǎn)發(fā)表項里。至此,完成現(xiàn)有的路由發(fā)布描述。但是,由于現(xiàn)有路由發(fā)布過程中,當PE-A2接收到PE-Al在情況I下發(fā)布的兩條完全不同的路由3和路由4后,會出從路由3和路由4中優(yōu)選一個路由來使用并下發(fā)到本地轉(zhuǎn)發(fā)表項里,這會限制PE-A2下連的CE比如CE-B2只會與PE-Al下的特定CE互通,而不能與同時與PE-Al下連的且與該特定CE發(fā)布了相同地址前綴的其他CE互通。以PE-A2選擇了路由3為例,該路由3中的RD屬于VPN B,如此,就限制PE-A2下連的CE比如CE-B2只會與PE-Al下連的屬于VPN B的CE-Bl互通,而不能與屬于VPN A的、但與CE-Bl發(fā)布了相同地址前綴的CE-B3互通。同樣,當PE-A2接收到PE-Al在情況2下僅發(fā)布的一條路由比如路由3后,由于僅選擇了一條路由,這也會導致PE-A2下連的CE比如CE-B2不能同時與發(fā)布了相同地址前綴的CE-B3和CE-Bl互通。
發(fā)明內(nèi)容
本發(fā)明提供了路由發(fā)布方法和運營商邊緣PE,以保證對端PE下連的CE同時與本端PE下連的發(fā)布了相同地址前綴的所有CE互通。本發(fā)明提供的技術(shù)方案包括—種路由發(fā)布方法,包括A,運營商邊緣設備PE接收到N條具有相同地址前綴的私網(wǎng)路由,所述N大于等于2 ;B,若所述PE確定N條私網(wǎng)路由來自于不同設備,則為所述N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居設備;若所述PE確定N條私網(wǎng)路由均來自于同一設備,則在所述N條私網(wǎng)路由具有不同私網(wǎng)標簽時,將該來自于同一設備的N條具有相同地址前綴但不同私網(wǎng)標簽的私網(wǎng)路由確定為等價私網(wǎng)路由,并為該N條等價私網(wǎng)路由分配不同的私網(wǎng)標簽,發(fā)布至上游鄰居設備。優(yōu)選地,在步驟B執(zhí)行之前,進一步包括所述PE和所述上游鄰居設備協(xié)商并使能私網(wǎng)標簽等價能力;所述私網(wǎng)標簽能力包含用于執(zhí)行步驟B中操作的功能;基于此,步驟B中的發(fā)布操作包括確定本PE是否已和上游鄰居設備協(xié)商了所述私網(wǎng)標簽等價能力,如果是,則繼續(xù)執(zhí)行所述發(fā)布操作。優(yōu)選地,本發(fā)明中,所述PE和上游鄰居設備協(xié)商私網(wǎng)標簽能力包括
所述PE和上游鄰居設備通過交互邊界網(wǎng)關協(xié)議BGP中的OPEN報文協(xié)商私網(wǎng)標簽能力,其中,所述OPEN報文通過擴展來增加用于協(xié)商所述私網(wǎng)標簽等價能力的字段。優(yōu)選地,本發(fā)明中,所述私網(wǎng)標簽能力還包含用于釋放私網(wǎng)路由的功能;基于此,所述方法進一步包括所述PE基于所述用于釋放私網(wǎng)路由的功能執(zhí)行私網(wǎng)路由釋放。本發(fā)明中,所述PE基于所述用于釋放私網(wǎng)路由的功能執(zhí)行私網(wǎng)路由釋放具體包括C,PE在需要釋放路由時,將該路由被分配的私網(wǎng)標簽告知給上游鄰居設備,以使上游鄰居設備根據(jù)接收的私網(wǎng)標簽釋放對應的路由;D,PE接收到下游鄰居設備告知的需要釋放的路由被分配的私網(wǎng)標簽時,釋放該接收的私網(wǎng)標簽對應的路由。其中,所述需要釋放的路由被分配的私網(wǎng)標簽通過BGP協(xié)議中UPDATE報文的MPUnreach NLRI Label Stack 字段攜帶。
本發(fā)明還提供了一種報文傳輸方法,包括PE接收到上游鄰居設備發(fā)送的報文;PE確定所述報文的入標簽,如果該入標簽為本PE針對如上所述方法確定的等價私網(wǎng)路由中的一條私網(wǎng)路由分配的私網(wǎng)標簽,則將該入標簽交換為本PE接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽并轉(zhuǎn)發(fā)所述報文;或者,PE接收到其下連的用戶側(cè)設備CE發(fā)送的報文;PE確定用于發(fā)送該報文的路由為上述方法確定的等價私網(wǎng)路由,則從所述等價私網(wǎng)路由中選擇一條私網(wǎng)路由,在所述報文中添加本PE在接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽來作為所述報文的入標簽并轉(zhuǎn)發(fā)所述報文。本發(fā)明還提供了一種PE,其關鍵在于,該PE用于路由發(fā)布,包括路由接收單元,用于接收到N條具有相同地址前綴的私網(wǎng)路由,所述N大于等于
2;發(fā)布單元,用于在所述N條私網(wǎng)路由來自不同設備時,為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居設備;以及用于在所述N條私網(wǎng)路由均來自同一設備時,如果所述N條私網(wǎng)路由具有不同私網(wǎng)標簽,則將該來自于同一設備的N條具有相同地址前綴但不同私網(wǎng)標簽的私網(wǎng)路由確定為等價私網(wǎng)路由,并為該N條等價私網(wǎng)路由分配不同的私網(wǎng)標簽,發(fā)布至上游鄰居設備。優(yōu)選地,本發(fā)明中,所述PE進一步包括協(xié)商并使能單元,用于和所述上游鄰居設備協(xié)商并使能私網(wǎng)標簽能力,所述私網(wǎng)標簽能力包含所述發(fā)布單元執(zhí)行的操作;所述發(fā)布單元執(zhí)行的發(fā)布操作是在確定出所述PE已和所述上游鄰居設備協(xié)商了所述私網(wǎng)標簽等價能力后執(zhí)行的。其中,所述協(xié)商并使能單元通過向所述上游鄰居設備發(fā)送邊界網(wǎng)關協(xié)議BGP中的OPEN報文來協(xié)商私網(wǎng)標簽能力,其中,所述OPEN報文通過擴展增加了用于協(xié)商所述私網(wǎng)標簽等價能力的字段來協(xié)商所述私網(wǎng)標簽等價能力。優(yōu)選地,本發(fā)明中,所述私網(wǎng)標簽能力還包含用于釋放私網(wǎng)路由的功能;基于此,所述PE進一步包括釋放單元,用于基于所述私網(wǎng)標簽能力進一步包含的用于釋放私網(wǎng)路由的功能執(zhí)行私網(wǎng)路由釋放,具體為在需要釋放路由時,將該需要釋放的路由被分配的私網(wǎng)標簽告知給上游鄰居設備,以使上游鄰居PE根據(jù)接收的私網(wǎng)標簽釋放對應的路由;以及在接收到下游鄰居設備告知的需要釋放的路由被分配的私網(wǎng)標簽時,釋放該接收的私網(wǎng)標簽對應的路由。
其中,所述需要釋放的路由被分配的私網(wǎng)標簽通過BGP協(xié)議中UPDATE報文的MPUnreach NLRI Label Stack 字段攜帶。本發(fā)明還提供了另外一種PE,該PE用于報文傳輸,包括如上所述PE包含的各個單元、報文接收單元和報文轉(zhuǎn)發(fā)單元;其中,報文接收單元,用于接收上游鄰居設備發(fā)送的報文,以及接收所述PE下連的用戶側(cè)設備CE發(fā)送的報文;報文轉(zhuǎn)發(fā)單元,用于在確定出來自所述上游鄰居設備的報文的入標簽為所述發(fā)布單元針對等價私網(wǎng)路由中的一條私網(wǎng)路由分配的私網(wǎng)標簽時,將該入標簽交換為本PE接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽并轉(zhuǎn)發(fā)所述報文;以及,在確定出用于發(fā)送來自所述CE的報文的路由為所述發(fā)布單元確定的等價私網(wǎng)路由時,從所述等價私網(wǎng)路由中選擇一條私網(wǎng)路由,在所述報文中添加所述PE在接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽來作為所述報文的入標簽并轉(zhuǎn)發(fā)所述報文。優(yōu)選地,所述報文轉(zhuǎn)發(fā)單元按照負載分擔策略從所述等價私網(wǎng)路由中選擇一條路由,利用被選擇的路由轉(zhuǎn)發(fā)所述報文。由以上技術(shù)方案可以看出,本發(fā)明中,PE在本地接收到N條具有相同地址前綴的私網(wǎng)路由時,不管該N條私網(wǎng)路由是否攜帶相同RD,只要是從不同設備接收得到,則為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居設備,并非視為同一路由僅選擇其中一條路由發(fā)布;或者,即使是從同一設備接收得到,但如果具有不同私網(wǎng)標簽,則將該N條私網(wǎng)路由作為等價私網(wǎng)路由來維護,并非從接收的該N條私網(wǎng)路由中優(yōu)選一個,這保證了上游鄰居設備下的CE與本PE下發(fā)布了相同地址前綴的CE的互通。
圖I為現(xiàn)有路由發(fā)布示意圖;圖2為本發(fā)明實施例擴展的OPEN報文示意圖;圖3為本發(fā)明第一實施例實現(xiàn)示意圖;圖4為本發(fā)明第二一實施例實現(xiàn)示意圖;圖5為本發(fā)明實施例提供的PE結(jié)構(gòu)圖;圖6為本發(fā)明實施例提供的另一 PE結(jié)構(gòu)圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細描述。本發(fā)明提供的路由發(fā)布方法涉及的PE可為連接至MPLS骨干網(wǎng)上的基本PE,比如 圖I中的PE-Al或PE-A2 ;也可為嵌套VPN網(wǎng)絡中作為MPLS骨干網(wǎng)上基本PE的嵌套子PE,比如圖I中的CE-Bl或CE-B3。以下為方便描述,均統(tǒng)稱為PE。本發(fā)明實施例提供的路由發(fā)布方法主要包括PE接收到N條具有相同地址前綴的私網(wǎng)路由;如果所述N條私網(wǎng)路由來自于不同設備,則為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居設備;如果所述N條私網(wǎng)路由均來自于同一設備,則在所述N條私網(wǎng)路由具有不同私網(wǎng)標簽時,將該來自于同一設備的N條具有相同地址前綴但不同私網(wǎng)標簽的N條私網(wǎng)路由作為等價私網(wǎng)路由,并為該N條等價私網(wǎng)路由分配不同的私網(wǎng)標簽,發(fā)布至上游鄰居設備。優(yōu)選地,本發(fā)明中,以下為便于描述,將PE的上游鄰居設備簡稱為上游鄰居PE0如此,當PE接收到上游鄰居PE發(fā)送的報文時,如果確定出所述報文的入標簽為本PE針對等價私網(wǎng)路由中的一條私網(wǎng)路由分配的私網(wǎng)標簽,則將該入標簽交換為本PE接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽并轉(zhuǎn)發(fā)所述報文。其中,轉(zhuǎn)發(fā)所述報文具體包括利用本PE接收到該私網(wǎng)路由的端口轉(zhuǎn)發(fā)所述報文;而當PE接收到其下連的CE發(fā)送的報文時,則如果PE確定出用于發(fā)送該報文的路由為如上確定的等價私網(wǎng)路由,則從所述等價私網(wǎng)路由中選擇(該選擇可按照負載分擔策略或者隨機方式執(zhí)行)一條私網(wǎng)路由,在所述報文中添加本PE在接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽來作為所述報文的入標簽并轉(zhuǎn)發(fā)所述報文。下面針對本發(fā)明提供的路由發(fā)布方法進行詳細描述首先,為了實現(xiàn)本發(fā)明提供的路由發(fā)布方法,需要上述PE與其上游鄰居PE之間相互協(xié)商私網(wǎng)標簽等價能力(label-ecmp-capability)。其中,PE和其上游鄰居PE可通過相互交互BGP協(xié)議中的OPEN報文來實現(xiàn)私網(wǎng)標簽能力的協(xié)商。本發(fā)明中,為了實現(xiàn)PE和其上游PE通過交互OPEN報文來實現(xiàn)私網(wǎng)標簽能力的協(xié)商,需要對該OPEN報文進行擴展,使擴展后的OPEN報文增加用于協(xié)商所述私網(wǎng)標簽等價能力的字段。圖2示出了 OPEN報文中增加的用于協(xié)商所述私網(wǎng)標簽等價能力的字段,其遵守BGP協(xié)議的規(guī)定,包含能力編碼字段(capability code)和能力長度字段(capability length),其中,capability code 占用I個字節(jié),用于指示所述私網(wǎng)標簽等價能力,capability length占用I個字節(jié),用于指示所述私網(wǎng)標簽等價能力可用屬性比如value等的字段長度,而由于本發(fā)明主要涉及私網(wǎng)標簽等價能力的協(xié)商,不涉及私網(wǎng)標簽等價能力可用屬性,因此,可建議該capability length為空,或者取值為0,這里之所以設置capability length,目的是為了遵守BGP協(xié)議針對增加字段的規(guī)定。如此,基于圖2所示的OPEN報文,則PE和其上游鄰居PE在設定的時間內(nèi) 可通過交互圖2所示的OPEN報文即可完成私網(wǎng)標簽等價能力的協(xié)商。本發(fā)明中的私網(wǎng)標簽等價能力具體可包含以下功能功能1,用于PE在發(fā)布本地接收到的N條具有相同地址前綴的私網(wǎng)路由時,增加一種判斷,具體為判斷該N條私網(wǎng)路由是否來自于不同的設備,即從不同設備接收到所述N條私網(wǎng)路由;如果該N條私網(wǎng)路由均從不同設備接收得到,則認為該N條私網(wǎng)路由為不同路由,為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至與本PE協(xié)商了所述私網(wǎng)標簽等價能力的上游鄰居PE??梢钥闯?,不管該N條私網(wǎng)路由在發(fā)布時是否添加相同的RD,只要該N條私網(wǎng)路由從不同設備接收得到,就認為該N條私網(wǎng)路由為N條不同的路由,繼續(xù)發(fā)布該N條私網(wǎng)路由至協(xié)商了所述私網(wǎng)標簽等價能力的上游鄰居PE。而如果該N條私網(wǎng)路由是從同一設備接收得到,則,再增加一種判斷,具體為判斷該N條私網(wǎng)路由是否已被分配了不同私網(wǎng)標簽,如果該N條私網(wǎng)路由均被分配了不同私網(wǎng)標簽,則認為該N條私網(wǎng)路由為不同路由,為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至協(xié)商了所述私網(wǎng)標簽等價能力的上游鄰居PE??梢钥闯?,即使PE確定該N條私網(wǎng)路由從同一設備接收得到,由于N條私網(wǎng)路由具有不同的私網(wǎng)標簽,也會認為該N條私網(wǎng)路由為N條不同的路由,繼 續(xù)發(fā)布該N條私網(wǎng)路由至協(xié)商了所述私網(wǎng)標簽等價能力的上游鄰居PE。需要說明的是,本功能I中,判斷N條具有相同地址前綴的私網(wǎng)路由是從不同設備接收得到還是從同一設備接收得到的方式具體實現(xiàn)時可有多種方式,下面僅舉三個例子進行描述例1,依賴于該N條私網(wǎng)路由的下一跳設備的設備標識(Route id)。其中,下一跳設備的Route id可為該設備在BGP中的標識,MPLS L3VPN網(wǎng)絡中每一設備具有唯一的Route id,不同設備具有不同的Route id,每一設備在通過BGP和其他設備建立鄰居連接時將自身的Route id攜帶在BGP的OPEN報文中告知給鄰居,并記錄鄰居告知的Route id。當PE在本地接收到N條私網(wǎng)路由時,針對該N條私網(wǎng)路由中任一路由,利用開發(fā)商預先設置的代碼能夠?qū)⒃撀酚膳c已記錄的發(fā)布該路由的下一跳設備的Route id關聯(lián),基于此,上述判斷N條具有相同地址前綴的私網(wǎng)路由是從不同設備接收得到還是從同一設備接收得到通過比較所述N條私網(wǎng)路由關聯(lián)的下一跳設備的Route id即可獲知,如果均不同,則表示所述N條私網(wǎng)路由均從不同設備接收得到,反之,如果相同,則表示所述N條私網(wǎng)路由均從同一設備接收得到。綜上基于Route ID的描述,本發(fā)明可以將功能I稱為基于Route id的VPNv4轉(zhuǎn)發(fā)(Route id-VPNv4_Export)功能。例2,基于發(fā)布路由的TCP端口。本領域技術(shù)人員知道,設備在發(fā)送路由時通常是通過TCP端口發(fā)送,基于此,當PE在本地接收到N條私網(wǎng)路由時,針對該N條私網(wǎng)路由中任一路由,確定發(fā)布該路由的TCP端口(該TCP端口一般攜帶在路由中),基于此,上述判斷N條具有相同地址前綴的私網(wǎng)路由是從不同設備接收得到還是從同一設備接收得到通過比較發(fā)送所述N條私網(wǎng)路由的TCP端口是否相同即可獲知,如果均不同,則表示所述N條私網(wǎng)路由均從不同設備接收得到,反之,如果相同,則表示所述N條私網(wǎng)路由均從同一設備接收得到。例3,基于路由的下一跳地址。當PE在本地接收到N條私網(wǎng)路由時,針對該N條私網(wǎng)路由中任一路由,確定該路由的下一跳地址(該下一跳地址一般攜帶在路由中),基于此,上述判斷N條具有相同地址前綴的私網(wǎng)路由是從不同設備接收得到還是從同一設備接收得到通過比較所述N條私網(wǎng)路由的下一跳是否相同即可獲知,如果均不同,則表示所述N條私網(wǎng)路由均從不同設備接收得到,反之,如果相同,則表示所述N條私網(wǎng)路由均從同一設備接收得到。至此,通過上述例I至例3中的任一種很容易確定該N條具有相同地址前綴的私網(wǎng)路由是從不同設備接收得到還是從同一設備接收得到。作為本發(fā)明實施例的擴展,上述例I至例3只是一種舉例,并非限定本發(fā)明,在實現(xiàn)本發(fā)明思想不變的情況下,其他判斷N條具有相同地址前綴的私網(wǎng)路由是從不同設備接收得到還是從同一設備接收得到的方式也是可行的,在此不--舉例。功能2,稱為VPNv4多等價路徑轉(zhuǎn)發(fā)(VPNv4_ECMP)能力,其用于在功能I判斷出所述N條私網(wǎng)路由從同一設備接收得到且已被分配了不同私網(wǎng)標簽時,將該N條私網(wǎng)路由形成等價私網(wǎng)路由,并下發(fā)至本地轉(zhuǎn)發(fā)表項?;诠δ?,本發(fā)明是將來自于同一設備(即下一跳相同)的N條具有相同地址前綴但不同私網(wǎng)標簽的私網(wǎng)路由確定為等價私網(wǎng)路由,這和傳統(tǒng)確定等價私網(wǎng)路由的方式不同,傳統(tǒng)確定等價私網(wǎng)路由的方式為將來自于不同設備(即下一跳不同)但地址前綴相同的路由確定為等價私網(wǎng)路由。
基于上述對私網(wǎng)標簽等價能力的描述,則本發(fā)明中,PE在與其上游鄰居PE協(xié)商完私網(wǎng)標簽等價能力后,使能該協(xié)商的私網(wǎng)標簽等價能力,以利用該私網(wǎng)標簽等價能力所包含的功能I和功能2對接收的N條具有相同地址前綴的私網(wǎng)路由進行處理。下面對本發(fā)明提供的方法進行舉例描述實施例I :本實施例I以圖3所示的MPLS L3VPN網(wǎng)絡為例,在圖3中,PE-Al分別與作為其嵌套子PE的CE-Bl和CE-B3之間使用的用戶VPN相同,均為VPN B。則,如圖3所示,CE-B3和CE-Bl分別發(fā)布了以下兩條私網(wǎng)路由至PE-Al :路由1,附加的RD為VPN B2的RD、地址前綴為I. I. I. 1/24的VPNv4路由;路由2,附加的RD為VPN BI的RD、地址前綴為I. I. I. 1/24的VPNv4路由。由于PE-Al分別與CE-Bl和CE-B3之間使用的用戶VPN相同,均為VPNB,則基于RD替換特點,PE-Al會將接收到的路由I和路由2的RD均更換為VPN B的RD。在完成RD替換后,路由I和路由2就具有相同的RD和地址前綴,按照現(xiàn)有路由發(fā)布方式則會確定路由I和路由2為同一條路由,而本發(fā)明中,在PE-Al與其上游鄰居PE即PE-A2協(xié)商且使能了上述私網(wǎng)標簽等價能力后,基于上述功能1,由于路由I和路由2是PE-Al分別從兩個不同設備即CE-Bl和CE-B3接收得到的,因此,便將路由I和路由2作為兩條不同路由發(fā)布給PE-A2,并為該兩條不同的路由分配兩個不同私網(wǎng)標簽比如,為路由I分配私網(wǎng)標簽為100,為路由2分配私網(wǎng)標簽為300。當PE-A2接收到PE-Al發(fā)布的路由I和路由2后,發(fā)現(xiàn)該路由I和路由2被同一個設備即PE-Al發(fā)布的,且該路由I和路由2的RD、地址前綴都是一樣的,主要區(qū)別就是私網(wǎng)標簽不一樣。則在PE-A2使能了上述私網(wǎng)標簽等價能力后,基于上述功能2,將路由I和路由2確定為等價私網(wǎng)路由。以PE-Al為路由I分配私網(wǎng)標簽為100,為路由2分配私網(wǎng)標簽為300為例,則當PE-A2收到CE-B2向PE-Al側(cè)發(fā)送的數(shù)據(jù)報文時,則會基于路由負載分擔策略從上述形成的等價私網(wǎng)路由中選擇其中一個,比如選擇私網(wǎng)標簽為100的路由,當PE-Al接收到私網(wǎng)標簽為100的數(shù)據(jù)報文時,會將該私網(wǎng)標簽交換為其他標簽,轉(zhuǎn)發(fā)給CE-B3。另外,若PE-A2仍然存在上游鄰居PE,且已和該上游鄰居PE協(xié)商了所述私網(wǎng)標簽等價能力,則基于上述功能1,認為盡管該路由I和路由2都來自于PE-Al且地址前綴都是一樣的,但由于私網(wǎng)標簽不一樣,比如路由I的私網(wǎng)標簽為100,路由2的私網(wǎng)標簽為300,貝U,即使本PE-A2將該路由I和路由2確定為等價私網(wǎng)路由,還是確認該路由I和路由2作為兩條不同路由,為該兩條不同的路由分配兩個不同私網(wǎng)標簽,并發(fā)送給與本PE-A2協(xié)商了私網(wǎng)標簽等價能力的上游鄰居PE,。至此,完成實施例I的描述。實施例I是以PE-Al分別與作為其嵌套子PE的CE-Bl和CE-B3之間使用的用戶VPN相同為例對本發(fā)明提供的方法進行了描述,而如果PE-Al與作為其嵌套子PE的CE-Bl和CE-B3之間使用的用戶VPN不相同,比如,PE-Al與CE-Bl之間使用的用戶VPN為VPN B,而PE-Al與CE-B3之間使用的用戶VPN為VPN A,則參見圖4所示的實施例2 實施例2
本實施例2以圖4所示的MPLS L3VPN網(wǎng)絡為例,在圖4中,PE-Al與作為其嵌套子PE的CE-Bl和CE-B3之間使用的用戶VPN不相同,比如,PE-Al與CE-Bl之間使用的用戶VPN為VPN B,而PE-Al與CE-B3之間使用的用戶VPN為VPN A,則,如圖4所示,CE-B3和CE-Bl分別發(fā)布了以下兩條私網(wǎng)路由至PE-Al :路由1,附加的RD為VPN B2的RD、地址前綴為I. I. I. 1/24的VPNv4路由;路由2,附加的RD為VPN BI的RD、地址前綴為I. I. I. 1/24的VPNv4路由?;赗D替換特點,PE-Al會將接收到的路由I的RD更換為VPN A的RD,將路由2的RD更換為VPN B的RD。在完成RD替換后,路由I和路由2具有不同的RD,不管是按照現(xiàn)有路由方式還是按照本發(fā)明中的上述功能1,均會將路由I和路由2發(fā)布給PE-A2,并為該兩條不同的路由分配兩個不同私網(wǎng)標簽。 而當PE-A2接收到PE-Al發(fā)布的路由I和路由2后,發(fā)現(xiàn)該路由I和路由2被同一個設備即PE-Al發(fā)布、且具有相同的地址前綴,如果按照現(xiàn)有路由方式會從路由I和路由2中優(yōu)選出一個,并記錄至本地轉(zhuǎn)發(fā)表項;而本發(fā)明中,盡管路由I和路由2被同一個設備發(fā)布、且具有相同的地址前綴,但私網(wǎng)標簽不一樣,則在PE-A2使能了上述私網(wǎng)標簽等價能力后,基于上述功能2的描述,將路由I和路由2形成私網(wǎng)出標簽不同、但下一跳和地址前綴相同的等價私網(wǎng)路由。另外,若PE-A2仍然存在上游鄰居PE,且已和該上游鄰居PE協(xié)商了所述私網(wǎng)標簽等價能力,則基于上述功能1,認為盡管該路由I和路由2來自于同一個設備、且地址前綴都是一樣的,但由于私網(wǎng)標簽不一樣,還是應該確認該路由I和路由2作為兩條不同路由,因此,為該兩條不同的路由分配兩個不同私網(wǎng)標簽,并發(fā)布給與本PE-A2協(xié)商了私網(wǎng)標簽等價能力的上游鄰居PE。至此,完成實施例2的描述。從實施例I和實施例2可以看出,本發(fā)明中,PE在本地接收到N條具有相同地址前綴的私網(wǎng)路由時,不管該N條私網(wǎng)路由是否攜帶相同RD,在使能了本發(fā)明中的私網(wǎng)標簽等價能力后,只要是從不同設備接收得到,則為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居PE ;或者,即使是從同一設備接收得到,但如果具有不同私網(wǎng)標簽,則將該N條私網(wǎng)路由作為等價私網(wǎng)路由來維護,并為該N條等價私網(wǎng)路由分配不同的私網(wǎng)標簽,發(fā)布至上游鄰居PE,這相比于現(xiàn)有技術(shù),能夠保證上游鄰居PE下的CE與本PE下發(fā)布了相同地址前綴的CE的互通。另外,本發(fā)明中的私網(wǎng)標簽等價能力還包括以下能力路由撤銷能力(Withdraw-ECMP-Label ),用于釋放私網(wǎng)路由,具體為在PE需要釋放路由時,將該需要釋放的路由被分配的私網(wǎng)標簽告知給上游鄰居PE,以使上游鄰居PE根據(jù)接收的私網(wǎng)標簽釋放對應的路由;或者,在接收到下游鄰居PE告知的需要釋放的路由被分配的私網(wǎng)標簽時,釋放該接收的私網(wǎng)標簽對應的路由。其中,需要釋放的路由被分配的私網(wǎng)標簽通過BGP協(xié)議中UPDATE報文的MPUnreach NLRI Label Stack 字段攜帶。如,若圖4中的PE-Al要釋放路由I和路由2,則向PE-A2發(fā)送UPDATE報文,其中,UPDATE報文中的MP Unreach NLRI Label Stack字段攜帶了 PE-Al為路由I分配的私網(wǎng)標簽比如100,以及攜帶了 PE-Al為路由2分配的私網(wǎng)標簽比如300。當PE-A2收到來自PE-Al的UPDATE報文后,根據(jù)UPDATE報文中MP Unreach NLRI Label Stack字段攜帶的私網(wǎng)標簽識別出需 要撤銷的路由為兩條等價VPNV4路由即路由I和路由2并撤銷這兩條等價VPNV4路由。至此,完成了本發(fā)明提供的路由發(fā)布方法描述,下面對本發(fā)明提供的PE進行描述。參見圖5,圖5為本發(fā)明提供的PE結(jié)構(gòu)圖。該PE主要用于路由發(fā)布,包括路由接收單元,用于接收到N條具有相同地址前綴的私網(wǎng)路由,所述N大于等于
2;發(fā)布單元,用于在所述N條私網(wǎng)路由來自不同設備時,為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居設備;以及用于在所述N條私網(wǎng)路由均來自同一設備時,如果所述N條私網(wǎng)路由具有不同私網(wǎng)標簽,則將該來自于同一設備的N條具有相同地址前綴但不同私網(wǎng)標簽的私網(wǎng)路由確定為等價私網(wǎng)路由,并為該N條等價私網(wǎng)路由分配不同的私網(wǎng)標簽,發(fā)布至上游鄰居設備。優(yōu)選地,如圖5所示,所述PE進一步包括協(xié)商并使能單元,用于和所述上游鄰居設備協(xié)商并使能私網(wǎng)標簽能力,所述私網(wǎng)標簽能力包含所述發(fā)布單元執(zhí)行的操作;所述發(fā)布單元執(zhí)行的發(fā)布操作是在確定出所述PE已和所述上游鄰居設備協(xié)商了所述私網(wǎng)標簽等價能力后執(zhí)行的。本發(fā)明中,所述協(xié)商并使能單元通過向所述上游鄰居設備發(fā)送BGP中的OPEN報文來協(xié)商私網(wǎng)標簽能力,其中,所述OPEN報文通過擴展增加了用于協(xié)商所述私網(wǎng)標簽等價能力的字段來協(xié)商所述私網(wǎng)標簽等價能力。本發(fā)明中,所述私網(wǎng)標簽能力還包含用于釋放私網(wǎng)路由的功能;基于此,所述PE進一步包括釋放單元,用于基于所述私網(wǎng)標簽能力進一步包含的用于釋放私網(wǎng)路由的功能執(zhí)行私網(wǎng)路由釋放,具體為在需要釋放路由時,將該需要釋放的路由被分配的私網(wǎng)標簽告知給上游鄰居設備,以使上游鄰居PE根據(jù)接收的私網(wǎng)標簽釋放對應的路由;以及在接收到下游鄰居設備告知的需要釋放的路由被分配的私網(wǎng)標簽時,釋放該接收的私網(wǎng)標簽對應的路由。本發(fā)明中,所述需要釋放的路由被分配的私網(wǎng)標簽通過BGP協(xié)議中UPDATE報文的MP Unreach NLRI Label Stack 字段攜帶。至此,完成圖5所示的PE結(jié)構(gòu)描述。另外,本發(fā)明還提供了一種應用于報文傳輸?shù)腜E,其除了包含圖5所示的各個單元外,還進一步包括報文接收單元、路由確定單元和報文轉(zhuǎn)發(fā)單元,具體如圖6所示。其中,圖5所示的各個單元在此不再贅述。至于報文接收單元,其用于接收上游鄰居設備發(fā)送的報文,以及接收所述PE下連的用戶側(cè)設備CE發(fā)送的報文;報文轉(zhuǎn)發(fā)單元,用于在確定出來自所述上游鄰居設備的報文的入標簽為所述發(fā)布單元針對等價私網(wǎng)路由中的一條私網(wǎng)路由分配的私網(wǎng)標簽時,將該入標簽交換為本PE接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽并轉(zhuǎn)發(fā)所述報文;以及
在確定出用于發(fā)送來自所述CE的報文的路由為所述發(fā)布單元確定的等價私網(wǎng)路由時,從所述等價私網(wǎng)路由中選擇一條私網(wǎng)路由,在所述報文中添加所述PE在接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽來作為所述報文的入標簽并轉(zhuǎn)發(fā)所述報文。至此,完成圖6所示的結(jié)構(gòu)描述。由以上技術(shù)方案可以看出,本發(fā)明中,PE在本地接收到N條具有相同地址前綴的私網(wǎng)路由時,不管該N條私網(wǎng)路由是否攜帶相同RD,只要是從不同設備接收得到,則為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游PE,并非視為同一路由僅選擇其中一條路由發(fā)布;或者,即使是從同一設備接收得到,但如果具有不同私網(wǎng)標簽,則將該N條私網(wǎng)路由作為等價私網(wǎng)路由來維護,并非從接收的該N條私網(wǎng)路由中優(yōu)選一個,這保證了上游PE下的CE與本PE下發(fā)布了相同地址前綴的CE的互通。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應包含在本發(fā)明保護的范圍之內(nèi)。權(quán)利要求
1.一種路由發(fā)布方法,其特征在于,該方法包括 A,運營商邊緣設備PE接收到N條具有相同地址前綴的私網(wǎng)路由,所述N大于等于2 ; B,若所述PE確定N條私網(wǎng)路由來自于不同設備,則為所述N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居設備; 若所述PE確定N條私網(wǎng)路由均來自于同一設備,則在所述N條私網(wǎng)路由具有不同私網(wǎng)標簽時,將該來自于同一設備的N條具有相同地址前綴但不同私網(wǎng)標簽的私網(wǎng)路由確定為等價私網(wǎng)路由,并為該N條等價私網(wǎng)路由分配不同的私網(wǎng)標簽,發(fā)布至上游鄰居設備。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,在步驟B執(zhí)行之前,進一步包括所述PE和所述上游鄰居設備協(xié)商并使能私網(wǎng)標簽等價能力;所述私網(wǎng)標簽能力包含用于執(zhí)行步驟B中操作的功能; 步驟B中的發(fā)布操作包括確定本PE是否已和上游鄰居設備協(xié)商了所述私網(wǎng)標簽等價能力,如果是,則繼續(xù)執(zhí)行所述發(fā)布操作。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述PE和上游鄰居設備協(xié)商私網(wǎng)標簽能力包括 所述PE和上游鄰居設備通過交互邊界網(wǎng)關協(xié)議BGP中的OPEN報文協(xié)商私網(wǎng)標簽能力,其中,所述OPEN報文通過擴展來增加用于協(xié)商所述私網(wǎng)標簽等價能力的字段。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述私網(wǎng)標簽能力還包含用于釋放私網(wǎng)路由的功能; 該方法進一步包括 所述PE基于所述用于釋放私網(wǎng)路由的功能執(zhí)行私網(wǎng)路由釋放。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述PE基于所述用于釋放私網(wǎng)路由的功能執(zhí)行私網(wǎng)路由釋放具體包括 C,PE在需要釋放路由時,將該路由被分配的私網(wǎng)標簽告知給上游鄰居設備,以使上游鄰居設備根據(jù)接收的私網(wǎng)標簽釋放對應的路由; D,PE接收到下游鄰居設備告知的需要釋放的路由被分配的私網(wǎng)標簽時,釋放該接收的私網(wǎng)標簽對應的路由。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述需要釋放的路由被分配的私網(wǎng)標簽通過BGP協(xié)議中UPDATE報文的MP Unreach NLRI Label Stack字段攜帶。
7.—種報文傳輸方法,其特征在于,該方法包括 運營商邊緣設備PE接收到上游鄰居設備發(fā)送的報文; 所述PE確定所述報文的入標簽,如果該入標簽為本PE針對權(quán)利要求I至權(quán)利要求6任一方法確定的等價私網(wǎng)路由中的一條私網(wǎng)路由分配的私網(wǎng)標簽,則將該入標簽交換為本PE接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽并轉(zhuǎn)發(fā)所述報文;或者, PE接收到其下連的用戶側(cè)設備CE發(fā)送的報文; PE確定用于發(fā)送該報文的路由為權(quán)利要求I至權(quán)利要求6任一方法確定的等價私網(wǎng)路由,則從所述等價私網(wǎng)路由中選擇一條私網(wǎng)路由,在所述報文中添加本PE在接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽來作為所述報文的入標簽并轉(zhuǎn)發(fā)所述報文。
8.—種運營商邊緣設備PE,其特征在于,該PE用于路由發(fā)布,包括 路由接收單元,用于接收到N條具有相同地址前綴的私網(wǎng)路由,所述N大于等于2 ;發(fā)布單元,用于在所述N條私網(wǎng)路由來自不同設備時,為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居設備;以及用于在所述N條私網(wǎng)路由均來自同一設備時,如果所述N條私網(wǎng)路由具有不同私網(wǎng)標簽,則將該來自于同一設備的N條具有相同地址前綴但不同私網(wǎng)標簽的私網(wǎng)路由確定為等價私網(wǎng)路由,并為該N條等價私網(wǎng)路由分配不同的私網(wǎng)標簽,發(fā)布至上游鄰居設備。
9.根據(jù)權(quán)利要求8所述的PE,其特征在于,所述PE進一步包括 協(xié)商并使能單元,用于和所述上游鄰居設備協(xié)商并使能私網(wǎng)標簽能力,所述私網(wǎng)標簽能力包含所述發(fā)布單元執(zhí)行的操作; 所述發(fā)布單元執(zhí)行的發(fā)布操作是在確定出所述PE已和所述上游鄰居設備協(xié)商了所述私網(wǎng)標簽等價能力后執(zhí)行的。
10.根據(jù)權(quán)利要求9所述的PE,其特征在于,所述協(xié)商并使能單元通過向所述上游鄰居設備發(fā)送邊界網(wǎng)關協(xié)議BGP中的OPEN報文來協(xié)商私網(wǎng)標簽能力,其中,所述OPEN報文通過擴展增加了用于協(xié)商所述私網(wǎng)標簽等價能力的字段來協(xié)商所述私網(wǎng)標簽等價能力。
11.根據(jù)權(quán)利要求9所述的PE,其特征在于,所述私網(wǎng)標簽能力還包含用于釋放私網(wǎng)路由的功能; 所述PE進一步包括 釋放單元,用于基于所述私網(wǎng)標簽能力進一步包含的用于釋放私網(wǎng)路由的功能執(zhí)行私網(wǎng)路由釋放,具體為在需要釋放路由時,將該需要釋放的路由被分配的私網(wǎng)標簽告知給上游鄰居設備,以使上游鄰居PE根據(jù)接收的私網(wǎng)標簽釋放對應的路由;以及在接收到下游鄰居設備告知的需要釋放的路由被分配的私網(wǎng)標簽時,釋放該接收的私網(wǎng)標簽對應的路由。
12.根據(jù)權(quán)利要求11所述的PE,其特征在于,所述需要釋放的路由被分配的私網(wǎng)標簽通過BGP協(xié)議中UPDATE報文的MP Unreach NLRI Label Stack字段攜帶。
13.—種運營商邊緣設備PE,其特征在于,該PE用于報文傳輸,包括如權(quán)利要求8至12任一 PE所包含的單元、報文接收單元和報文轉(zhuǎn)發(fā)單元; 其中,報文接收單元,用于接收上游鄰居設備發(fā)送的報文,以及接收所述PE下連的用戶側(cè)設備CE發(fā)送的報文; 報文轉(zhuǎn)發(fā)單元,用于在確定出來自所述上游鄰居設備的報文的入標簽為所述發(fā)布單元針對等價私網(wǎng)路由中的一條私網(wǎng)路由分配的私網(wǎng)標簽時,將該入標簽交換為本PE接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽并轉(zhuǎn)發(fā)所述報文;以及, 在確定出用于發(fā)送來自所述CE的報文的路由為所述發(fā)布單元確定的等價私網(wǎng)路由時,從所述等價私網(wǎng)路由中選擇一條私網(wǎng)路由,在所述報文中添加所述PE在接收到該私網(wǎng)路由時該私網(wǎng)路由攜帶的私網(wǎng)標簽來作為所述報文的入標簽并轉(zhuǎn)發(fā)所述報文。
全文摘要
本發(fā)明提供了路由發(fā)布方法和PE。該方法包括運營商邊緣設備PE接收N條具有相同地址前綴的私網(wǎng)路由,N大于等于2,當該N條私網(wǎng)路由來自于不同設備時,為該N條私網(wǎng)路由分配不同的私網(wǎng)標簽,并發(fā)布至上游鄰居設備,當該N條私網(wǎng)路由均來自于同一設備時,如果所述N條私網(wǎng)路由具有不同私網(wǎng)標簽,則將所述N條私網(wǎng)路由作為等價私網(wǎng)路由,并為該N條等價私網(wǎng)路由分配不同的私網(wǎng)標簽,發(fā)布至上游鄰居設備。本發(fā)明能夠保證上游鄰居設備下連的CE同時與本PE下連的發(fā)布了相同地址前綴的所有CE互通。
文檔編號H04L12/46GK102638413SQ20121015071
公開日2012年8月15日 申請日期2012年5月14日 優(yōu)先權(quán)日2012年5月14日
發(fā)明者趙昌峰 申請人:杭州華三通信技術(shù)有限公司