计算机网络 --- 网络层路由算法与路由协议
路由表:
最佳路由:
“最佳”只能是相對于某一種特定要求下得出的較為合理的選擇而已。
路由算法的分類
- 靜態路由算法(非自適應路由算法) 管理員手工配置路由信息。簡便,可靠,在負荷穩定,拓撲變化不大的網絡中運行效果很好,廣泛用于高度安全性的軍事網絡和較小的商業網絡。但是路由更新慢,不適用大型網絡。
- 動態路由算法(自適應路由算法) 路由器間彼此交換信息,按照路由算法優化出路由表項。路由更新快,適用大型網絡,及時響應鏈路費用或網絡拓撲變化。但是算法復雜,增加網絡負擔。通常被使用。
動態路由算法分類
- 全局性 鏈路狀態路由算法 OSPF? 所有路由器掌握完整的網絡拓撲和鏈路費用信息。
- 分散性 距離向量路由算法 RIP? 路由器只掌握物理相連的鄰居及鏈路費用。
分層次的路由選擇協議
- 因特網規模很大
- 很多單位不想讓外界知道自己的路由選擇協議,但還想連入因特網
自治系統AS:
在單一的技術管理下的一組路由器,而這些路由器使用一種AS內部的路由選擇協議和共同的度量以確定分組在該AS內的路由,同時還使用一種AS之間的路由協議以確定在AS之間的路由。
一個AS內的所有網絡都屬于一個行政單位來管轄,一個自治系統的所有路由器在本自治系統內都必須連通。
路由選擇協議
- 內部網關協議IGP? ? ? 一個AS內使用的? ? RIP,OSPF
- 外部網關協議EGP? ? AS之間使用的? ? BGP-4
內部網關協議 --- RIP
RIP是一種分布式的基于距離向量的路由選擇協議,是因特網的協議標準,最大優點是簡單。
RIP協議要求網絡中的每一個路由器都維護從它自己到其他每一個目的網絡的唯一最佳距離記錄(即一組距離,如下圖)。
距離:
通常指“跳數”,即從源端口到目的端口所經過的路由器個數,經過一個路由器跳數+1。特別的,從一個路由器到直接相連的網絡距離為1。RIP允許一條路由最多只能包含15個路由器,因此距離為16表示網絡不可達(RIP協議只適用于小互聯網)。
信息交換:
- 僅和相鄰路由器交換信息
- 路由器交換的信息是自己的路由表
- 每30秒交換一次路由信息,然后路由器根據新信息更新路由表。若超過180s沒收到鄰居路由器的通告,則判定鄰居沒了,并更新自己的路由表
路由器剛開始工作時,只知道直接連接的網絡的距離(距離為1),接著每一個路由器也之和數目非常有限的相鄰路由器交換并更新路由器。
經過若干次更新后,所有路由器最終都會知道到達本自治系統任何一個網絡的最短距離和下一跳路由器的地址,即“收斂”。
距離向量算法
RIP報文,包含路由表的全部信息。相鄰兩個路由器交換路由表信息是通過RIP報文傳遞的。
以下是距離向量算法的過程:
1. 修改相鄰路由器發來的RIP報文中所有表項:對地址為X的相鄰路由器發來的RIP報文,修改此報文中的所有項目:把“下一跳”字段中的地址改為X,并把所有的“距離”字段 + 1.
2. 對修改后的RIP報文中的每一個項目,進行以下步驟:
2.1 如果路由表中沒有RIP報文中的網絡,則直接把該項目填入路由表
2.2 如果路由表中有RIP報文中的網絡,則查看下一跳路由器地址:
2.2.1 如果下一跳就是發來RIP報文的路由器,則用收到的項目替換源路由表中的項目
2.2.2 如果下一跳不是發來RIP報文的路由器,原來距離比最新距離遠則更新,否則不作處理
3. 若180s還沒有收到相鄰路由器的更新路由表,則把該路由器記為不可達的路由器,則把距離設置為16
4. 返回
RIP協議的報文
格式:
特點:
當網絡出現故障時,要經過比較長的時間(例如數分鐘)才能將此信息傳送到所有的路由器,“慢收斂”
內部網關協議 --- OSPF
開放最短路徑優先OSPF協議:“開放”標明OSPF協議不受某一家廠商控制,而是公開發表的:“最短路徑優先”是因為使用了Dijkstra提出的最短路徑算法SPF。
OSPF最主要的特征就是使用分布式的鏈路狀態協議。
OSPF的特點:
- 使用洪泛法向自治系統內所有路由器發送信息,即路由器通過輸出端口向所有相鄰的路由器發送信息,而每一個相鄰路由器又再次將此信息發往其所有的相鄰路由器。最終整個區域內所有路由器都得到了這個信息的一個副本。
- 發送的信息就是與本路由器相鄰的所有路由器的鏈路狀態(本路由器和哪些路由器相鄰,以及該鏈路的度量/代價 --- 費用,距離,時延,帶寬等)。
- 只有當鏈路狀態發生變化時,路由器才向所有路由器洪泛發送此信息。
最后,所有路由器都能建立一個鏈路狀態數據庫,即全網拓撲圖。
鏈路狀態路由算法
只要一個路由器的鏈路狀態發生變化:
OSPF的區域
為了使OSPF能夠用于規模很大的網絡,OSPF將一個自治系統再劃分為若干個更小的范圍,叫做區域。每一個區域都有一個32位的區域標識符(用點分十進制表示)。
區域也不能太大,在一個區域內的路由器最好不超過200個。
OSPF分組
與RIP分組不同(RIP使用UDP發送),OSPF分組用IP數據報傳送。
OSPF協議其他特點
- 每個30min,要刷新一次數據庫中的鏈路狀態。
- 由于一個路由器的鏈路狀態只涉及到與相鄰路由器的連通狀態,因而與整個互聯網的規模并無直接關系。因此當互聯網規模很大時,OSPF協議要比距離向量協議RIP好很多。
- OSPF不存在壞消息傳的慢的問題(對比RIP),它的收斂速度很快。
外部網關協議 --- BGP
與其它AS的鄰站BGP發言人交換信息。
交換的網絡可達性的信息,即要到達某個網絡所要經過的一系列AS。
發生變化時更新有變化的部分。
BGP協議交換信息的過程
BGP所交換的網絡可達性的信息就是要到達某個網絡索要經過的一系列AS。當BGP發言人互相交換了網絡可達性的信息后,各BGP發言人就根據所采用的策略從收到的路由信息中找出到達各AS的較好路由。
BGP協議報文格式
一個BGP發言人與其他自治系統中的BGP發言人要交換路由信息,就要先建立TCP連接,即通過TCP傳送,然后在此連接上交換BGP報文以建立BGP會話,利用BGP會話交換路由信息。
BGP協議特點
- BGP支持CIDR,因此BGP的路由表也就應當包括目的網絡前綴,下一跳路由器,以及到達該目的網絡所要經過的各個自治系統序列。
- 在BGP剛剛運行時,BGP的鄰站時交換整個的BGP路由表。但以后只需要在發生變化時更新有變化的部分。這樣做對節省網絡帶寬和減少路由器的處理開銷都有好處。
BGP-4的四種報文
- OPEN(打開)報文:用來與相鄰的另一個BGP發言人建立關系,并認證發送方。
- UPDATE(更新)報文:通告新路徑或撤銷源路徑。
- KEEPALIVE(保活)報文:在無UPDATE時,周期性證實鄰站的連通性,也作為OPEN的確認。
- NOTIFICATION(通知)報文:報告先前報文的差錯,也被用于關閉連接。
內部網關協議RIP,OSPF與外部網關協議BGP對比
RIP是一種分布式的基于距離向量的內部網關路由協議,通過廣播UDP報文來交換路由信息。
OSPF是一個內部網關協議,要交換的信息量較大,應使報文的長度盡量短,所以不適用傳輸層協議(如UDP或TCP),而是直接采用IP。
BGP是一個外部網關協議,在不同的自治系統之間交換路由信息,由于網絡環境復雜,需要保證可靠傳輸,所以采用TCP。
總結
以上是生活随笔為你收集整理的计算机网络 --- 网络层路由算法与路由协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python from import什么
- 下一篇: 计算机应用考试其一级属于中级,计算机软件