HuaWei ❀ MPLS Ping&MPLS Tracert

MPLS Ping&MPLS Tracert

在MPLS網絡中,如果通過LSP轉發數據失敗,負責建立LSP的MPLS控制平面將無法檢測到這種錯誤,加大了網絡維護的難度,MPLS Ping/MPLS Tracert爲用戶提供了發現LSP錯誤、並及時定位失效節點的機制;
MPLS Ping主要用於檢查網絡連接及主機是否可達,MPLS Tracert在檢查網絡連接以及主機是否可達的同時,還可以分析網絡什麼地方發生了故障,類似於普通IP的Ping/Tracert,MPLS Ping/MPLS Tracert使用MPLS回顯請求報文(Echo Request)和MPLS回顯應答報文(Echo Reply)檢測LSP的可用性,這兩種消息都以UDP報文格式發送,其中回顯請求報文的UDP端口號爲3503,該端口號只有使用MPLS功能的設備才能識別;
MPLS Echo Request中攜帶需要檢測的FEC信息,和其他屬於此FEC的報文一樣沿LSP發送,從而實現對LSP的檢測,MPLS回顯請求報文通過MPLS轉發給目的端,而MPLS回顯應答報文則通過IP轉發給源端,另外爲了防止LSP斷路時Echo Request進行IP轉發,從而保證LSP的連通性測試,將Echo Request消息的IP頭中目的地址設置爲127.0.0.1/8(本地環回地址)IP頭中的TTL值爲1;

MPLS Ping
如下圖所示,RA上建立了一條目的地爲RD的LSP,從RA對該LSP進行MPLS Ping時的處理如下:
在這裏插入圖片描述

  • RA查找該LSP是否存在(對於TE隧道,查找Tunnel接口是否存在且CR-LSP是否建立成功)如果不存在,返回錯誤信息,停止Ping,如果存在,則繼續進行以下操作;
  • RA構造MPLS Echo Request報文,IP頭中的目的地址爲127.0.0.1/8,IP頭中的TTL值爲1,同時將4.4.4.4填入Echo Request報文中的目的FEC堆棧中,然後查找相應的LSP,壓入LSP的標籤,將報文發送給RB;
  • 中間節點RB和RC對MPLS Echo Request報文進行普通MPLS轉發,如果中間節點MPLS轉發失敗,則中間節點返回帶有錯誤碼的MPLS Echo Reply報文;
  • 當MPLS轉發路徑無故障,則MPLS Echo Request報文到達LSP的出節點RD,然後檢查目的的FEC堆棧中包含的目的地址4.4.4.4是否爲自己的loopback接口地址,以此來確認RD是該FEC的真正出口後,返回正確的MPLS Echo Reply報文,至此整個MPLS Ping過程結束;

MPLS Tracert
如上圖所示,從RA對4.4.4.4/32進行MPLS Tracert時的處理如下:

  • RA檢查LSP是否存在(對於TE隧道,查找Tunnel接口是否存在且CR-LSP是否建立成功)如果不存在,返回錯誤信息,停止Tracert,否則繼續進行如下處理;
  • RA構造MPLS Echo Request報文,IP頭中的目的地址爲127.0.0.1/8,同時將4.4.4.4填入Echo Request報文中的目的FEC堆棧中,然後查找相應的LSP,壓入LSP的標籤並且將TTL值設置爲1,將報文發送給RB,此Echo Request報文中包含Downstream Mapping TLV(用來攜帶LSP在當前節點的下游信息,主要包括下一跳地址、出標籤等);
  • RB收到RA發送來的報文後,將Echo Request中TTL減1爲0發現TTL值超時,然後RB需要檢測是否存在該LSP,同時檢查報文中Downstream Mapping TLV的下一跳地址、出標籤是否正確,如果兩項檢查都爲真,返回正確的MPLS Echo Reply報文,並且報文中必須攜帶RB本身包含下一跳和出標籤的Downstream Mapping TLV給RA,如果檢查不爲真,則返回錯誤的MPLS Echo Reply報文;
  • RA收到正確的MPLS Echo Reply報文後再次發送MPLS Echo Request報文,報文的封裝方式跟步驟2類似,只是將LSP標籤的TTL值設置爲2,此時的Echo Request報文中的Downstream Mapping TLV是從Echo Reply報文中複製過來的,然後RB收到該報文後進行普通MPLS轉發,RC收到報文後,標籤的TTL值超時,同步驟3處理方式後返回MPLS Echo Reply報文;
  • RA收到正確的MPLS Echo Reply報文後重復步驟4,增加TTL值,複製Downstream Mapping TLV後發送MPLS Echo Request報文,RB和RC對該報文進行普通MPLS轉發,RD收發此報文,重複步驟3處理方式對報文進行處理,以此來發現已經是該LSP的出節點,因此返回不帶下游信息的MPLS Echo Reply報文,至此整個MPLS Tracert過程結束;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章