專利名稱:硬件路由表管理方法、裝置和通訊設備的制作方法
技術領域:
本發明涉及通訊技術領域,尤其涉及一種硬件路由表管理方法、裝置和通訊設備。
背景技術:
基于硬件轉發的三層交換機主要由協議控制面和硬件轉發面兩個部分構成,即協 議控制裝置和硬件轉發裝置。其中,協議控制面主要用于運行各種協議,通過協議報文的交 互來進行路由學習,并將學習到的路由信息通告到硬件轉發面;而硬件轉發面由一塊或多 塊交換芯片構成,當網絡數據流到達交換機時,在交換芯片上完成路由查找和線速轉發。協 議控制面的路由信息保存在軟件數據庫中,軟件數據庫的容量取決于系統內存的大小,因 此其容量基本上不受限制;而硬件轉發面的路由信息保存在交換芯片的硬件路由表中,各 交換芯片中存儲的路由信息是相同的,因此整機的硬件路由表容量即為單塊交換芯片的路 由表容量。由于交換芯片的硬件路由表容量是固定的,因此硬件路由表容量成為整機路由 容量的瓶頸。當硬件路由表達到上限后,盡管協議控制面可以繼續學習新的路由,當無法將 新的路由信息通告給硬件轉發面,使得用戶無法訪問新的網絡地址。在現有技術中,為了解決硬件路由表容量受限的問題,通常通過對交換芯片進行 升級,直接使用硬件路由容量更大的交換芯片;或將硬件轉發面上的各交換芯片的硬件路 由表容量進行疊加,整合成一個更大的硬件路由表;或由網管直接修改網絡配置。然而,現有技術中的上述解決方法存在如下問題硬件升級導致成本增加;路由 表容量疊加僅適用于多交換芯片的架構,且方案復雜;直接修改網絡配置則需要人為干預, 且需要對網絡拓撲進行調整,維護難度和工作量較大。
發明內容
本發明提供一種硬件路由表管理方法、裝置和通訊設備,用以解決現有技術中硬 件路由表容量受限的問題,實現在不增加硬件成本且不改變網絡拓撲的前提下,擴展網絡容量,優化網絡性能,使得軟硬件資源可以得到充分有效的利用。本發明提供一種硬件路由表管理方法,包括將由協議控制裝置向硬件轉發裝置通告的路由信息拷貝到軟件路由表中,并將所 述路由信息設置在硬件路由表中;對所述硬件路由表進行監控,并根據監控結果對所述硬件路由表中的路由信息進 行老化和/或恢復處理。本發明提供一種硬件路由表管理裝置,包括拷貝模塊,用于將由協議控制裝置向硬件轉發裝置通告的路由信息拷貝到軟件路 由表中,并將所述路由信息設置在硬件路由表中;老化模塊,用于對所述硬件路由表進行監控,并根據監控結果對所述硬件路由表 中的路由信息進行老化處理;和/或恢復模塊,用于對所述硬件路由表進行監控,并根據監控結果對所述硬件路由表中的路由信息進行恢復處理。本發明提供一種通訊設備,包括協議控制裝置、硬件轉發裝置和硬件路由表管理裝置,所述硬件路由表管理裝置包括上述硬件路由表管理裝置。本發明的硬件路由表管理方法、裝置和通訊設備,通過新增的硬件路由表管理裝 置對硬件路由表中的路由信息進行拷貝保存,并實時對硬件路由表進行監控和維護,對長 時間未被訪問的路由信息進行老化處理,以及對用戶需要訪問的已老化的路由信息進行恢 復處理;本實施例解決了現有技術中硬件路由表容量受限的問題,在不增加硬件成本且不 改變網絡拓撲的前提下,擴展了網絡容量,優化了網絡性能,而且使得軟硬件資源可以得到 充分有效的利用。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發 明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以 根據這些附圖獲得其他的附圖。圖1為本發明硬件路由表管理方法實施例一的流程圖;圖2為本發明硬件路由表管理方法實施例一中三層交換機的模型示意圖;圖3為本發明硬件路由表管理方法實施例二的流程圖;圖4為本發明硬件路由表管理方法實施例三的流程圖;圖5為本發明硬件路由表管理裝置實施例一的結構示意圖;圖6為本發明硬件路由表管理裝置實施例二的結構示意圖。
具體實施例方式為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例 中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是 本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員 在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。圖1為本發明硬件路由表管理方法實施例一的流程圖,如圖1所示,本實施例提供 了一種硬件路由表管理方法,可以包括如下步驟步驟101,硬件路由表管理裝置將由協議控制裝置向硬件轉發裝置通告的路由信 息拷貝到軟件路由表中,并將所述路由信息設置在硬件路由表中。圖2為本發明硬件路由表管理方法實施例一中三層交換機的模型示意圖,如圖2 所示,本實施例以通訊設備為三層交換機為例進行說明,本實施例無需對三層交換機的協 議控制裝置和硬件轉發裝置進行任何改動,只在硬件轉發裝置之上增設一個硬件路由表管 理裝置,通過該硬件路由表管理裝置與硬件轉發裝置進行信息交互,以實現對硬件路由表 中的路由信息進行監控,對路由信息進行移除或回寫處理。本步驟為硬件路由表管理裝置 對協議控制裝置通告給硬件轉發裝置的路由信息進行拷貝,并將這些路由信息設置在硬件 路由表中。在協議控制裝置向硬件轉發裝置通告路由信息時,硬件路由表管理裝置獲取通 告的路由信息,將獲取的路由信息拷貝保存在硬件路由表管理裝置的軟件數據庫的軟件路由表中,并同時將這些路由信息在硬件路由表中進行設置。即本實施例中的硬件路由表管理裝置利用軟件數據庫保存所有硬件路由表中路由信息的副本,在將新學習到的路由信息 添加到硬件路由表中之前,先將該路由信息的副本保存在軟件路由表中,且軟件路由表中 保存的路由信息的副本將一直存在,不對其進行老化移除處理。步驟102,硬件路由表管理裝置對所述硬件路由表進行監控,并根據監控結果對所 述硬件路由表中的路由信息進行老化和/或恢復處理。硬件路由表管理裝置在對硬件路由表中的路由信息進行拷貝后,實時對硬件路由表進行監控和維護,對硬件路由表中的路由信息進行老化和/或恢復處理。對于整個硬件 路由表而言,其中一些路由信息可能經常被命中,另一些路由信息可能在一段時間內都沒 有被命中過,即這些路由信息對應的網段地址在較長一段時間內沒有被訪問過,但其仍占 用著硬件路由表的空間。當交換芯片的硬件路由表的容量達到上限后,協議控制裝置新學 習到的路由信息便無法添加到硬件路由表中,使得用戶無法訪問新學習到的路由信息對應 的網段地址,而很久未被訪問的路由信息卻一直占用硬件路由表,無疑造成硬件路由表的 資源浪費。本實施例通過硬件路由表管理裝置對硬件路由表中很久未被訪問的路由信息進 行老化處理,將其占用的硬件路由表的空間進行釋放,使得新學習到的路由信息可以及時 添加到硬件路由表中,從而讓用戶能夠訪問這些新學習到的路由信息對應的網段地址。或 者,本實施例也可以在硬件路由表的容量達到預設的容量上限時,才啟用本實施例的路由 信息的老化機制,即當硬件路由表的容量達到預設的容量上限時,才對硬件路由表中的路 由信息進行老化處理。另外,本實施例還通過硬件路由表管理裝置對被老化的路由信息進 行恢復處理,在將長時間未被訪問的路由信息從硬件路由表中暫時刪除后,當突然有用戶 需要訪問這些路由信息對應的網段地址時,則根據軟件路由表中保存的副本將被刪除的路 由信息重新回寫到硬件路由表中,使得用戶后續仍可以訪問該路由信息對應的網段地址。本實施例提供了一種硬件路由表管理方法,通過新增的硬件路由表管理裝置對 硬件路由表中的路由信息進行拷貝保存,并實時對硬件路由表進行監控和維護,對長時間 未被訪問的路由信息進行老化處理,以及對用戶需要訪問的已老化的路由信息進行恢復處 理;本實施例解決了現有技術中硬件路由表容量受限的問題,在不增加硬件成本且不改變 網絡拓撲的前提下,擴展了網絡容量,優化了網絡性能,而且使得軟硬件資源可以得到充分 有效的利用。圖3為本發明硬件路由表管理方法實施例二的流程圖,如圖3所示,本實施例提供 了一種硬件路由表管理方法,本實施例在上述實施例一的基礎之上,對路由信息的老化處 理過程進行詳細的說明,具體地,本實施例可以包括如下步驟步驟301,硬件路由表管理裝置將由協議控制裝置向硬件轉發裝置通告的路由信 息拷貝到軟件路由表中,并將所述路由信息設置在硬件路由表中,本步驟可以類似上述步 驟101,此處不再贅述。步驟302,硬件路由表管理裝置定時讀取所述硬件路由表中每條路由信息的命中 位信息。在本實施例中,硬件路由表管理裝置在對硬件路由表中的路由信息進行監控和維 護時,定時對硬件路由表中每條路由信息的命中(Hit)位信息進行讀取。具體地,硬件路由 表管理裝置可以創建一個定時器,根據實際情況設定定時器的定時時間,如設置觸發時間為10s,當定時器觸發時,讀取硬件路由表中每條路由信息的Hit位信息,即每隔IOs遍歷硬件路由表中的每條路由信息的Hit位。步驟303,硬件路由表管理裝置根據獲取的路由信息的命中位信息判斷所述路由信息是否被命中,如果是,則執行步驟304,否則執行步驟305。在本實施例中,每條路由信息的Hit位由二進制數“0”和“1”來進行標識,當某條 路由信息的Hit位為1時,表明該路由信息被命中過,即該路由信息對應的網段地址被訪問 過;當其Hit位為0時,表明該路由信息對應的網段地址未被訪問。硬件路由表管理裝置根 據獲取到的路由信息的Hit位信息判斷該路由信息是否被命中,當在定時時間內獲取到路 由信息的Hit位被置1時,表明該路由信息在該定時時間內已被命中,則執行步驟304,硬件 路由表管理裝置不對該路由信息進行老化處理,將軟件路由表中該路由信息對應的未命中 間隔時間設置為0,并清空所述路由信息的命中位。當在定時時間內獲取到路由信息的Hit 位為0時,表明該路由信息在該定時時間內一直未被命中,則執行步驟305,硬件路由表管 理裝置將所述軟件路由表中所述路由信息對應的未命中間隔時間進行更新。步驟304,硬件路由表管理裝置將所述軟件路由表中所述路由信息對應的未命中 間隔時間設置為0,并清空所述路由信息的命中位,并返回執行步驟302。硬件路由表管理裝置在軟件路由表中除保存路由信息的副本外,還存儲有每條路 由信息的未命中間隔時間,本實施例中的未命中間隔時間為路由信息對應的網段地址截止 當前讀取時刻為止未被訪問的時間間隔。當在定時時間內對路由信息的Hit位進行讀取, 獲取到其Hit位為1時,表明該路由信息在定時時間IOs內被命中過,則硬件路由表管理裝 置在軟件路由表中將該路由信息的未命中間隔時間清零,并清空該路由信息的Hit位。即 將該路由信息的未命中間隔時間設置為0,并將其Hit位設置為0,以表示該路由信息最近 被命中過,以便下次重新讀取和分析,并返回執行步驟302,進行下一個定時時間內信息的 讀取。步驟305,硬件路由表管理裝置將所述軟件路由表中所述路由信息對應的未命中 間隔時間進行更新。當在定時時間內對路由信息的Hit位進行讀取,獲取到其Hit位仍為0時,表明該 路由信息在定時時間IOs內未被命中過,則硬件路由表管理裝置在軟件路由表中將該路由 信息的未命中間隔時間進行更新,將其未命中間隔時間累加10s,表示在最近IOs內該路由 信息未被命中過。步驟306,硬件路由表管理裝置判斷路由信息對應的未命中間隔時間是否超過預 設的未命中間隔時間閾值,如果是,則執行步驟307,否則返回執行步驟302。硬件路由表管理裝置對軟件路由表中各路由信息對應的未命中間隔時間進行維 護,判斷路由信息對應的未命中間隔時間是否超過預設的未命中間隔時間閾值,本實施例 可以根據具體情況對未命中間隔時間閾值進行設定,如設定為60s。當某條路由信息對應的 未命中間隔時間超過60s時,則執行步驟307,將其從硬件路由表中刪除。或者,本實施例在 對硬件路由表中的路由信息進行老化處理時,除了步驟306中的對超過指定時間未命中的 路由全部進行老化處理外,還可以采用其他的老化機制,如可以只將最長時間未命中的路 由信息進行老化處理,即硬件路由表管理裝置可以對各路由信息對應的未命中間隔時間進 行排序,從硬件路由表中刪除未命中間隔時間最長的路由信息。
步驟307,硬件路由表管理裝置從所述硬件路由表中刪除所述路由信息。當硬件路由表管理裝置判斷某條路由信息對應的未命中間隔時間超過預設的未命中間隔時間閾值時,對該路由信息進行老化處理,即將該路由信息從硬件路由表中刪除, 但不對軟件路由表中保存的該路由信息進行處理,以釋放其在硬件路由表中所占用的空 間。本實施例提供了一種硬件路由表管理方法,通過新增的硬件路由表管理裝置對硬 件路由表中的路由信息進行拷貝保存,并實時對硬件路由表進行監控和維護,對長時間未 被訪問的路由信息進行老化處理;本實施例解決了現有技術中硬件路由表容量受限的問 題,在不增加硬件成本且不改變網絡拓撲的前提下,擴展了網絡容量,優化了網絡性能,而 且使得軟硬件資源可以得到充分有效的利用,從而最大限度地節約企業購置網絡設備的成 本。圖4為本發明硬件路由表管理方法實施例三的流程圖,如圖4所示,本實施例提供了一種硬件路由表管理方法,本實施例在上述實施例一的基礎之上,對路由信息的恢復處 理過程進行詳細的說明,具體地,本實施例可以包括如下步驟步驟401,硬件路由表管理裝置將由協議控制裝置向硬件轉發裝置通告的路由信 息拷貝到軟件路由表中,并將所述路由信息設置在硬件路由表中,本步驟可以類似上述步 驟101,此處不再贅述。步驟402,硬件路由表管理裝置獲取所述硬件轉發裝置發送到中央處理器的所述 未命中報文,并提取所述未命中報文的目的IP地址。在硬件轉發裝置進行報文轉發時,若在硬件路由表中查找到該報文對應的路由信 息,則硬件轉發裝置直接將該報文進行硬件線速轉發,否則將該報文發送到中央處理器來 處理。本實施例中將目的IP地址對應的路由信息未包含在所述硬件路由表中的報文稱為 未命中報文。在硬件轉發裝置向中央處理器發送未命中報文時,硬件路由表管理裝置截獲 到該報文,并從該未命中報文中提取其目的IP地址。步驟403,硬件路由表管理裝置判斷在所述軟件路由表中是否能查找未命中報文 的目的IP地址對應的路由信息,如果是,則執行步驟404,否則執行步驟405。硬件路由表管理裝置利用提取到的未命中報文的目的IP地址查找軟件路由表, 判斷在該軟件路由表中是否能查找到該未命中報文的目的IP地址對應的路由信息,如果 是,則執行步驟404,將所述路由信息回寫到所述硬件路由表中,并將所述未命中報文轉發 給所述協議控制裝置;否則執行步驟405,將所述未命中報文轉發給所述協議控制裝置。步驟404,硬件路由表管理裝置將所述路由信息回寫到所述硬件路由表中,并將所 述未命中報文轉發給所述協議控制裝置。當在軟件路由表中查找到未命中報文的目的IP地址對應的路由信息時,表明該 路由信息已被老化掉,則硬件路由表管理裝置將該路由信息回寫到硬件路由表中,以使得 用戶后續可以訪問該路由信息對應的網段地址。由于在完成硬件路由表的路由信息的回寫 之前,無法通過硬件轉發裝置對報文進行轉發,則本實施例中硬件路由表管理裝置還將該 未命中報文轉發給協議控制裝置,由協議控制裝置對該未命中報文進行轉發處理,以免發 生斷流。步驟405,硬件路由表管理裝置將所述未命中報文轉發給所述協議控制裝置。
當在軟件路由表中未查找到未命中報文的目的IP地址對應的路由信息時,表明 協議控制裝置尚未將該路由信息通告給硬件轉發裝置,則硬件路由表管理裝置直接將該未 命中報文轉發給協議控制裝置,由協議控制裝置進行轉發或丟棄處理。本實施例提供了一種硬件路由表管理方法,通過新增的硬件路由表管理裝置對硬 件路由表中的路由信息進行拷貝保存,并實時對硬件路由表進行監控和維護,對已老化的 路由信息進行恢復處理;本實施例解決了現有技術中硬件路由表容量受限的問題,在不增 加硬件成本且不改變網絡拓撲的前提下,擴展了網絡容量,優化了網絡性能,而且使得軟硬 件資源可以得到充分有效的利用,從而最大限度地節約企業購置網絡設備的成本。本領域普通技術人員可以理解實現上述方法實施例的全部或部分步驟可以通過 程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序 在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括R0M、RAM、磁碟或者 光盤等各種可以存儲程序代碼的介質。圖5為本發明硬件路由表管理裝置實施例一的結構示意圖,如圖5所示,本實施例 提供了一種硬件路由表管理裝置,可以具體執行上述方法實施例一中的各個步驟,此處不 再贅述。本實施例提供的硬件路由表管理裝置可以包括拷貝模塊1、老化模塊2和/或恢復 模塊3。其中,拷貝模塊1用于將由協議控制裝置向硬件轉發裝置通告的路由信息拷貝到軟 件路由表中,并將所述路由信息設置在硬件路由表中。老化模塊2用于對所述硬件路由表 進行監控,并根據監控結果對所述硬件路由表中的路由信息進行老化處理。恢復模塊3用 于對所述硬件路由表進行監控,并根據監控結果對所述硬件路由表中的路由信息進行恢復 處理。圖6為本發明硬件路由表管理裝置實施例二的結構示意圖,如圖6所示,本實施例 提供了一種硬件路由表管理裝置,可以具體執行上述方法實施例二或實施例三中的各個步 驟,此處不再贅述。本實施例提供的硬件路由表管理裝置在上述圖5所示的實施例的基礎 之上,其中,老化模塊2可以具體用于當所述硬件路由表的容量達到預設的容量上限時,對 所述硬件路由表中的路由信息進行老化處理。具體地,老化模塊2可以具體包括讀取子模塊21和老化子模塊22。其中,讀取子 模塊21用于定時讀取所述硬件路由表中每條路由信息的命中位信息。老化子模塊22用于 根據獲取的路由信息的命中位信息對所述路由信息進行老化處理。老化子模塊22可以具 體包括判斷單元221、清空單元222、更新單元223和老化單元224。其中,判斷單元221用 于根據獲取的路由信息的命中位信息判斷所述路由信息是否被命中。清空單元222用于當 判斷單元221的判斷結果為所述路由信息被命中時,將所述軟件路由表中所述路由信息對 應的未命中間隔時間設置為0,并清空所述路由信息的命中位。更新單元223用于當判斷單 元221的判斷結果為所述路由信息未命中時,將所述軟件路由表中所述路由信息對應的未 命中間隔時間進行更新。老化單元224用于根據所述路由信息對應的未命中間隔時間對所 述路由信息進行老化處理。更具體地,老化單元224可以具體包括第一老化子單元2241或 第二老化子單元2242。其中,第一老化子單元2241用于當所述路由信息對應的未命中間隔 時間超過預設的未命中間隔時間閾值時,從所述硬件路由表中刪除所述路由信息。第二老 化子單元2242用于從所述硬件路由表中刪除所述未命中間隔時間最長的路由信息。進一步地,本實施例中的恢復模塊3可以具體包括查找子模塊31、回寫子模塊32和轉發子模塊33。其中,查找子模塊31用于在所述軟件路由表中查找未命中報文的目的 IP地址對應的路由信息,所述未命中報文的目的IP地址對應的路由信息未包含在所述硬 件路由表中。回寫子模塊32用于當在所述軟件路由表中查找到所述目的IP地址對應的路 由信息時,將所述路由信息回寫到所述硬件路由表中,并將所述未命中報文轉發給所述協 議控制裝置。轉發子模塊33用于當在所述軟件路由表中未查找到所述目的IP地址對應的 路由信息時,將所述未命中報文轉發給所述協議控制裝置。進一步地,本實施例提供的硬件路由表管理裝置還可以包括獲取模塊4,獲取模塊 4用于在所述在所述軟件路由表中查找未命中報文的目的IP地址對應的路由信息之前,獲 取所述硬件轉發裝置發送到中央處理器的所述未命中報文,并提取所述未命中報文的目的 IP地址。本實施例提供了一種硬件路由表管理裝置,通過設置拷貝模塊、老化模塊和/或 恢復模塊,對硬件路由表中的路由信息進行拷貝保存,并實時對硬件路由表進行監控和維 護,對長時間未被訪問的路由信息進行老化處理,以及對用戶需要訪問的已老化的路由信 息進行恢復處理;本實施例解決了現有技術中硬件路由表容量受限的問題,在不增加硬件 成本且不改變網絡拓撲的前提下,擴展了網絡容量,優化了網絡性能,而且使得軟硬件資源 可以得到充分有效的利用。本實施例還提供了一種通訊設備,該通訊設備可以具體為交換機、路由器等,該通 訊設備可以具體包括協議控制裝置、硬件轉發裝置和硬件路由表管理裝置,所述硬件路由 表管理裝置包括上述圖5或圖6所示的硬件路由表管理裝置。最后應說明的是以上實施例僅用以說明本發明的技術方案,而非對其限制;盡 管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解其依然 可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替 換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精 神和范圍。
權利要求
一種硬件路由表管理方法,其特征在于,包括將由協議控制裝置向硬件轉發裝置通告的路由信息拷貝到軟件路由表中,并將所述路由信息設置在硬件路由表中;對所述硬件路由表進行監控,并根據監控結果對所述硬件路由表中的路由信息進行老化和/或恢復處理。
2.根據權利要求1所述的方法,其特征在于,根據監控結果對所述硬件路由表中的路 由信息進行老化處理包括當所述硬件路由表的容量達到預設的容量上限時,對所述硬件路由表中的路由信息進 行老化處理。
3.根據權利要求1或2所述的方法,其特征在于,對所述硬件路由表中的路由信息進行 老化處理包括定時讀取所述硬件路由表中每條路由信息的命中位信息; 根據獲取的路由信息的命中位信息對所述路由信息進行老化處理。
4.根據權利要求3所述的方法,其特征在于,所述根據獲取的路由信息的命中位信息 對所述路由信息進行老化處理包括根據獲取的路由信息的命中位信息判斷所述路由信息是否被命中; 當判斷結果為所述路由信息被命中時,將所述軟件路由表中所述路由信息對應的未命 中間隔時間設置為0,并清空所述路由信息的命中位;當判斷結果為所述路由信息未命中時,將所述軟件路由表中所述路由信息對應的未命 中間隔時間進行更新;根據所述路由信息對應的未命中間隔時間對所述路由信息進行老化處理。
5.根據權利要求4所述的方法,其特征在于,所述根據所述路由信息對應的未命中間 隔時間對所述路由信息進行老化處理包括當所述路由信息對應的未命中間隔時間超過預設的未命中間隔時間閾值時,從所述硬 件路由表中刪除所述路由信息;或者從所述硬件路由表中刪除所述未命中間隔時間最長的路由信息。
6.根據權利要求1所述的方法,其特征在于,對所述硬件路由表中的路由信息進行恢 復處理包括在所述軟件路由表中查找未命中報文的目的IP地址對應的路由信息,所述未命中報 文的目的IP地址對應的路由信息未包含在所述硬件路由表中;當在所述軟件路由表中查找到所述目的IP地址對應的路由信息時,將所述路由信息 回寫到所述硬件路由表中,并將所述未命中報文轉發給所述協議控制裝置;當在所述軟件路由表中未查找到所述目的IP地址對應的路由信息時,將所述未命中 報文轉發給所述協議控制裝置。
7.根據權利要求6所述的方法,其特征在于,在所述在所述軟件路由表中查找未命中 報文的目的IP地址對應的路由信息之前,還包括獲取所述硬件轉發裝置發送到中央處理器的所述未命中報文,并提取所述未命中報文 的目的IP地址。
8.—種硬件路由表管理裝置,其特征在于,包括拷貝模塊,用于將由協議控制裝置向硬件轉發裝置通告的路由信息拷貝到軟件路由表 中,并將所述路由信息設置在硬件路由表中;老化模塊,用于對所述硬件路由表進行監控,并根據監控結果對所述硬件路由表中的 路由信息進行老化處理;和/或恢復模塊,用于對所述硬件路由表進行監控,并根據監控結果對所述硬件路由表中的 路由信息進行恢復處理。
9.根據權利要求8所述的裝置,其特征在于,所述老化模塊具體用于當所述硬件路由 表的容量達到預設的容量上限時,對所述硬件路由表中的路由信息進行老化處理。
10.根據權利要求8或9所述的裝置,其特征在于,所述老化模塊包括 讀取子模塊,用于定時讀取所述硬件路由表中每條路由信息的命中位信息;老化子模塊,用于根據獲取的路由信息的命中位信息對所述路由信息進行老化處理。
11.根據權利要求10所述的裝置,其特征在于,所述老化子模塊包括判斷單元,用于根據獲取的路由信息的命中位信息判斷所述路由信息是否被命中; 清空單元,用于當所述判斷單元的判斷結果為所述路由信息被命中時,將所述軟件路 由表中所述路由信息對應的未命中間隔時間設置為0,并清空所述路由信息的命中位;更新單元,用于當所述判斷單元的判斷結果為所述路由信息未命中時,將所述軟件路 由表中所述路由信息對應的未命中間隔時間進行更新;老化單元,用于根據所述路由信息對應的未命中間隔時間對所述路由信息進行老化處理。
12.根據權利要求11所述的裝置,其特征在于,所述老化單元包括第一老化子單元,用于當所述路由信息對應的未命中間隔時間超過預設的未命中間隔 時間閾值時,從所述硬件路由表中刪除所述路由信息;或者第二老化子單元,用于從所述硬件路由表中刪除所述未命中間隔時間最長的路由信息。
13.根據權利要求8所述的裝置,其特征在于,所述恢復模塊包括查找子模塊,用于在所述軟件路由表中查找未命中報文的目的IP地址對應的路由信息,所述未命中報文的目的IP地址對應的路由信息未包含在所述硬件路由表中;回寫子模塊,用于當在所述軟件路由表中查找到所述目的IP地址對應的路由信息時,將所述路由信息回寫到所述硬件路由表中,并將所述未命中報文轉發給所述協議控制裝 置;轉發子模塊,用于當在所述軟件路由表中未查找到所述目的IP地址對應的路由信息時,將所述未命中報文轉發給所述協議控制裝置。
14.根據權利要求13所述的裝置,其特征在于,還包括獲取模塊,用于在所述在所述軟件路由表中查找未命中報文的目的IP地址對應的路 由信息之前,獲取所述硬件轉發裝置發送到中央處理器的所述未命中報文,并提取所述未 命中報文的目的IP地址。
15.一種通訊設備,其特征在于,包括協議控制裝置、硬件轉發裝置和硬件路由表管理 裝置,所述硬件路由表管理裝置包括上述權利要求8-14中任一項所述的硬件路由表管理裝置。
全文摘要
本發明提供一種硬件路由表管理方法、裝置和通訊設備,方法包括將由協議控制裝置向硬件轉發裝置通告的路由信息拷貝到軟件路由表中,并將所述路由信息設置在硬件路由表中;對所述硬件路由表進行監控,并根據監控結果對所述硬件路由表中的路由信息進行老化和/或恢復處理。裝置包括拷貝模塊、老化模塊和/或恢復模塊。本發明提供的通訊設備包括協議控制裝置、硬件轉發裝置和硬件路由表管理裝置,所述硬件路由表管理裝置包括上述硬件路由表管理裝置。本發明解決了現有技術中硬件路由表容量受限的問題,在不增加硬件成本且不改變網絡拓撲的前提下,擴展了網絡容量,優化了網絡性能,而且使得軟硬件資源可以得到充分有效的利用。
文檔編號H04L29/06GK101841483SQ20101017230
公開日2010年9月22日 申請日期2010年5月6日 優先權日2010年5月6日
發明者秦本鵬 申請人:北京星網銳捷網絡技術有限公司