OSPF的一些基本概念

OSPF的一些基本概念
2010年07月28日
  

OSPF的一些基本概念
  OSPF簡介
  4.1.1 OSPF概述
  開放最短路徑優先協議OSPF(Open Shortest Path First)是IETF組織開發的一個基於鏈路狀態的內部網關協議。目前使用的是版本2(RFC2328),其特性如下:
  l 適應範圍――支持各種規模的網絡,最多可支持幾百臺路由器。
  l 快速收斂――在網絡的拓撲結構發生變化後立即發送更新報文,使這一變化在自治系統中同步。
  l 無自環――由於OSPF根據收集到的鏈路狀態用最短路徑樹算法計算路由,從算法本身保證了不會生成自環路由。
  l 區域劃分――允許自治系統的網絡被劃分成區域來管理,區域間傳送的路由信息被進一步抽象,從而減少了佔用的網絡帶寬。
  l 等值路由――支持到同一目的地址的多條等值路由。
  l 路由分級――使用4類不同的路由,按優先順序來說分別是:區域內路由、區域間路由、第一類外部路由、第二類外部路由。
  l 支持驗證――支持基於接口的報文驗證以保證路由計算的安全性。
  l 組播發送――協議報文支持以組播形式發送。
  4.1.2 OSPF協議基本原理
  在不考慮區域劃分的情況下,OSPF協議的路由計算過程可簡單描述如下:
  l 每個支持OSPF協議的路由器都維護着一份描述整個自治系統拓撲結構的鏈路狀態數據庫LSDB(Link State Database)。每臺路由器根據自己周圍的網絡拓撲結構生成鏈路狀態廣播LSA(Link State Advertisement),通過相互之間發送協議報文將LSA發送給網絡中其它路由器。這樣每臺路由器都收到了其它路由器的LSA,所有的LSA放在 一起便組成了鏈路狀態數據庫。
  l 由於LSA是對路由器周圍網絡拓撲結構的描述,那麼LSDB則是對整個網絡的拓撲結構的描述。路由器很容易將LSDB轉換成一張帶權的有向圖,這張圖便是對整個網絡拓撲結構的真實反映。顯然,各個路由器得到的是一張完全相同的圖。
  l 每臺路由器都使用SPF算法計算出一棵以自己爲根的最短路徑樹,這棵樹給出了到自治系統中各節點的路由,外部路由信息爲葉子節點,外部路由可由廣播它的路 由器進行標記以記錄關於自治系統的額外信息。顯然,各個路由器各自得到的路由表是不同的。
  此外,爲使每臺路由器能將本地狀態信息(如可用接口信息、可達鄰居信息等)廣播到整個自治系統中,在路由器之間要建立多個鄰接關係,這使得任何一臺 路由器的路由變化都會導致多次傳遞,既沒有必要,也浪費了寶貴的帶寬資源。爲解決這一問題,OSPF協議定義了“指定路由器”DR(Designated Router),所有路由器都只將信息發送給DR,由DR將網絡鏈路狀態廣播出去。這樣就減少了多址訪問網絡上各路由器之間鄰接關係的數量。
  OSPF協議支持基於接口的報文驗證以保證路由計算的安全性;並使用IP多播方式發送和接收報文(224.0.0.5和224.0.0.6)。
  4.1.3 OSPF的協議報文
  OSPF有五種報文類型:
  l HELLO報文(Hello Packet):
  最常用的一種報文,週期性的發送給本路由器的鄰居。內容包括一些定時器的數值、DR、BDR(Backup Designated Router)以及自己已知的鄰居。
  l DD報文(Database Description Packet):
  兩臺路由器進行數據庫同步時,用DD報文來描述自己的LSDB,內容包括LSDB中每一條LSA的摘要(摘要是指LSA的HEAD,通過該HEAD 可以唯一標識一條LSA)。這樣做是爲了減少路由器之間傳遞信息的量,因爲LSA的HEAD只佔一條LSA的整個數據量的一小部分,根據HEAD,對端路 由器就可以判斷出是否已有這條LSA。
  l LSR報文(Link State Request Packet):
  兩臺路由器互相交換過DD報文之後,知道對端的路由器有哪些LSA是本地的LSDB所缺少的,這時需要發送LSR報文向對方請求所需的LSA。內容包括所需要的LSA的摘要。
  l LSU報文(Link State Update Packet):
  用來向對端路由器發送所需要的LSA,內容是多條LSA(全部內容)的集合。
  l LSAck報文(Link State Acknowledgment Packet)
  用來對接收到的LSU報文進行確認。內容是需要確認的LSA的HEAD(一個報文可對多個LSA進行確認)。
  4.1.4 OSPF的LSA類型
  1. 五類基本的LSA
  根據前面幾節的介紹可以瞭解,鏈路狀態廣播報文LSA是OSPF協議計算和維護路由信息的主要來源。在RFC2328中定義了五類LSA,描述如下:
  l Router-LSAs:第一類LSA(Type-1),由每個路由器生成,描述本路由器的鏈路狀態和花費,只在路由器所處區域內傳播。
  l Network-LSAs:第二類LSA(Type-2),由廣播網絡和NBMA網絡的DR生成,描述本網段的鏈路狀態,只在DR所處區域內傳播。
  l Summary-LSAs:包含第三類LSA和第四類LSA(Type-3,Type-4),由區域邊界路由器ABR生成,在與該LSA相關的區域內傳 播。每一條Summary-LSA描述一條到達本自治系統的、其它區域的某一目的地的路由(即區域間路由:inter-area route)。Type-3 Summary-LSAs描述去往網絡的路由(目的地爲網段),Type-4 Summary-LSAs描述去往自治系統邊界路由器ASBR的路由。
  l AS-external-LSAs:第五類LSA(Type-5),也可以寫成ASE LSA,由自治系統邊界路由器ASBR生成,描述到達其它AS的路由,傳播到整個AS(Stub區域除外)。AS的缺省路由也可以用AS- external-LSAs來描述。
  2. 第七類LSA
  在RFC1587(OSPF NSSA Option)中增加了一類新的LSA:Type-7 LSAs。
  根據RFC1587的描述,Type-7 LSAs與Type-5 LSAs主要有以下兩點區別:
  l Type-7 LSAs在NSSA區域(Not-So-Stubby Area)內產生和發佈;但NSSA區域內不會產生或發佈Type-5 LSAs。
  l Type-7 LSAs只能在一個NSSA內發佈,當到達區域邊界路由器ABR時,ABR可以選擇將Type-7 LSAs中的部分路由信息轉換成Type-5 LSAs發佈,Type-7 LSAs不直接發佈到其它區域或骨幹區域。
  4.1.5 與OSPF協議相關的基本概念
  1. 路由器ID號
  一臺路由器如果要運行OSPF協議,必須存在Router ID。如果沒有配置ID號,系統會從當前接口的IP地址中自動選一個作爲路由器的ID號,選擇方式如下:如果有LoopBack接口地址,就選IP地址數 值最大的LoopBack地址;如果沒有配置LoopBack接口地址,就選IP地址數值最大的物理接口地址。
  2. DR和BDR
  l 指定路由器DR(Designated Router)
  在多路訪問網絡中,如果路由器之間兩兩建立鄰接關係,會導致在路由交換時同一個LSA在網絡內部被多次重複傳遞,浪費了寶貴的帶寬資源。爲了解決這 一問題,OSPF協議規定,在多路訪問網絡中必須選舉DR,網絡中的路由器只和DR(以及後面提到的BDR)建立鄰接關係並交換路由,兩臺非DR和BDR 路由器之間不建立鄰接關係,也不交換路由信息。
  哪一臺路由器會成爲本網段內的DR並不是人爲指定的,而是由本網段中所有的路由器共同選舉出來的。
  l 備份指定路由器BDR(Backup Designated Router)
  如果DR由於某種故障而失效,這時必須重新選舉DR,並與之同步。這需要較長的時間,在這段時間內,路由計算是不正確的。爲了能夠縮短這個過 程,OSPF提出了BDR的概念。BDR實際上是對DR的一個備份,在選舉DR的同時也選舉出BDR,BDR也和本網段內的所有路由器建立鄰接關係並交換 路由信息。當DR失效後,BDR會立即成爲DR。
  3. 區域(Area)
  隨着網絡規模日益擴大,當一個巨型網絡中的路由器都運行OSPF路由協議時,路由器數量的增多會導致LSDB非常龐大,佔用大量的存儲空間,並使得運行 SPF算法的複雜度增加,導致CPU負擔很重;並且,網絡規模增大之後,拓撲結構發生變化的概率也增大,網絡會經常處於“動盪”之中,造成網絡中會有大量 的OSPF協議報文在傳遞,降低了網絡的帶寬利用率。而且每一次變化都會導致網絡中所有的路由器重新進行路由計算。
  OSPF協議通過將自治系統劃分成不同的區域(Area)來解決上述問題。區域是在邏輯上將路由器劃分爲不同的組。區域的邊界是路由器,這樣會有一 些路由器屬於不同的區域,連接骨幹區域和非骨幹區域的路由器稱作區域邊界路由器――ABR,ABR與骨幹區域之間既可以是物理連接,也可以是邏輯上的連 接。
  4. 骨幹區域和虛連接
  l 骨幹區域(Backbone Area)
  OSPF劃分區域之後,並非所有的區域都是平等的關係。其中有一個區域是與衆不同的,它的區域號(Area ID)是0,通常被稱爲骨幹區域。
  l 虛連接(Virtual Link)
  由於所有區域都必須與骨幹區域連通,特別引入了虛連接的概念,使那些物理上和骨幹區域分離的區域仍可在邏輯上保持和骨幹區域的連通性。
  5. 路由聚合
  AS被劃分成不同的區域,每一個區域通過OSPF邊界路由器(ABR)相連,區域間可以通過路由匯聚來減少路由信息,減小路由表的規模,提高路由器的運算速度。ABR在計算出一個區域的區域內路由之後,根據聚合相關設置,將其中多條OSPF路由聚合成一條發送到區域之外。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章