连通错误检测协议报文的发送方法以及转发设备的制作方法

文档序号:7869158阅读:207来源:国知局
专利名称:连通错误检测协议报文的发送方法以及转发设备的制作方法
技术领域
本申请涉及网络通信技术领域,特别涉及一种连通错误检测协议报文的发送方法以及转发设备。
背景技术
CFD (Connectivity Fault Detection,连通错误检测)是一种二层网络中基于VLAN (Virtual Local Area Network,虚拟局域网)的端到端OAM(Operations, Administrationand Maintenance,操作、管理和维护)机制,主要用于在二层网络中检测链路连通性,以及在故障发生时确认故障并定位。CFD的基本概念包括1、维护域维护域(Maintenance Domain, MD)指明了连通错误检测所覆盖的网络,其边界是由配置在端口上的一系列维护端点所定义的。维护域以“维护域名”来标识。为了准确定位故障点,在维护域中引入了级别(层次)的概念。维护域共分为八级,用整数O 7来表示,数字越大级别越高,维护 域的范围也就越大。不同的维护域之间可以相邻或嵌套,但不能交叉,且嵌套时只能由高级别维护域向低级别维护域嵌套,即低级别维护域必须包含在高级别维护域内部。2、维护集在维护域内根据需要可以配置多个维护集(MaintenanceAssociation, MA),每个维护集是维护域内一些维护点的集合。维护集以“维护域名+维护集名”来标识。维护集服务于一个VLAN,维护集中的维护点所发送的报文都带有该VLAN的标签,同时维护集中的维护点可以接收由本维护集中其它维护点发来的报文。3、维护点维护点(Maintenance Point, MP)配置在端口上,属于某个维护集,可分为维护端点(Maintenance association End Point, MEP)和维护中间点(Maintenanceassociationlntermediate Point,MIP)两种。维护端点具有方向性,分为外向MEP和内向MEP两种。维护端点的方向表明了维护域相对于该端口的位置。外向MEP是向它所在端口发送报文的。内向MEP不向它所在端口发送报文,而是向本设备的其它端口发送报文。在实际组网中,由于内向MEP不关注所依附的物理端口的up (正常)/down (故障)状态,不需要在所依附的物理端口上有实际的物理线连接,具有较强的灵活性,因此在实际应用中通常把MEP设置为内向型。例如,图1是一种应用了 CFD协议的实际网络模型图。在图1所示的网络中,DeviceA的端口 Ethl/Ι上配置有某一个级别的MD、MA和服务实例,Device D的端口 Ethl/3具有与Device A的Ethl/1相同的配置,S卩,配置有相同级别的相同MD、以及相同的MA和服务实例。为了要进行链路检测,进一步在Device A的端口 Ethl/1上和Device D的端口 Ethl/3上分别配置了一个内向MEP,例如,Device A的端口 Ethl/1上配置的内向MEP为MEP 100,Device D的端口 Ethl/3上配置的内向MEP为MEP200,这样便划定一个链接检测域MD_A。MEP 100 和 MEP 200 互为 MEP 邻居。为了建立和维护MEP邻居关系,Device A上的内向MEP :MEP 100周期性地发送组播的CCM(Continuity Check Message,连接检测报文)报文,同样,Device D上的内向MEP MEP 200也周期性地发送CCM报文。MEP 100在首次接收到MEP 200发来的CCM报文后,建立与MEP 200的MEP邻居关系,将MEP 200的状态设置为NORMAL (正常);后续,若在3. 5个CCM报文发送周期内未接收到MEP 200发来的CCM报文,则MEP 100将MEP 200的状态设置为FAIL (失效),确认链路发生了故障,否则,MEP 200的状态一直处于正常状态,确认链路没有发生故障。同样,MEP200也会执行上述操作。通过上述CCM报文的发送和接收,内向MEP可以建立与远端的MEP邻居之间的MEP邻居关系,并维护MEP邻居的信息,以便后续实施相关的链路检测功能。现有技术中,为了建立和维护MEP邻居关系(维护MEP邻居关系即实现了连续性检测CC),内向MEP会在同一 VLAN内组播发送CCM报文,这就意味着内向MEP会向本设备上同一 VLAN的其它端口发送CCM报文。这样,如果内向MEP所在的设备上处于同一 VLAN的物理端口较多,则该设备就会产生大量的CCM报文进行发送。假设,一个MEP每秒可以发送300个CCM报文,每个CCM报文按照协议规定可以达到100字节的长度,那么,可以得出一个MEP每秒可以发出30K字节的数据流。那么,以图1为例,在Device A上的端口 Ethl/2、Ethl/3和Ethl/4所属的VLAN与Ethl/1相同时,端口 Ethl/Ι上配置的内向MEP =MEP 100会通过端口 EthI/2、EthI/3和Ethl/4向外发送组播的CCM报文,且每个端口发送的CCM报文的流量可以达到30K字节/秒。发送的CCM报文的数据量是很大的。

