欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

覆蓋網(wǎng)備用路徑生成方法和裝置的制作方法

文檔序號(hào):7700543閱讀:121來源:國知局
專利名稱:覆蓋網(wǎng)備用路徑生成方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及互聯(lián)網(wǎng)中的路由優(yōu)化,特別涉及基于分域協(xié)作的覆蓋網(wǎng)備 用路徑生成方法和裝置。
背景技術(shù)
互聯(lián)網(wǎng)在最初設(shè)計(jì)時(shí)只針對數(shù)據(jù)傳輸服務(wù),因此它所采用的best-effort 數(shù)據(jù)傳輸方式僅僅提供了基本的端到端的連接,并不對丟包率、延遲、抖 動(dòng)和帶寬等提供特別保證。然而,隨著因特網(wǎng)規(guī)模的擴(kuò)張,大量新型應(yīng)用 開始興起,其中很多應(yīng)用對網(wǎng)絡(luò)傳輸性能的要求非??量?,例如,以網(wǎng)絡(luò) 視頻、在線游戲和虛擬現(xiàn)實(shí)等為代表的新型業(yè)務(wù)對互聯(lián)網(wǎng)提出了高帶寬、 低延遲、低抖動(dòng)的需求。
同時(shí),作為傳統(tǒng)Internet網(wǎng)最核心的路由協(xié)議-BGP協(xié)議,自1995 年完成修訂后,迄今為止沒有進(jìn)行過較大的修改,隨著網(wǎng)絡(luò)的飛速擴(kuò)展與 互聯(lián)關(guān)系的日益復(fù)雜,BGP路由協(xié)議在處理端到端傳輸時(shí),其收斂慢、冗 余性差、效率低的問題日漸凸顯,已很難適應(yīng)大量實(shí)時(shí)業(yè)務(wù)的傳輸要求。
早在90年代,為了解決實(shí)時(shí)業(yè)務(wù)傳輸質(zhì)量難以保證的問題,許多研 究人員先后提出了大量方案,IETF也制定了 Intserv和Diffserv兩種QoS 架構(gòu),試圖建立統(tǒng)一的解決方案。然而,由于互聯(lián)網(wǎng)的底層網(wǎng)絡(luò)資源分別 歸屬于不同的國家機(jī)構(gòu)和ISP,各自不同的利益追求很難達(dá)成整體的 一致, 因此,跨越多個(gè)網(wǎng)絡(luò)的傳輸無法實(shí)現(xiàn)可操作的端到端服務(wù)質(zhì)量保證方案。
近年來,研究者們提出釆用在應(yīng)用層架設(shè)覆蓋網(wǎng)(Overlay)的方式,來 繞過某些低效的BGP路徑以提升端到端的連接性能,縮短故障恢復(fù)時(shí)間。 所謂的覆蓋網(wǎng)是在現(xiàn)有因特網(wǎng)上構(gòu)建一個(gè)完全位于應(yīng)用層的網(wǎng)絡(luò)系統(tǒng),即 在IPv4底層網(wǎng)絡(luò)的基礎(chǔ)上通過節(jié)點(diǎn)之間單播機(jī)制將主機(jī)兩兩連接起來, 形成一個(gè)虛擬、獨(dú)立的網(wǎng)絡(luò)。它存在于因特網(wǎng)基礎(chǔ)設(shè)施和應(yīng)用程序之間, 利用ISP (Internet Service Provider,因特網(wǎng)服務(wù)提供商)提供的服務(wù)來向 其用戶提供更加優(yōu)化的服務(wù)??梢哉J(rèn)為,覆蓋網(wǎng)是分布在因特網(wǎng)上的一組 提供服務(wù)的終端主機(jī)的集合,它們?yōu)?一個(gè)或多個(gè)應(yīng)用程序提供下層的傳輸基礎(chǔ)設(shè)施,并在某種程度上處理和轉(zhuǎn)發(fā)應(yīng)用程序的數(shù)據(jù)。覆蓋網(wǎng)主要包括 兩個(gè)部分,分別為覆蓋網(wǎng)節(jié)點(diǎn)和邏輯鏈路。覆蓋網(wǎng)節(jié)點(diǎn)可以是各種網(wǎng)絡(luò)功 能節(jié)點(diǎn),如路由器、服務(wù)器等,甚至可以是終端,這些節(jié)點(diǎn)通常具有路由、
數(shù)據(jù)處理和數(shù)據(jù)保存等功能;而邏輯鏈路是由底層網(wǎng)絡(luò)組成,通常對應(yīng)底 層的一條或多條物理路徑。在Detour和RON等典型的Overlay技術(shù)中, 研究者們已通過建設(shè)相應(yīng)的實(shí)驗(yàn)網(wǎng),驗(yàn)證了采用Overlay網(wǎng)絡(luò)相對BGP在 快速響應(yīng)、故障恢復(fù)、業(yè)務(wù)QoS保證等方面的巨大優(yōu)勢。
覆蓋網(wǎng)的主要功能之一是實(shí)現(xiàn)對業(yè)務(wù)數(shù)據(jù)傳輸?shù)膬?yōu)化,而實(shí)現(xiàn)覆蓋網(wǎng) 傳輸優(yōu)化的關(guān)鍵就是其路由方式?;趯ΜF(xiàn)有路由覆蓋網(wǎng)絡(luò)技術(shù)方案的分 析,最常見的覆蓋網(wǎng)路由傳輸方式是基于選取轉(zhuǎn)發(fā)節(jié)點(diǎn)繞路路由的方式。 這種路由方式主要采用了中繼轉(zhuǎn)發(fā)路由的技術(shù),即數(shù)據(jù)發(fā)送方把數(shù)據(jù)包發(fā) 給轉(zhuǎn)發(fā)節(jié)點(diǎn),然后轉(zhuǎn)發(fā)節(jié)點(diǎn)將數(shù)據(jù)包中繼給數(shù)據(jù)接收方,從而構(gòu)造相應(yīng)的 Overlay路徑。已有研究發(fā)現(xiàn)2-跳的Overlay路徑提供的傳輸性能、可靠性 及路徑多樣程度(path diversity )與多跳Overlay路徑提供的近似,因此大 多數(shù)覆蓋網(wǎng)出于簡便和易于實(shí)現(xiàn)(不需要通過覆蓋網(wǎng)絡(luò)層實(shí)現(xiàn)非常復(fù)雜的 路由機(jī)制)的目的,均采用這種經(jīng)過一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)轉(zhuǎn)發(fā)的2-跳覆蓋網(wǎng)路徑。
對于這樣的繞路路由構(gòu)建方案,決定其所構(gòu)建路由的質(zhì)量的一個(gè)核心 因素就是轉(zhuǎn)發(fā)節(jié)點(diǎn)的選擇是否恰當(dāng)?,F(xiàn)有的大多數(shù)的Overlay網(wǎng)絡(luò)都是基 于覆蓋網(wǎng)自身的Overlay結(jié)構(gòu)進(jìn)行轉(zhuǎn)發(fā)節(jié)點(diǎn)的選取和備用路徑的構(gòu)建。比 如,在參考文獻(xiàn)1 "D. Andersen, H. Balakrishnan, M. Kaashoek, and R. Morris.Resilient Overlay Networks. In Proc. of the l她Symposium on Operating System Principles, Banff, Canada, October 2001"中,RON對路徑 性能進(jìn)行探測,基于探測結(jié)果進(jìn)行路徑篩選;而在參考文獻(xiàn)2"C. Cheng,Y. Huan, H. Kung, C. Wu. Path probing relay routing for achieving high end-to-end performance. GLOBECOM 2004"中,Cheng提出了使用隨機(jī)搜 索的算法來發(fā)現(xiàn)可用的替換路徑。上述算法在實(shí)現(xiàn)路徑選取時(shí),都只是基 于對Overlay路徑的分析,由于缺乏對底層網(wǎng)絡(luò)拓樸信息的分析和利用, 使得Overlay網(wǎng)絡(luò)中所使用的備用路徑與默認(rèn)底層IP路徑所使用的物理鏈 路或路由器具有關(guān)聯(lián)性,即備用路徑可能會(huì)與默認(rèn)路徑同時(shí)失效,因此實(shí) 際運(yùn)行中所遇到的路徑故障大約有40 - 50%無法在此類Overlay網(wǎng)絡(luò)中避 免?;谏鲜鲈?,在覆蓋網(wǎng)中選擇鄰居轉(zhuǎn)發(fā)節(jié)點(diǎn)時(shí),應(yīng)當(dāng)充分考慮底層 網(wǎng)絡(luò)的信息。

