OSPF路由協議單區域

RIP的不足

以跳數評估的路由并非最優路徑
如果RTA選擇S0/0傳輸,傳輸需時會大大縮短為3s
在這里插入圖片描述

RIP協議限制網絡直徑不能超過16跳

收斂速度慢
RIP定期路由更新
– 更新計時器:定期路由更新的時間間隔,默認30秒。
– 失效計時器:失效計時器內未收到更新,路由失效,默認180秒。
– 清除計時器:清除計時器內未收到更新,路由清除,默認240秒。
在這里插入圖片描述

更新發送全部路由表浪費網絡資源
假設RTA和RTB各有1000條路由,每條路由需占用20個字節
每次路由更新時,RTA和RTB之間單向需消耗至少160Kb的帶 寬資源

OSPF簡介

OSPF英文全稱Open Shortest Path First (開放式最短路徑優先)
OSPF是IETF 開發的一種鏈路狀態路由協議,使用基于帶寬的度量值。
OSPF采用SPF算法計算路由,從算法上保證了無路由環路。
OSPF通過鄰居關系維護路由,避免了定期更新對帶寬的消耗。
OSPF路由更新效率高,網絡收斂快,適用于大中型網絡。
OSPF報文封裝于IP,協議號89,組播地址224.0.0.5與224.0.0.6。

OSPF的基本工作原理

OSPF基本協議模型
在這里插入圖片描述

OSPF四張表

在這里插入圖片描述

鄰居表:記錄與本地路由器建立OSPF鄰居關系的相鄰路由器信息,用于維護鄰居狀態和協議交互。

LSDB表:存儲全網拓撲信息,包含所有接收到的LSA(鏈路狀態通告),用于計算最短路徑樹(SPF樹)。

ospf表:通過SPF算法(Dijkstra)從LSDB中計算出的最優路徑,尚未注入全局路由表。

全局路由:存儲設備最終使用的路由信息,包含從所有路由協議(OSPF、靜態路由、BGP等)學到的路由。

OSPF基本概念 ----------- Router ID

一臺路由器如果要運行OSPF協議,則必須存在Router ID(RID)。
RID是一個32比特無符號整數,可以在一個自治系統中唯一的標識一臺路由器。
RID可以手工配置,也可以自動生成。

如果沒有通過命令指定RID,將按照如下順序自動生成一個RID:
如果當前設備配置了Loopback接口,將選取所有Loopback接口上數值最大 的IP地址作為RID;
如果當前設備沒有配置Loopback接口,將選取它所有已經配置IP地址且鏈在這里插入圖片描述
路UP的接口上數值最大的IP地址作為RID。

OSPF基本概念------LS
鏈路狀態(LS):路由器周邊的鏈路的狀態
直連網段狀態:通過接口網段和接口狀態感知
描述直連網段:(網段,掩碼,接口開銷)
直連拓撲狀態:通過OSPF鄰居和鄰居狀態感知
描述直連拓撲:(鄰居RouterID,連接接口,接口開銷)
接口開銷:OSPF參考帶寬 / 接口帶寬
OSPF參考帶寬默認為100Mbps。
Loopback接口的開銷默認為1。

OSPF基本概念------LSA
LSA:每個路由器通過LSA向鄰居通告自己的直連鏈路狀態,最終所有路由器同步鏈路狀態數據庫(LSDB)

OSPF基本概念-----LSDB
LSDB:
每臺OSPF路由器都有一個LSDB,用于存儲LSA。
同一個區域中的OSPF路由器的LSDB一致。
LSA封裝在LSU報文中,在區域內洪泛,最終達到區域內LSDB一致。
LSA在洪泛過程中內容保持不變。

OSPF基本概念----SPF
SPF計算
以自己LSA 1為根,進行SPF計算。
各OSPF路由器單獨進行SPF計算,互不影響。

OSPF基本概念 ----------- OSPF網絡類型
Broadcast廣播多路訪問:以太網接口
NBMA(Non-Broadcast Multi-Access,非廣播多點訪問網絡):幀中繼接口
P2MP(Point-to-MultiPoint,點到多點)
P2P(Point-to-Point,點到點):PPP HDLC接口

OSPF基本概念 ----------- OSPF報文類型與封裝
在這里插入圖片描述