并且,一个设备上配置的内向MEP通常不止一个,每一个内向MEP又可以通过与自身所在端口在同一 VLAN的多个端口向外发送CCM报文,从而该设备需要处理和发送大量的CCM报文,加重了设备中的转发芯片及CPU的负担,降低了设备的性能;而且,大量的CCM报文被发送到了局域网中,也浪费了网络带宽。另外,网络中的其他设备接收到这些大量的CCM报文后,也需要对报文进行处理,因此,也增加了局域网中其他设备的负荷。

发明内容
本申请提供了一种连通错误检测协议报文的发送方法以及转发设备,以解决现有技术中存在的配置有内向MEP的设备需要处理和发送大量的CCM报文,加重了本设备中的转发芯片及CPU的负担,降低了设备的性能;发送到局域网中的大量的CCM报文也浪费了网络带宽;而且,网络中的其他设备接收到这些大量的CCM报文后,也需要对报文进行处理,增加了局域网中其他设备的负荷的问题。本申请的技术方案如下—方面,提供了一种CFD协议报文的发送方法,该方法包括第一转发设备接收第二转发设备上的第二内向MEP发来的CFD协议报文,其中,第一转发设备上配置有第一内向MEP,第二内向MEP是第一内向MEP的MEP邻居,与第一内向MEP具有相同的MD级别、MD、MA和服务实例;第一转发设备根据接收的CFD协议报文中携带的第二转发设备的MAC地址和第二内向MEP的标识,在第一内向MEP对应的CFD信息表中查找匹配表项,其中,CFD信息表用于记录第一内向MEP的各个MEP邻居的信息;若未查找到匹配表项,则第一转发设备在该CFD信息表中增加第二内向MEP对应的表项,并在该表项中将第二内向MEP的状态设置为正常,其中,该表项中包括第一端口标识、第二转发设备的MAC地址、第二内向MEP的标识、以及第二内向MEP的状态,第一端口标识是接收到该CFD协议报文的第一端口的标识;当第一内向MEP要发送CFD协议报文时,若第二内向MEP的状态为正常,则第一转发设备按照该CFD信息表中第二内向MEP对应的表项,以单播的方式向第二转发设备发送CFD协议报文。另一方面,还提供了一种转发设备,包括接收模块,用于接收第二转发设备上的第二内向MEP发来的CFD协议报文,其中,本设备上配置有第一内向MEP,第二内向MEP是第一内向MEP的MEP邻居,与第一内向MEP具有相同的MD级别、MD、MA和服务实例;查找模块,用于根据接收模块接收的CFD协议报文中携带的第二转发设备的MAC地址和第二内向MEP的标识,在第一内向MEP对应的CFD信息表中查找匹配表项,其中,该CFD信息表用于记录第一内向MEP的各个MEP邻居的信息;更新模块,用于在查找模块未查找到匹配表项时,在该CFD信息表中增加第二内向MEP对应的表项,并在该表项中将第二内向MEP的状态设置为正常,其中,该表项中包括第一端口标识、第二转发设备的MAC地址、第二内向MEP的标识、以及第二内向MEP的状态,第一端口标识是接收到该CFD协议报文的第一端口的标识;发送模块,用于在第一内向MEP要发送CFD协议报文时,若第二内向MEP的状态为正常,则按照该CFD信息 表中第二内向MEP对应的表项,以单播的方式向第二转发设备发送CFD协议报文; 保存模块,用于保存第一内向MEP对应的CFD信息表。在本申请的技术方案,可以减少内向MEP所在设备对于不必要的CFD协议报文的发送,减轻设备的CPU及转发芯片的负荷,提高设备的性能;并且,能够实现仅内向MEP所在的检测链路才需要处理CFD协议报文,节省了网络带宽,避免了局域网中的不在该链路上的其它设备接收并处理CFD协议报文,从而降低了这些其它设备的CPU使用率及设备负荷;同时,增强了内向MEP的灵活性。


