日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MPLS基本原理讲解

發布時間:2024/3/26 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MPLS基本原理讲解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

MPLS基礎概念

MPLS協議發展歷程

MPLS網絡結構

MPLS標簽分配和交換的體系結構

MPLS標簽結構

MPLS報文轉發

MPLS報文轉發涉及的相關概念

標簽操作動作

MPLS報文轉發的基本流程

MPLS報文轉發的具體流程 ??

MPLS對TTL的處理


MPLS基礎概念

MPLS(多協議標簽交換協議),是一種應用于運營商IP骨干網的數據交換技術,采用短而定長的標簽進行數據轉發。

MPLS起源于IPv4網絡,但目前其核心技術可通過擴展支持多種網絡層協議,如IPv6、IPX(因特網包交換)、CLNP(無連接網絡協議)等,在數據鏈路層上支持PPP、以太網、HDLC等多種協議

MPLS協議發展歷程

20世紀90年代,互聯網流量快速增長,由于路由器采用最長匹配算法逐跳轉發數據包,轉發效率低,成為網絡數據轉發的瓶頸,快速路由技術成為當時研究的熱點,在各種方案中,IETF確定了MPLS協議作為標準的協議。

不過隨著硬件技術的發展,路由查找速度已經不是阻礙網絡發展的瓶頸了,這使得MPLS在提高轉發速度方面不再具備明顯的優勢。MPLS在設計時定位在TCP/UDP網路體系結構中的2.5層位置,即位于鏈路層和網絡層之間,但是加上其“Multiprotocol”的設計理念,使得MPLS在VPN、TE(流量工程)、QoS等應用方面變得更加靈活

MPLS網絡結構

路由器角色

LSR(標簽交換路由器)

MPLS網絡中的路由器,進行MPLS標簽交換和報文轉發的網絡設備

LER(邊緣路由器)

位于MPLS網絡邊緣,連接其它網絡(如IP網絡)的LSR,主要進行標簽的分發和剝離

標簽轉發涉及的基本概念

LSP(標簽交換路徑)

IP報文在MPLS網路轉發過程中所經過的路徑

FEC(等價轉發類)

一般具有相同特征的報文為同一FEC

這個特征可以是報文的源IP地址、目的IP地址、源端口、目的端口、VPN實例、QoS策略等要素中的一個或者多個(在MPLS網絡中,常見的就是匹配相同路由的所有報文屬于一條FEC)

對于一條FEC來說,沿途所有設備都必須具有相同的路由(前綴和掩碼必須完全相同),才可以建立一條LSP(即不能隨便做路由聚合的操作)

FEC與LSP的關系

同一FEC的報文走的是同一條LSP

可以理解為 ?相同特征的報文打上同一標記,同一標記的走同一條路徑進行轉發

建立LSP的兩種標簽

標簽用來唯一標識一個FEC

入標簽(In lable) ?—— ?本地自己產生

出標簽(Out lable)—— ??由鄰居分配(針對動態LSP)

相同FEC的入標簽必須一致,出標簽必須一致

不同FEC的入標簽必須不同

