網路層 AS 內路由選擇協議

2022-03-08 22:28:48 字數 3665 閱讀 6896

禁止碼迷,布布扣,豌豆**,碼農教程,愛碼網等第三方爬蟲**爬取!

目錄自治系統

ospf 協議

ospf 資料報

協議優勢

參考資料

在開始閱讀之前,請先閱讀部落格——網路層——路由選擇演算法。

rip 協議是分布式的基於 dv 演算法的路由選擇協議,下面我們分析一下 rip 協議在 dv 演算法的基礎上提出怎樣的封裝。首先 rip 協議中的距離得到了定義,從一路由器到直接連線的網路的距離定義為 1,到非直接連線的網路距離定義為所經過的路由器數量加 1。由於這個定義,rip 協議的「距離」也稱之為「跳數」。

在前一篇部落格我們提到的無窮計數的問題,毒性逆轉能夠完全解決無窮計數的問題嗎?答案是否定的,因為當網路規模增大,涉及到了 3 個及以上的更多節點的環路,毒性逆轉將不能探測到故障。對於這個問題,rip 協議提供了解法——定義最大度量。rip 協議允許一條路徑最多只能包含 15 個伺服器,若距離等於或大於 16 時將直接不可達。出現無窮計數時,路由器之間相互傳播錯誤的資訊會使最短距離增長到 16,這就到達了最大度量,就可以規避故障鏈路了。

但是這也引發了新的問題,要是 2 個路由器之間的距離本身就超過 16 呢?這沒有辦法,也會被認為是不可達的,因此 rip 協議無法適用於較大的網際網路。

路由器之間將按照固定的時間間隔交換路由資訊,同時當網路拓撲發生變化時也會及時通告拓撲變化之後的路由資訊。

對於路由選擇演算法來說,我們忽略了很多細節,把複雜的網路抽象成圖結構來描述雖然形象,但是這是一種理想化的說法。在實踐中往往不會使用圖結構加使用統一的路由選擇演算法的同質路由器去進行說明,主要體現在以下 2 個方面:

規模:當今網際網路由數億臺主機組成,這種規模的主機儲存路由資訊需要大量記憶體。對於所有路由器之間的廣播連通性和鏈路開銷的更新,無疑需要占用很多的資源和很大的負擔,對於 ls 演算法的計算負擔極其大,dv 演算法更是無法收斂。因此就必須採取一些措施,來縮小計算和儲存路由資訊的規模。

管理自製:網際網路是 isp 網路,其中每個 isp 都有自己的路由網路,因此網際網路也可以認為是「網路之網路」。一般來說乙個 isp 總是傾向於按照自己的想法去執行路由器,而且對外保留隱私,隱藏內部的網路結構。因此對於乙個組織不僅希望能夠按自己的意願管理網路,也要滿足和其他網路進行通訊的需求。

針對這 2 個問題,可以使用自治系統(as)來解決,也就是聚合多個處在相同的管理之下的路由器為乙個區域,通常來說乙個 isp 中的路由器及其互聯的鏈路構成乙個 as。對於不同的 as 內的路由器可以執行不同的 as 內部路由協議,反之相同 as 中的路由器執行相同的路由選擇演算法並且擁有彼此的資訊。

開放最短路徑優先(ospf)協議被廣泛用於網際網路 as 內部路由選擇,開放指的是路由選擇協議規範是公眾可用的,而並非屬於某一廠家(例如 cisco 的 eigrp 協議到近期才變為開放)。ospf 協議是一種鏈路狀態協議,它使用洪氾鏈路狀態資訊和

dijkstra 演算法實現,下面看一些 ospf 協議的具體實現方式:

運載 ospf 協議的所有路由器最終會建立乙個鏈路狀態資料庫,這個資料庫包含 3 張表來協同工作:

鄰居表:鄰居表之間通過問候報文聯絡,確認相鄰拓撲是否正常;

鏈路狀態表:通過交換鄰居表,形成完整的網路拓撲圖,該錶在 as 內的所有路由器是一致的;

計算路由表:運載 dijkstra 演算法,獲得最佳路徑。

接下來我們來看一下路由器和鄰居之間,是怎麼通過這 3 張表進行工作的。

由於需要讓所有的路由器得到自己的路由資訊,因此需要向 as 內的所有相鄰路由器傳送資訊。實現這個功能的是洪氾法,路由器通過所有輸出埠向相鄰路由器傳送資訊,而每乙個相鄰路由器再把資訊傳送給相鄰的路由器,最終 as 內的所有路由器都會得到這個路由資訊。

