專利名稱:一種物理網(wǎng)絡感知的覆蓋網(wǎng)構建方法
技術領域:
本發(fā)明涉及計算機網(wǎng)絡和網(wǎng)絡計算系統(tǒng)中的覆蓋網(wǎng)構建方法,尤其是感知物理網(wǎng)絡延遲的覆蓋網(wǎng)構建方法。
背景技術:
網(wǎng)絡計算的目標是將廣域分布的計算、存儲、信息以及儀器等各種資源通過網(wǎng)絡 組織并集成起來,以實現(xiàn)網(wǎng)絡資源的有效共享和綜合利用。當前,網(wǎng)絡計算技術在科學研 究、電子商務、電子政務和軍事應用等重要領域都有著廣闊的應用前景。網(wǎng)絡資源的有效組織是網(wǎng)絡計算系統(tǒng)實現(xiàn)資源共享和利用的重要基礎,對網(wǎng)絡計 算系統(tǒng)的性能和可擴展性等都有著關鍵的影響。覆蓋網(wǎng)是近年來興起的一種重要的網(wǎng)絡資 源組織技術。覆蓋網(wǎng)(Overlay Network)是指網(wǎng)絡計算系統(tǒng)中節(jié)點間根據(jù)其邏輯關聯(lián)關系 形成的、架構在互聯(lián)網(wǎng)之上的邏輯網(wǎng)絡。近年來隨著覆蓋網(wǎng)技術的發(fā)展,利用覆蓋網(wǎng)技術組 織大規(guī)模的網(wǎng)絡資源,展現(xiàn)出良好的可擴展性和自組織潛力,得到了學術界和工業(yè)界的關 注和重視。覆蓋網(wǎng)構建方法是在覆蓋網(wǎng)中的節(jié)點之間按照一定的規(guī)則建立邏輯上的連接關 系,是形成覆蓋網(wǎng)拓撲結構、影響覆蓋網(wǎng)性能的基礎性關鍵技術。覆蓋網(wǎng)構建方法的評價通 常是以該方法所構建的覆蓋網(wǎng)拓撲的節(jié)點度數(shù)和路由延遲等參數(shù)作為重要指標。節(jié)點度數(shù) 是指覆蓋網(wǎng)中各節(jié)點的鄰居數(shù)量,涉及到覆蓋網(wǎng)中各節(jié)點的鄰居狀態(tài)存儲開銷和覆蓋網(wǎng)的 動態(tài)維護開銷;路由延遲是指覆蓋網(wǎng)中一次消息路由的延遲,通常用覆蓋網(wǎng)中的邏輯跳步 數(shù)或物理延遲來表示。為取得良好的實用性能,覆蓋網(wǎng)構建方法應該兼顧覆蓋網(wǎng)節(jié)點度數(shù) 和路由延遲等多個方面的特性。但這幾個性能特性之間存在沖突,給覆蓋網(wǎng)構建帶來困難。 典型的覆蓋網(wǎng)構建方法包括Chord、CAN和Tapestry等,下面予以簡要介紹。⑴ Chord 方法Chord方法采用環(huán)作為覆蓋網(wǎng)的靜態(tài)拓撲圖,覆蓋網(wǎng)中各節(jié)點的標識都是一個 160位的二進制串(即0到216°-1之間的整數(shù)),可以根據(jù)節(jié)點的IP地址或名稱等屬性通 過公開的SHA-I算法獲得。Chord方法將覆蓋網(wǎng)中所有節(jié)點根據(jù)標識的大小,順時針構成一 個環(huán)形的拓撲結構。由于Chord中每個節(jié)點都維護了與其后繼節(jié)點的鄰居關系,在環(huán)上沿后繼節(jié)點總 可以正確地到達任何目標節(jié)點,但這種方法效率很低。因此Chord方法中,每個節(jié)點都維 護一個finger表(即路由表),finger表至多有Iog2N項,節(jié)點η的finger表第i項是值 η+2Η在環(huán)上對應的后繼節(jié)點。Chord方法所構建的覆蓋網(wǎng)的節(jié)點度數(shù)為O(Iog2N),路由延 遲是0(1Ο&Ν),平均路由延遲為l/21og2N。為提高覆蓋網(wǎng)性能,一些研究提出在Chord方法構建的覆蓋網(wǎng)基礎上增加額外的 覆蓋網(wǎng)連接和路由信息,以提高覆蓋網(wǎng)性能,典型工作包括Kelips、OneHop和Accordion 等。例如,Kelips方法將覆蓋網(wǎng)中的節(jié)點分成k個組,每個節(jié)點通過哈希函數(shù)分配到某一 個組中。各節(jié)點維護的路由表包括(i)同組中所有節(jié)點的視圖;(ii)其他各組中常量個數(shù)節(jié)點的信息;(iii)同一組節(jié)點上的全部資源的索引信息。Kelips把路由消息轉發(fā)到相應的組中,更新消息通過gossip方式來傳播。Kelips的路由延遲為0(1),但節(jié)點度數(shù)和維護 開銷為(KN1勺。(2) CAN 方法CAN (Content Addressable Network)方法采用多維花環(huán)作為覆蓋網(wǎng)的靜態(tài)拓撲 圖。CAN方法的基本思想是構造一個虛擬的d維笛卡爾坐標空間,覆蓋網(wǎng)中各個節(jié)點分別負 責虛擬d維坐標空間中的一塊區(qū)域。CAN中的節(jié)點根據(jù)它們所負責的區(qū)域在坐標空間中的 位置來建立鄰居關系,負責相鄰區(qū)域的節(jié)點互為鄰居。由于坐標空間是d維的,故每個節(jié)點 有2d個鄰居,CAN方法所構建的覆蓋網(wǎng)的拓撲結構是類d-torus拓撲。當節(jié)點加入或退出時,相關節(jié)點負責的區(qū)間會進行拆分或合并。新節(jié)點加入時,首 先通過哈希函數(shù)將新節(jié)點映射到虛擬空間中的一點,然后將該點所在區(qū)域沿某一維拆分成 兩半,一半?yún)^(qū)域由新節(jié)點負責。拆分時對維數(shù)的選擇是按照round-robin方式輪流進行。 CAN方法所構建的覆蓋網(wǎng)的節(jié)點度數(shù)為0(d),路由延遲和消息開銷為0(dNlAl)。(3) Tapestry 方法Tapestry方法采用Plaxton圖作為覆蓋網(wǎng)的初始拓撲圖。Tapestry方法中節(jié)點的 標識都是160位的二進制值,用以固定數(shù)值b為基的位串表示(如b = 16時即都是16進制 位串)。Tapestry中每個節(jié)點維護一個多層的路由表,路由表的層數(shù)等于節(jié)點標識的長度, 路由表中第j層節(jié)點標識的后j_l位與本節(jié)點標識的后j_l位相同;第j層共有b項,第i 項的第j位對應的標識為i ;如果系統(tǒng)中有多個節(jié)點標識滿足路由表中某一項的條件,則選 擇延遲最小的節(jié)點。例如,節(jié)點0642的路由表中共有4層,每層8項,第3層路由表中標識 都形如#42,第3層第5項是距離0642最近且標識符以542結尾的節(jié)點*542。Tapestry 方法所構建的覆蓋網(wǎng)的節(jié)點度數(shù)為O(WogbN),路由延遲和路由消息開銷是O(IogbN)。傳統(tǒng)的覆蓋網(wǎng)構建方法,如ChorcUCAN和Tapestry等,在構建覆蓋網(wǎng)拓撲時,通常 是根據(jù)節(jié)點的邏輯標識建立節(jié)點間的鄰居關系,并以此為基礎形成覆蓋網(wǎng)拓撲結構。這些 方法較少考慮節(jié)點間的物理網(wǎng)絡延遲,使得所構建的覆蓋網(wǎng)邏輯拓撲與底層的實際物理網(wǎng) 絡拓撲存在不匹配的問題,從而導致覆蓋網(wǎng)拓撲連接的平均物理延遲較大。
發(fā)明內容
本發(fā)明要解決的技術問題是針對傳統(tǒng)覆蓋網(wǎng)構建方法未充分考慮節(jié)點間的物理 網(wǎng)絡延遲導致所構建的覆蓋網(wǎng)拓撲連接的平均物理延遲較大的缺陷,提出一種物理網(wǎng)絡感 知的覆蓋網(wǎng)構建方法,有效利用節(jié)點的網(wǎng)絡延遲信息,使得覆蓋網(wǎng)中相鄰節(jié)點間的網(wǎng)絡延 遲較小,以降低覆蓋網(wǎng)拓撲連接的平均物理延遲。本發(fā)明提出的解決方案為覆蓋網(wǎng)中節(jié)點根據(jù)其網(wǎng)絡坐標建立節(jié)點的物理標識, 覆蓋網(wǎng)構建時各節(jié)點根據(jù)物理標識建立鄰居關系,以增強覆蓋網(wǎng)邏輯拓撲與底層的物理網(wǎng) 絡拓撲的匹配,降低覆蓋網(wǎng)拓撲連接的平均物理延遲。具體包括以下步驟第一步,獲得覆蓋網(wǎng)節(jié)點的邏輯標識。覆蓋網(wǎng)中的每個節(jié)點,具有兩個節(jié)點標識 邏輯標識和物理標識。節(jié)點的邏輯標識,是長度為160位的二進制串,通過對節(jié)點的IP地 址等屬性信息使用常用的SHA-I算法后獲得。根據(jù)SHA-I算法的特點,各節(jié)點的邏輯標識 是全局唯一的,以便于區(qū)分各節(jié)點。節(jié)點的物理標識是一個m的二進制串(m為正整數(shù),其取值可根據(jù)覆蓋網(wǎng)的規(guī)模預先設置。為支持大規(guī)模的覆蓋網(wǎng)節(jié)點,m的取值通常應不小于 128)。不同節(jié)點的物理標識存在相同的可能性,物理標識相同的多個節(jié)點通過它們的邏輯 標識進行區(qū)分。第二步,獲得覆蓋網(wǎng)節(jié)點的物理標識。任一節(jié)點W加入覆蓋網(wǎng)時,通過物理標識獲取算法為其產生一個長度為m的二進制串作為節(jié)點物理標識。物理標識獲取算法的流程如下(1)節(jié)點W加入覆蓋網(wǎng)時,首先通過網(wǎng)絡坐標GNP(Global Network Positioning, 即全局網(wǎng)絡定位)協(xié)議,獲得一個標準化后的η位的坐標向量L。η為正整數(shù),為使得網(wǎng)絡 坐標向量L能夠較好地反映節(jié)點間的物理網(wǎng)絡延遲,η的取值通常應不小于20。(2)根據(jù)坐標向量L,獲得覆蓋網(wǎng)節(jié)點W的物理標識P (P是m的二進制串)。具體 過程如下令A、B都是η位的向量,A向量中各位的初始值為0,B向量中各位的初始值為1 ;對變量i從0到m-1,循環(huán)執(zhí)行下列動作i)令 j 等于 i mod η。ii)若L[j]大于(A[j]+B[j])/2,則節(jié)點W的物理標識P的第i位設置為1(即 P[i] = l),A[j]的值被重新設置為(A[j]+B[j])/2;否則物理標識P的第i位被設置為0, B[i]的值被重新設置為(A[j]+B[j])/2。第三步,建立覆蓋網(wǎng)拓撲連接。每個節(jié)點根據(jù)其物理標識,通過鄰居選取算法,與 覆蓋網(wǎng)中的其它節(jié)點確立鄰居關系,構建覆蓋網(wǎng)拓撲。鄰居選取算法的具體流程如下(1)物理標識為R的新節(jié)點T在加入覆蓋網(wǎng)時,選擇物理標識比R小且最接近R的 3個節(jié)點作為前驅鄰居節(jié)點;(2)節(jié)點T選擇物理標識比R大且最接近R的3個節(jié)點作為后繼鄰居節(jié)點;(3)對變量k從0到8,循環(huán)執(zhí)行下列行為i)令 F 等于(9R+k)mod 2m ;ii)獲取覆蓋網(wǎng)中滿足條件“物理標識大于且最接近值F”的全部節(jié)點的節(jié)點集合 S ;iii)節(jié)點T通過ping方法獲得本節(jié)點與集合S中各節(jié)點的物理延遲;iv)節(jié)點T選取集合S中物理延遲最小的節(jié)點作為T的覆蓋網(wǎng)拓撲鄰居節(jié)點。在鄰居選取算法中,由于多個節(jié)點的物理標識可能相同,集合S中元素的個數(shù)大 于等于1。根據(jù)鄰居選取算法,新節(jié)點共選取了覆蓋網(wǎng)中的15個節(jié)點作為鄰居節(jié)點(其中 包括3個前驅鄰居節(jié)點、3個后繼鄰居節(jié)點和9個覆蓋網(wǎng)拓撲鄰居節(jié)點),與這些鄰居節(jié)點 構建覆蓋網(wǎng)連接。根據(jù)物理標識獲取算法,不同節(jié)點的物理標識存在相同的可能(雖然概率較小), 物理標識相同的節(jié)點根據(jù)其邏輯標識進行區(qū)分。根據(jù)GNP協(xié)議的特點,物理網(wǎng)絡延遲較小 的兩個節(jié)點,通過GNP協(xié)議得到的網(wǎng)絡坐標向量值會比較接近。根據(jù)物理標識獲取算法的 流程可知,該兩個節(jié)點獲得的物理標識在物理標識空間中也會比較接近。因此,各節(jié)點的物 理標識在一定程度上反映了節(jié)點在物理網(wǎng)絡中的鄰近信息。由于各節(jié)點的物理標識蘊含 了節(jié)點在物理網(wǎng)絡中的鄰近信息,鄰居選取算法根據(jù)物理標識建立鄰居關系形成覆蓋網(wǎng)拓 撲,可有助于增強覆蓋網(wǎng)拓撲與物理網(wǎng)絡拓撲的匹配,有利于減小覆蓋網(wǎng)拓撲連接的平均物理延遲。與現(xiàn)有技術相比,本發(fā)明的優(yōu)點在于1.本發(fā)明為覆蓋網(wǎng)節(jié)點建立了邏輯標識和物理網(wǎng)絡感知的物理標識,通過邏輯標識區(qū)分節(jié)點,并使得物理網(wǎng)絡中鄰近的覆蓋網(wǎng)節(jié)點能夠獲得相近的物理標識,從而可通過 節(jié)點的物理標識反映節(jié)點間物理網(wǎng)絡延遲的信息;2.本發(fā)明在覆蓋網(wǎng)構建過程中,基于覆蓋網(wǎng)節(jié)點的物理標識來建立節(jié)點間的鄰居 關系,有效利用了節(jié)點物理標識所蘊含的物理網(wǎng)絡延遲信息,可增強覆蓋網(wǎng)拓撲與物理網(wǎng) 絡拓撲的匹配,有利于降低覆蓋網(wǎng)拓撲連接的平均物理延遲。因此,本發(fā)明是一種物理網(wǎng)絡感知的覆蓋網(wǎng)構建方法。
圖1為本發(fā)明總體流程圖。圖2為本發(fā)明第二步中物理標識獲取算法的流程圖。圖3為本發(fā)明第三步中鄰居選取算法的流程圖。
具體實施例方式如圖1所示,本發(fā)明總體流程是第一步,獲得覆蓋網(wǎng)節(jié)點的邏輯標識。節(jié)點的邏輯標識,是長度為160位的二進制 串,通過對節(jié)點的IP地址等屬性信息使用公知的SHA-I算法后獲得。第二步,獲得覆蓋網(wǎng)節(jié)點的物理標識。新節(jié)點W加入覆蓋網(wǎng)時獲得物理標識的物 理標識獲取算法流程如圖2所示。第三步,建立覆蓋網(wǎng)拓撲連接。每個節(jié)點根據(jù)其物理標識,通過鄰居選取算法,與 覆蓋網(wǎng)中的部分其它節(jié)點確立鄰居關系,建立覆蓋網(wǎng)拓撲連接。鄰居選取算法的具體流程 如圖3所示。物理標識獲取算法的流程如下(如圖2)(1)新節(jié)點W加入覆蓋網(wǎng)時,首先通過網(wǎng)絡坐標GNP協(xié)議,獲得一個標準化后的η 位的坐標向量L。(2)根據(jù)坐標向量L,獲得覆蓋網(wǎng)節(jié)點W的物理標識P。具體過程如下令A、B都是η位的向量,A向量中各位的初始值為0,B向量中各位的初始值為1 ;
對變量i從0到m-1,循環(huán)執(zhí)行下列行為i)令 j 等于 imodn。ii)若L[j]大于(A[j]+B[j])/2,則節(jié)點W的物理標識P的第i位設置為1(即 P[i] = l),A[j]的值被重新設置為(A[j]+B[j])/2;否則物理標識P的第i位被設置為0, B[i]的值被重新設置為(A[j]+B[j])/2。如圖3所示,鄰居選取算法的具體流程如下(1)物理標識為R的新節(jié)點T在加入覆蓋網(wǎng)時,選擇物理標識比R小且最接近R的 3個節(jié)點作為前驅鄰居節(jié)點;(2)節(jié)點T選擇物理標識比R大且最接近R的3個節(jié)點作為后繼鄰居節(jié)點;(3)對變量k從0到8,循環(huán)執(zhí)行下列行為
i)令 F 等于(9R+k)mod 2m ;ii)獲取覆蓋網(wǎng)中滿足條件“物理標識大于且最接近值F”的全部節(jié)點的節(jié)點集合 S ;iii)節(jié)點T通過ping方法獲得本節(jié)點與集合S中各節(jié)點的物理延遲;iv)節(jié)點T選取集合S中物理延遲最小的節(jié)點作為T的覆蓋 網(wǎng)拓撲鄰居節(jié)點。
權利要求
一種物理網(wǎng)絡感知的覆蓋網(wǎng)構建方法,其特征在于包括以下步驟第一步,獲得覆蓋網(wǎng)節(jié)點的邏輯標識,節(jié)點的邏輯標識,是長度為160位的二進制串,通過對節(jié)點的IP地址等屬性信息使用SHA-1算法后獲得;第二步,獲得覆蓋網(wǎng)節(jié)點的物理標識,節(jié)點的物理標識是一個m的二進制串任一節(jié)點W加入覆蓋網(wǎng)時,通過物理標識獲取算法為其產生一個長度為m的二進制串作為節(jié)點物理標識,m為正整數(shù),其取值根據(jù)覆蓋網(wǎng)的規(guī)模預先設置,物理標識獲取算法的流程如下(1)節(jié)點W加入覆蓋網(wǎng)時,首先通過網(wǎng)絡坐標GNP協(xié)議,獲得一個標準化后的n位的坐標向量L,n為正整數(shù);(2)根據(jù)坐標向量L,獲得覆蓋網(wǎng)節(jié)點W的物理標識P,P是m的二進制串,具體過程如下令A、B都是n位的向量,A向量中各位的初始值為0,B向量中各位的初始值為1;對變量i從0到m-1,循環(huán)執(zhí)行下列動作i)令j等于i mod n;ii)若L[j]大于(A[j]+B[j])/2,則節(jié)點W的物理標識P的第i位設置為1,即P[i]=1,A[j]的值被重新設置為(A[j]+B[j])/2;否則物理標識P的第i位被設置為0,B[i]的值被重新設置為(A[j]+B[j])/2;第三步,建立覆蓋網(wǎng)拓撲連接,每個節(jié)點根據(jù)其物理標識,通過鄰居選取算法,與覆蓋網(wǎng)中的其它節(jié)點確立鄰居關系,構建覆蓋網(wǎng)拓撲,鄰居選取算法的具體流程如下(1)物理標識為R的新節(jié)點T在加入覆蓋網(wǎng)時,選擇物理標識比R小且最接近R的3個節(jié)點作為前驅鄰居節(jié)點;(2)節(jié)點T選擇物理標識比R大且最接近R的3個節(jié)點作為后繼鄰居節(jié)點;(3)對變量k從0到8,循環(huán)執(zhí)行下列行為i)令F等于(9R+k)mod 2m;ii)獲取覆蓋網(wǎng)中滿足條件“物理標識大于且最接近值F”的全部節(jié)點的節(jié)點集合S;iii)節(jié)點T通過ping方法獲得本節(jié)點與集合S中各節(jié)點的物理延遲;iv)節(jié)點T選取集合S中物理延遲最小的節(jié)點作為T的覆蓋網(wǎng)拓撲鄰居節(jié)點。
2.如權利要求1所述的一種物理網(wǎng)絡感知的覆蓋網(wǎng)構建方法,其特征在于所述m的取 值不小于128,η的取值不小于20。
全文摘要
本發(fā)明公開了一種物理網(wǎng)絡感知的覆蓋網(wǎng)構建方法,要解決的技術問題是提出一種物理網(wǎng)絡感知的覆蓋網(wǎng)構建方法,有效利用節(jié)點的網(wǎng)絡延遲信息,使得覆蓋網(wǎng)中相鄰節(jié)點間的網(wǎng)絡延遲較小。技術方案是先獲得覆蓋網(wǎng)節(jié)點的邏輯標識和物理標識,每個節(jié)點根據(jù)其物理標識,通過鄰居選取算法,與覆蓋網(wǎng)中的其它節(jié)點確立鄰居關系,構建覆蓋網(wǎng)拓撲。本發(fā)明為覆蓋網(wǎng)節(jié)點建立了邏輯標識和物理網(wǎng)絡感知的物理標識,可通過節(jié)點的物理標識反映節(jié)點間物理網(wǎng)絡延遲的信息;且基于覆蓋網(wǎng)節(jié)點的物理標識來建立節(jié)點間的鄰居關系,有效利用了節(jié)點物理標識所蘊含的物理網(wǎng)絡延遲信息,可增強覆蓋網(wǎng)拓撲與物理網(wǎng)絡拓撲的匹配,有利于降低覆蓋網(wǎng)拓撲連接的平均物理延遲。
文檔編號H04L12/56GK101826986SQ20101016139
公開日2010年9月8日 申請日期2010年5月4日 優(yōu)先權日2010年5月4日
發(fā)明者盧錫城, 張一鳴, 李東升 申請人:中國人民解放軍國防科學技術大學