計算機網絡-LDP標簽發布與管理

前面學習了LDP建立鄰居,建立會話,今天來學習在MPLS中的標簽發布與管理。

在MPLS網絡中,下游LSR決定標簽和FEC的綁定關系,并將這種綁定關系發布給上游LSR。LDP通過發送標簽請求標簽映射消息,在LDP對等體之間通告FEC和標簽的綁定關系來建立LSP。標簽的發布和管理由標簽發布方式標簽分配控制方式標簽保持方式來決定。

一、標簽的上游與下游

MPLS根據數據的轉發方向確定上、下游關系。標簽報文從上游LSR發出,被下游LSR接收并處理。

如圖所示,對于到達192.168.3.0/24的LSP而言,R3是R2的下游LSR,R1是R2的上游LSR。

標簽的上游與下游

二、標簽發布方式

標簽發布方式(Label Advertisement Mode)有DU模式和DoD模式兩種。

DU模式

  • 對于一個特定的FEC,LSR無需從上游獲得標簽請求消息即進行標簽分配與分發。
  • LSR會主動將自己為FEC捆綁的標簽通告給上游鄰居,無需鄰居先發起請求再通告。

DU模式

這里再復習一下前面的知識:
標簽空間

標簽發布方式為DU時,系統默認支持LDP為所有對等體分標簽,即每個節點都可以向所有的對等體發布標簽映射關系,不再區分上下游關系。因為在只給上游對等體分標簽情況下,發送標簽映射消息的時候,要根據路由信息對會話的上下游關系進行確認。

DoD模式

  • 對于一個特定的FEC,LSR獲得標簽請求消息之后才進行標簽分配與分發。
  • 一般情況下,對特定FEC的訪問需求會觸發標簽請求消息。

DoD模式

在DoD模式下,只有上游鄰居向自己請求標簽映射時,LSR才會通告標簽映射給該鄰居。

兩者區別就是在DU模式下定義了FEC和標簽映射關系就會向上游通告標簽信息,而DoD模式下需要經過請求和回復。

三、標簽分配控制方式

標簽分配控制方式有獨立(Independent)模式和有序(Ordered)模式。

獨立(Independent)模式:本地LSR可以自主地分配一個標簽綁定到某個FEC,并通告給上游LSR,而無需等待下游的標簽。

獨立(Independent)模式

標簽分配控制方式需要與標簽發布方式結合使用:

  • 在使用DU作為標簽分發方式的情況下,如圖所示,R2和R3對192.168.4.0/24這條FEC,可以在上游LSR無請求,且自身沒有收到下游LSR的標簽綁定信息的情況下,主動向上游LSR通告標簽綁定信息。
  • 采用DoD作為標簽發布方式時,如圖所示,R2和R3對192.168.4.0/24這條FEC,只要收到上游LSR的標簽請求消息,可以在自身沒有收到下游LSR的標簽綁定信息的情況下,向上游LSR通告標簽綁定信息。

有序(Ordered)模式:對于LSR上某個FEC的標簽映射,只有當該LSR已經具有此FEC下一跳的標簽映射消息、或者該LSR就是此FEC的出節點時,該LSR才可以向上游發送此FEC的標簽映射。

有序(Ordered)模式

當標簽控制方式為Ordered,只有當LSR收到特定FEC下一跳發送的特定FEC標簽映射消息或者LSR是LSP的出口節點時,LSR才可以向上游發送標簽映射消息。

  • 當標簽分發方式為DU時,如圖所示,對于192.168.4.0/24這條FEC,不論上游LSR是否有請求,必須收到下游LSR對此FEC的標簽綁定信息才向上游LSR發布標簽綁定信息,所以必須由Egress LSR,也就是R4作為LSP建立的“起點”。
  • 當標簽發布方式采用DoD時,如圖所示,對于192.168.4.0/24這條FEC,只有收到上游LSR請求的請求,且自身已經收到下游LSR的標簽綁定信息的情況下,才向上游LSR通告標簽綁定信息。因此,必須由Ingress LSR(R1)發起請求,逐跳請求到Egress LSR(R4),最終由R4開始,向上游建立LSP。

概念是比較復雜,到時候通過實驗來模擬會比較好理解,目前只需要知道有幾種發布方式和標簽控制方式即可。

四、標簽保留模式

標簽保留有自由(Liberal)模式和保守(Conservative)模式。

