国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種獲取路由信息的方法及裝置的制作方法

      文檔序號(hào):7768708閱讀:499來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):一種獲取路由信息的方法及裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及第六版互聯(lián)網(wǎng)協(xié)議(IPv6 Jnternet Protocol Version 6)技術(shù),特別 是指一種IPv6中獲取路由信息的方法及裝置。
      背景技術(shù)
      IPv6 是互聯(lián)網(wǎng)工程任務(wù)組(IETF, Internet Engineering Task Force)設(shè)計(jì)的、 用于替代現(xiàn)行版本互聯(lián)網(wǎng)協(xié)議(IP,Internet I^otocol),即第四版互聯(lián)網(wǎng)協(xié)議(IPv4, Internet Protocol Version 4),的下一代 IP0
      路由表主要用于記錄網(wǎng)絡(luò)信息從信源到信宿的路徑,圖1為傳統(tǒng)的IPv6路由表結(jié) 構(gòu)示意圖,從圖1中可以看出,在傳統(tǒng)的IPv6路由存儲(chǔ)系統(tǒng)中,IPv6路由表中攜帶有用于 指導(dǎo)轉(zhuǎn)發(fā)的下一跳信息,即每條路由條目中均包含下一跳信息,下一跳信息包括信息最 大傳輸單元(MTU,Maximum Transmission Unit)、出接口信息、二層信息等,在存儲(chǔ)時(shí)需要 占用內(nèi)存資源。
      與IPv4的路由設(shè)備相比,IPv6的路由設(shè)備中存儲(chǔ)有大量的路由表信息,并且, IPv4路由的目的IP地址是32比特(bit),而IPv6路由的目的IP地址是U8bit,因此,IPv6 的路由設(shè)備中路由表信息對(duì)內(nèi)存的占用遠(yuǎn)遠(yuǎn)大于IPv4的路由設(shè)備中路由表信息對(duì)內(nèi)存的 占用。
      然而,在IPv6的路由條目中,存在大量的路由和下一跳信息為多對(duì)一的關(guān)系的情 況,即多條路由的下一條信息相同,下一跳信息存在很大的重復(fù)情況,如此,造成了內(nèi)存資 源的浪費(fèi)。發(fā)明內(nèi)容
      有鑒于此,本發(fā)明的主要目的在于提供一種獲取路由信息的方法及裝置,能有效 減少內(nèi)存的占用,進(jìn)而能降低資源消耗。
      為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的
      本發(fā)明提供了一種獲取路由信息的方法,該方法包括
      建立并實(shí)時(shí)更新包含路由信息和對(duì)應(yīng)的下一跳指針的路由表、以及包含下一跳信 息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表;
      需要發(fā)送數(shù)據(jù)包時(shí),根據(jù)所述路由表及所述下一跳表,獲取下一跳信息。
      上述方案中,所述更新包含路由信息和對(duì)應(yīng)的下一跳指針的路由表、以及包含下 一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表,為
      得到新路由條目后,將路由條目中的路由信息插入路由表對(duì)應(yīng)的表項(xiàng),將提取到 的路由條目中的下一跳信息插入所述下一跳表中,之后將指向所述下一跳信息的下一跳指 針插入對(duì)應(yīng)的路由表項(xiàng)中。
      上述方案中,所述將提取到的路由條目中的下一跳信息插入下一跳表中,為
      查看所述下一跳表中是否存在所述下一跳信息,確定存在時(shí),將所述下一跳信息對(duì)應(yīng)的引用計(jì)數(shù)值加1,確定不存在時(shí),增加所述下一跳信息,并將對(duì)應(yīng)的引用計(jì)數(shù)值初始 化為0,之后將引用計(jì)數(shù)值加1。
      上述方案中,所述查看所述下一跳表中是否存在所述下一跳信息,為
      根據(jù)所述下一跳信息中的下一跳IP地址,查看所述下一跳表中是否存在所述下一跳信息。
      上述方案中,所述更新包含路由信息和對(duì)應(yīng)的下一跳指針的路由表、以及包含下 一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表,為
      需要?jiǎng)h除路由條目時(shí),判斷路由表中是否存在需要?jiǎng)h除的路由條目對(duì)應(yīng)的路由表 項(xiàng),確定存在后,進(jìn)一步判斷所述對(duì)應(yīng)的路由表項(xiàng)是否有關(guān)聯(lián)的下一跳表項(xiàng),確定有后,將 對(duì)應(yīng)的下一跳表項(xiàng)中的引用計(jì)數(shù)值減1 ;
      之后判斷所述對(duì)應(yīng)的下一跳表項(xiàng)中的引用計(jì)數(shù)值是否為0,確定為0后,刪除所述 對(duì)應(yīng)的下一跳表項(xiàng),之后從路由表中刪除所述對(duì)應(yīng)的路由表項(xiàng)。
      上述方案中,該方法進(jìn)一步包括
      確定所述對(duì)應(yīng)的路由表項(xiàng)沒(méi)有關(guān)聯(lián)的下一跳表項(xiàng)后,從路由表中刪除所述對(duì)應(yīng)的 路由表項(xiàng)。
      上述方案中,所述判斷路由表中是否存在需要?jiǎng)h除的路由條目對(duì)應(yīng)的路由表項(xiàng), 為
      根據(jù)需要?jiǎng)h除的路由條目中的目的IP地址,查找路由表中是否存在對(duì)應(yīng)的路由 表項(xiàng)。
      上述方案中,所述判斷所述對(duì)應(yīng)的路由表項(xiàng)是否有關(guān)聯(lián)的下一跳表項(xiàng),為
      判斷所述對(duì)應(yīng)的路由表項(xiàng)中的下一跳指針是否為零,確定下一跳指針為零時(shí),認(rèn) 為所述路由表項(xiàng)沒(méi)有關(guān)聯(lián)的下一跳表項(xiàng),確定下一跳指針不為零時(shí),認(rèn)為所述路由表項(xiàng)有 關(guān)聯(lián)的下一跳表項(xiàng)。
      上述方案中,所述根據(jù)所述路由表及所述下一跳表,獲取下一跳信息,為
      根據(jù)數(shù)據(jù)包中的目的IP地址,從所述路由表中查找對(duì)應(yīng)的路由表項(xiàng);根據(jù)所述對(duì) 應(yīng)的路由表項(xiàng)中的下一跳指針,從所述下一跳表中讀取下一跳信息。
      上述方案中,該方法進(jìn)一步包括
      在獲取下一跳信息后,根據(jù)下一跳信息轉(zhuǎn)發(fā)數(shù)據(jù)包。
      本發(fā)明還提供了一種獲取路由信息的裝置,該裝置包括建立單元及獲取單元; 其中,
      建立單元,用于建立并實(shí)時(shí)更新包含路由信息和對(duì)應(yīng)的下一跳指針的路由表、以 及包含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表;
      獲取單元,用于需要發(fā)送數(shù)據(jù)包時(shí),根據(jù)所述路由表及所述下一跳表,獲取下一跳 fn息ο
      上述方案中,該裝置進(jìn)一步包括存儲(chǔ)單元,用于存儲(chǔ)所述路由表及所述下一跳表。
      上述方案中,該裝置進(jìn)一步包括轉(zhuǎn)發(fā)單元,用于在收到獲取單元發(fā)送的下一跳信 息后,根據(jù)下一跳信息轉(zhuǎn)發(fā)數(shù)據(jù)包;
      所述獲取單元,還用于在獲取到下一跳信息后,將獲取到的下一跳信息發(fā)送給轉(zhuǎn)發(fā)單元。
      本發(fā)明提供的獲取路由信息的方法及裝置,建立并實(shí)時(shí)更新包含路由信息和對(duì)應(yīng) 的下一跳指針的路由表、以及包含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表;需要發(fā)送 數(shù)據(jù)包時(shí),根據(jù)所述路由表及所述下一跳表,獲取下一跳信息,如此,能有效減少內(nèi)存的占 用,進(jìn)而能降低資源的消耗。
      另外,根據(jù)下一跳信息中的下一跳IP地址,查看下一跳表中是否存在對(duì)應(yīng)的下一 跳信息,如此,能快速查找出下一跳表中是否存在對(duì)應(yīng)的下一跳信息,從而能快速將路由條 目中的下一跳信息插入到下一跳表中,進(jìn)而能提高路由設(shè)備的處理效率。


      圖1為傳統(tǒng)的IPv6路由表結(jié)構(gòu)示意圖2為本發(fā)明獲取路由信息的方法流程示意圖3為利用本發(fā)明得到的IPv6路由表結(jié)構(gòu)示意圖4為實(shí)施例一實(shí)現(xiàn)增加新路由條目的方法流程示意圖5為實(shí)施例二實(shí)現(xiàn)刪除路由條目的方法流程示意圖。
      具體實(shí)施方式
      下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明再作進(jìn)一步詳細(xì)的說(shuō)明。
      本發(fā)明獲取路由信息的方法,如圖2所示,包括以下步驟
      步驟200 建立并實(shí)時(shí)更新包含路由信息和對(duì)應(yīng)的下一跳指針的路由表、以及包 含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表;
      具體地,在建立路由表和下一跳表時(shí),按照Radix樹(shù)結(jié)構(gòu),以路由條目中的目的IP 地址為標(biāo)識(shí)(Key)值,將所述路由條目中的路由信息插入路由表對(duì)應(yīng)的表項(xiàng),同時(shí)以路由 條目中的下一跳IP地址為Key值,將提取到的路由條目中的下一跳信息插入下一跳表中; 之后將指向該下一跳信息的下一跳指針插入對(duì)應(yīng)的路由表項(xiàng)中;這里,得到路由條目的途 徑與現(xiàn)有技術(shù)中得到路由條目的途徑完全相同,比如可以根據(jù)網(wǎng)管對(duì)路由的配置信息,得 到路由條目,還可以依據(jù)路由協(xié)議,通過(guò)學(xué)習(xí)得到路由條目,還可以收到網(wǎng)絡(luò)系統(tǒng)廣播的路 由條目等等;
      所述下一跳表的結(jié)構(gòu)與所述路由表的結(jié)構(gòu)相同,S卩均為Radix樹(shù)狀結(jié)構(gòu),與所述 路由表不同的是所述下一跳表是以下一跳信息中的下一跳IP地址為Key值構(gòu)造而成,所 述路由表是以路由信息中的目的IP地址為Key值構(gòu)造而成;本發(fā)明構(gòu)造路由表和下一跳表 的具體處理過(guò)程與現(xiàn)有的路由表的具體處理過(guò)程完全相同,這里不再贅述;
      所述路由信息就是指對(duì)數(shù)據(jù)包的目的地網(wǎng)段進(jìn)行描述的信息,包括目的IP、目 的掩碼、路由優(yōu)先級(jí)等等;所述下一跳信息就是指對(duì)數(shù)據(jù)包如何到達(dá)目的地,如何進(jìn)行轉(zhuǎn) 發(fā)進(jìn)行描述的信息,包括網(wǎng)絡(luò)信息到下一跳的具體接口信息;
      所述路由條目包括路由信息,進(jìn)一步還可以包括下一跳信息;
      如果路由條目中不包括下一跳信息時(shí),則只將路由條目中的路由信息插入路由 表中;例如網(wǎng)管配置了靜態(tài)路由,但是,指定的物理出接口沒(méi)有插網(wǎng)線或協(xié)議存在問(wèn)題 (down)時(shí),此時(shí),不能簡(jiǎn)單刪除路由,而是以無(wú)效路由的方式存儲(chǔ),此時(shí)該路由條目中不包含下一跳信息;
      所述將提取到的路由條目中的下一跳信息插入下一跳表,具體為
      查看所述下一跳表中是否存在所述下一跳信息,如果存在,則將所述下一跳信息 對(duì)應(yīng)的引用計(jì)數(shù)值加1,如果不存在,則增加所述下一跳信息,并將對(duì)應(yīng)的引用計(jì)數(shù)值初始 化為0,之后將引用計(jì)數(shù)值加1 ;
      其中,所述查看所述下一跳表中是否存在所述下一跳信息,具體為
      根據(jù)所述下一跳信息中的下一跳IP地址,查看所述下一跳表中是否存在所述下一跳信息。
      所述下一跳指針為下一跳表項(xiàng)的起始存儲(chǔ)地址,路由設(shè)備據(jù)此可以獲得下一跳信 息;
      采用本發(fā)明的方法得到的路由表項(xiàng)的內(nèi)容包含路由信息及對(duì)應(yīng)的下一跳指針,下 一跳表項(xiàng)的內(nèi)容包含下一跳信息及對(duì)應(yīng)的引用計(jì)數(shù)值;
      利用本發(fā)明建立路由表及下一跳表的方法,則可以得到如圖3所示的存儲(chǔ)結(jié)構(gòu)示 意圖,從圖3中可以看出,與圖1中示出的傳統(tǒng)的存儲(chǔ)結(jié)構(gòu)相比,現(xiàn)有的6條路由信息只需 要存儲(chǔ)3條下一跳信息即可,從而大大降低了內(nèi)存的占用;
      在IPv6的路由設(shè)備中,路由設(shè)備根據(jù)網(wǎng)絡(luò)的運(yùn)行狀況,會(huì)出現(xiàn)增加新的路由條目 和刪除路由條目?jī)煞N情況;因此更新過(guò)程包括增加和刪除路由條目的過(guò)程;
      實(shí)施例一
      本實(shí)施例針對(duì)增加新的路由條目的情況,描述路由設(shè)備更新路由表及下一跳表的 處理流程,實(shí)現(xiàn)過(guò)程如圖4所示,包括以下步驟
      步驟401 得到新路由條目后,在路由表中插入新節(jié)點(diǎn),并將所述新路由條目的路 由信息寫(xiě)入新節(jié)點(diǎn),之后執(zhí)行步驟402 ;
      這里,所述路由設(shè)備得到路由條目的途徑與現(xiàn)有技術(shù)中路由設(shè)備得到路由條目的 途徑完全相同,比如路由設(shè)備可以根據(jù)網(wǎng)管對(duì)路由的配置信息,得到路由條目,路由設(shè)備 還可以依據(jù)路由協(xié)議,通過(guò)學(xué)習(xí)得到路由條目,路由設(shè)備還可以收到網(wǎng)絡(luò)系統(tǒng)廣播的路由 條目等等;
      每個(gè)節(jié)點(diǎn)對(duì)應(yīng)路由表的一個(gè)表項(xiàng)。
      步驟402 從所述新路由條目中提取下一跳信息,之后執(zhí)行步驟403 ;
      這里,所述新路由條目包含路由信息及下一跳信息。
      步驟403 判斷下一跳表中是否存在所述下一跳信息,如果是,則執(zhí)行步驟405,否 則,執(zhí)行步驟404;
      這里,所述判斷下一跳表中是否存在所述下一跳信息,具體為
      根據(jù)所述下一跳信息中的下一跳IP地址,查看所述下一跳表中是否存在所述下一跳信息。
      步驟404 在下一跳表中插入新節(jié)點(diǎn),并將所述下一跳信息寫(xiě)入新節(jié)點(diǎn),并將對(duì)應(yīng) 的引用計(jì)數(shù)值初始化為0,之后執(zhí)行步驟405。
      步驟405 將對(duì)應(yīng)的引用計(jì)數(shù)值加1,之后執(zhí)行步驟406。
      步驟406 將指向該下一跳信息的下一跳指針插入所述路由表中對(duì)應(yīng)的節(jié)點(diǎn)中, 結(jié)束當(dāng)前處理流程。
      實(shí)施例二
      本實(shí)施例針對(duì)刪除路由條目的情況,描述路由設(shè)備更新路由表及下一跳表的處理 流程,實(shí)現(xiàn)過(guò)程如圖5所示,包括以下步驟
      步驟501 需要?jiǎng)h除路由條目時(shí),判斷路由表中是否存在需要?jiǎng)h除的路由條目對(duì) 應(yīng)的路由表項(xiàng),如果是,則執(zhí)行步驟502,否則,執(zhí)行步驟507 ;
      這里,需要?jiǎng)h除某個(gè)路由條目的時(shí)機(jī)為與現(xiàn)有技術(shù)中路由設(shè)備刪除路由條目的 時(shí)機(jī)完全相同,比如網(wǎng)管需要?jiǎng)h除某個(gè)路由條目,將對(duì)該路由條目的配置信息刪除,路由 設(shè)備可以根據(jù)刪除的配置信息,得到需要?jiǎng)h除的路由條目,路由設(shè)備還可以依據(jù)路由協(xié)議, 通過(guò)學(xué)習(xí)得到需要?jiǎng)h除的路由條目,路由設(shè)備還可以根據(jù)收到的網(wǎng)絡(luò)系統(tǒng)的廣播,得到需 要?jiǎng)h除的路由條目等等;
      所述判斷路由表中是否存在需要?jiǎng)h除的路由條目對(duì)應(yīng)的路由表項(xiàng),具體為
      根據(jù)需要?jiǎng)h除的路由條目中的目的IP地址,查找路由表中是否存在對(duì)應(yīng)的路由 表項(xiàng)。
      步驟502 判斷所述路由表項(xiàng)是否有關(guān)聯(lián)的下一跳表項(xiàng),如果是,則執(zhí)行步驟503, 否則,執(zhí)行步驟506;
      這里,所述判斷所述路由表項(xiàng)是否有關(guān)聯(lián)的下一跳表項(xiàng),具體為
      判斷所述路由表項(xiàng)中的下一跳指針是否為零,如果是零,則認(rèn)為所述路由表項(xiàng)沒(méi) 有關(guān)聯(lián)的下一跳表項(xiàng),如果不是零,則認(rèn)為所述路由表項(xiàng)有關(guān)聯(lián)的下一跳表項(xiàng);
      其中,下一跳指針為下一跳表項(xiàng)的起始存儲(chǔ)地址,而在實(shí)際應(yīng)用時(shí),零地址不用于 存儲(chǔ)下一跳表項(xiàng),因此,可以通過(guò)判斷路由表項(xiàng)中的下一跳指針是否為零,來(lái)確定路由表項(xiàng) 是否有關(guān)聯(lián)的下一跳表項(xiàng)。
      步驟503 將對(duì)應(yīng)的下一跳表項(xiàng)中的引用計(jì)數(shù)值減1,之后執(zhí)行步驟504。
      步驟504 判斷對(duì)應(yīng)的下一跳表項(xiàng)中的引用計(jì)數(shù)值是否為0,如果是,則執(zhí)行步驟 505,否則,執(zhí)行步驟506 ;
      這里,如果對(duì)應(yīng)的下一跳表項(xiàng)中的引用計(jì)數(shù)值為0,則說(shuō)明當(dāng)前沒(méi)有路由表項(xiàng)與該 下一跳表項(xiàng)關(guān)聯(lián),需要?jiǎng)h除該下一跳表項(xiàng)。
      步驟505 刪除該下一跳表項(xiàng),之后執(zhí)行步驟506。
      步驟506 從路由表中刪除對(duì)應(yīng)的路由表項(xiàng),之后執(zhí)行步驟507。
      步驟507 結(jié)束當(dāng)前處理流程。
      在實(shí)際應(yīng)用時(shí),可以通過(guò)測(cè)試儀向IPv6的路由設(shè)備發(fā)送包含許多下一跳信息相 同的10000條路由條目,來(lái)驗(yàn)證本發(fā)明存儲(chǔ)方法的優(yōu)越性,具體地,采用本發(fā)明的方法存儲(chǔ) 路由表,同時(shí)采用傳統(tǒng)的方法存儲(chǔ)路由表,之后分別查看路由表占用內(nèi)存的數(shù)量,通過(guò)對(duì)比 可以發(fā)現(xiàn),采用本發(fā)明的方法存儲(chǔ)路由表,確實(shí)能減少內(nèi)存的占用。
      步驟201 需要發(fā)送數(shù)據(jù)包時(shí),根據(jù)所述路由表及所述下一跳表,獲取下一跳信 息;
      具體地,根據(jù)數(shù)據(jù)包中的目的IP地址,從所述路由表中查找對(duì)應(yīng)的路由表項(xiàng);根 據(jù)所述對(duì)應(yīng)的路由表項(xiàng)中的下一跳指針,從所述下一跳表中讀取下一跳信息;
      如果未從所述路由表中查找到對(duì)應(yīng)的路由表項(xiàng),此時(shí),路由設(shè)備可以通過(guò)廣播的 方式得到需要的路由條目,根據(jù)得到路由條目轉(zhuǎn)發(fā)數(shù)據(jù)包,之后將路由條目中的路由信息插入所述路由表中,將下一跳信息插入所述下一跳表中;
      在獲取下一跳信息后,路由設(shè)備根據(jù)下一跳信息將數(shù)據(jù)包轉(zhuǎn)發(fā)出去。
      為實(shí)現(xiàn)上述方法,本發(fā)明還提供了一種獲取路由信息的裝置,該裝置包括建立單 元及獲取單元;其中,
      建立單元,用于建立并實(shí)時(shí)更新包含路由信息和對(duì)應(yīng)的下一跳指針的路由表、以 及包含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表;
      獲取單元,用于需要發(fā)送數(shù)據(jù)包時(shí),根據(jù)所述路由表及所述下一跳表,獲取下一跳 fn息ο
      其中,該裝置還可以進(jìn)一步包括存儲(chǔ)單元,用于存儲(chǔ)所述路由表及所述下一跳表。
      所述獲取單元具體用于根據(jù)數(shù)據(jù)包中的目的IP地址,從所述路由表中查找對(duì)應(yīng) 的路由表項(xiàng);根據(jù)所述對(duì)應(yīng)的路由表項(xiàng)中的下一跳指針,從所述下一跳表中讀取下一跳信 肩、ο
      該裝置還可以進(jìn)一步包括轉(zhuǎn)發(fā)單元,用于在收到獲取單元發(fā)送的下一跳信息后, 根據(jù)下一跳信息轉(zhuǎn)發(fā)數(shù)據(jù)包;
      所述獲取單元,還用于在獲取到下一跳信息后,將獲取到的下一跳信息發(fā)送給轉(zhuǎn) 發(fā)單元。
      這里,本發(fā)明的所述裝置中的建立單元的具體處理過(guò)程已在上文中詳述,不再贅 述。
      以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍,凡在 本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù) 范圍之內(nèi)。
      權(quán)利要求
      1.一種獲取路由信息的方法,其特征在于,建立并實(shí)時(shí)更新包含路由信息和對(duì)應(yīng)的 下一跳指針的路由表、以及包含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表;該方法還包 括需要發(fā)送數(shù)據(jù)包時(shí),根據(jù)所述路由表及所述下一跳表,獲取下一跳信息。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述更新包含路由信息和對(duì)應(yīng)的下一跳 指針的路由表、以及包含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表,為得到新路由條目后,將路由條目中的路由信息插入路由表對(duì)應(yīng)的表項(xiàng),將提取到的路 由條目中的下一跳信息插入所述下一跳表中,之后將指向所述下一跳信息的下一跳指針插 入對(duì)應(yīng)的路由表項(xiàng)中。
      3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將提取到的路由條目中的下一跳信 息插入下一跳表中,為查看所述下一跳表中是否存在所述下一跳信息,確定存在時(shí),將所述下一跳信息對(duì)應(yīng) 的引用計(jì)數(shù)值加1,確定不存在時(shí),增加所述下一跳信息,并將對(duì)應(yīng)的引用計(jì)數(shù)值初始化為 0,之后將引用計(jì)數(shù)值加1。
      4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述查看所述下一跳表中是否存在所述 下一跳信息,為根據(jù)所述下一跳信息中的下一跳互聯(lián)網(wǎng)協(xié)議(IP)地址,查看所述下一跳表中是否存 在所述下一跳信息。
      5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述更新包含路由信息和對(duì)應(yīng)的下一跳 指針的路由表、以及包含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表,為需要?jiǎng)h除路由條目時(shí),判斷路由表中是否存在需要?jiǎng)h除的路由條目對(duì)應(yīng)的路由表項(xiàng), 確定存在后,進(jìn)一步判斷所述對(duì)應(yīng)的路由表項(xiàng)是否有關(guān)聯(lián)的下一跳表項(xiàng),確定有后,將對(duì)應(yīng) 的下一跳表項(xiàng)中的引用計(jì)數(shù)值減1 ;之后判斷所述對(duì)應(yīng)的下一跳表項(xiàng)中的引用計(jì)數(shù)值是否為0,確定為0后,刪除所述對(duì)應(yīng) 的下一跳表項(xiàng),之后從路由表中刪除所述對(duì)應(yīng)的路由表項(xiàng)。
      6.根據(jù)權(quán)利要求5所述的方法,其特征在于,該方法進(jìn)一步包括確定所述對(duì)應(yīng)的路由表項(xiàng)沒(méi)有關(guān)聯(lián)的下一跳表項(xiàng)后,從路由表中刪除所述對(duì)應(yīng)的路由 表項(xiàng)。
      7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述判斷路由表中是否存在需要?jiǎng)h除的 路由條目對(duì)應(yīng)的路由表項(xiàng),為根據(jù)需要?jiǎng)h除的路由條目中的目的IP地址,查找路由表中是否存在對(duì)應(yīng)的路由表項(xiàng)。
      8.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述判斷所述對(duì)應(yīng)的路由表項(xiàng)是否有關(guān) 聯(lián)的下一跳表項(xiàng),為判斷所述對(duì)應(yīng)的路由表項(xiàng)中的下一跳指針是否為零,確定下一跳指針為零時(shí),認(rèn)為所 述路由表項(xiàng)沒(méi)有關(guān)聯(lián)的下一跳表項(xiàng),確定下一跳指針不為零時(shí),認(rèn)為所述路由表項(xiàng)有關(guān)聯(lián) 的下一跳表項(xiàng)。
      9.根據(jù)權(quán)利要求1至8任一項(xiàng)所述的方法,其特征在于,所述根據(jù)所述路由表及所述下 一跳表,獲取下一跳信息,為根據(jù)數(shù)據(jù)包中的目的IP地址,從所述路由表中查找對(duì)應(yīng)的路由表項(xiàng);根據(jù)所述對(duì)應(yīng)的路由表項(xiàng)中的下一跳指針,從所述下一跳表中讀取下一跳信息。
      10.根據(jù)權(quán)利要求1至8任一項(xiàng)所述的方法,其特征在于,該方法進(jìn)一步包括 在獲取下一跳信息后,根據(jù)下一跳信息轉(zhuǎn)發(fā)數(shù)據(jù)包。
      11.一種獲取路由信息的裝置,其特征在于,該裝置包括建立單元及獲取單元;其中, 建立單元,用于建立并實(shí)時(shí)更新包含路由信息和對(duì)應(yīng)的下一跳指針的路由表、以及包含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表;獲取單元,用于需要發(fā)送數(shù)據(jù)包時(shí),根據(jù)所述路由表及所述下一跳表,獲取下一跳信肩、O
      12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,該裝置進(jìn)一步包括存儲(chǔ)單元,用于存 儲(chǔ)所述路由表及所述下一跳表。
      13.根據(jù)權(quán)利要求11或12所述的裝置,其特征在于,該裝置進(jìn)一步包括轉(zhuǎn)發(fā)單元,用 于在收到獲取單元發(fā)送的下一跳信息后,根據(jù)下一跳信息轉(zhuǎn)發(fā)數(shù)據(jù)包;所述獲取單元,還用于在獲取到下一跳信息后,將獲取到的下一跳信息發(fā)送給轉(zhuǎn)發(fā)單兀。
      全文摘要
      本發(fā)明公開(kāi)了一種獲取路由信息的存方法,該方法包括建立并實(shí)時(shí)更新包含路由信息和對(duì)應(yīng)的下一跳指針的路由表、以及包含下一跳信息和對(duì)應(yīng)的引用計(jì)數(shù)值的下一跳表;需要發(fā)送數(shù)據(jù)包時(shí),根據(jù)所述路由表及所述下一跳表,獲取下一跳信息。本發(fā)明同時(shí)公開(kāi)了一種獲取路由信息的存裝置,采用本發(fā)明的方法及裝置,能有效減少內(nèi)存的占用,進(jìn)而能降低資源的消耗。
      文檔編號(hào)H04L12/56GK102035738SQ20101058781
      公開(kāi)日2011年4月27日 申請(qǐng)日期2010年12月14日 優(yōu)先權(quán)日2010年12月14日
      發(fā)明者張明之 申請(qǐng)人:中興通訊股份有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1