目錄

簡介

必要條件

採用元件

偽線概念

排除偽線故障

簡介

偽線(PW)用於在MPLS網路中提供端到端服務。它們是基本構建塊，可以提供點對點服務以及多點服務（例如VPLS），實際上是PW的網格，用於建立資料包流經的網橋域。

編輯者：Kumar Sridhar

必要條件

本文檔的讀者應瞭解以下內容：

- MPLS通道概念

採用元件

本檔案中的資訊是根據思科®電信級封包傳輸(CPT)產品系列，尤其是CPT50。

偽線概念

假線在概念上如下所示：

端到端服務由兩部分組成。連線電路(AC)部分和偽線部分。在思科傳輸控制器(CTC)中，整個電路端到端仍稱為偽線，但請記住此處展示的兩個不同部分用於以下故障排除。

另請注意，必須已建立隧道來容納上面配置的Pseudowire服務。通道可能受到保護（如此處所示）或不受保護。

偽線部分實際上在通道端點開始和停止（如果您排除此處顯示的MPLS封裝區塊）。

AC部分從隧道終點一直開始到面向客戶端的介面(其中定義了乙太網流點(EFP))，以標識通過此偽線傳輸的特定客戶端流量。有2個AC；每端一個。

AC以其原生形式傳輸客戶流量，即帶有或不帶VLAN標籤的乙太網幀，這取決於我們是在建立基於VLAN的偽線還是基於乙太網的偽線（PW建立嚮導中的AC Type框）。然後，新增特定PW服務以及在其上承載的隧道的MPLS標籤。然後，通過電路的偽線部分將資料包傳送到MPLS雲。  此過程在MPLS術語中稱為標籤實施。在遠端，會發生反向過程，即標籤被移除或標籤處置，然後現在返回到本地乙太網幀的資料包通過偽線電路的遠端AC部分被傳送到另一端。

排除偽線故障

為了使Pseudowire服務端對端工作，Pseudowire部件和2個AC部件必須協同工作。對電路進行故障排除涉及每個部件，其中每個AC-PW-AC部件均單獨調試，以確定問題所在。

在下面的故障排除討論中，假設已正確配置了PW，並且已調試並排除了所有第1層或物理層問題。

首先，調試PW部分比較容易。首先通過在終端節點上的IOS視窗中運行的命令「show mpls l2 vc」來標識電路。記下連線的虛電路識別符號(VCID)以及目標節點地址。

10.88.130.201#show mpls l2 vc

本地intf本地電路目標地址VC ID狀態

------------- -------------------------- --------------- ---------- ----------

Gi36/2 Eth VLAN 200 202.202.202.202 12 UP

VFI vfi:1 VFI 202.202.202.202 124啟動

VFI vfi:1 VFI 204.204.204.204 124啟動

這裡，感興趣的PW是第一個基於介面Gi36/2配置為VLAN 200的PW。確保介面狀態為UP。

show mpls l2 vc 12 detail命令為您提供了許多有關PW的資訊。下面突出顯示的重要欄位，例如隧道id、遠端節點id、標籤堆疊、PWID編號和統計資訊。

10.88.130.201#show mpls l2 vc 12 detail

本地介面：Gi36/2 up、line protocol up、Eth VLAN 200 up

目的地址：202.202.202.202,VC ID:12,VC狀態：up

輸出介面： Tp102，強制標籤堆疊{16 19}

首選路徑：Tunnel-tp102，活動

預設路徑：就緒

下一跳：point2point

建立時間：00:32:52，上次狀態更改時間：00:05:42

信令協定：手動

狀態TLV支援（本地/遠端）：已啟用/未提供

LDP路由監視：已啟用

標籤/狀態機：已建立，LruRru

上次本地資料平面狀態rcvd：無故障

上一個BFD資料平面狀態rcvd：未傳送

上次本地SSS電路狀態rcvd：無故障

上次傳送本地SSS電路狀態：無故障

上次傳送本地LDP TLV狀態：無故障

上次遠端LDP TLV狀態rcvd：無故障

上次遠端LDP ADJ狀態rcvd：無故障

MPLS VC標籤：本地18，遠端19

PWID:7

組ID:local 0, remote 0

MTU：本地1500，遠端1500 <----本地和遠端值必須匹配

排序：接收已禁用，傳送已禁用

控制字：開

SSO描述符：202.202.202.202/12，本地標籤：18

SSM網段/交換機ID:20513/12320（已使用），PWID:7

VC統計資訊：

傳輸資料包總計：接收10，傳送0