图1是一种应用了 CFD协议的实际网络模型图2是本申请的实施例一的CFD协议报文的发送方法的流程图3是本申请的实施例一的封装后的CFD协议报文的格式示意图4是图3中的Encapsulation Header的格式不意图5是本申请的实施例三的转发设备的结构示意图。
具体实施方式
为了解决现有技术中存在的配置有内向MEP的设备需要处理和发送大量的CCM报
文,加重了本设备中的转发芯片及CPU的负担,降低了设备的性能;发送到局域网中的大量的CCM报文也浪费了网络带宽;而且,网络中的其他设备接收到这些大量的CCM报文后,也需要对报文进行处理,增加了局域网中其他设备的负荷的问题,本申请的以下实施例提供了一种CFD协议报文的发送方法和一种可以应用该方法的转发设备,上述的方法和转发设备均针对的是组播的CFD协议报文的发送。本申请以下实施例的技术方案中,任意一个配置有CFD的内向MEP (称为第一内向MEP)的转发设备(称为第一转发设备)在首次接收到第一内向MEP的MEP邻居(称为第二内向MEP)发来的组播的CFD协议报文后,会将第二内向MEP的信息,包括第一转发设备接收到该CFD协议报文的端口的标识(即入端口的标识)、该CFD协议报文中携带的第二转发设备(即第二内向MEP所在的设备)的MAC地址和第二内向MEP的标识等信息,作为第二内向MEP对应的表项添加到第一内向MEP对应的CFD信息表中,这样,当第一内向MEP要发送CFD协议报文时,第一转发设备就可以按照该CFD信息表中第二内向MEP对应的表项中包含的入端口的标识和第二转发设备的MAC地址,以单播方式发送CFD协议报文给第二转发设备。从而,通过第一内向MEP对应的CFD状态信息表,可以维护第一内向MEP的各个MEP邻居的信息,实时掌握邻居信息,包括该MEP邻居发来的组播的CFD协议报文的入端口的标识、该MEP邻居所在设备的MAC地址等信息,在发送CFD协议报文时,就可以根据各个MEP邻居的上述信息,以单播方式向各个MEP邻居所在设备发送CFD协议报文,从而无需以组播的方式发送CFD协议报文。可以减少内向MEP所在设备对于不必要的CFD协议报文的发送,减轻了设备的CPU及转发芯片的负荷,提高了设备的性能;并且,实现了仅内向MEP所在的检测链路才需要处理CFD协议报文,节省了网络带宽,避免了局域网中的不在该链路上的其它设备接收并处理CFD协议报文,从而降低了这些其它设备的CPU使用率及设备负荷;同时,增强了内向MEP的灵活性。实施例一本申请的实施例一的CFD协议报文的发送方法中的CFD协议报文是组播报文,该方法可以由任意一个配置了 C FD的转发设备来执行。本实施例中,组播的CFD协议报文可以是 CCM (Continuity Check Message,连接检测报文),也可以是 LTM (Linktrace Message,链路跟踪报文)和EAIS (Ethernet Alarm Indication Signal,以太网告警指示信号)报文等,本申请对此不做限定。需要说明的是下文中的第一转发设备可以是任意一个配置了 CFD的转发设备,并不特指某一个转发设备,第一内向MEP可以是第一转发设备上配置的任意一个内向MEP,并不特指某一个内向MEP。如图2所示,该CFD协议报文的发送方法包括以下步骤步骤S201,第一转发设备接收第二转发设备上的第二内向MEP发来的CFD协议报文,其中,第一转发设备上配置有第一内向MEP,第二内向MEP是第一内向MEP的MEP邻居,与第一内向MEP具有相同的MD级别、MD、MA和服务实例;第一内向MEP与第二内向MEP互为MEP邻居,具有相同的MD级另I」、MD、MA和服务实例。步骤S202,第一转发设备根据接收的CFD协议报文中携带的第二转发设备的MAC(Media Access Control,媒体访问控制)地址和第二内向MEP的标识(例如具体为MEP号),在第一内向MEP对应的CFD信息表中查找匹配表项,其中,该CFD信息表用于记录第一内向MEP的各个MEP邻居的信息;
例如,与第一内向MEP对应的CFD信息表的格式可以如表I或表2所不表I
权利要求
1.一种连通错误检测CFD协议报文的发送方法,其特征在于,所述方法包括 第一转发设备接收第二转发设备上的第二内向维护端点MEP发来的CFD协议报文,其中,第一转发设备上配置有第一内向MEP,第二内向MEP是第一内向MEP的MEP邻居,与第一内向MEP具有相同的维护域MD级别、MD、维护集MA和服务实例; 第一转发设备根据接收的CFD协议报文中携带的第二转发设备的媒体访问控制MAC地址和第二内向MEP的标识,在第一内向MEP对应的CFD信息表中查找匹配表项,其中,所述CFD信息表用于记录第一内向MEP的各个MEP邻居的信息; 若未查找到匹配表项,则第一转发设备在所述CFD信息表中增加第二内向MEP对应的表项,并在该表项中将第二内向MEP的状态设置为正常,其中,该表项中包括第一端口标识、第二转发设备的MAC地址、第二内向MEP的标识、以及第二内向MEP的状态,所述第一端口标识是接收到所述接收的CFD协议报文的第一端口的标识; 当第一内向MEP要发送CFD协议报文时,若第二内向MEP的状态为正常,则第一转发设备按照所述CFD信息表中所述第二内向MEP对应的表项,以单播的方式向第二转发设备发送CFD协议报文。
2.根据权利要求1所述的方法,其特征在于,第一转发设备按照所述CFD信息表中所述第二内向MEP对应的表项,以单播的方式向第二转发设备发送CFD协议报文的方法包括 第一转发设备为CFD协议报文封装报头,得到单播的封装后的CFD协议报文,其中,该报头中的源MAC地址为第一转发设备的MAC地址、目的MAC地址为所述第二内向MEP对应的表项中包含的第二转发设备的MAC地址; 第一转发设备将封装后的CFD协议报文,通过所述第二内向MEP对应的表项中包含的第一端口标识所指示的第一端口发送出去。
3.根据权利要求1所述的方法,其特征在于,所述第一转发设备根据所述接收的CFD协议报文中携带的第二转发设备的MAC地址和第二内向MEP的标识,在第一内向MEP对应的CFD信息表中查找匹配表项的方法包括 判断所述CFD信息表的每一个表项中是否包含有所述接收的CFD协议报文中携带的第二转发设备的MAC地址和第二内向MEP的标识; 若没有一个表项中包含有所述第二转发设备的MAC地址和第二内向MEP的标识,则确定未查找到匹配表项; 若有一个表项中包含有所述第二转发设备的MAC地址和第二内向MEP的标识,则确定查找到了匹配表项。
4.根据权利要求3所述的方法,其特征在于,还包括 若第一转发设备在第一预定时间段内未接收到第二内向MEP发来的CFD协议报文,贝U第一转发设备在所述CFD信息表中的第二内向MEP对应的表项中,将第二内向MEP的状态修改为失效; 在将第二内向MEP的状态修改为失效之后,若在第二预定时间段内仍未接收到第二内向MEP发来的CFD协议报文,则第一转发设备删除所述CFD信息表中的第二内向MEP对应的表项,其中,第二预定时间段的值大于第一预定时间段的值。
5.根据权利要求4所述的方法,其特征在于,在第一转发设备根据所述接收的CFD协议报文中携带的第二转发设备的MAC地址和第二内向MEP的标识,在第一内向MEP对应的CFD信息表中查找匹配表项之后,还包括 若查找到了匹配表项,且该匹配表项中包含的状态为失效,则第一转发设备在该匹配表项中包含的端口标识不是第一端口标识时,将该匹配表项中包含的状态更新为正常、端口标识更新为第一端口标识,在该匹配表项中包含的端口标识是第一端口标识时,将该匹配表项中包含的状态更新为正常。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述CFD协议报文包括连接检测报文CCM、链路跟踪报文LTM、以太网告警指示信号EAIS报文。
7.一种转发设备,其特征在于,包括 接收模块,用于接收第二转发设备上的第二内向维护端点MEP发来的连通错误检测CFD协议报文,其中,本设备上配置有第一内向MEP,第二内向MEP是第一内向MEP的MEP邻居,与第一内向MEP具有相同的维护域MD级别、MD、维护集MA和服务实例; 查找模块,用于根据所述接收模块接收的CFD协议报文中携带的第二转发设备的媒体访问控制MAC地址和第二内向MEP的标识,在第一内向MEP对应的CFD信息表中查找匹配表项,其中,所述CFD信息表用于记录第一内向MEP的各个MEP邻居的信息; 更新模块,用于在所述查找模块未查找到匹配表项时,在所述CFD信息表中增加第二内向MEP对应的表项,并在该表项中将第二内向MEP的状态设置为正常,其中,该表项中包括第一端口标识、第二转发设备的MAC地址、第二内向MEP的标识、以及第二内向MEP的状态,所述第一端口标识是接收到所述接收的CFD协议报文的第一端口的标识; 发送模块,用于在第一内向MEP要发送CFD协议报文时,若第二内向MEP的状态为正常,则按照所述CFD信息表中所述第二内向MEP对应的表项,以单播的方式向第二转发设备发送CFD协议报文; 保存模块,用于保存所述第一内向MEP对应的CFD信息表。
8.根据权利要求7所述的转发设备,其特征在于,所述发送模块包括 封装单元,用于为CFD协议报文封装报头,得到单播的封装后的CFD协议报文,其中,该报头中的源MAC地址为本设备的MAC地址、目的MAC地址为所述第二内向MEP对应的表项中包含的第二转发设备的MAC地址; 发送单元,用于将所述封装单元封装后的CFD协议报文,通过所述第二内向MEP对应的表项中包含的第一端口标识所指不的第一端口发送出去。
9.根据权利要求7所述的转发设备,其特征在于,所述查找模块包括 判断单元,用于判断所述CFD信息表的每一个表项中是否包含有所述接收的CFD协议报文中携带的第二转发设备的MAC地址和第二内向MEP的标识; 确定单元,用于在所述判断单元判断出没有一个表项中包含有所述第二转发设备的MAC地址和第二内向MEP的标识时,确定未查找到匹配表项;还用于在所述判断单元判断出有一个表项中包含有所述第二转发设备的MAC地址和第二内向MEP的标识时,确定查找到了匹配表项。
10.根据权利要求9所述的转发设备,其特征在于,所述更新模块,还用于当所述接收模块在第一预定时间段内未接收到第二内向MEP发来的CFD协议报文时,在所述CFD信息表中的第二内向MEP对应的表项中,将第二内向MEP的状态修改为失效;还用于在所述查找模块查找到了匹配表项,且该匹配表项中包含的状态为失效、端口标识不是第一端口标识时,将该匹配表项中包含的状态更新为正常、端口标识更新为第一端口标识,在所述查找模块查找到了匹配表项,且该匹配表项中包含的状态为失效、端口标 识是第一端口标识时,将该匹配表项中包含的状态更新为正常;还用于在将第二内向MEP的状态修改为失效之后,当所述接收模块在第二预定时间段内仍未接收到第二内向MEP发来的CFD协议报文时,删除所述CFD信息表中的第二内向MEP对应的表项,其中,第二预定时间段的值大于第一预定时间段的值。
全文摘要
本申请公开了一种连通错误检测协议报文的发送方法以及转发设备,该方法包括第一转发设备接收第二转发设备上的第二内向MEP发来的CFD协议报文;根据该CFD协议报文中携带的第二转发设备的MAC地址和第二内向MEP的标识,在第一内向MEP对应的CFD信息表中查找匹配表项;若未查找到匹配表项,则在该CFD信息表中增加第二内向MEP对应的表项,该表项中包括第一端口标识、第二转发设备的MAC地址、第二内向MEP的标识、以及第二内向MEP的正常状态,第一端口标识是接收到该CFD协议报文的第一端口的标识;当第一内向MEP要发送CFD协议报文时,若第二内向MEP的状态为正常,则按照该CFD信息表中第二内向MEP对应的表项,以单播的方式向第二转发设备发送CFD协议报文。
文档编号H04L12/741GK103036793SQ20121055018
公开日2013年4月10日 申请日期2012年12月17日 优先权日2012年12月17日
发明者李磊方, 王伟, 雷伟 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1