一种网络流量的探测方法和探测装置的制作方法

文档序号:7851765阅读:219来源:国知局
专利名称:一种网络流量的探测方法和探测装置的制作方法
技术领域
本申请涉及网络技术领域,特别涉及一种网络流量的探测装置和探测方法。
背景技术
随着网络技术的飞速发展,网络的规模越来越大,构建在互联网上的应用越来越多,导致整个社会对互联网的依赖也越来越强。与此同时,网络规模的迅速膨胀、新应用的不断涌现,导致网络的可管理性和可控性越来越差,因此,高效可信的网络管理也显得越来越重要。网络流量能够反映出当前网络的运行状态,是网络管理和维护的重要依据。Netflow是Cisco公司最早提出的网络数据包交换技术,可用来记录并分析网络流量信息,为网络管理提供数据支撑。基于Netflow的流量采集方法可以获得包括源地址IP、目的地址IP、源端口、目的端口和协议字段的五元组信息等详细信息,根据这些信息就可以对协议(应用)、主机IP (用户)以及AS域等进行统计排行和趋势分析,也可对异常流量进行监测。现有的网络产品一般是通过使用CPU协助完成和实现Netflow流量采集功能,并将采集到的网络上的数据包的五元组信息整理得到的FST存储于专用的存储器中,为后续的流量收集器(collector)进行网络流量的属性分析提供依据。但是,由于采集流量信息所带来的系统开销会耗费大量的CPU资源,导致系统处理性能急剧下降。

发明内容
有鉴于此,本申请提供一种网络流量的探测方法和探测装置,不必通过CPU的协助就能够对网络流量进行采集,保证系统的处理性能不受影响。一种网络流量的探测方法,包括获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT(Flow Cell Table,流单元表),并对所述FCT进行抽样;依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST (Flow Statistic Table,流统计表)进行更新。上述的方法,优选的,所述对所述FCT进行抽样包括获取网络流量探测位置的实时流量以及存储器接口的实时流量;对所述网络流量探测位置的实时流量和所述存储器接口的实时流量的适配度进行比较,得到对FCT进行抽样的抽样比;依据所述抽样比对所述FCT进行抽样。上述的方法,优选的,依据预设的分析规则对抽样得到的FCT表进行分析处理,对存储的FST进行更新包括依次将FCT中的五元组信息经过哈希计算得到所述FCT在存储器中对应的表项地址,将所述FCT依次与所述表项地址中的FST进行五元组信息匹配;当所述FCT的五元组信息不能与所述表项 地址中的FST匹配时,在所述表项地址中为所述FCT创建新的FST ;当所述FCT的五元组信息能与所述表项地址中的任一 FST匹配时,依据所述FCT的信息对所述FST进行更新。上述的方法,优选的,所述在所述表项地址中为所述FCT创建新的FST包括判断所述表项地址中存储FST的空间是否已满,如果已满,任意删除一条FST,并在删除的FST所在的位置为所述FCT创建新的FST,如果不满,在所述表项地址中的空余位置为所述FCT创建新的FST。上述的方法,优选的,所述当所述FCT的五元组信息能与所述表项地址中的任一FST匹配时,依据所述FCT的信息对所述FST进行更新包括依据FCT的时间判断与所述FCT匹配的FST是否超时老化,如果所述FST已超时,删除已超时的所述FST,并在所述FST的位置为所述FCT创建新的FST ;如果所述FST未超时,依据所述FCT的信息对所述FST中的信息进行更新。上述的方法,优选的,还包括当到达预设的检测时间时,轮询检测存储器中存储的FST是否超时,如果任一 FST超时,删除所述超时的FST。上述的方法,优选的,还包括依据预设格式对删除的FST进行打包并发送。一种网络流量的探测装置,包括抽样器,用于获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT,并对所述FCT进行抽样;处理器,用于依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST进行更新。上述的装置,优选的,所述抽样器包括网络流量获取模块,用于获取网络流量探测位置的实时流量;存储器流量获取模块,用于获取存储器接口的实时流量;速率计算模块,用于对所述网络流量探测位置的实时流量和所述存储器接口的实时流量的适配度进行比较,得到对FCT进行抽样的抽样比;抽样模块,用于依据所述抽样比对所述FCT进行抽样。上述的装置,优选的,所述处理器包括匹配模块,用于依次将FCT中的五元组信息经过哈希计算得到所述FCT在存储器中对应的表项地址,将所述FCT依次与所述表项地址中的FST进行五元组信息匹配;创建模块,用于当所述FCT的五元组信息不能与所述表项地址中的FST匹配时,在所述表项地址中为所述FCT创建新的FST ;更新模块,用于当所述FCT的五元组信息能与所述表项地址中的任一FST匹配时,依据所述FCT的信息对所述FST进行更新。上述的装置,优选的,还包括轮询检测器,用于当到达预设的检测时间时,轮询检测存储的FST是否超时,如果任一 FST超时,删除所述超时的FST。本申请提供了一种网络流量的探测方法,包括获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT,并对所述FCT进行抽样;依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST进行更新。采用本申请的一种网络流量的探测方法和装置,对通过探测位置的网络流量进行探测,得到为后续的流量收集器进行网络流量的属性分析提供依据的FST,而且不必通过CPU的协助就能够对网络流量进行采集,保证系统的处理性能运行正常不受影响。