OSPF報文直接封裝在IP報文中,協議號為89。
在這里插入圖片描述

鏈路層幀頭:在數據鏈路層(如以太網)中標識源/目標設備,確保幀正確傳輸到相鄰設備。

IP Header:在網絡層(三層)實現跨網段尋址,將OSPF報文從源IP路由到目標IP。

OSPF Packet:承載OSPF協議的具體信息(如Hello、LSU、LSR等),用于鄰居發現、LSDB同步等。

鏈路層幀尾:標記幀結束,并提供錯誤檢測機制。

維持鄰居關系(點對點)
在這里插入圖片描述
在這里插入圖片描述

鄰居之間通過交換Hello報文,確認鄰居是否工作正常
如果在一定的時間間隔內,收不到鄰居發來的Hello報文,就認為鄰居已經失效,從鄰居表中刪除。

DR/BDR的選舉原則

首先比較Hello報文中攜帶的優先級
優先級最高的被選舉為DR,優先級次高的被選舉為BDR
優先級為0的不參與選舉
優先級一致的情況下,比較Router ID
Router ID越大越優先
保持穩定原則
當DR/BDR已經選舉完畢,就算一臺具有更高優先級的路由器變為有效,也 不會替換該網段中已經選舉的DR/BDR成為新的DR/BDR
在這里插入圖片描述

當DR失效時,BDR立刻成為新的DR
DRother路由器進行競爭,Router ID高的成為新的BDR

鄰居關系無法建立原因總結
在這里插入圖片描述

DOWN、Init、two-way之間的狀態轉換
在這里插入圖片描述

DOWN 初始狀態,表示未收到任何來自鄰居的Hello報文。
Init 已收到鄰居的Hello報文,但鄰居的Hello報文中未包含自己的Router ID。
2-Way 雙向通信已建立,雙方Hello報文中均包含對方的Router ID。

DOWN → Init
觸發條件:
本地路由器從接口收到鄰居發來的Hello報文,但該Hello報文的鄰居列表(Neighbor List)中不包含自己的Router ID。

Init → 2-Way
觸發條件:
本地路由器收到鄰居發來的Hello報文,且該報文的鄰居列表中包含自己的Router ID。

狀態轉換詳解

在這里插入圖片描述

(1) ExStart → Exchange
觸發條件:
雙方路由器通過空DBD報文(不含LSA摘要)協商主從關系(Master/Slave)。
Master:負責控制DBD報文交換,使用自己生成的初始序列號。
Slave:響應Master的序列號。
選舉依據:Router ID較大者成為Master。
關鍵動作:
發送帶I(Init)、M(More)、MS(Master/Slave)標志的DBD報文。
一旦主從關系確定,進入Exchange狀態。

(2) Exchange → Loading
觸發條件:
雙方通過DBD報文交換LSDB摘要(LSA頭部信息,如LSA類型、Link State ID等)。
對比本地LSDB,發現缺失的LSA。
關鍵動作:
若發現缺失的LSA,發送LSR(Link State Request) 請求完整LSA。
收到LSR的一方回復LSU(Link State Update) 攜帶完整LSA。

所有缺失LSA請求完成后,進入Loading狀態。

(3) Loading → Full
觸發條件:
通過LSR/LSU報文完成所有缺失LSA的同步。
雙方LSDB完全一致。
關鍵動作:
發送LSAck(Link State Acknowledgment) 確認收到的LSA。
狀態變為Full,鄰接關系正式建立,開始定期維護LSDB。

OSPF協議包具備超時重傳機制
OSPF協議包具備序列號,對重復包不做處理

包含在各種報文中的LSA信息

在這里插入圖片描述

LSA報文頭部

在這里插入圖片描述

泛洪新LSA
當有新的LSA生成或收到時,這條新的LSA應當被泛洪。
泛洪新的LSA時,只需要使用LS Update報文和LS Ack報文。

  1. 當RTA有新的LSA要泛洪時,RTA向RTB發送一個LS Update報文,在
    這個報文里包含這條LSA。
  2. 收到新的LSA以后,RTB向RTA泛洪一個LS Ack報文進行確認。
    當在兩個處于完全鄰接狀態(鄰居狀態為Full)的路由器之間泛洪新的LSA
    時,鄰居狀態不受影響。
    在這里插入圖片描述

