用于olt网络管理通道的报文限制系统及方法

文档序号:7871322阅读:441来源:国知局
专利名称:用于olt网络管理通道的报文限制系统及方法
技术领域
本发明所属EPON (以太网无源光网络)领域局端OLT (光线路终端)设备系统软件的健壮性、安全性处理技术。
背景技术
(一)在网络异常的情况下,OLT设备网络管理通道内会产生报文风暴OLT设备除了偶尔采用本地串ロ进行管理之外,通常采用TELNET (网络虚拟终端协议)客户端或SNMP (简单网络管理协议)网管程序,通过带外或带内网络管理ロ对设备进
行管理。在OLT设备的网络管理通道内,当交換机故障或配置错误、或下接的其它网络设备端ロ自环或故障、或人为恶意报文攻击等ー些异常情况下,OLT设备网络管理通道内,经常会产生多播、单播、广播风暴等极端的网络环境。(ニ)OLT设备网络接ロ模式OLT设备中的网络接ロ可以配置成两种模式:混杂模式和特定模式,这也是本发明中限速功能的关键。混杂模式:接收所有的报文(包括恶意攻击报文),在这种模式下,OLT设备的网络接ロ将接收管理通道中的所有报文;特定摸式:只接受特定MAC地址的报文,在这种模式下,OLT设备只接受与本设备相关的报文。(三)在管理通道内产生报文风暴时,OLT设备中的缺陷表征当OLT网络管理通道中产生报文风暴时,大量的无关包文将被充斥到OLT的网络管理接ロ,并被OLT网络管理接ロ硬件自动接收,并引发报文接收中断、导致OLT软件系统调用报文接收中断服务程序、并上传TCP/IP协议栈,这样会占用OLT系统的大量CPU处理时间。1、在Linux操作系统上的表现:(I)命令行操作界面反应延迟,输入后长时间没有反应;(2)网管操作界面反应延迟,操作延迟长,超时甚至失败;(3)网管程序与OLT设备两者之间,如果设计有定时轮询或定时通信的任务,将全部超时失败,网管界面表现为设备掉线,失去联系等现象;(4)如果OLT设备开启有看门狗功能,喂狗动作将被延迟,OLT设备将会反复重启。2、在VxWorks操作系统上的表现:(I)命令行、网管等人机操作界面,全部“假死”,输入后无任何反应;(2)网管程序处于与OLT设备失联状态,无法对OLT进行正常操作。(四)在工程应用中的不利影响(I)人机界面操作迟缓,用户体验性以及交互性差;(2)有时序要求的子系统或辅助系统,时序已经混乱,不能正常工作,会导致整个OLT设备的可靠性、健壮性急剧降低;(3)设备很容易出现其它衍生异常。例如设备死机,客户业务中断等等。

发明内容
本发明所要解决的技术问题是:提供一种限制网络报文通过OLT设备管理ロ冲击系统的方法,该方法解决了因OLT设备管理通道中,报文风暴对OLT设备的冲击的问题。本发明所采用的技术问题是:用于OLT网络管理通道的报文限制系统,包括:报文入口模块,用于接收报文、计数器递增以及控制报文接收功能的关闭;报文出口模块,用于处理报文、计数器的递减以及控制报文接收功能开启;这两个模块设置在光线路终端的网络接ロ驱动程序中。用于OLT网络管理通道的报文限制方法,包括:SI)光线路终端的网络接ロ配置为接收所有网络报文,并通过报文入口模块的计数器对光线路终端在一个采样周期T2内接收到的报文进行统计;S2) —个采样周期内收到的报文达到上限M,则启动限速,网络接ロ配置为只接受目的MAC地址为光线路终端自身MAC地址的报文,并通过报文入口模块关闭目的MAC地址不是光线路终端自身MAC地址报文的接收功能;S3)通过报文出ロ模块启动ー个定时器,如果定时器的值达到ー个周期T之后以步长N递减相应的报文计数器;S4)检测计数器值是否低于设定的限速报文下限值A,如果低于A,进入步骤S5,否则返回到步骤S3 ;S5)通过报文出ロ模块开启所有报文报文的接收功能,然后返回SI,进行下ー个周期的报文限制过程。所述的方法,步骤SI按照广播、组播、单播报文分别统计,T2取值0.2s ;步骤S2的M值为:广播报文150个,组播报文150个,单播报文1500个;步骤S4的每种报文的A值是广播报文75个,组播报文75个,单播报文750个。所述的方法,步骤S2的M=A+T1*V,其中Tl为限速周期,V为系统处理报文速率。所述的方法,步骤S3的T=10ms,T彡Tl。所述的方法,Tl取值0.25s。所述的方法,步骤S3的N=V*T,其中不同类型的报文的V值为:广播报文300pps,组播报文300pps,单播报文3000pps。本发明的优点:解决了因OLT设备管理通道中,报文风暴对OLT设备的冲击,导致的OLT设备软件系统可靠性、健壮性下降、功能异常、以及莫名死机等技术问题,大大增强了 OLT设备在复杂多变的网络环境中运行的可靠性、安全性以及健壮性。