傳輸位元組總數：receive 1320, send 0

傳輸資料包丟棄：接收0，序列錯誤0，傳送0

如果PW關閉，則確保隧道（此處為隧道102）處於良好狀態，如果不是，則排查隧道問題。排除隧道故障不屬於本文的討論範圍。

確保堆疊中的標籤定義如上，即它們不是空白的。通過使用適當的PWID號執行show platform mpls pseudowire pwid 命令，確保在硬體中對PW進行程式設計。

10.88.130.201#show platform mpls pseudowid 7

PW Id:7

PW VC金鑰：7

PW AC金鑰：786434

PW bind receive in HW：是

PW是否在HW中設定：是

當前處於備用狀態：否

---------------------------------------------

—AC資料 —

AC設定是否在HW中：是

AC介面：GigabitEthernet36/2

交流電路ID:2

AC — 內部VLAN:0

AC — 外部VLAN:200

AC- MPLS埠Id:0x1800000A

AC — 埠Id:31

AC模組Id:36

AC-Is efp：是

AC — 封裝：單一標籤

AC-Ing RW Oper：無

AC — 輸出RW Oper：無

AC-Ing RW TPID:0

AC-Ing RW VLAN:0

AC-Ing RW標誌：0x0

---------------------------------------------

—ATOM資料 —

互通型別：Vlan

型別4 PW 4091的對等方請求的VLAN ID

MPLS埠Id:0x1800000B

SD標籤已啟用：是

啟用控制字：是

---------------------------------------------

— 拼版資料 —

---------------------------------------------

遠端VC標籤：19

傳出int編號： 9

BCM埠：28

BCM模組ID:4

隧道出口對象：100008

故障轉移ID:1

故障轉移隧道出口對象：100009

故障轉移BCM埠：0

故障轉移BCMModId:0

---------------------------------------------

— 處置資料 —

---------------------------------------------

本地標籤：18

IF編號：12

是否為MSPW：否

---------------------------------------------

— 強制側 —

在VLAN_XLATE表中找不到VlanId 200的條目

SOURCE_VP[10]

dvp:11

ING_DVP_TABLE[11]

nh_index:411

ING_L3_NEXT_HOP[41]

vlan_id:4095

port_num:28

module_id: 4

drop: 0

EGR_L3_NEXT_HOP[41]

mac_da_profile_index:1

vc_and_swap_index:4099

intf_num:22

dvp:11

EGR_MAC_DA_PROFILE[1]

DA Mac:1 80.C20 .0 0

EGR_MPLS_VC_AND_SWAP_LABEL_TABLE[4099]

mpls_label（VC標籤）：19

EGR_L3_INTF[22]

SA Mac:4055.3958.E0E1

MPLS_TUNNEL_INDEX:4

EGR_IP_TUNNEL_MPLS[4]

(lsp)MPLS_LABEL0

(lsp)MPLS_LABEL1

(lsp)MPLS_LABEL2

(lsp)MPLS_LABEL3

— 處理端 —

MPLS_ENTRY[1592]

標籤：18

source_vp:11

nh_index:11

SOURCE_VP[11]

DVP:10

ING_DVP_TABLE[10]

nh_index:410

ING_L3_下一跳[410]

Port_num:31

module_id:36

drop: 0

EGR_L3_下一跳[410]

SD_TAG:VINTF_CTR_IDX:134

SD_TAG:RESERVED_3: 0

SD_TAG:SD_TAG_DOT1P_MAPPING_PTR:0

SD_TAG:NEW_PRI:0

SD_TAG:NEW_CFI:0

SD_TAG:SD_TAG_DOT1P_PRI_SELECT:0

SD_TAG:RESERVED_2: 0

SD_TAG:SD_TAG_TPID_INDEX:0

SD_TAG:SD_TAG_ACTION_IF_NOT_PRESENT:0

SD_TAG:SD_TAG_ACTION_IF_PRESENT:3

SD_TAG:HG_L3_OVERRIDE:0

SD_TAG:HG_LEARN_OVERRIDE:1

SD_TAG:HG_MC_DST_PORT_NUM:0

SD_TAG:HG_MODIFY_ENABLE:0

SD_TAG:DVP_IS_NETWORK_PORT:0

SD_TAG:DVP:10

SD_TAG:SD_TAG_VID:0

ENTRY_TYPE:2

錯誤：在EGR_VLAN_XLATE表中找不到條目！

EGR_VLAN_XLATE[-1]

soc_mem_read：記憶體EGR_VLAN_XLATE的索引–1無效

