隨著我國路由行業的發展,同時也推動了路由技術的更新升級,這裡我們主要分析了路由域和路由表信息的知識點,前面講到過,FIB里的最基本單位是路由信息(struct fib_info),它保存了關於路由的下一跳信息,本地接口的IP位址等。
一個路由項對應一個路由別名(struct fib_alias),路由別名由路由信息再加上tos,type,scope,state等信息組成。目的地址相同的路由項的路由別名共享一個路由節點(struct fib_node),路由節點的作用就是用於管理路由別名。下面再看看路由域struct fib_zone,下面是其定義:
fz_order和fz_mask記錄的是該路由域包含的路由節點的目的地址的長度和子網掩碼,比如子網單播路由172.16.48.0的fz_order就是24,fz_mask就是255.255.255.0,所有fz_order相同的路由節點都存放在同一個路由域中,fz_hash就是用於存放路由節點的哈希表,哈希表的大小由fz_divisor記錄,fz_hashmask為哈希表掩碼,總是fz_divisor-1,fz_nent記錄該域中當前含有的路由節點的數量。
fz_divisor的初始值一般總為16,當哈希表fz_hash不夠大時(fz_nent>fz_divisor*2),需要擴大哈希表。因為在IP協定中,目的地址的最大長度為32,所以,需要有33個路由域(0-32),33個路由域組織在一起,組成一個路由哈希表struct fn_hash。
fn_zone_list是路由域的鍊表,把fn_zones數組中所有的路由域按目的地址從大到小組織成鍊表放在一起。當我們需要查找一個路由節點的時候,首先根據目的地址長度Z找到路由域fn_hash->fn_zones[Z],然後再根據哈希算法在路由域的fz_hash中找到一個鍊表,再遍歷這個鍊表即可找到需要的路由節點。
tb_id是路由表信息的標識符,id為RT_TABLE_MAIN和RT_TABLE_LOCAL的兩張路由表是核心定義的,RT_TBALE_LOCAL稱為本地路由表,本地接口地址,廣播地址,已及NAT地址都放在這個表。該路由表信息由系統自動維護,管理員不能直接修改。RT_TABLE_MAIN稱為主路由表,如果沒有指明路由所屬的表,所有的路由都默認都放在這個表里。
tb_data即為路由哈希表,存放著33個路由域(大部分時間,大部分路由域都是空的)。每個路由表信息的路由哈希表都是獨立的,互不相干的。將由路由策略來決定某次路由查詢使用那個路由表信息的路由哈希表。其它是路由表信息提供的一些操作路由哈希表的方法,包括查詢一條路由,插入,刪除,刷新路由等。
全局變數fib_tables是一個路由表信息的數組,只存在於系統支持策略路由的情況下,共有256項,所以,系統最多可以建立256張路由表。至此,路由表,路由哈希表,路由域,路由節點,路由別名,路由信息的概念都已介紹完畢,要讓路由表信息能真正工作起來,還需要路由規則來幫助決定在具體情況下使用哪一張路由表。
相關詞條
-
路由
工作在OSI參考模型第三層——網路層的數據包轉發設備。路由器通過轉發數據包來實現網路互連。雖然路由器可以支持多種協定(如TCP/IP、IPX/SPX、A...
路由的定義 路由的組成 路由算法 算法類型 設計目標 -
路由技術
有關路由技術主要是指路由選擇算法。網際網路的路由選擇協定的特點及分類。其中,路由選擇算法可以分為靜態路由選擇算法和動態路由選擇算法。網際網路的路由選擇協定的...
路由選擇算法概述 路由協定 RIP路由表 OSPF協定 EGP協定 -
路由算法
路由算法,又名選路算法,可以根據多個特性來加以區分。算法的目的是找到一條從源路由器到目的路由器的“好”路徑(即具有最低費用的路徑)。
概述 主要目的 設計目標 技術要素 區分要素 -
域間路由
當前Internet被劃分為多個自治系統,自治系統是一個實體,一般是指隸屬於一個管理機構的路由器集合。每個自治系統可以制定自己的路由策略。自治系統內部的...
-
域間路由選擇協定
開放系統互連(OSI)環境由包括端系統(用戶計算機或主機)和路由器的管理域組成。一個管理域通常使用相同的協定和由同一個中心機構管理。所有在域內的路由選擇...
結構組成 選擇步驟 選擇協定 相關條目 -
路由[網路工程術語]
路由(routing)是指分組從源到目的地時,決定端到端路徑的網路範圍的進程 。路由工作在OSI參考模型第三層——網路層的數據包轉發設備。路由器通過轉發...
概念 原理算法 設計目標 算法類型 度量標準 -
無類域間路由
CIDR(無類別域間路由,Classless Inter-Domain Routing)是一個在Internet上創建附加地址的方法,這些地址提供給服務...
基本信息 基本思想 如何工作 基礎實例 -
路由協定
路由器提供了異構網互聯的機制,實現將一個網路的數據包傳送到另一個網路。而路由就是指導IP數據包傳送的路徑信息。路由協定就是在路由指導IP數據包傳送過程中...
作用 常用分析 視頻教程 -
動態路由協定
動態路由協定通過路由信息的交換生成並維護轉發引擎所需的路由表。當網路拓撲結構改變時動態路由協定可以自動更新路由表,並負責決定數據傳輸最佳路徑。 在動態路...
作用 優缺點 分類 性能指標 常見種類簡介