發(fā)明內(nèi)容
本發(fā)明的一個(gè)目的是克服現(xiàn)有技術(shù)中鄰居轉(zhuǎn)發(fā)節(jié)點(diǎn)所構(gòu)建的備用路 徑與默認(rèn)路徑存在相關(guān)性的缺陷,從而提供一種備用路徑生成方法。 本發(fā)明的另一個(gè)目的是提供一種備用路徑生成裝置。
為了實(shí)現(xiàn)上述目的,本發(fā)明提供了一種覆蓋網(wǎng)備用路徑生成方法,用 于在包括接入服務(wù)器節(jié)點(diǎn)、標(biāo)志服務(wù)器節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)和用戶節(jié)點(diǎn)的覆蓋 網(wǎng)上為源用戶節(jié)點(diǎn)選取合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建從源用戶節(jié)點(diǎn)到目的用戶
節(jié)點(diǎn)的備用路徑,該方法包括
步驟1 )、利用所述覆蓋網(wǎng)中的標(biāo)志服務(wù)器節(jié)點(diǎn)對所述轉(zhuǎn)發(fā)節(jié)點(diǎn)做網(wǎng)絡(luò)
測距,根據(jù)網(wǎng)絡(luò)測距結(jié)果計(jì)算任意兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似度,由
所述綜合性能相似度為具有相近性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò);其
中,在所述覆蓋網(wǎng)的一個(gè)自由域內(nèi)屬于同一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)擁有 同一個(gè)入口轉(zhuǎn)發(fā)節(jié)點(diǎn);
步驟2 )、所述接入服務(wù)器節(jié)點(diǎn)根據(jù)所述用戶節(jié)點(diǎn)的請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息 在所述用戶節(jié)點(diǎn)所在的自由域中選擇邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),然后通過所述邏輯轉(zhuǎn) 發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)找到與所述入口轉(zhuǎn)發(fā)節(jié)點(diǎn)在同 一 自由域且同 一邏 輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)作為服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn);所述服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在所在的邏 輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)上運(yùn)行BFBB算法,根據(jù)該算法的運(yùn)行結(jié)果選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);其中,
所述的BFBB算法在計(jì)算網(wǎng)絡(luò)拓樸圖中每個(gè)節(jié)點(diǎn)的度和核度后,在當(dāng) 前節(jié)點(diǎn)上通過廣度優(yōu)先算法在所述網(wǎng)絡(luò)拓樸圖上選取核度值大于當(dāng)前節(jié) 點(diǎn)的核度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn);若所 能找到的節(jié)點(diǎn)的數(shù)目無法滿足要求,則將當(dāng)前節(jié)點(diǎn)的度與核度的商的值遞 減后,重新在當(dāng)前節(jié)點(diǎn)上利用廣度優(yōu)先算法選取核度值大于當(dāng)前節(jié)點(diǎn)的核 度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn),直到滿足對 所選取節(jié)點(diǎn)的數(shù)目要求;
步驟3)、對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢測,保留通過性能 檢測的候選轉(zhuǎn)發(fā)節(jié)點(diǎn),在所述用戶節(jié)點(diǎn)間進(jìn)行業(yè)務(wù)通信時(shí),根據(jù)業(yè)務(wù)從所 保留的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建備用路徑。
上述技術(shù)方案中,在所述步驟2)中所得到的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的數(shù) 目小于用戶的需求時(shí),在所述的步驟2)和所述的步驟3)之間還包括選取二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的步驟,該步驟包括
在所述覆蓋網(wǎng)的網(wǎng)絡(luò)拓樸圖上運(yùn)行BFBB算法;
根據(jù)所述BFBB算法的計(jì)算結(jié)果,從所述覆蓋網(wǎng)中選取一個(gè)自由域, 在該自由域內(nèi)選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)盡 量不屬于所述第 一用戶節(jié)點(diǎn)所在自由域內(nèi)的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
上述技術(shù)方案中,所述的步驟l)包括
步驟1-1)、所述覆蓋網(wǎng)中的所有轉(zhuǎn)發(fā)節(jié)點(diǎn)對所述覆蓋網(wǎng)中的所有標(biāo)志 服務(wù)器節(jié)點(diǎn)做網(wǎng)絡(luò)測距,得到關(guān)于延遲、丟包率和瓶頸帶寬的指標(biāo);
步驟1-2)、根據(jù)所述指標(biāo)計(jì)算任意兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似
度;
步驟l-3)、對所有的綜合性能相似度結(jié)果做排序,然后為所述排序結(jié) 果分段,將具有相近綜合性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)分配到同一個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。 上述技術(shù)方案中,所述的步驟l)還包括
步驟1-4)、由所述邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)向鄰居域的入口轉(zhuǎn)發(fā) 節(jié)點(diǎn)做鏈路性能探測;所述鏈路性能包括路徑的延遲、丟包率和瓶頸帶寬;
步驟1-5)、所述鏈路性能探測的結(jié)果保存到入口轉(zhuǎn)發(fā)節(jié)點(diǎn)的鏈路狀態(tài) 表中,所述鏈路狀態(tài)表的信息定時(shí)向鄰居域的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)更新。
上述技術(shù)方案中,在所述的步驟1-2)中,所述綜合性能相似度采用 下列公式計(jì)算
^表示節(jié)點(diǎn)A與節(jié)點(diǎn)B之間的綜合性能相似度,D"表示節(jié)點(diǎn)A與節(jié) 點(diǎn)B間的延遲相似度,L、表示節(jié)點(diǎn)A與節(jié)點(diǎn)B間的丟包率相似度,Bwav 表示節(jié)點(diǎn)A與節(jié)點(diǎn)B間的瓶頸帶寬相似度,《、 "、 Z為網(wǎng)絡(luò)系統(tǒng)對性能 的要求有關(guān)的常量值;其中,
<formula>formula see original document page 11</formula>
D亂表示節(jié)點(diǎn)A與覆蓋網(wǎng)中第i個(gè)標(biāo)志服務(wù)器節(jié)點(diǎn)間的延遲指標(biāo),Ls亂表示節(jié)點(diǎn)A與覆蓋網(wǎng)中第i個(gè)標(biāo)志服務(wù)器節(jié)點(diǎn)間的丟包率指標(biāo),Bv^表示 節(jié)點(diǎn)A與覆蓋網(wǎng)中第i個(gè)標(biāo)志服務(wù)器節(jié)點(diǎn)間的瓶頸帶寬指標(biāo)。 上述技術(shù)方案中,所述的步驟2)包括
步驟2-1 )、所述接入服務(wù)器節(jié)點(diǎn)根據(jù)所述用戶節(jié)點(diǎn)發(fā)起的請求轉(zhuǎn)發(fā)節(jié) 點(diǎn)消息在所述用戶節(jié)點(diǎn)所在自由域中選擇邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),并將所述邏輯轉(zhuǎn) 發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)的地址通知所述用戶節(jié)點(diǎn);
步驟2-2 )、所述入口轉(zhuǎn)發(fā)節(jié)點(diǎn)根據(jù)所迷用戶節(jié)點(diǎn)發(fā)起的請求轉(zhuǎn)發(fā)節(jié)點(diǎn) 消息選取一個(gè)與該入口轉(zhuǎn)發(fā)節(jié)點(diǎn)具有相同自由域和相同邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的 轉(zhuǎn)發(fā)節(jié)點(diǎn),作為為所述用戶節(jié)點(diǎn)服務(wù)的服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn);
步驟2-3 )、所述服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在自身的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)上運(yùn)行BFBB算 法,根據(jù)算法的運(yùn)行結(jié)果在所述覆蓋網(wǎng)中選擇有別于所述服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)所 在自由域的自由域,然后在所述自由域內(nèi)選擇與該服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)具有相同 邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)作為 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn),所述一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn) 返回給所述的第一用戶節(jié)點(diǎn)。
上述技術(shù)方案中,所述的步驟2)還包括
步驟2-4)、所述用戶節(jié)點(diǎn)將接收到的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)與自身的一次
候選轉(zhuǎn)發(fā)節(jié)點(diǎn)列表進(jìn)行比較;
步驟2-5 )、所述用戶節(jié)點(diǎn)向不存在于所述列表中的新的轉(zhuǎn)發(fā)節(jié)點(diǎn)發(fā)送
自身的信息,從而在所述新的轉(zhuǎn)發(fā)節(jié)點(diǎn)的鏈路狀態(tài)表中查詢所述新的轉(zhuǎn)發(fā)
節(jié)點(diǎn)所在自由域與所述用戶節(jié)點(diǎn)所在自由域之間的鏈路屬性信息; 步驟2-6 )、所述鏈路屬性信息返回并保存到所述用戶節(jié)點(diǎn)。 上述技術(shù)方案中,在所述的步驟2-1)中,所述接入服務(wù)器節(jié)點(diǎn)根據(jù)
用戶節(jié)點(diǎn)發(fā)起的請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息在所述用戶節(jié)點(diǎn)所在自由域中選擇邏
輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)時(shí),選擇盡可能多的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
上述技術(shù)方案中,在所述的選取二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的步驟后,還包括 所述的用戶節(jié)點(diǎn)對所述的二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)做周期性的路徑性能探
測,并將探測結(jié)果保存到所述用戶節(jié)點(diǎn)的鏈路狀態(tài)表中。
上述技術(shù)方案中,在所述的步驟3)中,對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的
路徑做性能檢測包括
步驟3-l )、用戶節(jié)點(diǎn)根據(jù)業(yè)務(wù)的類型確定路徑的門限指標(biāo);
步驟3-2 )、從所述一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇轉(zhuǎn)發(fā)節(jié)點(diǎn);
步驟3 -3 )、獲取一 用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至另 一 用戶節(jié)點(diǎn)的路徑性能;
步驟3_4)、將步驟3-3)所獲取的路徑性能與步驟3-l)中所確定的門 限指標(biāo)進(jìn)行比較,根據(jù)比較結(jié)果確定路徑是否通過了性能檢測。
上述技術(shù)方案中,對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢測還包

步驟3-5 )、當(dāng)所述一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中能夠通過路徑性能檢測的轉(zhuǎn)發(fā) 節(jié)點(diǎn)數(shù)目無法滿足用戶要求時(shí),從所述二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇轉(zhuǎn)發(fā)節(jié) 點(diǎn);
步驟3-6 )、獲取一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至另 一用戶節(jié)點(diǎn)的 路徑性能;
步驟3-7)、將步驟3-6)所獲取的路徑性能與步驟3-l )中所確定的門 限指標(biāo)進(jìn)行比較,根據(jù)比較結(jié)果確定路徑是否通過了性能檢測。
上述技術(shù)方案中,在所述的步驟3-3)中,獲取所述第一用戶節(jié)點(diǎn)經(jīng) 由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至所述第二用戶節(jié)點(diǎn)的路徑性能包括
從所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)的鏈路狀態(tài)表中查詢從所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自由 域到所述第二用戶節(jié)點(diǎn)所在自由域間的鏈路屬性,從所述第一用戶節(jié)點(diǎn)的 鏈路狀態(tài)表中獲取從所述第 一用戶節(jié)點(diǎn)所在自由域到所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在 自由域的鏈路屬性,進(jìn)而獲取所述第一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至 所述第二用戶節(jié)點(diǎn)的路徑性能;
或所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)通過路徑探測,得到從所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自由域 到所述第二用戶節(jié)點(diǎn)所在自由域間的鏈路屬性,從所述第 一用戶節(jié)點(diǎn)的鏈 路狀態(tài)表中獲取從所述第 一 用戶節(jié)點(diǎn)所在自由域到所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自 由域的鏈路屬性,進(jìn)而獲取所述第一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至所 述第二用戶節(jié)點(diǎn)的路徑性能。
上述技術(shù)方案中,在所述的步驟3-6)中,獲取所述第一用戶節(jié)點(diǎn)經(jīng) 由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至所述第二用戶節(jié)點(diǎn)的路徑性能包括
所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)通過路徑探測,得到從所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自由域到 所述第二用戶節(jié)點(diǎn)所在自由域間的鏈路屬性,從所述第一用戶節(jié)點(diǎn)的鏈路 狀態(tài)表中獲取從所述第一用戶節(jié)點(diǎn)所在自由域到所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自由 域的鏈路屬性,進(jìn)而獲取所述第一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至所述 第二用戶節(jié)點(diǎn)的路徑性能。
本發(fā)明還提供了 一種覆蓋網(wǎng)備用路徑生成裝置,用于在包括接入服務(wù)器節(jié)點(diǎn)、標(biāo)志服務(wù)器節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)和用戶節(jié)點(diǎn)的覆蓋網(wǎng)上為源用戶節(jié)點(diǎn) 選取合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建從源用戶節(jié)點(diǎn)到目的用戶節(jié)點(diǎn)的備用路徑,該 裝置包括邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)創(chuàng)建模塊、 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)選取模塊以及性能檢
測模塊;其中,
所述的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)創(chuàng)建模塊利用所述覆蓋網(wǎng)中的標(biāo)志服務(wù)器節(jié)點(diǎn) 對所述轉(zhuǎn)發(fā)節(jié)點(diǎn)做網(wǎng)絡(luò)測距,根據(jù)網(wǎng)絡(luò)測距結(jié)果計(jì)算任意兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間 的綜合性能相似度,由所述綜合性能相似度為具有相近性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu) 建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò);其中,在所述覆蓋網(wǎng)的一個(gè)自由域內(nèi)屬于同一邏輯轉(zhuǎn)發(fā) 網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)擁有同 一 個(gè)入口轉(zhuǎn)發(fā)節(jié)點(diǎn);
所述的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)選取模塊用于由所述接入服務(wù)器節(jié)點(diǎn)根據(jù)
所述用戶節(jié)點(diǎn)的請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息在所述用戶節(jié)點(diǎn)所在的自由域中選擇 邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),然后通過所述邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)找到與所述入 口轉(zhuǎn)發(fā)節(jié)點(diǎn)在同 一 自由域且同 一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)作為服務(wù)轉(zhuǎn)發(fā) 節(jié)點(diǎn);所述服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在所在的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)上運(yùn)行BFBB算法,根據(jù) 該算法的運(yùn)行結(jié)果選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);其中,
所述的BFBB算法在計(jì)算網(wǎng)絡(luò)拓樸圖中每個(gè)節(jié)點(diǎn)的度和核度后,在當(dāng) 前節(jié)點(diǎn)上通過廣度優(yōu)先算法在所述網(wǎng)絡(luò)拓樸圖上選取核度值大于當(dāng)前節(jié) 點(diǎn)的核度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn);若所 能找到的節(jié)點(diǎn)的數(shù)目無法滿足要求,則將當(dāng)前節(jié)點(diǎn)的度與核度的商的值遞 減后,重新在當(dāng)前節(jié)點(diǎn)上利用廣度優(yōu)先算法選取核度值大于當(dāng)前節(jié)點(diǎn)的核 度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn),直到滿足對 所選取節(jié)點(diǎn)的數(shù)目要求;
所述的性能檢測模塊用于對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢 測,保留通過性能檢測的候選轉(zhuǎn)發(fā)節(jié)點(diǎn),在所述用戶節(jié)點(diǎn)間進(jìn)行業(yè)務(wù)通信 時(shí),根據(jù)業(yè)務(wù)從所保留的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建備用 路徑。
上述技術(shù)方案中,還包括二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)選取模塊,該模塊用于在 所述覆蓋網(wǎng)的網(wǎng)絡(luò)拓樸圖上運(yùn)行BFBB算法,然后根據(jù)所述BFBB算法的 計(jì)算結(jié)果,從所述覆蓋網(wǎng)中選取一個(gè)自由域,在該自由域內(nèi)選擇轉(zhuǎn)發(fā)節(jié)點(diǎn) 作為二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)盡量不屬于所述第一用戶節(jié)點(diǎn) 所在自由域內(nèi)的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
本發(fā)明的優(yōu)點(diǎn)在于本發(fā)明能夠顯著地提高轉(zhuǎn)發(fā)鄰居節(jié)點(diǎn)的命中率,降低所構(gòu)建備用路徑 與默認(rèn)路徑同時(shí)發(fā)生故障的可能性。


