# IS-IS 協議 | LSP 傳輸與鏈路狀態數據庫同步機制

略作整理,待校。


SRM 和 SSN 標志的作用

SRM 標志

  • 功能:SRM 標志用于跟蹤路由器從一個接口向鄰居發送鏈路狀態協議數據單元(LSP)的狀態。
  • 作用:確保 LSP 的正確傳輸和狀態跟蹤。

SSN 標志

廣播網絡

  • 功能:SSN 標志用于跟蹤向鄰居請求完整的 LSP 狀態。
  • 作用:幫助路由器獲取完整的鏈路狀態信息。

點對點網絡

  • 功能:SSN 標志用于跟蹤對 LSP 的確認狀態。
  • 作用:確保 LSP 的傳輸確認,避免重復發送。

優化與效率

SRM 和 SSN 標志可以幫助路由器以更優化的方式發送 LSP 和部分序列號協議數據單元(PSNP)。其優勢包括:

  • 減少帶寬和 CPU 的開銷。
  • 提高鏈路狀態數據庫的同步效率。

LSP 傳輸與 CSNP 發送間隔

LSP 傳輸時間間隔

在 IS-IS 協議中,LSP(鏈路狀態報文)的傳輸時間間隔默認為 50 ms。當鄰居路由器資源有限時,若其他路由器向其傳遞 LSP 后,該路由器無法按時確認,其他路由器會重傳 LSP。這可能會進一步加重網絡負擔。為了避免這種情況,可以適當增大 LSP 的傳輸間隔,以保護資源受限的鄰居路由器。

CSNP 發送間隔

在廣播網絡中,為確保鏈路狀態數據庫的完整性,DIS(指定中間系統)會周期性地發送 CSNP(鏈路狀態數據庫摘要報文)。默認情況下,CSNP 的發送間隔為 10 秒。華為 VRP 系統允許通過接口命令 isis timer csnp 修改該默認值。

  • 調整建議
    • 縮短該值有利于網絡的快速收斂,但會增加帶寬開銷。
    • 在網絡較為穩定的情況下,適當增大該值可以減少對帶寬的占用。

這些計時器提供了一些優化和控制鏈路狀態信息泛洪的方法。一般情況下,不建議修改這些計時器的默認值,除非能夠預測相應的結果。如果網絡規模較大,可以通過升級路由器來加快收斂速度。此外,在網絡規劃時,應確保網絡的高可用性。


鏈路狀態數據庫同步過程

廣播網絡中的同步過程

在廣播網絡中,路由器在鄰接關系初始化后,會首先泛洪自己的 LSP。L1 的 LSP 發送到組播地址 01-80-C2-00-00-14(L1 IS),而 L2 的 LSP 發送到組播地址 01-80-C2-00-00-15(L2 IS)。其他 L1 或 L2 鄰居接收 LSP 后無需確認,因此廣播網絡中的 LSP 泛洪是不可靠的。

那么,LSP 的始發路由器如何確保所有鄰居都接收到自己的 LSP 呢?IS-IS 協議通過 DIS 周期性地發送 CSNP 來保證廣播網絡中鏈路狀態數據庫的同步。

DIS 的作用

DIS 是 IS-IS 協議中用于在廣播網絡中控制數據庫信息泛洪和同步的關鍵組件。在廣播網絡中,所有路由器均與 DIS 建立了鄰接關系,這意味著 DIS 的數據庫包含了其他所有路由器的數據庫信息。基于此,DIS 使用一個或多個 CSNP 描述其整個鏈路狀態數據庫信息,并周期性地(每隔 10 秒)將其擴散到網絡中。

同步機制

其他路由器接收到 DIS 的 CSNP 后,會將其與自己數據庫中的內容進行比較。如果發現缺失或較新的 LSP,它們會發送 PSNP(部分序列號報文)來請求相應的 LSP。網絡中的 DIS 或擁有該 LSP 的鄰居路由器收到請求后,會回應相應的 LSP。

