0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

從標簽入手了解什么是MPLS

SDNLAB ? 來源:SDNLAB ? 2023-01-16 17:48 ? 次閱讀

MPLS(多協議標簽交換) 顧名思義,它不考慮協議(多協議),使用標簽(標簽交換)在網絡中移動數據包。多年來,MPLS 一直是網絡運營商確保實時應用程序可靠連接的首選技術。

MPLS 通過將標簽應用于數據包的報頭來封裝傳入的數據包。MPLS 域中的每個路由器都會查看 MPLS 標簽以了解如何處理每個數據包,但其不查看或關心數據包中的內容,它只關心標簽。當數據包離開 MPLS 域時,標簽將被移除,由標準 IP 路由接管。

可以看出,MPLS技術的核心就是標簽交換。本文我們將從標簽入手,逐步了解什么是MPLS。

d456854a-934b-11ed-bfe3-dac502259ad0.png

MPLS 為什么要使用標簽?

MPLS 為什么要添加標簽?什么是標簽?

我們先看看VLAN 標簽是什么樣,大概就知道什么是 MPLS 標簽了。標簽本身基本上只是數字,如下圖所示,第 4 行寫著“Label:299776”。

d462569a-934b-11ed-bfe3-dac502259ad0.png

在此數據包捕獲中,標簽被插入到“第 2 層”以太網報頭和“第 3 層”IP 報頭之間。這就是為什么有人說 MPLS 工作在“第2層半”。

這些數字,也就是這些標簽,只對接收數據包的路由器有意義。本質上,標簽就像一條指令,這條指令通常做兩件事:

它告訴接收路由器如何轉發(fā)數據包

或者,它告訴接收路由器該數據包是特定 VPN 的一部分

當一個標簽用于在特定方向轉發(fā)數據包時,我們稱之為傳輸標簽。當一個標簽用于告訴路由器該數據包屬于一個特定的 VPN 時,它被稱為服務標簽,有時也稱為VPN 標簽。MPLS VPN 讓許多客戶都可以使用相同的私有 IP 范圍,因為接收路由器不會查看目標 IP 地址。相反,VPN 標簽會告訴路由器數據包屬于哪個客戶。

d480f17c-934b-11ed-bfe3-dac502259ad0.png

路由器如何學習這些標簽?

IP 是一種尋址方案,需要其他協議在各處實際通告 IP。我們可以以類似的方式考慮 MPLS:MPLS 是一種標簽方案,需要其他協議在各處實際通告這些標簽。

先說說如何通告MPLS傳輸標簽。有四種常見的方法,這四種協議以完全不同的方式工作,并且有不同的用例。

LDP(Label Distribution Protocol)代表標簽分發(fā)協議。這是一個非?;镜膮f議,并且易于配置。流量將始終遵循 OSPF/IS-IS 指定的最佳路徑。在 MPLS 網絡中,兩個標簽交換路由器(LSR)必須用在它們之間或通過它們轉發(fā)流量的標簽上達成一致。

RSVP是資源預留協議。RSVP 相比LDP 需要手動配置,但優(yōu)勢在于它提供了大量的流量工程功能,能夠按照路由協議的要求以不同的方式移動流量,例如繞過帶寬問題進行路由,或明確避免網絡中的某些鏈路。

分段路由是一種在 OSPF 或 IS-IS 內部發(fā)布標簽的方法,這意味著不需要運行額外的協議來通告標簽。它可以實時告訴路由器使用哪個標簽到達哪個目的地。通過將決策置于中央控制器中,可以獲得真正的網絡全局視圖,甚至在 OSPF 區(qū)域或 IS-IS 級別,以及不同的自治系統(tǒng)之間。

BGP-Labelled Unicast是一個特殊的 BGP 地址族,往往只用于一些非常特地的、更高級的場景。

MPLS VPN 標簽幾乎都是在 BGP 中通告的。畢竟,如果不能在兩個路由器之間傳輸數據包,就不能在它們之間運行 VPN。

d4939412-934b-11ed-bfe3-dac502259ad0.png

路由器如何處理這些標簽?

兩個路由器之間的對話可能是這樣的,路由器 B 對路由器 A 說“如果你想讓我將數據包轉發(fā)給路由器Z,包裹寄給我的時候貼上標簽123456”。然后路由器 B 會對自己編程,如果數據包帶有標簽 123456,則該數據包會始終從特定接口發(fā)送出去。

