一种流量识别方法、装置、电子设备及存储介质与流程

文档序号:21317756发布日期:2020-06-30 20:47阅读:177来源:国知局
本发明主要涉及网络安全管理
技术领域
:,尤其涉及一种流量识别方法、装置、电子设备及存储介质。
背景技术
::伴随运营商网络架构的不断发展,运营商采用软件定义网络(networkdefinedsoftware,sdn)技术进行基础网络架构改造与部署后,不仅可以根据sdn控制器流量监控进行网络性能改善,还可以根据sdn流表中的各项信息对路由拥塞、时延问题以及吞吐量问题进行优化。因此,针对运营商sdn架构中的网络流量进行识别与分析具有重大意义。目前,基于运营商sdn网络架构的流量识别方法大多还停留在mac地址、ip地址、端口号、协议类型等字段的独立分析上,并没有对数据包中的字段进行上下文关联分析,对于经过了特定端口转换的私有协议以及特定时间窗口内的触发型协议不具备有效的识别能力。而且大多是采用逐包检测方法,即仅对包头中的指定端口与指定协议进行检测,而运营商网络流量中的业务流量大多都是经过端口变换的,无法根据端口识别特定业务流量及其后续业务流量触发行为。此外,sdn控制器下发的控制流量具有明显的分类分布特点,现有技术对控制流量的识别仍采用首包检测的方法,传统首包检测方法针对诸如设备心跳、集群同步等大小包混合流量识别精度不够,无法针对特定攻击手段的流量类型进行识别。技术实现要素:本发明实施例提供了一种流量识别方法、装置、电子设备及存储介质,用以解决现有技术中流量类型识别不准确的问题。本发明实施例提供了一种流量识别方法,所述方法包括:获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值;将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配;将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。进一步地,如果所述设定时间长度内传输的数据包为业务流量,所述预设的每个目标特征包括:发送数据包长度的最小值、发送数据包长度的最大值、发送数据包端口、数据包总量带宽占比、接收数据包长度的最小值、接收数据包长度的最大值、接收数据包的固定端口和接收/发送数据包所占的时间长度。进一步地,在确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值之前,所述方法还包括:判断所述设定时间长度内的数据包是否为小包业务;如果否,则进行后续步骤。进一步地,如果所述设定时间长度内传输的数据包为控制流量,所述预设的每个目标特征包括:sdn控制器向openflow交换机发送的数据包包数的最大值、sdn控制器向openflow交换机发送的数据包包数的最小值、sdn控制器向openflow交换机发送的数据包的端口的典型样本集中段及典型样本集中段占比、openflow交换机向sdn控制器发送数据包的分组数最大值、openflow交换机向sdn控制器发送的数据包的分组数最小值、openflow交换机向sdn控制器发送数据包的端口的典型样本集中段及典型样本集中段占比。进一步地,在将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型之后,所述方法还包括:判断所述目标流量类型是否为异常流量类型,如果是,向sdn控制器发送流量异常的提示信息。本发明实施例还提供了一种流量识别装置,所述装置包括:获取模块,用于获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值;匹配模块,用于将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配;确定模块,用于将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。本发明实施例还提供了一种电子设备,所述电子设备包括存储器和处理器;所述处理器,用于读取所述存储器中的程序,执行下列过程:获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值;将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配;将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。进一步地,所述处理器用于判断所述设定时间长度内的数据包是否为小包业务;如果否,则确定所述设定时间长度内的数据包对应的每个预设目标特征的目标特征值。本发明实施例还提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行上述任一项所述方法的步骤。本发明实施例还提供了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行上述任一项所述方法的步骤。本发明实施例提供了一种流量识别方法、装置、电子设备及存储介质,所述方法包括:获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值;将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配;将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。在本发明实施例中,针对设定时间长度内传输的数据包进行识别,并且预先针对每种流量类型都预设了目标特征及对应的目标特征阈值,因此通过匹配该设定时间长度内的数据包的每个预设目标特征的目标特征值及目标特征阈值,从而可以确定该设定时间长度内传输的数据包的目标流量类型,进而可以达到准确识别数据包的流量类型的目的。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种流量识别方法的过程示意图;图2为本发明实施例提供的sdn架构的结构示意图;图3为本发明实施例提供的业务流量识别方法的架构示意图;图4为本发明实施例提供的一种业务流量识别方法的过程示意图;图5为本发明实施例提供的控制流量识别方法的架构示意图;图6为本发明实施例提供的一种控制流量识别方法的过程示意图;图7为本发明实施例提供的一种流量识别装置的结构示意图;图8为本发明实施例6提供的一种电子设备;图9为本发明实施例7提供的一种电子设备。具体实施方式下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。实施例1:图1为本发明实施例提供的一种流量识别方法的过程示意图,该过程包括以下步骤:s101:获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内的数据包对应的每个预设目标特征的目标特征值。运营商采用sdn技术进行基础网络架构改造与部署后,针对sdn架构中的网络流量进行识别与分析具有重大意义,在本发明实施例中,预先设置了对流量类型进行检测的目标特征,其中该目标特征是能够识别出流量类型的特征,例如可以是发送/接收数据包长度的最大值、发送/接收数据包长度的最小值等。并预先针对每种流量类型进行目标特征提取,从而确定了每种流量类型的每种目标特征预设对应的目标特征阈值,比如针对流量类型1,目标特征包括发送数据包长度的最大值和最小值,比如发送数据包的最大值对应的阈值为512kb、发送数据包的最小值对应的阈值为128kb。具体的,首先预设一定的时间长度,该时间长度可以根据需要进行设定,比如可以为5分钟、10分钟等,在该设定时间长度内,获取openflow交换机和sdn控制器之间传输的数据包,并且为了更加准确的识别流量类型,该设定时间长度的数据包可以按照时间的先后顺序排列,比如数据包1为8:01分传输的、数据包2为8:02分传输的等。在获取了设定时间长度内传输的数据包之后,针对该设定时间长度内传输的数据包,根据预设的目标特征,确定该设定时间长度内传输的数据包对应预设目标特征的目标特征值。s102:将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配。在获取了设定时间长度内传输的数据包的目标特征值之后,为了确定该设定时间长度内传输的数据包的流量类型,将得到的每个目标特征值与每种流量类型对应的目标特征阈值进行匹配。具体的,如果针对设定时间长度内传输的数据包提取了发送数据包长度的最大值、发送数据包长度的最小值对应的目标特征值,分别为512kb和128kb,则将该两个目标特征值与每种流量类型的发送数据包长度的最大值、发送数据包长度的最小值对应的目标特征阈值分别进行匹配,根据匹配结果确定该设定时间长度内传输的数据包的流量类型。s103:将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。将获取的设定时间长度内传输的数据包的每个目标特征值与每种流量类型对应的目标特征阈值进行匹配之后,将匹配成功的流量类型确定为该设定时间长度内的数据包的传输流量类型。为了节省流量类型识别的时间,可以按照先后顺序,比如从流量类型1开始匹配,在遇到匹配成功的流量类型后将不再继续后续匹配操作,如果匹配成功对应的流量类型为流量类型5,则该设定时间长度内传输的数据包的目标流量类型则为流量类型5。在本发明实施例中,针对设定时间长度内传输的数据包进行识别,并且预先针对每种流量类型都预设了目标特征及对应的目标特征阈值,因此通过匹配该设定时间长度内的数据包的每个预设目标特征的目标特征值及目标特征阈值,从而可以确定该设定时间长度内传输的数据包的目标流量类型,进而可以达到准确识别数据包的流量类型的目的。实施例2:为了能更加准确地识别流量类型,在上述实施例的基础上,在本发明实施例中,如果所述设定时间长度内传输的数据包为业务流量,在确定所述设定时间长度内传输的数据包对应每个预设目标特征的目标特征值之前,所述方法还包括:判断所述设定时间长度内传输的数据包是否为小包业务;如果否,则进行后续步骤。当前运营商的sdn体系架构为将网络的控制平面和数据平面分离,并提供可编程的api接口将控制平面和数据平面连接。网络的控制功能主要集中在中间层控制器的控制器软件上,对下层转发层,即基础设施层,控制器负责对硬件进行管理并维护一张网络全局视图,控制数据的转发。在该sdn体系架构中,采用了openflow协议的解决方式,如图2所示,该sdn体系架构包括openflow控制器,即图2中的nox,另外该sdn体系架构还包括openflow交换机,其中openflow控制器则为sdn体系架构中的控制平面,openflow交换机则为sdn体系架构中的数据平面,通过标准化openflow协议进行通信。openflow交换机包括:openflow流表(flowtable)、安全通道(securechannel)和openflow协议,而openflow流表的每个流表项都由3部分组成包括:用于数据包匹配的包头域(headerfields),用于统计匹配数据包个数的计数器(counters),用于展示匹配的数据包如何处理的动作(actions),包头域(headerfields)的各部分字段表示具体可见图2。因此在该sdn体系架构中主要将流量分为两大类型,分别为数据平面的业务流量和控制平面的控制流量。为了识别sdn体系架构中数据平面的业务流量的流量类型,现有技术中多采用首包检测的方式,由于首包检测仅能检测出已知的小包业务类型,因此在本发明实施例中,为了更加精确的识别流量类型,也为了节省流量类型的识别时间,在获取了设定时间长度内传输的数据包之后,首先进行首包检测,判断该设定时间长度内传输的数据包是否为小包业务,如果是,则采用现有技术中对小包业务的流量类型的识别方式进行识别,如表1所示,为传统已知小包业务的识别策略,该表中描述了小包业务中每种流量类型及该流量类型对应的目的端口,例如,如果该设定时间长度内传输的数据包的目的端口为53,则该设定时间长度内传输的数据包的目标流量类型为dns流量。目的端口已知小包业务类型53dns17udp……表1而如果该设定时间长度内传输的数据包不是小包业务,为了根据精确的识别该设定时间长度内获取的数据包的流量类型,则需要获取该设定时间长度内传输的数据包的预设的目标特征值,采用上述实施例1中的方式进行流量识别。本发明实施例中,针对sdn体系架构中的业务流量,通过采用现有技术中的首包检测的方式,先判断获取的设定时间长度内传输的数据包是否为小包业务,如果不是,则获取该设定时间长度内传输的数据包对应的目标特征值,从而可以采用与预设目标特征阈值匹配的方式,以达到准确识别流量类别的目的。实施例3:为了更加准确地识别业务流量的流量类型,在上述各实施例的基础上,在本发明实施例中,如果所述设定时间长度内传输的数据包为业务流量,所述预设的每个目标特征包括:发送数据包长度的最小值、发送数据包长度的最大值、发送数据包端口、数据包总量带宽占比、接收数据包长度的最小值、接收数据包长度的最大值、接收数据包的固定端口和接收/发送数据包所占的时间长度。由于sdn体系架构中的流量主要分为控制流量和业务流量,因此在本发明实施例中,针对控制流量和业务流量预设了不同的目标特征。如表2所示,如果当前需要识别的流量为业务流量,则该预设的目标特征包括:发送数据包长度的最小值、发送数据包长度的最大值、发送数据包端口、数据包总量带宽占比、接收数据包长度的最小值、接收数据包长度的最大值、接收数据包的固定端口和接收/发送数据包所占的时间长度。为了更加准确的识别业务流量的流量类型,该接收/发送数据包所占的时间长度中包含了每个数据包发送/接收对应的具体时间,并按照时间的先后顺序排列。并针对每种流量类型的目标特征,预设了对应的目标特征阈值。如表2所示,分别针对经过端口转换小包业务、视频业务的大包业务、私有协议a调度流的大包业务、私有协议a传输i/o流的大包业务四种流量类型,预设了对应的目标特征阈值,即表2中的特征字段-1所在行的各个值、特征字段-2所在行的各个值,及之后的每种流量类型的业务流量对应的各个特征字段等。表2在上述实施例2中,如果通过对获取的设定时间长度内传输的数据包进行首包检测,发现该设定时间长度内传输的数据包并不是小包业务,此时,为了准确识别流量类型,则可以根据获取的预设目标特征的目标特征值来识别。具体的,可根据预设的每个目标特征,获取该设定时间长度内传输的数据包的每个目标特征值,分别将该每个目标特值与每种流量类型的目标特征阈值进行匹配,比如可以从表2的经过端口转换的小包业务开始,将获取的设定时间长度内传输的数据包的目标特征值与该经过端口转换的小包业务对应的目标特征阈值进行匹配,如果匹配不成功,则与下一个视频业务的大包业务对应的目标特征阈值进行匹配,直到匹配成功,将匹配成功的流量类型确定为该设定时间长度内传输的数据包的目标流量类型。由于每种流量类型对应的目标特征值是不同的,所以在针对业务流量的目标特征进行目标特征阈值设定时,根据每种流量类型特有的目标特征值确定目标特征阈值。比如流量类型为经过端口转换的小包业务的各个目标特征阈值分别是:发送数据包长度最小值为38kb、发送数据包长度最大值为50kb、数据包总量带宽占比为5%、接收数据包长度最小值为16kb、接收数据包长度最大值为64kb、发送数据包端口为固定的、接收数据包端口为随机的,而为了更加准确识别该设定时间长度内传输的数据包的流量类型,针对每种类型的设定时间长度内传输的数据包,每个数据包都采集了对应的源ip地址、源端口、目的ip地址、目的端口的四元组信息,比如8:01传输的数据包1的四元组信息、8:02传输的数据包2的四元组信息等,针对设定时间长度内获取的每个数据包,按照时间顺序对数据包进行排序,因为获取到的数据包都是固定的发送端到固定的接收端的,因此四元组信息中源ip地址和目的ip地址是确定的,而发送端在进行数据包发送的时候利用了哪几个端口,并且每个端口对应的发送给接收端的哪个端口基本上是固定的,因此可以按照时间顺序查找这种对应关系,将查找到的一组重复出现的端口对应关系,及其对应的源ip地址和目的ip地址构成的四元组作为该设定时间长度内传输的数据包对应的时间序列。当获取了设定时间长度内传输的数据包对应的目标特征值时,将该每个目标特征值与每种流量类型的目标特征阈值匹配。针对某一流量类型,如果该设定时间长度内发送的数据包长度在该流量类型对应的发送数据包长度最小值和发送数据包长度最大值之间、接收的数据包长度在接收数据包长度最小值和接收数据包长度最大值之间、并且发送数据包端口、接收数据包端口和数据包总量带宽占比均为对应的目标特征阈值,并且针对该设定时间长度内传输的数据包按照时间顺序进行排序,构成包含每个数据包的四元组信息的时间序列,如果该每个数据包的四元组信息的时间序列与目标特征阈值对应四元组信息的时间序列一致,则认为该每个目标特征值与目标特征阈值匹配成功,因此该设定时间长度内发送的数据包的流量类型为匹配成功的流量类型。比如可以将该设定时间长度内传输的数据包的目标特征值与经过端口转换的小包业务的目标特征阈值进行匹配,具体的,如果该设定时间长度内传输的数据包的发送数据包长度最小值不小于经过端口转换的小包业务的目标特征阈值38kb、发送数据包长度最大值不大于50kb、接收数据包长度最小值不小于16kb、接收数据包长度最大值不大于64kb、发送数据包端口也是固定的、接收数据包端口也是随机的、数据包总量带宽占比为5%、并且该设定时间长度内传输的数据包对应的时间序列,也与经过端口转换的小包业务的数据包的对应的时间序列一致,比如该经过端口转换的小包业务对应的时间序列中源ip地址和目的ip地址的对应关系及重复排列顺序为a-b、c-d、b-c、a-b、c-d、b-c等,而该设定时间长度内传输的数据包对应的时间序列也为a-b、c-d、b-c、a-b、c-d、b-c等,则该获取的设定时间长度内传输的数据包的流量类型则为经过端口转换的小包业务。而如果出现匹配结果不一致时,则将该设定时间长度内传输的数据包的目标特征值按照相同的方式与下一个流量类型的目标特征阈值进行匹配,直到匹配成功。如图3所示,在进行业务流量识别时,以源ip地址、源端口、目的ip地址、目的端口的四元组信息加上时间序列,即设定时间长度形式获取一定数量的数据包。通过首包检测的方式,判断获取的数据包是否为小包业务,如果是,则根据传统的端口-协议对应关系,确认已知应用的小包业务的流量类别,如ntp、dns小包流量等。如果不是,则根据预设的目标特征,对获取的设定时间长度内传输的数据包进行目标特征的提取,并确定对应的目标特征值,将每个目标特征值与每种流量类型对应的目标特征阈值进行匹配,将匹配成功的流量类型确定为该设定时间长度内传输的数据包的目标流量类型,以提高业务流量类型识别的准确度。下面以一个具体的实施例对业务流量的流量类型的识别方法进行详细说明,如图4所示,包括以下步骤:步骤1:获取设定时间长度内传输的数据包,如果该设定时间传输的数据包为业务流量,则进行首包检测,判断该设定时间长度内传输的数据包是否为小包业务;如果是小包业务,则采用现有技术中的小包业务的流量识别方式进行识别。步骤2:如果否,则将该设定时间长度内传输的数据包确定为混合业务;根据混合业务匹配表,即上述表2中的预设的目标特征,获取该设定时间长度内传输的数据包的目标特征值,并将每个目标特征值与该混合业务匹配表中的每个流量类型的目标特征阈值进行匹配。步骤3:根据匹配结果,确定该设定时间长度内的数据包的流量类型。如果该设定时间长度内传输的数据包的流量类型为经过端口转换的小包业务,则采用现有技术中的小包业务的流量识别方式,对该经过端口转换的小包业务的流量类型进行具体识别,并执行小包业务流量的实施动作,比如丢弃、转发等。如果该设定时间长度内传输的数据包的流量类型为大包业务中的某一流量类型,比如视频业务的大包业务,则执行大包业务流量的实施动作,也可以是丢弃、转发等。以上各步骤的具体过程在上述实施例中均有详细描述,在本发明实施例中不再赘述。本发明实施例中,通过对业务流量预设数个目标特征,并针对每种流量类别预设不同的目标特征阈值,以达到准确识别业务流量类别的目的。实施例4:为了更加准确地识别控制流量的流量类型,在上述各实施例的基础上,在本发明实施例中,如果所述设定时间长度内传输的数据包为控制流量,所述预设的每个目标特征包括:sdn控制器向openflow交换机发送的数据包包数的最大值、sdn控制器向openflow交换机发送的数据包包数的最小值、sdn控制器向openflow交换机发送的数据包包数的典型样本集中段及典型样本集中段占比、sdn控制器向openflow交换机发送的数据包的分组数最大值、sdn控制器向openflow交换机发送的数据包的分组数最小值、sdn控制器向openflow交换机发送的数据包的分组数的典型样本集中段及典型样本集中段占比。为了对控制流量的流量类型进行精确的识别,在本发明实施例中,针对控制流量,预设了以下目标特征:sdn控制器(c端)向openflow交换机(u端)发送的数据包包数的最大值、sdn控制器向openflow交换机发送的数据包包数的最小值、sdn控制器向openflow交换机发送的数据包端口的典型样本集中段及典型样本集中段占比、openflow交换机向sdn控制器发送的数据包的分组数最大值、openflow交换机向sdn控制器发送的数据包的分组数最小值、openflow交换机向sdn控制器发送的数据包的端口的典型样本集中段及典型样本集中段占比。并针对每种流量类型的目标特征,预设了对应的目标特征阈值,如表3所示,分别针对路由通告的小包业务、接口会话保持的小包业务、带宽管理的大包业务、泛洪攻击四种流量类型,预设了对应的目标特征阈值,即表3中的特征字段-1所在行的各个值、特征字段-2所在行的各个值,及之后的每种流量类型的控制流量对应的各个特征字段等等。表3具体的,如果获取的设定时间长度内传输的数据包为控制流量,可根据针对控制流量预设的每个目标特征,获取该设定时间长度内传输的数据包的每个目标特征值,分别将该每个目标特值与每种流量类型的目标特征阈值进行匹配。比如可以从表3的路由通告的小包业务开始,将获取的设定时间长度内传输的数据包的目标特征值与该路由通告的小包业务对应的目标特征阈值进行匹配,如果匹配不成功,则与下一个接口会话保持的小包业务对应的目标特征阈值进行匹配,直到匹配成功,将匹配成功的流量类型确定为该设定时间长度内传输的数据包的目标流量类型。由于每种流量类型对应的目标特征值是不同的,所以在针对控制流量的目标特征进行目标特征阈值设定时,也是根据每种流量类型特有的目标特征值确定目标特征阈值。比如流量类型为路由通告的小包业务的每个目标特征阈值可以是:ctou包数最小值为40、ctou包数最大值为50、ctou数据包端口的典型样本集中段[2,5]及典型样本集中段占比67%、utoc分组数最小值为60、utoc分组数最大值为70、utoc数据包端口的典型样本集中段[33,67]及典型样本集中段占比87%。在本发明实施例中ctou数据包端口的典型样本集中段表示ctou发送数据包时采用的端口的集中部分,比如路由通告的小包业务的ctou数据包端口的典型样本集中段[2,5],即该流量类型的ctou发送数据包时多采用端口号为2、3、4、5的端口;而ctou数据包端口的典型样本集中段对应的典型样本集中段占比则表示采用该典型集中段对应的端口传输的数据包与传输的数据包总量的比值,同样utoc数据包端口的典型样本集中段及典型样本集中段占比代表相同的含义,在此不再赘述。当获取了设定时间长度内传输的数据包后,可以通过sdn控制器自身的openflow流表扫描功能,确定该设定时间长度内传输的数据包对应的目标特征值,将该每个目标特征值与每种流量类型的目标特征阈值匹配。针对某一流量类型,如果该设定时间长度内传输的数据包的ctou包数在该流量类型对应的ctou包数最小值和ctou包数最大值之间、utoc分组数在utoc分组数最小值和utoc分组数最大值之间、ctou数据包的端口位于ctou数据包典型样本集中段的阈值范围内、采用ctou数据包的典型样本集中段对应的端口传输的数据包的数量与传输的数据包的总量的比值与ctou数据包的典型样本集中段占比值一致、utoc数据包的端口位于utoc数据包典型样本集中段的阈值范围内、采用utoc数据包的典型样本集中段对应的端口传输的数据包的数量与传输的数据包的总量的比值和utoc数据包的典型样本集中段占比值一致,则认为该每个目标特征值与目标特征阈值匹配成功,该匹配成功的流量类型则为该设定时间长度内传输的数据包的流量类型。比如可以先将该设定时间长度内传输的数据包的目标特征值与路由通告的小包业务的目标特征阈值进行匹配,具体的,如果该设定时间长度内传输的数据包的ctou包数最小值不小于40、ctou包数最大值不大于50、ctou数据包典型样本集中段为[2,5]及典型样本集中段占比也为67%、utoc分组数最小值不小于60、utoc分组数最大值不大于70、utoc数据包典型样本集中段为[33,67]及典型样本集中段占比也为87%,则该获取的设定时间长度内传输的数据包的流量类型为路由通告的小包业务。而如果出现匹配结果不一致时,则将该设定时间长度内传输的数据包的目标特征值按照相同的方式与下一个流量类型的目标特征阈值进行匹配,直到匹配成功。为了保证控制流量的安全性,在确定了设定时间长度内传输的数据包的目标流量类型之后,对该目标流量类型是否为异常流量类型进行判断,如果是,比如该目标流量类型为泛洪攻击,此时在向sdn控制器发出警告,以阻止异常流量产生危害。下面结合图5,以一个具体的实施例对控制流量的识别方法进行详细说明,如图6所示,包括以下步骤:步骤1:获取设定时间长度内传输的数据包,如果该设定时间长度内传输的数据包为控制流量,根据控制流量对应的预设的目标特征,获取该设定时间长度内传输的数据包的目标特征值;具体的,获取设定时间长度内sdn控制器和openflow交换机之间传输的数据包,通过sdn控制器的流表扫描模块,根据控制流量对应的特征库,即上述表3中的预设的目标特征,获取该设定时间长度内传输的数据包的目标特征值。步骤2:将每个目标特征值与控制流量对应的每种流量类型的目标特征阈值进行匹配。步骤3:如果匹配成功,则将匹配成功的流量类型确定为设定时间长度内传输的数据包的目标流量类型。步骤4:判断该目标流量类型是否为异常控制流量类型,如果是,则提示sdn控制器出现流量异常的情况。以上各步骤的具体过程在上述实施例中均有详细描述,在本发明实施例中不再赘述。本发明实施例中,通过对控制流量预设数个目标特征,并针对每种流量类别预设不同的目标特征阈值,以达到准确识别控制流量类别的目的。实施例5:基于相同的技术构思,本发明实施例提供一种流量识别装置。本发明实施例提供的装置如图7所示,该装置包括:获取模块701,用于获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值;匹配模块702,用于将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配;确定模块703,用于将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。进一步地,所述装置还包括判断模块704,用于判断所述设定时间长度内的数据包是否为小包业务;如果否,则确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值。进一步地,所述装置还包括提示模块705,用于判断所述目标流量类型是否为异常流量类型,如果是,向sdn控制器发送流量异常的提示信息。实施例6:在上述各实施例的基础上,本发明实施例还提供了一种电子设备800,如图8所示,包括存储器801和处理器802;所述处理器802,用于读取所述存储器801中的程序,执行下列过程:获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值;将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配;将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。在图8中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器802代表的一个或多个处理器和存储器801代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。可选的,处理器802可以是cpu(中央处埋器)、asic(applicationspecificintegratedcircuit,专用集成电路)、fpga(field-programmablegatearray,现场可编程门阵列)或cpld(complexprogrammablelogicdevice,复杂可编程逻辑器件)。所述处理器用于判断所述设定时间长度内的数据包是否为小包业务;如果否,则确定所述设定时间长度内的数据包对应的每个预设目标特征的目标特征值。所述处理器用于判断所述目标流量类型是否为异常流量类型,如果是,向sdn控制器发送流量异常的提示信息。实施例7:在上述各实施例的基础上,本发明实施例还提供了一种电子设备900,如图9所示,包括:处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信;所述存储器903中存储有计算机程序,当所述程序被所述处理器901执行时,使得所述处理器901执行如下步骤:获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值;将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配;将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。进一步地,所述处理器用于判断所述设定时间长度内的数据包是否为小包业务;如果否,则确定所述设定时间长度内的数据包对应的每个预设目标特征的目标特征值。进一步地,所述处理器用于判断所述目标流量类型是否为异常流量类型,如果是,向sdn控制器发送流量异常的提示信息。上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口902用于上述电子设备与其他设备之间的通信。存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。上述处理器可以是通用处理器,包括中央处理器、网络处理器(networkprocessor,np)等;还可以是数字指令处理器(digitalsignalprocessing,dsp)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。实施例8:在上述各实施例的基础上,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行时实现如下步骤:所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行如下步骤:获取设定时间长度内openflow交换机和sdn控制器之间传输的数据包,根据预设的每个目标特征,确定所述设定时间长度内传输的数据包对应的每个预设目标特征的目标特征值;将所述每个目标特征值与每种流量类型对应的目标特征阈值进行匹配;将匹配成功的流量类型确定为所述设定时间长度内传输的数据包的目标流量类型。进一步地,所述处理器用于判断所述设定时间长度内的数据包是否为小包业务;如果否,则确定所述设定时间长度内的数据包对应的每个预设目标特征的目标特征值。进一步地,所述处理器用于判断所述目标流量类型是否为异常流量类型,如果是,向sdn控制器发送流量异常的提示信息。上述计算机可读存储介质可以是电子设备中的处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器如软盘、硬盘、磁带、磁光盘(mo)等、光学存储器如cd、dvd、bd、hvd等、以及半导体存储器如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd)等。对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者一个操作与另一个实体或者另一个操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全应用实施例、或结合应用和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1