通信处理方法及装置与流程

文档序号:12809184阅读:229来源:国知局
通信处理方法及装置与流程

本发明涉及通信领域,具体地,涉及一种通信处理方法及装置。



背景技术:

由于安全原因,在工业网络的通信系统中,通常会设置有对数据包进行业务处理的网络安全装置,以对通信网络中传输的数据包进行处理,例如判断数据包中是否包含有恶意攻击数据或其他对通信系统有威胁的数据,但是网络安全装置可能会因为断电或死机等异常事件而不能正常工作,因此为了避免网络安全装置故障而影响整个通信系统的正常通信,通常都设置有旁路功能(bypass)。

旁路功能(bypass)是指通过特定的触发状态(如断电或死机等)让两个通信网络不通过网络安全装置,而直接物理上导通,所以有了bypass后,当网络安全装置故障时,不影响正常的数据通信。

相关技术中对于旁路功能的控制通常采用看门狗(watchdog)或通用输入输出接口(gpio)两种方式。但是这两种控制方案过于机械,不够灵活,而影响通信系统的通信效率。



技术实现要素:

本发明的目的是提供一种通信控制方法以及应用所述方法的通信控制装置,利用所述通信控制方法及装置能仅能够实现在网络安装装置出现硬件问题时及时开启旁路通信(bypass)状态,而且当业务程序出现问题时也能够及时开启旁路通信状态,从而保证数据包的正常传输。

为了实现上述目的,本发明提供了一种通信处理方法,所述方法包括:对数据包通信的异常次数进行计数;当所述异常次数达到预定次数时,开启旁路通信状态。

其中,所述方法还包括:当开启旁路通信状态的时间达到预定延迟时间时,关闭所述旁路通信状态。

其中,所述方法还包括:监测所述数据包通信的丢包数据;以及,所述对数据包通信的异常次数进行计数包括:根据所述丢包数据判断所述数据包通信是否异常;若确定所述数据包通信异常,则记录所述数据包通信的异常次数。

其中,所述监测所述数据包通信的丢包数据包括:监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的丢包数据;以及所述根据所述丢包数据判断所述数据包通信是否异常包括:当所述用于传输所述数据包的物理网口和用于对所述数据包进行业务处理的业务程序中任一个出现丢包时,则确定所述数据包通信异常。

其中,所述方法还包括:监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量,以统计经所述物理网口的数据包数量和统计经所述业务程序的数据包数量,其中,所述物理网口包括发包网口和收包网口;基于所述发包网口和所述收包网口的数据包数量计算得到第一差值;计算所述第一差值与所述业务程序的数据包数量的差,以得到第二差值;以及,所述对数据包通信的异常次数进行计数包括:当所述第二差值大于预设阈值时,确定所述数据包通信异常;记录所述数据包通信的异常次数。

其中,所述监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量包括:按照预设检测周期监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量,其中,所述预设检测周期根据所述用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量状况进行调整。

其中,所述预定延迟时间根据预定时间段内开启所述旁路通信状态的次数进行调整。

根据本发明的另一方面,还提供一种通信处理装置,该装置包括:异常次数计数模块,被配置为对数据包通信的异常次数进行计数;以及旁路通信控制模块,被配置为当所述异常次数达到预定次数时,开启旁路通信状态。

其中,所述装置还包括:通信状态恢复控制模块,被配置为当开启旁路通信状态的时间达到预定延迟时间时,关闭所述旁路通信状态。

其中,所述装置还包括:丢包监测模块,被配置为监测所述数据包通信的丢包数据;以及,异常次数计数模块包括:第一异常检测子模块,被配置为根据所述丢包数据判断所述数据包通信是否异常;若确定所述数据包通信异常,则记录所述数据包通信的异常次数。

其中,所述丢包监测模块包括:丢包数据监测子模块,被配置为监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的丢包数据;以及所述第一异常检测子模块当所述用于传输所述数据包的物理网口和用于对所述数据包进行业务处理的业务程序中任一个出现丢包时,则确定所述数据包通信异常。

