本發(fā)明涉及無線通信技術(shù)領(lǐng)域,尤其涉及一種路由管理方法及裝置。
背景技術(shù):
大規(guī)模分布式的交換網(wǎng)絡(luò)是目前大容量高端路由器的核心技術(shù)之一,隨著網(wǎng)絡(luò)交換容量需求的增大,產(chǎn)生了多級(jí)互聯(lián)的交換網(wǎng)絡(luò),以實(shí)現(xiàn)太比特以上容量的網(wǎng)絡(luò)交換;多級(jí)互聯(lián)的交換網(wǎng)絡(luò)主要由交換接入(Swich Access,SA)芯片和交換芯片(Swich Fabric,SF)組成。
現(xiàn)有技術(shù)中交換網(wǎng)絡(luò)的組成結(jié)構(gòu)示意圖,如圖1所示,SA芯片與SF芯片通過多條高速串行總線連接形成鏈路,所述串行總線可以為SerDes;當(dāng)數(shù)據(jù)包從一個(gè)源SA經(jīng)由SF轉(zhuǎn)發(fā)至一個(gè)目的SA時(shí),通過多條物理連接的鏈路進(jìn)行傳送;源SA在發(fā)送之前數(shù)據(jù)包需要查詢路由表,根據(jù)查詢的有效鏈路將數(shù)據(jù)包發(fā)送至SF;同時(shí),SF通過查詢數(shù)據(jù)表再將數(shù)據(jù)包轉(zhuǎn)發(fā)至目的SA;因此,根據(jù)鏈路的變化及時(shí)更新路由表成為提高數(shù)據(jù)包交換效率的一個(gè)重要因素。
由于交換網(wǎng)絡(luò)的鏈路連接關(guān)系可能發(fā)生變化,因此,需要采用動(dòng)態(tài)路由的方式管理交換網(wǎng)絡(luò);動(dòng)態(tài)路由是指路由器自動(dòng)地建立路由表,即自路由表,并且能夠根據(jù)實(shí)際情況的變化適時(shí)地調(diào)整路由表。為了保證信元能夠在交換網(wǎng)的輸入端口和輸出端口之間正確轉(zhuǎn)發(fā),需要構(gòu)建交換網(wǎng)內(nèi)部的單播路由表和全目的可達(dá)鏈路;其中,單播路由表用于供單播信元進(jìn)行路由查找使用,全目的可達(dá)鏈路是將全部自路由表用于多播信元的轉(zhuǎn)發(fā)。
現(xiàn)有技術(shù)中,路由管理的處理流程,如圖2所示,包括:路由器根據(jù)鏈路的拓?fù)潢P(guān)系變化實(shí)時(shí)更新自路由表,將自路由表表項(xiàng)復(fù)制到單播路由表,并提取全目的可達(dá)鏈路;因此,在交換網(wǎng)絡(luò)的組網(wǎng)環(huán)境發(fā)生變化時(shí),相應(yīng)的自路由 表表項(xiàng)也會(huì)發(fā)生變化。
當(dāng)某個(gè)SA被插拔后,可用鏈路數(shù)會(huì)逐漸增加或減少,其它SA檢測(cè)到拓?fù)潢P(guān)系的變化也需要一定的時(shí)間;在更新自路由表后,交換網(wǎng)絡(luò)的組網(wǎng)環(huán)境又發(fā)生變化時(shí),單播路由表和全目的可達(dá)鏈路并未發(fā)生變化,當(dāng)任意一個(gè)SA向被拔掉的SA發(fā)送數(shù)據(jù)包時(shí),由于可用鏈路的減少,數(shù)據(jù)包會(huì)在SA交接的接口堆積或丟失,從而給前級(jí)SA反壓,引起發(fā)送至其它SA的數(shù)據(jù)包被堵塞。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例期望提供一種路由管理方法及裝置,能夠降低交換網(wǎng)絡(luò)中數(shù)據(jù)包轉(zhuǎn)發(fā)的丟包率,提高數(shù)據(jù)包的發(fā)送效率。
本發(fā)明實(shí)施例的技術(shù)方案是這樣實(shí)現(xiàn)的:
本發(fā)明實(shí)施例提供一種路由管理方法,包括:確認(rèn)自路由表停止變化時(shí),將變化后的自路由表復(fù)制到單播路由表。
上述方案中,所述確認(rèn)自路由表停止變化之前,所述方法還包括:更新自路由表,檢測(cè)到更新前后的自路由表發(fā)生變化時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效。
上述方案中,所述確認(rèn)自路由表停止變化,包括:所述自路由表在預(yù)設(shè)的時(shí)間內(nèi)不再變化時(shí),確認(rèn)所述自路由表停止變化,并標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效。
上述方案中,所述獲取全目的可達(dá)鏈路,包括:更新自路由表,在預(yù)設(shè)的時(shí)間間隔遍歷更新的自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路。
本發(fā)明實(shí)施例還提供一種路由管理裝置,所述裝置包括:確認(rèn)模塊、和復(fù)制模塊;其中,
所述確認(rèn)模塊,用于確認(rèn)自路由表是否停止變化;
所述復(fù)制模塊,用于在所述確認(rèn)模塊確認(rèn)所述自路由表停止變化時(shí),將變化后的自路由表復(fù)制到單播路由表。
上述方案中,所述裝置還包括:第一更新模塊、檢測(cè)模塊、和第一標(biāo)記模塊;其中,
所述第一更新模塊,用于更新自路由表;
所述檢測(cè)模塊,用于檢測(cè)更新前后的自路由表是否發(fā)生變化;
所述第一標(biāo)記模塊,用于在檢測(cè)模塊檢測(cè)到自路由表發(fā)生變化時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效。
上述方案中,所述確認(rèn)模塊,具體用于所述自路由表在預(yù)設(shè)的時(shí)間內(nèi)不再變化時(shí),確認(rèn)所述自路由表停止變化;
相應(yīng)的,所述裝置還包括:第二標(biāo)記模塊,用于在所述確認(rèn)模塊確認(rèn)所述自路由表停止變化時(shí),標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效。
上述方案中,所述裝置還包括:第一更新模塊和獲取模塊;其中,
所述第一更新模塊,用于更新自路由表;
所述獲取模塊,用于在預(yù)設(shè)的時(shí)間間隔遍歷更新的自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將當(dāng)前的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路。
本發(fā)明實(shí)施例還提供另一種路由管理方法,包括:在預(yù)設(shè)的時(shí)間間隔遍歷自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;
確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路。
本發(fā)明實(shí)施例還提供另一種路由管理裝置,所述裝置包括:遍歷模塊、比較模塊、和第二更新模塊;其中,
所述遍歷模塊,用于在預(yù)設(shè)的時(shí)間間隔遍歷自路由表,將遍歷得到的自路 由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;
所述比較模塊,用于比較所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路是否相同;
所述第二更新模塊,用于在所述比較模塊比較得到所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路。
本發(fā)明實(shí)施例所提供的路由管理方法及裝置,確認(rèn)自路由表在預(yù)設(shè)的時(shí)間內(nèi)停止變化時(shí),將變化后的自路由表復(fù)制到單播路由表;如此,能在交換網(wǎng)絡(luò)穩(wěn)定后,將穩(wěn)定的交換網(wǎng)絡(luò)對(duì)應(yīng)的自路由表復(fù)制到單播路由表,在單播信元轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí),降低交換網(wǎng)絡(luò)中數(shù)據(jù)包轉(zhuǎn)發(fā)的丟包率,提高數(shù)據(jù)包的發(fā)送效率。通過在預(yù)設(shè)的時(shí)間間隔遍歷自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路;如此,可在預(yù)設(shè)的時(shí)間間隔及時(shí)更新全目的可達(dá)鏈路,在多播信元轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí),降低交換網(wǎng)絡(luò)中數(shù)據(jù)包轉(zhuǎn)發(fā)的丟包率,提高數(shù)據(jù)包的發(fā)送效率。
附圖說明
圖1為現(xiàn)有技術(shù)中交換網(wǎng)絡(luò)的組成結(jié)構(gòu)示意圖;
圖2為現(xiàn)有技術(shù)中路由管理的處理流程示意圖;
圖3為本發(fā)明實(shí)施例一種路由管理方法的基本處理流程示意圖;
圖4為本發(fā)明實(shí)施例一路由管理方法的詳細(xì)處理流程示意圖;
圖5為本發(fā)明實(shí)施例二路由管理方法的詳細(xì)處理流程示意圖;
圖6為本發(fā)明另一種路由管理方法的基本處理流程示意圖;
圖7為本發(fā)明實(shí)施例三路由管理方法的詳細(xì)處理流程示意圖;
圖8為本發(fā)明實(shí)施例一種路由管理裝置的組成結(jié)構(gòu)示意圖;
圖9為本發(fā)明實(shí)施例另一種路由管理裝置的組成結(jié)構(gòu)示意圖。
具體實(shí)施方式
本發(fā)明實(shí)施例一種路由管理方法的基本處理流程,如圖3所示,包括以下步驟:
步驟101,確認(rèn)自路由表停止變化;
具體地,設(shè)置中間態(tài)指示信號(hào),所述中間態(tài)指示信號(hào)存儲(chǔ)于路由器內(nèi)的中間態(tài)指示寄存器內(nèi),所述中間態(tài)指示寄存器的位寬等于交換網(wǎng)絡(luò)內(nèi)的SA之和,所述中間態(tài)指示信號(hào)的每個(gè)比特位與所述自路由表的一個(gè)表項(xiàng)對(duì)應(yīng);在所述自路由表的表項(xiàng)內(nèi)容發(fā)生變化時(shí),變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)也發(fā)生變化;
設(shè)置多個(gè)中間態(tài)計(jì)數(shù)器,分別于交換網(wǎng)絡(luò)中的SA一一對(duì)應(yīng),在交換網(wǎng)絡(luò)中的任意一個(gè)SA或SF發(fā)生變化時(shí),將發(fā)生變化的SA或SF對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器清零,并且在每個(gè)時(shí)鐘周期內(nèi),該中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值加1,在所述計(jì)數(shù)器值達(dá)到預(yù)設(shè)的閾值,即達(dá)到預(yù)設(shè)的時(shí)間,自路由表的表項(xiàng)內(nèi)容不再發(fā)生變化,確認(rèn)所述自路由表停止變化,并標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效;
其中,標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效可以指,標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“0”,即將所述自路由表的全部表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉低;所述預(yù)設(shè)的時(shí)間可根據(jù)交互網(wǎng)絡(luò)的路由建立時(shí)間靈活設(shè)定;
這里,也可以根據(jù)實(shí)際的交換網(wǎng)絡(luò)需求,減少中間態(tài)指示信號(hào)的位寬及中間態(tài)計(jì)數(shù)器的數(shù)量;如每次都是在一個(gè)SA或SF的拓?fù)潢P(guān)系變更結(jié)束后,才會(huì)更改下一個(gè)SA或SF的拓?fù)潢P(guān)系,則可以只設(shè)置位寬為1比特的中間態(tài)指示信號(hào)及一個(gè)中間態(tài)計(jì)數(shù)器。
步驟102,將變化后的自路由表復(fù)制到單播路由表;
具體地,可以只將變化的自路由表對(duì)應(yīng)的表項(xiàng)復(fù)制到單播路由表,單播路由表中未發(fā)生變化的自路由表對(duì)應(yīng)的表項(xiàng)不做復(fù)制。
在執(zhí)行步驟101之前,所述方法還包括:
步驟100,更新自路由表,檢測(cè)到更新前后的自路由表發(fā)生變化時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效;
具體地,更新自路由表時(shí),讀取自路由表的表項(xiàng),將每個(gè)表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的表項(xiàng)重新寫入自路由表中;對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,若表項(xiàng)內(nèi)容不同,說明當(dāng)前的交換網(wǎng)絡(luò)發(fā)生變化,即當(dāng)前的鏈路拓?fù)浣Y(jié)構(gòu)發(fā)生變化;此時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效可以指,標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“1”,即將所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高,并將變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值清零,計(jì)數(shù)器重新開始計(jì)數(shù);在所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高時(shí),不能將自路由表的表項(xiàng)復(fù)制為單播路由表;
這里,在只設(shè)置位寬為1比特的中間態(tài)指示信號(hào)及一個(gè)中間態(tài)計(jì)數(shù)器的情況下,更新自路由表時(shí),讀取自路由表的表項(xiàng),將每個(gè)表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的表項(xiàng)重新寫入自路由表中;對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,若表項(xiàng)內(nèi)容有變化,說明當(dāng)前的交換網(wǎng)絡(luò)發(fā)生變化,即當(dāng)前的鏈路拓?fù)浣Y(jié)構(gòu)發(fā)生變化;此時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效可以指,標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“1”,即將所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高,并將變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值清零,記錄中間態(tài)指示信號(hào)對(duì)應(yīng)的自路由表的表項(xiàng)的地址;在中間態(tài)指示信號(hào)拉高時(shí),其他地址的自路由表的表項(xiàng)需要更新時(shí),可根據(jù)預(yù)先的設(shè)置更新其他地址的自路由表的表項(xiàng)或不更新其他地址的自路由表的表項(xiàng);如果記錄中間態(tài)指示信號(hào)對(duì)應(yīng)的地址表項(xiàng)需要更新,則更新自路由表,在中間愛你太指示信號(hào)為有效時(shí),對(duì)應(yīng)的地址表項(xiàng)不需要更新。
同時(shí),在只設(shè)置位寬為1比特的中間態(tài)指示信號(hào)及一個(gè)中間態(tài)計(jì)數(shù)器的情況下,單播路由表與自路由表可以共用一張表,在更新路由表時(shí),讀取路由表 的表項(xiàng),將路由表的表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的自路由表的表項(xiàng)寫入自路由表;對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,不相同時(shí),可以將更新前的自路由表的表項(xiàng)存儲(chǔ)至中間態(tài)寄存器,將中間態(tài)指示信號(hào)拉高,記錄變更的自路由表的表項(xiàng)的地址;轉(zhuǎn)發(fā)數(shù)據(jù)包需要查詢自路由表時(shí),先判斷查詢的表項(xiàng)地址與變更的表項(xiàng)地址是否相同,若相同,則將中間態(tài)寄存器存儲(chǔ)的表項(xiàng)作為查詢結(jié)果輸出;若不同,則查詢更新后的自路由表,將查詢結(jié)果輸出。
方法實(shí)施例一
本發(fā)明實(shí)施例一路由管理方法的詳細(xì)處理流程,如圖4所示,包括以下步驟:
步驟201,更新自路由表;
具體地,更新自路由表時(shí),讀取自路由表的表項(xiàng),將每個(gè)表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的表項(xiàng)重新寫入自路由表中。
步驟202,檢測(cè)到更新前后的自路由表發(fā)生變化時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效;
具體地,對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,若表項(xiàng)內(nèi)容不同,說明當(dāng)前的交換網(wǎng)絡(luò)發(fā)生變化,即當(dāng)前的鏈路拓?fù)浣Y(jié)構(gòu)發(fā)生變化;此時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效可以指,標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“1”,即將所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高,并將變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值清零,計(jì)數(shù)器重新開始計(jì)數(shù);在所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高時(shí),不能將自路由表的表項(xiàng)復(fù)制為單播路由表;
這里,在只設(shè)置位寬為1比特的中間態(tài)指示信號(hào)及一個(gè)中間態(tài)計(jì)數(shù)器的情況下,更新自路由表時(shí),讀取自路由表的表項(xiàng),將每個(gè)表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的表項(xiàng)重新寫入自路由表中;對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,若表項(xiàng)內(nèi)容有變化,說明當(dāng)前的交換網(wǎng)絡(luò)發(fā)生變化,即當(dāng)前的鏈路拓?fù)浣Y(jié)構(gòu)發(fā)生變化;此時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指 示信號(hào)為有效可以指,標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“1”,即將所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高,并將變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值清零,記錄中間態(tài)指示信號(hào)對(duì)應(yīng)的自路由表的表項(xiàng)的地址;在中間態(tài)指示信號(hào)拉高時(shí),其他地址的自路由表的表項(xiàng)需要更新時(shí),可根據(jù)預(yù)先的設(shè)置更新其他地址的自路由表的表項(xiàng)或不更新其他地址的自路由表的表項(xiàng);如果記錄中間態(tài)指示信號(hào)對(duì)應(yīng)的地址表項(xiàng)需要更新,則更新自路由表;
同時(shí),在只設(shè)置位寬為1比特的中間態(tài)指示信號(hào)及一個(gè)中間態(tài)計(jì)數(shù)器的情況下,單播路由表與自路由表可以共用一張表,在更新路由表時(shí),讀取路由表的表項(xiàng),將路由表的表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的自路由表的表項(xiàng)寫入自路由表;對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,不相同時(shí),可以將更新前的自路由表的表項(xiàng)存儲(chǔ)至中間態(tài)寄存器,將中間態(tài)指示信號(hào)拉高,記錄變更的自路由表的表項(xiàng)的地址;轉(zhuǎn)發(fā)數(shù)據(jù)包需要查詢自路由表時(shí),先判斷查詢的表項(xiàng)地址與變更的表項(xiàng)地址是否相同,若相同,則將中間態(tài)寄存器存儲(chǔ)的表項(xiàng)作為查詢結(jié)果輸出;若不同,則查詢更新后的自路由表,將查詢結(jié)果輸出。
步驟203,確認(rèn)自路由表停止變化;
具體地,在交換網(wǎng)絡(luò)中的任意一個(gè)SA或SF發(fā)生變化時(shí),將發(fā)生變化的SA或SF對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器清零,并且在每個(gè)時(shí)鐘周期內(nèi),該中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值加1,在所述計(jì)數(shù)器值達(dá)到預(yù)設(shè)的閾值,即達(dá)到預(yù)設(shè)的時(shí)間,自路由表的表項(xiàng)內(nèi)容不再發(fā)生變化,確認(rèn)所述自路由表停止變化,并標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效;
其中,標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效可以指,標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“0”,即將所述自路由表的全部表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉低;所述預(yù)設(shè)的時(shí)間可根據(jù)交互網(wǎng)絡(luò)的路由建立時(shí)間靈活設(shè)定。
步驟204,將變化后的自路由表復(fù)制到單播路由表;
具體地,可以只將變化的自路由表對(duì)應(yīng)的表項(xiàng)復(fù)制到單播路由表,單播路由表中未發(fā)生變化的自路由表對(duì)應(yīng)的表項(xiàng)不做復(fù)制。
步驟205,遍歷三次自路由表,獲取全目的可達(dá)鏈路;
具體地,路由器在預(yù)設(shè)的時(shí)間間隔遍歷更新的自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路;
這里,設(shè)置遍歷間隔計(jì)數(shù)器,即在遍歷間隔計(jì)數(shù)器的值達(dá)到一定閾值時(shí),遍歷一次自路由表的表項(xiàng);所述閾值大于路由器完全建立自路由的時(shí)間;將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算是指將遍歷得到的自路由表的全部表項(xiàng)按位進(jìn)行與運(yùn)算,自路由表的表項(xiàng)全為零時(shí)不參與運(yùn)算。
設(shè)置三個(gè)遍歷寄存器,將當(dāng)前的全目的可達(dá)鏈路A存儲(chǔ)至第一遍歷寄存器,將第一次遍歷自路由表得到的第一全目的可達(dá)鏈路B存儲(chǔ)至第二遍歷寄存器,將第二次遍歷自路由表得到的第二全目的可達(dá)鏈路C存儲(chǔ)至第三遍歷寄存器;比較所述B與C是否相同,在比較結(jié)果為相同時(shí),說明自路由表更新完成或未開始更新,則設(shè)置B或C為當(dāng)前全目的可達(dá)鏈路,并存儲(chǔ)至第一遍歷寄存器;在比較結(jié)果為不同時(shí),A仍為當(dāng)前全目的可達(dá)鏈路;將C存儲(chǔ)至第二遍歷寄存器,并在第二遍歷寄存器中刪除B;在進(jìn)行第三次遍歷自路由表時(shí),將第三次遍歷得到的第三全目的可達(dá)鏈路D存儲(chǔ)至第二遍歷寄存器,并與C進(jìn)行比較,根據(jù)比較結(jié)果設(shè)置當(dāng)前的全目的可達(dá)鏈路;具體的,獲取全目的可達(dá)鏈路的偽代碼如下:
需要說明的是,本發(fā)明實(shí)施例中,步驟202至步驟204,與步驟205之間屬于并列關(guān)系,不存在必須執(zhí)行的先后順序,可以同時(shí)進(jìn)行,也可以先執(zhí)行步 驟202至步驟204,再執(zhí)行步驟205;或者先執(zhí)行步驟205,再執(zhí)行步驟202至步驟204。
方法實(shí)施例二
本發(fā)明實(shí)施例二路由管理方法的詳細(xì)處理流程,如圖5所示,包括以下步驟:
步驟301,更新自路由表;
具體地,更新自路由表時(shí),讀取自路由表的表項(xiàng),將每個(gè)表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的表項(xiàng)重新寫入自路由表中。
步驟302,檢測(cè)到更新前后的自路由表發(fā)生變化時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效;
具體地,對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,若表項(xiàng)內(nèi)容不同,說明當(dāng)前的交換網(wǎng)絡(luò)發(fā)生變化,即當(dāng)前的鏈路拓?fù)浣Y(jié)構(gòu)發(fā)生變化;此時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效可以指,標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“1”,即將所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高,并將變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值清零,計(jì)數(shù)器重新開始計(jì)數(shù);在所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高時(shí),不能將自路由表的表項(xiàng)復(fù)制為單播路由表;
這里,在只設(shè)置位寬為1比特的中間態(tài)指示信號(hào)及一個(gè)中間態(tài)計(jì)數(shù)器的情況下,更新自路由表時(shí),讀取自路由表的表項(xiàng),將每個(gè)表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的表項(xiàng)重新寫入自路由表中;對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,若表項(xiàng)內(nèi)容有變化,說明當(dāng)前的交換網(wǎng)絡(luò)發(fā)生變化,即當(dāng)前的鏈路拓?fù)浣Y(jié)構(gòu)發(fā)生變化;此時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效可以指,標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“1”,即將所述變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉高,并將變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值清零,記錄中間態(tài)指示信號(hào)對(duì)應(yīng)的自路由表的表項(xiàng)的地址;在中間態(tài)指示信號(hào)拉高時(shí),其他地址的自路由表的表項(xiàng)需要更新時(shí),可根據(jù)預(yù)先的設(shè)置更新其他地址的自路由表的表項(xiàng)或不更 新其他地址的自路由表的表項(xiàng);如果記錄中間態(tài)指示信號(hào)對(duì)應(yīng)的地址表項(xiàng)需要更新,則更新自路由表;
同時(shí),在只設(shè)置位寬為1比特的中間態(tài)指示信號(hào)及一個(gè)中間態(tài)計(jì)數(shù)器的情況下,單播路由表與自路由表可以共用一張表,在更新路由表時(shí),讀取路由表的表項(xiàng),將路由表的表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的自路由表的表項(xiàng)寫入自路由表;對(duì)比更新前后的自路由表的表項(xiàng)內(nèi)容是否相同,不相同時(shí),可以將更新前的自路由表的表項(xiàng)存儲(chǔ)至中間態(tài)寄存器,將中間態(tài)指示信號(hào)拉高,記錄變更的自路由表的表項(xiàng)的地址;轉(zhuǎn)發(fā)數(shù)據(jù)包需要查詢自路由表時(shí),先判斷查詢的表項(xiàng)地址與變更的表項(xiàng)地址是否相同,若相同,則將中間態(tài)寄存器存儲(chǔ)的表項(xiàng)作為查詢結(jié)果輸出;若不同,則查詢更新后的自路由表,將查詢結(jié)果輸出。
步驟303,確認(rèn)自路由表停止變化;
具體地,在交換網(wǎng)絡(luò)中的任意一個(gè)SA或SF發(fā)生變化時(shí),將發(fā)生變化的SA或SF對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器清零,并且在每個(gè)時(shí)鐘周期內(nèi),該中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值加1,在所述計(jì)數(shù)器值達(dá)到預(yù)設(shè)的閾值,即達(dá)到預(yù)設(shè)的時(shí)間,自路由表的表項(xiàng)內(nèi)容不再發(fā)生變化,確認(rèn)所述自路由表停止變化,并標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效;
其中,標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效可以指,標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“0”,即將所述自路由表的全部表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉低;所述預(yù)設(shè)的時(shí)間可根據(jù)交互網(wǎng)絡(luò)的路由建立時(shí)間靈活設(shè)定。
步驟304,將變化后的自路由表復(fù)制到單播路由表;
具體地,可以只將變化的自路由表對(duì)應(yīng)的表項(xiàng)復(fù)制到單播路由表,單播路由表中未發(fā)生變化的自路由表對(duì)應(yīng)的表項(xiàng)不做復(fù)制。
步驟305,遍歷一次自路由表,獲取全目的可達(dá)鏈路;
具體地,路由器遍歷一次更新后的自路由表,得到全目的可達(dá)鏈路。
本發(fā)明實(shí)施例另一種路由管理方法的基本處理流程,如圖6所示,包括以 下步驟:
步驟401,在預(yù)設(shè)的時(shí)間間隔遍歷自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;
具體地,路由器更新自路由表,在預(yù)設(shè)的時(shí)間間隔遍歷更新的自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;
這里,設(shè)置遍歷間隔計(jì)數(shù)器,即在遍歷間隔計(jì)數(shù)器的值達(dá)到一定閾值時(shí),遍歷一次自路由表的表項(xiàng);所述閾值大于路由器完全建立自路由的時(shí)間;將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算是指將遍歷得到的自路由表的全部表項(xiàng)按位進(jìn)行與運(yùn)算,自路由表的表項(xiàng)全為零時(shí)不參與運(yùn)算。
步驟402,確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路;
具體地,設(shè)置三個(gè)遍歷寄存器,將當(dāng)前的全目的可達(dá)鏈路A存儲(chǔ)至第一遍歷寄存器,將第一次遍歷自路由表得到的第一全目的可達(dá)鏈路B存儲(chǔ)至第二遍歷寄存器,將第二次遍歷自路由表得到的第二全目的可達(dá)鏈路C存儲(chǔ)至第三遍歷寄存器;比較所述B與C是否相同,在比較結(jié)果為相同時(shí),說明自路由表更新完成或未開始更新,則設(shè)置B或C為當(dāng)前全目的可達(dá)鏈路,并存儲(chǔ)至第一遍歷寄存器;在比較結(jié)果為不同時(shí),A仍為當(dāng)前全目的可達(dá)鏈路;完成一次上述判斷后,將C存儲(chǔ)至第二遍歷寄存器,并在第二遍歷寄存器中刪除B;在進(jìn)行第三次遍歷自路由表時(shí),將第三次遍歷得到的第三全目的可達(dá)鏈路D存儲(chǔ)至第二遍歷寄存器,并與C進(jìn)行比較,根據(jù)比較結(jié)果設(shè)置當(dāng)前的全目的可達(dá)鏈路;具體的,獲取全目的可達(dá)鏈路的偽代碼如下:
方法實(shí)施例三
本發(fā)明實(shí)施例三路由管理方法的詳細(xì)處理流程,如圖7所示,包括以下步驟:
步驟501,更新自路由表;
具體地,更新自路由表時(shí),讀取自路由表的表項(xiàng),將每個(gè)表項(xiàng)對(duì)應(yīng)的比特位進(jìn)行更新,并將更新后的表項(xiàng)重新寫入自路由表中。
步驟502,遍歷三次自路由表,獲取全目的可達(dá)鏈路;
具體地,路由器在預(yù)設(shè)的時(shí)間間隔遍歷更新的自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路;
這里,設(shè)置遍歷間隔計(jì)數(shù)器,即在遍歷間隔計(jì)數(shù)器的值達(dá)到一定閾值時(shí),遍歷一次自路由表的表項(xiàng);所述閾值大于路由器完全建立自路由的時(shí)間;將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算是指將遍歷得到的自路由表的全部表項(xiàng)按位進(jìn)行與運(yùn)算,自路由表的表項(xiàng)全為零時(shí)不參與運(yùn)算。
設(shè)置三個(gè)遍歷寄存器,將當(dāng)前的全目的可達(dá)鏈路A存儲(chǔ)至第一遍歷寄存器,將第一次遍歷自路由表得到的第一全目的可達(dá)鏈路B存儲(chǔ)至第二遍歷寄存器,將第二次遍歷自路由表得到的第二全目的可達(dá)鏈路C存儲(chǔ)至第三遍歷寄存器;比較所述B與C是否相同,在比較結(jié)果為相同時(shí),說明自路由表更新完成或未開始更新,則設(shè)置B或C為當(dāng)前全目的可達(dá)鏈路,并存儲(chǔ)至第一遍歷寄存器;在比較結(jié)果為不同時(shí),A仍為當(dāng)前全目的可達(dá)鏈路;完成一次上述判斷后,將C存儲(chǔ)至第二遍歷寄存器,并在第二遍歷寄存器中刪除B;在進(jìn)行第三次遍歷自路由表時(shí),將第三次遍歷得到的第三全目的可達(dá)鏈路D存儲(chǔ)至第二遍歷寄存器,并與C進(jìn)行比較,根據(jù)比較結(jié)果設(shè)置當(dāng)前的全目的可達(dá)鏈路。
步驟503,復(fù)制更新的自路由表的表項(xiàng)到單播路由表。
需要說明的是,本發(fā)明實(shí)施例中,步驟502與步驟503之間屬于并列關(guān)系,不存在必須執(zhí)行的先后順序,可以同時(shí)進(jìn)行,也可以先執(zhí)行步驟502,再執(zhí)行 步驟503;也可以先執(zhí)行步驟503,再執(zhí)行步驟502。
為實(shí)現(xiàn)上述路由管理方法,本發(fā)明實(shí)施例提供一種路由管理裝置,所述裝置的組成結(jié)構(gòu),如圖8所示,包括:確認(rèn)模塊10和復(fù)制模塊20;其中,
所述確認(rèn)模塊10,用于確認(rèn)自路由表是否停止變化;
所述復(fù)制模塊20,用于在所述確認(rèn)模塊確認(rèn)所述自路由表停止變化時(shí),將變化后的自路由表復(fù)制到單播路由表。
本發(fā)明實(shí)施例中,所述裝置還包括:第一更新模塊30、檢測(cè)模塊40、和第一標(biāo)記模塊50;其中,
所述第一更新模塊30,用于更新自路由表;
所述檢測(cè)模塊40,用于檢測(cè)更新前后的自路由表是否發(fā)生變化;
所述第一標(biāo)記模塊50,用于在檢測(cè)模塊檢測(cè)到自路由表發(fā)生變化時(shí),標(biāo)記變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為有效。
本發(fā)明實(shí)施例中,所述確認(rèn)模塊10,具體用于所述自路由表在預(yù)設(shè)的時(shí)間內(nèi)不再變化時(shí),確認(rèn)所述自路由表停止變化;
相應(yīng)的,所述裝置還包括:第二標(biāo)記模塊60,用于在所述確認(rèn)模塊確認(rèn)所述自路由表停止變化時(shí),標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效。
本發(fā)明實(shí)施例中,所述裝置還包括:第一更新模塊30和獲取模塊70;其中,
所述第一更新模塊30,用于更新自路由表;
所述獲取模塊70,用于在預(yù)設(shè)的時(shí)間間隔遍歷更新的自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將當(dāng)前的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路。
本發(fā)明實(shí)施例中,設(shè)置中間態(tài)指示信號(hào),所述中間態(tài)指示信號(hào)存儲(chǔ)于路由器內(nèi)的中間態(tài)指示寄存器內(nèi),所述中間態(tài)指示寄存器的位寬等于交換網(wǎng)絡(luò)內(nèi)的 SA的數(shù)量,所述中間態(tài)指示信號(hào)的每個(gè)比特位與所述自路由表的一個(gè)表項(xiàng)對(duì)應(yīng);在所述自路由表的表項(xiàng)內(nèi)容發(fā)生變化時(shí),變化的自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)也發(fā)生變化;設(shè)置多個(gè)中間態(tài)計(jì)數(shù)器,分別于交換網(wǎng)絡(luò)中的SA一一對(duì)應(yīng),在交換網(wǎng)絡(luò)中的任意一個(gè)SA或SF發(fā)生變化時(shí),將發(fā)生變化的SA或SF對(duì)應(yīng)的中間態(tài)計(jì)數(shù)器清零,并且在每個(gè)時(shí)鐘周期內(nèi),該中間態(tài)計(jì)數(shù)器的計(jì)數(shù)值加1,在所述計(jì)數(shù)器值達(dá)到預(yù)設(shè)的閾值,即達(dá)到預(yù)設(shè)的時(shí)間,自路由表的表項(xiàng)內(nèi)容不再發(fā)生變化,確認(rèn)所述自路由表停止變化,并標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效;
其中,標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為無效可以指,標(biāo)記所述自路由表的表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)為“0”,即將所述自路由表的全部表項(xiàng)對(duì)應(yīng)的中間態(tài)指示信號(hào)拉低;所述預(yù)設(shè)的時(shí)間可根據(jù)交互網(wǎng)絡(luò)的路由建立時(shí)間靈活設(shè)定;
這里,也可以根據(jù)實(shí)際的交換網(wǎng)絡(luò)需求,減少中間態(tài)指示信號(hào)的位寬及中間態(tài)計(jì)數(shù)器的數(shù)量;如每次都是在一個(gè)SA或SF的拓?fù)潢P(guān)系變更結(jié)束后,才會(huì)更改下一個(gè)SA或SF的拓?fù)潢P(guān)系,則可以只設(shè)置位寬為1比特的中間態(tài)指示信號(hào)及一個(gè)中間態(tài)計(jì)數(shù)器。
本發(fā)明實(shí)施例中,所述復(fù)制模塊20,可以只將變化的自路由表對(duì)應(yīng)的表項(xiàng)復(fù)制到單播路由表,單播路由表中未發(fā)生變化的自路由表對(duì)應(yīng)的表項(xiàng)不做復(fù)制。
本發(fā)明實(shí)施例中,所述第一標(biāo)記模塊50和第二標(biāo)記模塊50執(zhí)行的功能可以由同一個(gè)模塊實(shí)現(xiàn),也可以由不同的模塊實(shí)現(xiàn)。
為實(shí)現(xiàn)上述路由管理方法,本發(fā)明實(shí)施例提供另一種路由管理裝置,所述裝置的組成結(jié)構(gòu),如圖9所示,包括:遍歷模塊11、比較模塊21、和第二更新模塊31;其中,
所述遍歷模塊11,用于在預(yù)設(shè)的時(shí)間間隔遍歷自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;
所述比較模塊21,用于比較所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路是否相同;
所述第二更新模塊31,用于在所述比較模塊比較得到所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路。
本發(fā)明實(shí)施例中,在預(yù)設(shè)的時(shí)間間隔遍歷更新的自路由表,將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算,得到第一全目的可達(dá)鏈路和第二全目的可達(dá)鏈路;確認(rèn)所述第一全目的可達(dá)鏈路與所述第二全目的可達(dá)鏈路相同時(shí),將存儲(chǔ)的全目的可達(dá)鏈路更新為所述第一全目的可達(dá)鏈路或所述第二全目的可達(dá)鏈路;
這里,設(shè)置遍歷間隔計(jì)數(shù)器,即在遍歷間隔計(jì)數(shù)器的值達(dá)到一定閾值時(shí),遍歷一次自路由表的表項(xiàng);所述閾值大于路由器完全建立自路由的時(shí)間;將遍歷得到的自路由表的表項(xiàng)進(jìn)行運(yùn)算是指將遍歷得到的自路由表的全部表項(xiàng)按位進(jìn)行與運(yùn)算,自路由表的表項(xiàng)全為零時(shí)不參與運(yùn)算。
設(shè)置三個(gè)遍歷寄存器,將當(dāng)前的全目的可達(dá)鏈路A存儲(chǔ)至第一遍歷寄存器,將第一次遍歷自路由表得到的第一全目的可達(dá)鏈路B存儲(chǔ)至第二遍歷寄存器,將第二次遍歷自路由表得到的第二全目的可達(dá)鏈路C存儲(chǔ)至第三遍歷寄存器;比較所述B與C是否相同,在比較結(jié)果為相同時(shí),說明自路由表更新完成或未開始更新,則設(shè)置B或C為當(dāng)前全目的可達(dá)鏈路,并存儲(chǔ)至第一遍歷寄存器;在比較結(jié)果為不同時(shí),A仍為當(dāng)前全目的可達(dá)鏈路;完成一次上述判斷后,將C存儲(chǔ)至第二遍歷寄存器,并在第二遍歷寄存器中刪除B;在進(jìn)行第三次遍歷自路由表時(shí),將第三次遍歷得到的第三全目的可達(dá)鏈路D存儲(chǔ)至第二遍歷寄存器,并與C進(jìn)行比較,根據(jù)比較結(jié)果設(shè)置當(dāng)前的全目的可達(dá)鏈路;具體的,獲取全目的可達(dá)鏈路的偽代碼如下:
需要說明的是,在實(shí)際應(yīng)用中,所述確認(rèn)模塊10、復(fù)制模塊20、第一更新模塊30、檢測(cè)模塊40、第一標(biāo)記模塊50、第二標(biāo)記模塊60、獲取模塊70、遍 歷模塊11、比較模塊21和第二更新模塊31執(zhí)行的功能可由位于路由器上的中央處理器(CPU)、或微處理器(MPU)、或數(shù)字信號(hào)處理器(DSP)、或可編程門陣列(FPGA)實(shí)現(xiàn);所述遍歷寄存器和所述中間態(tài)指示寄存器位于路由器的芯片內(nèi),所述遍歷寄存器和所述中間態(tài)指示寄存器執(zhí)行的功能可由位于路由器上的CPU、或MPU、或DSP實(shí)現(xiàn)。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。