OSPF基本概念和OSPF配置

OSPF(Open Shortest Path First)

 

OSPF(Open Shortest Path First)是一個內部網關協議(Interior Gateway Protocol,簡稱IGP)。與RIP相對,OSPF是鏈路狀態路有協議,而RIP是距離向量路由協議。 鏈路是路由器接口的另一種說法,因此OSPF也稱爲接口狀態路由協議。OSPF通過路由器之間通告網絡接口的狀態來建立鏈路狀態數據庫,生成最短路徑樹,每個OSPF路由器使用這些最短路徑構造路由表。

基本概念和術語

鏈路狀態

OSPF路由器收集其所在網絡區域上各路由器的連接狀態信息,即鏈路狀態信息(Link-State),生成鏈路狀態數據庫(Link-State Database)。路由器掌握了該區域上所有路由器的鏈路狀態信息,也就等於瞭解了整個網絡的拓撲狀況。OSPF路由器利用最短路徑優先算法(Shortest Path First, SPF)”,獨立地計算出到達任意目的地的路由。

區域

OSPF協議引入分層路由的概念,將網絡分割成一個主幹連接的一組相互獨立的部分,這些相互獨立的部分被稱爲區域”(Area)主幹的部分稱爲主幹區域。每個區域就如同一個獨立的網絡,該區域的OSPF路由器只保存該區域的鏈路狀態。每個路由器的鏈路狀態數據庫都可以保持合理的大小,路由計算的時間、報文數量都不會過大。

共有五種區域的主要區別在於它們和外部路由器間的關係:

標準區域: 一個標準區域可以接收鏈路更新信息和路由總結。

 

主幹區域(傳遞區域):主幹區域是連接各個區域的中心實體。主幹區域始終是區域0”,所有其他的區域都要連接到這個區域上交換路由信息。主幹區域擁有標準區域的所有性質。

 

存根區域(stub Area):存根區域是不接受自治系統以外的路由信息的區域。如果需要自治系統以外的路由,它使用默認路由0.0.0.0

 

完全存根區域:它不接受外部自治系統的路由以及自治系統內其他區域的路由總結。需要發送到區域外的報文則使用默認路由:0.0.0.0。完全存根區域是Cisco自己定義的。

不完全存根區域(NSAA): 它類似於存根區域,但是允許接收以LSA Type 7發送的外部路由信息,並且要把LSA Type 7轉換成LSA Type 5

OSPF中的四種路由器

OSPF多區域網絡中,路由器可以按不同的需要同時成爲以下四種路由器中的幾種:

1.
內部路由器:所有端口在同一區域的路由器,維護一個鏈路狀態數據庫。


2.
主幹路由器:具有連接主幹區域端口的路由器。


3.
區域邊界路由器(ABR):具有連接多區域端口的路由器,一般作爲一個區域的出口。ABR爲每一個所連接的區域建立鏈路狀態數據庫,負責將所連接區域的路由摘要信息發送到主幹區域,而主幹區域上的ABR則負責將這些信息發送到各個區域。


4.
自治域系統邊界路由器(ASBR):至少擁有一個連接外部自治域網絡(如非OSPF的網絡)端口的路由器,負責將非OSPF網絡信息傳入OSPF網絡。

OSPF鏈路狀態公告類型

OSPF路由器之間交換鏈路狀態公告(LSA)信息。OSPFLSA中包含連接的接口、使用的Metric及其他變量信息。OSPF路由器收集鏈接狀態信息並使用SPF算法來計算到各節點的最短路徑。LSA也有幾種不同功能的報文,在這裏簡單地介紹一下:

LSA TYPE 1
router LSA由每臺路由器爲所屬的區域產生的LSA,描述本區域路由器鏈路到該區域的狀態和代價。一個邊界路由器可能產生多個LSA TYPE1


LSA TYPE 2
network LSADR產生,含有連接某個區域路由器的所有鏈路狀態和代價信息。只有DR可以監測該信息。


LSA TYPE 3
summary LSAABR產生,含有ABR與本地內部路由器連接信息,可以描述本區域到主幹區域的鏈路信息。它通常彙總缺省路由而不是傳送彙總的OSPF信息給其他網絡。


LSA TYPE 4
Summary LSAABR產生,由主幹區域發送到其他ABR, 含有ASBR的鏈路信息,與LSA TYPE 3的區別在於TYPE 4描述到OSPF網絡的外部路由,而TYPE 3則描述區域內路由。


LSA TYPE 5
AS External LSAASBR產生,含有關於自治域外的鏈路信息。除了存根區域和完全存根區域,LSA TYPE 5在整個網絡中發送。


