一种针对网卡的数据包的流表规则统计方法和装置与流程

文档序号:34683884发布日期:2023-07-05 21:51阅读:53来源:国知局
一种针对网卡的数据包的流表规则统计方法和装置与流程

本发明涉及针对网卡的数据包的流表规则统计,特别是涉及一种针对网卡的数据包的流表规则统计方法、一种针对网卡的数据包的流表规则统计装置、一种网卡、一种电子设备以及一种计算机可读存储介质。


背景技术:

1、智能网卡的硬件中存在硬件流表,当数据包匹配硬件流表失败时,会上送到软件ovs生成流表规则。流表规则包括匹配域和动作域,其中匹配域由数据包报文信息组成,而动作域规定数据包应该执行的动作。将生成的流表规则经过转换写入硬件后,数据包匹配硬件流表直接进行转发,即可实现硬件卸载。

2、所以,如何提高针对网卡的数据包的流表规则统计效率,成为了本领域技术人员需要克服的技术问题。


技术实现思路

1、本发明实施例是提供一种针对网卡的数据包的流表规则统计方法、装置、电子设备以及计算机可读存储介质,以解决如何提高针对网卡的数据包的流表规则统计效率的问题。

2、本发明实施例公开了一种针对网卡的数据包的流表规则统计方法,所述网卡具有对应的统计线程,包括:

3、确定针对所述数据包的待卸载流表ovs datapath的三级流表dpcls;

4、为所述统计线程配置对应的再验证者线程ovs revalidator和位图图像缓存;

5、生成针对所述流表规则的位图图像,并将所述位图图像储存至所述位图图像缓存;

6、通过所述再验证者线程ovs revalidator基于所述三级流表dpcls和所述位图图像统计针对所述数据包的流表规则。

7、可选地,生成针对所述流表规则的位图图像的步骤可以包括:

8、当所述数据包的命中与所述数据包对应的原生流表规则时,生成针对所述流表规则的位图图像。

9、可选地,所述通过所述再验证者线程ovs revalidator基于所述三级流表dpcls和所述位图图像统计针对所述数据包的流表规则的步骤可以包括:

10、在所述再验证者线程ovs revalidator内构建与所述三级流表dpcls具有关联关系的指针数组;

11、合并所述位图图像,生成位图图像结果;

12、通过所述再验证者线程ovs revalidator基于所述指针数组和所述位图图像结果统计针对所述数据包的流表规则。

13、可选地,所述位图图像结果具有对应的位置标识,还可以包括:

14、按照预设时间周期获取与所述位置标识对应的流表id;

15、基于所述流表id构建id列表。

16、可选地,所述通过所述再验证者线程ovs revalidator基于所述指针数组和所述位图图像结果统计针对所述数据包的流表规则的步骤可以包括:

17、向所述网卡发送包含所述id列表的统计请求信息,以控制所述网卡基于所述id列表生成针对所述目标流表规则的流表规则统计结果列表;

18、接收所述流表规则统计结果列表,并基于所述流表规则统计结果列表生成针对所述目标流表规则的统计结果;

19、通过所述指针数组将所述统计结果更新至所述再验证者线程ovs revalidator。

20、可选地,还可以包括:

21、控制所述网卡重置位图图像。

22、本发明实施例还公开了一种针对网卡的数据包的流表规则统计装置,所述网卡具有对应的统计线程,可以包括:

23、三级流表dpcls确定模块,用于确定针对所述数据包的待卸载流表ovs datapath的三级流表dpcls;

24、再验证者线程ovs revalidator和位图图像缓存配置模块,用于为所述统计线程配置对应的再验证者线程ovs revalidator和位图图像缓存;

25、位图图像生成模块,用于生成针对所述流表规则的位图图像,并将所述位图图像储存至所述位图图像缓存;

26、流表规则统计模块,用于通过所述再验证者线程ovs revalidator基于所述三级流表dpcls和所述位图图像统计针对所述数据包的流表规则。

27、可选地,所述位图图像生成模块可以包括:

28、位图图像生成子模块,用于当所述数据包的命中与所述数据包对应的原生流表规则时,生成针对所述流表规则的位图图像。

29、可选地,所述流表规则统计模块可以包括:

30、指针数组构建子模块,用于在所述再验证者线程ovs revalidator内构建与所述三级流表dpcls具有关联关系的指针数组;

31、位图图像结果生成子模块,用于合并所述位图图像,生成位图图像结果;

32、流表规则统计子模块,用于通过所述再验证者线程ovs revalidator基于所述指针数组和所述位图图像结果统计针对所述数据包的流表规则。

33、可选地,所述位图图像结果具有对应的位置标识,还可以包括:

34、流表id获取子模块,用于按照预设时间周期获取与所述位置标识对应的流表id;

35、id列表构建子模块,用于控制所述网卡基于所述流表id构建id列表。

36、可选地,所述流表规则统计子模块可以包括:

37、统计请求信息发送单元,用于向所述网卡发送统计请求信息,以控制所述网卡基于所述id列表生成针对所述目标流表规则的流表规则统计结果列表;

38、流表规则统计结果列表接收单元,用于接收所述流表规则统计结果列表,并基于所述流表规则统计结果列表生成针对所述目标流表规则的统计结果;

39、流表规则统计单元,用于通过所述指针数组将所述统计结果更新至所述再验证者线程ovs revalidator。

40、可选地,还可以包括:

41、位图图像重置子模块,用于控制所述网卡重置位图图像。

42、本发明实施例还公开了一种网卡,所述网卡配置有针对网卡的数据包的流表规则统计系统,所述流表规则统计系统用于实现如本发明实施例所述的方法。

43、本发明实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;

44、所述存储器,用于存放计算机程序;

45、所述处理器,用于执行存储器上所存放的程序时,实现如本发明实施例所述的方法。

46、本发明实施例还公开了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本发明实施例所述的方法。

47、本发明实施例包括以下优点:

48、本发明实施例,通过确定针对所述数据包的待卸载流表ovs datapath的三级流表dpcls;为所述统计线程配置对应的再验证者线程ovs revalidator和位图图像缓存;生成针对所述流表规则的位图图像,并将所述位图图像储存至所述位图图像缓存;通过所述再验证者线程ovs revalidator基于所述三级流表dpcls和所述位图图像统计针对所述数据包的流表规则,从而实现了可以对多个数据包的流表规则进行统计,从而提高针对网卡的数据包的流表规则统计效率。

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