mpls出現背景
multiple protocol label swtching 多協議標籤交換 適配性強
當你啓用了mpls,收到一個報文帶標籤封裝,不會查看路由表, 查看這個標籤的值 。會匹配一張基於標籤的轉發表 LFIB 基於asic芯片 並且是精確匹配 就是數字匹配數字。
不可能 一個數據層面的機制能獨立運行,必須要有控制層面機制來配合他,tdp/ldp bgp rsvp。
路由器的轉發能力非常弱:表現在模糊匹配,並且cpu調用路由器。查表逐條匹配
交換:數據層面的機制,是轉發技術
ipv4轉發技術:
-
進程交換 傳統查錶轉發
-
快速交換 相同去往同一目的網絡的數據包整合成一組流 基於cash
-
c ef 自動形成兩張表 FIB 路由條目 會根據路由表做實時變化 。並且會針對下一條不直連的靜態和bgp路由 自動做下一跳直連化的處理, 鄰居關係表
cef和mpls已經差距沒有太大了,所以現在使用的mpls並不是爲了提高路由器的轉發機制,而是運營商的一項業務,可以解決bgp的黑洞問題。mpls vpn 運營商敲幾條命令打通專線,是運營商主要的盈利來源。 mpls te 配合專線做路徑優化。、
標籤
打標籤:FEC 轉發等價類 具備相同屬性的數據包集合
默認使用目的ip地址
產生標籤的行爲: 標籤分發。
FEC對應路由條目對應標籤
在cisco啓用mpls必須 要啓用cef ,之所以用不了原因就是你沒有辦法保存所以產生的標籤 ,保存的好處,當你收到域外到域內的ipv4路由 只需要查一次fib.
igp也得運行,獲得路由條目,mpls控制層面的協議會針對路由表的路由條目來產生標籤,這樣就可以添加標籤,產生表項
產生標籤
我們要知道在路由器上啓用mpls只是數據層面的機制並不會產生標籤,通過mpls控制層面機制才能產生標籤這個行爲是標籤分發。標籤分發是本地行爲。並且能標籤通告 會產生LIB標籤信息庫。
通告:1.思科產生並且有鄰居 2.華爲產生並且鄰居向我做了標籤請求
LFIB標籤處理: 兩
- 壓入 添加新 1.華爲思科 完全獨立自主分發 2. 下游鄰居路由器先針對該路由產生標籤,我纔會產生。
- 彈出 去除最外層 標籤 mpls vpn2 mpls te 3個
- 交換
- 保持 添加 1.全保持 2.自由標籤保持、節約資源,但收斂效率低。
入標籤 :當入標籤是本地標籤的時候才能夠識別
出標籤
LIB的信息放入LFIB就形成表項
TDP私有 711端口 廣播
LDP公有 646 自動發送組播hello 基於udp ,交換傳輸地址
一臺路由器先形成fib查找該目的下一跳地址,針對這個地址查ldp的鄰居表,匹配各個地址的被隱藏地址,在針對路由id LIB
確定它所被分發的標籤,在基於本地標籤,形成標籤映射 ,最後形成LFIB
啓用mpls lsr收到帶標籤的數據包 轉發數據查LFIB
收到ipv4數據 查FIB
lsr通過mpls接口發送數據的時候,儘可能打標。
數據層面的上流和下游
數據層面的源是上游 ,控制層面是下游。
標籤通告是由下游向上遊通告
通告環回口默認32位,但本地的掩碼是24位,因爲本地標籤跟鄰居標籤彼此不兼容
LER邊界