一种基于硬件实现流表双向数据同步的方法及装置制造方法及图纸

技术编号:23470530 阅读:26 留言:0更新日期:2020-03-06 12:39
本发明专利技术揭示了一种基于硬件实现流表双向数据同步的方法及装置,所述方法包括:入口IPFIX处理模块将数据报文和关键字索引和入口流修改计数字段组成总线数据送到出口IPFIX处理模块,出口IPFIX处理模块判断入口流修改计数字段和出口流修改计数字段是否相等,若相等,则将数据报文继续进行出口方向的IPFIX处理。本发明专利技术实现出口方向flow的统计数据和入口方向的代表flow的key能够同步,不会产生误匹配。

A method and device to realize bidirectional data synchronization of flow meter based on hardware

【技术实现步骤摘要】
一种基于硬件实现流表双向数据同步的方法及装置
本专利技术涉及一种流表双向数据同步技术,尤其是涉及一种基于硬件实现流表双向数据同步的方法及装置。
技术介绍
当网络已经铺设完成,网络管理员无法通过一种有效的手段能够分析网络中传输的流量状态。IPFIX(IPFlowInformationExport,IP数据流信息输出)则是为了解决这一问题而存在的,IPFIX通过key(关键字)来过滤网络中流量,一个key则代表了网络中的某一条数据流。对于每一条数据流对在入口方向和出口方向来对数据流中报文的数量,大小,延迟,目的地等信息进行统计,在这里称之为入口数据和出口数据。在实际的硬件实现上,有两种方式来处理key和数据流两个方向上的数据之间联系,一种方案是采用两组key和数据的方式,即入口key+入口数据和出口key+出口数据这样两组key和数据的方式,但是这个方案存在一个问题由于报文在从入口到出口的过程中可能会存在编辑的行为,导致入口key和出口key无法匹配同一条数据流,从而导致管理员无法查看到某一条数据流在入口方向和出口方向上的数据情况。另一种方案则是只在入口方向上存在key,入口数据和出口数据分别存在于芯片的入口方向和出口方向。这种方式则解决上述方案的缺点,使得管理员可以准确的看到一条数据流从出口到出口的信息以及状态。但是该方案也会导致一个问题,即由于key和数据是以分离的状态存在,导致无法关联出口数据和key之间的关系,以及实际数据在传输过程中由于时延以及数据流老化而导致出口数据的同步问题。
技术实现思路
本专利技术的目的在于克服现有技术的缺陷,提供一种基于硬件实现流表双向数据同步的方法及装置。为实现上述目的,本专利技术提出如下技术方案:一种基于硬件实现流表双向数据同步的方法,包括:S1,预先在芯片的入口IPFIX处理模块中根据数据报文生成关键字索引和添加入口流修改计数字段,及在出口IPFIX处理模块中添加出口流修改计数字段;S2,所述入口IPFIX处理模块将数据报文和所述关键字索引和入口流修改计数字段组成总线数据送到出口IPFIX处理模块;S3,所述出口IPFIX处理模块收到所述数据报文和对应的所述总线数据,从所述总线数据中提取出所述关键字索引和入口流修改计数字段,使用所述关键字索引在其出口数据存储中读取出出口数据,并在所述出口数据中提取出所述出口流修改计数字段;S4,所述出口IPFIX处理模块继续判断所述入口流修改计数字段和所述出口流修改计数字段是否相等,若相等,则将数据报文继续进行出口方向的IPFIX处理。优选地,所述入口IPFIX处理模块抽取数据报文的相应字段作为IPFIX关键字,再将所述IPFIX关键字采用哈希算法计算出所述关键字索引。优选地,所述入口流修改计数字段和出口流修改计数字段的初始值均设为0。优选地,S4中,若不相等,则忽略所述数据报文后续出口方向的IPFIX处理。优选地,当数据流出现老化或者删除所述IPFIX关键字对应的流信息时,则同时将所述入口流修改计数字段和出口流修改计数字段的值递增。本专利技术还揭示另外一种技术方案:一种基于硬件实现流表双向数据同步的装置,所述装置包括:入口IPFIX处理模块和出口IPFIX处理模块,其中,所述入口IPFIX处理模块中预先根据数据报文生成关键字索引及添加有入口流修改计数字段,及所述出口IPFIX处理模块中添加有出口流修改计数字段;所述入口IPFIX处理模块用于将数据报文和所述关键字索引和入口流修改计数字段组成总线数据送到出口IPFIX处理模块;所述出口IPFIX处理模块用于在收到所述数据报文和对应的所述总线数据后,从所述总线数据中提取出所述关键字索引和入口流修改计数字段,使用所述关键字索引在其出口数据存储中读取出出口数据,并在所述出口数据中提取出所述出口流修改计数字段;所述出口IPFIX处理模块还用于继续判断所述入口流修改计数字段和所述出口流修改计数字段是否相等,若相等,则将数据报文继续进行出口方向的IPFIX处理。优选地,所述入口IPFIX处理模块抽取数据报文的相应字段作为IPFIX关键字,再将所述IPFIX关键字采用哈希算法计算出所述关键字索引。优选地,所述出口IPFIX处理模块若判断不相等,则忽略所述数据报文后续出口方向的IPFIX处理。优选地,当数据流出现老化或者删除所述IPFIX关键字对应的流信息时,所述入口数据处理模块将所述入口流修改计数字段和所述出口数据处理模块将所述出口流修改计数字段的值同步递增。本专利技术的有益效果是:本专利技术通过在flow数据中插入流修改计数字段,实现出口方向flow的统计数据和入口方向的代表flow的key能够同步,不会产生误匹配。附图说明图1、图2均是本专利技术方法的流程示意图;图3是本专利技术ASIC芯片的原理示意图。具体实施方式下面将结合本专利技术的附图,对本专利技术实施例的技术方案进行清楚、完整的描述。本专利技术所揭示的一种基于硬件实现流表双向数据同步的方法及装置,本专利技术通过在flow数据中插入流修改计数字段,实现出口方向flow的统计数据和入口方向的代表flow的key能够同步,不会产生误匹配。结合图1和图2所示,本专利技术所揭示的一种基于硬件实现流表双向数据同步的方法,包括:S1,预先在芯片的入口IPFIX处理模块中根据数据报文生成关键字索引,在入口数据处理模块中添加入口流修改计数字段,及在出口数据处理模块中添加出口流修改计数字段。具体地,在芯片(如ASIC芯片)的入口方向上,入口IPFIX处理模块根据flow规则,抽取出数据报文中相应的字段作为IPFIX的flowkey(流关键字)。通过hash(哈希)算法将flowkey压缩成keyIndex(关键字索引)。在入口IPFIX处理模块中KeyIndex有三个作用,其一是作为key存放在入口IPFIX处理模块的Keymemory(关键字存储器)中的index;其二用于作为入口方向flow数据存储(即入口数据Memory)的index;其三是作为flow的标识(flowID),带到出口方向的出口IPFIX处理模块中。同时在入口IPFIX处理模块中添加入口流修改计数字段(ingressFlowChangeCount),用于记录入口流修改计数,ingressFlowChangeCount的初始值设置为0。及在出口IPFIX处理模块中添加出口流修改计数字段(egressFlowChangeCount),用于记录出口流修改计数,egressFlowChangeCount的初始值设置为0。S2,所述入口IPFIX处理模块将数据报文和所述关键字索引和入口流修改计数字段组成总线数据送到出口IPFIX处理模块。具体地,结合图3所示,所述总线(bus)数据依次经过芯片的入口数据处理模块、报文调度处理和出口数据处理模块,到达出口IPFIX处理模块。S3,所述出口IPFIX处理模本文档来自技高网
...

