專利名稱:一種樹形拓?fù)涞耐瑢佑騼?nèi)互聯(lián)結(jié)構(gòu)的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信和計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及一種樹形拓?fù)涞耐瑢佑騼?nèi)互聯(lián)結(jié)構(gòu) 的實(shí)現(xiàn)方法。
背景技術(shù):
在并行互聯(lián)網(wǎng)絡(luò)、多處理器系統(tǒng)、片上網(wǎng)絡(luò)等領(lǐng)域,樹形交換結(jié)構(gòu)以其平均跳數(shù) 小、尋路方式簡(jiǎn)便、以及天然的匯聚特性等優(yōu)勢(shì)而得到廣泛的應(yīng)用。然而,眾所周知的是,樹 形結(jié)構(gòu)存在著一些難以克服的缺陷。由于樹形結(jié)構(gòu)高度的匯聚特性,使得在接近樹根的地 方,鏈路往往需要非常大的容量才能滿足整個(gè)網(wǎng)絡(luò)的正常通信。而一旦樹形結(jié)構(gòu)中某條鏈 路或者某個(gè)節(jié)點(diǎn)發(fā)生失效,則故障點(diǎn)以下的所有點(diǎn)都會(huì)隨之失效,當(dāng)這種情況發(fā)生在接近 樹根節(jié)點(diǎn)的地方時(shí),問題尤為嚴(yán)重。為了解決樹形結(jié)構(gòu)的這些不足,目前常見的辦法是采用 胖樹結(jié)構(gòu)。然而,胖樹為了達(dá)到設(shè)計(jì)要求,往往需要引入大量額外的交換節(jié)點(diǎn)和鏈路。
發(fā)明內(nèi)容
本發(fā)明所要解決的問題是提供一種樹形拓?fù)涞耐瑢佑騼?nèi)互聯(lián)結(jié)構(gòu)的實(shí)現(xiàn)方法, 該互連結(jié)構(gòu)減小了樹形結(jié)構(gòu)的平均跳數(shù),一定程度上均衡了樹形結(jié)構(gòu)的流量,增多了樹形 結(jié)構(gòu)的容錯(cuò)路徑進(jìn)而提高網(wǎng)絡(luò)的容錯(cuò)性能。本發(fā)明所提出的技術(shù)問題是這樣解決的提供一種樹形拓?fù)涞耐瑢佑騼?nèi)互聯(lián)結(jié)構(gòu) 的實(shí)現(xiàn)方法,其特征在于①設(shè)定存在一個(gè)已有的樹形拓?fù)浣Y(jié)構(gòu),該結(jié)構(gòu)從根節(jié)點(diǎn)R開始由上而下總共具有 m層,m大于2,共c個(gè)節(jié)點(diǎn),其中根節(jié)點(diǎn)R位于第1層;②定義對(duì)于第η層的任意兩個(gè)節(jié)點(diǎn)隊(duì)和 ,11大于2,如果它們各自在第(η_1)層 的父節(jié)點(diǎn)Pi和P」(Pi和Pj可能重疊),具有同一個(gè)第η-2層的父節(jié)點(diǎn)Ri,則稱這些節(jié)點(diǎn)Ni、 N」、P” Pj和Ri屬于同一個(gè)域Di,記作Ni, Nj, Pi, Pj, Ri屬于Di,其中唯一的第n_2層節(jié)點(diǎn)Ri 稱為該域的根,顯然,對(duì)于任意第η層(η大于2)的所有Cn個(gè)節(jié)點(diǎn)而言,如果η-2層總共有 cn_2個(gè)節(jié)點(diǎn),則第η層最多能以劃分為cn_2個(gè)域,且第η層的任意一個(gè)節(jié)點(diǎn)Ni屬于且僅屬 于其中的某一個(gè)域Di, i = 1,2,…,cn_2;③從第3層的節(jié)點(diǎn)開始逐層往下對(duì)整個(gè)樹進(jìn)行域的劃分,最終能得到Cl+C2+… +cn_2個(gè)不同的域,記dmax = Cl+C2+…+cn_2,對(duì)任意一個(gè)域Di,假設(shè)它的根氏在全樹的第η層, 則需要在第η+1層增加一些同層域內(nèi)互聯(lián)節(jié)點(diǎn),使得域Di內(nèi)的所有第η+2層節(jié)點(diǎn)能夠通過 這些同層域內(nèi)互聯(lián)節(jié)點(diǎn)進(jìn)行互聯(lián);④設(shè)域Di中位于全樹第η層的氏共有ρ個(gè)子節(jié)點(diǎn),第η+1層的P個(gè)子節(jié)點(diǎn)又分 別有qi,q2,…,qp個(gè)子節(jié)點(diǎn),即第η+2層總共有W…+qp個(gè)節(jié)點(diǎn),取其中最大的Qi記作 Qfflax, i = 1,2,…,P,則需要增加qmax個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)S。對(duì)第j個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn) Sj, j = 1,2,…,qmax,如果Cii <= j,則說明位于全樹第η+1層且屬于域Di中第i個(gè)節(jié)點(diǎn) 還有尚未進(jìn)行同層域內(nèi)互聯(lián)的子節(jié)點(diǎn),從該節(jié)點(diǎn)的子節(jié)點(diǎn)中任選一個(gè)還沒有進(jìn)行同層域內(nèi)互聯(lián)的節(jié)點(diǎn)與第j個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)h相連;如此循環(huán),直到所有的域Di中第n+2層節(jié) 點(diǎn)都剛好與一個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)相連為止,最后將qmax個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)S1, S2,…, Sqfflax 一一首尾相連,形成一個(gè)環(huán),就得到了該域的同層域內(nèi)互聯(lián)結(jié)構(gòu),使得該域內(nèi)所有節(jié)點(diǎn) 間除了存在原樹上的交換通道,還可以實(shí)現(xiàn)通過同層域內(nèi)互聯(lián)節(jié)點(diǎn)直接進(jìn)行交互;⑤對(duì)步驟③劃分得到的每個(gè)域Di按照步驟④增加同層域內(nèi)互聯(lián)結(jié)構(gòu),i = 1, 2,…,dmax,就能夠得到全樹的同層域內(nèi)互聯(lián)結(jié)構(gòu)。通過這種擴(kuò)展方式可以有效地降低樹中任意兩個(gè)底層節(jié)點(diǎn)間的平均跳數(shù)并顯著 地增加了容錯(cuò)路徑。當(dāng)然采用這種同層域內(nèi)互聯(lián)結(jié)構(gòu)會(huì)增加一定的連接與交換開銷,因此 可以有選擇地在部分高密度、高負(fù)載的域進(jìn)行互聯(lián),而對(duì)于樹形交換拓?fù)浣Y(jié)構(gòu)的其他部分 則保持不變。對(duì)于樹形結(jié)構(gòu)變化而得到的胖樹結(jié)構(gòu),同樣可以利用這種域內(nèi)互聯(lián)進(jìn)而提高交換 性能與容錯(cuò)性能的特性,即同層域內(nèi)互聯(lián)結(jié)構(gòu)同樣可以適用于胖樹結(jié)構(gòu),用于進(jìn)一步提高 胖樹結(jié)構(gòu)的整體性能。這種增加了同層域內(nèi)互聯(lián)的樹形結(jié)構(gòu)可以應(yīng)用于并行互連網(wǎng)絡(luò)和并行處理器系 統(tǒng),在一定程度上改善了原樹形結(jié)構(gòu)的平均跳數(shù)和流量匯聚等問題,在網(wǎng)絡(luò)對(duì)容錯(cuò)需求較 高的情況下,能夠有效的增加整個(gè)樹形結(jié)構(gòu)的容錯(cuò)性。
圖1為任意樹形結(jié)構(gòu)增加同層域內(nèi)互聯(lián)結(jié)構(gòu)后的示意圖;圖2為完全4元樹CT 0,4),其中陰影部分為選取的一棵滿足條件的子樹;圖3為完全4元樹CT (4,4)中一個(gè)滿足條件的子樹增加同層域內(nèi)互聯(lián)結(jié)構(gòu)的示意 圖;圖4為完全4元樹CW4,4)增加同層域內(nèi)互聯(lián)結(jié)構(gòu)后的示意圖。
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步描述樹形拓?fù)浣Y(jié)構(gòu)有一個(gè)共同的特征,就是把樹中任意一個(gè)節(jié)點(diǎn)作為根往下看,都可 以得到一棵子樹。對(duì)于樹中的任意一棵子樹的根而言,它的子節(jié)點(diǎn)都直接通過它本身相連, 而它的孫子節(jié)點(diǎn)(即子節(jié)點(diǎn)的子節(jié)點(diǎn))則有可能不與同一個(gè)子節(jié)點(diǎn)相連,即從根節(jié)點(diǎn)往下 看,兩個(gè)二級(jí)子節(jié)點(diǎn)有可能不屬于同一個(gè)一級(jí)子節(jié)點(diǎn)。這樣的兩個(gè)節(jié)點(diǎn)之間要通信,就必須 通過這棵子樹的根節(jié)點(diǎn)才能進(jìn)行。樹形結(jié)構(gòu)的這種特性使得流量不斷地往各個(gè)子樹的根節(jié) 點(diǎn)處匯聚,并且這種必須通過根節(jié)點(diǎn)的通信在跳數(shù)上也會(huì)比那些不用通過根節(jié)點(diǎn)就能實(shí)現(xiàn) 的同級(jí)節(jié)點(diǎn)間的通信要多一些,而當(dāng)根節(jié)點(diǎn)附近出現(xiàn)故障時(shí),整個(gè)樹形拓?fù)浣Y(jié)構(gòu)的都將受 到嚴(yán)重影響。在一棵樹中達(dá)到或超過三層的所有子樹的第三層上增加一個(gè)同層域內(nèi)互聯(lián)結(jié)構(gòu), 從而給整棵樹帶來性能上的顯著提高。通過互聯(lián)后,對(duì)于任意一棵子樹的根節(jié)點(diǎn)而言,它的 所有孫子節(jié)點(diǎn)都增加了通過同層域內(nèi)互聯(lián)節(jié)點(diǎn)進(jìn)行互聯(lián)的通道,從而大量地增加了容錯(cuò)路 徑,并且在平均跳數(shù)上能夠有所減小。對(duì)于這些孫子節(jié)點(diǎn)以下的節(jié)點(diǎn),顯然它們總會(huì)是另外 某個(gè)節(jié)點(diǎn)的孫子節(jié)點(diǎn),所以這種同層域內(nèi)互聯(lián)結(jié)構(gòu)得以在全網(wǎng)展開,而使得整個(gè)樹形拓?fù)浣Y(jié)構(gòu)在性能尤其是容錯(cuò)性上面得到大幅的提高。 考慮到實(shí)際使用中的樹形結(jié)構(gòu)多是對(duì)稱結(jié)構(gòu),以一棵完全4元樹CW4,4)為例說 明該同層互聯(lián)結(jié)構(gòu)。完全m元樹CT(h,m)是這樣的一棵樹,樹中所有的非葉子節(jié)點(diǎn)都有且 僅有m個(gè)子節(jié)點(diǎn),它共有h層的完全m元樹??梢缘玫剑珻T (h, m)有m~ (h_l)個(gè)葉子節(jié)點(diǎn), 有(nrO+nri+"'+nT(h-3))個(gè)滿足條件的子樹。 對(duì)于如圖2所示的是一棵完全4元樹CT 0,4),選出如圖2中陰影部分所示的滿足 條件的一棵三層子樹,對(duì)于圖中第二層的節(jié)點(diǎn),它們都正好擁有4個(gè)子節(jié)點(diǎn),所以需要增加 4個(gè)交換節(jié)點(diǎn)來實(shí)現(xiàn)第三層的互聯(lián)。對(duì)于第1個(gè)新增的交換節(jié)點(diǎn),如圖3中所示的1’,分別 從第二層的每個(gè)節(jié)點(diǎn)的子節(jié)點(diǎn)中選出的一個(gè)節(jié)點(diǎn)與其相連,如圖3中所示所有標(biāo)號(hào)為1的 第三層節(jié)點(diǎn);用同樣的方式選出與第2、3、4個(gè)新增交換(互聯(lián))節(jié)點(diǎn)相連的第三層子節(jié)點(diǎn) 如圖3中所示標(biāo)號(hào)分別為2、3、4的節(jié)點(diǎn)。最后將新增的第1、2、3、4個(gè)節(jié)點(diǎn)兩兩首尾相連, 得到一個(gè)環(huán)。這樣得到該子樹的同層域內(nèi)互聯(lián)結(jié)構(gòu)如圖3所示。按照如上方法繼續(xù)選取原樹中其余的滿足等于或超過三層的子樹進(jìn)行互聯(lián)改造, 就得到了同層域內(nèi)互聯(lián)結(jié)構(gòu),如圖4所示。實(shí)際中大量使用的胖樹結(jié)構(gòu)同樣可以看作多個(gè)單樹來進(jìn)行互聯(lián)。GFT(h,m, w)是 一棵胖樹,它有個(gè)根節(jié)點(diǎn),每個(gè)根節(jié)點(diǎn)往下都是一棵CT (h,m),對(duì)于樹中每個(gè)非葉子節(jié) 點(diǎn)有且僅有m個(gè)子節(jié)點(diǎn),樹中每個(gè)非根節(jié)點(diǎn)有且僅有w個(gè)父節(jié)點(diǎn)。
權(quán)利要求
1. 一種樹形拓?fù)涞耐瑢佑騼?nèi)互聯(lián)結(jié)構(gòu)的實(shí)現(xiàn)方法,其特征在于①設(shè)定存在一個(gè)已有的樹形拓?fù)浣Y(jié)構(gòu),該結(jié)構(gòu)從根節(jié)點(diǎn)R開始由上而下總共具有m層, m大于2,共c個(gè)節(jié)點(diǎn),其中根節(jié)點(diǎn)R位于第1層;②定義對(duì)于第η層的任意兩個(gè)節(jié)點(diǎn)隊(duì)和 ,11大于2,如果它們各自在第(η-1)層的父 節(jié)點(diǎn)Pi和Pj (Pi和Pj可能重疊),具有同一個(gè)第η-2層的父節(jié)點(diǎn)Ri,則稱這些節(jié)點(diǎn)NpNpPp Pj和Ri屬于同一個(gè)域Di,記作Ni, Nj, Pi, Pj, Ri屬于Di,其中唯一的第n-2層節(jié)點(diǎn)Ri稱為該 域的根,顯然,對(duì)于任意第η層(η大于2)的所有Cn個(gè)節(jié)點(diǎn)而言,如果n-2層總共有cn_2個(gè) 節(jié)點(diǎn),則第η層最多能以劃分為cn_2個(gè)域,且第η層的任意一個(gè)節(jié)點(diǎn)Ni屬于且僅屬于其中的 某一個(gè)域 Di, i = 1,2,…,cn_2 ;③從第3層的節(jié)點(diǎn)開始逐層往下對(duì)整個(gè)樹進(jìn)行域的劃分,最終能得到Cl+C2+…+cn_2個(gè) 不同的域,記dmax = Cl+C2+…+cn_2,對(duì)任意一個(gè)域Di,假設(shè)它的根氏在全樹的第η層,則需要 在第η+1層增加一些同層域內(nèi)互聯(lián)節(jié)點(diǎn),使得域Di內(nèi)的所有第η+2層節(jié)點(diǎn)能夠通過這些同 層域內(nèi)互聯(lián)節(jié)點(diǎn)進(jìn)行互聯(lián);④設(shè)域Di中位于全樹第η層的氏共有ρ個(gè)子節(jié)點(diǎn),第η+1層的ρ個(gè)子節(jié)點(diǎn)又分別有 Q1, Q2,…,Qp個(gè)子節(jié)點(diǎn),即第η+2層總共有1+ +"'+ 個(gè)節(jié)點(diǎn),取其中最大的Cli記作qmax, i = 1,2,…,p,則需要增加qmax個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)S。對(duì)第j個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)Sj, j = 1,2,…,qmax,如果Cii <= j,則說明位于全樹第η+1層且屬于域Di中第i個(gè)節(jié)點(diǎn)還有 尚未進(jìn)行同層域內(nèi)互聯(lián)的子節(jié)點(diǎn),從該節(jié)點(diǎn)的子節(jié)點(diǎn)中任選一個(gè)還沒有進(jìn)行同層域內(nèi)互聯(lián) 的節(jié)點(diǎn)與第j個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)Sj相連;如此循環(huán),直到所有的域Di中第η+2層節(jié)點(diǎn)都 剛好與一個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)相連為止,最后將qmax個(gè)同層域內(nèi)互聯(lián)節(jié)點(diǎn)S1, S2,…,Sqfflax 一一首尾相連,形成一個(gè)環(huán),就得到了該域的同層域內(nèi)互聯(lián)結(jié)構(gòu),使得該域內(nèi)所有節(jié)點(diǎn)間除 了存在原樹上的交換通道,還可以實(shí)現(xiàn)通過同層域內(nèi)互聯(lián)節(jié)點(diǎn)直接進(jìn)行交互;⑤對(duì)步驟③劃分得到的每個(gè)域Di按照步驟④增加同層域內(nèi)互聯(lián)結(jié)構(gòu),i= 1,2,…, dmax,就能夠得到全樹的同層域內(nèi)互聯(lián)結(jié)構(gòu)。
全文摘要
本發(fā)明公開了一種樹形拓?fù)涞耐瑢佑騼?nèi)互聯(lián)結(jié)構(gòu)的實(shí)現(xiàn)方法,該方法所得的互聯(lián)結(jié)構(gòu)解決了樹形結(jié)構(gòu)的一些不足,能夠達(dá)到比樹形結(jié)構(gòu)更小的平均跳數(shù)、更強(qiáng)的容錯(cuò)保護(hù),以及使用更少的額外交換節(jié)點(diǎn)和鏈路。同時(shí),胖樹結(jié)構(gòu)可以看作是多棵單樹結(jié)構(gòu)的重疊,本發(fā)明的方法同樣也可以用于胖樹結(jié)構(gòu),以減小其平均跳數(shù)和增強(qiáng)其容錯(cuò)性能。
文檔編號(hào)H04L12/44GK102130810SQ20111002950
公開日2011年7月20日 申請(qǐng)日期2011年1月27日 優(yōu)先權(quán)日2011年1月27日
發(fā)明者楊成, 王京梅, 許都 申請(qǐng)人:電子科技大學(xué)