在廣播和NBMA網絡中,鏈路狀態發生變化時,主要是通過DR路由器發送更新報文。

OSPF LSA洪泛與老化

– LSA不老化的缺點:當網絡長時間中斷,故障網絡中的設備發起
的LSA長時間無效,但仍然存儲在LSDB中,浪費設備內存。
OSPF LSA采用遞增老化
LSA自發起時開始計時,到達最大老化時間后,從LSDB中清除。
OSPF最大老化時間3600秒,LSA頭部的老化時間字段用于計時。

OSPF LSA老化與全網刷新
正常OSPF網絡的路由維護
LSA老化時間到達最大老化時間的一半(30分鐘),發起路由器
隨機等待一段時間后重新發起該LSA,然后洪泛,刷新所有路由器LSDB。
新發起的LSA序列號加1,老化時間為0。
LSA在整個洪泛過程中,除老化時間外,其余各字段都保持不變

在這里插入圖片描述

OSPF區域劃分

在這里插入圖片描述

OSPF協議區域LSA發布

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/90546.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/90546.shtml
英文地址,請注明出處:http://en.pswp.cn/web/90546.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Kubernetes部署與管理Scrapy爬蟲:企業級分布式爬蟲平臺構建指南

引言:Kubernetes在爬蟲領域的戰略價值在大規模數據采集場景中,??容器化爬蟲管理??已成為企業級解決方案的核心。根據2023年爬蟲技術調查報告:采用Kubernetes的爬蟲系統平均資源利用率提升??65%??故障恢復時間從小時級縮短至??秒級?…

Web-Machine-N7靶機攻略

一.環境準備(VBox,kali虛擬機,靶機) 1.1Vbox下載地址: Downloads – Oracle VirtualBox 1.2將N7導入到這個虛擬機中 1.3將kali和Vbox都設置成橋接模式 1.4開啟靶機 若鼠標出不來可以使用組合技,CtrlAltDelete強制退出 二.信息…

用毫秒級視頻回傳打造穩定操控閉環之遠程平衡控制系統技術實踐

在工業自動化、遠程機器人、無人裝備等復雜作業場景中,遠程實時操控正逐步取代傳統“監控指令”模式,成為提升效率與保障安全的關鍵能力。尤其在高風險、高精度的應用環境中,操作者不僅要“能控”,更要“看得準、反應快”。 真正…

瑞薩電子RA-T MCU系列新成員RA2T1——電機控制專家

RA2T1系列微控制器基于64MHz ArmCortex-M23內核設計,專為單電機控制應用而優化。RA2T1集成PWM定時器,以及配備3個采樣保持電路的A/D轉換器等先進的模擬功能,適用于電動工具,風扇和家用電器等高效的低端電機控制方案。RA2T1支持1.6…

Java排序算法之<選擇排序>

目錄 1、選擇排序 1.1、介紹 1.2、穩定性 2、執行流程 3、java實現 4、優缺點 總結:Java 排序算法進階路線 O(n) 算法(適合學習原理) 冒泡排序(最慢)→ 選擇排序 → 插入排序(推薦先學) …

ESP8266 http收發數據

1.先修改基礎配置 make menuconfig 打開配置菜單 選擇component config 然后選擇 修改波特率為115200 保存退出 2.修改彩色日志打印的 在component config目錄下找到log output 選中點擊空格關掉彩色日志輸出,這樣正常串口打印就沒有亂碼了 然后保存退出 3…

ZLMediaKit 源代碼入門

ZLMediaKit 是一個基于 C11 開發的高性能流媒體服務器框架,支持 RTSP、RTMP、HLS、HTTP-FLV 等協議。以下是源代碼入門的詳細指南: 1. 源碼結構概覽 主要目錄結構: text ZLMediaKit/ ├── cmake/ # CMake 構建配置 ├── …

智能Agent場景實戰指南 Day 21:Agent自主學習與改進機制

【智能Agent場景實戰指南 Day 21】Agent自主學習與改進機制 文章內容 開篇 歡迎來到"智能Agent場景實戰指南"系列的第21天!今天我們將深入探討智能Agent的自主學習與改進機制——這是使Agent能夠持續提升性能、適應動態環境的核心能力。在真實業務場景…