路由器 B 并不知道這個傳出接口是不是通往路由器 Z 的“最佳”路徑。當路由器 B 將此數據包發(fā)送到路由器 C 時,路由器 C 也將根據標簽知道如何處理該數據包,路由器 D 和路由器 E 等也會如此,一直到終點目的地。只要從一端到另一端有一個標簽交換路徑,沿途的路由器就能夠成功地將數據包從 A 傳輸到 Z 。

路由器 B 甚至可能在發(fā)送標簽時將標簽更改為其他內容。在 LDP 和 RSVP 中,標簽通常只對路由器本身有意義,沿途的每個路由器都可以自己決定它希望前一跳使用什么標簽。當標簽沿途發(fā)生變化時,我們稱之為“交換”標簽。例如,路由器 A 將標簽為 123456 的數據包發(fā)送到路由器 B ,路由器 B 在將其發(fā)送到路由器 C 之前可以將其“交換”為標簽 345678。

(相比之下,Segment Routing 中的某些標簽是全局的,因此它不是MPLS 的通用規(guī)則。)

上面的例子要理解的關鍵是,當路由器 B 收到數據包并將其轉發(fā)到路由器 C 時,路由器 B 根本沒有查看目標 IP。相反,是傳輸標簽告訴路由器 B 如何處理數據包。

因為沒有查看底層目標地址,所以協議可以是 IP、IPv6 或任何其他協議,所以說是多協議標簽交換。

d4a5c0ce-934b-11ed-bfe3-dac502259ad0.png

向數據包添加標簽有何意義?

到目前為止所說的一切聽起來都非常像常規(guī) IP 路由。如果沒有 MPLS,路由器也會查看目標 IP 地址,然后將數據包發(fā)送到下一跳。那么MPLS 有什么意義呢?

如果將網絡設置為每個路由器都知道整個網絡中的每個 IP 地址,那么路由器 B 肯定可以從路由器 A 接收數據包,查看目標地址,檢查自己的路由表,找到“最佳”路線,然后發(fā)送數據包。

但這里有一個問題:如果不想讓一切都發(fā)送到所謂的“最佳”路徑,會發(fā)生什么?

例如,如果所有內容都沿著一條“最佳”路徑發(fā)送,則該鏈接可能會開始被大量使用,甚至可能達到極限。很可能會有其他根本沒有被使用的潛在路徑,最好將一些選擇性流量發(fā)送到次優(yōu)路徑,以充分利用網絡。

當存在另一條不太好且?guī)捒捎玫穆窂綍r,該如何解決鏈路飽和的問題?

如果從路由協議的角度來看,有兩條或多條到達目的地的路徑同樣“好”,那么可以利用ECMP 或等價多路徑,對流量進行負載平衡,并充分利用鏈接。

SD-WAN可以根據目的 IP 地址以外的質量,有選擇地將流量路由到不同的鏈路,也許是基于應用程序本身,也可能是源 IP 地址。這對分支機構來說非常好,但對于每秒有很多千兆流量的服務提供商規(guī)模的網絡,以及數以萬計的用戶前往數百萬目的地的網絡來說,很難真正的擴展。

我們需要的是某種可擴展的、功能豐富的協議,它允許以選擇的任何方式發(fā)送流量,而不總是遵循“最佳”路徑。

幾十年前,這個問題正是服務提供商和大型企業(yè)面臨的問題之一,而MPLS 就是解決答案。

標簽交換路徑

基于標簽轉發(fā)數據包的系統(tǒng)的優(yōu)點在于,中轉路由器不需要知道,甚至不需要關心數據包上的 IPv4 或 IPv6 地址。它們只關心數據包進入了帶有標簽 X 的接口,因此應該從帶有標簽 Y 的不同接口發(fā)送出去,以便路徑上的下一個路由器知道如何處理它。

我們稱這個端到端標記路徑為LSP,或標簽交換路徑。

從路由器 1 開始檢查 LSP ,一直到路由器 10。為了方便起見,我們假設它是通過RSVP創(chuàng)建的。給 RSVP LSP 一個名字和一個目的地,結果如下所示:

d4b4f904-934b-11ed-bfe3-dac502259ad0.png

