這兩天把TCP/IP的ospf稍微詳細的看了一遍。在這里總結一下。以便以后復習
總結的都是用我自己的語言總結,很多地方可能不太恰當。請多指正
一、ospf的基本知識
ospf
開放最短路徑優(yōu)先協(xié)議
鏈路狀態(tài)類路由協(xié)議
屬于3層,沒有使用上層的tcp或者udp,所以沒有確認機制。但是使用自己的lsack來確認更新
五個包,hello,DBD,LSR,LSU,LSACK。
二、spf算法
一句話簡短的概括:節(jié)點以自己為根節(jié)點,計算確定到目標節(jié)點的最短路徑。
路由器創(chuàng)建三個庫。用來運行spf算法。
1、樹數(shù)據(jù)庫:通過向數(shù)據(jù)庫中添加分支實現(xiàn)向最短路徑樹中添加鏈路(分支),最終這個庫描述最短的路徑
2、候選對象數(shù)據(jù)庫:按順序從鏈路數(shù)狀態(tài)數(shù)據(jù)庫向該庫中復制鏈路,作為向樹中添加的候選對象
3、鏈路狀態(tài)數(shù)據(jù)庫:這個數(shù)據(jù)庫中,存有所有的鏈路
spf運行過程:
路由器以自己為根節(jié)點,先從鏈路狀態(tài)數(shù)據(jù)庫中,取出離自己最近的幾臺(他的鄰居)路由器,將他們放到候選對象數(shù)據(jù)庫,在候選對象數(shù)據(jù)庫中,計算到他們的代價,把最小的代價的“一條”鏈路放到樹數(shù)據(jù)庫中。這里之所以說是“一條”,假如說上面候選數(shù)據(jù)庫中有三條鏈路,但是他們前往的是不同的目標,但是只放“一條”,然后再重復查找候選數(shù)據(jù)庫,再找”一條“最短的候選對象,放到樹數(shù)據(jù)庫。當在候選數(shù)據(jù)庫中有兩條到同一目標的候選對象,將花費最小的放到樹數(shù)據(jù)庫,其他的刪除。
然后再以根節(jié)點最近的那幾臺路由器(上一步中假設的三臺路由器)為跟節(jié)點,重復上面的步驟。
這樣一級一級的擴散,感覺上類似于RSTP那樣,一級一級的擴散。直到最后計算完成。
在SPF算法計算完成后:
候選對象數(shù)據(jù)庫應該是空的。
鏈路狀態(tài)數(shù)據(jù)庫不變,里面依然有所有的路徑
樹數(shù)據(jù)庫中應該有到達所有目標的最佳路徑。(我認為就是路由表中的路徑了)
三、區(qū)域的概念、
在距離矢量路由協(xié)議中,路由更新是擴散在整個AS中的。這樣浪費了很多的帶寬,白白消耗了資源(如cpu、內存),廣播(組播)范圍很大。而且沒有層次結構。不適合大型的網絡拓撲。
這些缺點,在ospf中都得到了克服。因為ospf引入了區(qū)域的概念。
在一個ospf區(qū)域一般情況是不希望找過50臺路由器。但是這不是絕對的,因為區(qū)域內路由器的數(shù)量和路由器的性能有很大的關系。比如,路由器需有用spf算法計算路徑,CPU的性能就比較重要,路由器數(shù)很多,要求的cpu就比較高。內存中存著ospf中的數(shù)據(jù)庫,如果路由器很多,對內存的要求也比較大
注:在這里再說一下,在一個區(qū)域內,是路由器是根據(jù)LSDB中的信息,確定路徑。但是在區(qū)域間,是依賴中間路由器來確定相應的路徑。這就不是鏈路狀態(tài)了,而是距離矢量了。
四、ospf主要的四類區(qū)域
1、多路訪問區(qū)域:多個路由器接在同一個交換機上。
2、點到點:感覺上,應該是兩臺路由器通過串行線鏈接一起。
3、虛鏈路:默認所有的普通區(qū)域都要和骨干區(qū)域(area
0)相鏈,如果有個別區(qū)域因為沒規(guī)劃好,沒有辦法和骨干區(qū)域相連,就要建立需鏈路
4、NBMA:非廣播多路訪問。感覺上一般是應用的幀中繼環(huán)境上。
5、點到多點:屬于NBMA中一個特殊的情況
五、路由器端口的角色、鄰接關系、鄰居關系
這里主要說多路訪問環(huán)境
1、多路訪問環(huán)境:
路由器端口會選舉DR、BDR。DR的職責是同步該多路訪問環(huán)境中的鏈路狀態(tài)數(shù)據(jù)庫(下面稱LSDB),這個在后面還會細說。BDR是在DR的備份,當DR掛掉的時候,BDR直接接管DR的工作。DRother會去像DR同步LSDB
這里需要強調幾點:a、DR,BDR是基于端口的。為什么這么說,假如一臺路由器跨越兩個區(qū)域(ABR),兩個區(qū)域的端口是獨立選舉DR的。
b、DR的選舉規(guī)則,是先比較優(yōu)先級,cisco默認為1,越大越優(yōu)先。如果優(yōu)先級為0,那么相當于主動放棄DR選舉的權利。當優(yōu)先級相等,那么再比較routeID,越大越優(yōu)先。routeID的選舉規(guī)則為,手動指定>環(huán)回接口>IP最大的活動的物理接口。
|