專利名稱:一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)設(shè)備拓撲結(jié)構(gòu)的生成方法,更具體地說,涉及一種針對組成樹狀網(wǎng)絡(luò)的大規(guī)模網(wǎng)絡(luò)設(shè)備,快速、準確、及時地生成其拓撲結(jié)構(gòu)的方法。
背景技術(shù):
近幾年,中國的寬帶接入技術(shù)發(fā)展迅速,這為寬帶接入提供了巨大的商機,使得越來越多的用戶可以通過寬帶登錄互聯(lián)網(wǎng)。
在寬帶運營商根據(jù)需要擴大網(wǎng)絡(luò)規(guī)模、增加網(wǎng)絡(luò)設(shè)備的同時,他也面臨著因為網(wǎng)絡(luò)規(guī)模的擴大和網(wǎng)絡(luò)設(shè)備數(shù)量的增加而帶來的對寬帶網(wǎng)絡(luò)和設(shè)備管理的困難。
在通常的網(wǎng)絡(luò)接入中,網(wǎng)絡(luò)運營商會在其管理中心設(shè)置少量的管理設(shè)備,通過管理設(shè)備對連接在網(wǎng)絡(luò)中的數(shù)量巨大而管理級別較低的網(wǎng)絡(luò)設(shè)備進行管理和簡單的故障診斷、處理。為了實現(xiàn)對網(wǎng)絡(luò)中的各個網(wǎng)絡(luò)設(shè)備進行管理的目的,管理者必須準確、及時地掌握網(wǎng)絡(luò)中各個網(wǎng)絡(luò)設(shè)備的物理連接結(jié)構(gòu),即網(wǎng)絡(luò)設(shè)備的拓撲結(jié)構(gòu),只有這樣才能提高管理效率、及時發(fā)現(xiàn)網(wǎng)絡(luò)故障、降低網(wǎng)絡(luò)運營成本。因此,如何快速、準確、及時地生成網(wǎng)絡(luò)設(shè)備拓撲結(jié)構(gòu)就成為一個非常重要的問題。
發(fā)明內(nèi)容
由于在網(wǎng)絡(luò)設(shè)備接入時,一般從管理中心到社區(qū)和樓道,網(wǎng)絡(luò)設(shè)備通常都連接成樹狀結(jié)構(gòu),所以,本發(fā)明的目的是提供一種針對組成樹狀網(wǎng)絡(luò)的大規(guī)模網(wǎng)絡(luò)設(shè)備,快速、準確、及時地生成其拓撲結(jié)構(gòu)的方法。
為實現(xiàn)上述目的,本發(fā)明采用以下技術(shù)方案一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,該方法包括以下步驟第一步將所要管理的網(wǎng)絡(luò)設(shè)備連接成樹狀網(wǎng)絡(luò)結(jié)構(gòu),并將其認為是一個“管理域”,作為拓撲結(jié)構(gòu)生成對象;第二步在這個“管理域”中,將處于這個樹狀網(wǎng)絡(luò)最上層的一臺設(shè)備指定為“代理設(shè)備”;第三步使“管理域”內(nèi)的各個設(shè)備之間進行信息交互,收集自己上層鏈路設(shè)備的信息,從而,使每臺設(shè)備建立完成自己的“上聯(lián)設(shè)備信息表”;第四步各個設(shè)備根據(jù)自己的“上聯(lián)設(shè)備信息表”進行鏈路計算,比較計算得出自己的父設(shè)備和代理設(shè)備,并將計算結(jié)果發(fā)送給“代理設(shè)備”;第五步由“代理設(shè)備”對域內(nèi)各設(shè)備計算結(jié)果進行記錄,然后將收集到的信息進行整合,生成整個“管理域”內(nèi)設(shè)備的拓撲結(jié)構(gòu);第六步重復(fù)執(zhí)行第三步~第五步,定期進行拓撲結(jié)構(gòu)的維護及故障處理。
所述第三步“管理域”內(nèi)的各個設(shè)備之間進行信息交互,收集自己上層鏈路設(shè)備的信息,每臺設(shè)備建立完成自己的“上聯(lián)設(shè)備信息表”又由以下步驟完成(1)管理域中的每臺設(shè)備每隔一定間隔發(fā)送一次尋根請求(2)管理域內(nèi)的設(shè)備對其下聯(lián)設(shè)備的尋根請求發(fā)送尋根應(yīng)答(a)、尋根應(yīng)答的接收下聯(lián)設(shè)備接收其上聯(lián)設(shè)備發(fā)送的尋根應(yīng)答,并進行解析,在設(shè)備內(nèi)生成自己的“上聯(lián)設(shè)備信息表”。
(b)、尋根應(yīng)答的發(fā)送當上聯(lián)設(shè)備收到其下聯(lián)設(shè)備發(fā)送的尋根請求后,根據(jù)其自己的“上聯(lián)設(shè)備信息表”發(fā)送尋根應(yīng)答(3)在設(shè)備收到來自上聯(lián)設(shè)備的尋根應(yīng)答后,即發(fā)送尋根應(yīng)答確認。
所述第四步中的鏈路計算方法是將“上聯(lián)設(shè)備信息表”中的各條記錄進行比較,選擇各記錄中“上聯(lián)設(shè)備的上聯(lián)設(shè)備個數(shù)”最多的一條記錄;因為如果此記錄中“上聯(lián)設(shè)備的上聯(lián)設(shè)備個數(shù)”個數(shù)最多,說明記錄中的這個上聯(lián)設(shè)備到頂級“代理設(shè)備”的路徑最長,也就說明這個上聯(lián)設(shè)備是在本鏈路中離自己最“近”的一個上聯(lián),則這個上聯(lián)設(shè)備即為自身的父設(shè)備。
所述第五步中由“代理設(shè)備”對這些計算結(jié)果進行接收記錄,然后將收集到的信息進行整合,生成整個“管理域”內(nèi)設(shè)備的拓撲結(jié)構(gòu)由以下步驟完成(1)、由“代理設(shè)備”收集其下的所有設(shè)備發(fā)送的父子信息,生成“父子關(guān)系表”(2)“代理設(shè)備”根據(jù)網(wǎng)絡(luò)管理員的指令,依據(jù)其“父子關(guān)系表”生成該“管理域”的拓撲結(jié)構(gòu)(a)、查找“代理設(shè)備”的所有一級子設(shè)備(b)、查找“代理設(shè)備”的各個一級子設(shè)備的子設(shè)備(c)、逐級類推,最終查找出“代理設(shè)備”各級子設(shè)備的子設(shè)備,生成此“代理設(shè)備”下的網(wǎng)絡(luò)設(shè)備的樹狀拓撲結(jié)構(gòu)。
本發(fā)明在網(wǎng)絡(luò)拓撲結(jié)構(gòu)生成過程中,“管理域”中的每臺設(shè)備都主動發(fā)現(xiàn)、計算其父設(shè)備和代理設(shè)備,并將信息報告給“管理域”中的“代理設(shè)備”,由“代理設(shè)備”生成該“管理域”的拓撲結(jié)構(gòu)?!胺谴碓O(shè)備”只進行信息的收集和計算,而“代理設(shè)備”才進行信息的收集、整理和拓撲結(jié)構(gòu)的生成,平均了各個設(shè)備的負荷,使得拓撲生成過程中,設(shè)備間握手次數(shù)和報文傳遞大大的減少,提高了拓撲結(jié)構(gòu)生成的效率,減輕了網(wǎng)絡(luò)負荷,所以,本發(fā)明提供的拓撲結(jié)構(gòu)生成方法快速、及時、有效。
另外,本發(fā)明提供的拓撲結(jié)構(gòu)生成方法可以架構(gòu)于任何標準OSI模型的數(shù)據(jù)鏈路層之上進行數(shù)據(jù)傳輸,由此可以不限定特定的數(shù)據(jù)鏈路層,即只要有數(shù)據(jù)鏈路支持,就可以進行網(wǎng)絡(luò)拓撲發(fā)現(xiàn)。這對于在網(wǎng)絡(luò)通信設(shè)備組成的網(wǎng)絡(luò)中有較大的優(yōu)勢,由于不依賴網(wǎng)絡(luò)層的支持,即可以在網(wǎng)絡(luò)通信設(shè)備沒有配置有效IP的情況下進行拓撲發(fā)現(xiàn),這樣對于IP資源匱乏的運營商來說可以節(jié)省大量的有效IP地址。
圖1為樹狀網(wǎng)絡(luò)結(jié)構(gòu)示意2為本發(fā)明公開的拓撲結(jié)構(gòu)生成方法流程3為圖1中的設(shè)備對其下聯(lián)設(shè)備的尋根請求應(yīng)答過程示意4為兩個代理設(shè)備的拓撲結(jié)構(gòu)示意5為本發(fā)明代理設(shè)備生成拓撲結(jié)構(gòu)流程6為GNMP協(xié)議族協(xié)議結(jié)構(gòu)7為本發(fā)明設(shè)備通信時數(shù)據(jù)封裝和傳輸過程圖具體實施方式
由于在網(wǎng)絡(luò)設(shè)備接入時,一般從管理中心到社區(qū)和樓道,網(wǎng)絡(luò)設(shè)備通常都連接成如圖1所示的樹狀結(jié)構(gòu),所以,本發(fā)明針對組成樹狀網(wǎng)絡(luò)的大規(guī)模網(wǎng)絡(luò)設(shè)備,提出了一種快速生成其拓撲結(jié)構(gòu)的方法。該方法如圖2所示包括以下步驟第一步將所要管理的網(wǎng)絡(luò)設(shè)備連接成樹狀網(wǎng)絡(luò)結(jié)構(gòu),并將其認為是一個“管理域”,作為拓撲結(jié)構(gòu)生成對象;第二步在這個“管理域”中,將處于這個樹狀網(wǎng)絡(luò)最上層的一臺設(shè)備指定為“代理設(shè)備”;第三步使“管理域”內(nèi)的各個設(shè)備之間進行信息交互,收集自己上層鏈路設(shè)備的信息,從而,使每臺設(shè)備建立完成自己的“上聯(lián)設(shè)備信息表”;第四步各個設(shè)備根據(jù)自己的“上聯(lián)設(shè)備信息表”進行鏈路計算,比較計算得出自己的父設(shè)備和代理設(shè)備,并將計算結(jié)果發(fā)送給“代理設(shè)備”;第五步由“代理設(shè)備”對域內(nèi)各設(shè)備的計算結(jié)果進行記錄,然后將收集到的信息進行整合,生成整個“管理域”內(nèi)設(shè)備的拓撲結(jié)構(gòu);第六步重復(fù)執(zhí)行第三步~第五步,定期進行拓撲結(jié)構(gòu)的維護及故障處理。
下面結(jié)合附圖和圖表,詳細地說明本發(fā)明生成樹狀網(wǎng)絡(luò)拓撲結(jié)構(gòu)的方法。
該方法包括以下步驟第一步將所要管理的網(wǎng)絡(luò)設(shè)備連接成如圖1所示的樹狀網(wǎng)絡(luò)結(jié)構(gòu),并將其認為是一個“管理域”,作為拓撲結(jié)構(gòu)生成對象。
第二步在這個“管理域”中,將處于這個樹狀網(wǎng)絡(luò)最上層的一臺設(shè)備指定為“代理設(shè)備”。
如圖1所示,在這個“管理域”中,將處于這個樹狀網(wǎng)絡(luò)最上層的設(shè)備A指定為“代理設(shè)備”。具體方法可以通過對A設(shè)備的一個屬性狀態(tài)位進行設(shè)置來實現(xiàn)。在本發(fā)明中,被指定為“代理設(shè)備”的A設(shè)備為“管理域”的根設(shè)備,最終由它生成整個網(wǎng)絡(luò)的拓撲結(jié)構(gòu)。
第三步使“管理域”內(nèi)的各個設(shè)備之間進行信息交互,收集自己上層鏈路設(shè)備的信息,從而,使“管理域”內(nèi)的每臺設(shè)備建立完成自己的“上聯(lián)設(shè)備信息表”。
在圖1所示的管理域中,設(shè)備間的物理拓撲關(guān)系由上至下類似于倒置的樹狀結(jié)構(gòu)。從管理域的最頂端設(shè)備A到最底端設(shè)備D1、C2、C3形成有三條鏈路,如A→B1→C1→D1,A→B1→C2,A→B2→C3。在信息交互環(huán)節(jié)中,其目的就是通過設(shè)備間的數(shù)據(jù)通信,使得每臺設(shè)備均得到本鏈路中自己的上聯(lián)設(shè)備信息。
具體通過以下步驟實現(xiàn)(1)管理域中的每臺設(shè)備每隔一定間隔發(fā)送一次尋根請求目的是對域內(nèi)的所有上聯(lián)設(shè)備進行信息請求,請求獲得這些上聯(lián)設(shè)備的應(yīng)答。
具體操作每臺網(wǎng)絡(luò)設(shè)備開始工作后,就以一定的時間間隔連續(xù)發(fā)送N次尋根請求廣播信息,發(fā)送N次請求的目的是為了使自己上聯(lián)的所有設(shè)備都得到自己的請求信息。發(fā)送完成后,將自身的狀態(tài)位——“尋根請求完成狀態(tài)”置位,表示自己已經(jīng)發(fā)送完成N次尋根請求信息。
(2)尋根應(yīng)答對來自下聯(lián)設(shè)備的尋根請求發(fā)送尋根應(yīng)答。
當網(wǎng)絡(luò)設(shè)備只有收到來自其下聯(lián)設(shè)備的尋根廣播后,才對請求設(shè)備發(fā)送點對點的應(yīng)答信息,目的是將自己的信息以及自己收集的所有上聯(lián)設(shè)備信息應(yīng)答給發(fā)送請求的這個下聯(lián)設(shè)備;而設(shè)備在對下聯(lián)設(shè)備進行尋根應(yīng)答的同時,也會收到來自上聯(lián)設(shè)備對自己尋根請求的應(yīng)答,將應(yīng)答報文中的各上聯(lián)設(shè)備信息進行記錄。所有設(shè)備通過對尋根應(yīng)答報文的接收和發(fā)送,使得域內(nèi)各個設(shè)備可以得到自己所有上聯(lián)設(shè)備的信息。
(a)、尋根應(yīng)答的接收下聯(lián)設(shè)備接收其上聯(lián)設(shè)備發(fā)送的尋根應(yīng)答,并進行解析,在設(shè)備內(nèi)生成自己的“上聯(lián)設(shè)備信息表”。
每臺設(shè)備都有一個“上聯(lián)設(shè)備信息表”,設(shè)備每收到一個上聯(lián)設(shè)備對自己的尋根應(yīng)答信息后,就對尋根應(yīng)答信息進行信息解析,將信息中記錄的這個上聯(lián)設(shè)備、這個上聯(lián)設(shè)備的屬性特征和這個上聯(lián)設(shè)備的各個上聯(lián)設(shè)備都記錄下來,做成如下所示的“上聯(lián)設(shè)備信息表”,該表中包括
表1其中,“標識”是指應(yīng)答設(shè)備的數(shù)據(jù)鏈路層通信標識,如基于以太網(wǎng)的網(wǎng)絡(luò)交換設(shè)備數(shù)據(jù)傳輸,設(shè)備的標識即為MAC地址?!皩傩浴敝傅氖菓?yīng)答設(shè)備是否為“代理設(shè)備”?!吧下?lián)設(shè)備的上聯(lián)設(shè)備數(shù)”記錄此應(yīng)答設(shè)備的所有上聯(lián)設(shè)備個數(shù);“上聯(lián)設(shè)備的各個上聯(lián)設(shè)備標識”記錄了這個應(yīng)答設(shè)備的各個上聯(lián)設(shè)備標識?!坝涗洝睍r間表示記錄此條信息的時間。
具體接收處理操作如下設(shè)備對自身接收到的來自上聯(lián)設(shè)備發(fā)送的尋根應(yīng)答信息進行解析,將應(yīng)答中攜帶的應(yīng)答上聯(lián)設(shè)備標識和屬性,以及這個上聯(lián)設(shè)備的各個上聯(lián)設(shè)備標識記錄到“上聯(lián)設(shè)備信息表”中,并填入記錄這些信息的時間。
(b)、尋根應(yīng)答的發(fā)送當上聯(lián)設(shè)備收到其下聯(lián)設(shè)備發(fā)送的尋根請求后,根據(jù)其自己的“上聯(lián)設(shè)備信息表”發(fā)送尋根應(yīng)答。
各個設(shè)備在接收的同時也會對來自下聯(lián)的請求進行尋根應(yīng)答。尋根應(yīng)答信息就是根據(jù)自己的“上聯(lián)設(shè)備信息表”中的信息記錄來填充。
應(yīng)答具體操作如下每臺設(shè)備都會收到來自上聯(lián)和下聯(lián)的尋根請求廣播,但尋根請求的目的是對上聯(lián)設(shè)備的發(fā)現(xiàn),因此設(shè)備只需對從下聯(lián)口處接收到的尋根請求進行應(yīng)答。
設(shè)備每收到一個來自下聯(lián)的尋根請求,便對發(fā)送尋根請求的設(shè)備回應(yīng)一個尋根應(yīng)答;在應(yīng)答信息中,依次填入如下信息a.本設(shè)備的標識信息;b.本設(shè)備的屬性特征(即是否為“代理設(shè)備”);c.本設(shè)備“上聯(lián)設(shè)備信息表”記錄的各個應(yīng)答上聯(lián)設(shè)備標識,即本設(shè)備此時收集到的各個應(yīng)答上聯(lián)設(shè)備信息。
例如圖1中鏈路A→B1→C1→D1中各設(shè)備對其下聯(lián)設(shè)備的尋根請求的應(yīng)答過程如圖3所示在A對B1、A對C1、A對D1的應(yīng)答中包含的信息為A設(shè)備自己的標識和屬性;在B1對C1、B1對D1的應(yīng)答中包含的信息為B1設(shè)備自己的標識和屬性,以及它的上聯(lián)設(shè)備A的標識;在C1對D1的應(yīng)答中包含的信息為C1設(shè)備自己的標識和屬性,以及它的上聯(lián)設(shè)備B1、上聯(lián)設(shè)備A的標識。
通過設(shè)備間的信息交互,即設(shè)備間的尋根請求、尋根請求的應(yīng)答以及尋根應(yīng)答的發(fā)送與接收,圖1中的網(wǎng)絡(luò)設(shè)備D1的“上聯(lián)設(shè)備信息表”中就記錄了以下三條信息
表2由這個表可以看出,通過尋根應(yīng)答信息的解析記錄,每臺設(shè)備的“上聯(lián)設(shè)備信息表”中實際記錄下了自己所在鏈路中,每臺設(shè)備到“代理設(shè)備”的鏈路信息。
由于每臺設(shè)備都會發(fā)送N次尋根請求信息,在通信正常的情況下,設(shè)備也會收到N個來自某個上聯(lián)的尋根應(yīng)答(如果某設(shè)備所在鏈路有M個上聯(lián)設(shè)備,則一共會收到M×N個尋根應(yīng)答信息)。各個設(shè)備通過對應(yīng)答信息的接收和解析,它們的“上聯(lián)設(shè)備信息表”中就可以完備的記錄下自己所在鏈路中的每臺上聯(lián)設(shè)備和這個上聯(lián)設(shè)備的所有上聯(lián)設(shè)備。
(3)在設(shè)備收到來自上聯(lián)設(shè)備的尋根應(yīng)答后,即發(fā)送尋根應(yīng)答確認。
目的是通知上聯(lián)設(shè)備尋根應(yīng)答信息已被收到。具體操作設(shè)備收到上聯(lián)設(shè)備對自己的尋根應(yīng)答即給發(fā)送方回應(yīng)一個應(yīng)答確認信息;尋根應(yīng)答發(fā)送完成后在N時間內(nèi)未收到確認報文,就會重發(fā)一次應(yīng)答信息,直到收到相應(yīng)的應(yīng)答確認信息或者重發(fā)次數(shù)超出限值。此確認信息可以保證“上行鏈路發(fā)現(xiàn)”的完備性和穩(wěn)定性。
在信息交互環(huán)節(jié)中,通過設(shè)備間“請求”→“應(yīng)答”→“確認應(yīng)答”幾次信息的交互,每臺設(shè)備的“上聯(lián)設(shè)備信息表”就記錄完備了計算鏈路所需的上行鏈路所有信息。
第四步各個設(shè)備根據(jù)自己的“上聯(lián)設(shè)備信息表”進行鏈路計算,比較計算得出自己的父設(shè)備和代理設(shè)備,并將計算結(jié)果發(fā)送給“代理設(shè)備”。
在上一步完成后,每臺設(shè)備的“上聯(lián)設(shè)備信息表”中都記錄了自己的每臺上聯(lián)設(shè)備及相關(guān)信息,實際上就相當于記錄下了自己上行鏈路中每臺上聯(lián)設(shè)備到“代理設(shè)備”的鏈路信息。鏈路計算就是根據(jù)“上聯(lián)設(shè)備信息表”的這些信息進行計算,得出父子信息和代理信息。
方法是將“上聯(lián)設(shè)備信息表”中的各條記錄進行比較,選擇各記錄中“上聯(lián)設(shè)備的上聯(lián)設(shè)備個數(shù)”最多的一條記錄;因為如果此記錄中“上聯(lián)設(shè)備的上聯(lián)設(shè)備個數(shù)”個數(shù)最多,說明記錄中的這個上聯(lián)設(shè)備到頂級“代理設(shè)備”的路徑最長,也就說明這個上聯(lián)設(shè)備是在本鏈路中離自己最“近”的一個上聯(lián),則這個上聯(lián)設(shè)備即為自身的父設(shè)備。
如表2中所示,D1“上聯(lián)設(shè)備信息表”記錄的信息中,C1有B1和A兩個上聯(lián)設(shè)備,B1有A一個上聯(lián)設(shè)備,A的上聯(lián)設(shè)備數(shù)為0,則記錄中的C1的上聯(lián)設(shè)備數(shù)最多,也就說明C1是在鏈路中離D1最近的一個上聯(lián)設(shè)備,即C1是D1的父設(shè)備。
同理C1根據(jù)其“上聯(lián)設(shè)備信息表”可以確認B1是它的父設(shè)備;A是B1的父設(shè)備。
同樣,根據(jù)此方法,每臺設(shè)備根據(jù)自己的“上聯(lián)設(shè)備信息表”確定在本鏈路中自己的代理設(shè)備。
當網(wǎng)絡(luò)中出現(xiàn)如圖4所示的不同管理域時,即本設(shè)備的上行鏈路中有幾臺設(shè)備屬性均為“代理設(shè)備”時,可以根據(jù)這幾個“代理設(shè)備”的“上聯(lián)設(shè)備的上聯(lián)設(shè)備個數(shù)”多少,來得出鏈路中離自己“最近”的代理來,認為這個“代理設(shè)備”即為自己所在“管理域”的“代理設(shè)備”。例如在D1的鏈路中如果B1和A均為“代理設(shè)備”屬性,則根據(jù)鏈路長短,可以計算得出B1是離D1最近的“代理設(shè)備”,D1屬于以B1為代理的管理域,記錄B1為自己的代理設(shè)備。
在此算法中,由于網(wǎng)絡(luò)故障或環(huán)境惡劣造成的信息丟失,可能會使各設(shè)備收集的上聯(lián)設(shè)備信息不完備,從而造成計算錯誤,但是這種錯誤會隨著維護過程中對信息的進一步收集完善來解決。
第五步由“代理設(shè)備”對域內(nèi)各設(shè)備的計算結(jié)果進行記錄,然后將收集到的信息進行整合,生成整個“管理域”內(nèi)設(shè)備的拓撲結(jié)構(gòu);(1)、“代理設(shè)備”收集其下的所有設(shè)備發(fā)送的父子信息,生成“父子關(guān)系表”如“代理設(shè)備”A生成的“父子關(guān)系表”為
表3(2)“代理設(shè)備”根據(jù)網(wǎng)絡(luò)管理員的指令,依據(jù)其“父子關(guān)系表”生成該“管理域”的拓撲結(jié)構(gòu)在通常情況下,“代理設(shè)備”只是保存本“管理域”的“父子關(guān)系表”,并不生成拓撲結(jié)構(gòu),這樣可以減少計算量、節(jié)省存儲空間,并且方便父子信息的記錄更新。
只有當管理員向“代理設(shè)備”發(fā)出拓撲查詢指令時,“代理設(shè)備”即根據(jù)“父子關(guān)系表”中記錄的各條父子關(guān)系信息,進行信息整合,得出拓撲結(jié)構(gòu)來。具體方法如圖5所示(a)、查找“代理設(shè)備”的所有一級子設(shè)備順序查找“父子關(guān)系表”各條記錄中“其父設(shè)備屬性”一欄為“代理設(shè)備”的所有記錄,這些記錄中的“子設(shè)備”就是“代理設(shè)備”的一級子設(shè)備;根據(jù)表3,可以查找出代理設(shè)備A的所有子設(shè)備為B1和B2。
(b)、查找“代理設(shè)備”的各個一級子設(shè)備的子設(shè)備依照上述方法,逐個查找“代理設(shè)備”的各個一級子設(shè)備是否為“父子關(guān)系表”中各條記錄的“父設(shè)備信息”,從而找出代理設(shè)備各個一級子設(shè)備的所有子設(shè)備,即代理設(shè)備的二級子設(shè)備。
根據(jù)表3,可以查找出B1的子設(shè)備為C1和C2,B2的子設(shè)備為C3。
(c)、逐級類推,最終查找出“代理設(shè)備”各級子設(shè)備的子設(shè)備,生成此“代理設(shè)備”下的網(wǎng)絡(luò)設(shè)備的樹狀拓撲結(jié)構(gòu)。
第六步重復(fù)執(zhí)行第三步~第五步,定期進行拓撲的維護及故障處理。
當各個設(shè)備在完成初始的鏈路發(fā)現(xiàn)和計算后,直接進入維護狀態(tài),對首次發(fā)現(xiàn)中的錯誤進行糾正,并且動態(tài)對拓撲變化進行更新。
在維護狀態(tài)中,設(shè)備仍會定時發(fā)送尋根請求報文,從而發(fā)起一次新的信息交互過程,然后對新的信息進行計算,并將計算結(jié)果報告給代理,這樣“代理設(shè)備”就可以不斷的更新域內(nèi)設(shè)備的父子關(guān)系信息。通過這樣的定時維護,可以做到1.錯誤糾正。由于信息交互的不斷進行,各個設(shè)備得到的上行鏈路信息也就更加完備,這樣可以將首次拓撲發(fā)現(xiàn)中由于信息不完備造成的錯誤進行更正;2.動態(tài)更新。當拓撲結(jié)構(gòu)發(fā)生變化或添加新設(shè)備時,由于設(shè)備定期進行的信息交互和計算報告,及時對變化的狀態(tài)進行了信息更新,從而維護了新的拓撲結(jié)構(gòu)。
3.老化更新刪除設(shè)備。在維護狀態(tài)中,各個設(shè)備也會對“上聯(lián)設(shè)備信息表”和“父子關(guān)系表”進行定期的刷新老化,根據(jù)各表中表項的記錄時間將超過老化期的信息項予以刪除,這樣可以將已不在域內(nèi)工作的設(shè)備從拓撲結(jié)構(gòu)中去除。
下面以利用運行于OSI數(shù)據(jù)鏈路層上的自定義協(xié)議-----長城網(wǎng)絡(luò)管理協(xié)議(簡稱GNMP協(xié)議)進行信息交互和數(shù)據(jù)通信的組成樹狀結(jié)構(gòu)的網(wǎng)絡(luò)設(shè)備為例,說明本發(fā)明提供的網(wǎng)絡(luò)拓撲結(jié)構(gòu)生成方法是如何快速、準確、及時地生成其拓撲結(jié)構(gòu)的。
GNMP協(xié)議是一組自定義的網(wǎng)絡(luò)管理協(xié)議族。此協(xié)議為一個三層協(xié)議系統(tǒng),是一組分布在網(wǎng)絡(luò)層、傳輸層和應(yīng)用層的多個協(xié)議的組合。一般情況下,GNMP協(xié)議直接架構(gòu)在OSI模型中的數(shù)據(jù)鏈路層之上的,但在特殊情況下它可以被架構(gòu)在其它協(xié)議層之上。本協(xié)議族中的其它所有自定義協(xié)議如GNAP協(xié)議和GTDP協(xié)議數(shù)據(jù)均以GNMP數(shù)據(jù)包格式進行傳輸。
GNAP協(xié)議(長城網(wǎng)絡(luò)應(yīng)用協(xié)議)是GNMP協(xié)議的一個簡單應(yīng)用協(xié)議,為傳輸層協(xié)議;GTDP協(xié)議(長城設(shè)備拓撲發(fā)現(xiàn)協(xié)議)是基于GNAP協(xié)議的設(shè)備拓撲自動發(fā)現(xiàn)協(xié)議,為應(yīng)用層協(xié)議;三者關(guān)系如圖6所示。
下面對GNMP協(xié)議、GNAP協(xié)議和GTDP協(xié)議的報文格式進行如下說明GNMP協(xié)議報文格式為
表4其中版本4bit,協(xié)議版本,定義不同的報文格式,此文檔描述的版本為0001;長度12bit,整個報文長度;保留8bit,保留;保留8bit,保留;狀態(tài)8bit,標識設(shè)備狀態(tài);保留8bit,保留;保留8bit,保留;類型8bit,協(xié)議報文類型,定義了0x07為GTDP報文保留8bit,保留;目的ID24bit,目的設(shè)備標識;源ID24bit,源設(shè)備標識;保留8bit,保留;數(shù)據(jù)208~11840bit,填充GNAP首部及其數(shù)據(jù)區(qū)部分;填充碼16bit,填充碼,必須是0x00;校驗計數(shù)16bit,整個報文數(shù)據(jù)的16位累加和。
GNAP協(xié)議報文格式
表5目的操作碼16bit,目標操作碼;源操作碼16bit,源操作碼;狀態(tài)16bit,狀態(tài);保留16bit,保留;目標系列號16bit,目標系列號;源系列號SN16bit,源系列號;數(shù)據(jù)數(shù)據(jù),長度可變,填充GTDP協(xié)議不同報文的首部和數(shù)據(jù)區(qū)。
應(yīng)用層的GTDP協(xié)議是基于GNAP協(xié)議的設(shè)備拓撲自動發(fā)現(xiàn)協(xié)議,為應(yīng)用層協(xié)議。GNAP協(xié)議的目的操作碼用于標識區(qū)分GTDP協(xié)議中不同的操作報文類型。GTDP中不同的操作報文標識如下
表6GTDP報文格式
表7保留8bit,保留;源設(shè)備狀態(tài)8bit,源設(shè)備的狀態(tài),“1”表示是代理;源ID24bit,源設(shè)備的標識;源Mac首字段32bit,源設(shè)備Mac地址的前4個Byte;源Mac尾字段16bit,源設(shè)備Mac地址的后2個Byte;源IP32bit,源設(shè)備的IP地址;源S/N152bit,源設(shè)備S/N;發(fā)送尋根次數(shù)8bit,發(fā)送尋根的次數(shù);連接端口8bit,在發(fā)送尋根應(yīng)答報文時有效,表示所在上連設(shè)備的端口號;代理設(shè)備ID24bit,代理設(shè)備的標識;代理設(shè)備狀態(tài)8bit,所屬域代理設(shè)備的狀態(tài);代理Mac首字段32bit,根設(shè)備Mac地址的前4個Byte;代理Mac尾字段16bit,根設(shè)備Mac地址的后2個Byte;代理IP32bit,根設(shè)備的IP地址;第一數(shù)據(jù)區(qū)長度8bit,第一塊數(shù)據(jù)區(qū)的長度,長度以字節(jié)數(shù)記;第二數(shù)據(jù)區(qū)長度8bit,保留;本身的層次8bit,保留;本拓撲最大層數(shù)8bit,保留;第一個ID24bit,保留;數(shù)值8bit,保留;設(shè)備ID24bit,保留;數(shù)據(jù)填充數(shù)據(jù),長度可變,根據(jù)GTDP不同的報文包含不同長度的數(shù)據(jù),
下面的表格說明不同報文對應(yīng)的數(shù)據(jù)區(qū)內(nèi)容。
表8在本實施例中,樹狀網(wǎng)絡(luò)設(shè)備其拓撲結(jié)構(gòu)生成方法是第一步將所要管理的網(wǎng)絡(luò)設(shè)備連接成如圖1所示的樹狀網(wǎng)絡(luò)結(jié)構(gòu),并將其認為是一個“管理域”。
第二步在這個“管理域”中,將處于這個樹狀網(wǎng)絡(luò)最上層的一臺設(shè)備A指定為“代理設(shè)備”。
第三步使“管理域”內(nèi)的各個設(shè)備之間按照GNMP協(xié)議、GNAP協(xié)議和GTDP協(xié)議格式進行信息交互,收集自己上層鏈路設(shè)備的信息,建立完成自己的“上聯(lián)設(shè)備信息表”。
在整個拓撲結(jié)構(gòu)生成過程中,“管理域”中的每臺設(shè)備所發(fā)送、接收的信息如發(fā)送尋根請求、進行尋根請求應(yīng)答、發(fā)送尋根請求應(yīng)答確認和進行父子關(guān)系信息報告都先按照GNMP協(xié)議族中各層協(xié)議格式填充完整GNMP報文;然后,將其構(gòu)架于數(shù)據(jù)鏈路層之上進行數(shù)據(jù)通信;同時,對接收到的報文也按照GNMP協(xié)議族中各層協(xié)議格式進行解析,從而完成設(shè)備間的信息交互。
“管理域”中的每臺設(shè)備所發(fā)送、接收的信息都是按照GTDP協(xié)議報文、GNAP報文和GNMP報文的順序進行填充,具體步驟如下(1)填充GTDP報文根據(jù)發(fā)送報文的類型將需要發(fā)送的數(shù)據(jù)信息填入表7所示的GTDP協(xié)議的“數(shù)據(jù)區(qū)”,然后,封裝GTDP協(xié)議報文的首部信息,組成符合GTDP協(xié)議的應(yīng)用數(shù)據(jù)。
如尋根請求報文、尋根應(yīng)答報文、尋根應(yīng)答確認報文、父子關(guān)系通知報文等,首先,按照GTDP協(xié)議中定義的報文類型標號和相應(yīng)報文類型中需要填充的信息進行填充,然后,封裝GTDP報文的首部信息,組成符合GTDP協(xié)議的應(yīng)用數(shù)據(jù)。
(2)填充GNAP報文首部將填寫好的應(yīng)用數(shù)據(jù)填寫到GNAP協(xié)議報文的“數(shù)據(jù)區(qū)”中,然后根據(jù)發(fā)送報文的類型,填充GNAP報文首部,組成符合GNAP協(xié)議的傳輸數(shù)據(jù)。
(3)填充GNMP報文首部將填充好GNAP報文首部信息的報文嵌入到GNMP協(xié)議報文的“數(shù)據(jù)區(qū)”中,然后根據(jù)GNMP協(xié)議中的定義填寫GNMP報文的其它數(shù)據(jù)信息經(jīng)過上面三步數(shù)據(jù)填充,就完成了一個完整的GNMP報文填充,將此報文通過數(shù)據(jù)鏈路層進行傳輸就可以實現(xiàn)設(shè)備間的數(shù)據(jù)通信。
在這樣的數(shù)據(jù)通信機制中,由于GNMP協(xié)議報文直接架構(gòu)于數(shù)據(jù)鏈路層之上,只要有數(shù)據(jù)鏈路層的支持,就可以進行設(shè)備間的數(shù)據(jù)通信。而在GNMP協(xié)議族網(wǎng)絡(luò)層協(xié)議中定義的源ID和目的ID為自定義的設(shè)備標識,類似于TCP/IP協(xié)議中的IP,設(shè)備是否具有有效ID并不影響設(shè)備間的數(shù)據(jù)傳輸,即本實施例提出的優(yōu)點之一——拓撲生成方法可以在沒有網(wǎng)絡(luò)層支持的情況下,進行數(shù)據(jù)通信,從而生成網(wǎng)絡(luò)設(shè)備拓撲結(jié)構(gòu)。
如果將本例的GNMP協(xié)議構(gòu)架到基于以太網(wǎng)的數(shù)據(jù)鏈路層上,則在GNMP報文前封裝一個以太網(wǎng)首部即可通過以太網(wǎng)物理介質(zhì)進行數(shù)據(jù)傳輸,則本例中設(shè)備通信時的數(shù)據(jù)封裝和傳輸過程如圖7所示。
按照GTDP報文、GNAP報文和GNMP報文的順序填充好的信息,在“管理域”內(nèi)的各個設(shè)備之間進行信息交互的具體過程是(1)管理域中的每臺設(shè)備每隔一定間隔發(fā)送一次尋根請求報文具體操作每臺設(shè)備開始工作,就以一定的時間間隔連續(xù)發(fā)送N次尋根請求廣播報文,發(fā)送N次請求的目的是為了使自己上聯(lián)的所有設(shè)備都得到自己的請求信息。每發(fā)送一次尋根請求報文就進行發(fā)送次數(shù)累計,下一次尋根請求發(fā)送就將這個累計的發(fā)送次數(shù)填入GTDP報文的“發(fā)送尋根次數(shù)”字段;發(fā)送完N次后,將自身的狀態(tài)位——“尋根請求完成狀態(tài)”置位,表示自己已經(jīng)發(fā)送完成N次尋根請求信息。
(2)尋根應(yīng)答對來自下聯(lián)設(shè)備的尋根請求發(fā)送尋根應(yīng)答當網(wǎng)絡(luò)設(shè)備只有收到來自其下聯(lián)設(shè)備的尋根廣播后,才對請求設(shè)備發(fā)送點對點的應(yīng)答信息,目的是將自己的信息以及自己收集的所有上聯(lián)設(shè)備信息應(yīng)答給發(fā)送請求的這個下聯(lián)設(shè)備;而設(shè)備在對下聯(lián)設(shè)備進行尋根應(yīng)答的同時,也會收到來自上聯(lián)設(shè)備對自己尋根請求的應(yīng)答,從而,使得其下聯(lián)設(shè)備可以得到自己所有上聯(lián)設(shè)備的信息。
(a)、尋根應(yīng)答的接收下聯(lián)設(shè)備接收其上聯(lián)設(shè)備發(fā)送的尋根應(yīng)答,并進行解析,在設(shè)備內(nèi)生成自己的“上聯(lián)設(shè)備信息表”。
每臺設(shè)備有一個“上聯(lián)設(shè)備信息表”,設(shè)備每收到一個上聯(lián)設(shè)備對自己的尋根應(yīng)答報文,就進行逐層的報文解析,將GTDP報文“數(shù)據(jù)區(qū)”中記錄的這個上聯(lián)設(shè)備、這個上聯(lián)設(shè)備的屬性特征和這個上聯(lián)設(shè)備的各個上聯(lián)設(shè)備都記錄下來,做為一條表項。
(b)、尋根應(yīng)答的發(fā)送當上聯(lián)設(shè)備收到其下聯(lián)設(shè)備發(fā)送的尋根請求后,根據(jù)其自己的“上聯(lián)設(shè)備信息表”發(fā)送尋根應(yīng)答。
各個設(shè)備在接收的同時也會對來自下聯(lián)的請求進行尋根應(yīng)答。應(yīng)答信息就是根據(jù)“上聯(lián)設(shè)備信息表”中的信息記錄來填充。
應(yīng)答具體操作如下每臺設(shè)備都會收到來自上聯(lián)和下聯(lián)的尋根請求廣播,但尋根請求的目的是對上聯(lián)設(shè)備的發(fā)現(xiàn),因此設(shè)備只需對從下聯(lián)口處接收到的尋根請求進行應(yīng)答。
設(shè)備每收到一個來自下聯(lián)的尋根請求,便對發(fā)送尋根請求的設(shè)備回應(yīng)一個尋根應(yīng)答報文;在應(yīng)答報文的GTDP數(shù)據(jù)信息中,依次填入如下信息a.GTDP報文首部中“源設(shè)備狀態(tài)”字段,如果自己是“代理設(shè)備”,此位置1;否則置0;b.本設(shè)備的標識信息;c.本設(shè)備的屬性特征(即是否為“代理設(shè)備”);d.本設(shè)備“上聯(lián)設(shè)備信息表”記錄的各個應(yīng)答上聯(lián)設(shè)備標識,即將自己此時收集到的各個應(yīng)答上聯(lián)設(shè)備信息連同自身信息一起應(yīng)答給了下聯(lián)的請求設(shè)備.
各個設(shè)備通過對應(yīng)答信息的接收和解析,它們的“上聯(lián)設(shè)備信息表”中就可以完備的記錄下自己所在鏈路中的每臺上聯(lián)設(shè)備和這個上聯(lián)設(shè)備的所有上聯(lián)設(shè)備。
(3)在設(shè)備收到來自上聯(lián)設(shè)備的尋根應(yīng)答后,即發(fā)送尋根應(yīng)答確認。
在設(shè)備收到來自上聯(lián)的尋根應(yīng)答后,即回應(yīng)此信息,目的是通知上聯(lián)設(shè)備尋根應(yīng)答信息已被收到。
在信息交互環(huán)節(jié)中,通過設(shè)備間“請求”→“應(yīng)答”→“確認應(yīng)答”幾次信息的交互,每臺設(shè)備的“上聯(lián)設(shè)備信息表”就記錄完備了計算鏈路所需的上行鏈路所有信息。
第四步各個設(shè)備根據(jù)自己的“上聯(lián)設(shè)備信息表”進行鏈路計算,比較計算得出自己的父設(shè)備和代理設(shè)備,并將計算結(jié)果發(fā)送給“代理設(shè)備”。
第五步由“代理設(shè)備”對這些計算結(jié)果進行接收記錄,然后將收集到的信息進行整合,生成整個“管理域”內(nèi)設(shè)備的拓撲結(jié)構(gòu)。
第六步重復(fù)執(zhí)行第三步~第五步,定期進行拓撲的維護及故障處理。
綜上所述可知,本發(fā)明在網(wǎng)絡(luò)拓撲結(jié)構(gòu)生成過程中,“管理域”中的每臺設(shè)備都主動發(fā)現(xiàn)、計算其父設(shè)備和代理設(shè)備,并將信息報告給“管理域”中的“代理設(shè)備”,由“代理設(shè)備”生成該“管理域”的拓撲結(jié)構(gòu)?!胺谴碓O(shè)備”只進行信息的收集和計算,而“代理設(shè)備”才進行信息的收集、整理和拓撲結(jié)構(gòu)的生成,平均了各個設(shè)備的負荷,使得拓撲生成過程中,設(shè)備間握手次數(shù)和報文傳遞大大的減少,提高了拓撲結(jié)構(gòu)生成的效率,減輕了網(wǎng)絡(luò)負荷,所以,本發(fā)明提供的拓撲結(jié)構(gòu)生成方法快速、及時、有效。
本發(fā)明在完成首次拓撲結(jié)構(gòu)發(fā)現(xiàn)后,即轉(zhuǎn)入拓撲的維護和故障處理過程,對首次發(fā)現(xiàn)中的錯誤進行糾正,并且動態(tài)地對拓撲變化進行更新,動態(tài)的維護一個穩(wěn)定的拓撲結(jié)構(gòu),使生成的拓撲結(jié)構(gòu)更準確。從而,解決了在大規(guī)模網(wǎng)絡(luò)設(shè)備管理中,對設(shè)備拓撲結(jié)構(gòu)進行發(fā)現(xiàn)并及時維護的問題。
另外,本發(fā)明提供的拓撲結(jié)構(gòu)生成方法可以架構(gòu)于任何標準OSI模型的數(shù)據(jù)鏈路層之上進行數(shù)據(jù)傳輸,由此可以不限定特定的數(shù)據(jù)鏈路層,即只要有數(shù)據(jù)鏈路支持,就可以進行網(wǎng)絡(luò)拓撲發(fā)現(xiàn)。這對于在網(wǎng)絡(luò)通信設(shè)備組成的網(wǎng)絡(luò)中有較大的優(yōu)勢,由于不依賴網(wǎng)絡(luò)層的支持,即可以在網(wǎng)絡(luò)通信設(shè)備沒有配置有效IP的情況下進行拓撲發(fā)現(xiàn),這樣對于IP資源匱乏的運營商來說可以節(jié)省大量的有效IP地址。
權(quán)利要求
1.一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,該方法包括以下步驟第一步將所要管理的網(wǎng)絡(luò)設(shè)備連接成樹狀網(wǎng)絡(luò)結(jié)構(gòu),并將其認為是一個“管理域”,作為拓撲結(jié)構(gòu)生成對象;第二步在這個“管理域”中,將處于這個樹狀網(wǎng)絡(luò)最上層的一臺設(shè)備指定為“代理設(shè)備”;第三步使“管理域”內(nèi)的各個設(shè)備之間進行信息交互,收集自己上層鏈路設(shè)備的信息,從而,使每臺設(shè)備建立完成自己的“上聯(lián)設(shè)備信息表”;第四步各個設(shè)備根據(jù)自己的“上聯(lián)設(shè)備信息表”進行鏈路計算,比較計算得出自己的父設(shè)備和代理設(shè)備,并將計算結(jié)果發(fā)送給“代理設(shè)備”;第五步由“代理設(shè)備”對域內(nèi)各設(shè)備計算結(jié)果進行記錄,然后將收集到的信息進行整合,生成整個“管理域”內(nèi)設(shè)備的拓撲結(jié)構(gòu);第六步重復(fù)執(zhí)行第三步~第五步,定期進行拓撲結(jié)構(gòu)的維護及故障處理。
2.根據(jù)權(quán)利要求1所述的一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,其特征在于所述第三步“管理域”內(nèi)的各個設(shè)備之間進行信息交互,收集自己上層鏈路設(shè)備的信息,每臺設(shè)備建立完成自己的“上聯(lián)設(shè)備信息表”又由以下步驟完成(1)管理域中的每臺設(shè)備每隔一定間隔發(fā)送一次尋根請求(2)管理域內(nèi)的設(shè)備對其下聯(lián)設(shè)備的尋根請求發(fā)送尋根應(yīng)答(a)、尋根應(yīng)答的接收下聯(lián)設(shè)備接收其上聯(lián)設(shè)備發(fā)送的尋根應(yīng)答,并進行解析,在設(shè)備內(nèi)生成自己的“上聯(lián)設(shè)備信息表”。該表中包括
(b)、尋根應(yīng)答的發(fā)送當上聯(lián)設(shè)備收到其下聯(lián)設(shè)備發(fā)送的尋根請求后,根據(jù)其自己的“上聯(lián)設(shè)備信息表”發(fā)送尋根應(yīng)答(3)在設(shè)備收到來自上聯(lián)設(shè)備的尋根應(yīng)答后,即發(fā)送尋根應(yīng)答確認。
3.根據(jù)權(quán)利要求2所述的一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,其特征在于所述尋根應(yīng)答信息中,包括以下信息a.本設(shè)備的標識信息;b.本設(shè)備的屬性特征(即是否為“代理設(shè)備”);c.本設(shè)備“上聯(lián)設(shè)備信息表”記錄的各個應(yīng)答上聯(lián)設(shè)備標識,即本設(shè)備此時收集到的各個應(yīng)答上聯(lián)設(shè)備信息。
4.根據(jù)權(quán)利要求3所述的一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,其特征在于所述第四步中的鏈路計算方法是將“上聯(lián)設(shè)備信息表”中的各條記錄進行比較,選擇各記錄中“上聯(lián)設(shè)備的上聯(lián)設(shè)備個數(shù)”最多的一條記錄;因為如果此記錄中“上聯(lián)設(shè)備的上聯(lián)設(shè)備個數(shù)”個數(shù)最多,說明記錄中的這個上聯(lián)設(shè)備到頂級“代理設(shè)備”的路徑最長,也就說明這個上聯(lián)設(shè)備是在本鏈路中離自己最“近”的一個上聯(lián),則這個上聯(lián)設(shè)備即為自身的父設(shè)備。
5.根據(jù)權(quán)利要求4所述的一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,其特征在于所述第五步中由“代理設(shè)備”對這些計算結(jié)果進行接收記錄,然后將收集到的信息進行整合,生成整個“管理域”內(nèi)設(shè)備的拓撲結(jié)構(gòu)由以下步驟完成(1)、由“代理設(shè)備”收集其下的所有設(shè)備發(fā)送的父子信息,生成“父子關(guān)系表”該“父子關(guān)系表”包括
(2)“代理設(shè)備”根據(jù)網(wǎng)絡(luò)管理員的指令,依據(jù)其“父子關(guān)系表”生成該“管理域”的拓撲結(jié)構(gòu)(a)、查找“代理設(shè)備”的所有一級子設(shè)備(b)、查找“代理設(shè)備”的各個一級子設(shè)備的子設(shè)備(c)、逐級類推,最終查找出“代理設(shè)備”各級子設(shè)備的子設(shè)備,生成此“代理設(shè)備”下的網(wǎng)絡(luò)設(shè)備的樹狀拓撲結(jié)構(gòu)。
6.根據(jù)權(quán)利要求1或2或3所述的一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,其特征在于所述“管理域”內(nèi)各個設(shè)備之間所交互的信息,即“管理域”內(nèi)每臺設(shè)備所發(fā)送、接收的信息如發(fā)送尋根請求、進行尋根請求應(yīng)答、發(fā)送尋根請求應(yīng)答確認和進行父子關(guān)系信息報告都是先按照GNMP協(xié)議格式、GNAP協(xié)議格式和GTDP協(xié)議格式進行填充的完整GNMP報文;然后,將其構(gòu)架于數(shù)據(jù)鏈路層之上進行數(shù)據(jù)通信;同時,每臺設(shè)備對其接收到的報文也按照GNMP協(xié)議格式、GNAP協(xié)議格式和GTDP協(xié)議格式進行解析,完成設(shè)備間的信息交互。
7.根據(jù)權(quán)利要求6所述的一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,其特征在于所述GNMP協(xié)議是一組自定義的網(wǎng)絡(luò)管理協(xié)議族,此協(xié)議為一個三層協(xié)議系統(tǒng),是一組分布在網(wǎng)絡(luò)層、傳輸層和應(yīng)用層的多個協(xié)議的組合;它直接架構(gòu)在OSI模型中的數(shù)據(jù)鏈路層之上或架構(gòu)在其它協(xié)議層之上;GNAP協(xié)議是GNMP協(xié)議的一個簡單應(yīng)用協(xié)議,為傳輸層協(xié)議;GTDP協(xié)議是基于GNAP協(xié)議的設(shè)備拓撲自動發(fā)現(xiàn)協(xié)議,為應(yīng)用層協(xié)議;所述GNMP協(xié)議報文格式為
其中版本4bit,協(xié)議版本,定義不同的報文格式,長度12bit,整個報文長度;保留8bit,保留;保留8bit,保留;狀態(tài)8bit,標識設(shè)備狀態(tài);保留8bit,保留;保留8bit,保留;類型8bit,協(xié)議報文類型,定義了0x07為GTDP報文保留8bit,保留;目的ID24bit,目的設(shè)備標識;源ID24bit,源設(shè)備標識;保留8bit,保留;數(shù)據(jù)208~11840bit,填充GNAP首部及其數(shù)據(jù)區(qū)部分;填充碼16bit,填充碼,必須是0x00;校驗計數(shù)16bit,整個報文數(shù)據(jù)的16位累加和。所述GNAP協(xié)議報文格式
其中目的操作碼16bit,目標操作碼;源操作碼16bit,源操作碼;狀態(tài)16bit,狀態(tài);保留16bit,保留;目標系列號16bit,目標系列號;源系列號SN16bit,源系列號;數(shù)據(jù)數(shù)據(jù),長度可變,填充GTDP協(xié)議不同報文的首部和數(shù)據(jù)區(qū)。GTDP協(xié)議是基于GNAP協(xié)議的設(shè)備拓撲自動發(fā)現(xiàn)協(xié)議,為應(yīng)用層協(xié)議,GNAP協(xié)議的目的操作碼用于標識區(qū)分GTDP協(xié)議中不同的操作報文類型,GTDP中不同的操作報文標識如下
所述GTDP報文格式
其中保留8bit,保留;源設(shè)備狀態(tài)8bit,源設(shè)備的狀態(tài),“1”表示是代理;源ID24bit,源設(shè)備的標識;源Mac首字段32bit,源設(shè)備Mac地址的前4個Byte;源Mac尾字段16bit,源設(shè)備Mac地址的后2個Byte;源IP32bit,源設(shè)備的IP地址;源S/N152bit,源設(shè)備S/N;發(fā)送尋根次數(shù)8bit,發(fā)送尋根的次數(shù);連接端口8bit,在發(fā)送尋根應(yīng)答報文時有效,表示所在上連設(shè)備的端口號;代理設(shè)備ID24bit,代理設(shè)備的標識;代理設(shè)備狀態(tài)8bit,所屬域代理設(shè)備的狀態(tài);代理Mac首字段32bit,根設(shè)備Mac地址的前4個Byte;代理Mac尾字段16bit,根設(shè)備Mac地址的后2個Byte;代理IP32bit,根設(shè)備的IP地址;第一數(shù)據(jù)區(qū)長度8bit,第一塊數(shù)據(jù)區(qū)的長度,長度以字節(jié)數(shù)記;第二數(shù)據(jù)區(qū)長度8bit,保留;本身的層次8bit,保留;本拓撲最大層數(shù)8bit,保留;第一個ID24bit,保留;數(shù)值8bit,保留;設(shè)備ID24bit,保留;數(shù)據(jù)填充數(shù)據(jù),長度可變,根據(jù)GTDP不同的報文包含不同長度的數(shù)據(jù);不同報文所對應(yīng)的數(shù)據(jù)區(qū)內(nèi)容為
所述GNAP協(xié)議和GTDP協(xié)議數(shù)據(jù)均以GNMP數(shù)據(jù)包格式進行傳輸。
8.根據(jù)權(quán)利要求7所述的一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,其特征在于所述“管理域”內(nèi)的每臺設(shè)備所發(fā)送、接收的信息都是按照GTDP協(xié)議報文、GNAP報文和GNMP報文的順序進行填充,具體步驟如下(1)填充GTDP報文根據(jù)發(fā)送報文的類型將需要發(fā)送的數(shù)據(jù)信息填入所述GTDP協(xié)議報文的“數(shù)據(jù)區(qū)”,然后,封裝GTDP協(xié)議報文的首部信息,組成符合GTDP協(xié)議的應(yīng)用數(shù)據(jù);(2)填充GNAP報文首部將填寫好的應(yīng)用數(shù)據(jù)填寫到GNAP協(xié)議報文的“數(shù)據(jù)區(qū)”中,然后根據(jù)發(fā)送報文的類型,填充GNAP報文首部,組成符合GNAP協(xié)議的傳輸數(shù)據(jù);(3)填充GNMP報文首部將填充好GNAP報文首部信息的報文嵌入到GNMP協(xié)議報文的“數(shù)據(jù)區(qū)”中,然后根據(jù)GNMP協(xié)議中的定義填寫GNMP報文的其它數(shù)據(jù)信息。
全文摘要
本發(fā)明公開了一種快速生成網(wǎng)絡(luò)設(shè)備樹狀拓撲結(jié)構(gòu)的方法,該方法包括以下步驟1.將所要管理的網(wǎng)絡(luò)設(shè)備連接成樹狀網(wǎng)絡(luò)結(jié)構(gòu),并將其認為是一個“管理域”;2.將“管理域”內(nèi)最上層的一臺設(shè)備指定為“代理設(shè)備”;3.“管理域”內(nèi)的各設(shè)備之間進行信息交互,收集自己上層鏈路設(shè)備的信息,使每臺設(shè)備建立完成自己的“上聯(lián)設(shè)備信息表”;4.各個設(shè)備根據(jù)自己的“上聯(lián)設(shè)備信息表”進行鏈路計算,得出自己的父設(shè)備和代理設(shè)備,并將計算結(jié)果發(fā)送給“代理設(shè)備”;5.由“代理設(shè)備”對域內(nèi)各設(shè)備的計算結(jié)果進行記錄和信息整合,生成整個“管理域”內(nèi)設(shè)備的拓撲結(jié)構(gòu);6.重復(fù)執(zhí)行第3~第5步,定期進行拓撲結(jié)構(gòu)的維護及故障處理。
文檔編號H04L12/44GK1885811SQ20051007735
公開日2006年12月27日 申請日期2005年6月22日 優(yōu)先權(quán)日2005年6月22日
發(fā)明者王曉朋, 陶英, 陳大鵬, 邵君, 曾劼 申請人:中國長城計算機深圳股份有限公司