图1是限速报文下限值的设定示意图。图2是限速报文上限值的设定示意图。图3是限速功能所有參 数关系的示意图。图4是计数器累加示意图。图5是计数器上限检测示意图。图6是实施限速时各參数的关系示意图。
图7是报文入口模块的处理流程。图8是报文出ロ模块的处理流程。
具体实施例方式鉴于背景技术所述现有技术的缺陷,本发明有效地解决了该问题。本发明通过在网络驱动接ロ程序中,分别增加广播报文限速功能、多播报文限速功能、未知单播报文限速功能。限速吋,网络接ロ配置为特定模式,只接受目的MAC为OLT设备自己MAC的报文;正常时,即不限速时,网络接ロ配置为混杂模式,接收所有网络报文。限速功能以管理通道中进入OLT设备的上述3种报文的正常报文平均值和最大突发报文值为基准来控制限速功能的开启或关闭,以此对大量的广播、组播、单播报文进行合理的控制,从而有效地解决报文风暴泛滥给OLT系统造成的巨大危害。本发明中,具体采用如下技术手段实现限速功能:本发明在思路上可划分 为两部分,接收部分和发送部分。接收部分,首先在报文接收端增加一个统计报文个数的报文接收计数器,每接收到ー个报文,计数器就増加1,然后通过检测这个计数器值是否达到设定的限速报文上限值(即非正常情况报文接收上限值)以决定报文限速功能是否开启。发送部分,在报文发送端,启动ー个定时器,毎次定时器超吋,将报文接收计数器的值减去定时器间隔期间发送报文的个数,然后检测更新后的计数器值是否低于限速报文下限值(即正常情况下报文接收值)以决定报文限速功能是否关闭。通过两个部分的协作,实现了在管理通道网络异常情况下,即在报文风暴、恶意攻击等发生时,能够有效抵御风暴报文,进而保护OLT系统,保证用户业务的正常进行。 下面结合附图进ー步详述本发明。1.限速功能參数的确定及性能评估在实施限速功能之前需要配置限速功能设计中必须的5个參数,以及对限速性能作ー个评估,以使限速功能达到最好的效果,在保证功能能有效抵御报文风暴的同时也能有较好的用户界面交互性。(I)限速报文下限值限速报文下限值(也可称作正常报文平均值),指在正常情况下采样周期内(采样周期的值的确定根据实际情况来确定,在下面将解释)进行业务往来流向OLT系统的报文数,此时网络稳定,没有报文风暴发生。■广播限速报文下限值:正常情况下采样周期内接收正常广播报文平均值。■组播限速报文下限值:正常情况下采样周期内接收正常组播报文平均值。■单播限速报文下限值:正常情况下采样周期内接收正常单播报文平均值。这个值记作A。如图1所示,在广东东研网络科技股份有限公司OLT系统中,以VISTA1600F型设备为例,对于带外管理的网管以及TELNET客户端等用户程序,正常情况下交互的数据量不大,这个值分别为:广播报文:75个,组播报文:75个,单播报文:750个。(2)限速报文上限值限速报文上限值(也称最大突发报文值),是指实施限速功能的报文数。这个值与限速报文下限值、采样周期以及报文处理速率等有夫。在采样周期内流向OLT系统的报文数达到这个值后,将关闭报文接收功能,启动限速。这时可能出现了网络故障,发生报文风暴,或者是出现大量恶意攻击报文等等。■广播限速报文上限值:采样周期内,实行广播报文限速的最大值。■组播限速报文上限值:采样周期内,实行组播报文限速的最大值。■单播限速报文上限值:采样周期内,实行单播报文限速的最大值。这个值记作M。如图2所示,在广东东研网络科技股份有限公司OLT系统中,以VISTA1600F型设备为例,这个值分别为:广播报文:150个,组播报文:150个,单播报文:1500个。(3)限速周期(保证在这个周期的时间内只处理特定报文)本发明首先的出发点就是用户的体验性。限速周期(也可称作用户服务周期),是指在非正常网络状态时,限速功能启动的时间,这段时间只接受目的MAC为设备自己的报文,保证用户程序(TELNET客户端、网管)与OLT系统正常交互(操作能尽可能快的完成)。这个值是ー个范围,这个值记作TI。在这个范围的取值内,实行限速功能(0LT系统网络接ロ配置为特定模式),只接受用户程序发送给OLT系统的报文,Tl越大,M值也越大,正常应用的操作有充足的时间片完成(但是M值越大,达到启动限速功能的间 隔也就越大)。(4)系统处理报文速率系统处理报文速率,是指在単位时间内,系统处理发送的报文值。该值是一定的,由OLT系统的实际性能来决定,对于广播、组播、单播报文处理,该值是不一样的。这个值记作V。(5)采样周期采样周期,是指在限速功能关闭之后,开启报文接收功能的时间。在这段时间内开始对所有报文(包括正常业务报文和非正常的报文)进行采样计数,在非正常网络状态时,OLT接收到的所有报文中,正常报文所占比例会很小,CPU的大部分性能会被异常报文消耗棹。这个值得设定必须保证达到一定M值后,就实行限速功能,以不让正常应用等待过长而超吋。这个值也是ー个范围,记为T2。T2值越小,M值也就越小,异常情况下OLT系统会很快进入限速功能,正常应用会被响应到(但是M值越小,留给应用程序的时间片也越小)。(6)性能评估:上述这些数据是有效实施本发明中限速功能的保证,在不同规模的系统以及不网络环境的系统中,他们的值都不一样,在实际工程应用时要通过实际的需求以及实际测试来确定这些值。我们要从用户程序的角度来评估限速功能的性能,这个由两方面因素决定:a、用户程序(TELNET客户端、网管)与OLT系统(单次)交互间隔时间——采样周期。在保证程序的体验性好的情况下(即保证程序响应速度,用户觉得“不卡”),测试程序能承受的最大时间,在这个时间内程序不超时,且用户操作也不觉得卡。这个时间作为T2的值。b、用户程序被OLT系统服务的时间——限速周期,也就是在限速功能开启的时间段,用户程序被OLT系统服务时间长度,在这个时间内要保证用户程序至少能将它的一次操作完成(即保证程序服务质量)。这个时间作为限速周期Tl的值。然后我们来看他们之间的关系:■限速报文下限值A:采样周期内,正常期间接收到的报文。■限速报文上限值M:限速报文下限值+限速周期*系统处理报文速率即:M=A+T1*V■ T2正相关于M,即M越大,T2越大。分析知道,采样·吋,T2值决定M的值,T2的值由用户程序決定,T2越小,用户程序被响应的速度越快,故而不觉得卡,但是M值会越小,Tl值也会随之小,程序交互时间短。故可得出知道,影响限速功能以及用户体验性的两个參数为Tl和T2,且两个值是正相关关系,T2越小越好,Tl越大越好。要达到最佳限速功能性能,Tl和T2的值必须达到ー个平衡,在满足T2尽可能小的同时(满足用户响应速度)也保证Tl尽可能的大(满足用户服务质量)。因为Tl和T2是ー个范围,在工程应用中实际选取时,首先先确定T2的值,不同的应用程序,T2值选取不同的大小。对于交互频率大的的用户程序来说,T2值取小一些,对于交互频率较小的用户程序来说,T2值取大些。对于网管以及TELNET等应用来说,通过获取网管与OLT交互超时时间以及兼顾用户操作等待时间等因素决定T2的值。通过实际测试,T2值在0.1 0.5s比较合适,在保证合适的响应周期,测试系统中在非正常网络环境中的M的值,然后通过V值得出Tl的值。在广东东研网络科技股份有限公司OLT系统中,以VISTA1600F型设备为例,通过测试得出:T2=0.2s 左右。M的值分别为:广播报文150个,组播报文150个,单播报文:1500个。A的值分别为:广播报文75个,组播报文75个,单播报文:750个。V的值分别为:广播报文300pps,组播报文300pps,单播报文3000pps(pps:packetper second,报文 / 秒)。Tl=0.25s,(150p_75p)/300pps 或(1500p_750p)/3000pps。2、报文接收端ロ的处理在网络接ロ驱动程序中都会提供钩子函数,通过在驱动程序中提供的接ロ函数——钩子函数中做处理,在该函数中检测报文接收,安置ー个统计广播、组播、单播报文总个数的统计计数器,毎次接收到了广播、组播、单播报文,就将相应的计数器増加。毎次增加以后,检测计数器的值是否超过了最大突发报文值,若超过,则关闭相应报文的接收功能;若未达到最大突发报文值,按正常情况处理,继续接收报文。( I)统计广播、组播、单播报文总个数,累加相应的计数器;如图4所示。“broadcast_count++”表示姆收到ー个广播报文,相应的计数器加I ;“multicast_count++”表示姆收到一个组播报文,相应的计数器加I ;“unicast_count++”表示每收到ー个单播报文,相应的计数器加I。(2)检测计数器值是否达到设定的限速报文上限值M ;如图5所示。
(3)达到M点,即超过了设定的限速报文上限值时,则启动限速功能,关闭对应报文接收功能。注:限速功能函数需要在之前建立,用于控制报文的接收开关。具体完整的实现逻辑流程图见说明书附7报文接收模块。3、报文发送端ロ的处理对于系统处理报文,由于OLT系统处理报文速度是一定的(与性能等有夫),启动ー个定时器,这个定时器的定时周期是系统处理单位报文N (定时器周期处理报文数)的时间(定时器周期可以根据具体情况设定),即每次经过定时器周期T后,定时器就超吋。定时器超时处理进程将广播、组播、单播报文接收总个数的计数器减去系统发送的単位报文值N,然后检测更新后的统计广播、组播、单播报文总个数的计数器值,看是否低于限速报文下限值,若低于该值,则开启相应报文的接收处理功能;若未低于该值,不作处理。(I)定时器启动,超时周期为T。因为OLT处理报文的速度一定,故而可以建立ー个定时器以一定的周期处理报文计数器的值,这个值的大小适中,且T く Tl。(2)超时后以步长N递减广播、组播、单播报文计数器值,若计数器总值小于步长值,则置零处理。如图6 所示,N=V*T在广东东研网络科技股份有限公司OLT系统中,T值为10ms,该值N的设置分别为,广播:3,组播:3,单播:30。(3)检测计数器值是否低于设定的限速报文下限值,即计数器值是否达到A点。(4)计数器值低于A点则开启对应报文接收功能。具体完整的实现逻辑流程图见说明书附8报文发送模块。广播、多播、单播限速功能由报文入口模块和报文出口模块这两个模块构成。如图7所示,报文入口模块负责接收报文,计数器递增以及控制报文接收功能关闭。如图8所示,报文出口模块负责处理报文,计数器的递减以及控制报文接收功能开启。
权利要求
1.用于OLT网络管理通道的报文限制系统,其特征在于包括:报文入口模块,用于接收报文、计数器递增以及控制报文接收功能的关闭;报文出ロ模块,用于处理报文、计数器的递减以及控制报文接收功能开启;这两个模块设置在光线路终端的网络接ロ驱动程序中。
2.用于OLT网络管理通道的报文限制方法,其特征在于包括: 51)光线路终端的网络接ロ配置为接收所有网络报文,并通过报文入口模块的计数器对光线路终端在一个采样周期T2内接收到的报文进行统计; 52)—个采样周期内收到的报文达到上限M,则启动限速,网络接ロ配置为只接受目的MAC地址为光线路终端自身MAC地址的报文,并通过报文入ロ模块关闭目的MAC地址不是光线路终端自身MAC地址报文的接收功能; 53)通过报文出ロ模块启动ー个定时器,如果定时器的值达到ー个周期T之后以步长N递减相应的报文计数器; 54)检测计数器值是否低于设定的限速报文下限值A,如果低于A,进入步骤S5,否则返回到步骤S3 ; 55)通过报文出口模块开启所有报文的接收功能,然后返回SI,进行下ー个周期的报文限制过程。
3.根据权利要求2所述的方法,其特征在于:步骤SI按照广播、组播、单播报文分别统计,T2取值0.2s ;步骤S2的M值为:广播报文150个,组播报文150个,单播报文1500个;步骤S4的每种报文的A值是广播报文75个,组播报文75个,单播报文750个。
4.根据权利要求2所述的方法,其特征在于:步骤S2的M=A+T1*V,其中Tl为限速周期,V为系统处理报文速率。
5.根据权利要求4所述的方法,其特征在于:步骤S3的T=10ms,T< Tl。
6.根据权利要求4所述的方法,其特征在于:T1取值0.25s。
7.根据权利要求4所述的方法,其特征在于:步骤S3的N=V*T,其中不同类型的报文的V值为:广播报文300pps,组播报文300pps,单播报文3000pps。
全文摘要
本发明提供了用于OLT网络管理通道的报文限制系统及方法,该限制系统包括报文入口模块,用于接收报文、计数器递增以及控制报文接收功能的关闭;报文出口模块,用于处理报文、计数器的递减以及控制报文接收功能开启;这两个模块设置在光线路终端的网络接口驱动程序中。本发明解决了因OLT设备管理通道中,报文风暴对OLT设备的冲击的问题。
文档编号H04Q11/00GK103117871SQ201210593789
公开日2013年5月22日 申请日期2012年12月31日 优先权日2012年12月31日
发明者张进, 王国锋 申请人:广东东研网络科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1