【技术保护点】
1.一种基于硬件实现流表双向数据同步的方法,其特征在于,所述方法包括:/nS1,预先在芯片的入口IPFIX处理模块中根据数据报文生成关键字索引和添加入口流修改计数字段,及在出口IPFIX处理模块中添加出口流修改计数字段;/nS2,所述入口IPFIX处理模块将数据报文和所述关键字索引和入口流修改计数字段组成总线数据送到出口IPFIX处理模块;/nS3,所述出口IPFIX处理模块收到所述数据报文和对应的所述总线数据,从所述总线数据中提取出所述关键字索引和入口流修改计数字段,使用所述关键字索引在其出口数据存储中读取出出口数据,并在所述出口数据中提取出所述出口流修改计数字段;/nS4,所述出口IPFIX处理模块继续判断所述入口流修改计数字段和所述出口流修改计数字段是否相等,若相等,则将数据报文继续进行出口方向的IPFIX处理。/n

【技术特征摘要】
1.一种基于硬件实现流表双向数据同步的方法,其特征在于,所述方法包括:
S1,预先在芯片的入口IPFIX处理模块中根据数据报文生成关键字索引和添加入口流修改计数字段,及在出口IPFIX处理模块中添加出口流修改计数字段;
S2,所述入口IPFIX处理模块将数据报文和所述关键字索引和入口流修改计数字段组成总线数据送到出口IPFIX处理模块;
S3,所述出口IPFIX处理模块收到所述数据报文和对应的所述总线数据,从所述总线数据中提取出所述关键字索引和入口流修改计数字段,使用所述关键字索引在其出口数据存储中读取出出口数据,并在所述出口数据中提取出所述出口流修改计数字段;
S4,所述出口IPFIX处理模块继续判断所述入口流修改计数字段和所述出口流修改计数字段是否相等,若相等,则将数据报文继续进行出口方向的IPFIX处理。


2.根据权利要求1所述的一种基于硬件实现流表双向数据同步的方法,其特征在于,所述入口IPFIX处理模块抽取数据报文的相应字段作为IPFIX关键字,再将所述IPFIX关键字采用哈希算法计算出所述关键字索引。


3.根据权利要求1所述的一种基于硬件实现流表双向数据同步的方法,其特征在于,所述入口流修改计数字段和出口流修改计数字段的初始值均设为0。


4.根据权利要求1所述的一种基于硬件实现流表双向数据同步的方法,其特征在于,S4中,若不相等,则忽略所述数据报文后续出口方向的IPFIX处理。


5.根据权利要求2所述的一种基于硬件实现流表双向数据同步的方法,其特征在于,当数据流出现老化或者删除所述IPFIX关键字对应的流信息时,则同时将所述入口流修改计数字段和出口流修改计数字段的值递增。


6.一种基于硬件实现流表双向数据同步的装置...

【专利技术属性】
技术研发人员:姚飞周伟单哲
申请(专利权)人:苏州盛科科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1