802.1ag(CFM)详解802.1ag的由来802.1ag体系架构802.1ag详细介绍802.1ag应用举例讨论与思考议程802.1ag的由来802.1ag体系架构802.1ag详细介绍802.1ag应用举例讨论与思考为什么需要802.1ag在传统的电信网络里面,SDH有着专用的管理通道,可以快速发现网络连接中的问题,实现快速保护切换,同时提供了丰富的信息供管理员方便地定位故障所在。所以传统电信网络稳定性高,可管理性强,定位问题的手段丰富。由于Ethernet的简单性,低成本,高可扩展性,对突发流量很好的支持等极具吸引力的优势,传统电信网络逐步向Ethernet发展,Ethernet取代SDH已经是大势所趋。但是Ethernet网络相比SDH,也有着很多不足,其中的一个就是可管理性差,这包括很多方面,定位故障的手段不丰富,定位故障的速度慢,从而导致网络恢复时间慢,维护成本高。这个问题解决不了,Ethernet在电信网络里面的应用就会受到很大的局限,而CarrierEthernet,跟普通的Ethernet网络相比,就是开发了很多新技术,来弥补普通Ethernet网络的诸多不足,其中,为了解决Ethernet网络中的可管理性问题(主要是错误管理),IEEE提出了802.1ag标准。什么是802.1ag802.1ag是IEEE提出的一个用于CarrierEthernet网络中进行错误管理的一个标准,即ConnectivityFaultManagement(CFM)。它提供了如下5项功能:路径发现(Pathdiscovery)故障检测(Faultdetection)故障确认和定位(Faultverificationandisolation)故障通知(Faultnotification)故障恢复(Faultrecovery)其中最后一项故障恢复要联合其它协议(STP)一起来执行,不在802.1ag讨论范围之内由于CFM的概念来自于传统电信网络,所以其协议设计理念和里面的很多技术,都来自于SDH。跟802.1ag相关的协议Y.1731:这是ITU基于802.1ag提出的一个标准,是802.1ag的超集,另外加了一些功能,比如performancemonitor等,更加全面地考虑了电信网络的需求G.8031和G.8032:这是两个APS(automaticprotectionswitch,自动保护切换)协议,前者提供linear保护,后者提供ring保护。理论上CFM和APS结合起来应用才能完整的提供对一个网络的管理和保护。前者发现,定位报告故障,后者快速反应,对故障通道进行保护切换。议程802.1ag的由来802.1ag体系架构802.1ag详细介绍802.1ag应用举例讨论与思考802.1ag的设计理念802.1ag把整个网络(customer,provider,operator)划分成很多的维护域(MD,MaintenanceDomain),MD是有层次的,最多8个层次。在每个MD里面,针对该MD所提供的每一个服务(service)进行维护管理,这些service会跨越网络中很多个节点,802.1ag的核心思想是在这个service所涉及到的部分或者全部节点上进行维护监控,从而发现故障以及定位出故障的网络段。参与维护监控的节点称为维护点(MaintenancePoint),MP不是配置在bridge上,而是配置在bridge的某个具体的port上,从而将维护粒度进一步细化。MP有两类,一类是位于MD的边缘,称为维护端点(MaintenanceassociationEndPoint,MEP).另外一类则是中间节点,称为维护中间点(MaintenancedomainIntermediatePoint,MIP)每一个service都有两个(点对点)或者两个以上(点对多点)MEP,这些MEP的组合称为维护关联(MaintenanceAssociation,MA).每个MA都对应一个服务实例(ServiceInstance),802.1ag就是对一个个MA来进行管理维护,检测MA中的故障,其实本质上就是对serviceinstance来进行管理维护,检测serviceinstance中的故障。MA中每个MEP之间都会有fullmesh的连接,每个MEP-MEP之间点到点的连接称为维护实体(MaintenanceEntity).这是CFM作用的最小单位。维护域(MD)网络中可以有很多个MD,每个MD都处于特定的level,共有8个level。Level越高,维护的网络范围越大,反之则越小。除了Level,每个MD都有一个全局唯一的MDName,用于标识该MD.相同level的维护域可以不止一个,彼此之间独立。目前实践中,通常会划分这些维护域,Customerdomain,Serviceproviderdomain,operatordomain,linkdomain,level由前往后依次降低。维护域Architecture维护域的几个准则MD可以相切MD不能交叠MD可以嵌套维护域工作原理每个维护域的维护者只看到他自己的维护域底层的维护域为它直接相邻的上层提供服务。在图例中,CustomerDomain检测出问题之后,管理员只知道本MD出了问题,它可以定位出是customer设备到provider之间出了问题,还是provider网络出了问题,但是如果是后者,它无法进一步定位是具体哪里出了问题。于是定位工作就交给了ProviderDomain。ProviderDomain跨越了多个OperatorDomain,它可以定位出是哪个OperatorDomain或者结合处出了问题,但是无法进一步定位该OperatorDomain里面哪里出了问题,于是定位工作继续交给了OperatorDomain,在OperatorDomain,管理员可以定位是哪一段网络出了问题。如果该OperatorDomain比较大,它仍然可以在里面继续再划分几个低层次的Domain.可以有效地缩小故障范围维护域服务接入点(DoSAP)DomainServiceAccessPoint(DoSAP)即维护与服务接入点是一组特殊的服务接入点,它们为外界提供了访问本MD的接口,所以都是位于MD的边缘,在802.1ag中会被配置成MEP.一个MD为外界提供的每个service,都会在该MD中找到至少两个DoSAP.实际设备配置中,是不会出现DoSAP这个概念的,它只存在于802.1ag的理论模型中,实际配置中,我们接触到的都只会是MEP,因为从理论模型上看,一个MEP就是一个维护域服务接入点。见下面两个图,分别是从Customer的角度看运营商为它提供的service,和从运营商的角度看它为外面提供的service.从不同角度看ServiceInstance运营商的角度用户的角度从整个网络看ServiceInstance维护关联(MA)MaintenanceAssociation(MA),即维护关联。一个MD通常对外提供多个服务实例(serviceinstance),802.1ag最终想维护的其实是service而不是domain。一个MA就唯一地跟一个serviceinstance相关联。如果一个service是点对点的,那么它相应的MA中就相应的包含两个MEP(注:这个说法其实并不是很恰切,因为在某些情况下,即便是点对点服务,一个接入设备上可能有多个DoSap,这样其实在service的一端,该MA就可以包含多个MEP),否则如果是点对多点,那它相应的MA就包含多个MEP。在当前的CarrierEthernet实际部署中,providerdomain里面的MA通常是跟一个EVC关联,因为EVC就代表了一个serviceinstance.EVC可以是点对点或者点对多点的,相应的MA也就是点对点或者点对多点的。每个EVC的UNI就配置一个MEP,而且是UPMEP。当然,对于802.1ag来说,它并没有提到任何EVC相关的东西,这里只是说在Carrierethernet发展的目前这个初级阶段,很少会配置customerdomain,通常都是providerdomain,而providerdomain配置的MA,通常都是用来管理维护EVC。后面的”802.1ag应用举例”一节会详细讨论EVC上的MAMA的一些特性每个MD可以包含多个MA,而一个MA只能属于一个MD,所以一个MA也继承了该MD的level属性,只能属于一个特定的level.每个MA有一个MAname,这个name在它所属的domain里面是唯一的。每个MA有一个MAID,它由两部分组成,分别是MDname和MAname。这样MAID就是全局唯一的。为了跟Y.1731兼容,MDname可以为空,这样就要求MAname必须全局唯一。在CarrierEthernet里面,serviceinstance通常由vlanId来标识,而MA又跟serviceinstance一一对应,所以MA跟vlanId之间也是有着某种关联。通常的实践中,一个MA唯一对应着一个vlanId,但是802.1ag允许多个vlanId受一个MA来管理维护,这些vlanId中,有一个vlan是primaryvlan(有点vlan代表的意思),所有在该MA中传递的报文中,都只会出现该vlan(为什么会有多个vlanId对应一个MA呢?最后的“讨论与思考”一节会进行讨论。通常,在实践中,mdlevel+vlanId可以唯一的标志一个MA(不同MD中的vlan标志不同的MA)。但是802.1ag允许同一个MD中,同一个vlan对应多个MA.但是有条件限制,这些MA中,最多只能有一个MA配置UPMEP,而其它MA都只能配置downMEP.(什么是UPMEP和DownMEP见后面),而且这些downMEP必须配置在不同的port上。(关于这个问题,“讨论与思考”一节也会进行讨论维护端点(MEP)MaintenanceassociationEndPoint(MEP),即维护端点,它是CFM中的核心部件,每个MEP都跟一个特定的DoSap相关联,配置在DoSap所在port上。MEP负责发起所有的CFM报文,包括CCM,LTM,LBM,从而主动负责pathdiscovery,faultdetection,faultverificationandisolation,faultnotification.它是一个MA(或者说一个Service在该Domain里面的终结点。CFM主要的协议行为,状态机,都发生在MEP上。MEP分为两种,分别是UPMEP和DownMEPDownMEPandUPMEPDownMEP和UPMEP是CFM中非常重要的概念,但是初学者经常搞不清楚什么是UP什么是Down,也搞不清楚为什么要区分UP和Down.根据802.1ag的定义,在一个bridge里面,如果一个MEP从Lan侧发送和接收它对应的MA的CFM报文,那么这个MEP就是DownMEP;如果一个MEP从BridgeRelay侧发送和接收它对应的MA的CFM报文,那么这个MEP就是UPMEP当然,对不熟悉802.1D/Q模型的人来说,这个说法仍然是很模糊抽象的。用一句更通俗的话来解释,是这样的:如果我在一个bridge的portA上配置了MEP,它所对应的MA是MA1。属于MA1的CFM报文直接从PortA进入该bridge,终结在该MEP,那么该MEP就是DownMEP。否则,如果属于MA1的CFM报文是从该Bridge的别的port进入该bridge,然后终结在该MEP上,那么这个MEP就是UPMEP。要再深入理解一下UPMEP和DownMEP,需要看后面的Bridge模型图解DownMEP和UPMEP的区别这是一个802.1D/Q里面的Bridge模型BridgeMacRelayEntityPortAPortBUPMepDownMep