圖1為本發(fā)明中所涉及的覆蓋網(wǎng)的一個(gè)實(shí)施例的示意圖; 圖2為將覆蓋網(wǎng)中的轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的示意圖; 圖3為一個(gè)AS內(nèi)且屬于同一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的所有轉(zhuǎn)發(fā)節(jié)點(diǎn)對外所提 供的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)的示意圖4為邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)發(fā)送鏈路狀態(tài)表的示意圖; 圖5為已經(jīng)為轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的覆蓋網(wǎng)的示意圖; 圖6為對圖5中的用戶節(jié)點(diǎn)Cl與用戶節(jié)點(diǎn)C2建立業(yè)務(wù)通信的示意
圖7為本發(fā)明的備用路徑生成方法的流程圖。
具體實(shí)施例方式
下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明做進(jìn)一步說明。
在本發(fā)明中,所涉及的覆蓋網(wǎng)可以應(yīng)用在多種類型的網(wǎng)絡(luò),如P2P網(wǎng) 絡(luò)、CDN網(wǎng)絡(luò)以及各種Overlay網(wǎng)絡(luò),如RON、 QRON、 NIRA.OverQos 等。在下面的實(shí)施例中,所涉及的覆蓋網(wǎng)不限于具體的網(wǎng)絡(luò)類型,可在前 面所提到的各種網(wǎng)絡(luò)上應(yīng)用。
在本發(fā)明中,覆蓋網(wǎng)中的各個(gè)節(jié)點(diǎn)可分為三種類型,包括服務(wù)節(jié)點(diǎn)、 轉(zhuǎn)發(fā)節(jié)點(diǎn)以及用戶節(jié)點(diǎn),其中的服務(wù)節(jié)點(diǎn)又可進(jìn)一步分為接入服務(wù)器節(jié)點(diǎn) (Server)和標(biāo)志服務(wù)器節(jié)點(diǎn)(Landmark)。所述的接入服務(wù)器節(jié)點(diǎn)用于存 儲(chǔ)和維護(hù)系統(tǒng)信息,而標(biāo)志服務(wù)器節(jié)點(diǎn)則用于實(shí)現(xiàn)網(wǎng)絡(luò)測距,在本發(fā)明中, 所述的網(wǎng)絡(luò)測距主要包括測量延遲、抖動(dòng)和瓶頸帶寬。所迷的轉(zhuǎn)發(fā)節(jié)點(diǎn)用 于向用戶提供穩(wěn)定的轉(zhuǎn)發(fā)服務(wù),或在系統(tǒng)啟動(dòng)時(shí)啟動(dòng)路由轉(zhuǎn)發(fā)服務(wù)。所述 的用戶節(jié)點(diǎn)是網(wǎng)絡(luò)系統(tǒng)中接受路由優(yōu)化服務(wù)的客戶。上述的服務(wù)節(jié)點(diǎn)、轉(zhuǎn) 發(fā)節(jié)點(diǎn)以及用戶節(jié)點(diǎn)之間相互連接,從而構(gòu)成所述的覆蓋網(wǎng)。覆蓋網(wǎng)中各 種類型的節(jié)點(diǎn)都不限于一個(gè)。
在上述覆蓋網(wǎng)中,不同用戶節(jié)點(diǎn)間做數(shù)據(jù)通信時(shí)存在默認(rèn)的路徑,但 這些默認(rèn)路徑會(huì)由于各種各樣的原因而發(fā)生故障,因此需要采用本發(fā)明的 方法從網(wǎng)絡(luò)中選擇合適的轉(zhuǎn)發(fā)節(jié)點(diǎn),進(jìn)而構(gòu)建最適合的備用路徑,使得默
15換到這些備用路徑上實(shí)現(xiàn)用戶節(jié)點(diǎn)間的繼續(xù)通 信。本發(fā)明在為用戶節(jié)點(diǎn)選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)時(shí),需要首先為覆蓋網(wǎng)中的各個(gè)轉(zhuǎn)
發(fā)節(jié)點(diǎn)構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)(LFN, Logical Forward Network),將具有相似 性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)分配到同 一個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中,將性能存在明顯差異的轉(zhuǎn) 發(fā)節(jié)點(diǎn)分配到不同的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中;然后再根據(jù)需要從各個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng) 絡(luò)選擇候選鄰居轉(zhuǎn)發(fā)節(jié)點(diǎn),從所述候選鄰居轉(zhuǎn)發(fā)節(jié)點(diǎn)中得到某一用戶節(jié)點(diǎn) 的轉(zhuǎn)發(fā)節(jié)點(diǎn);最后就可以根據(jù)所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu)建備用路徑。在對本發(fā) 明的上述實(shí)現(xiàn)方法做進(jìn)一步說明前,首先對其中所涉及到的概念、算法做 統(tǒng)一的i兌明。
一、綜合性能相似度計(jì)算方法
在前面已經(jīng)提到,本發(fā)明需要將整個(gè)覆蓋網(wǎng)中具有相近性能的轉(zhuǎn)發(fā)節(jié) 點(diǎn)分配到同一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中。對轉(zhuǎn)發(fā)節(jié)點(diǎn)的這一分配過程可通過綜合性 能相似度計(jì)算方法實(shí)現(xiàn)。
在這一計(jì)算方法中,首先從覆蓋網(wǎng)中選取一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn),然后用這一 轉(zhuǎn)發(fā)節(jié)點(diǎn)對覆蓋網(wǎng)中所有的標(biāo)志服務(wù)器節(jié)點(diǎn)做網(wǎng)絡(luò)測距,得到關(guān)于延遲、 丟包率和瓶頸帶寬的指標(biāo)。若覆蓋網(wǎng)中的標(biāo)志服務(wù)器節(jié)點(diǎn)有n個(gè),則轉(zhuǎn)發(fā) 節(jié)點(diǎn)的網(wǎng)絡(luò)測距結(jié)果由n個(gè)分量組成,每個(gè)分量包括該轉(zhuǎn)發(fā)節(jié)點(diǎn)對一個(gè)標(biāo) 志服務(wù)器節(jié)點(diǎn)的網(wǎng)絡(luò)測距結(jié)果。對覆蓋網(wǎng)中的所有轉(zhuǎn)發(fā)節(jié)點(diǎn)都做上述搡 作,即可得到所有轉(zhuǎn)發(fā)節(jié)點(diǎn)的網(wǎng)絡(luò)測距結(jié)果。
在得到轉(zhuǎn)發(fā)節(jié)點(diǎn)的網(wǎng)絡(luò)測距結(jié)果后,就可以根據(jù)網(wǎng)絡(luò)測距結(jié)果計(jì)算轉(zhuǎn) 發(fā)節(jié)點(diǎn)間的兩兩相似度。在前面已經(jīng)提到,網(wǎng)絡(luò)測距結(jié)果包括關(guān)于延遲、 丟包率和瓶頸帶寬的指標(biāo),因此,轉(zhuǎn)發(fā)節(jié)點(diǎn)間的相似度可分為延遲相似度 DAV 、丟包率相似度LsAv和瓶頸帶寬相似度BwAv 。
假設(shè)要計(jì)算某一覆蓋網(wǎng)中的兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)A、 B間的相似度,該覆蓋 網(wǎng)中的標(biāo)志服務(wù)器節(jié)點(diǎn)有n個(gè),用Li, L2…Ln表示,則用D化表示轉(zhuǎn)發(fā)節(jié)
點(diǎn)X與某一標(biāo)志服務(wù)器節(jié)點(diǎn)Li間的延遲,其中Xe(A,B), Lje(L,,L2,…,Ln)。 同樣的,可以用Lsxt,表示轉(zhuǎn)發(fā)節(jié)點(diǎn)X與某 一標(biāo)志服務(wù)器節(jié)點(diǎn)Li間的丟包率, 用Bw&表示轉(zhuǎn)發(fā)節(jié)點(diǎn)X與某一標(biāo)志服務(wù)器節(jié)點(diǎn)Lj間的瓶頸帶寬。轉(zhuǎn)發(fā)節(jié) 點(diǎn)A、 B間的延遲相似度D^、丟包率相似度Ls^和瓶頸帶寬相似度Bw^可 采用如下公式計(jì)算
<formula>formula see original document page 16</formula>lsav = V(Lsal, —lsbLi)2十(Ls亂2 — LsBL2)2 + —LsBLn)
BwAv = V(Bw^ — BwBL| )2 + (Bw亂2 - BwBL2 )2 +…+ (Bw亂。-
BwBL )
在得到延遲相似度D^、丟包率相似度LsAv和瓶頸帶寬相似度Bw^后, 可進(jìn)一步計(jì)算兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似度I^,其計(jì)算公式如下
在上述公式中,《、 "、 y為常量值,它們的大小與網(wǎng)絡(luò)系統(tǒng)對具體性 能的要求有關(guān),若網(wǎng)絡(luò)系統(tǒng)對丟包率的要求較高,則〃的數(shù)值與"、y相比 就相對4交高。
二、 限界廣度優(yōu)先算法BFBB
限界廣度優(yōu)先算法BFBB是在覆蓋網(wǎng)的網(wǎng)絡(luò)拓樸圖中基于拓樸分析尋 找轉(zhuǎn)發(fā)節(jié)點(diǎn)的方法。該方法包括以下步驟
步驟1)、計(jì)算拓樸圖中每個(gè)節(jié)點(diǎn)的度(degree)和核度(coreness )。 度的大小由拓樸圖中與節(jié)點(diǎn)相交的邊的個(gè)數(shù)而定,而核度的大小也可通過 現(xiàn)有技術(shù)計(jì)算得到。在參考文獻(xiàn)3 "A. Hamelin, J. Lgnacio, D. A. Luca, B. Alain and V. Alessandro. k-core decomposition: a tool for the visualization of large scale networks, http:〃arxiv.org/abs/cs.NI/0511007, 2005"中有對如何計(jì) 算核度的詳細(xì)說明。
步驟2)、在拓樸圖中選擇一個(gè)節(jié)點(diǎn)作為當(dāng)前節(jié)點(diǎn),并計(jì)算兩個(gè)變量 REF和Cornref的值,其中REF = degree/coreness, Cornref = coreness。
步驟3)、在當(dāng)前節(jié)點(diǎn)調(diào)用廣度優(yōu)先算法,在拓樸圖上選取coreness >= Cornref且degree/coreness 〉 REF的節(jié)點(diǎn),若所能找到的節(jié)點(diǎn)個(gè)數(shù)無法達(dá)到 用戶的要求,則繼續(xù)執(zhí)行下一步。
步驟4 )、令REF=REF-1后,重新執(zhí)行前一步驟。
步驟5)、將查找到的節(jié)點(diǎn)返回后,結(jié)束計(jì)算過程。
三、 IPtoAS算法
該算法主要用于通過IP地址查找該IP地址所屬的AS (自治域),其 實(shí)現(xiàn)包括以下步驟
1、 得到熟知的AS號(hào)及其所擁有IP前綴的對照表
2、 將所有IP前綴存儲(chǔ)為一顆Trie樹,葉子節(jié)點(diǎn)為AS號(hào)3、依據(jù)所輸入的IP地址IPi,查詢Trie樹,依據(jù)最長匹配的原則,選 取對應(yīng)的AS號(hào)ASj,然后將結(jié)果返回。
在對本發(fā)明所涉及的算法統(tǒng)一做解釋說明后,下面結(jié)合附圖對本發(fā)明 進(jìn)行說明。
在圖1所示的覆蓋網(wǎng)絡(luò)中,包括有標(biāo)志服務(wù)器節(jié)點(diǎn)(用L表示)、接 入服務(wù)器節(jié)點(diǎn)(用S表示)、轉(zhuǎn)發(fā)節(jié)點(diǎn)(用F表示)以及用戶節(jié)點(diǎn)(用C 表示)。上述各類節(jié)點(diǎn)存在于不同的AS域內(nèi)。
在某 一 時(shí)刻,如覆蓋網(wǎng)絡(luò)初次啟動(dòng)時(shí),將覆蓋網(wǎng)中的所有轉(zhuǎn)發(fā)節(jié)點(diǎn)(包 括有轉(zhuǎn)發(fā)功能的服務(wù)節(jié)點(diǎn))按照性能構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),從而將具有近似 性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)分配到同一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中。在構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)時(shí),根 據(jù)前述的綜合性能相似度計(jì)算方法所述,由各個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)對所有的標(biāo)志服 務(wù)器節(jié)點(diǎn)進(jìn)行探測,測量其到標(biāo)志服務(wù)器節(jié)點(diǎn)的延遲,丟包率和瓶頸帶寬, 進(jìn)而利用前述的公式(1) 一公式(4)對各個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似 度進(jìn)行計(jì)算。在得到所有轉(zhuǎn)發(fā)節(jié)點(diǎn)相互間的綜合性能相似度后,可對所有 的相似度結(jié)果進(jìn)行排序,然后再將排序結(jié)果分段,從而把綜合性能相近的 轉(zhuǎn)發(fā)節(jié)點(diǎn)分配到一起,從而構(gòu)建出多個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。由于在邏輯轉(zhuǎn)發(fā)網(wǎng) 絡(luò)中,轉(zhuǎn)發(fā)節(jié)點(diǎn)之間需要定期地進(jìn)行路徑性能的探測,并發(fā)布探測結(jié)果, 因此需要對邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中轉(zhuǎn)發(fā)節(jié)點(diǎn)的數(shù)目進(jìn)行控制,以避免由于轉(zhuǎn)發(fā)節(jié) 點(diǎn)的數(shù)量太多而導(dǎo)致系統(tǒng)開銷太大的問題。因此,在本實(shí)施例中,將一個(gè) 邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)規(guī)模限制為50個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn),如果某一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)內(nèi)所包 含的轉(zhuǎn)發(fā)節(jié)點(diǎn)數(shù)超過50,則可將這一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)拆分。以圖2為例,從 AS1到AS7的多個(gè)自由域中,各自有不同數(shù)目的轉(zhuǎn)發(fā)節(jié)點(diǎn),這些轉(zhuǎn)發(fā)節(jié)點(diǎn) 按照性能分別被分配到了 LFN1、 LFN2、 LFN3三個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中,一 個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)所包含的轉(zhuǎn)發(fā)節(jié)點(diǎn)并不局限于某一 AS,而是不同AS內(nèi)轉(zhuǎn) 發(fā)節(jié)點(diǎn)的集合。此外,雖然在圖2中在一個(gè)AS內(nèi)對于某一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò) 只示出了一個(gè)節(jié)點(diǎn),但這一節(jié)點(diǎn)實(shí)際上由多個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)組成,只是對外以 一個(gè)節(jié)點(diǎn)的形式表示。這類節(jié)點(diǎn)也被稱為邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中的邏輯節(jié)點(diǎn) (LN)。如圖3所示, 一個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)在一個(gè)AS內(nèi)的一個(gè)邏輯節(jié)點(diǎn)擁 有多個(gè)(這里是5)個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn),這些屬于同一邏輯節(jié)點(diǎn)的所有轉(zhuǎn)發(fā)節(jié)點(diǎn) 間卩波此全互連。
為了適應(yīng)前述邏輯節(jié)點(diǎn)的現(xiàn)象,所有在一個(gè)AS內(nèi)且屬于同一邏輯轉(zhuǎn) 發(fā)網(wǎng)絡(luò)的所有轉(zhuǎn)發(fā)節(jié)點(diǎn)會(huì)對外推選出一個(gè)入口轉(zhuǎn)發(fā)節(jié)點(diǎn)(AC),由該節(jié)點(diǎn)向用戶節(jié)點(diǎn)分配具體的轉(zhuǎn)發(fā)節(jié)點(diǎn)以及負(fù)責(zé)本邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)內(nèi)不同邏輯節(jié)
點(diǎn)之間鏈路性能的探測。如圖3所示,轉(zhuǎn)發(fā)節(jié)點(diǎn)F6就是在一個(gè)AS內(nèi)所擁 有的5個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)。入口轉(zhuǎn)發(fā)節(jié)點(diǎn)在做鏈路性能探測時(shí), 主要探測該入口轉(zhuǎn)發(fā)節(jié)點(diǎn)與鄰居域的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)間路徑的延遲、丟包率 和瓶頸帶寬,所得到的探測結(jié)果會(huì)存儲(chǔ)在鏈路狀態(tài)表中。在一個(gè)實(shí)例中, 假設(shè)一入口轉(zhuǎn)發(fā)節(jié)點(diǎn)ACi向鄰居域的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)ACj發(fā)起鏈路性能探 測,所得到的探測結(jié)果保存在自身的鏈路狀態(tài)表中。ACi每過30秒,將自 己的鏈路狀態(tài)表定期發(fā)送給鄰居ACj,鄰居ACj收到后,跟自己的鏈路狀 態(tài)表進(jìn)行比較更新。 一種優(yōu)選的更新順序是優(yōu)先比較延遲,其次是丟包率, 最后比較瓶頸帶寬,當(dāng)然這一更新順序也可根據(jù)需要改變。每個(gè)AC要將 自己的鏈路狀態(tài)表同本AS內(nèi)的其他同屬一個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)進(jìn) 行共享。每隔15分鐘重復(fù)上述過程,以保持鏈路的實(shí)時(shí)狀態(tài)。在圖4中 對鏈路狀態(tài)表的上述傳遞過程做了示意性說明。需要說明的是,此次所涉 及的鏈路狀態(tài)表更新時(shí)間的間隔只是舉例說明之用,在實(shí)際應(yīng)用中并不限 于上述時(shí)間間隔。
在為覆蓋網(wǎng)絡(luò)中的各個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)后,若有新的轉(zhuǎn)發(fā) 節(jié)點(diǎn)加入覆蓋網(wǎng)絡(luò)(可以是新部署的專用轉(zhuǎn)發(fā)節(jié)點(diǎn),也可以是由性能優(yōu)異、 在線時(shí)間穩(wěn)定的用戶節(jié)點(diǎn)所提升的轉(zhuǎn)發(fā)節(jié)點(diǎn)),則利用新的轉(zhuǎn)發(fā)節(jié)點(diǎn)對標(biāo) 志服務(wù)器節(jié)點(diǎn)做網(wǎng)絡(luò)測距,測量其到標(biāo)志服務(wù)器節(jié)點(diǎn)的延遲,丟包率和瓶 頸帶寬。然后從每個(gè)已經(jīng)產(chǎn)生的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中隨機(jī)選取一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn), 調(diào)用前述的綜合性能相似度計(jì)算方法,計(jì)算新增加的轉(zhuǎn)發(fā)節(jié)點(diǎn)與這些隨機(jī) 選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)之間的綜合性能相似度。在前面的說明中已經(jīng)提到,在生 成邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)時(shí),是將所有轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似度做排序、分段 后得到的,因此每個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)對應(yīng)有一段特定的綜合性能相似度區(qū) 間。因此,在得到新增加的轉(zhuǎn)發(fā)節(jié)點(diǎn)與隨機(jī)選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能 相似度后,先選擇其中的最大值,然后將該最大值與所對應(yīng)的隨機(jī)選擇的 轉(zhuǎn)發(fā)節(jié)點(diǎn)所在邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的綜合性能相似度區(qū)間進(jìn)行比較,若最大值在 這一區(qū)間內(nèi),則新增加的轉(zhuǎn)發(fā)節(jié)點(diǎn)就在該隨機(jī)選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)所在邏輯轉(zhuǎn) 發(fā)網(wǎng)絡(luò)內(nèi)。若最大值并不在這一區(qū)間內(nèi),則從新增加的轉(zhuǎn)發(fā)節(jié)點(diǎn)與這些隨 機(jī)選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似度中選擇次大值,繼續(xù)前述的比較過 程,根據(jù)比較結(jié)果決定新增加的轉(zhuǎn)發(fā)節(jié)點(diǎn)是否能夠加入到相應(yīng)的邏輯轉(zhuǎn)發(fā) 網(wǎng)絡(luò)內(nèi)。如果新增加的轉(zhuǎn)發(fā)節(jié)點(diǎn)無法加入任何已有的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),則該新增加的轉(zhuǎn)發(fā)節(jié)點(diǎn)形成一個(gè)新的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。在將新增加的轉(zhuǎn)發(fā)節(jié)點(diǎn)加 入已有邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的過程中,如果邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)在加入新的轉(zhuǎn)發(fā)節(jié)點(diǎn) 后,超出了規(guī)模限制,則分裂該邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
覆蓋網(wǎng)絡(luò)在如前所述構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)后,即可向用戶節(jié)點(diǎn)提供選取 轉(zhuǎn)發(fā)節(jié)點(diǎn)從而構(gòu)建備用路徑的服務(wù)。以圖5所示的覆蓋網(wǎng)絡(luò)為例,在整個(gè)
網(wǎng)絡(luò)中包括有三個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),分別用LFN1、 LFN2、 LFN3表示。LFN1 所包含的轉(zhuǎn)發(fā)節(jié)點(diǎn)在AS1、 AS2、 AS3、 AS4、 AS5內(nèi),而LFN2所包含的 轉(zhuǎn)發(fā)節(jié)點(diǎn)在AS1、 AS3、 AS4、 AS5和AS6內(nèi),LFN3所包含的轉(zhuǎn)發(fā)節(jié)點(diǎn) 在AS1、 AS2、 AS3、 AS4、 AS5和AS6內(nèi)。在AS1內(nèi)有一個(gè)用戶節(jié)點(diǎn), 用Cl表示。在某一時(shí)刻,用戶節(jié)點(diǎn)C1發(fā)起請求轉(zhuǎn)發(fā)節(jié)點(diǎn)的消息,為該 用戶節(jié)點(diǎn)選取轉(zhuǎn)發(fā)節(jié)點(diǎn)的操作如下。
覆蓋網(wǎng)絡(luò)中的接入服務(wù)器節(jié)點(diǎn)在收到用戶節(jié)點(diǎn)Cl的請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消 息后,運(yùn)行前述的IPtoAS算法,知道用戶節(jié)點(diǎn)所在的AS,從圖5可以知 道,Cl所在的AS為AS1。然后對AS1內(nèi)所包含的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的個(gè)數(shù) 進(jìn)行查詢,根據(jù)請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息中所請求的轉(zhuǎn)發(fā)節(jié)點(diǎn)的個(gè)數(shù),選擇盡可 能多的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),并將這些邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)在AS1內(nèi)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)通 知Cl。假設(shè)在一個(gè)實(shí)例中,用戶節(jié)點(diǎn)Cl所請求的轉(zhuǎn)發(fā)節(jié)點(diǎn)的個(gè)數(shù)有4個(gè), 由于AS1內(nèi)所包含的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的個(gè)數(shù)有3個(gè),因此邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò) LFN1 、 LFN2、 LFN3都被選中,并將它們的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)的地址都發(fā)送給 Cl。當(dāng)然,如果用戶節(jié)點(diǎn)Cl所請求的轉(zhuǎn)發(fā)節(jié)點(diǎn)的數(shù)目小于AS1內(nèi)所包含 的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的個(gè)數(shù),則在AS1內(nèi)可任意選擇與所請求的轉(zhuǎn)發(fā)節(jié)點(diǎn)數(shù)目 相同的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
用戶節(jié)點(diǎn)Cl在得到各個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)的地址后,向 這些入口轉(zhuǎn)發(fā)節(jié)點(diǎn)各自發(fā)出請求轉(zhuǎn)發(fā)節(jié)點(diǎn)的消息。各個(gè)入口轉(zhuǎn)發(fā)節(jié)點(diǎn)在收 到請求轉(zhuǎn)發(fā)節(jié)點(diǎn)的消息后,依據(jù)負(fù)載平衡的原則,在所屬LN中選取一個(gè) 合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以服務(wù)于用戶節(jié)點(diǎn)Cl,幫助用戶節(jié)點(diǎn)Cl進(jìn)一步查找所需 要的轉(zhuǎn)發(fā)節(jié)點(diǎn)。由于本步驟選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)起到服務(wù)的作用,因此,這一 轉(zhuǎn)發(fā)節(jié)點(diǎn)也被稱為服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn),用LFNs表示。如圖5所示,用戶節(jié)點(diǎn) C1在LFN1、 LFN2、 LFN3中各自查找一個(gè)服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn),分別用LFNs,、 LFNs,和LFN&表示。由于這些服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)都是由入口轉(zhuǎn)發(fā)節(jié)點(diǎn)在自身所 屬的LN中找到的,因此它們都存在于AS1中。
在得到服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)LFNSi后,由這些服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在各自的邏輯轉(zhuǎn)發(fā)
20網(wǎng)絡(luò)上運(yùn)行前述的BFBB算法,選取拓樸位置合適的n個(gè)AS,并隨機(jī)地 從這n個(gè)AS中選擇m個(gè)屬于該邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)。其中,所述的 n的大小為用戶請求的轉(zhuǎn)發(fā)節(jié)點(diǎn)數(shù)目與服務(wù)器在用戶節(jié)點(diǎn)所在AS中選中 的LFN網(wǎng)絡(luò)的個(gè)數(shù)的商;所述的m的個(gè)數(shù)通常為1或2,也可根據(jù)系統(tǒng) 情況確定。此次計(jì)算過程中所得到的轉(zhuǎn)發(fā)節(jié)點(diǎn)被稱為 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)。 仍然以圖5所示的實(shí)例為例,用戶節(jié)點(diǎn)Cl通過服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)LFNs,、 LFNs2 和LFN&分別在LFN1、 LFN2、 LFN3上找到了一個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn),這3個(gè)轉(zhuǎn)發(fā) 節(jié)點(diǎn)形成了一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)。由于轉(zhuǎn)發(fā)節(jié)點(diǎn)的作用是在不同AS域間建 立路徑,因此所得到的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)一定不存在于用戶節(jié)點(diǎn)Cl所在 的AS1中,而是在其他AS內(nèi),如對于LFN1而言,可能在AS2或AS3 或AS4或AS5內(nèi)。假設(shè)LFN1內(nèi)所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)位于AS3內(nèi),LFN2 所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)位于AS5內(nèi),LFN3所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)也位于AS5內(nèi)。
在得到一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)后,需要將它們返回給用戶節(jié)點(diǎn)Cl。在用 戶節(jié)點(diǎn)Cl上保存有一張一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)列表,將新得到的一次候選轉(zhuǎn) 發(fā)節(jié)點(diǎn)與所述的 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)列表進(jìn)行比較,若某一一 次候選轉(zhuǎn)發(fā)節(jié) 點(diǎn)已經(jīng)存在于用戶節(jié)點(diǎn)Cl的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)列表中,則忽略,否則用 戶節(jié)點(diǎn)Cl將自身的IP(SourceIP)地址信息發(fā)送給該一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn),由 這一一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)根據(jù)IP地址信息和IPtoAS算法得到用戶節(jié)點(diǎn)Cl 所在的AS,然后在該候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所保存的鏈路狀態(tài)表中查詢候選轉(zhuǎn)發(fā) 節(jié)點(diǎn)所在AS到用戶節(jié)點(diǎn)Cl所在AS的鏈路性能,所得到的結(jié)果返回給用 戶節(jié)點(diǎn)Cl并保存。對新得到的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)重復(fù)執(zhí)行上述操作。
前述操作所得到的 一 次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的數(shù)目可能已經(jīng)滿足用戶節(jié)點(diǎn) 對轉(zhuǎn)發(fā)節(jié)點(diǎn)的數(shù)目要求,也可能不能滿足要求。如在本實(shí)施例中,用戶節(jié) 點(diǎn)Cl所要求的轉(zhuǎn)發(fā)節(jié)點(diǎn)為4個(gè),而一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)只有3個(gè),并不能 滿足要求。對于此類情況,需要由用戶節(jié)點(diǎn)再次向接入服務(wù)器節(jié)點(diǎn)發(fā)起請 求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息,以第二次進(jìn)行候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的選取。在進(jìn)行第二次候選 轉(zhuǎn)發(fā)節(jié)點(diǎn)的選取時(shí),為了避免所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)與一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)相沖 突,采用與選取一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)時(shí)不同的選取方法。具體的說,接入服 務(wù)器節(jié)點(diǎn)在收到請求轉(zhuǎn)發(fā)節(jié)點(diǎn)的消息后,在整個(gè)AS網(wǎng)絡(luò)拓樸圖上運(yùn)行 BFBB算法尋找合適的AS,在找到AS后,從中選出所需數(shù)目的轉(zhuǎn)發(fā)節(jié)點(diǎn), 在選取過程中應(yīng)當(dāng)盡量保證所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)不屬于用戶節(jié)點(diǎn)所在AS內(nèi) 的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。例如,在圖5中已經(jīng)知道,Cl所在的AS為AS1,而AS1中所包含的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)有LEN1、 LEN2、 LEN3。那么在第二次選 取轉(zhuǎn)發(fā)節(jié)點(diǎn)的過程中,盡量不要選取LEN1、 LEN2、 LEN3中所包含的轉(zhuǎn) 發(fā)節(jié)點(diǎn)。如在AS3中存在F4,它不屬于前述的LEN1、 LEN2、 LEN3,因 此可以將它作為所要選擇的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)。只有在整個(gè)覆蓋網(wǎng)絡(luò)中,不存 在獨(dú)立于用戶節(jié)點(diǎn)所在AS內(nèi)的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)時(shí),才在這些邏 輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中選擇相應(yīng)的轉(zhuǎn)發(fā)節(jié)點(diǎn)。即使如此,也要盡量避免選擇那些已
經(jīng)被選入一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中的轉(zhuǎn)發(fā)節(jié)點(diǎn)。為了與 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)相區(qū) 別,此次選擇所得到的轉(zhuǎn)發(fā)節(jié)點(diǎn)被稱為二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)。對于每個(gè)二次 候選轉(zhuǎn)發(fā)節(jié)點(diǎn),由于不是通過用戶節(jié)點(diǎn)Cl所在AS內(nèi)的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)選 取的,因此不能通過查詢Cl所在AS內(nèi)的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的鏈路狀態(tài)表, 獲取C1到每個(gè)二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的路徑性能,因此,Cl需要對每個(gè)二次 候選轉(zhuǎn)發(fā)節(jié)點(diǎn)進(jìn)行周期型的路徑性能探測,并將探測結(jié)果保存到用戶節(jié)點(diǎn) Cl的鏈路狀態(tài)表中,以備構(gòu)造備用路徑之用。
用戶節(jié)點(diǎn)Cl在得到候選轉(zhuǎn)發(fā)節(jié)點(diǎn)后,就可以根據(jù)業(yè)務(wù)的需求選擇具 體的轉(zhuǎn)發(fā)節(jié)點(diǎn),從而構(gòu)建相應(yīng)的備用路徑。如圖6所示,在本實(shí)施例中, 假設(shè)要在圖5所示的覆蓋網(wǎng)絡(luò)的基礎(chǔ)上,實(shí)現(xiàn)用戶節(jié)點(diǎn)Cl與用戶節(jié)點(diǎn)C2 間的通信。
用戶節(jié)點(diǎn)Cl首先需要確定業(yè)務(wù)的類型,然后根據(jù)業(yè)務(wù)類型確定該業(yè) 務(wù)對哪一個(gè)性能指標(biāo)更為敏感,從而決定路徑的門限指標(biāo)Th。假設(shè)用戶節(jié) 點(diǎn)C1、 C2間的業(yè)務(wù)為文件傳輸業(yè)務(wù),則該業(yè)務(wù)對丟包率和瓶頸帶寬更加 敏感,因此將與丟包率和瓶頸帶寬有關(guān)的數(shù)值作為路徑的門限指標(biāo)。此外, 還要提取出業(yè)務(wù)傳輸源地址(即Cl的IP地址)和業(yè)務(wù)傳輸目的地址(即 C2的IP地址)。
用戶節(jié)點(diǎn)Cl的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中至少包括一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn),因此首 先從一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選取節(jié)點(diǎn)做性能檢測,以得到可行的轉(zhuǎn)發(fā)節(jié)點(diǎn)。 已知用戶節(jié)點(diǎn)C1的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)有3個(gè),按序選擇其中的一個(gè)候選 轉(zhuǎn)發(fā)節(jié)點(diǎn),假設(shè)先選擇LFN1中且位于AS3內(nèi)的候選轉(zhuǎn)發(fā)節(jié)點(diǎn),對所選擇 的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)做性能檢測。在性能檢測過程中,用戶節(jié)點(diǎn)C1將業(yè)務(wù)傳 輸目的地址(即C2的IP地址)發(fā)送給所選擇的候選轉(zhuǎn)發(fā)節(jié)點(diǎn),該節(jié)點(diǎn)運(yùn) 行所述的IPtoAS算法后查找到用戶節(jié)點(diǎn)C2所在的AS,然后在候選轉(zhuǎn)發(fā) 節(jié)點(diǎn)自身的鏈路狀態(tài)表中查詢從候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所在的AS到用戶節(jié)點(diǎn)C2 所在的AS的鏈路屬性,如果能夠找到,則將所找到的鏈路屬性信息返回給用戶節(jié)點(diǎn)Cl,如果不能找到,則候選轉(zhuǎn)發(fā)節(jié)點(diǎn)發(fā)起對用戶節(jié)點(diǎn)C2的探 觀'J,將探測得到的鏈路屬性信息返回給用戶節(jié)點(diǎn)Cl。用戶節(jié)點(diǎn)Cl得到從
候選轉(zhuǎn)發(fā)節(jié)點(diǎn)到用戶節(jié)點(diǎn)C2的鏈路屬性信息后,將該信息與用戶節(jié)點(diǎn)Cl 的鏈路狀態(tài)表中所記錄的用戶節(jié)點(diǎn)Cl到候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的鏈路屬性信息進(jìn) 行加權(quán),從而得到從用戶節(jié)點(diǎn)Cl (即業(yè)務(wù)傳輸源)經(jīng)由候選轉(zhuǎn)發(fā)節(jié)點(diǎn)到 用戶節(jié)點(diǎn)C2 (即業(yè)務(wù)傳輸目的)的整條路徑的鏈路屬性信息。在前面的 說明中已經(jīng)提到,鏈路屬性信息包括延遲、丟包率和瓶頸帶寬等多個(gè)性能 的相關(guān)信息,因此可以將所得到的鏈路屬性信息與為該業(yè)務(wù)設(shè)定的路徑門 限指標(biāo)Th進(jìn)行比較,若能達(dá)到路徑門限指標(biāo)Th,則所述的候選轉(zhuǎn)發(fā)節(jié)點(diǎn) 將作為可行的轉(zhuǎn)發(fā)節(jié)點(diǎn)并保存相關(guān)的信息,若不能達(dá)到路徑門限指標(biāo)Th, 則忽略該候選轉(zhuǎn)發(fā)節(jié)點(diǎn)。對于一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中的其它候選轉(zhuǎn)發(fā)節(jié)點(diǎn)做 類似的操作,從而得到這些候選轉(zhuǎn)發(fā)節(jié)點(diǎn)能否成為可行的轉(zhuǎn)發(fā)節(jié)點(diǎn)的結(jié) 論。
從一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)得到可行的轉(zhuǎn)發(fā)節(jié)點(diǎn)后,可行的轉(zhuǎn)發(fā)節(jié)點(diǎn)的數(shù)目 可能多于用戶的需求,此時(shí)從可行的轉(zhuǎn)發(fā)節(jié)點(diǎn)中選取若干個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)作為 最佳的轉(zhuǎn)發(fā)節(jié)點(diǎn),若可行的轉(zhuǎn)發(fā)節(jié)點(diǎn)的數(shù)目少于用戶的需求,則需要繼續(xù) 從二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選取可行轉(zhuǎn)發(fā)節(jié)點(diǎn)。雖然在本實(shí)施例中,用戶節(jié)點(diǎn)
Cl的二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)只有1個(gè),但在多數(shù)情況下,二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn) 的數(shù)目多于1個(gè),因此同樣按序依次選擇一個(gè)節(jié)點(diǎn)做性能檢測。在性能檢 測過程中,由于在多數(shù)情況下,二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)不屬于用戶節(jié)點(diǎn)所在 AS內(nèi)的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)中的節(jié)點(diǎn),因此,無法通過查詢鏈路狀態(tài)表的方式 得到二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)到作為業(yè)務(wù)傳輸目的的用戶節(jié)點(diǎn)C2的鏈路屬性信 息。因此,作為業(yè)務(wù)傳輸源的用戶節(jié)點(diǎn)Cl將用戶節(jié)點(diǎn)C2的IP地址發(fā)送 給候選轉(zhuǎn)發(fā)節(jié)點(diǎn),由該節(jié)點(diǎn)對用戶節(jié)點(diǎn)C2發(fā)起探測,探測所得到的從候 選轉(zhuǎn)發(fā)節(jié)點(diǎn)到用戶節(jié)點(diǎn)C2的鏈路屬性信息將返回給用戶節(jié)點(diǎn)Cl。用戶節(jié) 點(diǎn)Cl將候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所返回的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)到用戶節(jié)點(diǎn)C2的鏈路屬性信 息與用戶節(jié)點(diǎn)ci的鏈路狀態(tài)表中所記錄的用戶節(jié)點(diǎn)Cl到候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的 鏈路屬性信息進(jìn)行加權(quán),從而得到從用戶節(jié)點(diǎn)Cl (即業(yè)務(wù)傳輸源)經(jīng)由 候選轉(zhuǎn)發(fā)節(jié)點(diǎn)到用戶節(jié)點(diǎn)C2 (即業(yè)務(wù)傳輸目的)的整條路徑的鏈路屬性 信息。在得到整條路徑的鏈路屬性信息后,可將其與路徑門限指標(biāo)Th進(jìn) 行比較,根據(jù)比較結(jié)果確定是否將該候選轉(zhuǎn)發(fā)節(jié)點(diǎn)作為可行的轉(zhuǎn)發(fā)節(jié)點(diǎn)。 當(dāng)二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中的節(jié)點(diǎn)數(shù)目多于1個(gè)時(shí),對于其它節(jié)點(diǎn)同樣做此類操作。
從上述說明可以看出,由一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)和二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)可得 到可行轉(zhuǎn)發(fā)節(jié)點(diǎn),并由可行轉(zhuǎn)發(fā)節(jié)點(diǎn)進(jìn)而得到最佳可行轉(zhuǎn)發(fā)節(jié)點(diǎn)。在一個(gè) 可選實(shí)現(xiàn)方式中,若所要執(zhí)行的業(yè)務(wù)不僅僅是對延遲,丟包率和瓶頸帶寬 等鏈路性能中的 一個(gè)或者多個(gè)敏感,則需要對由最佳可行轉(zhuǎn)發(fā)節(jié)點(diǎn)確定的 備用路徑進(jìn)一步探測最能影響該業(yè)務(wù)性能的其他指標(biāo),如抖動(dòng)、可用帶寬 等,并根據(jù)探測結(jié)果對最佳可行轉(zhuǎn)發(fā)節(jié)點(diǎn)做進(jìn)一步的篩選。
在得到最佳可行轉(zhuǎn)發(fā)節(jié)點(diǎn)后,當(dāng)所監(jiān)測的原路徑性能在此期間發(fā)生了 從良好到惡化的變化,從而需要做路徑切換時(shí),切換至最佳可行轉(zhuǎn)發(fā)節(jié)點(diǎn),
通過這些轉(zhuǎn)發(fā)節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù),或通過Overlay路徑與默認(rèn)路徑的組合同時(shí) 發(fā)送數(shù)據(jù),增加通信魯棒性,并同時(shí)監(jiān)測原路徑的性能。在此期間,如果 原路徑性能恢復(fù),則切換回原路徑。
本發(fā)明還提供了與前述方法相對應(yīng)的覆蓋網(wǎng)備用路徑生成裝置,用于 在包括接入服務(wù)器節(jié)點(diǎn)、標(biāo)志服務(wù)器節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)和用戶節(jié)點(diǎn)的覆蓋網(wǎng) 上為源用戶節(jié)點(diǎn)選取合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建從源用戶節(jié)點(diǎn)到目的用戶節(jié) 點(diǎn)的備用路徑,該裝置包括邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)創(chuàng)建模塊、 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)選 取模塊以及性能檢測模塊;其中,
所述的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)創(chuàng)建模塊利用所述覆蓋網(wǎng)中的標(biāo)志服務(wù)器節(jié)點(diǎn) 對所述轉(zhuǎn)發(fā)節(jié)點(diǎn)做網(wǎng)絡(luò)測距,根據(jù)網(wǎng)絡(luò)測距結(jié)果計(jì)算任意兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間 的綜合性能相似度,由所述綜合性能相似度為具有相近性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu) 建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò);其中,在所述覆蓋網(wǎng)的一個(gè)自由域內(nèi)屬于同一邏輯轉(zhuǎn)發(fā) 網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)擁有同 一個(gè)入口轉(zhuǎn)發(fā)節(jié)點(diǎn);
所述的 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)選取模塊用于由所述接入服務(wù)器節(jié)點(diǎn)根據(jù)
所述用戶節(jié)點(diǎn)的請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息在所述用戶節(jié)點(diǎn)所在的自由域中選擇 邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),然后通過所述邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)找到與所述入 口轉(zhuǎn)發(fā)節(jié)點(diǎn)在同 一 自由域且同 一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)作為服務(wù)轉(zhuǎn)發(fā) 節(jié)點(diǎn);所述服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在所在的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)上運(yùn)行BFBB算法,根據(jù) 該算法的運(yùn)行結(jié)果選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);其中,
所述的BFBB算法在計(jì)算網(wǎng)絡(luò)拓樸圖中每個(gè)節(jié)點(diǎn)的度和核度后,在當(dāng) 前節(jié)點(diǎn)上通過廣度優(yōu)先算法在所述網(wǎng)絡(luò)拓樸圖上選取核度值大于當(dāng)前節(jié) 點(diǎn)的核度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn);若所 能找到的節(jié)點(diǎn)的數(shù)目無法滿足要求,則將當(dāng)前節(jié)點(diǎn)的度與核度的商的值遞
24減后,重新在當(dāng)前節(jié)點(diǎn)上利用廣度優(yōu)先算法選取核度值大于當(dāng)前節(jié)點(diǎn)的核 度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn),直到滿足對 所選取節(jié)點(diǎn)的數(shù)目要求;
所述的性能檢測模塊用于對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢 測,保留通過性能檢測的候選轉(zhuǎn)發(fā)節(jié)點(diǎn),在所述用戶節(jié)點(diǎn)間進(jìn)行業(yè)務(wù)通信 時(shí),根據(jù)業(yè)務(wù)從所保留的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建備用 路徑。
在另一個(gè)實(shí)施例中,覆蓋網(wǎng)備用路徑生成裝置還包括二次候選轉(zhuǎn)發(fā)節(jié)
點(diǎn)選取模塊,該模塊用于在所述覆蓋網(wǎng)的網(wǎng)絡(luò)拓樸圖上運(yùn)行BFBB算法, 然后根據(jù)所述BFBB算法的計(jì)算結(jié)果,從所述覆蓋網(wǎng)中選取一個(gè)自由域, 在該自由域內(nèi)選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)盡 量不屬于所述第 一用戶節(jié)點(diǎn)所在自由域內(nèi)的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
本發(fā)明的方法與現(xiàn)有的Overlay技術(shù)中采用的簡單大強(qiáng)度探測和全互 聯(lián)路由通告方式相比,通過獲取并有效分析、利用底層的拓樸知識(shí)以及對 轉(zhuǎn)發(fā)節(jié)點(diǎn)進(jìn)行合理的分域,從而顯著地提高轉(zhuǎn)發(fā)鄰居節(jié)點(diǎn)的命中率。而轉(zhuǎn) 發(fā)節(jié)點(diǎn)內(nèi)部通過提前探測,實(shí)時(shí)地感知鏈路狀態(tài),不僅顯著降低了 Overlay 節(jié)點(diǎn)的探測強(qiáng)度和規(guī)模,也可以有效地對轉(zhuǎn)發(fā)節(jié)點(diǎn)進(jìn)行篩選,優(yōu)化Overlay 路由,當(dāng)網(wǎng)絡(luò)故障或性能不穩(wěn)定時(shí),可通過路徑切換,有效提高網(wǎng)絡(luò)的傳 輸和容錯(cuò)能力,保證通信的穩(wěn)定性。
本發(fā)明不僅適用于Overlay網(wǎng)絡(luò)中的終端^各徑切換,也可作為進(jìn)行 Internet路徑分集傳輸系統(tǒng)的多路徑創(chuàng)建基礎(chǔ),具有相當(dāng)廣闊的應(yīng)用前景。
最后所應(yīng)說明的是,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限 制。盡管參照實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng) 理解,對本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,都不脫離本發(fā)明技術(shù)方 案的精神和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1、一種覆蓋網(wǎng)備用路徑生成方法,用于在包括接入服務(wù)器節(jié)點(diǎn)、標(biāo)志服務(wù)器節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)和用戶節(jié)點(diǎn)的覆蓋網(wǎng)上為源用戶節(jié)點(diǎn)選取合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建從源用戶節(jié)點(diǎn)到目的用戶節(jié)點(diǎn)的備用路徑,該方法包括步驟1)、利用所述覆蓋網(wǎng)中的標(biāo)志服務(wù)器節(jié)點(diǎn)對所述轉(zhuǎn)發(fā)節(jié)點(diǎn)做網(wǎng)絡(luò)測距,根據(jù)網(wǎng)絡(luò)測距結(jié)果計(jì)算任意兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似度,由所述綜合性能相似度為具有相近性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò);其中,在所述覆蓋網(wǎng)的一個(gè)自由域內(nèi)屬于同一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)擁有同一個(gè)入口轉(zhuǎn)發(fā)節(jié)點(diǎn);步驟2)、所述接入服務(wù)器節(jié)點(diǎn)根據(jù)所述用戶節(jié)點(diǎn)的請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息在所述用戶節(jié)點(diǎn)所在的自由域中選擇邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),然后通過所述邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)找到與所述入口轉(zhuǎn)發(fā)節(jié)點(diǎn)在同一自由域且同一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)作為服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn);所述服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在所在的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)上運(yùn)行BFBB算法,根據(jù)該算法的運(yùn)行結(jié)果選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);其中,所述的BFBB算法在計(jì)算網(wǎng)絡(luò)拓?fù)鋱D中每個(gè)節(jié)點(diǎn)的度和核度后,在當(dāng)前節(jié)點(diǎn)上通過廣度優(yōu)先算法在所述網(wǎng)絡(luò)拓?fù)鋱D上選取核度值大于當(dāng)前節(jié)點(diǎn)的核度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn);若所能找到的節(jié)點(diǎn)的數(shù)目無法滿足要求,則將當(dāng)前節(jié)點(diǎn)的度與核度的商的值遞減后,重新在當(dāng)前節(jié)點(diǎn)上利用廣度優(yōu)先算法選取核度值大于當(dāng)前節(jié)點(diǎn)的核度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn),直到滿足對所選取節(jié)點(diǎn)的數(shù)目要求;步驟3)、對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢測,保留通過性能檢測的候選轉(zhuǎn)發(fā)節(jié)點(diǎn),在所述用戶節(jié)點(diǎn)間進(jìn)行業(yè)務(wù)通信時(shí),根據(jù)業(yè)務(wù)從所保留的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建備用路徑。
2、 根據(jù)權(quán)利要求1所述的覆蓋網(wǎng)備用路徑生成方法,其特征在于, 在所述步驟2)中所得到的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的數(shù)目小于用戶的需求時(shí), 在所述的步驟2)和所述的步驟3)之間還包括選取二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的 步驟,該步驟包括在所述覆蓋網(wǎng)的網(wǎng)絡(luò)拓樸圖上運(yùn)行BFBB算法;根據(jù)所述BFBB算法的計(jì)算結(jié)果,從所述覆蓋網(wǎng)中選取一個(gè)自由域,在該自由域內(nèi)選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)盡 量不屬于所述第一用戶節(jié)點(diǎn)所在自由域內(nèi)的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
3、 根據(jù)權(quán)利要求1或2所述的覆蓋網(wǎng)備用路徑生成方法,其特征在 于,所述的步驟1 )包括步驟1-1)、所述覆蓋網(wǎng)中的所有轉(zhuǎn)發(fā)節(jié)點(diǎn)對所述覆蓋網(wǎng)中的所有標(biāo)志 服務(wù)器節(jié)點(diǎn)做網(wǎng)絡(luò)測距,得到關(guān)于延遲、丟包率和瓶頸帶寬的指標(biāo);步驟1-2)、根據(jù)所述指標(biāo)計(jì)算任意兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似度;步驟l-3)、對所有的綜合性能相似度結(jié)果做排序,然后為所述排序結(jié) 果分段,將具有相近綜合性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)分配到同一個(gè)邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
4、 根據(jù)權(quán)利要求3所述的覆蓋網(wǎng)備用路徑生成方法,其特征在于, 所述的步驟1 )還包括步驟i_4)、由所述邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)向鄰居域的入口轉(zhuǎn)發(fā) 節(jié)點(diǎn)做鏈路性能探測;所述鏈路性能包括路徑的延遲、丟包率和瓶頸帶寬;步驟1-5)、所述鏈路性能探測的結(jié)果保存到入口轉(zhuǎn)發(fā)節(jié)點(diǎn)的鏈路狀態(tài) 表中,所述鏈路狀態(tài)表的信息定時(shí)向鄰居域的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)更新。
5、 根據(jù)權(quán)利要求3或4所述的覆蓋網(wǎng)備用路徑生成方法,其特征在 于,在所述的步驟l-2)中,所述綜合性能相似度釆用下列公式計(jì)算I旭表示節(jié)點(diǎn)A與節(jié)點(diǎn)B之間的綜合性能相似度,D^表示節(jié)點(diǎn)A與節(jié) 點(diǎn)B間的延遲相似度,"Av表示節(jié)點(diǎn)A與節(jié)點(diǎn)B間的丟包率相似度,Bwav 表示節(jié)點(diǎn)A與節(jié)點(diǎn)B間的瓶頸帶寬相似度,"、〃、Z為網(wǎng)絡(luò)系統(tǒng)對性能 的要求有關(guān)的常量值;其中,DAv = V(D— DBL| )2 + ("°亂2 — dbl2 )2 +…+ (D al — DBLn )2LS八v = V(lsal, - lsbl|)2 +(lsal2 - lsbl2)2 + .'. + (lsal - lsbl fBwAv = ^(Bw亂,—BwBL' )2 + (BWaL2 - BwBL2 )2 +…+ (Bw亂。_ BwBLn )2表示節(jié)點(diǎn)A與覆蓋網(wǎng)中第i個(gè)標(biāo)志服務(wù)器節(jié)點(diǎn)間的延遲指標(biāo),LSal, 表示節(jié)點(diǎn)A與覆蓋網(wǎng)中第i個(gè)標(biāo)志服務(wù)器節(jié)點(diǎn)間的丟包率指標(biāo),Bw^表示節(jié)點(diǎn)A與覆蓋網(wǎng)中第i個(gè)標(biāo)志服務(wù)器節(jié)點(diǎn)間的瓶頸帶寬指標(biāo)。
6、 根據(jù)權(quán)利要求1或2所述的覆蓋網(wǎng)備用路徑生成方法,其特征在 于,所述的步驟2)包括步驟2-l )、所述接入服務(wù)器節(jié)點(diǎn)根據(jù)所述用戶節(jié)點(diǎn)發(fā)起的請求轉(zhuǎn)發(fā)節(jié) 點(diǎn)消息在所述用戶節(jié)點(diǎn)所在自由域中選擇邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),并將所述邏輯轉(zhuǎn) 發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)的地址通知所述用戶節(jié)點(diǎn);步驟2-2 )、所述入口轉(zhuǎn)發(fā)節(jié)點(diǎn)根據(jù)所述用戶節(jié)點(diǎn)發(fā)起的請求轉(zhuǎn)發(fā)節(jié)點(diǎn) 消息選取一個(gè)與該入口轉(zhuǎn)發(fā)節(jié)點(diǎn)具有相同自由域和相同邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的 轉(zhuǎn)發(fā)節(jié)點(diǎn),作為為所述用戶節(jié)點(diǎn)服務(wù)的服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn);步驟2-3 )、所述服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在自身的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)上運(yùn)行BFBB算 法,根據(jù)算法的運(yùn)行結(jié)果在所述覆蓋網(wǎng)中選擇有別于所述JI良務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)所 在自由域的自由域,然后在所述自由域內(nèi)選擇與該服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)具有相同 邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)作為 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn),所述一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn) 返回給所述的第一用戶節(jié)點(diǎn)。
7、 根據(jù)權(quán)利要求6所述的覆蓋網(wǎng)備用路徑生成方法,其特征在于, 所述的步驟2)還包括步驟2-4)、所述用戶節(jié)點(diǎn)將接收到的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)與自身的一次 候選轉(zhuǎn)發(fā)節(jié)點(diǎn)列表進(jìn)行比較;步驟2-5)、所述用戶節(jié)點(diǎn)向不存在于所述列表中的新的轉(zhuǎn)發(fā)節(jié)點(diǎn)發(fā)送 自身的信息,從而在所述新的轉(zhuǎn)發(fā)節(jié)點(diǎn)的鏈路狀態(tài)表中查詢所述新的轉(zhuǎn)發(fā) 節(jié)點(diǎn)所在自由域與所述用戶節(jié)點(diǎn)所在自由域之間的鏈路屬性信息;步驟2-6 )、所述鏈路屬性信息返回并保存到所述用戶節(jié)點(diǎn)。
8、 根據(jù)權(quán)利要求6或7所述的覆蓋網(wǎng)備用路徑生成方法,其特征在 于,在所述的步驟2-1)中,所述接入服務(wù)器節(jié)點(diǎn)根據(jù)用戶節(jié)點(diǎn)發(fā)起的請 求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息在所述用戶節(jié)點(diǎn)所在自由域中選擇邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)時(shí),選擇 盡可能多的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
9、 根據(jù)權(quán)利要求2所述的覆蓋網(wǎng)備用路徑生成方法,其特征在于, 在所述的選取二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)的步驟后,還包括所述的用戶節(jié)點(diǎn)對所述的二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)做周期性的路徑性能探 測,并將探測結(jié)果保存到所述用戶節(jié)點(diǎn)的鏈路狀態(tài)表中。
10、 根據(jù)權(quán)利要求1或2所述的覆蓋網(wǎng)備用路徑生成方法,其特征在 于,在所述的步驟3)中,對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢測包括步驟3-l )、用戶節(jié)點(diǎn)根據(jù)業(yè)務(wù)的類型確定路徑的門限指標(biāo); 步驟3-2)、從所述一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇轉(zhuǎn)發(fā)節(jié)點(diǎn); 步驟3-3 )、獲取一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至另 一用戶節(jié)點(diǎn)的 路徑性能;步驟3-4)、將步驟3-3)所獲取的路徑性能與步驟3-l)中所確定的門 限指標(biāo)進(jìn)行比較,根據(jù)比較結(jié)果確定路徑是否通過了性能檢測。
11、 根據(jù)權(quán)利要求IO所述的覆蓋網(wǎng)備用路徑生成方法,其特征在于, 對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢測還包括步驟3-5 )、當(dāng)所述一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中能夠通過路徑性能檢測的轉(zhuǎn)發(fā) 節(jié)點(diǎn)數(shù)目無法滿足用戶要求時(shí),從所述二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇轉(zhuǎn)發(fā)節(jié) 點(diǎn);步驟3-6 )、獲取一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至另 一用戶節(jié)點(diǎn)的 路徑性能;步驟3-7 )、將步驟3-6 )所獲取的路徑性能與步驟3-1 )中所確定的門 限指標(biāo)進(jìn)行比較,根據(jù)比較結(jié)果確定路徑是否通過了性能檢測。
12、 根據(jù)權(quán)利要求10或11所述的覆蓋網(wǎng)備用路徑生成方法,其特征 在于,在所述的步驟3-3)中,獲取所述第一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā) 節(jié)點(diǎn)至所述第二用戶節(jié)點(diǎn)的路徑性能包括從所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)的鏈路狀態(tài)表中查詢從所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自由 域到所述第二用戶節(jié)點(diǎn)所在自由域間的鏈路屬性,從所述第一用戶節(jié)點(diǎn)的 鏈路狀態(tài)表中獲取從所述第 一用戶節(jié)點(diǎn)所在自由域到所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在 自由域的鏈路屬性,進(jìn)而獲取所述第一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至 所述第二用戶節(jié)點(diǎn)的路徑性能;或所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)通過路徑探測,得到從所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自由域 到所述第二用戶節(jié)點(diǎn)所在自由域間的鏈路屬性,從所述第一用戶節(jié)點(diǎn)的鏈 路狀態(tài)表中獲取從所述第 一 用戶節(jié)點(diǎn)所在自由域到所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自 由域的鏈路屬性,進(jìn)而獲取所述第 一 用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至所 述第二用戶節(jié)點(diǎn)的路徑性能。
13、 根據(jù)權(quán)利要求11所述的覆蓋網(wǎng)備用路徑生成方法,其特征在于, 在所述的步驟3-6)中,獲取所述第一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至 所述第二用戶節(jié)點(diǎn)的路徑性能包括所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)通過路徑探測,得到從所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自由域到 所述第二用戶節(jié)點(diǎn)所在自由域間的鏈路屬性,從所述第一用戶節(jié)點(diǎn)的鏈路 狀態(tài)表中獲取從所述第 一用戶節(jié)點(diǎn)所在自由域到所述轉(zhuǎn)發(fā)節(jié)點(diǎn)所在自由 域的鏈路屬性,進(jìn)而獲取所述第 一用戶節(jié)點(diǎn)經(jīng)由所選擇的轉(zhuǎn)發(fā)節(jié)點(diǎn)至所述 第二用戶節(jié)點(diǎn)的路徑性能。
14、 一種覆蓋網(wǎng)備用路徑生成裝置,其特征在于,用于在包括接入服 務(wù)器節(jié)點(diǎn)、標(biāo)志服務(wù)器節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)和用戶節(jié)點(diǎn)的覆蓋網(wǎng)上為源用戶節(jié) 點(diǎn)選取合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建從源用戶節(jié)點(diǎn)到目的用戶節(jié)點(diǎn)的備用路徑, 該裝置包括邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)創(chuàng)建模塊、 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)選取模塊以及性能檢測模塊;其中,所述的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)創(chuàng)建模塊利用所述覆蓋網(wǎng)中的標(biāo)志服務(wù)器節(jié)點(diǎn) 對所述轉(zhuǎn)發(fā)節(jié)點(diǎn)做網(wǎng)絡(luò)測距,根據(jù)網(wǎng)絡(luò)測距結(jié)果計(jì)算任意兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間 的綜合性能相似度,由所述綜合性能相似度為具有相近性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu) 建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò);其中,在所述覆蓋網(wǎng)的一個(gè)自由域內(nèi)屬于同一邏輯轉(zhuǎn)發(fā) 網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)擁有同 一 個(gè)入口轉(zhuǎn)發(fā)節(jié)點(diǎn);所述的一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)選取模塊用于由所述接入服務(wù)器節(jié)點(diǎn)根據(jù) 所述用戶節(jié)點(diǎn)的請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息在所述用戶節(jié)點(diǎn)所在的自由域中選擇 邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),然后通過所述邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)找到與所述入口轉(zhuǎn)發(fā)節(jié)點(diǎn)在同 一 自由域且同 一邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)節(jié)點(diǎn)作為服務(wù)轉(zhuǎn)發(fā) 節(jié)點(diǎn);所述服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在所在的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)上運(yùn)行BFBB算法,根據(jù) 該算法的運(yùn)行結(jié)果選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為 一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);其中,所述的BFBB算法在計(jì)算網(wǎng)絡(luò)拓樸圖中每個(gè)節(jié)點(diǎn)的度和核度后,在當(dāng) 前節(jié)點(diǎn)上通過廣度優(yōu)先算法在所述網(wǎng)絡(luò)拓樸圖上選取核度值大于當(dāng)前節(jié) 點(diǎn)的核度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn);若所 能找到的節(jié)點(diǎn)的數(shù)目無法滿足要求,則將當(dāng)前節(jié)點(diǎn)的度與核度的商的值遞 減后,重新在當(dāng)前節(jié)點(diǎn)上利用廣度優(yōu)先算法選取核度值大于當(dāng)前節(jié)點(diǎn)的核 度值,且度與核度的商大于當(dāng)前節(jié)點(diǎn)的度與核度的商的節(jié)點(diǎn),直到滿足對 所選取節(jié)點(diǎn)的數(shù)目要求;所述的性能檢測模塊用于對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢 測,保留通過性能檢測的候選轉(zhuǎn)發(fā)節(jié)點(diǎn),在所述用戶節(jié)點(diǎn)間進(jìn)行業(yè)務(wù)通信 時(shí),根據(jù)業(yè)務(wù)從所保留的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建備用 路徑。
15、根據(jù)權(quán)利要求14所述的覆蓋網(wǎng)備用路徑生成裝置,其特征在于, 還包括二次候選轉(zhuǎn)發(fā)節(jié)點(diǎn)選取模塊,該模塊用于在所述覆蓋網(wǎng)的網(wǎng)絡(luò)拓樸 圖上運(yùn)行BFBB算法,然后根據(jù)所述BFBB算法的計(jì)算結(jié)果,從所述覆蓋 網(wǎng)中選取一個(gè)自由域,在該自由域內(nèi)選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為二次候選轉(zhuǎn)發(fā)節(jié) 點(diǎn);所選取的轉(zhuǎn)發(fā)節(jié)點(diǎn)盡量不屬于所述第一用戶節(jié)點(diǎn)所在自由域內(nèi)的邏輯 轉(zhuǎn)發(fā)網(wǎng)絡(luò)。
全文摘要
本發(fā)明提供一種覆蓋網(wǎng)備用路徑生成方法,該方法包括利用覆蓋網(wǎng)中的標(biāo)志服務(wù)器節(jié)點(diǎn)對轉(zhuǎn)發(fā)節(jié)點(diǎn)做網(wǎng)絡(luò)測距,計(jì)算任意兩個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)間的綜合性能相似度,由綜合性能相似度為具有相近性能的轉(zhuǎn)發(fā)節(jié)點(diǎn)構(gòu)建邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò);接入服務(wù)器節(jié)點(diǎn)根據(jù)用戶節(jié)點(diǎn)的請求轉(zhuǎn)發(fā)節(jié)點(diǎn)消息在用戶節(jié)點(diǎn)所在的自由域中選擇邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò),然后通過邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)的入口轉(zhuǎn)發(fā)節(jié)點(diǎn)找到服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn);服務(wù)轉(zhuǎn)發(fā)節(jié)點(diǎn)在所在的邏輯轉(zhuǎn)發(fā)網(wǎng)絡(luò)上運(yùn)行BFBB算法,根據(jù)運(yùn)行結(jié)果選擇轉(zhuǎn)發(fā)節(jié)點(diǎn)作為一次候選轉(zhuǎn)發(fā)節(jié)點(diǎn);對候選轉(zhuǎn)發(fā)節(jié)點(diǎn)所能形成的路徑做性能檢測,保留通過性能檢測的候選轉(zhuǎn)發(fā)節(jié)點(diǎn),在用戶節(jié)點(diǎn)間進(jìn)行業(yè)務(wù)通信時(shí),根據(jù)業(yè)務(wù)從所保留的候選轉(zhuǎn)發(fā)節(jié)點(diǎn)中選擇合適的轉(zhuǎn)發(fā)節(jié)點(diǎn)以構(gòu)建備用路徑。
文檔編號(hào)H04L12/56GK101562568SQ20091008546
公開日2009年10月21日 申請日期2009年5月26日 優(yōu)先權(quán)日2009年5月26日
發(fā)明者張國清, 李彥君, 楊清峰 申請人:中國科學(xué)院計(jì)算技術(shù)研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
宜良县| 康平县| 平山县| 宁城县| 龙里县| 卢湾区| 许昌市| 富平县| 成武县| 牡丹江市| 九寨沟县| 克东县| 新津县| 山东| 修武县| 武功县| 卢龙县| 康保县| 个旧市| 澄城县| 盐城市| 沁水县| 邢台县| 尼勒克县| 澄城县| 南漳县| 宜丰县| 西城区| 吉水县| 方山县| 全州县| 深水埗区| 三江| 巴中市| 旅游| 永川市| 江北区| 凉山| 瑞安市| 汕头市| 武强县|