LSA TYPE 6
multicast OSPF LSAMOSF可以讓路由器利用鏈路狀態數據庫的信息構造用於多播報文的多播發布樹。


LSA TYPE 7
Not-So-Stubby LSAASBR產生的關於NSSA的信息。LSA TYPE 7可以轉換爲LSA TYPE 5

協議類型

Hello報文,通過週期性地發送來發現和維護鄰接關係;
DD(
鏈路狀態數據庫描述)報文,描述本地路由器保存的LSDB(鏈路狀態數據庫)
LSR(LS Request)
報文,向鄰居請求本地沒有的LSA
LSU(LS Update)
報文,向鄰居發送其請求或更新的LSA
LSAck(LS ACK)
報文,收到鄰居發送的LSA後發送的確認報文。

OSPF網絡類型

根據路由器所連接的物理網絡不同,OSPF將網絡劃分爲四種類型:廣播多路訪問型(Broadcast multiAccess)、非廣播多路訪問型(None Broadcast MultiAccessNBMA)、點到點型(Point-to-Point)、點到多點型(Point-to-MultiPoint)。

廣播多路訪問型網絡如:EthernetToken RingFDDINBMA型網絡如:Frame RelayX.25SMDSPoint-to-Point型網絡如:PPPHDLC

指派路由器(DR)和備份指派路由器(BDR

在多路訪問網絡上可能存在多個路由器,爲了避免路由器之間建立完全相鄰關係而引起的大量開銷,OSPF要求在區域中選舉一個DR。每個路由器都與之建立完全相鄰關係。DR負責收集所有的鏈路狀態信息,併發布給其他路由器。選舉DR的同時也選舉出一個BDR,在DR失效的時候,BDR擔負起DR的職責。

點對點型網絡不需要DR,因爲只存在兩個節點,彼此間完全相鄰。 協議組成OSPF協議由Hello協議、交換協議、擴散協議組成。本文僅介紹Hello協議,其他兩個協議可參考RFC2328中的具體描述。


當路由器開啓一個端口的OSPF路由時,將會從這個端口發出一個Hello報文,以後它也將以一定的間隔週期性地發送Hello報文。OSPF路由器用Hello報文來初始化新的相鄰關係以及確認相鄰的路由器鄰居之間的通信狀態。


對廣播型網絡和非廣播型多路訪問網絡,路由器使用Hello協議選舉出一個DR。在廣播型網絡裏,Hello報文使用多播地址224.0.0.5週期性廣播,並通過這個過程自動發現路由器鄰居。在NBMA網絡中,DR負責向其他路由器逐一發送Hello報文。

OSPF的配置

OSPF Config/Process

Process ID:即 OSPF路由進程ProcessID必須指定範圍在1-65535,多個OSPF進程可以在同一個路由器上配置,但最好不這樣做。多個OSPF進程需要多個OSPF數據庫的副本,必須運行多個最短路徑算法的副本。ProcessID只在路由器內部起作用,不同路由器的ProcessID可以不同

OSPF Config/General

Router ID:即該routerIP地址

ASBR:Autonomous System Border Router 至少擁有一個連接外部自治域網絡(如非OSPF的網絡)端口的路由器,負責將非OSPF網絡信息傳入OSPF網絡。

ExtLsaCount:在連接狀態數據庫(LSDB)中,外部連接狀態通告(LSA)的數量。

ExtLsaCksumSum:外部連接狀態通告的校驗和,決定在路由器的連接狀態數據庫中是否有個連接變化。

TOSRouteSupport:路由器是否支持TOS

OrgnNewLsa:新產生的LSA的數量,Router每產生一個該數量增加。

RxNewLsa:接受到的LSA

ExtLsaDbLimit:在連接狀態數據庫中存儲的自治系統外部LSA的最大數量。

MulticastExt:該router是否轉發多播報文,基於OSPF多播擴張中定義的算法。Bit 0表示轉發多播報給router直接連接的區域;bit 1表示在OSPF區域間轉發;bit 2表示在自治系統之間轉發。

ExitOverflowIntrvl:在路由器進入Overflow狀態時,試圖離開Overflow狀態的時間間隔。

DemandExt

OSPF Config/Area

將該router加入到某個區域

Area:網絡區域ID area-id0-4294967295內的十進制數,也可以是帶有IP地址格式的x.x.x.x。當網絡區域ID00.0.0.0時爲主幹區域。還有標準區域、存根區域(StubArea)、不完全存根區域(NSSA)之分。不同網絡區域的路由器通過主幹域學習路由信息。

 

AuthType:可以在相同OSPF區域的路由器上啓用身份驗證的功能,只有經過身份驗證的同一區域的路由器才能互相通告路由信息。在默認情況下OSPF不使用區域驗證。通過兩種方法可啓用身份驗證功能,純文本身份驗證和消息摘要(md5)身份驗證。純文本身份驗證傳送的身份驗證口令爲純文本,它會被網絡探測器確定,所以不安全,不建議使用。而消息摘要(md5)身份驗證在傳輸身份驗證口令前,要對口令進行加密,所以一般使用此種方法進行身份驗證。 使用身份驗證時,區域內所有的路由器接口必須使用相同的身份驗證方法。爲起用身份驗證,必須在路由器接口配置模式下,爲區域的每個路由器接口配置口令。

ImportAsExt:區域對自治系統外部LSA的輸入。

SPFRuns:內部區域路由表已經通過區域的LSDB計算的次數

AbrCount:該區域內區域邊界路由器的數量

AsbrCount:該區域內自治系統邊界路由器的數量

AreaLsaCount:在鏈路狀態數據庫中鏈路狀態通告的數量

AreaLsaChsumSum:在鏈路狀態數據庫中鏈路狀態通告的校驗和的和,不包括外部鏈路狀態通告。

AreaSummary:該變量控制進入存根區域的summary LSA的輸入;noAreaSummary表示路由器既不產生也不傳播summary LSA進入存根區域;sendAreaSummary表示路由器既要彙總也要傳播LSA

OSPF Config/StubArea

存根區域:存根區域是不接受自治系統以外的路由信息的區域。如果需要自治系統以外的路由,它使用默認路由0.0.0.0

MetricMetric值。

MetricType:用默認路由進行通告時使用的Metric類型。

OSPF Config/LinkStateDb

OSPF路由器收集其所在網絡區域上各路由器的連接狀態信息,即鏈路狀態信息(Link-State),生成鏈路狀態數據庫(Link-State Database)。路由器掌握了該區域上所有路由器的鏈路狀態信息,也就等於瞭解了整個網絡的拓撲狀況。OSPF路由器利用最短路徑優先算法(Shortest Path First, SPF)”,獨立地計算出到達任意目的地的路由。OSPFLSA中包含連接的接口、使用的Metric序列號(seq)、報文號(I)、結尾標識(M)及主從標誌(MS)OSPF路由器收集鏈接狀態信息並使用SPF算法來計算到各節點的最短路徑。

LSAType:連接狀態通告的類型,有各自的通告格式

LSID:是LSA的特定域包含一個router IDIP Address,指定這個通告描述的一片路由域

RtrID:標示源路由器

Seq:用於檢測舊的或重複的LSA,該值線性增加

Age:該LSA的生存了時間

Chsum:通告內容中出了age域的所有內容的校驗和

LsdbAdv:整個鏈路狀態通告,包括它的頭部。

OSPF Config/AreaRange

IP AddressIP Mask確定的一段IP地址

Address:子網地址

Mask是子網掩碼

Effect:觸發指示的summary的通告或使子網不被通告到外部區域

OSPF Config/Host

區域內該router可達到的主機路由表。

OSPF Config/Interface

配置OSPF接口參數

Type該連接的網絡類型。

Priority接口優先級,用於多播網絡的指定路由器的選擇計算。

TransitDelay傳輸時延,指在OSPF鏈路接口之間傳輸一個鏈路狀態更新包需要的時間。

ReTransitIntvl重傳間隔是指鏈路狀態的重傳間隔時間。如果一個路由器向相鄰路由器發送一個新的鏈路狀態包,在沒有收到對端的確認包時,將發生重傳。

HelloIntvl:Hollo間隔,OSPF路由器定期向鄰接路由器發送HELLO數據包,以探尋相鄰路由器的狀態。其探尋間隔可以進行設置。

DeadIntvl在該路由器的鄰居在該時間內看到其hello報文,就認爲該路由器處於非活動狀態。

PollingIntvlHello報文發送給處於非活動狀態的鄰居。

DRDesignated Router指定路由器

BDR備份指定路由器

Authkey認證密碼

MulticastFwding多播轉發類型

AuthType認證類型

OSPF Config/Metric

設置被Interface Index指示的非虛擬接口的具體TOS Metric

OSPF Config/VirtualInterface

關於路由器的虛擬接口表

OSPF Config/Neighbor

關於某個接口連接的鄰居的信心

OSPF Config/VirtualNeighbor

process IDarea IDrouter ID確定的虛擬鄰接點信息

OSPF Config/ExLinkStateDb

某個外部連接狀態通告

OSPF Config/RouteGroup

OSPF的路由組

OSPF Config/AreaAggregate

IP AddressIP MaskLSDB類型確定的一組地址範圍。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章