本公开涉及计算机,尤其涉及大数据、云服务等人工智能。提供了一种硬件设备中流表的维护方法、装置、电子设备与可读存储介质。
背景技术:
1、现有技术为了节约物理机的cpu资源,通常采用由物理机中的虚拟交换机将软件路径的流表卸载到硬件设备上,进而由硬件设备根据位于本地的流表进行数据包的转发。但是,现有技术中的虚拟交换机在检测到位于上送路径中的流表发生变更的情况下,会将位于硬件设备上、与发生变更的流表具有相同粒度的全部流表进行删除,使得硬件设备上大量无辜流表的失效,导致无法再通过硬件设备转发数据包而引起的业务抖动。
技术实现思路
1、根据本公开的第一方面,提供了一种硬件设备中流表的维护方法,包括:从硬件路径中读取第一流表,根据所述第一流表获取元组信息,所述硬件路径位于物理机的硬件设备;使用所述元组信息构造伪数据包,根据所述伪数据包与所述第一流表获取第一转发动作;从上送路径中确定与所述伪数据包对应的第二流表,根据所述伪数据包与所述第二流表获取第二转发动作,所述上送路径位于所述物理机的虚拟交换机;在确定所述第一转发动作与所述第二转发动作不一致的情况下,将所述第一流表从所述硬件路径中进行删除。
2、根据本公开的第二方面,提供了一种硬件设备中流表的维护装置,包括:读取单元,用于从硬件路径中读取第一流表,根据所述第一流表获取元组信息,所述硬件路径位于物理机的硬件设备;第一处理单元,用于使用所述元组信息构造伪数据包,根据所述伪数据包与所述第一流表获取第一转发动作;第二处理单元,用于从上送路径中确定与所述伪数据包对应的第二流表,根据所述伪数据包与所述第二流表获取第二转发动作,所述上送路径位于所述物理机的虚拟交换机;维护单元,用于在确定所述第一转发动作与所述第二转发动作不一致的情况下,将所述第一流表从所述硬件路径中进行删除。
3、根据本公开的第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法。
4、根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行如上所述的方法。
5、根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方法。
6、由以上技术方案可以看出,本公开能够实现在对应伪数据包的两个转发动作不一致的情况下,再删除硬件路径中相应流表的目的,能够提升硬件路径中流表的删除准确性,避免了删除硬件路径中的无辜流表所导致的业务抖动问题。
7、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种硬件设备中流表的维护方法,包括:
2.根据权利要求1所述的方法,其中,所述硬件设备为所述物理机的网卡。
3.根据权利要求1所述的方法,其中,所述从硬件路径中读取第一流表包括:
4.根据权利要求1所述的方法,其中,所述从硬件路径中读取第一流表包括:
5.根据权利要求1所述的方法,其中,所述根据所述伪数据包与所述第二流表获取第二转发动作包括:
6.根据权利要求1所述的方法,还包括,
7.一种硬件设备中流表的维护装置,包括:
8.根据权利要求7所述的装置,其中,所述硬件设备为所述物理机的网卡。
9.根据权利要求7所述的装置,其中,所述读取单元在从硬件路径中读取第一流表时,具体执行:
10.根据权利要求7所述的装置,其中,所述读取单元在从硬件路径中读取第一流表时,具体执行:
11.根据权利要求7所述的装置,其中,所述第二处理单元在根据所述伪数据包与所述第二流表获取第二转发动作时,具体执行:
12.根据权利要求7所述的装置,其中,所述维护单元还用于执行:
13.一种电子设备,包括:
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-6中任一项所述的方法。