路由注入方法及裝置的制造方法
【專利摘要】本發(fā)明提供一種路由注入方法及裝置,所述方法包括:接收Controller發(fā)送的網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文中攜帶有目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;其中,所述目的路由信息是由所述Controller根據(jù)通過IBGP鄰居學(xué)習(xí)到的外部路由進(jìn)行路由計算得到的;根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。應(yīng)用本發(fā)明實施例可以避免用戶網(wǎng)絡(luò)中的設(shè)備進(jìn)行升級操作,增加能夠接入的設(shè)備的數(shù)量,并提高轉(zhuǎn)發(fā)性能。
【專利說明】
路由注入方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種路由注入方法及裝置。
【背景技術(shù)】
[0002]SDN(Software Defined Network,軟件定義網(wǎng)絡(luò))是一種新型的網(wǎng)絡(luò)架構(gòu),是網(wǎng)絡(luò)虛擬化的一種實現(xiàn)方式,其核心思想是將網(wǎng)絡(luò)設(shè)備控制平面與數(shù)據(jù)平面分離開來,從而實現(xiàn)網(wǎng)絡(luò)流量的靈活控制,使網(wǎng)絡(luò)作為管道變得更加智能。
[0003]在使用Netconf(—種基于XML(ExtensibleMarkup Language,可擴展標(biāo)記語言)的網(wǎng)絡(luò)配置)協(xié)議和BGP_LS(Border Gateway Protocol with Link State,鏈路狀態(tài)的邊界網(wǎng)關(guān)協(xié)議)協(xié)議的SDN網(wǎng)絡(luò)中,core設(shè)備(用戶核心設(shè)備)與ISP( Internet ServiceProvider,互聯(lián)網(wǎng)服務(wù)提供商)設(shè)備之間建立EBGP(External Border Gateway Protocol,外部邊界網(wǎng)關(guān)協(xié)議)鄰居,core設(shè)備與controIler(控制器,即SDN controlIer)之間建立IBGP(Internal Border Gateway Protocol,內(nèi)部邊界網(wǎng)關(guān)協(xié)議)鄰居。Controller通過BGP鄰居學(xué)習(xí)到所有的外部路由,并根據(jù)學(xué)習(xí)到的外部路由進(jìn)行路由計算之后,可以將路由信息通過Netconf協(xié)議注入到用戶網(wǎng)絡(luò)的所有設(shè)備(包括core設(shè)備和其它交換設(shè)備)上。
[0004]然而實踐發(fā)現(xiàn),在上述路由注入方案中,為了實現(xiàn)路由注入,用戶網(wǎng)絡(luò)中的所有設(shè)備均需要支持Netconf協(xié)議;此外,由于Contro 11 er—般接口數(shù)量很少,因此,當(dāng)通過Controller將路由注入到用戶網(wǎng)絡(luò)的所有設(shè)備時,能夠接入的設(shè)備數(shù)量會比較少,同時,由于Controller轉(zhuǎn)發(fā)能力較差,因此容易達(dá)到性能瓶頸。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供一種路由注入方法及裝置,以解決現(xiàn)有路由注入方案中為實現(xiàn)路由注入需要用戶網(wǎng)絡(luò)內(nèi)所有設(shè)備均支持Netconf協(xié)議且轉(zhuǎn)發(fā)性能容易達(dá)到瓶頸的問題。
[0006]根據(jù)本發(fā)明實施例的第一方面,提供一種路由注入方法,應(yīng)用于包括Controller、core設(shè)備以及R設(shè)備的SDN網(wǎng)絡(luò),所述core設(shè)備與ISP設(shè)備之間建立EBGP鄰居,所述Controller與所述core設(shè)備之間建立IBGP鄰居,所述SDN網(wǎng)絡(luò)中還包括BGP RR設(shè)備,所述BGP RR設(shè)備分別與所述core設(shè)備和R設(shè)備建立IBGP鄰居,該方法應(yīng)用于所述BGP RR設(shè)備,該方法包括:
[0007]接收Controller發(fā)送的網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文中攜帶有目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;其中,所述目的路由信息是由所述ControlIer根據(jù)通過IBGP鄰居學(xué)習(xí)到的外部路由進(jìn)行路由計算得到的;
[0008]根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0009]根據(jù)本發(fā)明實施例的第二方面,提供一種路由注入方法,應(yīng)用于包括Controller、core設(shè)備以及R設(shè)備的SDN網(wǎng)絡(luò),所述core設(shè)備與ISP設(shè)備之間建立EBGP鄰居,所述Controller與所述core設(shè)備之間建立IBGP鄰居,所述SDN網(wǎng)絡(luò)中還包括BGP RR設(shè)備,所述BGP RR設(shè)備分別與所述SDN網(wǎng)絡(luò)中的core設(shè)備或R設(shè)備建立IBGP鄰居,該方法應(yīng)用于所述Controller,該方法包括:
[0010]通過IBGP鄰居學(xué)習(xí)外部路由,并根據(jù)所述外部路由進(jìn)行路由計算得到目的路由信息,并確定所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;
[0011]向BGPRR設(shè)備發(fā)送網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文攜帶有目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,以使所述BGP RR設(shè)備根據(jù)所述標(biāo)識信息將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0012]根據(jù)本發(fā)明實施例的第三方面,提供一種路由注入裝置,應(yīng)用于包括Controller、core設(shè)備、R設(shè)備以及BGP RR設(shè)備的SDN網(wǎng)絡(luò)中的BGP RR設(shè)備,所述core設(shè)備與ISP設(shè)備之間建立EBGP鄰居,所述Controller與所述core設(shè)備之間建立IBGP鄰居,所述BGP RR設(shè)備分別與所述core設(shè)備和R設(shè)備建立IBGP鄰居,所述裝置包括:
[0013]接收單元,用于接收Contro I Ier發(fā)送的網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文中攜帶有目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;其中,所述目的路由信息是由所述ControlIer根據(jù)通過BGP鄰居學(xué)習(xí)到的外部路由進(jìn)行路由計算得到的;
[0014]發(fā)送單元,用于根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0015]根據(jù)本發(fā)明實施例的第四方面,提供一種路由注入裝置,應(yīng)用于包括Controller、core設(shè)備、R設(shè)備以及BGP RR設(shè)備的SDN網(wǎng)絡(luò)中的Controller,所述core設(shè)備與ISP設(shè)備之間建立EBGP鄰居,所述Controller與所述core設(shè)備之間建立IBGP鄰居,所述BGP RR設(shè)備分別與所述core設(shè)備和R設(shè)備建立IBGP鄰居,所述裝置包括:
[0016]路由學(xué)習(xí)單元,用于通過IBGP鄰居學(xué)習(xí)外部路由,并根據(jù)所述外部路由進(jìn)行路由計算,以得到對應(yīng)的目的路由信息,并確定所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;
[0017]發(fā)送單元,用于向BGP RR設(shè)備發(fā)送網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文攜帶有目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,以使所述BGP RR設(shè)備根據(jù)所述標(biāo)識信息將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0018]應(yīng)用本發(fā)明實施例,通過在SDN網(wǎng)絡(luò)中部署支持Netconf協(xié)議的BGPRR設(shè)備,當(dāng)Controller通過IBGP鄰居學(xué)習(xí)到外部路由,并進(jìn)行路由計算得到對應(yīng)的目的路由信息,并確定目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息后,通過Netconf報文將目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息發(fā)送給BGP RR設(shè)備,由BGP RR設(shè)備根據(jù)Netconf報文中攜帶的設(shè)備的標(biāo)識信息將對應(yīng)的目的路由信息發(fā)送給core設(shè)備或R設(shè)備,與現(xiàn)有路由注入方案中由Contro 11 er向用戶網(wǎng)絡(luò)中所有設(shè)備注入路由的實現(xiàn)相比,用戶網(wǎng)絡(luò)中的設(shè)備可以不用支持Netconf協(xié)議,避免了用戶網(wǎng)絡(luò)中的設(shè)備進(jìn)行升級操作;此外,通過BGP RR設(shè)備進(jìn)行路由轉(zhuǎn)發(fā),避免了由于Controller上接口少導(dǎo)致的能夠接入的設(shè)備少,以及Controller轉(zhuǎn)發(fā)能力差導(dǎo)致的轉(zhuǎn)發(fā)性能瓶頸,增加了能夠接入的設(shè)備的數(shù)量,提高了轉(zhuǎn)發(fā)性能。
【附圖說明】
[0019]圖1是本發(fā)明實施例提供的一種路由注入的網(wǎng)絡(luò)架構(gòu)示意圖;
[0020]圖2是本發(fā)明實施例提供的一種路由注入方法的流程示意圖;
[0021]圖3是本發(fā)明實施例提供的一種路由注入方法的流程示意圖;
[0022]圖4是本發(fā)明實施例提供的一種具體應(yīng)用場景的架構(gòu)示意圖;
[0023]圖5是本發(fā)明實施例提供的一種路由注入裝置的結(jié)構(gòu)示意圖;
[0024]圖6是本發(fā)明實施例提供的一種路由注入裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0025]為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實施例中的技術(shù)方案,并使本發(fā)明實施例的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明實施例中技術(shù)方案作進(jìn)一步詳細(xì)的說明。
[0026]下面先對本發(fā)明實施例適用的網(wǎng)絡(luò)架構(gòu)進(jìn)行描述。
[0027]請參見圖1,圖1為本發(fā)明實施例提供的一種路由注入的網(wǎng)絡(luò)架構(gòu)示意圖,如圖1所示,該網(wǎng)絡(luò)架構(gòu)通過在SDN網(wǎng)絡(luò)中部署支持Netconf協(xié)議的BGP RR(Route Reflector,路由反射器)設(shè)備,即該網(wǎng)絡(luò)架構(gòu)中包括Controllehcore設(shè)備、R設(shè)備(一種交換設(shè)備)以及BGPRR設(shè)備(core設(shè)備與ISP設(shè)備之間建立EBGP鄰居,Control Ier與core設(shè)備之間建立IBGP鄰居),并分別在BGP RR設(shè)備與SDN網(wǎng)絡(luò)中core設(shè)備和R設(shè)備之間建立BGP鄰居。當(dāng)Controller通過IBGP鄰居學(xué)習(xí)到外部路由,并根據(jù)該外部路由計算得到對應(yīng)的目的路由信息,并確定目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息之后,可以將該目的路由信息通過Netconf報文發(fā)送給BGP RR設(shè)備,其中,該Netconf報文中還包括各目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息。BGPRR設(shè)備接收到該Netconf報文后,可以根據(jù)該Netconf報文中攜帶的設(shè)備的標(biāo)識信息將對應(yīng)的目的路由信息發(fā)送給core設(shè)備或R設(shè)備;其中,該目的路由信息可以包括地址族信息、路由前綴、路由掩碼以及路由下一跳信息等。
[0028]基于圖1所示的網(wǎng)絡(luò)架構(gòu),本發(fā)明實施例提供的一種路由注入方法,請參見圖2,為本發(fā)明實施例提供的一種路由注入方法的流程示意圖,如圖2所示,該方法可以包括以下步驟:
[0029]需要說明的是,步驟201?步驟202的執(zhí)行主體可以為圖1所示網(wǎng)絡(luò)架構(gòu)中的Controller或Controller的處理器,如CPU(Center Process Unit,中央處理單元),為便于說明,以下以步驟201?步驟202的執(zhí)行主體為Controller為例進(jìn)行描述。
[0030]步驟201、通過IBGP鄰居學(xué)習(xí)外部路由,并根據(jù)外部路由進(jìn)行路由計算得到目的路由信息,并確定所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息。
[0031]本發(fā)明實施例中,core設(shè)備可以通過與ISP設(shè)備建立的EBGP鄰居學(xué)習(xí)外部路由,并將學(xué)習(xí)到的外部路由通過與Control Ier建立的IBGP鄰居發(fā)送給Control Ier Xontrol Ier接收到core設(shè)備發(fā)送的外部路由時,可以根據(jù)該外部路由進(jìn)行路由計算得到目的路由信息,并確定目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息。
[0032]其中,Controller根據(jù)外部路由進(jìn)行計算得到目的路由信息,并確定目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息時可以根據(jù)預(yù)先設(shè)定的業(yè)務(wù)邏輯(可以由用戶自定義)來進(jìn)行。
[0033]舉例來說,假設(shè)預(yù)先設(shè)定的業(yè)務(wù)邏輯為core設(shè)備能夠訪問外部網(wǎng)絡(luò)的IPl,R設(shè)備能夠訪問外部網(wǎng)絡(luò)的IP2;則Controller學(xué)習(xí)到外部路由后,可以根據(jù)學(xué)習(xí)到的外部路由分別計算得到core設(shè)備到IPl的目的路由信息(該目的路由信息對應(yīng)的設(shè)備即為core設(shè)備),以及R設(shè)備到IP2的目的路由信息(該目的路由信息對應(yīng)的設(shè)備即為R設(shè)備);其中,該目的路由信息可以包括但不限于地址族信息、路由前綴、路由掩碼以及路由下一跳信息等。
[0034]其中,設(shè)備的標(biāo)識信息可以為core設(shè)備或R設(shè)備的名稱、MAC(媒體訪問控制)地址、設(shè)備識別碼等可以在用戶網(wǎng)絡(luò)中唯一標(biāo)識該設(shè)備的信息。
[0035]優(yōu)選地,該設(shè)備的標(biāo)識信息可以為BGP RR設(shè)備上與core設(shè)備或R設(shè)備建立IBGP鄰居連接的接口地址。
[0036]步驟202、向BGP RR設(shè)備發(fā)送Netconf報文,該Netconf報文攜帶有目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,以使BGP RR設(shè)備根據(jù)該標(biāo)識信息將該目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0037]本發(fā)明實施例中,ControlIer通過路由計算得到目的路由信息之后,并不會直接將目的路由信息注入到用戶網(wǎng)絡(luò)的所有設(shè)備,而是會將該目的路由信息注入到BGP RR設(shè)備,由BGP RR設(shè)備將目的路由信息下發(fā)給core設(shè)備或R設(shè)備。
[0038]具體的,在本發(fā)明實施例中,ControIIer通過路由計算得到目的路由信息之后,可以向BGP RR設(shè)備發(fā)送攜帶有該目的路由信息的Netconf報文,其中,該Netconf報文除了攜帶目的路由信息之外,還需要攜帶各目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,該設(shè)備的標(biāo)識信息用于標(biāo)識對應(yīng)的目的路由信息需要下發(fā)給哪個設(shè)備(core設(shè)備或R設(shè)備)。例如,以上述步驟201中所舉示例為例,對于core設(shè)備到IPl的目的路由信息,Netconf報文中還需要攜帶core設(shè)備的標(biāo)識信息;對于設(shè)備R到IP2的目的路由信息,Netconf報文中還需要攜帶設(shè)備R的標(biāo)識信息。
[0039]本發(fā)明實施例中,BGP RR設(shè)備接收到Controller發(fā)送的Netconf報文之后,可以根據(jù)該Netconf報文中攜帶的目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將對應(yīng)的目的路由信息發(fā)送給core設(shè)備或R設(shè)備,其具體實現(xiàn)可以參見圖3所示方法流程中的相關(guān)描述,本發(fā)明實施例在此不再贅述。
[0040]基于圖1所示的網(wǎng)絡(luò)架構(gòu),本發(fā)明實施例提供的一種路由注入方法,請參見圖3,為本發(fā)明實施例提供的一種路由注入方法的流程示意圖,如圖3所示,該方法可以包括以下步驟:
[0041]需要說明的是,步驟301?步驟302的執(zhí)行主體可以為圖1所示網(wǎng)絡(luò)架構(gòu)中的BGPRR設(shè)備或BGP RR設(shè)備的處理器,如CPU,為便于說明,以下以步驟301?步驟302的執(zhí)行主體為BGP RR設(shè)備為例進(jìn)行描述。
[0042]步驟301、接收ControlIer發(fā)送的Netconf報文,該Netconf報文中攜帶有目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息。
[0043]本發(fā)明實施例中,Controller向BGPRR設(shè)備發(fā)送攜帶有目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息的具體實現(xiàn)可以參見上述步驟201?步驟202中的相關(guān)描述,本發(fā)明實施例在此不再贅述。
[0044]步驟302、根據(jù)目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將對應(yīng)的目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0045]本發(fā)明實施例中,BGP RR設(shè)備接收到Controller發(fā)送的Netconf報文之后,可以獲取該Netconf報文中攜帶的目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,并根據(jù)該設(shè)備的標(biāo)識信息將該目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0046]作為一種可選的實施方式,在本發(fā)明實施例中,根據(jù)目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將目的路由信息發(fā)送給core設(shè)備或R設(shè)備,可以包括:
[0047]根據(jù)目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,向core設(shè)備或R設(shè)備發(fā)送BGPUPDATE(更新)報文;BGP UPDATE報文攜帶有目的路由信息。
[0048]在該實施方式中,BGPRR設(shè)備獲取到Netconf報文中攜帶的目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息之后,可以將該目的路由信息攜帶在BGP UPDATE報文中,并根據(jù)目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將該攜帶有目的路由信息的BGP UPDATE報文發(fā)送給core設(shè)備或R設(shè)備,以使core設(shè)備或R設(shè)備接收到該BGP UPDATE報文后,解析出目的路由信息,并將目的路由信息下發(fā)到轉(zhuǎn)發(fā)表項中指導(dǎo)轉(zhuǎn)發(fā)。
[0049]例如,BGPRR設(shè)備可以將與core設(shè)備的標(biāo)識信息對應(yīng)的目的路由信息攜帶在BGPUPDATE報文中發(fā)送給core設(shè)備,并將與R設(shè)備的標(biāo)識信息對應(yīng)的目的路由信息攜帶在BGPUPDATE報文中發(fā)送給R設(shè)備。
[0050]可見,在圖1或圖2所示方法流程中,通過在SDN網(wǎng)絡(luò)中部署支持Netconf協(xié)議的BGPRR設(shè)備,當(dāng)Controller通過IBGP鄰居學(xué)習(xí)到外部路由,并進(jìn)行路由計算得到對應(yīng)的目的路由信息,并確定目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息后,通過Netconf協(xié)議向BGP RR設(shè)備進(jìn)行路由注入,由BGP RR設(shè)備分別通過與core設(shè)備或R設(shè)備建立的IBGP鄰居將對應(yīng)的目的路由信息發(fā)送給core設(shè)備或R設(shè)備,與現(xiàn)有路由注入方案中由Contro 11 er向用戶網(wǎng)絡(luò)中所有設(shè)備注入路由的實現(xiàn)相比,用戶網(wǎng)絡(luò)中的設(shè)備可以不用支持Netconf協(xié)議,避免了用戶網(wǎng)絡(luò)中的設(shè)備進(jìn)行升級操作;此外,通過BGP RR設(shè)備進(jìn)行路由轉(zhuǎn)發(fā),避免了由于Controller上接口少導(dǎo)致的能夠接入的設(shè)備少,以及Controller轉(zhuǎn)發(fā)能力差導(dǎo)致的轉(zhuǎn)發(fā)性能瓶頸,增加了能夠接入的設(shè)備的數(shù)量,提高了轉(zhuǎn)發(fā)性能。
[0051]為了使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明實施例提供的技術(shù)方案,下面結(jié)合具體的應(yīng)用場景對本發(fā)明實施例提供的技術(shù)方案進(jìn)行描述。
[0052]請參見圖4,圖4為本發(fā)明實施例提供的一種具體應(yīng)用場景的架構(gòu)不意圖,如圖4所示,該場景可以包括Controller、BGP RR設(shè)備、R設(shè)備、core設(shè)備以及ISP設(shè)備;其中,core設(shè)備與ISP設(shè)備之間建立EBGP鄰居,Controller設(shè)備與core設(shè)備之間建立IBGP鄰居,BGP RR設(shè)備分別與core設(shè)備和R設(shè)備建立IBGP鄰居。
[0053]基于圖4所示的應(yīng)用場景,路由注入的處理流程如下:
[0054]1、core設(shè)備通過EBGP鄰居學(xué)習(xí)ISP設(shè)備發(fā)送過來的兩條路由1.1.1.1/32和2.2.2.2/32;
[0055]2、core設(shè)備將這兩條路由通過IBGP鄰居發(fā)送給Control Ier ;
[0056]3、ControlIer學(xué)習(xí)到I.I.I.1/32和2.2.2.2/32這兩條路由;
[0057]4、Control Ier根據(jù)學(xué)習(xí)到的外部路由進(jìn)行路由計算(Control Ier進(jìn)行路由計算是按照用戶自定義的業(yè)務(wù)邏輯來進(jìn)行的,在該實施例中,假設(shè)用戶自定義的業(yè)務(wù)邏輯為core設(shè)備能夠訪問外部網(wǎng)絡(luò)的2.2.2.2/32,設(shè)備R能夠訪問外部網(wǎng)絡(luò)的1.1.1.1/32),并確定目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息。
[0058]其中,上述步驟I?步驟4的具體實現(xiàn)與現(xiàn)有路由注入方案中Controller學(xué)習(xí)外部路由,并根據(jù)學(xué)習(xí)到的外部路由進(jìn)行路由計算的實現(xiàn)相同,且在現(xiàn)有路由注入方案中,Controller通過路由計算得到目的路由信息后,需要由Controller直接通過Netconf向用戶網(wǎng)絡(luò)中的所有設(shè)備進(jìn)行路由注入。而在本發(fā)明實施例中,Controller通過計算得到目的路由信息之后的路由注入流程可以如下:
[0059]5、Controller通過Netconf協(xié)議向BGP RR設(shè)備注入路由2.2.2.2/32;
[0060]具體的,Controller可以向BGP RR設(shè)備發(fā)送攜帶有2.2.2.2/32對應(yīng)的目的路由以及目的路由對應(yīng)的設(shè)備的標(biāo)識信息的Netconf報文,其中,目的路由信息可以包括到2.2.2.2/32的路由信息(包括路由的地址族信息(I Pv4或IPv6 )、路由前綴以及路由掩碼)以及路由下一跳信息;目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息為該目的路由信息需要下發(fā)的設(shè)備的標(biāo)識信息。
[0061 ]在該實施例中,2.2.2.2/32對應(yīng)的目的路由信息中路由前綴為2.2.2.2,路由掩碼為32,路由下一跳信息為core設(shè)備通往外部ISP的地址,目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息為BGP RR設(shè)備上與core設(shè)備建立IBGP鄰居連接的接口地址(在Netconf報文中可以用Target (目標(biāo))-1P標(biāo)識)。
[0062]6、BGP RR設(shè)備接收到Controller發(fā)送的Netconf報文之后,解析出目的路由信息,并解析出設(shè)備的標(biāo)識信息;
[0063]7,BGP RR設(shè)備根據(jù)解析出的設(shè)備的標(biāo)識信息將解析出的目的路由信息通過標(biāo)準(zhǔn)的BGP UPDATE報文發(fā)送給core設(shè)備;
[0064]8、core設(shè)備接收到BGP UPDATE報文之后,解析出目的路由信息,將其下發(fā)到轉(zhuǎn)發(fā)表項中指導(dǎo)轉(zhuǎn)發(fā);
[0065]9、Controller通過Netconf協(xié)議向BGP RR設(shè)備注入路由 I.I.I.1/32;
[0066]具體的,Controller可以向BGP RR設(shè)備發(fā)送攜帶有1.1.1.1/32對應(yīng)的目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息的Netconf報文,其中,目的路由信息可以包括到1.1.1.1/32的路由信息以及路由下一跳信息;目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息為該目的路由信息需要下發(fā)的設(shè)備的標(biāo)識信息。
[0067]在該實施例中,1.1.1.1/32對應(yīng)的目的路由信息中路由前綴為1.1.1.1,路由掩碼為32,路由下一跳信息為設(shè)備R通往core設(shè)備的地址,目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息為BGP RR設(shè)備上與R設(shè)備建立IBGP鄰居連接的接口地址(在Netconf報文中可以用Target-1P標(biāo)識)。
[0068]10,BGP RR設(shè)備接收到Controller發(fā)送的Netconf報文之后,解析出目的路由信息,并解析出設(shè)備的標(biāo)識信息;
[0069]IUBGP RR設(shè)備根據(jù)解析出的設(shè)備的標(biāo)識信息將解析出的目的路由信息通過標(biāo)準(zhǔn)的BGP UPDATE報文發(fā)送給設(shè)備R;
[0070]12、設(shè)備R接收到BGP UPDATE報文之后,解析出目的路由信息,將其下發(fā)到轉(zhuǎn)發(fā)表項中指導(dǎo)轉(zhuǎn)發(fā)。
[0071]通過以上描述可以看出,在本發(fā)明實施例提供的技術(shù)方案中,通過在SDN網(wǎng)絡(luò)中部署支持Netconf協(xié)議的BGP RR設(shè)備,當(dāng)ControlIer通過BGP鄰居學(xué)習(xí)到外部路由,并進(jìn)行路由計算得到對應(yīng)的目的路由信息后,通過Netconf報文將目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息發(fā)送給BGP RR設(shè)備,由BGP RR設(shè)備根據(jù)Netconf報文中攜帶的設(shè)備的標(biāo)識信息將對應(yīng)的目的路由信息發(fā)送給core設(shè)備或R設(shè)備,與現(xiàn)有路由注入方案中由Controller向用戶網(wǎng)絡(luò)中所有設(shè)備注入路由的實現(xiàn)相比,用戶網(wǎng)絡(luò)中的設(shè)備可以不用支持Netconf協(xié)議,避免了用戶網(wǎng)絡(luò)中的設(shè)備進(jìn)行升級操作;此外,通過BGP RR設(shè)備進(jìn)行路由轉(zhuǎn)發(fā),避免了由于Controller上接口少導(dǎo)致的能夠接入的設(shè)備少,以及Controller轉(zhuǎn)發(fā)能力差導(dǎo)致的轉(zhuǎn)發(fā)性能瓶頸,增加了能夠接入的設(shè)備的數(shù)量,提高了轉(zhuǎn)發(fā)性能。
[0072]請參見圖5,為本發(fā)明實施例提供的一種路由注入裝置的結(jié)構(gòu)示意圖,其中,所述裝置可以應(yīng)用于圖1所示網(wǎng)絡(luò)架構(gòu)中的BGP RR設(shè)備,如圖5所示,該路由注入裝置可以包括:
[0073]接收單元510,用于接收Control Ier發(fā)送的網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文中攜帶有目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;其中,所述目的路由信息是由所述Controller根據(jù)通過BGP鄰居學(xué)習(xí)到的外部路由進(jìn)行路由計算得到的;
[0074]發(fā)送單元520,用于根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0075]在可選實施例中,所述發(fā)送單元520,可以具體用于根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,向core設(shè)備或R設(shè)備發(fā)送BGP更新UPDATE報文;所述BGP UPDATE報文攜帶有所述目的路由信息,所述目的路由信息包括地址族信息、路由前綴、路由掩碼以及路由下一跳?目息O
[0076]在可選實施例中,所述設(shè)備的標(biāo)識信息為BGP RR設(shè)備上與core設(shè)備或R設(shè)備建立IBGP鄰居連接的接口地址。
[0077]請參見圖6,為本發(fā)明實施例提供的一種路由注入裝置的結(jié)構(gòu)示意圖,其中,所述裝置可以應(yīng)用于圖1所示網(wǎng)絡(luò)架構(gòu)中的Controller,如圖6所示,該路由注入裝置可以包括:
[0078]路由學(xué)習(xí)單元610,用于通過IBGP鄰居學(xué)習(xí)外部路由,并根據(jù)所述外部路由進(jìn)行路由計算得到目的路由信息,并確定所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;
[0079]發(fā)送單元620,用于向BGP RR設(shè)備發(fā)送網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文攜帶有目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,以使所述BGP RR設(shè)備根據(jù)所述標(biāo)識信息所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。
[0080]在可選實施例中,所述設(shè)備的標(biāo)識信息為BGP RR設(shè)備上與core設(shè)備或R設(shè)備建立IBGP鄰居連接的接口地址。
[0081]上述裝置中各個單元的功能和作用的實現(xiàn)過程具體詳見上述方法中對應(yīng)步驟的實現(xiàn)過程,在此不再贅述。
[0082]對于裝置實施例而言,由于其基本對應(yīng)于方法實施例,所以相關(guān)之處參見方法實施例的部分說明即可。以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上。可以根據(jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本發(fā)明方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
[0083]由上述實施例可見,通過在SDN網(wǎng)絡(luò)中部署支持Netconf協(xié)議的BGPRR設(shè)備,當(dāng)Controller通過IBGP鄰居學(xué)習(xí)到外部路由,并進(jìn)行路由計算得到對應(yīng)目的路由信息,并確定目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息后,通過Netconf報文將目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息發(fā)送給BGP RR設(shè)備,由BGP RR設(shè)備根據(jù)Netconf報文中攜帶的設(shè)備的標(biāo)識信息將對應(yīng)的目的路由信息發(fā)送給core設(shè)備或R設(shè)備,與現(xiàn)有路由注入方案中由Contro 11 er向用戶網(wǎng)絡(luò)中所有設(shè)備注入路由的實現(xiàn)相比,用戶網(wǎng)絡(luò)中的設(shè)備可以不用支持Netconf協(xié)議,避免了用戶網(wǎng)絡(luò)中的設(shè)備進(jìn)行升級操作;此外,通過BGP RR設(shè)備進(jìn)行路由轉(zhuǎn)發(fā),避免了由于Controller上接口少導(dǎo)致的能夠接入的設(shè)備少,以及Controller轉(zhuǎn)發(fā)能力差導(dǎo)致的轉(zhuǎn)發(fā)性能瓶頸,增加了能夠接入的設(shè)備的數(shù)量,提高了轉(zhuǎn)發(fā)性能。
[0084]本領(lǐng)域技術(shù)人員在考慮說明書及實踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實施方案。本申請旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術(shù)領(lǐng)域中的公知常識或慣用技術(shù)手段。說明書和實施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權(quán)利要求指出。
[0085]應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。
【主權(quán)項】
1.一種路由注入方法,應(yīng)用于包括控制器Controller、用戶核心設(shè)備core設(shè)備以及交換設(shè)備R設(shè)備的軟件定義網(wǎng)絡(luò)SDN網(wǎng)絡(luò),所述core設(shè)備與互聯(lián)網(wǎng)服務(wù)提供商ISP設(shè)備之間建立外部邊界網(wǎng)關(guān)協(xié)議EBGP鄰居,所述Control Ier與所述core設(shè)備之間建立內(nèi)部邊界網(wǎng)關(guān)協(xié)議IBGP鄰居,其特征在于,所述SDN網(wǎng)絡(luò)中還包括邊界網(wǎng)關(guān)協(xié)議BGP路由反射器RR設(shè)備,所述BGP RR設(shè)備分別與所述core設(shè)備和R設(shè)備建立IBGP鄰居,該方法應(yīng)用于所述BGP RR設(shè)備,所述方法包括: 接收Control Ier發(fā)送的網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文中攜帶有目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;其中,所述目的路由信息是由所述ControlIer根據(jù)通過IBGP鄰居學(xué)習(xí)到的外部路由進(jìn)行路由計算得到的; 根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備,包括: 根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,向core設(shè)備或R設(shè)備發(fā)送BGP更新UPDATE報文;所述BGP UPDATE報文攜帶所述目的路由信息,所述目的路由信息包括地址族信息、路由前綴、路由掩碼以及路由下一跳信息。3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述設(shè)備的標(biāo)識信息為BGPRR設(shè)備上與core設(shè)備或R設(shè)備建立IBGP鄰居連接的接口地址。4.一種路由注入方法,應(yīng)用于包括控制器Controller、用戶核心設(shè)備core設(shè)備以及交換設(shè)備R設(shè)備的軟件定義網(wǎng)絡(luò)SDN網(wǎng)絡(luò),所述core設(shè)備與互聯(lián)網(wǎng)服務(wù)提供商ISP設(shè)備之間建立外部邊界網(wǎng)關(guān)協(xié)議EBGP鄰居,所述Control Ier與所述core設(shè)備之間建立內(nèi)部邊界網(wǎng)關(guān)協(xié)議IBGP鄰居,其特征在于,所述SDN網(wǎng)絡(luò)中還包括邊界網(wǎng)關(guān)協(xié)議BGP路由反射器RR設(shè)備,所述BGP RR設(shè)備分別與所述core設(shè)備和R設(shè)備建立IBGP鄰居,該方法應(yīng)用于所述Controller,所述方法包括: 通過IBGP鄰居學(xué)習(xí)外部路由,并根據(jù)所述外部路由進(jìn)行路由計算得到目的路由信息,并確定所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息; 向BGP RR設(shè)備發(fā)送網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文攜帶有目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,以使所述BGP RR設(shè)備根據(jù)所述標(biāo)識信息將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述設(shè)備的標(biāo)識信息為BGPRR設(shè)備上與core設(shè)備或R設(shè)備建立IBGP鄰居連接的接口地址。6.—種路由注入裝置,其特征在于,應(yīng)用于包括控制器Controller、用戶核心設(shè)備core設(shè)備、交換設(shè)備R設(shè)備以及邊界網(wǎng)關(guān)協(xié)議BGP路由發(fā)射器RR設(shè)備的軟件自定義網(wǎng)絡(luò)SDN網(wǎng)絡(luò)中的BGP RR設(shè)備,所述core設(shè)備與互聯(lián)網(wǎng)服務(wù)提供商ISP設(shè)備之間建立外部邊界網(wǎng)關(guān)協(xié)議EBGP鄰居,所述Control I er與所述core設(shè)備之間建立內(nèi)部邊界網(wǎng)關(guān)協(xié)議IBGP鄰居,所述BGPRR設(shè)備分別與所述core設(shè)備和R設(shè)備建立IBGP鄰居,所述裝置包括: 接收單元,用于接收ControlIer發(fā)送的網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文中攜帶有目的路由信息,以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息;其中,所述目的路由信息是由所述ControlIer根據(jù)通過IBGP鄰居學(xué)習(xí)到的外部路由進(jìn)行路由計算得到的; 發(fā)送單元,用于根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于, 所述發(fā)送單元,具體用于根據(jù)所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,向core設(shè)備或R設(shè)備發(fā)送BGP更新UPDATE報文;所述BGP UPDATE報文攜帶有所述目的路由信息,所述目的路由信息包括地址族信息、路由前綴、路由掩碼以及路由下一跳信息。8.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,所述設(shè)備的標(biāo)識信息為BGPRR設(shè)備上與core設(shè)備或R設(shè)備建立IBGP鄰居連接的接口地址。9.一種路由注入裝置,其特征在于,應(yīng)用于包括控制器Controller、用戶核心設(shè)備core設(shè)備、交換設(shè)備R設(shè)備以及邊界網(wǎng)關(guān)協(xié)議BGP路由發(fā)射器RR設(shè)備的軟件自定義網(wǎng)絡(luò)SDN網(wǎng)絡(luò)中的Controller,所述core設(shè)備與互聯(lián)網(wǎng)服務(wù)提供商ISP設(shè)備之間建立外部邊界網(wǎng)關(guān)協(xié)議EBGP鄰居,所述Control I er與所述core設(shè)備之間建立內(nèi)部邊界網(wǎng)關(guān)協(xié)議IBGP鄰居,所述BGPRR設(shè)備分別與所述core設(shè)備和R設(shè)備建立IBGP鄰居,所述裝置包括: 路由學(xué)習(xí)單元,用于通過IBGP鄰居學(xué)習(xí)外部路由,并根據(jù)所述外部路由進(jìn)行路由計算得到目的路由信息,并確定所述目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息; 發(fā)送單元,用于向BGP RR設(shè)備發(fā)送網(wǎng)絡(luò)配置Netconf報文,所述Netconf報文攜帶有目的路由信息以及目的路由信息對應(yīng)的設(shè)備的標(biāo)識信息,以使所述BGP RR設(shè)備根據(jù)所述標(biāo)識信息將所述目的路由信息發(fā)送給core設(shè)備或R設(shè)備。10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述設(shè)備的標(biāo)識信息為BGPRR設(shè)備上與core設(shè)備或R設(shè)備建立IBGP鄰居連接的接口地址。
【文檔編號】H04L12/721GK106059922SQ201610357534
【公開日】2016年10月26日
【申請日】2016年5月26日
【發(fā)明人】余清炎
【申請人】杭州華三通信技術(shù)有限公司