为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。 图I是本申请提供的一种网络流量的探测方法实施例I的流程图;图2是本申请提供的一种网络流量的探测方法实施例I的FCT图;图3是本申请提供的一种网络流量的探测方法实施例I的FST图;图4是本申请提供的一种网络流量的探测方法实施例I的一具体流程图;图5是本申请提供的一种网络流量的探测方法实施例I的另一具体流程图;图6是本申请提供的一种网络流量的探测方法实施例I的另一种流程图;图7是本申请提供的一种网络流量的探测方法实施例2的流程图;图8是本申请提供的一种网络流量的探测方法实施例3的流程图;图9是本申请提供的一种网络流量的探测装置实施例I的结构示意图;图10是本申请提供的一种网络流量的探测装置实施例I的一具体结构示意图;图11是本申请提供的一种网络流量的探测装置实施例I的另一种结构示意图;图12是本申请提供的一种网络流量的探测装置实施例2的结构示意图。
具体实施例方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。参见图1,示出了本申请提供的一种网络流量的探测方法实施例I的流程图,包括步骤SlOl :获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT,并对所述FCT进行抽样;网络上时刻传输大量的数据包信息,设定时间段内,在预定的探测位置对网络流量进行探测。探测时,需要获取该时间段内通过探测位置的全部数据包,依次对每个数据包的属性信息进行提取,并将该属性信息生成和数据包相对应的FCT,每个数据包对应一个FCT,该FCT包含了与之对应的数据包的全部属性信息。对得到的FCT进行抽样处理,对统计信息的数据约减,减小统计量。参见图2,FCT内容包括哈希地址、时间戳、源IP地址、目的IP地址、源端口号、目的端口号、协议字段、接口号、复用字段、ToS (Terms of Service,服务条款)、数据包字节个数。FCT的哈希地址是将五元组(源IP地址、目的IP地址、源端口号、目的端口号、协议字段)经过哈希计算得到的在存储器中对应的表项地址,时间戳为获取该FCT的时间。数据包字节个数表示该数据包的大小。步骤S102 :依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST进行更新。 参见图3,FST内容包括时间戳、源IP地址、目的IP地址、源端口号、目的端口号、协议字段、接口号、复用字段、ToS、数据包个数、数据包字节个数。FST的时间戳表示该FST的时间,即最近一个更新到该FST的FCT的时间;数据包个数表示更新至该FST的数据包的个数即FCT的个数;数据包字节个数表示更新至该FST的全部数据包的大小总和,即更新至该FST的全部FCT中数据包字节个数之和。依据预设的哈希计算规则,依次对抽样得到的FCT进行处理,将FCT中的五元组信息(源地址IP、目的地址IP、源端口、目的端口和协议字段)经过哈希计算得到与该FCT在存储器中对应的表项地址,将所述FCT依次与所述表项地址中的FST进行五元组信息匹配,依据匹配结果和FCT中的信息更新FST。所述FCT依次与所述表项地址中的FST进行匹配,当该FCT的源IP地址、目的IP地址、源端口号、目的端口号、协议字段分别与该表项地址中的任一 FST对应项完全对应,则该FST该FCT与匹配,否则,不匹配。参见图4所示的具体流程图,依据匹配结果和FCT中的信息更新FST具体包括步骤S201 :当所述FCT的五元组信息不能与所述表项地址中的FST匹配时,在所述表项地址中为所述FCT创建新的FST ;当在依据FCT的五元组信息计算得到存储器中对应的表项地址中存储的FST的五元组信息不能与该FCT的五元组信息相匹配,在该表项地址中为该FCT创建新的FST,具体包括判断所述表项地址中存储FST的空间是否已满,如果已满,任意删除一条FST,并在删除的FST所在的位置为所述FCT创建新的FST,如果不满,在所述表项地址中的空余位置为所述FCT创建新的FST。当该FCT对应的表项地址中存储FST的空间未满,在该表项地址中的空余位置为该FCT创建一条新的FST ;当该FCT对应的表项地址中存储FST的空间已满,没有空余位置为该FCT创建FST,此时,随机删除任意一条FST,并在该FST所在的位置为该FCT创建一条新的FST。步骤S202 :当所述FCT的五元组信息能与所述表项地址中的任一 FST匹配时,依据所述FCT的信息对所述FST进行更新。当在依据FCT的五元组信息计算得到存储器中对应的表项地址中存储的任一 FST的五元组信息能与该FCT的五元组信息相匹配,依据所述FCT的信息更新所述FST的内容。
参见图5所示的具体流程图,依据所述FCT的信息更新所述FST的内容,具体包括步骤S301 :依据FCT的时间判断与所述FCT匹配的FST是否超时老化,如果所述FST已超时,删 除已超时的所述FST,并在所述FST的位置为所述FCT创建新的FST ;对所述FCT中时间戳表示的FCT时间和与该FCT相匹配的FST的时间戳表示的FST时间进行比较,当二者的时间差值大于用户预设的阀值时,判定该FST超时老化,否则,该FST未超时老化。当与所述FCT相匹配的FST超时老化时,删除该已超时老化的FST,并在该FST所在的位置为所述FCT创建一条新的FST。步骤S302 :如果所述FST未超时,依据所述FCT的信息对所述FST中的信息进行更新。当与所述FCT相匹配的FST未超时老化时,依据所述FCT的信息对所述FST中的信息进行更新,具体包括依据所述FCT的时间戳更新与其相匹配的FST中的时间戳;与所述FCT相匹配的FST中的数据包个数加I ;将所述FCT的数据包字节个数累加入与所述FCT相匹配的FST中的数据包字节个数中。由上述可知,本申请实施例I提供的一种网络流量的探测方法,获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT,并对所述FCT进行抽样;依次将FCT中的五元组信息经过哈希计算得到所述FCT在存储器中对应的表项地址,将所述FCT依次与所述表项地址中的FST进行五元组信息匹配;当所述FCT的五元组信息不能与所述表项地址中的FST匹配时,在所述表项地址中为所述FCT创建新的FST,判断所述表项地址中存储FST的空间是否已满,如果已满,任意删除一条FST,并在删除的FST所在的位置为所述FCT创建新的FST,如果不满,在所述表项地址中的空余位置为所述FCT创建新的FST ;当所述FCT的五元组信息能与所述表项地址中的任一 FST匹配时,依据所述FCT的信息对所述FST进行更新,依据FCT的时间判断与所述FCT匹配的FST是否超时老化,如果所述FST已超时,删除已超时的所述FST,并在所述FST的位置为所述FCT创建新的FST ;如果所述FST未超时,依据所述FCT的信息对所述FST中的信息进行更新。采用本申请的一种网络流量的探测方法,对通过探测位置的网络流量进行探测,得到为后续的流量收集器进行网络流量的属性分析提供依据的FST。参见图6,示出了本申请实施例I的另一种流程图,基于上述实施例I,所述方法还包括步骤S103 当到达预设的检测时间时,轮询检测存储器中存储的FST是否超时,如果任一 FST超时,删除所述超时的FST。在对网络上传输的数据包进行获取并生成FCT,以及依据所述FCT更新FST的过程中,同时对存储器中存储的FST进行着轮询检测。当到达预设的检测时间时,依据存储器中表项地址的顺序,依次对每个表项地址中存储的每个FST进行检测。当任意一个FST的时间戳表示的时间与当前时间的差值大于预设的时间阀值时,则判定该FST超时老化,需要删除该条超时老化的FST,如果没有超时,继续对后续的FST进行检测。当对存储器中全部的表项地址中的全部的FST检测完毕后,停止检测,直至下一次到达预设的检测时间时,重新开始轮询检测。实际操作中,该预设的检测时间可依据实际情况进行设置。由上述方案,本发明实施例I提供的一种网络流量的探测方法,在对网络上传输的数据包进行获取并生成FCT,以及依据所述FCT更新FST的过程中,同时对存储器中存储的FST进行着轮询检测,删除存储器存储的超时老化的FST,清理存储器中的表项空间。参见图7,示出了本申请提供的一种网络流量的探测方法实施例2的流程图,本实施例是在实施例I所述步骤SlOl具体包括步骤S401 :获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所 述数据包的属性信息,生成与数据包相对应的FCT ;网络上时刻传输大量的数据包信息,设定时间段内,在预定的探测位置对网络流量进行探测。探测时,需要获取该时间段内通过探测位置的全部数据包,依次对每个数据包的属性信息进行提取,并将该属性信息生成和数据包相对应的FCT,每个数据包对应一个FCT,该FCT包含了与之对应的数据包的全部属性信息。对得到的FCT进行抽样处理,对统计信息的数据约减,减小统计量。参见图2,FCT内容包括哈希地址、时间戳、源IP地址、目的IP地址、源端口号、目的端口号、协议字段、接口号、复用字段、ToS (Terms of Service,服务条款)、数据包字节个数。FCT的哈希地址是将五元组(源IP地址、目的IP地址、源端口号、目的端口号、协议字段)经过哈希计算得到的在存储器中对应的表项地址,时间戳为获取该FCT的时间。数据包字节个数表示该数据包的大小。步骤S402 :获取网络流量探测位置的实时流量以及存储器接口的实时流量;为了对网络上的流量进行合理有效的抽样,依据存储器中的实时流量和探测位置处的网络实时流量对抽样FCT的速率进行调整。存储器接口处的实时流量包括依据FCT更新存储器中存储的FST占用的流量以及对FST进行轮询检测占用的流量。步骤S403 :对所述网络流量探测位置的实时流量和所述存储器接口的实时流量适配度进行比较,得到对FCT进行抽样的抽样比;存储器接口的最大吞吐速率为固定值,将该速率定义为存储器的阈值。 被测网络最大带宽可知,即链路类型输出接口的链路带宽可知。已测量得到存储器实时流量,网络流量探测位置的实时流量与依据FCT更新存储器中存储的FST占用的流量成比例,该比例为对数据包的FCT抽样的比例。抽样比具体的计算步骤包括假设所述被测网络的最大带宽为A,所述网络流量探测位置的实时流量为a,所述存储器接口的实时流量值为b,所述存储器接口的阈值为B。当前网络接口流量获得的归一化参量为存储器接口流量带宽归一值为当
AD+>1时,需要指示降低抽样比;当寻<1时,需要指示升高抽样比。
A BA B依据存储器接口流量阈值B与网络接口最大带宽A,对当前存储器接口剩余带宽(B-b)和当前网络接口空闲速率(A-a)之间的差值做离散归一化取整处理
|(5-·6) —(^^·)χ5|h
-_i-xioo = j-- 4导到离散化的调控参量c,ia &时,需要指示降
L」_〉_
_」AB
低抽样比;当| 时,需要指示升高抽样比。离散化的调控参量用于调整抽样比的步幅,以100为上限,以O为下限对当前的抽样比进行等比例的缩放调整。例如当前抽样比为1000,升降指示为升高,离散化的调控参量C为50,则将抽样比升到1500。步骤S404 :依据所述抽样比对所述FCT进行抽样。实时计算并动态调整更新抽样比,并依据分析计算得到的抽样比对FCT进行抽样。由上述可知,本申请提供的一种网络流量的探测方法实施例2,通过获取网络流量探测位置的实时流量以及存储器接口的实时流量;对所述网络流量探测位置的实时流量和所述存储器接口的实时流量的适配度进行比较,得到对FCT进行抽样的抽样比;依据所述抽样比对所述FCT进行抽样。实时计算并动态调整更新抽样比,依据分析计算得到的抽样比对FCT进行抽样,保证抽样的样本数足够且不会消耗过多的资源。参见图8,示出了本申请提供的一种网络流量的探测方法实施例3的流程图,本实施例是在实施例I所述步骤S103后还包括步骤S104 :依据预设格式对删除的FST进行打包并发送。本申请提供的一种网络流量的探测方法,是用于为后续的流量收集器进行网络流量属性分析提供依据,所以对获取的任何信息不能丢弃,因此,在对存储器中存储的FST删除后,需要依据预设的打包格式,对删除的FST进行打包,并将打包好的FST发送至后续的流量收集器中。实际实施中,预设的打包格式一般为NetFlow V9格式。与上述的本申请提供的一种网络流量的探测方法实施例相对应的,本申请还提供了一种网络流量的探测装置实施例。参见图9,示出了本申请提供的一种网络流量的探测装置实施例I的结构示意图,该装置包括抽样器101和处理器102。其中,所述抽样器101用于获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT,并对所述FCT进行抽样;网络上时刻传输大量的数据包信息,设定时间段内,在预定的探测位置对网络流量进行探测。探测时,需要抽样器101获取该时间段内通过探测位置的全部数据包,依次对每个数据包的属性信息进行提取,并将该属性信息生成和数据包相对应的FCT,每个数据包对应一个FCT,该FCT包含了与之对应的数据包的全部属性信息。对得到的FCT进行抽样处理,对统计信息的数据约减,减小统计量。参见图2,FCT内容包括哈希地址、时间戳、源IP地址、目的IP地址、源端口号、目的端口号、协议字段、接口号、复用字段、ToS (Terms of Service,服务条款)、数据包字节个数。FCT的哈希地址是将五元组(源IP地址、目的IP地址、源端口号、目的端口号、协议字段)经过哈希计算得到的在存储器中对应的表项地址,时间戳为获取该FCT的时间。数据包字节个数表示该数据包的大小。其中,所述处理器102用于依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST进行更新。参见图3,FST内容包括时间戳、源IP地址、目的IP地址、源端口号、目的端口号、协议字段、接口号、复用字段、ToS、数据包个数、数据包字节个数。 FST的时间戳表示该FST的时间,即最近一个更新到该FST的FCT的时间;数据包个数表示更新至该FST的数据包的个数即FCT的个数;数据包字节个数表示更新至该FST的全部数据包的大小总和,即更新至该FST的全部FCT中数据包字节个数之和。参见图10所示的具体结构示意图,所述处理器102包括匹配模块1021、创建模块1022和更新模块1023。其中,所述匹配模块1021用于依次将FCT中的五元组信息经过哈希计算得到所述FCT在存储器中对应的表项地址,将所述FCT依次与所述表项地址中的FST进行五元组信息匹配;匹配模块1021依据预设的哈希计算规则,依次对抽样得到的FCT进行处理,将FCT中的五元组信息(源地址IP、目的地址IP、源端口、目的端口和协议字段)经过哈希计算得到与该FCT在存储器中对应的表项地址,将所述FCT依次与所述表项地址中的FST进行五元组信息匹配,依据匹配结果和FCT中的信息更新FST。所述FCT依次与所述表项地址中的FST进行匹配,当该FCT的源IP地址、目的IP地址、源端口号、目的端口号、协议字段分别与该表项地址中的任一 FST对应项完全对应,则称该FST该FCT与匹配,否则,不匹配。其中,所述创建模块1022用于当所述FCT的五元组信息不能与所述表项地址中的FST匹配时,在所述表项地址中为所述FCT创建新的FST ;当在依据FCT的五元组信息计算得到存储器中对应的表项地址中存储的FST的五元组信息不能与该FCT的五元组信息相匹配,创建模块1022在该表项地址中为该FCT创建新的FST,具体包括判断所述表项地址中存储FST的空间是否已满,如果已满,任意删除一条FST,并在删除的FST所在的位置为所述FCT创建新的FST,如果不满,在所述表项地址中的空余位置为所述FCT创建新的FST。当该FCT对应的表项地址中存储FST的空间未满,在该表项地址中的空余位置为该FCT创建一条新的FST ;当该FCT对应的表项地址中存储FST的空间已满,没有空余位置为该FCT创建FST,此时,随机删除任意一条FST,并在该FST所在的位置为该FCT创建一条新的FST。其中,所述更新模块1023用于当所述FCT的五元组信息能与所述表项地址中的任一 FST匹配时,依据所述FCT的信息对所述FST进行更新。当在依据FCT的五元组信息计算得到存储器中对应的表项地址中存储的任一 FST的五元组信息能与该FCT的五元组信息相匹配,更新模块1023依据所述FCT的信息更新所述FST的内容。对所述FCT中时间戳表示的FCT时间和与该FCT相匹配的FST的时间戳表示的FST时间进行比较,当二者的时间差值大于用户预设的阀值时,判定该FST超时老化,否则,该FST未超时老化。当与所述FCT相匹配的FST超时老化时,更新模块1023删除该已超时老化的FST,并在该FST所在的位置为所述FCT创建一条新的FST。当与所述FCT相匹配的FST未超时老化时,更新模块1023依据所述FCT的信息对所述FST中的信息进行更新,具体包括
依据所述FCT的时间戳更新与其相匹配的FST中的时间戳;与所述FCT相匹配的FST中的数据包个数加I ;将所述FCT的数据包字节个数累加入与所述FCT相匹配的FST中的数据包字节个数中。由上述可知,本申请实施例I提供的一种网络流量的探测装置,包括抽样器,用于获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT,并对所述FCT进行抽样;处理器,用于依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST进行更新。采用本申请的一种网络流量的探测装置,对通过探测位置的网络流量进行探测,得到为后续的流量收集器进行网络流量的属性分析提供依据的FST,不必通过CPU的协助就能够对网络流量进行采集,保证系统的处理性能不受影响。参见图11,示出了本申请实施例I的另一种结构示意图,基于上述实施例1,所述装置还包括轮询检测器103,用于当到达预设的检测时间时,轮询检测存储的FST是否超时,如果任一 FST超时,删除所述超时的FST。在对网络上传输的数据包进行获取并生成FCT,以及依据所述FCT更新FST的过程中,轮询检测器103在同一时间对存储器中存储的FST进行着轮询检测。当到达预设的检测时间时,依据存储器中表项地址的顺序,轮询检测器103依次对每个表项地址中存储的每个FST进行检测。轮询检测器103的工作过程包括当任意一个FST的时间戳表示的时间与当前时间的差值大于预设的时间阀值时,则判定该FST超时老化,需要删除该条超时老化的FST,如果没有超时,继续对后续的FST进行检测。当对存储器中全部的表项地址中的全部的FST检测完毕后,停止检测,直至下一次到达预设的检测时间时,重新开始轮询检测。实际操作中,该预设的检测时间可依据实际情况进行设置。由上述方案,本发明实施例I提供的一种网络流量的探测装置,在对网络上传输的数据包进行获取并生成FCT,以及依据所述FCT更新FST的过程中,轮询检测器在同一时间对存储器中存储的FST进行着轮询检测,删除存储器存储的超时老化的FST,清理存储器中的表项空间。
参见图12,示出了本申请提供的一种网络流量的探测装置实施例2的结构示意图,本实施例是在实施例I所述装置中所述抽样器101具体包括网络流量获取模块1011、存储器流量获取模块1012、速率计算模块1013和抽样模块1014。其中,所述网络流量获取模块1011用于获取网络流量探测位置的实时流量;其中,所述存储器流量获取模块1012用于获取存储器接口的实时流量;为了对网络上的流量进行合理有效的抽样,依据存储器中的实时流量和探测位置处的网络实时流量对抽样FCT的速率进行调整。存储器接口处的实时流量包括依据FCT更新存储器中存储的FST占用的流量以及对FST进行轮询检测占用的流量。 其中,所述速率计算模块1013用于对所述网络流量探测位置的实时流量和所述存储器接口的实时流量的适配度进行比较,得到对FCT进行抽样的抽样比;存储器接口的最大吞吐速率为固定值,将该速率定义为存储器的阈值。被测网络最大带宽可知,即链路类型输出接口的链路带宽可知。已测量得到存储器实时流量,网络流量探测位置的实时流量与依据FCT更新存储器中存储的FST占用的流量成比例,该比例为对数据包的FCT抽样的比例。速率计算模块1013计算抽样比的具体步骤包括假设所述被测网络的最大带宽为A,所述网络流量探测位置的实时流量为a,所述存储器接口的实时流量值为b,所述存储器接口的阈值为B。当前网络接口流量获得的归一化参量为I,存储器接口流量带宽归一值为I,当
AB
令>|时,需要指示降低抽样比;当寻时,需要指示升高抽样比。
A BA B依据存储器接口流量阈值B与网络接口最大带宽A,对当前存储器接口剩余带宽(B-b)和当前网络接口空闲速率(A-a)之间的差值做离散归一化取整处理
-Ja—xl0° = h,得到离散化的调控参量C,当& &时,需要指示降
L J — > —
_JA B
低抽样比;当| 时,需要指示升高抽样比。
A B离散化的调控参量用于调整抽样比的步幅,以100为上限,以0为下限对当前的抽样比进行等比例的缩放调整。例如当前抽样比为1000,升降指示为升高,离散化的调控参量C为50,则将抽样比升到1500。其中,所述抽样模块1014用于依据所述抽样比对所述FCT进行抽样。实时计算并动态调整更新抽样模块1014的抽样比,抽样模块1014依据分析计算得到的抽样比对FCT进行抽样。由上述可知,本申请提供的一种网络流量的探测装置实施例2,网络流量获取模块获取网络流量探测位置的实时流量;存储器流量获取模块获取存储器接口的实时流量;速率计算模块对所述网络流量探测位置的实时流量和所述存储器接口的实时流量的适配度进行比较,得到对FCT进行抽样的抽样比;抽样模块依据所述抽样比对所述FCT进行抽样。抽样器实时计算并动态调整更新抽样比,依据分析计算得到的抽样比对FCT进行抽样,保证抽样的样本数足够且不会消耗过多的资源。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一 致的最宽的范围。
权利要求
1.一种网络流量的探测方法,其特征在于,包括 获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT (Flow Cell Table,流单元表),并对所述FCT进行抽样;依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST (Flow Statistic Table,流统计表)进行更新。
2.根据权利要求I所述的方法,其特征在于,所述对所述FCT进行抽样包括 获取网络流量探测位置的实时流量以及存储器接口的实时流量; 对所述网络流量探测位置的实时流量和所述存储器接口的实时流量的适配度进行比较,得到对FCT进行抽样的抽样比; 依据所述抽样比对所述FCT进行抽样。
3.根据权利要求I所述的方法,其特征在于,依据预设的分析规则对抽样得到的FCT表进行分析处理,对存储的FST进行更新包括 依次将FCT中的五元组信息经过哈希计算得到所述FCT在存储器中对应的表项地址,将所述FCT依次与所述表项地址中的FST进行五元组信息匹配; 当所述FCT的五元组信息不能与所述表项地址中的FST匹配时,在所述表项地址中为所述FCT创建新的FST ; 当所述FCT的五元组信息能与所述表项地址中的任一 FST匹配时,依据所述FCT的信息对所述FST进行更新。
4.根据权利要求3所述的方法,其特征在于,所述在所述表项地址中为所述FCT创建新的FST包括 判断所述表项地址中存储FST的空间是否已满,如果已满,任意删除一条FST,并在删除的FST所在的位置为所述FCT创建新的FST,如果不满,在所述表项地址中的空余位置为所述FCT创建新的FST。
5.根据权利要求3所述的方法,其特征在于,所述当所述FCT的五元组信息能与所述表项地址中的任一 FST匹配时,依据所述FCT的信息对所述FST进行更新包括 依据FCT的时间判断与所述FCT匹配的FST是否超时老化,如果所述FST已超时,删除已超时的所述FST,并在所述FST的位置为所述FCT创建新的FST ; 如果所述FST未超时,依据所述FCT的信息对所述FST中的信息进行更新。
6.根据权利要求I所述的方法,其特征在于,还包括 当到达预设的检测时间时,轮询检测存储器中存储的FST是否超时,如果任一 FST超时,删除所述超时的FST。
7.根据权利要求4飞所述的方法,其特征在于,还包括 依据预设格式对删除的FST进行打包并发送。
8.一种网络流量的探测装置,其特征在于,包括 抽样器,用于获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT,并对所述FCT进行抽样; 处理器,用于依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST进行更新。
9.根据权利要求8所述的装置,其特征在于,所述抽样器包括网络流量获取模块,用于获取网络流量探测位置的实时流量; 存储器流量获取模块,用于获取存储器接口的实时流量; 速率计算模块,用于对所述网络流量探测位置的实时流量和所述存储器接口的实时流量的适配度进行比较,得到对FCT进行抽样的抽样比; 抽样模块,用于依据所述抽样比对所述FCT进行抽样。
10.根据权利要求8所述的装置,其特征在于,所述处理器包括 匹配模块,用于依次将FCT中的五元组信息经过哈希计算得到所述FCT在存储器中对应的表项地址,将所述FCT依次与所述表项地址中的FST进行五元组信息匹配; 创建模块,用于当所述FCT的五元组信息不能与所述表项地址中的FST匹配时,在所述表项地址中为所述FCT创建新的FST ; 更新模块,用于当所述FCT的五元组信息能与所述表项地址中的任一 FST匹配时,依据所述FCT的信息对所述FST进行更新。
11.根据权利要求8所述的装置,其特征在于,还包括 轮询检测器,用于当到达预设的检测时间时,轮询检测存储的FST是否超时,如果任一FST超时,删除所述超时的FST。
全文摘要
本申请提供了一种网络流量的探测方法,包括获取设定时间段内通过网络流量探测位置的全部数据包,依次提取所述数据包的属性信息,生成与数据包相对应的FCT,并对所述FCT进行抽样;依据预设的分析规则依次对抽样得到的FCT进行分析处理,并依据对FCT的分析结果对存储器中存储的FST进行更新。采用本申请的一种网络流量的探测方法和装置,对通过探测位置的网络流量进行探测,得到为后续的流量收集器进行网络流量的属性分析提供依据的流统计信息,而且不必通过CPU的协助进行网络流量的采集,保证系统的处理性能运行正常不受影响。
文档编号H04L12/26GK102664773SQ20121016017
公开日2012年9月12日 申请日期2012年5月22日 优先权日2012年5月22日
发明者冶晓隆, 张建辉, 张校辉, 董永吉, 黄万伟 申请人:中国人民解放军信息工程大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1