日誌表明，PW已繫結並在硬體中設定，具有正確的VLAN和標籤，與之前所看到的內容一致。

如果任何資料點不匹配或丟失，則問題出在驅動程式中，該驅動程式沒有在硬體中設定和繫結PW。這說明存在軟體或硬體缺陷。

如果目前一切正常，則可以嘗試使用IOS命令「ping mpls pseudowire 202.202.202.202 12 reply mode control-channel」在內部ping PW部分。  再次注意，這僅從一個隧道端點向另一個隧道端點執行ping操作，而不會接觸到電路的AC部分。

10.88.130.201#ping mpls偽線202.202.202 12 reply mode control-channel

正在向202.202.202.202傳送5個100位元組的MPLS回波，

timeout為2秒，send interval為0毫秒：

代碼：「！」 — 成功，「Q」 — 請求未傳送，「。」 — 超時，

'L' — 標籤的輸出介面，'B' — 未標籤的輸出介面，

「D」 — DS對映不匹配，「F」 — 無FEC對映，「f」 — FEC不匹配，

「M」 — 請求格式不正確，「m」 — 不支援的tlv，「N」 — 無標籤條目，

「P」 — 無rx intf標籤埠，「p」 — 過早終止LSP，

「R」 — 傳輸路由器，「I」 — 未知上游索引，

「l」 — 標籤交換與FEC更改，「d」 — 參見DDMAP獲取返回代碼，

「X」 — 未知返回代碼，「x」 — 返回代碼0

鍵入要中止的轉義序列。

!!!!!

成功率為100%(5/5)，往返最小/平均/最大= 1/1/4毫秒

現在，按照我們以前所做的檢查有關PW的統計資訊：

10.88.130.201#show mpls l2 vc 12 det | beg statistics

VC統計資訊：

傳輸資料包總計：接收5,傳送0

傳輸位元組總數：receive 650, send 0

傳輸資料包丟棄：接收0，序列錯誤0，傳送0

請注意ping成功，且5個ping回應封包會記錄為已接收。另請注意，ping請求資料包不會記錄為已傳送。CPU似乎會在計數器後將回應請求/應答資料包傳送到流，因此不會記錄這些資料包。

如果ping不工作，則我們應該後退並調試隧道以確保其正常運行。

如果PW部分仍看起來良好，則關注兩端的AC部分。這是困難的部分，因為它沒有太多調試支援，並且AC路徑可能包括若干卡和介面，如思科CPT50的情況。

但沒什麼事情可以查證。

您可以從測試器傳送模式，或從客戶端裝置執行ping操作，並觀察CPT盒上面向客戶端的介面收到的資料包。對於基於埠的PW而言，這比較容易，但對於基於VLAN的PW則不然，因為介面不顯示每個VLAN的資料包。在任何情況下，面向客戶端的介面的命令「show int ...」應顯示資料包計數遞增，至少表示資料包正在正確進入，且沒有其它基於VLAN的電路處於活動狀態。

請記住，這些通過AC進入的資料包應該標籤為MPLS，然後通過PW傳送到另一端。因此，它們應該在PW部分的統計資訊中顯示為傳送的資料包。請在show mpls l2 vc 12 detail命令中尋找它們 | beg statistics"

10.88.130.201#show mpls l2 vc 12 detail | beg統計

VC統計資訊：

傳輸資料包總數：接收0，傳送數232495

傳輸位元組總數：receive 0,send 356647330

傳輸資料包丟棄：接收0，序列錯誤0，傳送0

而且它們應在遠端相同的命令中顯示為封包「接收」。因此，此端的傳送PW封包和遠端接收的接收PW封包應該與從使用者端裝置傳送的封包數量相符。使用相同的命令" show mpls l2 vc 12 detail | beg statistics」在遠端顯示：

10.88.130.202#show mpls l2 vc 12 detail | 乞求統計

VC統計資訊：

傳輸資料包總數：receive 232495, send 0

傳輸位元組總數：receive 356647330,send 0

傳輸資料包丟棄：接收0，序列錯誤0，傳送0

您可以在一端傳送與另一端接收之間的封包中看到相符專案。

如果需要清除MPLS計數器，請使用命令「clear mpls counters」。

檢查統計資訊的另一種方法是使用SPAN功能將傳入EFP流量複製到CPT節點上的備用埠，然後查詢此埠上的統計資訊以監控從客戶介面收到的資料包。

最後，您可以在不同的交換矩陣和線卡上運行BCM shell命令以在內部跟蹤資料包，但這超出了本文的範圍。