LSP 是單向的,如果要使流量在真實網絡中正常工作,需要在相反的方向上建立第二個 LSP。但為了簡單演示,我們只關注一個 LSP 。

如上圖所示:

路由器 1 和路由器 10 是PE 路由器,或Provider Edge。

路由器 2、3、4 和 5 都是中轉路由器,簡稱為P(Provider)路由器。

路由器 1 稱為首端或入口路由器,將 LSP 想象成流量進入的隧道。

同樣,路由器 10 稱為尾端或出口路由器。

假設R1 和 R10 正在進行BGP,R10 對 R1 說:“如果你想到達 69.69.69.0/24,請將流量發(fā)送給我?!敝?,R10 會將通告其環(huán)回為該前綴的下一跳。LSP 進入R10 的環(huán)回。

路由器 2、3、4 和 5 不需要運行 BGP,它們只查看數據包上的標簽,不查看 IP 地址。然后計算出需要從哪個接口傳出,相應地交換標簽。

d4dc6eda-934b-11ed-bfe3-dac502259ad0.png

MPLS VPN

假設客戶需要為其各個辦公室購買 100 個 WAN 鏈接,但要求將其放在自己的專用網絡中,不要放在公共互聯網上。服務提供商該如何實現這一點?

可以通過在 WAN 鏈接的末端添加一些額外的配置。

服務提供商會在一個路由器內部創(chuàng)建多個“虛擬”路由表,這些路由表相互獨立,互不通信??蛻粲凶约簩iT的路由表,稱為 VRF,代表Virtual Routing and Forward。

除了客戶和服務提供商之外,沒有人可以“看到”流量??蛻糁g無法相互通信,因為他們在完全獨立的路由表中。

核心路由器不運行 BGP,它們不知道涉及的 IP,甚至不查看 IP 標頭。它們只看標簽,然后進行相應地轉發(fā)。MPLS VPN 的工作方式完全相同。VPN 只需要被邊緣路由器知道即可??梢匝刂鴺撕灲粨Q路徑發(fā)送 VPN 流量,這意味著核心設備甚至不需要知道 VPN 的存在,它們只需要知道將流量發(fā)送到哪個遠程 PE。

但這里有一個問題:在剛才看到的拓撲中,如果 R1 發(fā)送一個數據包到私有 IP 地址 10.0.6.9,在數百個 VPN 客戶中,R10 如何知道這個前綴屬于哪一個?

這就是標簽堆棧思想由來。我們可以在數據包內添加第二個標簽,告訴 R10 該數據包屬于哪個 VPN。數據包捕獲如下:

以太網報頭

外層傳輸標簽<--逐跳更改

內部 VPN 標簽 <–僅對 R10 有意義

IP報頭

TCP/UDP 等報頭

有效載荷

沿途的每一跳只查看外部標簽,然后當數據包到達 R10 時,該 PE 可以查看內部 VPN 標簽并確定它的真正目的地。

這個 MPLS 標簽保留在服務提供商核心中,從 PE 到現場客戶路由器的實際 WAN 鏈路將是純 IP。只有在穿過服務提供商網絡時才需要標簽:從服務提供商到客戶的流量沒有標簽。

編輯:何安

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 網絡
    +關注

    關注

    14

    文章

    7389

    瀏覽量

    88211
  • MPLS
    +關注

    關注

    0

    文章

    130

    瀏覽量

    24058
  • 數據包
    +關注

    關注

    0

    文章

    238

    瀏覽量

    24249

原文標題:一文讀懂MPLS