同時 ospf 協議的洪氾法是可靠地,因為對於任何路由器,收到其他路由器發來的分組之後需要傳送ack,這就可以保證路由資訊的傳遞正確。

最佳路徑的計算是按照鏈路權重來計算的,鏈路鑽中可以反映開銷、距離、時延和頻寬。這些資訊的配置並非是協議自行生成的,而是通過網路管理員進行配置的。也就是說 ospf 並不不強制使用的鏈路權重的設定策略,而是讓網路管理員自己決定度量的方式,它提供了一種機制來為路由器確定最低開銷路徑的選擇。

路由表的更新並非是週期性的,而是當鏈路狀態發生變化時,路由器才向所有的路由器使用洪氾法傳送資訊。由於這種方式,使得鏈路狀態表更新很快,使得最低開銷路徑的收斂速度加快,同時也可以保證 as 內的所有路由器的鏈路狀態表一致。

hello:發現、維持鄰居路由器的可達性;

資料庫描述:向鄰居給出自己的鏈路狀態資料庫中,所有鏈路狀態專案的摘要資訊;

鏈路狀態請求:向鄰居請求傳送某些鏈路狀態的詳細資訊;

鏈路狀態更新:使用洪氾法對全網更新鏈路狀態;

ask:對更新分組的確認。

ospf 報文由 ip 協議承載,而不是使用 udp 協議,此時的 ip 資料報的協議欄位為 89。ospf 報文的篇幅很小,這就可以加快資料報的傳輸速度。

ospf 協議能夠鑑別 ospf 路由器之間的交換,僅有收到信任的路由器可以參與 as 內的 ospf 協議,因此可以防範入侵者將不正確的資訊注入路由表中。可以使用簡單鑑別或 md5 鑑別實現,可以驗證分組的真實性。

當到達某目的地的多條路徑具有相同的開銷時,ospf 協議允許使用多條路徑,這就使得**資料報時無需令單一路徑承載所有流量。

多播 ospf(mpspf)利用現有鏈路資料庫,提供了 ospf 的簡單拓展,提供了多播路由的選擇。

ospf 協議支援大規模 as 分層,乙個 ospf 自治系統能工層次化地配置多個區域。每個區域都執行自己的 ospf 鏈路狀態路由選擇演算法,區域內的每台路由器都向區域內的所有其他路由器廣播鏈路狀態。在層次結構的區域劃分中,上層區域為主幹區域,可以用來連線其他下層區域。主幹區域的路由器叫主幹路由器,而與其它區域通訊則使用區域邊界路由器。

為劃分區域提供支援,可以使得洪氾法交換鏈路狀態資訊的範圍縮小的某乙個區域中,這樣可以減少 ospf 協議在整個網路中的通訊量。

《計算機網路(第七版)》 謝希仁 著,電子工業出版社

《計算機網路 自頂向下方法》 [美] james f.kurose,keith w.ross 著,陳鳴 譯,機械工業出版社

網路層路由選擇協議(RIP OSF)

路由選擇協議的核心是路由選擇演算法,也即路由選擇與更新演算法。網際網路絡由選擇協議可以分為兩大類 路由資訊協議 rip 使用距離向量法更新路由表,常用於小型自治系統。距離向量演算法要求每個路由器在路由表中列出到所有已知目的網路的最佳路由,並且定期把自己的路由表副本傳送給與其直接相連的其他路由器。為了...

網路層 AS 間路由選擇協議

禁止碼迷,布布扣,豌豆 碼農教程,愛碼網等第三方爬蟲 爬取!目錄bgp 路由資訊 路由選擇 路由選擇策略 bgp 報文 為什麼有 as 內 間路由選擇協議?參考資料 bgp 對於每一台路由器來說,需要完成 2 個任務 從臨近的 as 獲得字首可達性資訊 bgp 允許每個子網向網際網路的其他部分告知自...

網路層 路由協議

不存在一種絕對的最佳路由演算法.所謂 最佳 只能是相對於某一種特定要求下得出的較為合理的選擇而已 實際的路由選擇演算法,應盡可能接近於理想的演算法 路由選擇是非常複雜的問題,是網路中的所有結點共同協調工作的結果 路由選擇的環境往往是不斷變化的,而這種變化有時無法事先知道 定義 當路由表中與包的目的位...