分布式通信设备中组播流量检测方法及装置
技术领域
本发明涉及网络通信领域的组播流量检测技术,尤其涉及分布式系统中组播流量的检测技术。
背景技术
随着高清视频点播、多方视频会议等业务的大量开展,集中式体系结构的通信设备已不能满足需求,而更高性能的分布式通信设备得到了大力发展。分布式通信设备一般包括用于数据转发的线卡(简称LPU)和用于协议处理的主控卡(简称MPU)。主控卡完成控制层面功能,向线卡下发转发规则,线卡按照转发规则完成转发功能,控制和转发在硬件上隔离,同时提高了控制性能和转发性能。在一些组播应用中,需要对特定组播组的流量进行监控,使管理者能够及时掌握组播流量的异动情况,进行针对性的处理。
分布式通信设备中的组播流量检测通常运行于的主控卡。主控卡的流量检测程序周期性检查特定组播组的流量是否高于或低于预设值。主控卡主动进行流量检测时,每个检测规则对应的检测周期主控卡和线卡间会有通信。当检测规则较多时,会使得主控卡过于繁忙,并且卡间产生大量的通信交互,影响系统性能。
现有技术中一种实现分布式通信设备流量检测的改进方案是,线卡主动向主控卡上报组播流量,主控卡对组播流量进行检测。该技术对线卡上报流量的周期有严格要求,否则将和主控卡流量检测周期不匹配导致流量检测不准确。基于上述方案的一种改进技术是,将流量检测规则分布到线卡上,线卡根据流量检测的规则周期上报流量,此方案仍然存在线卡和主控卡间通信量过大的问题。
因此,有必要提出一种新的实现分布式通信设备的组播流量的检测方法,解决现有技术中由于检测规则较多时卡间通信量过大,难以满足对组播流量的检测及控制的应用要求。
发明内容
有鉴于此,本发明提供了一种分布式通信设备中实现组播流量检测的方法及装置,以解决现有技术中解决卡间通信量过大,难以满足对组播流量的检测及控制的应用要求的问题。
为解决上述技术问题,本发明的技术方案是这样实现的:
第一发明,本发明提供一种分布式通信设备中组播流量检测的方法,所述分布式通信设备包括主控卡和至少一个线卡,该方法包括:
在主控卡上配置组播流量检测规则,根据所述组播流量检测规则从组播转发表中获取对应组播流量的入接口;
根据获取的所述对应组播流量的入接口,计算出转发所述对应组播流量的线卡,将所述组播流量检测规则下发到所述计算出的线卡;
接收到所述组播流量检测规则的线卡,根据所述流量检测规则对对应组播流量进行周期性检测,并向所述主控卡上报组播流量检测结果。
具体的,所述组播流量检测规则包括:组播转发表项关键字、检测周期和流量阈值。
进一步地,所述分布式通信设备中组播流量检测的方法还包括:在组播流量检测规则对应的组播转发表入接口变化时,计算所述入接口所对应的线卡是否变化,如是,则通知原线卡删除所述组播流量检测规则,并向计算出的变化后的线卡下发所述组播流量检测规则。
进一步地,所述接收到所述组播流量检测规则的线卡,根据所述流量检测规则对对应组播流量进行周期性检测,并向所述主控卡上报组播流量检测结果,包括:
接收到所述组播流量检测规则的线卡,根据所述流量检测规则中确定的检测周期时间,计算出对应组播流量的增量,如果超过设定的阈值,则向所述主控卡上报告警信息。
进一步的,所述分布式通信设备中组播流量检测的方法进一步包括:
当主控卡接收到线卡上报的告警信息后,将告警信息通过打印命令的方式显示或者向指定IP地址发送告警信息。
本发明的另一方面,还提供一种主控卡,所述主控卡应用于分布式通信设备中,该主控卡包括:
规则配置模块,用于配置组播流量检测规则,并将配置的所述组播流量检测规则发送给下发控制模块;
下发控制模块,用于根据所述组播流量检测规则从组播转发表中获取对应组播流量的入接口,根据获取的所述对应组播流量的入接口,计算出转发所述对应组播流量的线卡,将所述组播流量检测规则下发到所述计算出的线卡;并用于从接收到流量检测规则的线卡获取对应的组播流量的检测结果。
转发表管理模块,用于管理组播流量转发表。
进一步地,所述下发控制模块还用于:在收到转发表管理模块组播流量检测规则对应的组播转发表入接口变化的通知时,计算所述入接口所对应的线卡是否变化,如是,则通知原线卡删除所述组播流量检测规则,并向计算出的变化后的线卡下发所述组播流量检测规则。
进一步地,所述主控卡还包括:检测结果处理模块,用于当所述检测结果接收模块接收到线卡上报的告警信息后,将告警信息通过打印命令的方式显示或者向指定IP地址发送告警信息。
具体地,所述组播流量检测规则包括:组播转发表项关键字、检测周期和流量阈值。
本发明的又一方面,还提供一种线卡,所述线卡应用于包含上述主控卡的分布式通信设备中,包括:
信息交互模块,用于接收所述主控卡下发的组播流量检测规则;并在接收到组播流量检测模块的检测结果后上报所述主控卡;
组播流量检测模块,用于根据所述流量检测规则对对应组播流量进行周期性检测,并将所述组播流量检测规则对应的检测结果发送给信息交互模块。
综上所述,本发明的有益效果包括:通过主控卡将流量检测规则下发到线卡,由线卡进行组播流量的检测后将结果上报给主控卡,有效利用线卡的处理能力,减轻主控卡的压力并且能够有效减少主控卡和线卡间的通信交互。
附图说明
图1为本发明实施例一提供的一种组播流量检测方法流程图;
图2为本发明实施例二提供的一种组播流量检测方法流程图;
图3为本发明实施例三提供的分布式通信设备中主控卡的结构框图;
图4为本发明实施例四提供的分布式通信设备中线卡的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
如图1所示,图1为本发明实施例提供的一种分布式通信设备中组播流量检测方法流程图。该组播流量检测方法流程图具体包括如下步骤:
S101、在主控卡上配置组播流量检测规则,根据所述组播流量检测规则从组播转发表中获取对应组播流量的入接口。
本发明实施例中,本发明实施例中,所述组播流量检测规则包括:组播转发表项关键字(如组播源地址、组播组地址等)、检测周期和流量阈值。
S102、根据获取的所述对应组播流量的入接口,计算出转发所述对应组播流量的线卡,将所述组播流量检测规则下发到所述计算出的线卡。
在本步骤中,在组播流量检测规则对应的组播转发表入接口变化时,计算所述入接口所对应的线卡是否变化,如是,则通知原线卡删除所述组播流量检测规则,并向计算出的变化后的线卡下发所述组播流量检测规则。
S103、接收到所述组播流量检测规则的线卡,根据所述流量检测规则对对应组播流量进行周期性检测,并向所述主控卡上报组播流量检测结果。
本步骤中,接收到所述组播流量检测规则的线卡,根据所述流量检测规则中确定的检测周期时间,计算出对应组播流量的增量,如果超过设定的阈值,则向所述主控卡上报告警信息。当主控卡接收到线卡上报的告警信息后,将告警信息通过打印命令的方式显示或者向指定IP地址发送告警信息。
本发明实施例通过主控卡将流量检测规则下发到线卡,由线卡进行组播流量的检测后将结果上报给主控卡,有效利用线卡的处理能力,减轻主控卡的压力并且能够有效减少主控卡和线卡间的通信交互。
实施例二
S201,在主控卡上配置组播流量检测规则,将配置的所述组播流量检测规则发送给下发控制模块,根据所述组播流量检测规则从组播转发表中获取对应组播流量的入接口。
本实施例中,主控卡配置流量检测规则RULE_A,该流量检测规则包括:组播源地址为192.168.1.2,组播组地址为224.1.1.1,检测周期时间为10秒,流量阈值为10M,动作为低于流量阈值时告警。主控卡将流量检测规则RULE_A下发到下发控制模块,下发控制模块依据组播转发表项关键字向转发表管理模块进行查找组播流量(192.168.1.2,224.1.1.1)对应的转发表,获取入接口为gigabitethernet3/2。
S202,下发控制模块根据获取的与配置的组播流量检测规则匹配的组播流量的入接口,计算出转发所述对应组播流量的线卡,将所述组播流量检测规则下发到所述计算出的线卡。
下发控制模块根据入接口gigabitethernet3/2判断其所在板卡为线卡3;下发控制模块将流量检测规则RULE_A下发到线卡3。本步骤中,可利用分布式通信设备中已有的主控卡和线卡交互技术实现组播流量检测规则的下发。
S203,接收到所述组播流量检测规则的线卡,根据所述流量检测规则对对应组播流量进行周期性检测,并向所述主控卡上报组播流量检测结果。
线卡3收到流量检测规则RULE_A,启动检测周期时间为10秒的流量检测定时器,流量检测定时器超时记录当前流量,并减去上次记录的流量值得出流量增量。流量增量与阈值进行比较,若低于阈值,则向主控卡上报流量检测规则RULE_A的检测告警信息。
S204,当主控卡接收到线卡上报的组播流量检测的告警信息后,将告警信息通过打印命令的方式显示或者向指定IP地址发送告警信息。
在本步骤中,主控卡收到线卡3的告警信息后,可以通过shell打印命令的方式进行告警显示,或者向指定的日志服务器的IP地址发送告警信息。
S205,在组播流量检测规则对应的组播转发表入接口变化时,计算所述入接口所对应的线卡是否变化,如是,则通知原线卡删除所述组播流量检测规则,并向计算出的变化后的线卡下发所述组播流量检测规则。
在本实施例中,当组播流量(192.168.1.2,224.1.1.1)的入接口由gigabitethernet3/2变为gigabitethernet4/3,转发表管理模块通知下发控制模块。下发控制模块根据组播流量关键信息(192.168.1.2,224.1.1.1)找到检测规则RULE_A,向线卡3删除RULE_A,并向线卡4下发规则RULE_A。
本发明实施例可以对组播流量的检测规则进行调整,从而对各线卡的流量可以有效检测。
实施例三
本实施例提供一种主控卡,参见图3所示,该主控卡应用于分布式通信设备中,与分布式通信设备中的线卡连接,该主控卡包括:
规则配置模块301,用于配置组播流量检测规则,并将配置的所述组播流量检测规则发送给下发控制模块302。
下发控制模块302,用于根据所述组播流量检测规则从组播转发表中获取对应组播流量的入接口,根据获取的所述对应组播流量的入接口,计算出转发所述对应组播流量的线卡,将所述组播流量检测规则下发到所述计算出的线卡;并用于从接收到流量检测规则的线卡获取对应的组播流量的检测结果。具体地,下发控制模块302还用于在收到转发表管理模块303组播流量检测规则对应的组播转发表入接口变化的通知时,计算所述入接口所对应的线卡是否变化,如是,则通知原线卡删除所述组播流量检测规则,并向计算出的变化后的线卡下发所述组播流量检测规则。
转发表管理模块303,用于管理组播流量转发表。
检测结果接收模块303,用于从接收到流量检测规则的线卡获取对应的组播流量的检测结果。
实施例四
本实施例提供一种线卡,参见图4所示,该线卡应用于分布式通信设备中,与分布式通信设备中的主控卡连接,该线卡包括:
信息交互模块401,用于接收所述主控卡下发的组播流量检测规则;并在接收到组播流量检测模块的检测结果后上报所述主控卡。配置的组播流量检测规则包括:组播转发表项关键字、检测周期和流量阈值。组播转发表项关键词包括:组播源地址、组播组地址。
组播流量检测模块402,用于根据所述流量检测规则对对应组播流量进行周期性检测,并将所述组播流量检测规则对应的检测结果发送给信息交互模块。
组播流量检测模块依据组博流量检测规则中设定的检测周期时间,对线卡上对应的的组播流量进行统计,流量增量与设定的阈值进行比较,若低于阈值,则向主控卡上报流量检测规则RULE_A的检测告警信息。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。