本发明涉及广播风暴抑制技术领域,具体提供一种基于光模块的广播风暴抑制方法及装置。
背景技术:
光收发一体模块是光通信的核心器件,完成对光信号的光-电/电-光转换。由两部分组成:接收部分和发射部分。接收部分实现光-电变换,发射部分实现电-光变换。当前的智能sfp模块,均支持数据诊断(ddm/dom)功能,利用智能化的光模块,网络管理单元可以实时监测收发模块的温度、供电电压、激光偏置电流以及发射和接收光功率。这些参量的测量,可以帮助网络管理单元找出光纤链路中发生故障的位置,简化维护工作,提高系统的可靠性。
在网络中,广播帧(由于被转发)数量如果急剧增加而影响正常的网络通讯,广播风暴会占用相当可观的网络带宽,造成整个网络无法正常工作。广播风暴控制一般是允许端口对网络上出现的广播风暴进行过滤。开启广播风暴控制后,当端口收到的广播帧累计到预定门限值时,端口将自动丢弃收到的广播帧。当未启用该功能或广播帧未累计到门限时,广播帧将被正常广播到交换机的其它端口,而造成硬件损坏或链路故障导致网络瘫痪。
广播风暴抑制的实现一般都是基于交换机,在交换机配置广播风暴抑制功能即可实现当广播包数量达到预定门限时,端口则阻塞暂停此类报文的转发。当前万兆网络使用越来越广泛,光模块的功能也越来越智能,若基于光模块实现广播风暴抑制功能,则不需要依赖交换机端进行广播风暴的抑制,只要使用光模块即可实现网口端口的风暴抑制。
技术实现要素:
本发明的技术任务是针对上述存在的问题,提供一种不需要依赖交换机端,只需要使用光模块,从而扩展了广播风暴抑制的应用范围,方便了网络了配置,提高了网络稳定性的基于光模块的广播风暴抑制方法。
本发明进一步的技术任务是提供一种基于光模块的广播风暴抑制装置。
为实现上述目的,本发明提供了如下技术方案:
一种基于光模块的广播风暴抑制方法,该方法中,光模块的接收部分将接收到的数据发送到光模块的处理部分进行解析,判断数据包是否为广播包,若不是广播包,则光模块发送部分转发数据包,若是广播包,则统计广播包数量是否达到设定值,若未超过设定值,则光模块发送部分转发数据包,若超过设定值,则直接丢弃该数据包。
作为优选,该基于光模块的广播风暴抑制方法,具体包括以下步骤:
s1、光模块接收部分接收数据包;
s2、光模块接收部分将数据包发送到光模块处理部分,光模块处理部分解析数据包;
s3、判断数据包是否为广播包;
s4、数据包为非广播包,则执行步骤s5,否则执行步骤s6;
s5、光模块发送部分转发数据包;
s6、统计广播包数量是否达到设定值,若广播包数量低于设定值,则执行步骤s7,否则执行步骤s8;
s7、光模块发送部分转发数据包;
s8、直接丢弃该数据包。
作为优选,步骤s3中,光模块处理部分将数据包进行解析,若数据包的目的mac地址为ff-ff-ff-ff-ff-ff,则数据包为广播包。
作为优选,步骤s6中,广播包数量的设定值不超过2000pps。
一种基于光模块的广播风暴抑制装置,该装置中光模块包括接收单元、处理单元和发送单元;
接收单元负责接收数据包,并将接收的数据包发送至处理单元;
处理单元负责解析数据包;
发送单元负责转发数据包。
作为优选,该基于光模块的广播风暴抑制装置还包括判断单元和统计单元,判断单元用于判断数据包是否为广播包;统计单元用于统计广播包数量是否达到设定值。
作为优选,所述处理单元将数据包进行解析,判断单元对数据包进行判断,若数据包的目的mac地址为ff-ff-ff-ff-ff-ff,则数据包为广播包。
作为优选,所述统计单元统计广播包数量,广播包数量的设定值不超过2000pps。
与现有技术相比,本发明的基于光模块的广播风暴抑制方法具有以下突出的有益效果:所述基于光模块的广播风暴抑制方法利用对数据包的解析以及广播包的统计,实现对广播包的转发或者丢弃,进而防止了广播风暴,提高了网络连通的稳定性,实现网络的健壮性、可靠性,并且该基于光模块的广播风暴抑制方法不需要依赖交换机来实现,只需使用光模块即可实现,扩展了广播风暴抑制的应用范围,方便了网络了配置,提高了网络稳定性,具有良好的推广应用价值。
附图说明
图1是本发明所述基于光模块的广播风暴抑制方法的流程图。
具体实施方式
下面将结合附图和实施例,对本发明的基于光模块的广播风暴抑制方法及装置作进一步详细说明。
实施例
如图1所示,本发明的基于光模块的广播风暴抑制方法,该方法中,光模块的接收部分将接收到的数据发送到光模块的处理部分进行解析,判断数据包是否为广播包,若不是广播包,则光模块发送部分转发数据包,若是广播包,则统计广播包数量是否达到设定值,若未超过设定值,则光模块发送部分转发数据包,若超过设定值,则直接丢弃该数据包。
该基于光模块的广播风暴抑制方法通过基于光模块的广播风暴抑制装置来实现。所述基于光模块的广播风暴抑制装置包括接收单元、处理单元、发送单元、判断单元和统计单。
接收单元负责接收数据包,并将接收的数据包发送至处理单元。处理单元负责解析数据包。发送单元负责转发数据包。判断单元用于判断数据包是否为广播包。统计单元用于统计广播包数量是否达到设定值。
该基于光模块的广播风暴抑制方法,具体包括以下步骤:
s1、光模块接收部分接收数据包。
s2、光模块接收部分将数据包发送到光模块处理部分,光模块处理部分解析数据包。
s3、判断数据包是否为广播包。
光模块处理部分将数据包进行解析,若数据包的目的mac地址为ff-ff-ff-ff-ff-ff,则数据包为广播包。
s4、数据包为非广播包,则执行步骤s5,否则执行步骤s6。
s5、光模块发送部分转发数据包。
s6、统计广播包数量是否达到设定值,若广播包数量低于设定值,则执行步骤s7,否则执行步骤s8。
广播包数量的设定值不超过2000pps,广播包数量低于2000pps,则执行步骤s7,否则执行步骤s8。
s7、光模块发送部分转发数据包。
s8、直接丢弃该数据包。
本发明的基于光模块的广播风暴抑制装置,该装置中光模块包括接收单元、处理单元、发送单元、判断单元和统计单。
接收单元负责接收数据包,并将接收的数据包发送至处理单元。
处理单元负责解析数据包。
处理单元将数据包进行解析,判断单元对数据包进行判断,若数据包的目的mac地址为ff-ff-ff-ff-ff-ff,则数据包为广播包。
发送单元负责转发数据包。
判断单元用于判断数据包是否为广播包。
统计单元用于统计广播包数量是否达到设定值。
统计单元统计广播包数量,广播包数量的设定值不超过2000pps,若广播包数量低于2000pps,则发送单元转发数据包,否则直接丢弃该数据包。
以上所述的实施例,只是本发明较优选的具体实施方式,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。