IP層路由決策

2021-04-17 10:49:11 字數 2306 閱讀 9261

ip層路由決策一般由路由守護程式來實現,通常這是乙個使用者程序.路由守護程式大約每30秒就更新一次路由表,當收到icmp重定向時,路由表也會被更新.

ip選路原理

1.搜尋匹配的主機位址

2.搜尋匹配的網路位址

3.搜尋預設表項(預設表項一般被設定為乙個網路表項,其網路號為0)

路由表

用netstat -rn命令可以搜尋主機sun的路由表

sun % netstat -rn

routing tables

destination               gateway                       flags            refcnt     use                inte***ce

140.252.13.65         140.252.13.35             ugh              0               171               le0

127.0.0.1                  127.0.0.1                      uh                  1               766               lo0

140.252.1.183         140.252.1.29               uh                  0               0                   sl0

default                       140.252.1.183            ug                  1                2955            sl0

140.252.13.32         140.252.13.33             u                     8               99551          le0

其中,destination 代表目的位址,gateway 代表閘道器,flags代表路由器的不同標誌,refcnt 列出正在使用路由的活動程序個數, use代表通過該路由器傳送的分組數, inte***ce代表本地介面的名字.

五種不同的flags標誌

1.u  該路由可以使用

2.g  該路由是到乙個閘道器(路由器)

3.h  該路由是到乙個主機

4.d  該路由是由重定向報文建立的

5.m  該路由已經被重定向報文修改

對該路由表的分析

第一行是特定主機路由表項.140.252.13.65目的位址,閘道器把分組**給140.252.13.35(間接閘道器).

第二行是環迴介面,h標誌說明目的位址(127.0.0.1)是乙個主機位址,而不是乙個網路位址.沒有g標誌,說明是乙個直接路由,閘道器列給出的是外出的位址.

第三行是直接到達主機的位址,對應於點到點鏈路.閘道器位址為外出的本地介面的ip位址(140.252.1.29).

第四行是預設路由表項,到達另乙個網路的間接路由.閘道器位址是另一端的路由器ip位址,而不是本地ip位址.

第五行的目的位址是網路位址,其主機位址為0,閘道器位址為外出ip位址.

初始化路由表

1.在系統引導時顯式地使用route初始化時用命令.這種方法通常用來設定預設路由表項.

2.執行路由守護程式或用較新的路由器發現協議.

3.利用icmp路由器通告和請求報文.主機在引導以後通過廣播或多播傳送乙份路由請求報文,一台或多台路由器響應路由請求報文.路由器也定期是廣播或多皤傳送它們的路由器通告報文,允許每個監聽的主機更新它們的路由表.

在主機引導期間會傳送三份路由器請求報文,每三秒鐘傳送一次.一旦收到有效的通告報文,就停止傳送請求報文.同時主機也監聽來自路由器的通告報文,以隨時更新自己的預設路由.

路由器隨機地傳送通告報文,每兩次通告之間間隔450-600秒,其生命週期是30分鐘.預設路由器每10分鐘就傳送乙份通告報文,文章這說明預設表項是不會超時的.

icmp重定向差錯

當ip資料報應該被傳送到另乙個路由器時,收到資料報的路由器就要傳送icmp重定向差錯報文給傳送ip資料報的傳送端.icmp重定向一般用來給具有很少選路資訊的的主機建立更完善的路由表.主機啟動時路由表中可以只有乙個預設表項,通過icmp重定向不斷的更新路由表,從而使主機的路由表隨著網路拓撲結構而變化.

1.假設主機傳送乙份資料報給預設路由器r1.

2.預設路由器檢查它的路由表,發現路由器r2是傳送該資料報的下一站.當它把資料報傳送給r2時,r1檢測到它正在傳送的介面與資料報到達的介面是相同的,這樣就給路由器傳送重定向報文給原始傳送端提供了線索.

3.r1傳送乙份icmp重定向報文給主機,告訴它以後把資料報傳送給r2而不是r1.

BGP路由決策過程

1.如果下一跳無法到達,則不考慮 2.首選具有最大weight的路由 3.如果路由具有相同weight,則使用最高本地優先順序的路由 4.如果具有相同本地優先順序,則首選來自該路由器的bgp路由 5.如果沒有來自該路由器上的bgp路由,則選擇as長度最短的路由 6.如果所有的路由具有相同的as長度,...

網路層IP路由的負載均衡實現思路

equalize補丁可以解決路由的負載均衡問題,然而其實現的代價卻是禁用了均衡路由的快取,每次都要查詢路由表,查詢路由表的開銷抵消了一部分負載均衡帶來的效能提公升。因此最好的方法就是既實現了路由的負載均衡,又實現了路由快取,實現思路如下 為每一系列需要在其間做負載均衡的路由準備乙個均衡鍊錶t,新增路...

網路層IP路由的負載均衡實現思路

equalize補丁可以解決路由的負載均衡問題,然而其實現的代價卻是禁用了均衡路由的快取,每次都要查詢路由表,查詢路由表的開銷抵消了一部分負載均衡帶來的效能提公升。因此最好的方法就是既實現了路由的負載均衡,又實現了路由快取,實現思路如下 為每一系列需要在其間做負載均衡的路由準備乙個均衡鍊錶t,新增路...