不同FEC的出標簽可以相同,也可以不同

  • 對于下一跳相同的不同路由,出標簽必須不同(是同一下游節點為不同FEC下發的標簽)
  • 對于下一跳也不同的不同路由,出標簽可以相同,也可以不同(是由不同下游節點為不同FEC下發的標簽)
  • 對于同一條FEC,出標簽和入標簽可以相同,也可以不同(入標簽是由本地分配的,出標簽是由下游節點分配的,之間沒有唯一性要求)

    建立LSP的三種節點

    一條LSP有且只有一個入節點和一個出節點,可以有0各或多個中間節點

    需要先有LSP,才可以確定入節點、出節點等

    入節點(Ingress)

    LSP的入口LER稱為入節點(打標簽操作)

    中間節點(Transit)

    LSP的中間的LSR稱為中間節點(進行標簽交換和轉發)

    出節點(Egress)

    LSP的出口LER稱為入節點(剝離標簽操作)

    MPLS標簽分配和交換的體系結構

    MPLS體系主要是由控制平面和轉發平面構成

    控制平面(產生和維護路由信息以及標簽信息)

    RIB(Routing Information Base):由各種IP路由協議生成,用于進行路由選擇

    LDP:一種動態標簽分發協議,負責MPLS標簽的分配、LFIB的建立,LSP的建立與拆除等工作

    LIB(Label Information Base):由LDP生成(每個LSR都會基于所收到的每個FEC的標簽映射信息,建立LIB表項),用于管理標簽信息,包含FEC網段、入標簽、出標簽等信息

    轉發平面(負責普通IP報文的轉發以及MPLS標簽報文的轉發)

    FIB(Forwarding Information Base):用于指導IP報文轉發,從RIB提取必要的路由信息生成。包含目的網段、出接口、下一跳IP地址、路由標記、路由優先級等信息

    LFIB(Label Forwarding Information Base):用于指導MPLS報文轉發,從LIB提取必要的信息生成,包含目的網段、出接口、下一跳、入標簽、出標簽等信息

    ?

    MPLS標簽結構

    MPLS標簽封裝在數據鏈路層和網絡層之間,總共32Bit

    標簽(Label)是一個短而定長的、只有本地意義的表示,用于唯一標識一個FEC

    Label(20bit):標簽值字段

    ?????? 0~15:特殊標簽

    ?????? ??????

    16~1023:靜態LSP和MPLS TE中靜態CR-LSP共享的標簽空間。

    1024及以上:LDP、RSVP-TE、MP-BGP等動態信令協議的標簽空間。

    Exp(3bit):標識MPLS報文的優先級,數值越小,優先級越低,當設別阻塞時,優先發送優先級高的報文

    S(1bit):棧底標識,由于MPLS支持多層標簽(即標簽嵌套),當S值為1時表明為最底層標簽,其它各層標簽S值為0

    TTL(8bit):和IP報文中的TTL(Time To Live)意義相同,用于限制MPLS報文的傳輸距離


    MPLS報文轉發

    MPLS報文轉發涉及的相關概念

    Tunnel ID字段:32bit,就只是本地有效,需要在本地設備上唯一

    NHLFE:下一跳標簽轉發表項,用于指導MPLS報文轉發,包含Tunnel ID、出接口、出標簽、標簽操作類型等信息

    ILM:入標簽映射,入標簽到下一跳標簽轉發表項的映射,包含Tunnel ID、入標簽、入接口、標簽操作類型等信息

    在MPLS轉發過程中,FIB、ILM和NHLFE表現是通過Tunnel ID關聯的

    可以將LFIB再細化為ILM表和NHLFE表

    標簽操作動作

    Push:標簽壓入, 可能會在Ingress或Transit節點上發生,在二層協議頭和IP頭部之間插入一個MPLS標簽,或者是在現有標簽棧頂再增加一個新的出標簽(標簽嵌套)

    Swap:標簽交換,會在Transit節點上發生,通過ILM、Nhife表項查找下一臺哦

    用下一跳分配的標簽交換MPLS報文中原有的棧頂標簽。原有MPLS報文可以攜帶一層或多層標簽,不過只會替換最外層標簽

    Pop:標簽剝掉,會在倒數第二跳Transit節點(PHP特性-在LDP協議中有講解)或者Egress節點發生。MPLS報文離開MPLS域時剝離標簽,使得后續報文按照IP路由轉發。

    MPLS報文轉發的基本流程

    IP報文和MPLS報文的轉發主要是依靠FIB表和LFIB表項的

    當收到普通IP報文時,查找FIB表,如果Tunnel ID為0x0,則進行普通報文IP轉發(通過FIB表轉發)。如果Tunnel ID為非0x0,則進行MPLS轉發(通過LFIB表)

    當收到帶標簽的報文時,查找LFIB表,如果對應的標簽為普通標簽,則進行MPLS轉發。如果對應的標簽為特殊標簽(例如標簽3),則將標簽彈出,進行IP轉發

    MPLS報文轉發的具體流程 ??

    將LFIB再細化為ILM表和NHLFE表,來討論其轉發流程

    不同節點對標簽不同的處理方式

    Ingree入節點,執行Push動作。

  • 查看FIB表,根據目的IP地址找到對應的Tunnel ID
  • 根據FIB表的Tunnel ID找到對應的Nhlfe表項,得到出接口、下一跳、出標簽和標簽操作類型
  • 在IP報文中壓入出標簽,同時處理TTL,然后將封裝好的MPLS報文發送給下一跳
  • Transit中間節點,執行Swap動作。

  • 根據MPLS的標簽值查找對應的ILM表,得到Tunnel ID
  • 根據Tunnel ID找到對應的Nhlfe表項,得到出接口、下一跳、出標簽和標簽操作類型
  • 如果MPLS的標簽值≥16,則用新標簽替換MPLS報文中的舊標簽,同時處理TTL,然后將封裝好的MPLS報文通過LFIB表項發送給下一跳
  • 如果標簽值為3,則直接彈出標簽,同時處理TTL,然后將封裝好的MPLS報文發送給下一跳
  • Egress出節點,執行Pop動作。

  • 如果Egress收到IP報文,則根據FIB表轉發
  • 如果Egree收到MPLS報文,根據MPLS的標簽值找到對應的ILM表,獲得標簽操作類型
  • ?????? 如果標簽中的棧底標識S=1,則表明該標簽是棧底標簽,直接進行IP轉發

    ?????? 如果標簽中的棧底標識S=0,則表明還有下一層標簽,繼續下一層標簽轉發?

    MPLS對TTL的處理

    兩種模式,Uniform和Pope模式

    Uniform模式:(缺省)

    在入節點,IP TTL減1映射到MPLS TTL字段

    此后報文在MPLS網絡中按照標準的TTL處理方式處理

    在出節點將MPLS TTL減1后映射到IP TTL字段

    Pipe模式:

    在入節點,IP TTL值減1,MPLS TTL字段為固定值

    此后報文在MPLS網絡中按照標準的TTL處理方式處理。

    在出節點會將IP TTL字段的值減1。

    即IP分組經過MPLS網絡時,無論經過多少跳,IP TTL只在入節點和出節點分別減1

    注意事項

    在MPLS VPN應用中,

    出于網絡安全的考慮,需要隱藏MPLS骨干網絡的結構,

    這種情況下,對于私網報文,Ingress上使用Pipe模式。

    入節點系統視圖:undo ttl propagate? 配置ttl模式為Pipe

    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?ttl propagate? ? ? ? ? 配置ttl模式為propagate

    總結

    以上是生活随笔為你收集整理的MPLS基本原理讲解的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。