其中,所述装置还包括:流量监测模块,被配置为监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量,以统计经所述物理网口的数据包数量和统计经所述业务程序的数据包数量,其中,所述物理网口包括发包网口和收包网口;第一计算模块,被配置为基于所述发包网口和所述收包网口的数据包数量计算得到第一差值;第二计算模块,被配置为计算所述第一差值与所述业务程序的数据包数量的差,以得到第二差值;以及,所述异常次数计数模块包括:第二异常判断子模块,被配置为当所述第二差值大于预设阈值时,确定所述数据包通信异常;当所述第二异常判断子模块确定所述数据包通信异常时,记录所述数据包通信的异常次数。

其中,所述流量监测模块按照预设检测周期监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量;其中,所述预设检测周期根据所述用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量状况进行调整。

其中,所述装置还包括预定延迟时间调整模块,被配置为根据预定时间段内开启所述旁路通信状态的次数进行调整。

通过上述技术方案,利用所述通信控制方法及装置能仅能够实现在网络安装装置出现硬件问题时及时开启旁路通信(bypass)状态,而且当业务程序出现问题时也能够及时开启旁路通信状态,应用较为灵活,从而保证数据包的正常传输,不影响系统正常数据通信,并且,本发明所提供的通信控制方法及装置还对数据包通信过程中的异常进行了缓冲处理,提高了所述方法及装置的容错性。

本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:

图1是根据本发明实施例一的通信处理方法的流程图;

图2是根据本发明实施例二的通信处理方法的流程图;

图3是根据本发明实施例三的通信处理方法的流程图;

图4是根据本发明实施例四的通信处理方法的流程图;

图5是根据本发明实施例五的通信处理装置的结构图;

图6是根据本发明实施例六的通信处理装置的结构图;

图7是根据本发明实施例七的通信处理装置的结构图;

图8是根据本发明实施例八的通信处理装置的结构图;

图9是根据本发明实施例的一种应用场景的示意性拓扑图。

附图标记说明

010:丢包监测模块021:流量监测模块

022:第一计算模块023:第二计算模块

100:异常计数模块200:旁路通信控制模块

210:第一异常判断子模块220:第二异常判断子模块

300:通信状态恢复控制模块400:预定延迟时间调整模块

500:继电器

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

为了使本领域技术人员能够清楚、准确地理解本发明的技术方案,在描述本发明的优选实施例之前,先对本发明提供的通信处理方法和装置的应用场景进行简要的描述。

图9是根据本发明实施例的一种应用场景的示意性拓扑图。

如图9所示,本发明实施例的应用场景例如可以包括有服务器、继电器500、中转设备和计算机。可以理解的是,中转设备可以是入侵防护设备或网络安全装置等,例如,匡恩网络的iad防护产品,或者其他能够实现网络安全防护的设备、网关。

在一些实施例中,当系统处于正常通信状态时,继电器500的动铁端与触点2吸合,服务器产生的数据包通过lan1a发出,经继电器500传输至lan1b到达中转设备,中转设备对数据包进行数据分析(例如,病毒检测、白名单匹配等),在确定所述数据包不具备攻击数据时,通过lan2传输数据包给计算机。

在另一些实施例中,当系统处于非正常通信状态下,例如,中转设备出现故障(可以包括硬件故障和软件故障)或者断电状态时,为了保障数据包能够顺利发送至计算机,可以通过旁路功能(bypass)或者开启旁路通信状态传输数据包,即继电器500的动铁端与触点1吸合,服务器产生的数据包通过lan1a发出,经继电器500传输至lan2,经过lan2传输数据包给计算机。

需要说明的是,图9所示的应用场景图仅为示例性的,在实际应用中,各个节点之间还可以通信连接其他网络设备,例如,交换机、路由器等等。

图1是根据本发明实施例一的通信处理方法的流程图。如图1所示,所述方法包括以下步骤:

在步骤s100中,对数据包通信的异常次数进行计数。

在步骤s200中,当异常次数达到预定次数时,开启旁路通信状态。

步骤s100和步骤s200可以通过如图9所示的中转设备中的中央处理器运行存储的算法或者软件程序实现。

当异常次数据达到预定次数后才开启旁路通信状态,而不是只要有异常就开启旁路通信状态,从而能够对旁路通信状态的控制进行缓冲处理,防止当数据包通信过程中,偶发的瞬时异常触发旁路通信状态,从而提高数据包通信过程的容错性。

