此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
伪线(PW)用于跨MPLS网络提供端到端服务。它们是基本构建块,可提供点对点服务以及VPLS等多点服务,VPLS实际上是PW的网状网,用于创建数据包流经的网桥域。
编辑者:库马尔·斯里达尔
本文档的读者应具备以下方面的知识:
本文档中的信息基于Cisco®运营商分组传输(CPT)产品系列,特别是CPT50。
伪线概念如下:
端到端服务由2个部分组成。连接电路(AC)部分和伪线部分。整个电路端到端在思科传输控制器(CTC)中仍称为伪线,但请记住此处对以下故障排除的两部分区别。
另请记住,必须创建隧道来容纳上面配置的伪线服务。隧道可能受到保护(如图所示)或未受保护。
伪线部分实际上在隧道端点开始和停止(如果排除此处显示的MPLS封装块)。
AC部分从隧道端点开始,一直到客户端接口(定义以太网流点(EFP)),以识别通过此伪线传输的特定客户端流量。有2个交流电;每端一个。
AC以其本征形式传送客户流量,即带有或不带VLAN标记的以太网帧,具体取决于我们是创建基于VLAN的伪线还是基于以太网的伪线(PW创建向导中的AC类型框)。 然后,添加特定PW服务及其所经过的隧道的MPLS标签。然后,数据包通过电路的伪线部分发送到MPLS云。 此过程在MPLS术语中称为标签实施。在远端,会发生反向过程,即删除标签或发生标签处置,然后数据包(现在返回本地以太网帧)通过伪线电路的远端交流部分传送到另一端。
为了使伪线服务端到端工作,伪线部分和2个交流部分必须协同工作。排除电路故障涉及每个部分,其中每个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以太网VLAN 200 202.202.202.202 12 UP
VFI vfi::1 VFI 202.202.202.202 124 UP
VFI vfi::1 VFI 204.204.204.204 124 UP
此处,关注的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打开,线路协议打开,以太网VLAN 200打开
目的地址:202.202.202.202,VC ID:12,VC状态: up
输出接口:Tp102,强加的标签堆栈{16 19}
首选路径:Tunnel-tp102,活动
默认路径:就绪
下一跳:点2点
创建时间: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
Group ID:本地0,远程0
MTU:local 1500, remote 1500 < — 本地和远程值必须匹配
排序:接收禁用,发送禁用
控制字:开启
SSO描述符:202.202.202.202/12,本地标签:18
SSM网段/交换机ID:20513/12320(已用),PWID:7
VC统计信息:
中转数据包总计:接收10,发送0
传输字节总计: 接收1320,发送0
传输数据包丢弃: 接收0,序列错误0,发送0
如果PW关闭,则确保隧道(此处为隧道102)状态良好,否则,请排除隧道问题。对隧道进行故障排除不在本文的讨论范围之内。
确保堆栈中的标签如上所示定义,即它们不为空。使用适当的PWID编号执行命令show platform mpls pseudowire pwid,确保在硬件中对PW进行编程。
10.88.130.201#show platform mpls pseudowire pwid 7
PW ID:7
PW VC密钥:7
PW AC密钥:786434
PW绑定是否在硬件中接收:是
硬件中是否设置了PW:是
当前处于备用状态:否
—
— 交流数据 —
AC设置是硬件:是
交流接口:千兆以太网36/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操作:none
AC — 出口RW操作:none
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 Num:9
BCM端口:28
BCM ModId: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[411]
vlan_id:4095
port_num:28
module_id:4
丢弃:0
EGR_L3_NEXT_HOP[411]
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_NEXT_HOP[410]
端口号:31
module_id:36
丢弃:0
EGR_L3_NEXT_HOP[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
Error:在EGR_VLAN_XLATE表中找不到条目!
EGR_VLAN_XLATE[-1]
soc_mem_read:内存EGR_VLAN_XLATE的索引–1无效
日志表明,PW已绑定并设置在硬件中,且带有正确的VLAN和标签,与以前看到的一致。
如果任何数据点不匹配或缺失,则问题出在驱动程序中,该驱动程序未在硬件中设置和绑定PW。这表明存在软件或硬件缺陷。
如果到目前为止一切正常,则您可以尝试使用IOS命令“ping mpls pseudowire 202.202.202 12 reply mode control-channel”在内部ping PW部分。 再次注意,这只会从一个隧道端点ping通PW部分到另一个,而不会触碰电路的交流部分。
10.88.130.201# ping mpls pseudowire 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” — 不支持tlvs、“N” — 无标签条目、
“P” — 无rx intf标签端口,“p” - LSP的提前终止,
'R' — 中转路由器,'I' — 未知上游索引,
'l' — 标签通过FEC更改交换,'d' — 请参阅DDMAP获取返回代码,
'X' — 未知返回代码, 'x' — 返回代码0
Type escape sequence to abort.
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms
现在,检查PW上的统计信息,就像我们之前做的一样:
10.88.130.201#show mpls l2 vc 12 det | BEG统计
VC统计信息:
中转数据包总计:接收5,发送0
传输字节总计: 接收650,发送0
传输数据包丢弃: 接收0,序列错误0,发送0
请注意,ping操作成功,并且5个ping回应数据包记录为已接收。另请注意,ping请求数据包不会记录为已发送。回应请求/应答数据包似乎由CPU发送到计数器后的数据流中,因此不会被记录。
如果ping不起作用,则我们应该退后一步,调试隧道,确保隧道正常运行。
如果PW部件看起来仍然良好,则将注意力放在两端的交流部件上。这是困难的部分,因为它没有太多调试支持,而且交流路径可能包括多个卡和接口,如Cisco 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统计信息:
中转数据包总计:receive 0, send 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 | beg statis
VC统计信息:
中转数据包总计:接收232495,发送0
传输字节总计: 接收356647330,发送0
传输数据包丢弃: 接收0,序列错误0,发送0
您可以在数据包中看到一端发送和另一端接收之间的匹配。
如果需要清除MPLS计数器,请使用命令“clear mpls counters”。
检查统计信息的另一种方法是使用SPAN功能将传入EFP流量复制到CPT节点上的备用端口,然后查找此端口上的统计信息以监控从客户接口接收的数据包。
最后,您可以在不同的交换矩阵和线卡上运行BCM外壳命令,以在内部跟踪数据包,但这不在本文的讨论范围之内。