在廣播鏈路上,發送 LSP 之前會在接口上設置一個 SRM(發送請求標志),待 LSP 發送完成后,該標志會立即清除。如果路由器發現自己的 LSP 在 DIS 的 CSNP 中缺失,或者自己的 LSP 更新,則會主動將該 LSP 泛洪出去。通過上述過程,確保了廣播網絡中所有路由器的數據庫保持一致。

帶寬與效率

雖然 DIS 周期性泛洪 CSNP 會帶來一定的帶寬開銷,但這種方法相對簡單,避免了對每條接收的 LSP 進行確認的復雜性。

廣播網絡鏈路狀態信息的同步過程示例

下圖展示了廣播網絡中鏈路狀態信息同步的完整過程。

在這里插入圖片描述
廣播網絡鏈路狀態信息的同步過程如下:

  • R3 發送 LSP:R3 與 R1 和 R2 建立鄰居關系后,它將自己的鏈路狀態報文(LSP)R3.00-00 發送到組播地址。這樣,R1 和 R2 都將收到該 LSP。

  • R2(DIS)處理 LSP:作為指定中間系統(DIS),R2 收到 R3 的 LSP 后,將其加入到鏈路狀態數據庫(LSDB)中。

  • R2 發送 CSNP:R2 等待 CSNP 報文定時器超時(DIS 每隔 10 秒發送一次 CSNP 報文),然后發送 CSNP 報文,以同步該網絡內的 LSDB。

  • R3 請求缺失的 LSP:R3 收到 DIS 發來的 CSNP 報文,該報文描述了網絡中所有路由器的 LSP(R1 00-00、R2 00-00、R2 01-00 和 R3 00-00)。R3 將自己的 LSDB 與 CSNP 報文中的信息進行比較,發現自己缺少 R1 和 R2 的 LSP。于是,R3 向 DIS 發送 PSNP 報文,請求這些缺失的 LSP。

  • DIS 響應 PSNP 請求:DIS(R2)收到 R3 的 PSNP 報文請求后,向 R3 發送對應的 LSP。

R3 DIS R1 組播 LSP ( R3.00-00 ) 組播 LSP ( R3.00-00 ) 加入 LSP 到 LSDB 每隔 10 秒發送一次CSNP CSNP ( LSDB摘要,包括 R1、R2、R3 的 LSP ) CSNP ( LSDB摘要,包括 R1、R2、R3 的 LSP ) PSNP 請求缺失 LSP ( R1.00-00、R2.00-00、R2.01-00 ) LSP ( R1.00-00 ) LSP ( R2.00-00 ) LSP ( R2.01-00 ) R3 DIS R1

通過這一過程,確保了廣播網絡中所有路由器的數據庫都是一致的,從而實現了鏈路狀態信息的有效同步。


點對點(P2P)網絡中的同步過程

與廣播網絡不同,IS-IS 協議在 P2P 網絡中的數據庫同步過程中,接收到鄰居的 LSP 后需要給予確認(采用可靠方式)。因為在 P2P 鏈路上,每臺路由器只有一個鄰居,確認過程不會帶來過多的資源開銷。

同步機制

在 P2P 網絡中,當兩臺路由器建立鄰接關系后,會首先交換 CSNP。與前文所述類似,路由器通過比較接收到的 CSNP 內容,確定本地數據庫中缺失的 LSP,并根據 LSP 的新舊比較規則,比較自身數據庫和鄰居數據庫中的 LSP。

對于缺少或過時的 LSP,路由器會發送 PSNP 進行請求,并在收到鄰居回應的 LSP 后使用 PSNP 進行確認。如果路由器發現鄰居路由器缺失或擁有更舊的 LSP,它會主動將 LSP 發送給鄰居。

如果發送的 LSP 未得到鄰居的 PSNP 確認,且重傳間隔時間超時,路由器會重傳先前的 LSP,直至收到鄰居的 PSNP 確認為止。

標志的作用

在 P2P 鏈路上,接收到 LSP 后,接口上會設置一個 SSN(序列號通知)標志,表示需要向該接口發送 PSNP 確認。收到確認后,SSN 標志將被清除。同時,如果需要將 LSP 拷貝從一個接口發送出去,也會在該接口上設置 SRM 標志,發送完成后標志將立即清除。