文章出處:【微信號:SDNLAB,微信公眾號:SDNLAB】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    MPLS VPN配置/基本原理

    MPLS是Internet核心多層交換計算的最新發(fā)展。這里主要描述一下標簽轉發(fā)表的產生過程及IP包如何通過MPLS轉發(fā)。
    發(fā)表于 11-18 16:04 ?1.2w次閱讀
    <b class='flag-5'>MPLS</b> VPN配置/基本原理

    MPLS的優(yōu)點: MPLS四大優(yōu)勢

    ,而是簡單地讀取MPLS標簽并將數據包沿著預定路徑中的下一跳傳送。通過MPLS,你可以通過網絡A點到B點擁有更加堅定的路徑。MPLS的其他
    發(fā)表于 07-19 13:44

    MPLS流量管理

    帶寬的寬帶WAN連接。今天的邊緣路由器有責任智能地管理入站和出站流量。此流量管理的關鍵部分是MPLS流量管理。MPLS流量使用layer2標簽而不是layer3 IP路由,因此只能通過MPLS
    發(fā)表于 07-24 13:42

    通過SD-WAN降低MPLS成本的方法

    標簽完成數據包的傳送,而不是使用第3層基于IP地址的方案,用于將數據包傳送到目的地。由于只有這個專用網絡才能理解第2層標簽,并且由于公共互聯網不了解這些第2層標簽,因此
    發(fā)表于 07-24 13:44

    MPLS供應商應該提供的一些特定功能

    在評估全球多協議標簽交換(MPLS)采購戰(zhàn)略時采取的措施。第一部分研究了在與潛在供應商交談之前設計強大商業(yè)案例的重要性。本文介紹了MPLS供應商應該能夠提供的一些特定功能。服務質量“服務質量
    發(fā)表于 08-03 13:50

    一文告訴你SD-WAN與MPLS的區(qū)別在哪里?

    `一、SD-WAN與MPLS爭論在軟件定義的廣域網(SD-WAN)的出現是基于傳統(tǒng)硬件的網絡提供軟件定義網絡(SDN),存在多協議標簽交換(MPLS),一種用于高效網絡流量的協議。MPLS
    發(fā)表于 03-19 18:02

    驗證MPLS(OC-192,VPN,10GbE):在開始之前需要了解的內容

    驗證MPLS(OC-192,VPN,10GbE):在開始之前需要了解的內容
    發(fā)表于 05-23 06:22

    SD-WAN和MPLS孰優(yōu)孰劣?

      一、SD-WAN與MPLS的紛爭  未出現軟件定義廣域網(SD-WAN)向傳統(tǒng)的基于硬件的網絡提供軟件定義網絡(SDN)的優(yōu)勢之前,多協議標簽交換(MPLS)是眾多企業(yè)的選擇,一種用于高效
    發(fā)表于 05-30 16:53

    中興MPLS培訓

    R26;MPLS MPLS—— ——多協議標簽交換( MultiprotocolLabel Switching Switching)R26; MPLS 是一種二層半的面向連接的轉發(fā)技術
    發(fā)表于 06-22 16:26 ?34次下載

    Cisco出版MPLS和VPN體系結構

    Cisco出版MPLS和VPN體系結構 多協議標簽交換 (MPLS:Multi-Protocol Label Switching) 簡介 多協議標簽交換(
    發(fā)表于 03-16 14:41 ?0次下載

    mpls技術的核心是什么 標簽轉發(fā)過程是怎樣的

    MPLS,又稱為多協議標簽交換技術,可以說MPLS技術的核心就是標簽交換。
    發(fā)表于 12-29 16:57 ?961次閱讀

    MPLS技術的基礎知識

    MPLS(多協議標簽交換) 顧名思義,它不考慮協議(多協議),使用標簽(標簽交換)在網絡中移動數據包。多年來,MPLS 一直是網絡運營商確保
    的頭像 發(fā)表于 02-06 16:52 ?1382次閱讀

    什么是MPLS?有何特點?與SD-WAN有何區(qū)別?

    什么是MPLS?有何特點?與SD-WAN有何區(qū)別? MPLS是多協議標簽交換的縮寫,是一種網絡傳輸協議。它被設計用于提高數據包轉發(fā)的速度和效率,同時提供彈性和可靠性。MPLS通過為數據
    的頭像 發(fā)表于 12-27 14:09 ?589次閱讀

    mpls組網價格費用

    在當今數字化時代,無論是大型企業(yè)還是中小型企業(yè),穩(wěn)定高效的網絡都是順利開展業(yè)務 的關鍵。而MPLS(多協議標簽交換)技術作為一種廣泛應用于企業(yè)網絡的解決方案,備受 關注。但是,對于很多企業(yè)來說
    的頭像 發(fā)表于 03-29 15:57 ?221次閱讀

    MPLS究竟是什么?

    由于運行 MPLS 的服務提供商只查看數據包上的標簽,而不是 IP 本身,這使得服務提供商能夠使用 MPLS 為此類客戶提供 VPN 服務。
    發(fā)表于 04-26 16:09 ?255次閱讀
    <b class='flag-5'>MPLS</b>究竟是什么?