自由(Liberal)模式

  • LSR收到的標簽映射可能來自下一跳,也可能來自非下一跳。
  • 對于從鄰居LSR收到的標簽映射,無論鄰居LSR是不是自己的下一跳都保留。

自由(Liberal)模式

當基于IP網絡部署MPLS時,LSR根據IP路由表判斷接收到的標簽映射是否來自下一跳。
Liberal方式的最大優點在于路由發生變化時能夠快速建立新的LSP進行數據轉發,因為Liberal方式保留了所有的標簽。缺點是需要分發和維護不必要的標簽映射。

  • DU標簽分發方式下,如果采用Liberal保持方式,則R3保留所有LDP鄰居 R2和R5發來的關于192.168.1.0/24這個FEC的標簽,無論該R2和R5是否是IP路由表中到達192.168.1.0/24的下一跳。
  • DoD標簽分發方式下,如果采用Liberal保持方式, LSR會向所有LDP鄰居請求標簽。但通常來說,DoD分發方式都會和Conservative保持方式搭配使用。

保守(Conservative)模式:對于從鄰居LSR收到的標簽映射,只有當鄰居LSR是自己的下一跳時才保留。

保守(Conservative)模式

Conservative方式的優點在于只需保留和維護用于轉發數據的標簽,以達到節約標簽的目的。

  • 當使用DU標簽分發方式時,LSR可能從多個LDP鄰居收到到同一網段的標簽映射消息,如圖中R3會分別從R2和R5收到網段192.168.1.0/24的標簽映射消息。如果采用Conservative保持方式,則R3只保留下一跳R2發來的標簽,丟棄非下一跳R5發來的標簽。
  • 當使用DoD標簽分發方式時, LSR根據路由信息只向它的下一跳請求標簽。

當網絡拓撲變化引起下一跳鄰居改變時:

  • 使用自由標簽保持方式,LSR可以直接利用原來非下一跳鄰居發來的標簽,迅速重建LSP,但需要更多的內存和標簽空間。
  • 使用保守標簽保持方式,LSR只保留來自下一跳鄰居的標簽,節省了內存和標簽空間,但LSP的重建會比較慢。
  • 保守標簽保持方式通常與DoD方式一起,用于標簽空間有限的LSR。

標簽保留方式簡單說就是LSR對于非上游通告的標簽是否保留的策略,可以節省標簽空間。

五、PHP(Penultimate Hop Popping,次末跳彈出)特性

PHP(Penultimate Hop Popping,次末跳彈出),如果激活了PHP特性,那么egress節點在為本地路由分配標簽的時候,會分配一個特殊標簽—3,該標簽被稱為隱式空標簽(Implicit NULL Label)。當LSR轉發一個標簽報文時,如果發現對應的出標簽值為3,則LSR會將棧頂標簽彈出,并將里面所封裝的數據轉發給下游LSR。

PHP特性

  • 在標簽發布時,R3為作為192.168.3.0/24這條FEC的Egress LSR。分配標簽時,R3為該FEC分配了標簽3,并將該標簽綁定信息通告給R2。
  • 在數據轉發時,R2作為到達192.168.3.0的次末跳(倒數第二跳),發現出標簽值為3,于是將標簽頭部彈出,將IP報文轉發給R3,而R3則僅需執行一次查詢操作(查詢FIB表)即可獲得相應的轉發信息,轉發效率得到了提升。

簡單說就是在倒數第二跳就彈出標簽了,減輕最后一跳LSR的壓力。前面在標簽空間我們也學習了0-15是一些特殊的標簽,一般不用于數據轉發,主要用于某些特性使用。

六、空標簽

缺省情況下,Egress節點向倒數第二跳分配隱式空標簽(implicit-null),即特殊標簽3。

但在部署QoS的場景下,標簽被彈出后,其中的優先級也會一并丟失。

隱式空標簽與顯式空標簽

顯式空標簽機制,Egress節點向倒數第二跳分配特殊標簽0。

R3在轉發標簽報文時,若出標簽封裝為0,則不會將標簽頭部彈出,標簽頭部中的QoS信息得以保存。R4在收到帶0標簽的報文的時候,直接彈出標簽,不用去查找ILM表項。

缺省情況下,Egress分配的是隱式空標簽,通過label advertise explicit-null使能Egress節點向倒數第二跳分配顯式空標簽。

隱式空標簽與顯式空標簽2

