前文我們了解了靜態路由的相關話題,回顧請參考https://www.cnblogs.com/qiuhom-1874/p/14965433.html;今天我們來聊一聊動態路由相關概念;
首先我們要清楚什么是動態路由?從字面上個人的理解,動態是指能夠根據某種條件的變化結果也隨之自動的發生變化;靜態是指當某種條件發生變化,而結果不會隨之變化(靜止不動);對于路由也是一樣的,靜態路由就是指管理員手動配置的路由資訊,該路由資訊不會根據網路拓撲的變化而自動變化,當網路拓撲發生變化,必須由管理員手動的更新其路由資訊;和靜態路由相反的是動態路由,該路由資訊具有兩個特點,第一是不需要管理員手動配置路由資訊,而是從其他路由器哪里根據某種動態路由協議學習過來的路由資訊;其次該路由能夠感知網路拓撲的變化,當網路拓撲發生變化,對應的路由資訊能夠根據拓撲的變化而變化;
從上述的描述中,動態路由的生成是基于某種動態路由協議,也就是說只有運行相同動態路由協議的路由器才能相互學習到對方的路由資訊;那什么是路由協議呢?其實我們可以把路由協議理解為路由器之間互動資訊的一種語言,其作用就是用來共享路由資訊,維護路由表,提供最佳轉發路徑;
路由協議總覽

提示:上圖主要描述了路由協議的發展史以及根據不同演算法對其分類;

提示:上圖主要把路由協議進行了分類,從作用范圍來劃分,分為內部網關協議igp和外部網關協議egp;而內部網關協議igp中,有可以根據其演算法的不同分為距離矢量協議和鏈路狀態協議,其實除此之外還有路徑矢量協議(主要是bgp用的演算法);
路由協議分類:根據作用范圍分類

提示:我們可把路由協議分為IGP和EGP,IGP(interior gateway protocol)內部網關協議,用于一個as內部交換路由資訊,比如常見的igp路由協議有RIP、OSPF、IS-IS;EGP(exterior gateway protocol)外部網關協議,用于多個as之間交換路由資訊,如BGP協議;那什么是AS呢?AS是autonomous system自制系統,所謂自制系統就是處于單個管理機制下的網路,比如一個企業,電信,聯通,移動等;
路由協議分類:根據協議演算法分類
DV(distance-vector):距離矢量;簡單的我們可以把距離矢量理解為路牌,我們要到某地去,路牌可以告訴我們前方怎么這么走,當并不能告訴我們前方是否還要經過其他路牌,其他路牌上的資訊等;所以我們只有根據路牌到達對應的位置后,在查看其它路牌資訊,最終我們是可以根據路牌的指引到達目的地;類比路由器如下圖

提示:當R1要訪問subnet X 的時候,如果各個路由器之間都運行的是距離矢量演算法的路由協議,那么對于R1來說它只會收到R2,R5和R7發送到路由資訊;也就是說R1只知道R2,R5和R7的存在,并不知道其他路由器的存在,而對于R1的選路規則就只有一條,看那個路由器發送過來的路由資訊跳數最少,它就選擇哪一條;如上圖R1要到subnet X ,R1肯定走R7,因為R7告訴R1,走我這里只有2跳;從上述的描述不難想象基于距離矢量演算法的路由協議,它并不了解整個網路拓撲結構,它依靠和自己直連的路由器發送過來的路由資訊;其次路由器選路是根據對方發送到跳數來進行判別那條路最優,本質上就不是一個好的選路策略;因為判斷一條路是否最優并不是只有跳數這一個條件;比如鏈路的帶寬,開銷等等都決定了路由是否最優;常見的基于距離矢量演算法的路由協議有RIP 、EIGRP;
LS(link-state)鏈路狀態;從字面上理解,這種演算法的路由協議并不是發送的是路由資訊,而是描述鏈路狀態的一些資訊(LSA鏈路狀態通告),多臺路由器根據鏈路狀態通告資訊結合spf(shortest path first)z最短路徑優先演算法計算出對應的路由資訊;我們可以理解為現實生活中的地圖;lsa就好比交通廣播之類的資訊,我們可以根據交通廣播通告的路況資訊,從而知道去某地的路況是否良好,這樣走可以最節省時間,路徑最短等等;如下圖

