專利名稱::自治系統(tǒng)邊界路由器路由發(fā)布方法及自治系統(tǒng)邊界路由器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及路由技術(shù),尤其涉及一種自治系統(tǒng)邊界路由器(ASBR)上的路由發(fā)布方法及一種自治系統(tǒng)邊界路由器。
背景技術(shù):
:邊界網(wǎng)關(guān)協(xié)議(BGP,BorderGatewayProtocol)多協(xié)議標(biāo)簽轉(zhuǎn)發(fā)(MPLS,MultipleProtocolLabelSwitch)因特網(wǎng)協(xié)議(IP)虛擬專用網(wǎng)(VPN,VirtulPrivateNetwork)即BGPMPLSIPVPN是一種基于服務(wù)提供商邊緣路由器(PE,ProviderEdge)的3層VPN(L3VPN)技術(shù),它使用BGP在服務(wù)4是供商骨干網(wǎng)上發(fā)布VPN路由,使用MPLS在服務(wù)提供商骨干網(wǎng)上轉(zhuǎn)發(fā)VPN報文,組網(wǎng)方式靈活、可擴展性好,應(yīng)用也越來越廣泛。參見圖1所示的BGPMPLSIPVPN模型示意圖,主要包括用戶網(wǎng)絡(luò)邊緣設(shè)備(CE,CustomerEdge)、PE和服務(wù)提供商網(wǎng)絡(luò)骨干路由器(P,Provider)三部分。其中,CE可以為路由器、交換機、或主機等,有接口直接與服務(wù)提供商(SP,ServiceProvider)網(wǎng)絡(luò)相連;PE是服務(wù)提供商網(wǎng)絡(luò)的邊緣設(shè)備,與CE直接相連,對VPN的所有處理都發(fā)生在PE上;P不與CE直接相連,只需具備基本MPLS轉(zhuǎn)發(fā)能力,不維護VPN信息。VPN實例(VPN-instance)是PE為直4妄相連的地址(site)建立并維護的一個專門實體,也稱VPN路由碑爭發(fā)表(VRF,VPNRoutingandForwardingtable)或一個地址轉(zhuǎn)發(fā)表(per-siteforwardingtable)。VPN實例與site對應(yīng),每個site在PE上都有自己的VPN實例,每條CE與PE的連接對應(yīng)一個VPN實例。PE上的各VPN實例之間相互獨立,與公網(wǎng)路由表相互獨立,可以將每個VPN實例看作一臺虛擬的路由器,維護獨立的地址空間、有連接到該路由器的接口。PE上存在多個轉(zhuǎn)發(fā)表,包括一個公網(wǎng)路由表以及一個或多個VRF,公網(wǎng)路由表中包括所有PE和P路由器的路由,VPN實例中包括直連site的5各由。PE從CE接收到普通因特網(wǎng)協(xié)議第4版(IPv4)路由后,需要將這些私網(wǎng)路由引入到公網(wǎng)路由表中,發(fā)布給其他PE。傳統(tǒng)BGP無法正確處理地址空間重疊的VPN路由,因為BGP無法區(qū)分不同VPN中相同的IP地址前綴,為解決這一問題,BGPMPLSIPVPN引入了VPN-IPv4地址族。VPN-IPv4地址共12字節(jié),包括8字節(jié)的RD和4字節(jié)的IPv4地址前綴,其中,RD用于區(qū)分使用相同地址空間的IPv4前綴,RD為0的VPN-IPv4地址相當(dāng)于普通IPv4地址。PE從CE接收到普通IPv4路由后,轉(zhuǎn)換為VPN-IPv4路由,進行私網(wǎng)路由在公網(wǎng)上的傳輸。多協(xié)議BGP(MP-BGP,MultiprotocolextensionsforBGP-4)用于在PE路由器之間傳播VPN組成信息和VPN-IPv4路由,MP-BGP向下兼容,既可以支持傳統(tǒng)的IPv4地址族,又可以支持其它地址族,如VPN-IPv4地址族、IPv6地址族等。實際組網(wǎng)應(yīng)用中,某用戶一個VPN的多個Site可能會連接到使用不同自治系統(tǒng)(AS)的多個服務(wù)提供商,或一個服務(wù)提供商的多個AS,這種VPN跨越多個AS的應(yīng)用方式稱為跨域VPN?,F(xiàn)有技術(shù)中提出了三種跨域VPN解決方案,分別為跨域A(Inter-ProviderBackbonesOptionA)、跨域B(Inter-ProviderBackbonesOptionB)、跨域C(Inter-ProviderBackbonesOptionC)。在跨域B中,ASBR間通過MP-EBGP交換從各自AS的PE路由器接收到的標(biāo)簽VPN-IPv4路由,參見圖2所示,ASlOO內(nèi)的PE先通過MP-IBGP方式把標(biāo)簽VPN-IPv4路由發(fā)布給ASlOO的邊界路由器ASBR1;ASBR1通過MP-EBGP方式4巴標(biāo)簽VPN-IPv4^各由發(fā)布給AS200的邊界^各由器ASBR2;ASBR2再通過MP-IBGP方式把標(biāo)簽VPN-IPv4路由發(fā)布給AS200內(nèi)的PE。兩個ASBR之間運行MP-EBGP協(xié)議,MP-EBGP協(xié)議將一個域內(nèi)的所有VPN信息傳遞給另外一個域,傳遞的是私網(wǎng)路由和標(biāo)簽信息。根據(jù)一個標(biāo)簽(Per-Instance)的分配原則,當(dāng)一個路由的下一跳(Nexthop)被改變時,必須在本地更換標(biāo)簽,因此,ASBR在收到域內(nèi)的VPN路由信息,再向外發(fā)布時,必須給這些VPN路由信息重新分配標(biāo)簽,VPN路由信息伴隨著新的標(biāo)簽被發(fā)布出去,而在ASBR本地,新舊標(biāo)簽形成一個標(biāo)簽的交換才喿作。對端的ASBR收到從MP-EBGP來的VPN路由信息后,在本地保存,再繼續(xù)向自己域內(nèi)的PE設(shè)備擴散。下面結(jié)合圖3并舉例對跨域VPN中的路由發(fā)布方法進行說明ASBR1從PE1收到VPN-IPv4路由10.0.0.0/8,該路由的下一跳為PE1,攜帶的私網(wǎng)標(biāo)簽(Label)為LI;ASBR1在向ASBR2發(fā)布路由時,為路由10.0.0.0/8重新分配標(biāo)簽L2,并在本地生成標(biāo)簽交換映射ILM表項(InLabel/OutLabel:L2/L1),也就是"i兌,入標(biāo)簽InLabel為L2,出標(biāo)簽OutLabel為Ll,同時4巴下一跳改為自己的地址ASBR1。ASBR2從ASBR1收到VPN-IPv4路由10.0.0.0/8,該路由的下一跳為ASBR1,攜帶的私網(wǎng)標(biāo)簽為L2;ASBR2在向PE2發(fā)布路由時,為路由10.0.0.0/8重新分配標(biāo)簽L3,并在本地生成標(biāo)簽交換映射ILM表項(InLabel/OutLabel:L3/L2),同時把下一跳改為自己的地址ASBR2??梢?,現(xiàn)有技術(shù)中ASBR要為每條VPN-IPv4路由重新分配一個標(biāo)簽,同時為每個新分配的標(biāo)簽都要對應(yīng)創(chuàng)建一個ILM,并且這些ILM都要^皮廣播到各個接口板。但是,在實際應(yīng)用中,ASBR往往需要保存并發(fā)布域內(nèi)和域外的大量VPN-IPv4路由,這就需要占用大量標(biāo)簽,創(chuàng)建大量ILM。由于標(biāo)簽資源是有限的,且系統(tǒng)對ILM的存儲和處理能力也是有限的,因此,現(xiàn)有的跨J或B中的路由發(fā)布方法容易造成標(biāo)簽資源的浪費;另外,在ASBR上創(chuàng)建大量的ILM容易造成轉(zhuǎn)發(fā)層面的負(fù)擔(dān),且這些ILM都要被廣播到各個接口板,主控板和接口板之間需要不斷刷新轉(zhuǎn)發(fā)信息,容易造成內(nèi)存資源的浪費,這樣的標(biāo)簽分配方式可能會造成系統(tǒng)無法滿足某些應(yīng)用環(huán)境的需求。
發(fā)明內(nèi)容本發(fā)明的目的在于提供一種ASBR上的路由發(fā)布方法及一種自治系統(tǒng)邊界路由器,節(jié)省標(biāo)簽資源。為達(dá)到上述目的,本發(fā)明提供的5^由發(fā)布方法如下自治系統(tǒng)邊界路由器ASBR為收到的下一跳、出標(biāo)簽分別相同的路由分配相同的入標(biāo)簽,并將所述路由發(fā)布出去。其中,所述分配包括Al、ASBR收到路由后,判斷是否存在與該路由的下一跳、出標(biāo)簽分別相同的已發(fā)布路由,如果存在,則執(zhí)行步驟Bl,否則,執(zhí)行步驟C1;Bl、將該已發(fā)布路由的入標(biāo)簽作為收到路由的入標(biāo)簽,并將收到的路由發(fā)布出去,結(jié)束本流程的處理;Cl、為收到的路由分配入標(biāo)簽,并將收到的路由發(fā)布出去。所述步驟C1進一步包括ASBR根據(jù)所述收到路由的出標(biāo)簽及為該路由分配的入標(biāo)簽,生成標(biāo)簽交換映射ILM表項。步驟C1所述為收到的路由分配的入標(biāo)簽與步驟B1所述已發(fā)布路由的入標(biāo)簽不同。ASBR建立包含已發(fā)布路由的下一跳、出標(biāo)簽和入標(biāo)簽的數(shù)據(jù)結(jié)構(gòu)并保存,所述分配包括A2、ASBR收到路由后,判斷該路由的下一跳和出標(biāo)簽是否已包含在所述數(shù)據(jù)結(jié)構(gòu)中,如果是,則執(zhí)行步驟B2,否則,執(zhí)行步驟C2;B2、ASBR將所述數(shù)據(jù)結(jié)構(gòu)中與收到路由的下一跳和出標(biāo)簽相對應(yīng)的入標(biāo)簽,作為收到路由的入標(biāo)簽,并將收到的路由發(fā)布出去;C2、ASBR為收到的路由分配入標(biāo)簽,并將收到的路由發(fā)布出去。所述步驟C2進一步包括ASBR根據(jù)所述收到路由的出標(biāo)簽及為該路由分配的入標(biāo)簽,生成標(biāo)簽交換映射ILM表項;并將所述收到路由的下一跳、出標(biāo)簽和入標(biāo)簽以所述數(shù)據(jù)結(jié)構(gòu)形式保存。步驟C2所述為收到的路由分配的入標(biāo)簽與采用所述數(shù)據(jù)結(jié)構(gòu)形式保存的入標(biāo)簽不同。所述分配包括對于來自同一服務(wù)提供商邊緣路由器PE的路由,ASBR為具有相同出標(biāo)簽的路由分配相同的入標(biāo)簽;對于來自不同PE的路由,ASBR為具有相同出標(biāo)簽及相同下一跳的路由分配相同的入標(biāo)簽。所述路由為虛擬專用網(wǎng)-因特網(wǎng)協(xié)議第4版VPN-IPv4路由。本發(fā)明還提供了一種自治系統(tǒng)邊界路由器,該路由器包括輸入單元、標(biāo)簽分配單元和輸出單元,其中,輸入單元用于接收路由,并將收到的路由發(fā)送給標(biāo)簽分配單元;標(biāo)簽分配單元用于為收到的下一跳、出標(biāo)簽分別相同的路由分配相同的入標(biāo)簽,并將該路由發(fā)送給輸出單元;輸出單元用于將收到的路由發(fā)布出去。由此可見,本發(fā)明中ASBR在發(fā)布路由時,為收到的下一跳、出標(biāo)簽分別相同的路由分配相同的入標(biāo)簽,而不是為每條路由都重新分配一個標(biāo)簽,這樣可以大大節(jié)省標(biāo)簽資源。另外,本發(fā)明只需在分配新的入標(biāo)簽時才創(chuàng)建ILM,可以避免創(chuàng)建大量的ILM,從而減輕了轉(zhuǎn)發(fā)層面的負(fù)擔(dān),減少了轉(zhuǎn)發(fā)信息在主控板和接口板之間的刷新,節(jié)省了內(nèi)存資源。圖1為現(xiàn)有技術(shù)中的BGPMPLSIPVPN模型示意圖。圖2為現(xiàn)有^支術(shù)中ASBR間通過MP-EBGP發(fā)布標(biāo)簽VPN-IPv4路由的組網(wǎng)示意圖。圖3為現(xiàn)有技術(shù)中的路由發(fā)布過程示意圖。圖4為本發(fā)明中的自治系統(tǒng)邊界路由器結(jié)構(gòu)示意圖。圖5為本發(fā)明中路由發(fā)布實施例的流程圖。圖6為本發(fā)明具體實施例一中的路由發(fā)布過程示意圖。圖7為本發(fā)明具體實施例二中的路由發(fā)布過程示意圖。具體實施例方式為孑吏本發(fā)明的目的、4支術(shù)方案及優(yōu)點更加清楚明白,下面參照附圖并舉實施例,對本發(fā)明作進一步詳細(xì)說明。在跨域B中,當(dāng)PE上的VPN-instance采用Per-instance的標(biāo)簽分配方式時,來自同一個VPN-instance的路由標(biāo)簽相同,這時,ASBR沒有必要為每條路由新分配標(biāo)簽,針對來自同一VPN-instance且出標(biāo)簽相同的路由,ASBR可以只分配一個標(biāo)簽,且只生成一個ILM,這樣并不影響正常的數(shù)據(jù)轉(zhuǎn)發(fā)。當(dāng)ASBR要發(fā)布一條路由,且該路由的下一跳被改變,必須在本地更換標(biāo)簽時,ASBR是為該路由重新分配一個標(biāo)簽,還是使用與其它路由相同的標(biāo)簽,這需要在ASBR上進行決策。本發(fā)明提供的路由發(fā)布方法的基本思想是ASBR在發(fā)布路由時,為收到的下一跳、出標(biāo)簽分別相同的路由分配相同的入標(biāo)簽,并將所述路由發(fā)布出去。針對本發(fā)明所提供的路由發(fā)布方法,本發(fā)明還提供了一種自治系統(tǒng)邊界路由器,參見圖4所示,該^各由器包括輸入單元、標(biāo)簽分配單元和輸出單元,其中,輸入單元用于接收路由,并將收到的路由發(fā)送給標(biāo)簽分配單元;標(biāo)簽分配單元用于為收到的下一跳、出標(biāo)簽分別相同的各由分配相同的入標(biāo)簽,并將該路由發(fā)送給輸出單元;輸出單元用于將收到的路由發(fā)布出去。其中,所述i各由發(fā)布過程具體包括ASBR收到路由后,查找本地^各由表,判斷是否存在下一跳與收到路由的下一跳相同、且出標(biāo)簽與收到路由的出標(biāo)簽也相同的已發(fā)布路由,如果存在,則將該已發(fā)布路由的入標(biāo)簽作為收到路由的入標(biāo)簽,并將收到的路由發(fā)布出去;如果不存在,則為收到的路由重新分配一個入標(biāo)簽,并根據(jù)收到路由的出標(biāo)簽及為該路由分配的入標(biāo)簽,生成一個標(biāo)簽交換映射ILM表項,然后將收到的路由發(fā)布出去。當(dāng)然,這里為收到的路由重新分配的入標(biāo)簽應(yīng)當(dāng)與已發(fā)布路由的入標(biāo)簽不相同。對應(yīng)圖4所示的自治系統(tǒng)邊界路由器,其中,所述查找及分配標(biāo)簽的過程可以由標(biāo)簽分配單元來完成。200610098586.5說明書第7/12頁另外,ASBR還可以建立一個包含已發(fā)布路由的下一跳Nexthop、出標(biāo)簽OutLabel和入標(biāo)簽InLabel的數(shù)據(jù)結(jié)構(gòu)并保存,比如,將該數(shù)據(jù)結(jié)構(gòu)稱為NextH叩Labelentry,筒稱為NHL—entry,以Nexthop和OutLabel為鍵值。這片羊,ASBR在發(fā)布路由時,可以按照圖5所示的流程進行處理,主要包括以下步驟步驟501:ASBR收到路由后,才艮據(jù)該路由的下一跳和出標(biāo)簽查找NHL—entry列表,判斷該路由的下一跳和出標(biāo)簽是否已包含在NHL—entry列表中,也就是說,在NHL—entry列表中查找是否存在與該收到路由的下一跳和出標(biāo)簽相對應(yīng)的入標(biāo)簽,如果存在,則執(zhí)行步驟502;否則,執(zhí)行步驟503。步驟502:ASBR將NHL一entry中與收到路由的下一跳和出標(biāo)簽相對應(yīng)的入標(biāo)簽,作為收到路由的入標(biāo)簽,并執(zhí)行步驟504,步驟503:ASBR為收到的路由重新分配入標(biāo)簽。同時,ASBR根據(jù)收到路由的出標(biāo)簽及為該路由分配的入標(biāo)簽,生成一個標(biāo)簽交換映射ILM表項,并創(chuàng)建一個NHL—entry,使用該收到路由的下一跳、出標(biāo)簽和入標(biāo)簽為NHL一entry中的各元素賦值。當(dāng)然,這里為收到的路由重新分配的入標(biāo)簽應(yīng)當(dāng)與采用NHL—entry形式保存的入標(biāo)簽不相同。步驟504:ASBR將收到的路由發(fā)布出去。對應(yīng)圖4所示的自治系統(tǒng)邊界路由器,其中,步驟501所述查找及步驟502、503可以由標(biāo)簽分配單元來完成,步驟504由輸出單元來完成。為便于理解,下面參照兩個具體實施例,對本發(fā)明中的路由發(fā)布方法進4亍詳纟田闡述。實施例一、ASBR從一個PE收到多個VPN的路由的情況參見圖6所示,ASBR1僅與PE1相連,PE1上配置兩個VPN-instance:VPN1和VPN2,均采用Per-instance的標(biāo)簽分配方式。VPN1的RD是100:1,假設(shè)有三條路由:10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,由于采用Per-instance的標(biāo)簽分配方式,因此,這些路由在以VPN-IPv4路由的形式向ASBR1發(fā)布時,均使用相同的標(biāo)簽Lm。VPN2的RD是100:2,同樣假設(shè)有三條路由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,這里假設(shè)VPNl和VPN2存在地址重疊,當(dāng)然,VPN1和VPN2的地址也可以不同。同理,由于采用Per-instance的標(biāo)簽分配方式,這些路由在以VPN-IPv4路由的形式向ASBR1發(fā)布時,均使用相同的標(biāo)簽Ln。其中,Lm不等于Ln,因為PE1不會為不同的VPN-instance分配相同的標(biāo)簽。ASBR1從PE1收到的VPN-IPv4路由的情況如下RD為100:1的路由有三條,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,下一跳均為PE1,出標(biāo)簽均為Lm;RD為100:2的路由也有三條,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,下一3兆均為PE1,出標(biāo)簽均為Ln。ASBR1向ASBR2發(fā)布這些路由時,可以為出標(biāo)簽為Lm的三條路由10.1.0.0/16、10.2.0.0/16,10.3.0.0/16分配相同的入標(biāo)簽Lj,并生成一個ILM表項UnLabel/0utLabel:Lj/Lm);為出標(biāo)簽為Ln的三條路由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16分配相同的入標(biāo)簽Lk,并生成一個ILM表項(InLabel/OutLabel:Lk/Ln)。其中,Lj不等于Lk。ASBR2從ASBR1收到的VPN-IPv4路由的情況如下RD為100:1的路由有三條,分別為10丄0.0A6、10.2.0.0/16、10.3.0.0/16,下一跳均為ASBR1,出標(biāo)簽均為Lj;RD為100:2的路由也有三條,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,下一跳均為ASBR1,出標(biāo)簽均為Lk。ASBR2向PE2發(fā)布這些路由時,可以為出標(biāo)簽為Lj的三條i各由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16分配相同的入標(biāo)簽Lx,并生成一個ILM表項UnLabel/OutLabel:Lx/Lj);為出標(biāo)簽為Lk的三條路由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16分配相同的入標(biāo)簽Ly,并生成一個ILM表項(InLabel/OutLabel:Ly/Lk)。其中,Lx不等于Ly。PE2從ASBR2收到的VPN-IPv4路由的情況如下RD為100:1的路由有三條,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,下一跳均為ASBR2,出標(biāo)簽均為Lx;RD為100:2的路由有三條,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,下一i兆均為ASBR2,出標(biāo)簽均為Ly。在轉(zhuǎn)發(fā)時,假設(shè)CE3有數(shù)據(jù)要轉(zhuǎn)發(fā)到CE1,目的地址為lO丄l.l。PE2收到CE3發(fā)出的IP報文后,查找VPN1的轉(zhuǎn)發(fā)信息庫(FIB)表,得到對應(yīng)的路由10.1.0.0/16,出標(biāo)簽為Lx,PE2為IP報文打上內(nèi)層標(biāo)簽Lx,通過PE2到ASBR2的隧道發(fā)送到ASBR2;ASBR2收到MPLS報文后,才艮據(jù)內(nèi)層標(biāo)簽Lx,查找到對應(yīng)的ILM表項(InLabel/OutLabel:Lx/Lj),進行標(biāo)簽交換,內(nèi)層標(biāo)簽變成Lj,然后把交換標(biāo)簽后的MPLS報文發(fā)送到ASBRl;ASBR1收到ASBR2發(fā)送來的MPLS報文后,根據(jù)內(nèi)層標(biāo)簽Lj,查找到對應(yīng)的ILM表項(InLabel/OutLabel:Lj/Lm),進行標(biāo)簽交換,內(nèi)層標(biāo)簽變成Lm,然后對巴交換標(biāo)簽后的MPLS報文通過ASBR1到PE1的隧道發(fā)送到PE1;PE1收到ASBRl發(fā)送來的MPLS才艮文后,彈出內(nèi)層標(biāo)簽Lm,查找Lm對應(yīng)的VPN1實例的FIB表,成功把IP報文轉(zhuǎn)發(fā)給CE1??梢姡瑢τ趤碜酝籔E的^各由,ASBR可以為具有相同出標(biāo)簽的路由分配相同的入標(biāo)簽。因為對于僅從一個PE收到的VPN-IPv4路由,不同的出標(biāo)簽就代表它們一定來自于不同的VPN-instance,根據(jù)出標(biāo)簽的不同,這些路由可以被分為不同的集合,具有相同出標(biāo)簽的路由屬于同一個集合,同一個集合中的路由可以被分配相同的入標(biāo)簽,發(fā)布給對端的ASBR。實施例二、ASBR從多個PE收到多個VPN的^各由的情況參見圖7所示,ASBRl分另'J與PE1和PE3相連,PE1和PE3上各配置兩個VPN-instance:VPN1和VPN2,均采用Per-instance的標(biāo)簽分配方式。PE1上VPN1的RD是100:1,假設(shè)有三條路由:10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,由于采用Per-instance的標(biāo)簽分配方式,因此,這些路由在以VPN-IPv4路由的形式向ASBRl發(fā)布時,均使用相同的標(biāo)簽Lm。VPN2的RD是100:2,同樣假設(shè)有三條路由:10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,這些路由在以VPN-IPv4路由的形式向ASBRl發(fā)布時,均使用相同的標(biāo)簽Ln。這里仍然假設(shè)VPN1f口VPN2存在地址重疊,當(dāng)然,VPN1和VPN2的地址也可以不同。PE3上VPN1的RD是100:1,假設(shè)有三條J各由20.1.0.0/16、20.2.0.0/16、20.3.0.0/16,這些路由在以VPN-IPv4路由的形式向ASBR1發(fā)布時,均使用相同的標(biāo)簽Lm。VPN2的RD是100:2,同樣假設(shè)有三條路由20.1.0.0/16、20.2.0.0/16、20.3.0.0/16,這些路由在以VPN-IPv4路由的形式向ASBR1發(fā)布時,均使用相同的標(biāo)簽Ln。這里,PE1上VPN1路由分配的標(biāo)簽與PE3上VPN1^各由分配的標(biāo)簽相同,PE1上VPN2路由分配的標(biāo)簽與PE3上VPN2路由分配的標(biāo)簽相同,因為在不同的PE上,為VPN-instance分配的標(biāo)簽可能相同。當(dāng)然,也可以分別分配不同的標(biāo)簽。ASBR1從PE1收到的VPN-IPv4路由的情況如下RD為100:1的路由有三條,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,下一跳均為PE1,出標(biāo)簽均為Lm;RD為100:2的路由也有三條,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16,下一if兆均為PE1,出才示簽均為Ln。ASBR1從PE3收到的VPN-IPv4路由的情況如下RD為100:1的路由有三條,分別為20.1.0.0/16、20.2.0.0/16、20.3.0.0/16,下一跳均為PE3,出標(biāo)簽均為Lm;RD為100:2的路由也有三條,分別為20.1.0.0/16、20.2.0.0/16、20.3.0.0/16,下一跳均為PE3,出標(biāo)簽均為Ln。也就是說,在ASBR1上,在RD為100:1的路由表中,有6條路由的出標(biāo)簽都是Lm,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16、20.1.0.0/16、20.2.0.0/16、20.3.0.0/16。在RD為100:2的路由表中,也有6條路由的出標(biāo)簽都是Ln,分別為10.1.0.0/16、10.2.0.0/16、10.3.0.0/16、20.1.0.0/16、20.2.0.0/16、20.3.0.0/16。這時,ASBR1向ASBR2發(fā)布這些路由時,就不能僅僅根據(jù)出標(biāo)簽相同而決定發(fā)布相同的標(biāo)簽。如果對出標(biāo)簽為Lm的6條^各由都使用相同標(biāo)簽Lj,同時生成一個ILM表項(InLabel/OutLabel:Lj/Lm),那么當(dāng)私網(wǎng)流量從ASBR2轉(zhuǎn)發(fā)過來時,內(nèi)層標(biāo)簽將為Lj,跟Lm交換后將無法轉(zhuǎn)發(fā)到正確的PE。因此,ASBR1必須同時考慮VPN-IPv4路由的下一跳,對于來自同一下一跳的路由,如果出標(biāo)簽相同,可以使用相同的入標(biāo)簽;對于來自不同下一跳的路由,即使出標(biāo)簽相同,也不能使用相同的入標(biāo)簽。如圖6所示,ASBR1向ASBR2發(fā)布這些路由時,可以為出標(biāo)簽為Lm,下一跳為PE1的三條路由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16分配相同的入標(biāo)簽Lj,并生成一個ILM表項(InLabel/OutLabel:Lj/Lm);為出標(biāo)簽為Ln,下一跳為PE1的三條路由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16分配相同的入標(biāo)簽Lk,并生成一個ILM表項(InLabel/OutLabel:Lk/Ln);為出標(biāo)簽為Lm,下一跳為PE3的三條路由20.1.0.0/16、20.2.0.0/16、20.3.0.0/16分配相同的入標(biāo)簽Lx,并生成一個ILM表項(InLabel/OutLabel:Lx/Lm);為出標(biāo)簽為Ln,下一跳為PE3的三條路由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16分配相同的入標(biāo)簽Ly,并生成一個ILM表項(InLabel/OutLabel:Ly/Ln)。其中,Lj、Lk、Lx、Ly互不相同。ASBR2將從ASBR1收到的VPN-IPv4路由向PE2轉(zhuǎn)發(fā)時,為出標(biāo)簽為Lj的三條路由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16分配相同的入標(biāo)簽La,并生成一個ILM表項(InLabel/OutLabel:La/Lj);為出標(biāo)簽為Lk的三條路由10.1.0.0/16、10.2.0.0/16、10.3.0.0/16分配相同的入標(biāo)簽Lb,并生成一個ILM表項(InLabel/OutLabel:Lb/Lk);為出標(biāo)簽為Lx的三條路由20.1.0.0/16、20.2.0.0/16、20.3.0.0/16分配相同的入標(biāo)簽Lc,并生成一個ILM表項(InLabel/OutLabel:Lc/Lx);為出標(biāo)簽為Ly的三條路由20丄0.0/16、20.2.0.0/16、20.3.0.0/16分配相同的入標(biāo)簽Ld,并生成一個ILM表項(InLabel/OutLabel:Ld/Ly)。其中,La、Lb、Lc、Ld互不相同??梢?,對于從多個PE收到的VPN-IPv4路由,不能僅僅根據(jù)出標(biāo)簽相同就決定分配相同的入標(biāo)簽,只有當(dāng)出標(biāo)簽和下一跳均相同時,才能分配相同的入標(biāo)簽。也就是說,對于來自不同PE的路由,ASBR為具有相同出標(biāo)簽及相同下一跳的路由分配相同的入標(biāo)簽。以上所述對本發(fā)明的目的、技術(shù)方案和有益效果進行了進一步的詳細(xì)說明,所應(yīng)理解的是,以上所述并不用以限制本發(fā)明,凡在本發(fā)明的4青神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。權(quán)利要求1、自治系統(tǒng)邊界路由器路由發(fā)布方法,其特征在于,該方法包括自治系統(tǒng)邊界路由器ASBR為收到的下一跳、出標(biāo)簽分別相同的路由分配相同的入標(biāo)簽,并將所述路由發(fā)布出去。2、根據(jù)權(quán)利要求1所述的方法,其特征在于,所述分配包括Al、ASBR收到路由后,判斷是否存在與該路由的下一跳、出標(biāo)簽分別相同的已發(fā)布路由,如果存在,則執(zhí)行步驟B1,否則,執(zhí)行步驟C1;Bl、將該已發(fā)布路由的入標(biāo)簽作為收到路由的入標(biāo)簽,并將收到的路由發(fā)布出去,結(jié)束本流程的處理;Cl、為收到的路由分配入標(biāo)簽,并將收到的路由發(fā)布出去。3、根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟C1進一步包括ASBR根據(jù)所述收到路由的出標(biāo)簽及為該路由分配的入標(biāo)簽,生成標(biāo)簽交換映射ILM表項。4、根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟C1所述為收到的路由分配的入標(biāo)簽與步驟Bl所述已發(fā)布路由的入標(biāo)簽不同。5、根據(jù)權(quán)利要求1所述的方法,其特征在于,ASBR建立包含已發(fā)布路由的下一跳、出標(biāo)簽和入標(biāo)簽的數(shù)據(jù)結(jié)構(gòu)并保存,所述分配包括A2、ASBR收到路由后,判斷該路由的下一跳和出標(biāo)簽是否已包含在所述數(shù)據(jù)結(jié)構(gòu)中,如果是,則執(zhí)行步驟B2,否則,執(zhí)行步驟C2;B2、ASBR將所述數(shù)據(jù)結(jié)構(gòu)中與收到路由的下一跳和出標(biāo)簽相對應(yīng)的入標(biāo)簽,作為收到路由的入標(biāo)簽,并將收到的路由發(fā)布出去;C2、ASBR為收到的路由分配入標(biāo)簽,并將收到的路由發(fā)布出去。6、根據(jù)權(quán)利要求5所述的方法,其特征在于,所述步驟C2進一步包括ASBR根據(jù)所述收到路由的出標(biāo)簽及為該路由分配的入標(biāo)簽,生成標(biāo)簽交換映射ILM表項;并將所述收到路由的下一跳、出標(biāo)簽和入標(biāo)簽以所述數(shù)據(jù)結(jié)構(gòu)形式保存。7、根據(jù)權(quán)利要求5所述的方法,其特征在于,步驟C2所述為收到的路由分配的入標(biāo)簽與采用所述數(shù)據(jù)結(jié)構(gòu)形式保存的入標(biāo)簽不同。8、根據(jù)權(quán)利要求1所述的方法,其特征在于,所述分配包括對于來自同一服務(wù)提供商邊緣路由器PE的路由,ASBR為具有相同出標(biāo)簽的路由分配相同的入標(biāo)簽;對于來自不同PE的路由,ASBR為具有相同出標(biāo)簽及相同下一跳的路由分配相同的入標(biāo)簽。9、根據(jù)權(quán)利要求1至8任一項所述的方法,其特征在于,所述路由為虛擬專用網(wǎng)-因特網(wǎng)協(xié)議第4版VPN-IPv4路由。10、一種自治系統(tǒng)邊界路由器,其特征在于,該路由器包括輸入單元、標(biāo)簽分配單元和輸出單元,其中,輸入單元用于4妻收路由,并將收到的^^由發(fā)送^^標(biāo)簽分配單元;標(biāo)簽分配單元用于為收到的下一跳、出標(biāo)簽分別相同的路由分配相同的入標(biāo)簽,并將該路由發(fā)送給輸出單元;輸出單元用于將收到的路由發(fā)布出去。全文摘要本發(fā)明公開了一種自治系統(tǒng)邊界路由器路由發(fā)布方法,該方法為自治系統(tǒng)邊界路由器ASBR在發(fā)布路由時,為收到的下一跳、出標(biāo)簽分別相同的路由分配相同的入標(biāo)簽,并將所述路由發(fā)布出去。本發(fā)明還公開了一種自治系統(tǒng)邊界路由器,該路由器主要包括輸入單元、標(biāo)簽分配單元和輸出單元。本發(fā)明所提供的方法及系統(tǒng)能夠節(jié)省標(biāo)簽資源,并且可以避免創(chuàng)建大量的標(biāo)簽交換映射ILM,節(jié)省內(nèi)存資源。文檔編號H04L12/66GK101106519SQ20061009858公開日2008年1月16日申請日期2006年7月12日優(yōu)先權(quán)日2006年7月12日發(fā)明者勇李申請人:華為技術(shù)有限公司