隱式空標簽在QoS中可能關聯了某些流量優先級特征,缺省情況下倒數第二跳彈出標簽就會導致信息丟失,通過配置顯式空標簽可以分配標簽0,然后不彈出標簽,但是在最后一跳不需要查詢ILM表,直接查詢FIB表即可,既保證高效轉發又保留了可能的QoS信息。

在MPLS視圖下,執行命令label advertise { explicit-null | implicit-null | non-null },配置向倒數第二跳分配的標簽。根據參數的不同,可以配置Egress向倒數第二跳分配不同的標簽。

  • 缺省情況下,使用的是implicit-null,Egress向倒數第二跳節點分配隱式空標簽,值為3。
  • 如果配置的是explicit-null,Egress節點向倒數第二跳分配顯式空標簽,值為0。當需要支持MPLS QoS屬性時,可以選用explicit-null。
  • 如果配置的是non-null,Egress向倒數第二跳正常分配標簽,即分配的標簽值不小于16。

華為設備目前缺省模式為下游自主方式(DU)+ 有序標簽分配控制方式(Ordered)+ 自由標簽保持方式(Liberal)。

總結:本次學習明確了LSR的上游與下游,初步了解標簽的分配方式、控制方式與保留方式,缺省的PHP特性功能等。

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

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

相關文章

Go語言運算符詳解

文章目錄 1. 算術運算符2. 關系運算符3. 邏輯運算符4. 位運算符5. 賦值運算符6. 其他運算符運算符優先級注意事項 Go語言提供了與其他語言類似的運算符,包括算術運算符、關系運算符、邏輯運算符、位運算符、賦值運算符等。這些運算符即可滿足基本的運算需求。 1. 算…

Selenium模擬人類行為,操作網頁的方法(全)

看到有朋友評論問,用selenium怎么模仿人類行為,去操作網頁的頁面呢? 我想了想,這確實是一個很大的點,不應該是一段代碼能解決的, 就像是,如果讓程序模擬人類的行為。例如模擬人類買菜,做飯&am…

RabbitMQ的工作隊列模式和路由模式有什么區別?

