
本發(fā)明涉及互聯(lián)網(wǎng)
技術(shù)領(lǐng)域:
,尤其涉及一種域間路由方法、裝置及網(wǎng)絡(luò)側(cè)設(shè)備。
背景技術(shù):
:互聯(lián)網(wǎng)被稱為網(wǎng)絡(luò)的網(wǎng)絡(luò),經(jīng)過快速發(fā)展,目前互聯(lián)網(wǎng)是由約五萬個大小自治域(英文:AutonomousSystem,簡稱:AS)組成。AS內(nèi)部的路由使用域內(nèi)路由協(xié)議,例如中間系統(tǒng)到中間系統(tǒng)(英文:IntermediateSystemtoIntermediateSystem,簡稱:ISIS)或開放式最短路徑優(yōu)先(英文:OpenShortestPathFirst,簡稱:OSPF)。AS之間,即域間使用邊界網(wǎng)關(guān)協(xié)議(英文:BoarderGatewayProtocol,簡稱:BGP)實現(xiàn)域間路由傳播。基于BGP的路由方案:相鄰的AS之間建立BGP連接,通過BGP更新交換路由可達信息,從而更新自己的路由表和轉(zhuǎn)發(fā)表。BGP更新基于目的網(wǎng)絡(luò)協(xié)議(英文:InternetProtocol,簡稱:IP)地址前綴,并包含諸多屬性以體現(xiàn)各AS對于路由的控制策略。BGP更新的基本形式是AS兩兩協(xié)商,多次迭代。舉例來說,AS3與其鄰居AS2交換路由可達信息,獲得AS3針對AS2的一跳路由。AS1通過和其鄰居AS3的直接協(xié)商,間接得到AS2的路由信息,最終形成AS1通過AS3到達AS2的路由。上述路由方案中,需要AS兩兩協(xié)商,如果有N個AS的話,那么協(xié)商的規(guī)模就為N2,所以效率較低,而且AS需要維護龐大的BGP路由表。技術(shù)實現(xiàn)要素:本發(fā)明實施例提供一種域間路由方法、裝置及網(wǎng)絡(luò)側(cè)設(shè)備,用以解決現(xiàn)有 技術(shù)中AS域間路由方式效率較低的技術(shù)問題。第一方面,本發(fā)明實施例提供了一種域間路由方法,包括:源自治域AS生成所述源AS至目的AS的路由請求;所述源AS向M個互聯(lián)網(wǎng)交換節(jié)點IXP中的N個IXP發(fā)送所述路由請求;M、N為正整數(shù)且N小于或等于M;所述源AS接收所述N個IXP發(fā)送的所述N個IXP各自到所述目的AS之間的第二路由信息;所述源AS根據(jù)預(yù)先建立的所述源AS至所述N個IXP之間的第一路由信息與所述第二路由信息,確定所述源AS至所述目的AS之間的第三路由信息。因此,在第一方面中的實施例中,將現(xiàn)有技術(shù)中的源AS至目的AS的路由,以IXP為中心進行了截斷處理,使得源AS至目的AS的路由過程被分解成了源AS至IXP、IXP至目的AS的兩個路由過程,以此利用現(xiàn)有網(wǎng)絡(luò)拓撲特性,達到簡化路由的目的。結(jié)合第一方面,在第一方面的第一種可能的實現(xiàn)方式中,所述源AS向所述M個IXP中的N個IXP發(fā)送所述路由請求包括:所述源AS向所述M個IXP中與所述源AS距離最近且相等的N個IXP發(fā)送所述路由請求。通過該方法,源AS至IXP的路徑為最短路徑,所以可以整體上縮短源AS至目的AS的路徑。第二方面,本發(fā)明實施例提供一種域間路由方法,包括:源自治域AS確定中轉(zhuǎn)互聯(lián)網(wǎng)交換節(jié)點IXP集合,所述集合包括一個或多個IXP;所述源AS以及中間AS生成指向所述IXP集合中每一個IXP的路由發(fā)現(xiàn)請求;所述源AS以及所述中間AS將所述路由發(fā)現(xiàn)請求朝著與所述每一個IXP距離更小的AS發(fā)送;所述源AS接收所述每一個IXP反饋的所述源AS至所述每一個IXP的路由信息。通過第二方面中的方法,可以得到源AS至IXP集合中每一個IXP的較短路徑。第三方面,本發(fā)明實施例提供一種域間路由方法,包括:互聯(lián)網(wǎng)交換節(jié)點IXP接收源自治域AS發(fā)送的至目的AS的路由請求;所述IXP獲取所述IXP至所述目的AS的第二路由信息;所述IXP向所述源AS發(fā)送所述第二路由信息,所述第二路由信息被所述源AS用于確定所述源AS至所述目的AS之間的第三路由信息。通過 第三方面中的方法,由IXP獲取IXP至目的AS之間的路由信息并反饋給源AS,以使源AS能夠?qū)⒃碅S至IXP的路徑和IXP至目的AS的路徑合并以得到源AS至目的AS的完整路徑。結(jié)合第三方面,在第三方面的第一種可能的實現(xiàn)方式中,所述IXP獲取所述IXP至所述目的AS的第二路由信息,包括:所述IXP向其直接可達鄰居發(fā)送廣播消息,以查詢所述目的AS;所述IXP接收所述目的AS發(fā)送的沿所述廣播消息的轉(zhuǎn)發(fā)路徑的相反路徑反饋的響應(yīng)消息,所述響應(yīng)消息中記錄有所述查詢轉(zhuǎn)發(fā)路徑,所述查詢轉(zhuǎn)發(fā)路徑即為所述第二路由信息。通過該方法,實時進行IXP至目的AS的路徑發(fā)現(xiàn),所以得到的第二路由信息較新,所以得到的源AS至目的AS之間的路徑是最新路徑。結(jié)合第三方面,在第三方面的第二種可能的實現(xiàn)方式中,所述IXP獲取所述IXP至所述目的AS的第二路由信息,包括:所述IXP通過查詢預(yù)設(shè)的目的AS與路由信息的對應(yīng)關(guān)系獲取所述IXP之所述目的AS的第二路由信息。該實現(xiàn)方式中獲取第二路由的方式較簡單,快捷,縮短響應(yīng)時間,提高路由效率。結(jié)合第三方面的第一種可能的實現(xiàn)方式,在第三方面的第三種可能的實現(xiàn)方式中,所述方法還包括:所述IXP保存所述目的AS和所述第二路由信息的對應(yīng)關(guān)系。通過將獲取的最新的目的AS的第二路由信息,一方面可以便于下次快捷的獲取到第二路由信息,而不用再次獲??;另一方面可以將原有的第二路由信息替換為最新的路由信息。第四方面,本發(fā)明實施例提供一種網(wǎng)絡(luò)側(cè)設(shè)備,所述網(wǎng)絡(luò)側(cè)設(shè)備代表源自治域AS,包括:處理器,用于生成所述源AS至目的AS的路由請求;接口;發(fā)送器,用于通過所述接口向M個互聯(lián)網(wǎng)交換節(jié)點IXP中的N個IXP發(fā)送所述路由請求;M、N為正整數(shù)且N小于或等于M;接收器,用于通過所述接口接收所述N個IXP發(fā)送的所述N個IXP各自到所述目的AS之間的第二路由信息;所述處理器還用于:根據(jù)預(yù)先建立的所述源AS至所述N個IXP之間的第一路由信息與所述第二路由信息,確定所述源AS至所述目的AS之間的第三路由信息。結(jié)合第四方面,在第四方面的第一種可能的實現(xiàn)方式中,所述發(fā)送器用于:通過所述接口向所述M個IXP中與所述源AS距離最近且相等的N個IXP發(fā)送所述路由請求。結(jié)合第四方面或第四方面的第一種可能的實現(xiàn)方式,在第四方面的第二種可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)側(cè)設(shè)備為互聯(lián)網(wǎng)服務(wù)提供商ISP、互聯(lián)網(wǎng)內(nèi)容提供商ICP、數(shù)據(jù)中心、邊界網(wǎng)關(guān)、路由器中的一種或多種。第五方面,本發(fā)明實施提供一種網(wǎng)絡(luò)側(cè)設(shè)備,所述網(wǎng)絡(luò)側(cè)設(shè)備為互聯(lián)網(wǎng)交換節(jié)點IXP,包括:接口;接收器,用于通過所述接口接收源自治域AS發(fā)送的至目的AS的路由請求;處理器,用于獲取所述IXP至所述目的AS的第二路由信息;發(fā)送器,用于通過所述接口向所述源AS發(fā)送所述第二路由信息,所述第二路由信息被所述源AS用于確定所述源AS至所述目的AS之間的第三路由信息。結(jié)合第五方面,在第五方面的第一種可能的實現(xiàn)方式中,所述處理器用于:通過所述發(fā)送器向所述IXP直接可達鄰居發(fā)送廣播消息,以查詢所述目的AS;通過所述接收器接收所述目的AS發(fā)送的沿所述廣播消息的轉(zhuǎn)發(fā)路徑的相反路徑反饋的響應(yīng)消息,所述響應(yīng)消息中記錄有所述查詢轉(zhuǎn)發(fā)路徑,所述查詢轉(zhuǎn)發(fā)路徑即為所述第二路由信息。結(jié)合第五方面,在第五方面的第二種可能的實現(xiàn)方式中,所述處理器用于:通過查詢預(yù)設(shè)的目的AS與路由信息的對應(yīng)關(guān)系獲取所述IXP之所述目的AS的第二路由信息。結(jié)合第五方面的第一種可能的實現(xiàn)方式,在第五方面的第三種可能的實現(xiàn)方式中,所述處理器還用于保存所述目的AS和所述第二路由信息的對應(yīng)關(guān)系。結(jié)合第五方面,在第五方面的第四種可能的實現(xiàn)方式中,所述網(wǎng)絡(luò)側(cè)設(shè)備為交換機或路由器。第六方面,本發(fā)明實施例提供一種域間路由裝置,包括:處理單元,用于生成源自治域AS至目的AS的路由請求;發(fā)送單元,用于向M個互聯(lián)網(wǎng)交換節(jié)點IXP中的N個IXP發(fā)送所述路由請求;M、N為正整數(shù)且N小于或等于M;接收單 元,用于接收所述N個IXP發(fā)送的所述N個IXP各自到所述目的AS之間的第二路由信息;所述處理單元還用于:根據(jù)預(yù)先建立的所述源AS至所述N個IXP之間的第一路由信息與所述第二路由信息,確定所述源AS至所述目的AS之間的第三路由信息。結(jié)合第六方面,在第六方面的第一種可能的實現(xiàn)方式中,所述發(fā)送單元用于:向所述M個IXP中與所述源AS距離最近且相等的N個IXP發(fā)送所述路由請求。第七方面,本發(fā)明實施例提供一種域間路由裝置,包括:接收單元,用于接收源自治域AS發(fā)送的至目的AS的路由請求;處理單元,用于獲取互聯(lián)網(wǎng)交換節(jié)點IXP至所述目的AS的第二路由信息;發(fā)送單元,用于向所述源AS發(fā)送所述第二路由信息,所述第二路由信息被所述源AS用于確定所述源AS至所述目的AS之間的第三路由信息。結(jié)合第七方面,在第七方面的第一種可能的實現(xiàn)方式中,所述處理單元用于:通過所述發(fā)送單元向所述IXP直接可達鄰居發(fā)送廣播消息,以查詢所述目的AS;通過所述接收單元接收所述目的AS發(fā)送的沿所述廣播消息的轉(zhuǎn)發(fā)路徑的相反路徑反饋的響應(yīng)消息,所述響應(yīng)消息中記錄有所述查詢轉(zhuǎn)發(fā)路徑,所述查詢轉(zhuǎn)發(fā)路徑即為所述第二路由信息。結(jié)合第七方面,在第七方面的第二種可能的實現(xiàn)方式中,所述處理單元用于:通過查詢預(yù)設(shè)的目的AS與路由信息的對應(yīng)關(guān)系獲取所述IXP之所述目的AS的第二路由信息。結(jié)合第七方面的第一種可能的實現(xiàn)方式,在第七方面的第三種可能的實現(xiàn)方式中,所述處理單元還用于保存所述目的AS和所述第二路由信息的對應(yīng)關(guān)系。附圖說明圖1為本發(fā)明實施例提供的一種互聯(lián)網(wǎng)絡(luò)結(jié)構(gòu)圖;圖2為本發(fā)明實施例提供的一種網(wǎng)絡(luò)側(cè)設(shè)備的結(jié)構(gòu)圖;圖3為本發(fā)明實施例提供的一種源AS側(cè)的域間路由方法的流程圖;圖4為本發(fā)明實施例提供的一種互聯(lián)網(wǎng)絡(luò)實例結(jié)構(gòu)圖;圖5a至圖5c為本發(fā)明實施例提供的源AS至IXP的路由發(fā)現(xiàn)示意圖;圖6為本發(fā)明實施例提供的一種IXP側(cè)的域間路由方法的流程圖;圖7為本發(fā)明實施例提供的一種IXP至目的AS得路由發(fā)現(xiàn)示意圖;圖8為本發(fā)明實施例提供的一種路由合并結(jié)果示意圖;圖9為本發(fā)明實施例提供的一種路由環(huán)路示意圖;圖10為本發(fā)明實施例提供的一種網(wǎng)元之間的交互示意圖;圖11為本發(fā)明實施例提供的一種域間路由裝置的功能框圖;圖12為本發(fā)明實施例提供的另一種域間路由裝置的功能框圖。具體實施方式本發(fā)明實施例提供一種域間路由方法、裝置及網(wǎng)絡(luò)側(cè)設(shè)備,用以解決現(xiàn)有技術(shù)中AS域間路由方式效率較低的技術(shù)問題。以下將詳細描述本發(fā)明實施例中方案的實施過程、目的。本發(fā)明實施例提供的一種域間路由方法,該方法可以應(yīng)用于互聯(lián)網(wǎng)絡(luò)中。請參考圖1,為本發(fā)明實施例提供的一種可能的互聯(lián)網(wǎng)絡(luò)結(jié)構(gòu)圖。該互聯(lián)網(wǎng)絡(luò)結(jié)構(gòu)包括AS和互聯(lián)網(wǎng)交換節(jié)點(英文:InternetExchangePoint,簡稱:IXP)。IXP與部分AS相連接,其余AS相互連接。IXP之間可能也相互連接,也可以不連接。圖1中僅是用于舉例說明可能的互聯(lián)網(wǎng)結(jié)構(gòu),在實際運用中,AS和IXP、AS和AS、IXP和IXP之間的連接關(guān)系還可以是其它情形,具體與實際的網(wǎng)絡(luò)部署相關(guān)。AS是個邏輯上的標識概念。其承載實體可以是互聯(lián)網(wǎng)服務(wù)提供商(英文:InternetServiceProvider,簡稱:ISP)、互聯(lián)網(wǎng)內(nèi)容提供商(英文:InternetContentProvider,簡稱:ICP)、數(shù)據(jù)中心等邊界網(wǎng)關(guān)或路由器。IXP是涉及多個AS的連接與域間路由交換的物理設(shè)施節(jié)點。好比AS間形成 域間路由交易的“集市”。如果只涉及兩個AS,一般稱為網(wǎng)絡(luò)服務(wù)提供點(英文:PointofPresence,簡稱:PoP)。多于2個以上AS,在一個物理設(shè)施上實現(xiàn)域間路由這一行為的物理場所就是IXP。在本文中,統(tǒng)一稱為IXP。當(dāng)然IXP最終的實體還是交換機、路由器等。接下來請參考圖2,圖2為本發(fā)明實施例提供的網(wǎng)絡(luò)側(cè)設(shè)備的可能的結(jié)構(gòu)圖。該網(wǎng)絡(luò)側(cè)設(shè)備例如為前述AS或IXP。如圖2所示,該網(wǎng)絡(luò)側(cè)設(shè)備包括:處理器10、發(fā)送器20、接收器30、存儲器40和接口50。存儲器40、發(fā)送器20和接收器30和處理器10可以通過總線進行連接。當(dāng)然,在實際運用中,存儲器40、發(fā)送器20和接收器30和處理器10之間可以不是總線結(jié)構(gòu),而可以是其它結(jié)構(gòu),例如星型結(jié)構(gòu),本申請不作具體限定??蛇x的,處理器10具體可以是中央處理器、特定應(yīng)用集成電路(英文:ApplicationSpecificIntegratedCircuit,簡稱:ASIC),可以是一個或多個用于控制程序執(zhí)行的集成電路,可以是使用現(xiàn)場可編程門陣列(英文:FieldProgrammableGateArray,簡稱:FPGA)開發(fā)的硬件電路,可以是基帶處理器。可選的,處理器10可以包括至少一個處理核心??蛇x的,存儲器40可以包括只讀存儲器(英文:ReadOnlyMemory,簡稱:ROM)、隨機存取存儲器(英文:RandomAccessMemory,簡稱:RAM)和磁盤存儲器。存儲器40用于存儲處理器10運行時所需的數(shù)據(jù)。存儲器40的數(shù)量為一個或多個??蛇x的,接口50的數(shù)量為一個或多個,用于與相鄰的AS或IXP連接??蛇x的,發(fā)送器20和接收器30在物理上可以相互獨立也可以集成在一起。發(fā)送器20可以通過接口50將數(shù)據(jù)發(fā)送給相鄰的AS或IXP。接收器30可以通過接口50接收相鄰的AS或IXP發(fā)送的數(shù)據(jù)。接下來請參考如圖3所示,為本發(fā)明實施例中AS側(cè)的域間路由方法的流程圖。如圖3所示,該方法包括:步驟101:源AS生成源AS至目的AS的路由請求;步驟102:根據(jù)預(yù)先建立的源AS至M個IXP之間的第一路由信息,源AS向M個IXP中的N個IXP發(fā)送所述路由請求;M、N為正整數(shù)且N小于或等于M;步驟103:源AS接收N個IXP發(fā)送的N個IXP各自到目的AS之間的第二路由信息;步驟104:源AS根據(jù)源AS至N個IXP之間的第一路由信息與第二路由信息,確定源AS至目的AS之間的第三路由信息。步驟101中的路由請求可以是基于源AS刷新本地路由信息的操作生成的,也可以基于源AS與目的AS通過源路由機制建立連接生成的。該路由請求的產(chǎn)生機理與原因可以有多種,根據(jù)實際需求而定??蛇x的,該路由請求由源AS的處理器10生成??蛇x的,源AS至M個IXP之間的第一路由信息可以通過以下方式預(yù)先建立。具體的,各AS、IXP冷啟動時自舉,即各AS、IXP通過與鄰居AS、IXP的直接或間接通信,搜索并建立AS與IXP之間的路由。以下將通過舉例進行說明。舉例來說,假設(shè)定義AS-AS之間的直接一跳距離為1,AS-IXP之間的直接一跳距離為0.5,IXP-IXP之間的一跳距離為0。所有AS都維護自身以及直接可達鄰居AS的IXP距離列表。IXP距離列表存儲了某個AS與網(wǎng)絡(luò)中全部IXP的距離信息的表格??蛇x的,IXP距離列表存儲了某個AS與網(wǎng)絡(luò)中全部IXP的最短距離信息的表格。可選的,在實際部署過程中,既可以采用簡單的洪泛查詢機制形成IXP距離列表,也可以采用類似開放式最短路徑優(yōu)先(英文:OpenShortestPathFirst,簡稱:OSPF)等域內(nèi)路由協(xié)議的方式,通過動態(tài)收斂形成IXP距離列表。舉例來說,已知ASi到達IXPa距離為m,ASj到達IXPa距離為n,ASi到達ASj距離為1。如果(m+1)<n,則更新ASj到達IXPa距離為(m+1);如果m>(n+1)則更新ASi到達IXPa距離為(n+1)。如此反復(fù),最終所有AS的IXP距離列表的內(nèi)容都會收斂到IXP距離值最小的穩(wěn)定狀態(tài)。可選的,所有AS可以與其直接可達的鄰居AS交換IXP距離列表。因此,假設(shè)整個網(wǎng)絡(luò)共有M個IXP,那么所有AS都維護(1+X)個包含M行記錄的IXP距離列表,其中,X為某個AS直接可達鄰居AS的數(shù)量。由于現(xiàn)有互聯(lián)網(wǎng)中IXP數(shù)量極少(2014年活躍的IXP數(shù)量不足400),AS平均鄰居較少(2014年數(shù)據(jù)顯示AS平均鄰居數(shù)量8.1,最大值7619);可以預(yù)估某個AS所需維護的IXP距離列表平均大小不足3.7Kbytes,最大不足3.3Mbytes。IXP距離列表的平均大小較現(xiàn)有BGP表格有至少三個數(shù)量級的減少。請參考圖4所示的互聯(lián)網(wǎng)絡(luò)結(jié)構(gòu)圖,在該網(wǎng)絡(luò)中,假設(shè)IXP的數(shù)量為2,分別為IXP1和IXP2。AS7所要維護的三個IXP距離列表為表一至表三。表一為AS7的直接可達鄰居AS2的IXP距離列表。表二為AS7的直接可達鄰居AS3的IXP距離列表。表三為AS7的IXP距離列表。接下來,源AS確定中轉(zhuǎn)IXP集合,該集合包括一個或多個IXP。具體的,可以基于IXP距離列表進行選擇,例如選擇與源AS距離相等的IXP的集合。然后源AS以及中間AS生成指向所述IXP集合中每一個IXP的路由發(fā)現(xiàn)請求。其中,中間AS為源AS至所述每一個IXP的路徑上的AS。源AS及中間AS將所述路由發(fā)現(xiàn)請求朝著與所述每一個IXP距離更小的AS的發(fā)送。例如通過源AS和中間AS的發(fā)送器20發(fā)送所述路由發(fā)現(xiàn)請求??蛇x的,當(dāng)基于IXP距離列表發(fā)現(xiàn)與所述每一個IXP距離相等的AS有多個時,中間AS可以執(zhí)行全部轉(zhuǎn)發(fā)或選擇部分AS轉(zhuǎn)發(fā)。然后,源AS接收所述每一個IXP反饋的源AS至所述每一個IXP的路由信息。重復(fù)上述過程,即可獲得源AS至M個IXP的第一路由信息??蛇x的,第一路由信息包括路徑信息,進一步,還可以包括距離信息。以下將具體舉例說明不同的IXP選擇以及AS轉(zhuǎn)發(fā)策略。如圖5a至圖5c所示,箭頭表示從源AS至N個IXP的路由請求的轉(zhuǎn)發(fā)路由,同 時。這些轉(zhuǎn)發(fā)路徑也是源AS至N個IXP的潛在路徑。圖5a表示的是選擇距離相等的IXP中的單一IXP進行轉(zhuǎn)發(fā),例如IXP1,并且中間AS向距離IXP距離相等的AS執(zhí)行全部轉(zhuǎn)發(fā)。具體的,源AS選擇IXP1發(fā)送路由請求路由請求首先到達AS8,AS8距離IXP1距離相等的鄰居AS有AS5和AS3,所以AS8將路由請求繼續(xù)向AS3和AS5發(fā)送。AS3和AS5距離IXP距離最短的下一跳AS為AS2,所以AS5和AS3又將路由請求轉(zhuǎn)發(fā)至AS2。然后AS2與IXP1相鄰,所以AS2直接轉(zhuǎn)發(fā)路由請求給IXP1。圖5b表示的是選擇距離相等的IXP中的單一IXP進行轉(zhuǎn)發(fā),例如IXP1,并且中間AS向距離IXP距離相等的AS只選擇一個AS轉(zhuǎn)發(fā)。具體的,與圖5a相比,AS8僅將路由請求轉(zhuǎn)發(fā)至AS5,而沒有轉(zhuǎn)發(fā)至AS3。圖5b表示的是選擇距離相等的IXP中的多個IXP進行轉(zhuǎn)發(fā),例如IXP1和IXP3,并且中間AS向距離IXP距離相等的AS執(zhí)行全部轉(zhuǎn)發(fā)。具體的,與圖5a相比,AS3除了向AS2轉(zhuǎn)發(fā)路由請求之外,還向AS4轉(zhuǎn)發(fā)路由請求,進而AS4將路由請求轉(zhuǎn)發(fā)至IXP3。針對2014年互聯(lián)網(wǎng)數(shù)據(jù)的實驗顯示,即使采用如圖5c所示的IXP選擇和AS轉(zhuǎn)發(fā)策略,即同時選擇距離最近的一組IXP、IXP距離相同下的AS全部轉(zhuǎn)發(fā)的策略,源AS選擇最近一組IXP,該組IXP的數(shù)量平均為9.19。而前往該組IXP只包含12.41條鏈路路徑。該數(shù)據(jù)顯示,在現(xiàn)有網(wǎng)絡(luò)拓撲特性下,AS可以用較低的代價,例如平均較短的路徑長度,小范圍少量鏈路,與較多數(shù)量的IXP建立直接的路由關(guān)系。IXP作為網(wǎng)絡(luò)局部星型化的中心這一特征極大的簡化了AS-IXP的路由。接下來執(zhí)行步驟102,即向M個IXP中的N個IXP發(fā)送步驟101中生成的路由請求。可選的,該路由請求由源AS的發(fā)送器20通過源AS的接口50發(fā)送??蛇x的,源AS向M個IXP中與源AS距離最近且相等的N個IXP發(fā)送所述路由請求。如果存在多個距離相等的IXP,可以依據(jù)情況執(zhí)行全部發(fā)送或選擇部分IXP發(fā)送。接下來將描述N個IXP側(cè)的域間路由方法,請參考圖6所示,該方法包括:步驟201:IXP接收源AS發(fā)送的至目的AS的路由請求;步驟202:IXP獲取所述IXP至目的AS的第二路由信息;步驟203:IXP向源AS發(fā)送第二路由信息。當(dāng)源AS執(zhí)行步驟102之后,對應(yīng)的,IXP側(cè)執(zhí)行步驟201。具體的,IXP可以通過自身的接收器30接收所述路由請求。在第一種可能的實現(xiàn)方式中,步驟202包括:IXP向其直接可達鄰居(包括AS和IXP)發(fā)送廣播消息,以查詢所述目的AS;IXP接收所述目的AS發(fā)送的沿所述廣播消息的轉(zhuǎn)發(fā)路徑的相反路徑反饋的響應(yīng)消息,所述響應(yīng)消息中記錄有所述查詢轉(zhuǎn)發(fā)路徑,所述查詢轉(zhuǎn)發(fā)路徑即為所述第二路由信息。具體的,IXP可以通過自身的發(fā)送器20發(fā)送所述廣播消息,并通過自身的接收器30接收所述響應(yīng)消息??蛇x的,在查詢轉(zhuǎn)發(fā)路徑中的非目的AS的AS與IXP,基于前述的IXP距離列表將該查詢朝著遠離所述IXP的AS與IXP傳播,如此反復(fù),直至沒有距離所述IXP更遠的AS或IXP為止。請參考圖7所示,為本發(fā)明實施例中IXP發(fā)現(xiàn)目的AS的過程示意圖。在本實施例中,AS1至AS8均非目的AS。如圖7所示,IXP1接收到源AS的路由請求消息之后,向其直接可達鄰居AS1、AS2和AS3發(fā)送廣播消息。AS1至AS3接收到廣播消息之后,朝著遠離IXP1的方向傳播廣播消息。例如,AS1向AS8和AS7發(fā)送該廣播消息。AS2向AS7和AS6發(fā)送該廣播消息。AS3向AS5和IXP3發(fā)送該廣播消息。進一步,因為AS8、AS7、AS6、AS5已經(jīng)沒有連接距離IXP更遠的AS或IXP了,所以就不再轉(zhuǎn)發(fā)該廣播消息。而IXP3需要繼續(xù)向AS5和AS4發(fā)送該廣播消息,AS4已經(jīng)沒有距離IXP1更遠的鄰居AS或IXP了,所以就不再轉(zhuǎn)發(fā)該廣播消息。在上述轉(zhuǎn)發(fā)廣播消息期間,當(dāng)廣播消息到達目的AS時,目的AS不再轉(zhuǎn)發(fā)廣播消息,而是將廣播消息的轉(zhuǎn)發(fā)路徑的相反路徑反饋響應(yīng)消息,響應(yīng)消息中記錄有廣播消息的轉(zhuǎn)發(fā)路徑。由以上描述可以看出,第一種可能的實現(xiàn)方式,可以發(fā)現(xiàn)多條等距最短路徑,并且可以避免廣播環(huán)路、繞路的形成,還可以降低探測最短路徑路由的開銷。針對2014年的數(shù)據(jù),318個活躍的IXP的實驗顯示,每個IXP平均只需要77354個查詢報即可獲得各IXP對全網(wǎng)近五萬個AS的最短路徑路由??蛇x的,在第二種可能的實現(xiàn)方式中,步驟202包括:IXP通過查詢預(yù)設(shè)的目的AS與路由信息的對應(yīng)關(guān)系獲取所述IXP之所述目的AS的第二路由信息。該步驟具體可以由所述IXP的處理器10執(zhí)行。預(yù)設(shè)的目的AS與路由信息的對應(yīng)關(guān)系可以存儲在所述IXP的存儲器40上??蛇x的,請參考表四所示,為本發(fā)明實施例的一種可能的目的AS與路由信息的對應(yīng)關(guān)系表。目的AS最短距離路徑AS12.5IXP1,AS3,AS2,AS1AS21.5IXP1,AS3,AS2AS30.5IXP1,AS3………表四在實際運用中,路由信息可以不包括最短距離信息,即表四中不包含最短距離項。因此,IXP可以通過查詢例如表四所示的對應(yīng)關(guān)系表,即可獲得IXP至目的AS的路徑信息,即第二路由信息。例如目的AS為AS2,那么第二路由信息包括IXP1,AS2,AS3??蛇x的,表四的建立方式可以采用前述第一種可能的實現(xiàn)方式,因此,在通過第一種可能的實現(xiàn)方式獲得第二路由信息之后,IXP還保存所述目的AS和所述第二路由信息的對應(yīng)關(guān)系。例如以表四的形式進行保存。當(dāng)然,在實際運用中,還可以采用其它方式建立目的AS與路由信息的對應(yīng)關(guān)系,本發(fā)明不作具體限定??蛇x的,IXP還可以定期更新所述對應(yīng)關(guān)系。當(dāng)在步驟202中獲取到第二路由信息之后,接下來執(zhí)行步驟203,即將第二路由信息發(fā)送給源AS。具體的,IXP可以通過自身的發(fā)送器20發(fā)送第二路由信息給源AS。對應(yīng)的,源AS執(zhí)行步驟103,即接收N個IXP發(fā)送的所述N個IXP各自到所述目的AS之間的第二路由信息。具體的,源AS可以接收到N個第二路由信息。接下來執(zhí)行步驟104,即源AS根據(jù)源AS至N個IXP之間的第一路由信息與第二路由信息,確定源AS至目的AS之間的第三路由信息。其中,第一路由信息具體可以是通過前述所描述的方式建立的,也可以是通過其它方式建立的,在此不再贅述。在實際運用中,可以簡單的合并第一路由信息和第二路由信息,總共可以獲得N個第三路由信息。因此,源AS可以存儲多條源AS至所述目的AS的路由信息,也可以僅選擇一條路由信息進行保存。如果保存多條時,在后續(xù)發(fā)送數(shù)據(jù)包的時,可以進行多路徑路由,以提高數(shù)據(jù)傳輸?shù)目煽啃???蛇x的,第三路由信息包括路徑信息,進一步還可以包括距離信息。請參考圖8所示,為圖5c所示的實例最終獲得的第三路由信息,這里第三路由信息僅用來表示路徑信息。第三路徑信息為:源AS、AS8、AS3、AS4、IXP3、目的AS。在實際的路由合并中,可能因此出現(xiàn)路由環(huán)路的現(xiàn)象,如圖9所示,AS2到IXP1之后,又會回到AS2,再到目的AS。還可能出現(xiàn)IXP訪問繞路的現(xiàn)象,例如源AS和目的AS為鄰居。為此,源AS還可以對第三路由信息進行優(yōu)化,例如去除環(huán)路、配合源路由技術(shù),進一步提升路由效率?;?014年互聯(lián)網(wǎng)的數(shù)據(jù),基于IXP的路由機制在平均路由長度上與
背景技術(shù):
中的最優(yōu)算法只有0.4%的差距,在具體長度路徑分布上的差距也很小。換言之,基于IXP的域間路由機制的實際路由效果基本上能與
背景技術(shù):
中的方法 的路由效果持平,但是相較于
背景技術(shù):
中的方法,基于IXP的路由機制極大的簡化了路由過程并降低了路由開銷,進一步,AS不需要維護龐大的路由表。接下來將描述各個網(wǎng)元之間的交互過程,請參考圖10所示,為各個網(wǎng)元之間的交互示意圖。具體的,源AS發(fā)現(xiàn)源AS-IXP1至IXPm的路由,m為正整數(shù)。IXP1至IXPm分別發(fā)現(xiàn)自身至目的AS的路由??蛇x的,可以按照實際情況,選擇更新IXP至目的AS的路由。接下來,源AS請求往目的AS的路由,該請求可以發(fā)給IXP1至IXPm中的一個或多個。該一個或多個IXP反饋自身至目的AS的路由。然后源AS合并源AS至該一個或多個IXP的路由以及該一個或多個IXP至目的AS的路由,形成源AS至目的AS的完整路由。然后,當(dāng)有數(shù)據(jù)包需要發(fā)送時,可以選擇一個IXP,例如IXP1作為路由中介,實施路由策略。由以上描述可以看出,本發(fā)明實施例將原先源AS至目的AS的路由,以IXP為中心進行了截斷處理,使得源AS至目的AS的路由過程被分解成了源AS至IXP、IXP至目的AS的兩個路由過程,以此利用現(xiàn)有網(wǎng)絡(luò)拓撲特性,達到簡化路由的目的。接下來請參考圖11所示,為本發(fā)明實施例提供的一種域間路由裝置的功能框圖。該域間路由裝置用于實現(xiàn)如圖3所示的域間路由方法。該域間路由裝置包括:處理單元301,用于生成源自治域AS至目的AS的路由請求;發(fā)送單元302,用于向M個互聯(lián)網(wǎng)交換節(jié)點IXP中的N個IXP發(fā)送所述路由請求;M、N為正整數(shù)且N小于或等于M;接收單元303,用于接收所述N個IXP發(fā)送的所述N個IXP各自到所述目的AS之間的第二路由信息;處理單元301還用于:根據(jù)預(yù)先建立的所述源AS至所述N個IXP之間的第一路由信息與所述第二路由信息,確定所述源AS至所述目的AS之間的第三路由信息??蛇x的,發(fā)送單元302用于:向所述M個IXP中與所述源AS距離最近且相等的N個IXP發(fā)送所述路由請求。前述圖3實施例中的域間路由方法中的各種變化方式和具體實例同樣適用于本實施例的域間路由裝置,通過前述對域間路由方法的詳細描述,本領(lǐng)域技術(shù)人員可以清楚的知道本實施例中域間路由裝置的實施方法,所以為了說明書的簡潔,在此不再詳述。接下來請參考圖12所示,為本發(fā)明實施例提供的一種域間路由裝置的功能框圖。該域間路由裝置用于實現(xiàn)如圖6所示的域間路由方法。該域間路由裝置包括:接收單元401,用于接收源自治域AS發(fā)送的至目的AS的路由請求;處理單元402,用于獲取互聯(lián)網(wǎng)交換節(jié)點IXP至所述目的AS的第二路由信息;發(fā)送單元403,用于向所述源AS發(fā)送所述第二路由信息,所述第二路由信息被所述源AS用于確定所述源AS至所述目的AS之間的第三路由信息??蛇x的,處理單元402用于:通過所述發(fā)送單元403向所述IXP直接可達鄰居發(fā)送廣播消息,以查詢所述目的AS;通過接收單元401接收所述目的AS發(fā)送的沿所述廣播消息的轉(zhuǎn)發(fā)路徑的相反路徑反饋的響應(yīng)消息,所述響應(yīng)消息中記錄有所述查詢轉(zhuǎn)發(fā)路徑,所述查詢轉(zhuǎn)發(fā)路徑即為所述第二路由信息。可選的,處理單元402用于:通過查詢預(yù)設(shè)的目的AS與路由信息的對應(yīng)關(guān)系獲取所述IXP之所述目的AS的第二路由信息??蛇x的,處理單元402還用于保存所述目的AS和所述第二路由信息的對應(yīng)關(guān)系。前述圖6實施例中的域間路由方法中的各種變化方式和具體實例同樣適用于本實施例的域間路由裝置,通過前述對域間路由方法的詳細描述,本領(lǐng)域技術(shù)人員可以清楚的知道本實施例中域間路由裝置的實施方法,所以為了說明書的簡潔,在此不再詳述。本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和 光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。當(dāng)前第1頁1 2 3