02-CFD配置
本章节下载: 02-CFD配置 (253.57 KB)
CFD(Connectivity Fault Detection,连通错误检测)遵循IEEE 802.1ag的CFM(Connectivity Fault Management,连通错误管理)协议和ITU-T的Y.1731协议,是一种二层网络的端到端OAM(Operation, Administration, and Maintenance,操作、管理和维护)机制,主要用于在二层网络中检测链路连通性,以及在故障发生时确认并定位故障。
MD(Maintenance Domain,维护域)是指连通错误检测所覆盖的一个网络或网络的一部分,它以“MD名称”来标识。
MA(Maintenance Association,维护集)是MD的一部分,一个MD可划分为一个或多个MA。MA以“MD名称+MA名称”来标识。
MA可以服务于指定的VLAN,也可以不服务于任何VLAN,分别称为带VLAN属性和不带VLAN属性的MA。
MP(Maintenance Point,维护点)配置在接口上,属于某个MA,设备支持外向MEP(Maintenance association End Point,维护端点)。
MEP确定了MA的边界,以“MEP ID”来标识。
在三层以太网网络中,MEP所属的MA确定了该MEP发出的报文所属的VLAN。
MEP具有方向性,分为内向MEP和外向MEP两种:
· 内向MEP不会通过其所在的接口发送CFD协议报文。在三层以太网网络中,内向MEP是通过所属MA所服务的VLAN中其它所有接口广播CFD协议报文。
· 外向MEP则直接通过其所在的接口向外发送CFD协议报文。外向MEP仅支持在三层以太网网络中配置。
MEP列表是同一MA中允许配置的本地MEP和需要监控的远端MEP的集合,它限定了MA中MEP的选取范围,不同设备上同一MA中的所有MEP都应包含在此列表中,且MEP ID互不重复。如果MEP收到来自远端设备的CCM(Continuity Check Message,连续性检测报文)报文所携带的MEP不在同一MA的MEP列表中,就丢弃该报文。
本端设备发送的CCM报文应当携带RDI(Remote Defect Indication,远程故障指示)标志位,否则对端设备将无法感知某些故障。当MA中至少有一个本地MEP未学到MEP列表中的所有远端MEP时,该MA中的MEP发送的CCM报文将不会携带RDI标志位。
为了准确定位故障点,在MD中引入了级别(层次)的概念。MD共分为八级,用整数0~7来表示,数字越大级别越高,MD的范围也就越大。不同MD之间可以相邻或嵌套,但不能交叉,且嵌套时只能由高级别MD向低级别MD嵌套,即低级别MD必须包含在高级别MD内部。
MD的分级使得故障定位更加便利和准确,如图1-1所示,有MD_A和MD_B两个MD,MD_B嵌套于MD_A中,如果在MD_A的边界上发现链路不通,则表明该域内的设备出现了故障,故障可能出现在Device A~Device E这五台设备上。此时,如果在MD_B的边界上也发现链路不通,则故障范围就缩小到Device B~Device D这三台设备上;反之,如果MD_B中的设备都工作正常,则至少可以确定Device C是没有故障的。
CFD协议报文的交互以及相关处理都是基于MD的,合理的MD规划可以帮助网络管理员迅速定位故障点。
MA的级别等于其所属MD的级别。
MEP的级别等于其所属MD的级别。
对于带VLAN属性的MA,MP仅在其所属MA所服务于的VLAN中发送的报文,报文的级别为MP所属MD的级别。
对于不带VLAN属性的MA,MP只能为外向MEP,主要用来检测直连链路的状态。不带VLAN属性的外向MEP所发送报文的级别为该MEP所属MD的级别。
当MEP收到高于自己级别的报文时只转发该报文,不会进行处理;当MEP收到小于等于自己级别的报文时才会进行处理。
连通错误检测的有效应用建立在合理的网络部署和配置之上,它的功能是在所配置的MP之间实现的。
MEP之间的连通失败可能由设备故障或配置错误造成,连续性检测(Continuity Check,CC)功能就是用来检测MEP之间的连通状态。该功能的实现方式是:由MEP周期性地发送CCM报文,相同MA的其它MEP接收该报文,并由此获知远端状态。若MEP在3.5个CCM报文发送周期内未收到远端MEP发来的CCM报文,则认为链路有问题,会输出日志报告。当MD中的多个MEP在发送CCM报文时,就实现了多点到多点之间的链路检测。
CCM报文是组播报文。
环回(Loopback,LB)功能类似于IP层的ping功能,用于验证源MEP与目标MP之间的连接状态。该功能的实现方式是:由源MEP发送LBM(Loopback Message,环回报文)报文给目标MP,并根据能否收到对端反馈的LBR(Loopback Reply,环回应答)报文来检验链路状态。
LBM报文分为组播和单播两种报文,H3C设备支持发送和处理单播LBM报文,不支持发送但可处理组播LBM报文;LBR是单播报文。
链路跟踪(Linktrace,LT)功能类似于IP层的tracert功能,用于确定源MEP到目标MP的路径,其实现方式是:由源MEP发送LTM(Linktrace Message,链路跟踪报文)报文给目标MP,目标MP收到该报文后,都会发送LTR(Linktrace Reply,链路跟踪应答)报文给源MEP,源MEP则根据收到的LTR报文来确定到目标MP的路径。
LTM报文是组播报文,LTR报文是单播报文。
告警抑制功能用来减少MEP故障告警的数量。如果MEP在3.5个CCM报文发送周期内未收到远端MEP发来的CCM报文,便立刻开始周期性地发送AIS(Alarm Indication Signal,告警指示信号)报文,该报文的发送方向与CCM报文相反。其它MEP在收到AIS报文后,会抑制本端的故障告警,并继续发送AIS报文。此后,如果MEP收到了CCM报文,便停止发送AIS报文并恢复故障告警。
AIS报文是组播报文。
单向丢包测试(Loss Measurement,LM)功能用来检测MEP之间的单向丢包情况,其实现方式是:由源MEP发送LMM(Loss Measurement Message,丢包测量报文)报文给目标MEP,目标MEP收到该报文后,会发送LMR(Loss Measurement Reply,丢包测量应答)报文给源MEP,源MEP则根据两个连续的LMR报文来计算源MEP和目标MEP间的丢包数,即源MEP从收到第二个LMR报文开始,根据本LMR报文和前一个LMR报文的统计计数来计算源MEP和目标MEP间的丢包数。
LMM报文和LMR报文都是单播报文。
帧时延测试(Delay Measurement,DM)功能用来检测MEP之间报文传输的时延情况,分为以下两种:
· 单向时延测试
单向时延测试功能的实现方式是:源MEP发送1DM(One-way Delay Measurement,单向时延测量)报文给目标MEP,该报文中携带有其发送时间。目标MEP收到该报文后记录其接收时间,并结合其发送时间来计算并记录链路传输的时延和抖动(即时延变化值)。
1DM报文是单播报文。
· 双向时延测试
双向时延测试功能的实现方式是:源MEP发送DMM(Delay Measurement Message,时延测量报文)报文给目标MEP,该报文中携带有其发送时间。目标MEP收到该报文后记录其接收时间,然后再发送DMR(Delay Measurement Reply,时延测量应答)报文给源MEP,该报文中携带有DMM报文的发送和接收时间,以及DMR报文的发送时间。源MEP收到DMR报文后记录其接收时间,并据此计算出链路传输的时延和抖动。
DMM报文和DMR报文都是单播报文。
比特错误测试功能用来测试MEP之间的比特错误。源MEP发送TST(Test,比特错误测试)报文给目标MEP,该报文中携带有伪随机序列或全0值。目标MEP收到该报文后,通过对报文内容进行计算比较来确定错误比特的情况。
TST报文是单播报文。
与CFD相关的协议规范有:
· IEEE 802.1ag:Virtual Bridged Local Area Networks Amendment 5: Connectivity Fault Management
· ITU-T Y.1731:OAM functions and mechanisms for Ethernet based networks
在使用远端MEP的MEP ID进行其它各项CFD功能测试之前,必须先配置连续性检测功能;在使用远端MEP的MAC地址进行其它CFD各项功能测试之前,则没有此限制。
(1) 配置CFD基本功能
a. 开启CFD功能
b. 配置服务实例
c. 配置MEP
(2) 配置CFD各项功能
a. 配置连续性检测功能
b. (可选)配置环回功能
c. (可选)配置链路跟踪功能
d. (可选)配置告警抑制功能
e. (可选)配置单向丢包测试功能
f. (可选)配置单向时延测试功能
g. (可选)配置双向时延测试功能
h. (可选)配置比特错误测试功能
在配置CFD功能之前,应对网络进行如下规划:
· 对整个网络的MD进行分级,确定各级别MD的边界。
· 确定各MD的名称,同一MD内的设备使用相同的MD名称。
· 根据需要监控的VLAN,确定各MD中的MA。
· 确定各MA的名称,同一MD中同一MA内的设备使用相同的MA名称。
· 确定同一MD中同一MA的MEP列表,在不同设备上应保持相同。
· 在MD和MA的边界接口上应规划MEP。
(1) 进入系统视图。
system-view
(2) 开启CFD功能。
cfd enable
缺省情况下,CFD功能处于关闭状态。
一个服务实例用一个整数表示,代表了一个MD中的一个MA。
服务实例内的MP所处理报文的级别属性和VLAN属性分别由MD和MA来确定。其中,不带VLAN属性的MA中的MP也不属于任何VLAN。
(1) 进入系统视图。
system-view
(2) 创建MD。
cfd md md-name [ index index-value ] level level-value [ md-id { dns dns-name | mac mac-address subnumber | none } ]
(3) 创建服务实例。
cfd service-instance instance-id ma-id { icc-based ma-name | integer ma-num | string ma-name | vlan-based [ vlan-id ] } [ ma-index index-value ] md md-name [ vlan vlan-id ]
CFD功能主要体现在对MEP的各种操作上,由于MEP配置在服务实例上,因此服务实例所代表的MD的级别和VLAN属性就自然成为了MEP的属性。
在一个级别上,一个接口只能成为一个不带VLAN属性的MA的MEP,且只能为外向MEP;而对于带VLAN属性的MA,则无此限制。
在三层以太网接口上为带VLAN属性的MA创建MEP时,要求设备支持配置子接口且子接口上支持配置VLAN终结。有关VLAN终结的详细介绍,请参见“二层技术-以太网交换配置指导”中的“VLAN终结”。
在配置MEP之前,必须首先配置服务实例。
(1) 进入系统视图。
system-view
(2) 创建MEP列表。
cfd meplist mep-list service-instance instance-id
所创建的MEP必须已包含在对应服务实例的MEP列表中。
(3) 进入三层以太网接口视图。
interface interface-type interface-number
(4) 创建MEP。
cfd mep mep-id service-instance instance-id outbound
连续性检测功能通过在MEP之间互发CCM报文来检测这些MEP之间的连通状态,从而实现链路连通性的管理。
CCM报文中时间间隔域(Interval域)的值、CCM报文的发送间隔和远端MEP的超时时间这三者之间的关系如表1-1所示。
CCM报文中时间间隔域的值 |
CCM报文的发送间隔 |
远端MEP的超时时间 |
1 |
10/3毫秒 |
35/3毫秒 |
2 |
10毫秒 |
35毫秒 |
3 |
100毫秒 |
350毫秒 |
4 |
1秒 |
3.5秒 |
5 |
10秒 |
35秒 |
6 |
60秒 |
210秒 |
7 |
600秒 |
2100秒 |
为了便于描述,下文中我们将时间间隔域小于4的CCM报文称为“高速CCM报文”,大于等于4的则称为“低速CCM报文”。
配置CCM报文中时间间隔域时,需要注意:
· 同一MA中所有MEP发送的CCM报文中时间间隔域的值必须相同。
· 对于非由硬件检测的MEP,当CCM报文中时间间隔域的值改变后,需要等待一个新的间隔才能发送CCM报文。
· 当设备不支持处理高速CCM报文时,如果用户配置的CCM报文中时间间隔域的值小于4,可能导致连续性检测功能不稳定。
对于设备是否有带辅助CPU的单板的情况,有如下限制:
· 当设备上有多块带辅助CPU的单板时,由其中一块单板来发送CCM报文,如果该单板被拔出,再转由另一块单板来发送CCM报文,并重新进行检测。如果所有带辅助CPU的单板都被拔出,那么发送高速CCM报文的MEP将立刻停止发送;而发送低速CCM报文的MEP则转由该MEP所属的单板来发送,并重新进行检测。
· 不带辅助CPU的单板在收到高速CCM报文后会直接将其丢弃,以减轻对其CPU的冲击。在这种情况下,建议通过配置使该MA中的所有MEP都发送时间间隔域相同的低速CCM报文。
对于硬件检测功能有如下限制:
· 只有物理接口的外向MEP支持开启硬件检测功能。若物理接口加入了聚合组或该接口为内向MEP,则硬件检测功能将不会生效。
· 位于支持硬件检测的单板上的外向MEP,必须在其所属接口上开启硬件检测功能,否则无法接收CCM报文。
(1) 进入系统视图。
system-view
(2) (可选)配置MEP发送的CCM报文中时间间隔域的值。
cfd cc interval interval-value service-instance instance-id
缺省情况下,MEP发送的CCM报文中时间间隔域的值为4。
(3) 进入三层以太网接口视图。
interface interface-type interface-number
(4) 开启MEP的CCM报文发送功能。
cfd cc service-instance instance-id mep mep-id enable
缺省情况下,MEP的CCM报文发送功能处于关闭状态。
如需检查链路连通性状况,可在任意视图下执行本命令,开启环回功能。
cfd loopback service-instance instance-id mep mep-id { target-mac mac-address | target-mep target-mep-id } [ number number ]
通过配置链路跟踪功能,可以查找源MEP到目标MEP之间的路径,从而实现链路故障的定位。它包括以下两种功能:
· 查找源MEP到目标MEP的路径:通过从源MEP发送LTM报文到目标MEP,并检测回应的LTR报文来确定设备间的路径。
· 自动发送LTM报文:开启本功能后,当源MEP在3.5个CCM报文发送周期内未收到目标MEP发来的CCM报文,从而判定与目标MEP的连接出错时,将发送LTM报文(该LTM报文的目地为目标MEP,LTM报文中TTL字段为最大值255),通过检测回应的LTR报文来定位故障。
在为带VLAN属性的MA所创建的MEP配置链路跟踪功能之前,必须先创建该MA所属的VLAN。
(1) 可在任意视图下执行本命令,查找源MEP到目标MEP的路径。
cfd linktrace service-instance instance-id mep mep-id { target-mac mac-address | target-mep target-mep-id } [ ttl ttl-value ]
(2) 进入系统视图。
system-view
(3) 开启自动发送LTM报文功能。
cfd linktrace auto-detection [ size size-value ]
缺省情况下,自动发送LTM报文功能处于关闭状态。
通过配置告警抑制功能可以减少MEP故障告警的数量。
如果只开启了告警抑制功能,而没有配置AIS报文发送级别或者配置的级别错误,那么该MEP只能抑制自己的故障告警,而不会再继续向更高级别的MD发送AIS报文。
(1) 进入系统视图。
system-view
(2) 开启告警抑制功能。
cfd ais enable
缺省情况下,告警抑制功能处于关闭状态。
(3) 配置AIS报文的发送级别。
cfd ais level level-value service-instance instance-id
缺省情况下,未配置AIS报文的发送级别,服务实例中的MEP将无法发送AIS报文。
AIS报文发送级别必须高于服务实例所在MD的级别。
(4) 配置AIS报文的发送周期。
cfd ais period period-value service-instance instance-id
缺省情况下,AIS报文的发送周期为1秒。
通过配置单向丢包测试功能,可以检测MEP之间的单向丢包情况,包括:目标MEP的丢包数、丢包率和平均丢包数,源MEP的丢包数、丢包率和平均丢包数。
可在任意视图下执行本命令,开启单向丢包测试功能。
cfd slm service-instance instance-id mep mep-id { target-mac mac-address | target-mep target-mep-id } [ dot1p dot1p-value ] [ number number ] [ interval interval ]
通过配置单向时延测试功能,可以检测MEP之间报文传输的单向时延,从而对链路的传输性能进行监测和管理。
测试时要求源MEP和目标MEP的时间相同,否则时延值会出现负值或较大数值;用于单向时延变化测量时两端时间可以不同。
测试结果需在目标MEP上通过display cfd dm one-way history命令来显示。
可在任意视图下执行本命令,开启单向时延测试功能。
cfd dm one-way service-instance instance-id mep mep-id { target-mac mac-address | target-mep target-mep-id } [ number number ]
通过配置双向时延测试功能,可以检测MEP之间报文传输的双向时延、平均时延和时延变化值,从而对链路的传输性能进行监测和管理。
可在任意视图下执行本命令,开启双向时延测试功能。
cfd dm two-way service-instance instance-id mep mep-id { target-mac mac-address | target-mep target-mep-id } [ dot1p dot1p-value ] [ number number ] [ interval interval ]
通过配置比特错误测试功能,可以检测到链路上比特错误发生的情况,从而对链路的传输性能进行监测和管理。
测试结果需在目标MEP上通过display cfd tst命令来显示。
可在任意视图下执行本命令,开启比特错误测试功能。
cfd tst service-instance instance-id mep mep-id { target-mac mac-address | target-mep target-mep-id } [ number number ] [ length-of-test length ] [ pattern-of-test { all-zero | prbs } [ with-crc ] ]
在完成上述配置后,在任意视图下执行display命令可以显示配置后CFD的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除CFD的测试结果。
表1-2 CFD显示和维护
操作 |
命令 |
显示MEP上AIS的配置和动态信息 |
display cfd ais [ service-instance instance-id [ mep mep-id ] ] |
显示与端口状态相关联的AIS的配置和动态信息 |
display cfd ais-track link-status [ interface interface-type interface-number ] |
显示单向时延的测试结果 |
display cfd dm one-way history [ service-instance instance-id [ mep mep-id ] ] |
显示MEP上获得的LTR报文信息 |
display cfd linktrace-reply [ service-instance instance-id [ mep mep-id ] ] |
显示自动发送LTM报文后收到的LTR报文信息 |
display cfd linktrace-reply auto-detection [ size size-value ] |
显示MD的配置信息 |
display cfd md |
显示MEP的属性和运行信息 |
display cfd mep mep-id service-instance instance-id |
显示服务实例内的MEP列表 |
display cfd meplist [ service-instance instance-id ] |
显示MP的信息 |
display cfd mp [ interface interface-type interface-number ] |
显示远端MEP的信息 |
display cfd remote-mep service-instance instance-id mep mep-id |
显示服务实例的配置信息 |
display cfd service-instance [ instance-id ] |
显示CFD的开启状态 |
display cfd status |
显示比特错误的测试结果 |
display cfd tst [ service-instance instance-id [ mep mep-id ] ] |
清除单向时延的测试结果 |
reset cfd dm one-way history [ service-instance instance-id [ mep mep-id ] ] |
清除比特错误的测试结果 |
reset cfd tst [ service-instance instance-id [ mep mep-id ] ] |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!