P2P 網絡鏈路狀態信息的同步過程示例

圖展示了 P2P 網絡中的同步過程。

在這里插入圖片描述
如圖所示,R2 與 R1、R3 通過點對點鏈路建立連接,以 R1 先發送自己的 CSNP 為例,同步過程如下:

  • R2 收到 R1 的 CSNP(描述了一條 LSP:R1.00-00)后,發送 PSNP 進行請求。
  • R1 收到請求后,將相應的 LSP 拷貝發送到網絡中。
  • R2 收到請求的 LSP 后,將其拷貝存入數據庫中,并在接口 2 設置 SSN 標志,在接口 3 設置 SRM 標志。
  • R2 向 R3 轉發該 LSP 的拷貝,并向 R1 發送 PSNP 進行確認。
  • R2 清除接口 2 上的 SSN 標志。
  • R3 從 R2 收到該 LSP 后,存入數據庫中,并在接口 4 上設置 SSN 標志。
  • R3 向 R2 發送 PSNP 確認,并清除接口 4 上的 SSN 標志。
  • R2 收到 R3 的 PSNP 確認后,清除接口 3 上的 SRM 標志。
R1 R2 R3 CSNP (R1.00-00) PSNP <Request> (R1.00-00) LSP (R1.00-00) 存儲 LSP 到數據庫 (設置 SSN 標志接口 2, 設置 SRM 標志接口 3) LSP 轉發 (R1.00-00) PSNP <Ack> (R1.00-00) 清除接口 2 上的 SSN 標志 存儲 LSP 到數據庫 (設置 SSN 標志接口 4) PSNP <Ack> (R1.00-00) 清除接口 4 上的 SSN 標志 清除接口 3 上的 SRM 標志 R1 R2 R3

  • CSNP 中的 LSP:作為 IS-IS 協議中 LSDB 的“索引目錄”,由 DIS 周期性發送,僅包含 LSP 的關鍵狀態字段,用于鄰居間快速比對數據庫差異,無需可靠傳輸機制。
  • LSDB 中的 LSP:作為鏈路狀態數據庫的實體內容,包含全網拓撲細節,通過泛洪機制在網絡中傳播,依賴 PSNP 確認和重傳機制保證完整性,是路由計算的核心數據。
CSNP 中的 LSP 描述(索引信息)LSDB 中的 LSP(完整鏈路狀態報文)
內容詳細程度僅包含 LSP 標識符(LSP ID)、序列號(Seq)、校驗和(Checksum)等狀態字段,無拓撲細節包含完整鏈路狀態信息,如鄰居關系、鏈路開銷(Cost)、接口狀態、IP 地址等拓撲數據
作用作為數據庫摘要,供鄰居路由器比對本地 LSDB,識別需要更新、刪除或請求的 LSP存儲全網鏈路狀態實體,為 SPF 算法計算路由提供基礎數據
數據大小較小(僅索引字段),通常為幾十到幾百字節較大(包含完整拓撲),根據網絡規模可達數千字節
發送頻率由 DIS 周期性發送(IS-IS 協議默認周期為 10 秒),鄰居關系建立后 DIS 會立即開始發送 CSNP 以實現數據庫同步。觸發式泛洪(如鏈路狀態變化時),或響應鄰居 PSNP 請求時發送
確認機制無需確認,僅用于數據庫狀態同步通知通過 PSNP(部分序列號分組)請求缺失 LSP,并通過虛擬重傳隊列(VRQ)確保可靠傳輸
是否包含拓撲細節不包含,僅為 LSP 的“目錄索引”完整包含網絡拓撲結構、鏈路屬性等細節
作用對象向鄰居路由器提供本地 LSDB 的索引快照,用于數據庫同步供本地路由計算(SPF 算法)及鄰居路由器構建完整 LSDB

via: HCIE

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

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

相關文章

Windows DOS CMD 100

1. systeminfo&#xff1a;顯示系統詳細信息&#xff08;安裝日期/補丁/內存等&#xff09; 2. sfc /scannow&#xff1a;掃描并修復系統文件損壞 [管理員] 3. chkdsk /f&#xff1a;檢查磁盤錯誤并修復&#xff08;需重啟&#xff09; [管理員] 4. cleanmgr&#xff1a;啟動…