图2是根据本发明实施例二的通信处理方法的流程图。如图2所示,所述方法可以包括步骤s100、步骤s200和步骤s300。为了简洁,在本实施例中不在对步骤s100和步骤s200进行详述。

在步骤s300中,当开启旁路通信状态的时间达到预定延迟时间时,关闭旁路通信状态。步骤s300可以通过如图9所示的中转设备中的中央处理器运行存储的算法或者软件程序实现。

通过步骤s300可以使通信状态由旁路通信状态恢复到的正常通信状态,例如,可以使来自服务器的数据包及时被中转设备(或者网络安全装置)的业务程序处理,以最大可能地减少整体通信系统被恶意数据包等非法数据攻击。

在一些实施例中,当由旁路通信状态恢复到的正常通信状态时,网络安全装置的业务程序或网络安全装置本身(硬件)的异常状态有可能还没有完全解除,因此会再次触发旁路通信状态,而导致频繁地切换系统的通信状态。在本发明实施例中,可以通过在预定时间段内开启旁路通信次数以判断网络安全装置的业务程序或者网络安全装置本身是否处于业务稳定状态。示例性地,如果在预定时间段内,旁路通信状态被频繁地开启和关闭,则说明此时网络安全装置的状态还不稳定。

为了防止由于网络安全装置的状态不稳定而频繁地开启和关闭旁路通信状态,本发明实施例可以根据预定时间段内开启旁路通信状态的次数来调整预定延迟时间。优选地,可以当在预定时间段内开启旁路通信状态的次数超过第一阈值时,使预定延迟时间在当前的预定延迟时间的基础上加倍延长。而当在预定时间段内开启旁路通信状态的次数低于第一阈值,或者当预定延迟时间经过多次调整后超过第二预定阈值时,可以使预定延迟时间恢复到初始设定的值。如此对预定延迟时间进行反复调整,不仅能避免在网络安全装置状态不稳定时过于频繁地开启旁路通信状态,又能够在网络安全装置恢复正常时,及时恢复到正常通信状态。

下面通过详细示例对上述实施例进一步说明。假设预定时间段的时长为10min,初始设置的预定延迟时间为5s,可以设置第一阈值为5次,设置第二预定阈值为100s,当在10min内发生异常的次数为6次时,使预定延迟时间延长为10s,当在下一个10min之内的异常次数仍然超过5次,例如为6次时,使预定延迟时间再次延长为20s。如果在连续多个10min单位的预定时间段内,异常次数都超过5次,预定延迟时间可能会超过100s,此时可以使预定延迟时间恢复到初始设置的5s。或者,当在某一个10min单位的预定时间段内异常次数低于5次,例如为3次时,也可以使预定延迟时间恢复到初始设置的5s。

图3是根据本发明实施例三的通信处理方法的流程图。如图3所示,所述方法还可以包括步骤s010,

在步骤s010中,监测数据包通信的丢包数据。

在步骤s111中,根据丢包数据判断数据包通信是否异常。

在步骤s112中,若确定数据包通信异常,则记录数据包通信的异常次数。

其中,在实施例三中,步骤s010还可以包括以下步骤:监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的丢包数据。例如,监测lan1a、lan1b和lan2的丢包数据,以及监测中转设备的业务程序的丢包数据。

对丢包数据的监测例如可以通过中转设备的收发网口的物理寄存器实现,例如入侵防御设备的收发网口的物理寄存器的输入口丢包寄存器(fi寄存器)和输出口丢包寄存器(fo寄存器)来实现。

示例性地,在步骤010中监测到有丢包数据时,在步骤s111可以包括:当监测到物理网口和业务程序中的任一个有丢包数据时,则确定为数据包通信异常。

进而在步骤s112中,在每次监测到异常时,可以使相应的异常次数在当前次数的基础上加一。通过步骤s112累加数据包通信的异常次数,并可以将异常次数与预定次数进行比较,当异常次数达到预定次数时,执行步骤s200。

步骤s200,当异常次数达到预定次数时,开启旁路通信状态。

图4是根据本发明实施例四的通信处理方法的流程图。如图4所示,所述方法还可以包括以下步骤:

在步骤s021中,监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量,以统计经物理网口的数据包数量和统计经业务程序的数据包数量,其中,物理网口包括发包网口和收包网口。其中,收包网口例如包括lan1b,发包网口例如包括lan2。

在步骤s022中,基于发包网口和收包网口的数据包数量计算得到第一差值。

在步骤s023中,计算第一差值与业务程序的数据包数量的差,以得到第二差值。

在步骤s121中,当第二差值大于预设阈值时,确定数据包通信异常;

在步骤s122中,记录数据包通信的异常次数。

在步骤s200中,当异常次数达到预定次数时,开启旁路通信状态。

其中,在实施例四中,步骤s021还可以优选地包括以下步骤:按照预设检测周期监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量,其中,预设检测周期根据用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量状况进行调整。

由于在实际的数据包通信过程中,在理论上物理网口的收包网口和发包网口之间的第一差值应当与业务程序所处理的数据包的流量相同,但是业务程序对数据包进行业务处理时会有一定的延迟,因此物理网口对数据包收发的流量与业务程序也存在差异,当这一差异很小时,可以认为此时业务程序处理正常工作状态,但当这一差异过大时,则可判定此时业务程序存在异常,例如可能当前的数据包流量超出了业务程序的处理能力。因此可以基于在检测周期内,业务程序处理的数据包的流量与第一差值之间的第二差值,和预设预阈值来判断业务程序是否发生异常。其中,预设阈值可以依据业务程序的处理能力来设置。

检测周期可以根据当前数据包的流量调整,检测周期例如可以设置为200ms,数据包的流量可以物理网口的发包网口和收包网口之间的数据包的流量,也可以是业务程序的数据包的流量。例如,如果当前的数据包通信比较频繁,即短时间内的数据包流量较大,可以缩短检测周期,反之,如果当前的数据包通信较少,即短时间内的数据包流量较小,则可以缩短检测周期。

图5是根据本发明实施例五的通信处理装置的结构图。如图5所示,通信处理装置包括:异常次数计数模块100,被配置为对数据包通信的异常次数进行计数;以及旁路通信控制模块200,被配置为当异常次数达到预定次数时,开启旁路通信状态。

图6是根据本发明实施例六的通信处理装置的结构图。如图6所示,所述装置还可以包括:通信状态恢复控制模块300,被配置为当开启旁路通信状态的时间达到预定延迟时间时,关闭旁路通信状态。

参考图6,通信处理装置还可以优选地包括预定延迟时间调整模块400,被配置为根据预定时间段内开启旁路通信状态的次数进行调整预定延迟时间。

图7是根据本发明实施例七的通信处理装置的结构图。如图7所示,所述装置还可以优选地包括:丢包监测模块010,被配置为监测数据包通信的丢包数据。

此时,参考图7,异常次数计数模块100可以包括:第一异常检测子模块210,被配置为根据丢包数据判断数据包通信是否异常,若确定数据包通信异常,则第一异常检测子模块210记录数据包通信的异常次数。

其中,在实施例七中,丢包监测模块210可以优选地包括丢包数据监测子模块,被配置为监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的丢包数据。此时,第一异常检测子模块210当用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序中任一个出现丢包时,则确定数据包通信异常。

图8是根据本发明实施例八的通信处理装置的结构图。如图8所示,通信处理装置还可以优选地包括:流量监测模块021,被配置为监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量,以统计经物理网口的数据包数量和统计经业务程序的数据包数量,其中,物理网口包括发包网口和收包网口;第一计算模块022,被配置为基于发包网口和收包网口的数据包数量计算得到第一差值;以及第二计算模块023计算第一差值与业务程序的数据包数量的差,以得到第二差值。

此时,参考图8,在实施例八中所常次数计数模块100可以优选地包括:第二异常判断子模块220,被配置为当第二差值大于预设阈值时,确定数据包通信异常;当第二异常判断子模块220确定数据包通信异常时,记录数据包通信的异常次数。

在实施例八中,流量监测模块021优选地按照预设检测周期监测用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量;其中,预设检测周期根据用于传输数据包的物理网口和用于对数据包进行业务处理的业务程序的流量状况进行调整。

以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。

此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1