本发明专利技术公开了一种基于网络处理器实现流表高效计数的装置和方法,流管理流量进入数据采集设备后,网络处理器进行流表学习,在计数器中写入流表学习时间戳,网络处理器通过计算时间差的方式对流表进行老化,从而提高流表的老化刷新精度和流表采集性能。
A device and method based on network processor to realize the efficient counting of flow table
【技术实现步骤摘要】
一种基于网络处理器实现流表高效计数的装置和方法
本专利技术涉及IP网络数据处理
,尤其是一种基于网络处理器实现流表高效计数的装置和方法。
技术介绍
随着互联网技术的飞速发展和网络带宽的增速扩容,网络系统规模逐渐增大,复杂性不断增加,网络中的新型应用日益增多。通过网络采集设备对应用数据进行采集并转发给后台分析服务器,对目前主流网络处理器在处理性能上是极大的挑战。如何提高网络处理器对海量数据的采集性能显得尤为重要。
技术实现思路
本专利技术所要解决的技术问题在于,提供一种基于网络处理器实现流表高效计数的装置和方法,能够提高流表的老化刷新精度和流表采集性能。为解决上述技术问题,本专利技术提供一种基于网络处理器实现流表高效计数的装置,包括:流表建立模块,通过提取流量的五元组信息完成流表的建立;流表更新模块,主要通过更改流表时间进行流表的更新;流表老化模块,通过计算时间差进行流表的老化。优选的,当流管理流量进入数据采集设备后,网络处理器分别提取流量的源IP、目的IP、协议号、源端口、目的端口作为流表项的key值;将当前流表建立时间写入result字段指定的计数器中。优选的,当流管理表项刷新流量,即五元组信息匹配流表表项的流量进入数据采集设备后,网络处理器分别提取流量的五元组进行流表匹配,若流量匹配流表项该条流的输出总量未达到N值,则输出该报文,同时更新流表时间戳,即将当前时间写入计数器;若该条流输出总量已达到N值,则仅更新流表时间戳。优选的,当网络处理器收到流表老化消息时,会分别读取当前时间和流表指定计数器中存储的时间,计算两者的时间差并与流表配置的老化时间比较,若大于等于老化时间则将表项老化,否则不处理流表项。相应的,一种基于网络处理器实现流表高效计数的方法,包括如下步骤:(1)用户登陆设备,在设备上打开流管理、配置老化时间;(2)流量从接口进入采集设备,网络处理器判断是否需要进行流管理,若流量需要进行流管理,执行步骤(3);若不需要进行流管理,执行步骤(6);(3)网络处理器进行流表学习,将流量五元组信息写入key值,将流表学习时间写入计数器;(4)当有匹配五元组的流量进入采集设备时,网络处理器会更新流表项的学习时间戳;(5)当网络处理器收到老化消息时,会计算当前时间与流表项学习时间戳的时间差,若大于等于老化时间则删除流表;否则,继续等待下一个老化消息;(6)流量进行业务处理。本专利技术的有益效果为:本专利技术中,流管理流量进入数据采集设备后,网络处理器进行流表学习,在计数器中写入流表学习时间戳,网络处理器通过计算时间差的方式对流表进行老化,从而提高流表的老化刷新精度和流表采集性能。附图说明图1为本专利技术的方法流程示意图。具体实施方式一种基于网络处理器实现流表高效计数的装置,包括:流表建立模块,主要通过提取流量的五元组信息完成流表的建立。当流管理流量进入数据采集设备后,网络处理器分别提取流量的源IP、目的IP、协议号、源端口、目的端口作为流表项的key值;将当前流表建立时间写入result字段指定的计数器中。流表更新模块,主要通过更改流表时间进行流表的更新。当流管理表项刷新流量,即五元组信息匹配流表表项的流量进入数据采集设备后,网络处理器分别提取流量的五元组进行流表匹配,若流量匹配流表项该条流的输出总量未达到N值,则输出该报文,同时更新流表时间戳,即将当前时间写入计数器;若该条流输出总量已达到N值,则仅更新流表时间戳。流表老化模块,主要通过计算时间差进行流表的老化。当网络处理器收到流表老化消息时,会分别读取当前时间和流表指定计数器中存储的时间,计算两者的时间差并与流表配置的老化时间比较,若大于等于老化时间则将表项老化,否则不处理流表项。一种基于网络处理器实现流表高效计数的方法,包括如下步骤:步骤S1:用户登陆设备,在设备上打开流管理、配置老化时间;步骤S2:流量从接口进入采集设备,网络处理器判断是否需要进行流管理。若流量需要进行流管理,执行步骤S3;若不需要进行流管理,执行步骤S6;步骤S3:网络处理器进行流表学习,将流量五元组信息写入key值,将流表学习时间写入计数器;步骤S4:当有匹配五元组的流量进入采集设备时,网络处理器会更新流表项的学习时间戳;步骤S5:当网络处理器收到老化消息时,会计算当前时间与流表项学习时间戳的时间差,若大于等于老化时间则删除流表;否则,继续等待下一个老化消息;步骤S6:流量进行业务处理。本专利技术通过引入时间戳的机制,将流表创建时间写入计数器,当处理器收到老化消息时,计算当前时间和流表创建时间的差值,若达到设置的老化时间则将该流表老化,否则等待下一个老化消息;若处理器收到流表刷新报文,则更新时间戳。流量进入数据采集设备后,网络处理器首先判断是否需要进行流管理采样输出,若需要,则将流信息写入流表,流表key字段记录流量五元组,rusult字段指定计数器地址,将流表学习时间戳写入计数器。当采集设备收到后续报文时,不需要重新学习流表,只需要更新计数器中流表项的学习时间戳,从而大大提高了设备的采样性能。当网络处理器收到驱动发送的老化消息时,首先读取计数器中存储的流表学习时间,然后与当前时间进行差值计算,将时间差与设备配置的老化时间进行比较,若达到老化时间则将流表老化,提高了设备的老化精度,从而提高流表计数性能。本专利技术中,流管理流量进入数据采集设备后,网络处理器进行流表学习,在计数器中写入流表学习时间戳,网络处理器通过计算时间差的方式对流表进行老化,从而提高流表的老化刷新精度和流表采集性能。本文档来自技高网...
【技术保护点】
1.一种基于网络处理器实现流表高效计数的装置,其特征在于,包括:流表建立模块,通过提取流量的五元组信息完成流表的建立;流表更新模块,主要通过更改流表时间进行流表的更新;流表老化模块,通过计算时间差进行流表的老化。/n
【技术特征摘要】
1.一种基于网络处理器实现流表高效计数的装置,其特征在于,包括:流表建立模块,通过提取流量的五元组信息完成流表的建立;流表更新模块,主要通过更改流表时间进行流表的更新;流表老化模块,通过计算时间差进行流表的老化。
2.如权利要求1所述的基于网络处理器实现流表高效计数的装置,其特征在于,当流管理流量进入数据采集设备后,网络处理器分别提取流量的源IP、目的IP、协议号、源端口、目的端口作为流表项的key值;将当前流表建立时间写入result字段指定的计数器中。
3.如权利要求1所述的基于网络处理器实现流表高效计数的装置,其特征在于,当流管理表项刷新流量,即五元组信息匹配流表表项的流量进入数据采集设备后,网络处理器分别提取流量的五元组进行流表匹配,若流量匹配流表项该条流的输出总量未达到N值,则输出该报文,同时更新流表时间戳,即将当前时间写入计数器;若该条流输出总量已达到N值,则仅更新流表时间戳。
4.如权利要求1所...
【专利技术属性】
技术研发人员:李高超,于姝,邹昕,韩志前,张伟,于贵智,王晖,李佳,李政,陈国贺,陈训逊,戴丽,胡立洵,
申请(专利权)人:国家计算机网络与信息安全管理中心,南京中新赛克科技有限责任公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。