微信小程序中英文切換miniprogram-i18n-plus

原生微信小程序使用 miniprogram-i18n-plus第一步:npm install miniprogram-i18n-plus -S安裝完成后,會在項目文件文件夾 node_modules文件里生成 miniprogram-i18n-plus, 然后在工具欄-工具-構建npm,然后看到miniprogram_npm里面…

LeetCode 127:單詞接龍

LeetCode 127:單詞接龍問題本質:最短轉換序列的長度 給定兩個單詞 beginWord 和 endWord,以及字典 wordList,要求找到從 beginWord 到 endWord 的最短轉換序列(每次轉換僅改變一個字母,且中間單詞必須在 wo…

docker搭建ray集群

1. 安裝docker 已安裝過docker 沒安裝流程 啟動 Docker 服務: sudo systemctl start docker sudo systemctl enable docker # 設置開機即啟動docker驗證 Docker 是否安裝成功: docker --version2. 部署ray # 先停止docker服務 systemctl stop docker…

【iOS】SideTable

文章目錄前言1??Side Table 的核心作用:擴展對象元數據存儲1.1 傳統對象的內存限制1.2 Side Table 的定位:集中式元數據倉庫2??Side Table 的底層結構與關聯2.1 Side Table 與 isa 指針的關系2.2 Side Table 的存儲結構2.3 SideTable 的工作流程3??…

【Spring Cloud Gateway 實戰系列】高級篇:服務網格集成、安全增強與全鏈路壓測

一、服務網格集成:Gateway與Istio的協同作戰在微服務架構向服務網格演進的過程中,Spring Cloud Gateway可與Istio形成互補——Gateway負責南北向流量(客戶端到集群)的入口管理,Istio負責東西向流量(集群內服…

一文說清楚Hive

Hive作為Apache Hadoop生態的核心數據倉庫工具,其設計初衷是為熟悉SQL的用戶提供大規模數據離線處理能力。以下從底層計算框架、優點、場景、注意事項及實踐案例五個維度展開說明。 一、Hive底層分布式計算框架對比 Hive本身不直接執行計算,而是將HQL轉換…

SeaweedFS深度解析(三):裸金屬單機和集群部署

#作者:閆乾苓 文章目錄2.2.4 S3 Server(兼容 Amazon S3 的接口)2.2.5 Weed(命令行工具)3、裸金屬單機和集群部署3.1 裸金屬單機部署3.1.1安裝 SeaweedFS3.1.2 以Master模式啟動2.2.4 S3 Server(兼容 Amazon…

相機ROI 參數

相機的 ROI(Region of Interest,感興趣區域) 參數,是指通過設置圖像傳感器上 特定區域 作為有效成像區域,從而只采集該區域的圖像數據,而忽略其他部分。這一功能常用于工業相機、科研相機、高速相機等場景&…

Vue基礎(24)_VueCompinent構造函數、Vue實例對象與組件實例對象

分析上一節代碼中的school組件:該組件是一個名為VueCompinent的構造函數。截取部分vue.js源碼,分析Vue.extend:// 定義一個名為VueComponent的構造函數對象Sub,往Sub對象調用_init(options)方法,參數為配置項&#xff…

螢石云替代產品攝像頭方案螢石云不支持TCP本地連接-東方仙盟

不斷試錯東方仙盟深耕科研測評,聚焦前沿領域,以嚴謹標準評估成果,追蹤技術突破,在探索與驗證中持續精進,為科研發展提供參考,助力探路前行 螢石云價格螢石云的不便于使用 家庭場景:成本可控與隱…

C51:用DS1302時鐘讀取和設置時間

因為在ds1302.c文件中包含了寫ds1302(51向ds1302寫數據)和讀ds1302(51從ds1302讀數據)的兩個函數,我們根據文件中提供的函數來寫讀取時間和設置時間的函數即可ds1302.c文件源碼如下,需要的同學可以參考一下…

webrtc整體架構

WebRTC(Web Real-Time Communication)是一套支持瀏覽器和移動應用進行實時音視頻通信的開源技術標準,其架構設計圍繞 “實時性”“低延遲”“跨平臺” 和 “安全性” 展開,整體可分為核心引擎層、API 層、支撐服務層三大部分&…