HTML初學者第三天

<1>文檔類型聲明標簽——<!DOCTYPE><!DOCTYPE>文檔聲明&#xff0c;作用是告訴瀏覽器使用哪種HTML版本來顯示網頁。<!DOCTYPE html>這句代碼的意思是&#xff1a;當前頁面采用的是HTML5版本來顯示網頁。注意&#xff1a;-<!DOCTYPE>聲明位于文檔…

學車筆記6

“不踩離合利用發動機制動”是指在駕駛過程中&#xff0c;駕駛員抬起油門踏板&#xff0c;但不踩下離合器踏板&#xff0c;利用發動機自身的阻力來減緩車輛速度的一種制動方式。具體介紹如下&#xff1a; #### 原理 - **動力傳遞反向**&#xff1a;正常情況下&#xff0c;發動…

人體坐姿檢測系統項目教程(YOLO11+PyTorch+可視化)

&#x1f4a1;本文主要內容&#xff1a;本項目基于YOLO11深度學習目標檢測算法&#xff0c;設計并實現了一個人體坐姿檢測系統。系統能夠自動識別圖像或視頻中的多種坐姿類型&#xff08;如&#xff1a;正常坐姿、不良坐姿等&#xff09;&#xff0c;為健康監測、智能教室、辦公…

服務網格可觀測性深度實踐與創新優化

主題&#xff1a;突破服務網格監控瓶頸——基于eBPF的無侵入式全鏈路可觀測性實踐 技術領域&#xff1a;云原生/微服務/服務網格&#xff08;Service Mesh&#xff09; 一、問題背景&#xff1a;傳統服務網格監控的痛點 在Istio、Linkerd等服務網格架構中&#xff0c;可觀測…

微信小程序41~50

1.列表渲染-進階用法 如果要對默認的變量名和下標進行修改&#xff0c;可以使用wx:for-item和wx:for-index wx:for-item可以指定數組當前元素的變量名 wx:for-index可以指定數組當前下標的變量名將wx:for用在標簽上&#xff0c;以渲染一個包含多個節點的結構快 并不是一個組件…

向量數據庫-Milvus快速入門

Milvus 概述 向量是神經網絡模型的輸出數據格式&#xff0c;可以有效地對信息進行編碼&#xff0c;在知識庫、語義搜索、檢索增強生成&#xff08;RAG&#xff09;等人工智能應用中發揮著舉足輕重的作用。 Milvus 是一個開源的向量數據庫&#xff0c;適合各種規模的人…

uniapp的光標跟隨和打字機效果

1、準備好容器文字的顯示textRef&#xff0c;以及光標的顯示 &#xff0c;使用transform-translate對光標進行移動到文字后面<template><view class"container" ref"contentRef"><u-parse :content"nodeText" ref"textRef&q…

「ECG信號處理——(21)基于Pan-Tompkins和隨機森林(RF)的睡眠呼吸暫停檢測算法」2025年7月4日

目錄 1、引言 2、數據庫介紹&#xff08;Apnea-ECG Database) 3、基于Pan-Tompkins和隨機森林&#xff08;RF&#xff09;的睡眠呼吸暫停檢測算法 3.1 算法概述 3.2 心電信號預處理及QRS波檢測算法 3.3 心電信號的隨機森林睡眠呼吸暫停識別 4、實驗結果 4.1 心電信號預處理及QR…

C++學習之STL學習:list的模擬實現

在上一篇學習了list的使用后&#xff0c;在本篇我們將通過模擬實現的方式深入了解list的底層運作原理。 作者的個人gitee&#xff1a;樓田莉子 (riko-lou-tian) - Gitee.com 感興趣的讀者可以看一看 目錄 前置準備 結點的定義 鏈表類的定義 迭代器 普通迭代器 const迭代器 …

不引入變量 異或交換的缺點

