[討論] OSPF part1 -xxu
開放式最短路徑優先(英文Open Shortest Path First,OSPF)是對鏈路狀態路由協議的
一種實現,隸屬內部網關協議(IGP),故運作於自治系統內部。著名的迪克斯加演算法
(Dijkstra)被用來計算最短路徑樹。它使用「代價(Cost)」作為路由度量。鏈路狀態
資料庫(LSDB)用來保存當前網路拓撲結構,它在同一區域中的所有路由器上是相同的。
OSPF分為OSPFv2和OSPFv3兩個版本,其中OSPFv2用在IPv4網路,OSPFv3用在IPv6網路。
OSPFv2是由RFC 2328定義的,OSPFv3是由RFC 5340定義的。
OSPF協議是大中型網路上使用最為廣泛的IGP(Interior Gateway Protocol)協議。節點
在建立鄰接,接受鏈路狀態通告(Link-state Advertisement,LSA)時,可以通過MD5或
者明文進行安全驗證。
OSPF提出了「區域(Area)」的概念,一個網路可以由單一區域或者多個區域組成。其中
,一個特別的區域被稱為骨幹區域(Backbone Area),該區域是整個OSPF網路的核心區
域,並且所有其他的區域都與之直接連接。所有的內部路由都通過骨幹區域傳遞到其他非
骨幹區域。所有的區域都必須直接連接到骨幹區域,如果不能建立直接連接,那麼可以通
過虛擬鏈路(Virtual-link)和骨幹區域建立虛擬連接。
同一個廣播域(Broadcast Domain)的路由器或者一個點對點(Point To Point)連接的
兩端的路由器,在發現彼此的時候,建立鄰接(Adjacencies)[1]。多路訪問網路以及非
廣播多路訪問網路的路由器會選舉指定路由器(Designated Router, DR)和備份指定路
由器(Backup Designated Router, BDR),DR和BDR作為網路的中心負責路由器之間的
信息交換從而降低了網路中的信息流量。OSPF協議同時使用單播(Unicast)和組播
(Multicast)來發送Hello包和鏈路狀態更新(Link State Updates),使用的組播地
址為224.0.0.5和224.0.0.6。與RIP和BGP不同的是,OSPF協議不使用TCP或者UDP協議而
是承載在IP協議之上,IP協議號為89,工作在OSI模型的傳輸層。
區域
一個多區域OSPF網路,注意所有的非骨幹區域都和骨幹區域直接相連,並且R2和R3屬於多
個區域。一個OSPF網路被分割成多個區域。區域將網路中的路由器在邏輯上分組並以區域
為單位向網路的其餘部分發送匯總路由信息。區域編號由一個長度為32 bits的欄位所定
義,區域編號有兩種表示方法,一種為點分十進制(如Area 1.1.1.1,寫法規則同IPv4地
址);另外一種為十進制數字格式(如Area 1,注意Area 1不等於Area 1.1.1.1),通常
使用十進制數字格式對區域進行編號。
區域是以介面(Interface)為單位來劃分的,所以一台多介面路由器可能屬於多個區域
。相同區域內的所有路由器都維護一份相同的鏈路狀態資料庫(LSDB),如果一台路由
器屬於多個區域,那麼它將為每一個區域維護一份LSDB。 將一個網路劃分為多個區域有
以下優點:
某一區域內的路由器只用維護該區域的鏈路狀態資料庫,而不用維護整個OSPF網路的鏈
路狀態資料庫。
將某一區域網路拓撲變化的影響限制在該區域內,不會影響到整個OSPF網路,從而減小
SPF計算的頻率。
將鏈路狀態通告(LSA)的洪泛限制在本區域內,從而降低OSPF協議產生的數據量。
劃分區域可以對網路進行層次化結構設計。
OSPF有多種區域類型,其中定義了幾種特殊的區域:
骨幹區域
骨幹區域(Backbone Area)也即Area 0,是整個OSPF域的核心區域。所有其他非骨幹
區域必須和骨幹區域直接相連。骨幹區域的功能是在不同的非骨幹區域之間分發路由
信息。
末梢區域
末梢區域(Stub Area)是一個不允許AS外部路由通告(AS External LSA,即類型5
LSA)在其內部進行洪泛擴散的區域。末梢區域的ABR會通告一條默認路由
(default route)到該區域內所有路由器,任何發往AS外部網路的數據流都將依據默
認路由來轉發。
非純末梢區域
非純末梢區域(Not-So-Stubby Area,NSSA)允許引入AS外部路由並且擴散到其他區
域,但是NSSA仍舊不允許其他區域通告的AS外部路由進入該區域。為了使NSSA能夠引
入AS外部路由,OSPF定義了新的LSA類型,即NSSA External LSA(類型7 LSA)。
NSSA ASBR將產生類型7 LSA,並在NSSA區域內洪泛。NSSA ABR將會把類型7 LSA轉換成
5類LSA,並洪泛到其他區域。
完全末梢區域
完全末梢區域(Totally Stubby Areas)是Cisco私有的一種區域類型。完全末梢區
域不僅不允許AS外部路由通告在其內部洪泛,還不允許區域間匯總路由(Network
Summary LSA ,即類3 LSA)在其內部洪泛。同末梢區域一樣,完全末梢區域ABR也
會向該區域內所有路由器通告一條默認路由,任何發往其他區域以及AS外部網路的
數據流都將依據默認路由來轉發。將區域設置為完全末梢區域可以顯著的降低路由
表條目的數量。
完全非純末梢區域
完全非純末梢區域(NSSA Totally Stubby Area )也是Cisco私有的區域類型,該
種區域除了擁有和NSSA相同的特性外,還不允許類型3 LSA在該區域內部洪泛。完
全非純末梢區域ABR也會向該區域內所有路由器通告一條默認路由。將區域設置為完
全非純末梢區域也會顯著的降低路由表條目的數量。
------------
資料來源
http://zh.wikipedia.org/zh-tw/%E5%BC%80%E6%94%BE%E5%BC%8F%E6%9C%80%E7%9F%AD%E8%B7%AF%E5%BE%84%E4%BC%98%E5%85%88
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.115.63