網路基礎知識講座十四 OSPF路由協議初步

2021-04-12 11:48:51 字數 1914 閱讀 8404

為了解ospf的設計需求,我們來討論一下ospf的工作原理。下面先解釋一些相關術語:

* 路由器id:ospf協議中每台路由器都被賦予乙個唯一的32位無符號整數,這就是路由器id,它是路由器上的最高ip位址,可以通過為所選路由器的loopback(環迴)介面設定乙個更高的位址來加大這個值。

* 相鄰路由器:兩台通過一條普通鏈路相連的可以對話的路由器。

* 相鄰關係:兩台相鄰路由器的雙向關係。是鄰居不一定就有相鄰關係。

* lsa:鏈路狀態廣播資料報(lsa)被傳送給相鄰路由器;它描述了指定鏈路內的路由資訊。

* hello協議:網路上的路由器通過該協議確定其相鄰路由器並生成lsa。

* 區域:一種分級制度。每個區域內有一組路由器,它們與其它路由器交換lsa。每個區域都限制自己區域的lsa,並鼓勵彙總路由。

我們已經說過,ospf是一種鏈路狀態路由協議,你可以把它想象成網路的分布式地圖。為了取得這些分布式資訊,ospf要做三件事。

首先,當一台執行ospf協議的路由器加入網路時,它會傳送hello資料報,以便找到它的相鄰路由器,並選擇一台指定路由器(dr)。hello資料報中包含鏈路狀態資訊,以及相鄰路由器列表。向相鄰路由器傳送hello資料報其作用就是做出ack(命令正確應答),同時證明路由器之間的通訊是雙向的。ospf對於第2層拓撲判斷迅速:如果是點對點鏈路,它知道了解的情況已經足夠,並且認為該鏈路「準備就緒」;而如果是在廣播鏈路上,路由器就必須等候選擇,然後確定鏈路是否可行。

在選舉dr的過程中,如果有priority id,你可以選擇出最強壯的路由器作為dr,否則就是擁有最高ip位址的路由器獲勝。dr和備份dr(bdr)角色的關鍵之處在於它們是生成lsa的路由器,它們必須與其子網內的其它路由器進行資料庫交換,所以,非指定路由器都與dr建立相鄰關係。dr/dbr的作用就是保證協議運作的可擴充套件性。確保所有路由器都有相同資訊的唯一辦法是讓它們的資料庫同步。例如你現在已有21臺路由器,並且想加入1臺,如果沒有dr和bdr,你就必須建立21個新的相鄰關係。並與每台路由器進行同步,而如果你把資料庫統一放在dr上(萬一需要可以建立備份),那麼增加更多的路由器是輕而易舉的事,各路由器只需要和dr同步就可以了。

交換hello資料報之後進行資料庫交換是建立相鄰關係的步驟之一,而這一步非常重要。如果資料庫不同步,就會導致路由環路、黑洞和其它危險。建立相鄰關係的第三步是reliable flooding(即可靠的lsa傳送、資料庫更新直至網路穩定的過程),或稱lsa交換。 

abr區域邊界路由器。位於區域零和其它區域中。

dr,bdr

指定路由器。儲存子網資料庫,並向同一網路中的其它路由器傳送和接收更新資料(通過多點傳送)。

asbr

自治系統邊界路由器。很獨特也令人困惑的一種路由器。asbr連線乙個或多個as,並在as之間交換路由資訊。asbr的作用是把來自另乙個as的路由重新分配到自己的as中。

重新分配的概念終於出現了:假如我們有一台路由器(內部路由器,而不是主幹路由器br),並且想把它連線到我們並不控制的新網路上。連線之後,我們有幾種選擇:一是採用非igp(內部閘道器協議)路由協議,如bgp(邊界閘道器協議)來交換路由資訊。二是認為彙總路由就已不錯,並在這台路由器中加入到達新網路的靜態路由中。任何使用這條路由到達此路由器的資料報都會被發向新網路,但是ospf並不知道它的存在。為此,我們雖然把這些路由資訊「重新分配」給ospf。我們並不想把200k以上的bgp路由信匯入ospf,但是如果選擇靜態路由,就需要將新加入的靜態路由資訊發布到整個內網,以便我們自治系統裡的每一台路由器都能了解到新網路的路由。一旦告知內部路由器要它向ospf重新發布靜態路由資訊,它就成為一台asbr,並且整個網路都可以連線到新網路上。

小結

ospf是一種可以快速收斂的鏈路狀態內部閘道器協議(igp),使用者達數百萬。

ospf使相鄰路由器建立相鄰關係,並且通過dr和bdr傳送lsa來分享資訊。

ospf中的區域用於限制lsa並總結路由資訊,每台路由器均與區域零(主幹區域)相連。

網路基礎知識講座之四 理解資料鏈路層

比ip和路由更重要的是什麼?當網路2層出現故障的時候,鏈路層的知識顯得更重要。許多人都沒有掌握構建富有彈性的2層網路必須具備的生成樹協議的知識。當一台交換機出現問題時,除非主機直接連線到這台交換機。否則不應該影響其它人的網路連線。在我們深入介紹生成樹協議之前,你必須要理解2層內部的工作原理。2層是資...

網路基礎知識講座之四 理解資料鏈路層

比ip和路由更重要的是什麼?當網路2層出現故障的時候,鏈路層的知識顯得更重要。許多人都沒有掌握構建富有彈性的2層網路必須具備的生成樹協議的知識。當一台交換機出現問題時,除非主機直接連線到這台交換機。否則不應該影響其它人的網路連線。在我們深入介紹生成樹協議之前,你必須要理解2層內部的工作原理。2層是資...

網路基礎知識講座之十一 網際網路的管理架構

網際網路是乙個混亂的和難以駕馭的地方。當人們談論網際網路治理的話題時,這個話題通常是指ip位址分配和網域名稱管理,而不是指新聞檢查和控制。從網路部署的角度說,網際網路實際上是管理很嚴格的。本期網路講座將解釋一些網際網路管理組織的縮寫字並說明這個組織的真正目的是什麼。icann是網際網路名稱與數字位址...