02-CFD配置
本章节下载: 02-CFD配置 (386.17 KB)
目 录
CFD(Connectivity Fault Detection,连通错误检测)遵循IEEE 802.1ag的CFM(Connectivity Fault Management,连通错误管理)协议和ITU-T的Y.1731协议,是一种二层网络中基于VLAN的端到端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,维护端点)和MIP(Maintenance association Intermediate Point,维护中间点)。
MEP确定了MA的边界,以“MEP ID”来标识。MEP具有方向性,分为内向MEP和外向MEP两种:
· 内向MEP通过除其所在的接口以外的所有接口向外发送CFD协议报文,即在其所属MA所服务的VLAN中进行广播。
· 外向MEP则直接通过其所在的接口向外发送CFD协议报文。
MIP位于MA的内部,不能主动发出CFD协议报文,但可以处理和响应CFD协议报文。MIP由设备自动创建,可以配合MEP完成类似于ping和tracert的功能。
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的级别。
MIP的级别由其创建规则和所属MD的级别共同确定。MIP的创建规则有以下两种:
· Default规则:当接口上没有更低级别的MIP时,在本级别创建MIP。在此规则下,接口上即使没有配置MEP也可创建MIP。
· Explicit规则:当接口上没有更低级别的MIP且有更低级别的MEP时,在本级别创建MIP。在此规则下,接口上只有配置了更低级别的MEP时才可创建MIP。
当用户在设备上指定了MIP的创建规则后,系统会在尚没有MIP的接口上,按照级别由低到高依次检查各MD中的MA,并按照图1-2所示的流程来确定接口是否要在本级别创建MIP。
图1-2 是否创建MIP的确定流程
图1-3所示为CFD的一种分级配置方式,图中共有0、2、3、5四个级别的MD,标识号较大的MD的级别高、控制范围广;标识号较小的MD的级别低、控制范围小。在Device A~Device F的各接口上配置了MP,譬如Device B的接口Port A上配置有:级别为5的MIP、级别为3的内向MEP、级别为2的内向MEP和级别为0的外向MEP。
图1-3 CFD的分级配置
对于带VLAN属性的MA,MP仅在其所属MA所服务于的VLAN中发送的报文,报文的级别为MP所属MD的级别。
对于不带VLAN属性的MA,MP只能为外向MEP,主要用来检测直连链路的状态。不带VLAN属性的外向MEP所发送报文的级别为该MEP所属MD的级别。
当MEP收到高于自己级别的报文时只转发该报文,不会进行处理;当MEP收到小于等于自己级别的报文时才会进行处理。
当MIP收到不等于自己级别的报文时只转发该报文,不会进行处理;当MIP收到等于自己级别的报文时才会进行处理。
连通错误检测的有效应用建立在合理的网络部署和配置之上,它的功能是在所配置的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报文分为组播和单播两种报文,设备支持发送和处理单播LBM报文,不支持发送但可处理组播LBM报文;LBR是单播报文。
链路跟踪(Linktrace,LT)功能类似于IP层的tracert功能,用于确定源MEP到目标MP的路径,其实现方式是:由源MEP发送LTM(Linktrace Message,链路跟踪报文)报文给目标MP,目标MP以及LTM报文所经过的MIP收到该报文后,都会发送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报文是组播报文。
帧时延测试(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报文是单播报文。
以太网告警抑制功能用来建立以太网端口的状态与告警抑制功能之间的联动。当设备(不一定是MP)的端口发生了down事件,便立刻开始周期性地发送EAIS(Ethernet Alarm Indication Signal,以太网告警指示信号)报文以抑制故障告警的上报;当该端口重新up后,会立刻停止发送EAIS报文。MEP在收到EAIS报文后,会抑制本端的故障告警,并继续发送EAIS报文。此后,如果MEP在3.5个EAIS报文发送周期内再未收到EAIS报文,则表明故障已消除,于是便停止发送EAIS报文并恢复故障告警。
EAIS报文是组播报文。
CFD连续性检测功能与Track项建立关联时,CFD会根据对端是否可达来通知Track项的状态置位:当CFD判断出对端可达时,CFD会通知Track模块将与CFD连续性检测功能关联的Track项的状态置为Positive;当CFD判断出对端不可达时,CFD会通知Track模块将与CFD连续性检测功能关联的Track项的状态置为Negative。Track的详细介绍,请参见“可靠性配置指导”中的“Track”。
与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各项功能测试之前,则没有此限制。
· 被生成树协议阻塞的端口通常不能收发CFD协议报文,但下列情况例外:
¡ 如果设备上配置有外向MEP,那么外向MEP所在的端口即使被生成树协议阻塞,也仍能收发CFD协议报文。
¡ 如果设备上配置有MIP或内向MEP,那么该设备上的端口即使被生成树协议阻塞,也仍能收发除CCM报文以外的其它CFD协议报文。
有关生成树协议的详细介绍,请参见“二层技术-以太网交换配置指导”中的“生成树”。
(1) 配置CFD基本功能
a. 开启CFD功能
b. 配置服务实例
c. 配置MEP
d. 配置MIP的创建规则
(2) 配置CFD各项功能
a. 配置连续性检测功能
b. (可选)配置环回功能
c. (可选)配置链路跟踪功能
d. (可选)配置告警抑制功能
e. (可选)配置单向时延测试功能
f. (可选)配置双向时延测试功能
g. (可选)配置比特错误测试功能
(3) (可选)配置以太网告警抑制功能
在配置CFD功能之前,应对网络进行如下规划:
· 对整个网络的MD进行分级,确定各级别MD的边界。
· 确定各MD的名称,同一MD内的设备使用相同的MD名称。
· 根据需要监控的VLAN,确定各MD中的MA。
· 确定各MA的名称,同一MD中同一MA内的设备使用相同的MA名称。
· 确定同一MD中同一MA的MEP列表,在不同设备上应保持相同。
· 在MD和MA的边界接口上应规划MEP,非边界设备或接口上可规划MIP。
(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,则无此限制。
当MEP属于不带VLAN属性的MA时,本端MEP在3.5个CCM报文发送周期内未收到远端MEP发来的CCM报文,则会将该MEP所在接口的链路状态置为Down,以便实现RRPP、Smart Link等协议的快速切换。
在配置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 { inbound | outbound }
MIP是服务实例中的功能实体,用来响应各种CFD测试报文(如LTM、LBM等)。请根据网络规划配置MIP的创建规则,系统将按照此规则在接口上自动创建MIP。在配置了MIP的创建规则之后,下列任一条件均可触发MIP的创建或删除:
· 开启或关闭CFD功能。
· 创建或删除接口上的MEP。
· 端口的VLAN属性发生变化。
· MIP的创建规则发生变化。
由于不带VLAN属性的MA主要用来检测直连链路的状态,因而此类MA无法创建MIP。
对于带VLAN属性的MA,当接口上有同级别或更高级别的MEP时,不会在该接口上生成该MA的MIP。
(1) 进入系统视图。
system-view
(2) 配置MIP的创建规则。
cfd mip-rule { default | explicit } service-instance instance-id
缺省情况下,未配置MIP的创建规则,系统不自动创建MIP。
连续性检测功能通过在MEP之间互发CCM报文来检测这些MEP之间的连通状态,从而实现链路连通性的管理。
在使用远端MEP的MEP ID进行其它各项CFD功能测试之前,必须先配置连续性检测功能;在使用远端MEP的MAC地址进行其它CFD各项功能测试之前,则没有此限制。
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报文中时间间隔域的值必须相同。
· 当CCM报文中时间间隔域的值改变后,需要等待一个新的间隔才能发送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 ] [ hw-only ]
(2) 进入系统视图。
system-view
(3) 开启自动发送LTM报文功能。
cfd linktrace auto-detection [ size size-value ]
缺省情况下,自动发送LTM报文功能处于关闭状态。
通过配置告警抑制功能可以减少MEP故障告警的数量。
如果只开启了告警抑制功能,而没有配置AIS报文发送级别或配置的级别低于服务实例所在MD的级别,则服务实例中的MEP将无法发送AIS报文。
如果开启了告警抑制功能,且配置AIS报文发送级别等于服务实例所在MD的级别,则服务实例中的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 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 ] ]
以太网告警抑制功能可以配置在不支持或未配置CFD功能的设备上,但需要在网络中与CFD功能配合使用,因此需要在网络中配置CFD功能。
当端口加入聚合组后,可在该端口上配置以太网告警抑制功能,但不会生效;若端口在加入聚合组之前已配置以太网告警抑制功能,则该配置将立刻失效。当端口退出聚合组后,其上的以太网告警抑制功能相关配置才会生效。
在配置EAIS报文发送的VLAN范围之后,如果所配置VLAN与本设备所创建的VLAN交集为空,将不会发送EAIS报文;如果该交集内VLAN的数量大于70、且EAIS报文的发送周期为1秒,将导致设备的CPU占用率很高,此时建议将EAIS报文的发送周期调整为60秒。
(1) 进入系统视图。
system-view
(2) 开启端口状态与AIS的联动功能。
cfd ais-track link-status global
缺省情况下,端口状态与AIS联动功能处于关闭状态。
(3) 进入二层以太网接口或二层聚合接口视图。
interface interface-type interface-number
(4) 配置EAIS报文的发送级别。
cfd ais-track link-status level level-value
缺省情况下,未配置EAIS报文的发送级别。
(5) 配置EAIS报文的发送周期。
cfd ais-track link-status period period-value
缺省情况下,未配置EAIS报文的发送周期。
(6) 配置EAIS报文的发送VLAN。
cfd ais-track link-status vlan vlan-list
缺省情况下,EAIS报文只在本端口的缺省VLAN内发送。
EAIS报文将在所配置VLAN与设备所创建VLAN的交集内发送。
在完成上述配置后,在任意视图下执行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 ] |
显示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保留在没有任何通知或提示的情况下对资料内容进行修改的权利!