文章目錄選擇排序正確代碼交換兩個數位置的方法引入中間變量不引入中間變量&#xff0c;使用異或的方法錯誤原因優化代碼選擇排序正確代碼 // 數組中交換i和j位置的數public static void swap(int[] arr, int i, int j) {int tmp arr[i];arr[i] arr[j];arr[j] tmp;}// 選擇排…

VS Code中使用Git的方法:環境配置與Git操作

本文介紹在Windows電腦的VS Code中&#xff0c;配置Git環境并使用Git命令、功能的方法。 1 環境部署 首先&#xff0c;我們需要分別安裝Git環境與VS Code軟件。這里需要注意&#xff0c;即使是在VS Code中使用Git&#xff0c;也需要我們首先在電腦上單獨配置好Git的環境&#…

在 Windows 上安裝和運行 Apache Kafka

Apache Kafka是一款開源應用程序&#xff0c;用于實時處理海量數據流。Apache Kafka 是一個發布-訂閱消息系統。消息系統允許您在進程、應用程序和服務器之間發送消息。廣義上講&#xff0c;Apache Kafka 是一款可以定義主題并進行進一步處理的軟件。 下載和安裝 Apache Kafk…

【嵌入式電機控制#8】編碼器測速實戰

一、編碼器測速重要參數有刷電機編碼器參數&#xff08;其他的后面會慢慢提及&#xff0c;也可以在某寶看&#xff09;1. 編碼器分辨率&#xff08;PPR&#xff09;2. 編碼器工作電壓 3. 電機減速比 例如 30&#xff1a;1 指的就是電機減速軸轉1圈&#xff0c;編碼器轉30圈。注…

在C#中,可以不實例化一個類而直接調用其靜態字段

這是因為靜態成員&#xff08;static members&#xff09;屬于類本身&#xff0c;而不是類的實例。這是靜態成員的核心特性1. 靜態成員屬于類&#xff0c;而非實例當用static關鍵字修飾字段、方法或屬性時&#xff0c;這些成員會綁定到類級別&#xff0c;而不是實例級別。它們在…

Win11 安裝 Visual Studio(保姆教程 - 更新至2025.07)

Visual Studio 安裝&#xff08;保姆教程 - 更新至2025.07&#xff09; 前言安裝須知安裝過程1. 下載安裝包2. 安裝3. 注冊4. 創建桌面快捷方式 前言 本教程針對 非計算機相關專業的小白用戶 &#xff0c;手把手教你如何基于 win11 操作系統 安裝 Visual Studio 2022。安裝搭載…

工商銀行杭州軟開校招面經分享

近年來,央國企成為了很多求職者的首選,無論是校招還是社招。不過,在選擇央國企的時候,還是盡量要選擇壟斷性或者盈利多的。 昨天看到一份 2024 年中國企業 500 強榜單中提到的最賺錢的十家央國企的名單,給大家分享一下。 排名企業名稱成立時間主要業務描述2024年營收(萬…

李宏毅genai筆記:推理

0 思考越多效果越好 可以把算力投入在training的時候&#xff0c;也可以投入在testing上面 連起來的線表示表現是差不多的&#xff0c;越高分&#xff08;越右上方&#xff09;越好 同樣-1000分&#xff0c;可以訓練時候用力較少&#xff0c;test的時候多用點算力 但是training…

使用SSH隧道連接遠程主機

概述 SSH(Secure Shell 的縮寫)是一種網絡協議,通過使用身份驗證機制,是兩臺計算機進行加密通信。 SSH 主要用途是登錄服務器,還可以作為加密通信的中介,充當兩臺服務器之間的通信加密跳板,這個功能稱為端口轉發(port forwarding),又稱 SSH 隧道(tunnel)。 端口…

數據結構---鏈表理解(二)

文章目錄 二、鏈表2.1 鏈表初始化2.2 單鏈表2.2.1 單鏈表---頭插法2.2.2 單鏈表---單鏈表遍歷2.2.3 單鏈表---尾插法2.2.4 單鏈表---在指定位置插入數據2.2.5 單鏈表---刪除指定位置節點2.2.6 單鏈表---獲取鏈表長度2.2.7 單鏈表---釋放鏈表 二、鏈表 暫時到這一步你就理解為&a…