提示:R1要訪問172.16.3.1/24網路,對于整個網路中的路由器來說,它們都知道R8的存在,因為R8的鏈路狀態通告是全網轉發的;并且每臺路由器都會發送las告訴其他路由器本路由器可以到達那些網路,鏈路開銷以及狀態資訊等;所以對于上圖的每個路由器來說,他們都分別了解全網大拓撲結構;對于R1來說,它的選路就不是根據其跳數來選,而是根據收到的lsa,根據SPF演算法自動算出去往172.16.3.0/24的路由,并存入路由表中;所以基于鏈路狀態結合SPF演算法的路由協議相比距離矢量演算法的路由協議要更加了解整個網路拓撲結構;常見的路由協議ospf、is-is ;
路由協議分類:根據發送的更新是否攜帶掩碼
有類(classful):ip地址的分類默認分為abcde,其中掩碼為8的我們稱為a類ip地址,掩碼為16的是b類,掩碼是24的為c類;所謂有類是指發送更新不攜帶掩碼;我們知道一個網路如果不攜帶掩碼我們是不能計算器網路id的,所以這里的不帶掩碼是指自帶默認分類的掩碼,如掩碼為8/16/24之類的;有類的路由協議有RIPv1、IGRP;
無類(classless):無類和有類相反,它是不管是默認掩碼還是其他什么掩碼,它在發送更新時都會攜帶掩碼;無類的路由協議有RIPv2、EIGRP、OSPF、IS-IS、BGP;
有類和無類的更新

提示:有類路由協議的更新默認不攜帶掩碼,它只能依靠默認的ABCip地址分類來確定網路,相比無類存在,當一個資料包要去172.16.3.0/24的網路時,對于有類來講,它只會更新172.16.0.0/16;這樣一來對于R2來說不管走哪一邊都一樣,因為都是172.16.0.0/16(等價路由),這樣就可能導致資料包無法到達目標網路的情況;而對于無類路由協議來講,就不存在上述的問題,因為無類路由協議更新時都會攜帶掩碼,有了掩碼就能明確的計算出具體的網路id來;
路由協議分類:根據業務應用分類

路由協議操作規則:
1、協議都是在介面上運行的;對于路由器來講不同的介面的是一個網路(路由器上的介面不能配置相同的網路),所以具體哪些網路跑什么動態路由協議,都是把對應的動態路由協議跑在對應的介面上(一般不是管理員手動配置在那個介面上,而是根據具體的發布的路由,由路由器自動匹配對應的網路并在所在介面運行動態路由協議);
2、只能學習和發布相同協議已知的路由資訊;這句話的意思是說只有相同路由協議的介面才能互相學習,其次是能學習到對方的路由的前提是,對方明確發布了對應路由對應的網路;
3、如果不同的路由協議間需要交換路由資訊,就需要進行注入(import);如下圖

提示:能夠注入的路由器一定是多個介面運行了不同的路由協議;就好比上述的R2,它能懂RIP協議,又懂OSPF協議,所以把ospf注入到rip中去,對應rip協議行程就會有對應ospf行程生成的路由資訊,這樣一來再由R2的RIP行程所在介面,向R1的RIP行程所在介面進行更新,即R1就能學習到ospf中的路由資訊;
路由器收斂:當所有路由表包含相同網路可達性資訊,網路(路由)進入一個穩定狀態的程序;網路在達到收斂前是無法完全正常作業的;
衡量動態路由協議的一些性能指標

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/289058.html
標籤:其他