RabbitMQ 的工作隊列模式(Work Queues)和路由模式(Routing)是兩種不同的消息傳遞模式,主要區別在于消息的分發邏輯和使用場景。以下是它們的核心差異: 1. 工作隊列模式(Work Queues&#xff09…

牛客練習賽138(首篇萬字題解???)

賽時成績如下: 1. 小s的簽到題 小s拿到了一個比賽榜單,他要用最快的速度找到簽到題,但是小s腦子還是有點暈,請你幫幫小s,助力他找到簽到題。 比賽榜單是一個 2 行 n 列的表格: 第一行是 n 個大寫字母&#…

linux0.11內核源碼修仙傳第十六章——獲取硬盤信息及根目錄掛載

🚀 前言 書接第十四章:linux0.11內核源碼修仙傳第十四章——進程調度之fork函數,在這一節博客中已經通過fork進程創建了一個新的進程1,并且可以被調度,接下來接著主線繼續走下去。希望各位給個三連,拜托啦&…

mobile自動化測試-appium webdriverio

WebdriverIO是一款支持mobile app和mobile web自動化測試框架,與appium集成,完成對mobile應用測試。支持ios 和android兩種平臺,且功能豐富,是mobile app自動化測試首選框架。且官方還提供了mobile 應用測試example代碼&#xff0…

Kubernetes排錯(十):常見網絡故障排查

通用排查思路 Kubernetes 集群內不同服務之間的網絡通信出現異常,表現為請求超時、連接失敗或響應緩慢,導致服務間依賴關系中斷,依賴服務的功能不可用或性能下降,甚至可能波及整個微服務架構,引發連鎖反應&#xff0c…

PyTorch 張量與自動微分操作

筆記 1 張量索引操作 import torch ? # 下標從左到右從0開始(0->第一個值), 從右到左從-1開始 # data[行下標, 列下標] # data[0軸下標, 1軸下標, 2軸下標] ? def dm01():# 創建張量torch.manual_seed(0)data torch.randint(low0, high10, size(4, 5))print(data->,…

接口的基礎定義與屬性約束

在 TypeScript 中,接口(Interface)是一個非常強大且常用的特性。接口定義了對象的結構,包括對象的屬性和方法,可以為對象提供類型檢查和約束。通過接口,我們可以清晰地描述一個對象應該具備哪些屬性和方法。…

高效全能PDF工具,支持OCR識別

軟件介紹 PDF XChange Editor是一款功能強大的PDF編輯工具,支持多種操作功能,不僅可編輯PDF內容與圖片,還具備OCR識別表單信息的能力,滿足多種場景下的需求。 軟件特點 這款PDF編輯器完全免費,用戶下載后直接…

OpenCV 中用于背景分割的一個類cv::bgsegm::BackgroundSubtractorGMG

操作系統:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 編程語言:C11 算法描述 cv::bgsegm::BackgroundSubtractorGMG 是 OpenCV 中用于背景分割的一個類,它實現了基于貝葉斯推理的背景建模算法(Bayesi…

MongoDB知識框架

簡介:MongoDB 是一個基于分布式文件存儲的數據庫,屬于 NoSQL 數據庫產品,以下是其知識框架總結: 一、數據模型 文檔:MongoDB 中的數據以 BSON(二進制形式的 JSON)格式存儲在集合中,…

WEBSTORM前端 —— 第2章:CSS —— 第8節:網頁制作2(小兔鮮兒)

目錄 1.項目目錄 2.SEO 三大標簽 3.Favicon 圖標 4.版心 5.快捷導航(shortcut) 6.頭部(header) 7.底部(footer) 8.banner 9.banner – 圓點 10.新鮮好物(goods) 11.熱門品牌(brand) 12.生鮮(fresh) 13.最新專題(topic) 1.項目目錄 【xtx-pc】 ima…

1、RocketMQ 核心架構拆解

1. 為什么要使用消息隊列? 消息隊列(MQ)是分布式系統中不可或缺的中間件,主要解決系統間的解耦、異步和削峰填谷問題。 解耦:生產者和消費者通過消息隊列通信,彼此無需直接依賴,極大提升系統靈…

[Linux網絡_71] NAT技術 | 正反代理 | 網絡協議總結 | 五種IO模型

目錄 1.NAT技術 NAPT 2.NAT和代理服務器 3.網線通信各層協議總結 補充說明 4.五種 IO 模型 1.什么是IO?什么是高效的IO? 2.有那些IO的方式?這么多的方式,有那些是高效的? 異步 IO 🎣 關鍵缺陷類比…

Unity基礎學習(八)時間相關內容Time

眾所周知,每一個游戲都會有自己的時間。這個時間可以是內部,從游戲開始的時間,也可以是外部真實的物理時間,時間相關內容 主要用于游戲中 參與位移計時 時間暫停等。那么我們今天就來看看Unity中和時間相關的內容。 Unity時間功能…

Java游戲服務器開發流水賬(1)游戲服務器的架構淺析

新項目立項停滯,頭大。近期讀老項目代碼看到Java,筆記記錄一下。 為什么要做服務器的架構 游戲服務器架構設計具有多方面的重要意義,它直接關系到游戲的性能、可擴展性、穩定性以及用戶體驗等關鍵因素 確保游戲的流暢運行 優化數據處理&a…

計算機視覺與深度學習 | 基于Transformer的低照度圖像增強技術

基于Transformer的低照度圖像增強技術通過結合Transformer的全局建模能力和傳統圖像增強理論(如Retinex),在保留顏色信息、抑制噪聲和平衡亮度方面展現出顯著優勢。以下是其核心原理、關鍵公式及典型代碼實現: 一、原理分析 1. 全局依賴建模與局部特征融合 Transformer的核…

Linux 文件目錄管理常用命令

pwd 顯示當前絕對路徑 cd 切換目錄 指令備注cd -回退cd …返回上一層cd ~切換到用戶主目錄 ls 列出目錄的內容 指令備注ls -a顯示當前目錄中的所有文件和目錄,包括隱藏文件ls -l以長格式顯示當前目錄中的文件和目錄ls -hl以人類可讀的方式顯示當前目錄中的文…

【Linux 系統調試】性能分析工具perf使用與調試方法

目錄 一、perf基本概念 1?. 事件類型? 2?. 低開銷高精度 3?. 工具定位? 二、安裝與基礎配置 1. 安裝方法 2. 啟用符號調試 三、perf工作原理 1. 數據采集機制 2. 硬件事件轉化流程 四、perf應用場景 1. 系統瓶頸定位 2. 鎖競爭優化 3. 緩存優化 五、perf高級…