用于硬件卸载后软失效处理的方法、计算机设备及介质与流程

文档序号:37386881发布日期:2024-03-22 10:39阅读:8来源:国知局
用于硬件卸载后软失效处理的方法、计算机设备及介质与流程

本技术涉及计算机,尤其涉及一种用于硬件卸载后软失效处理的方法、计算机设备及介质。


背景技术:

1、在云计算、数据中心等应用领域,通过硬件卸载来满足数据转发业务要求,例如通过专门的转发芯片来承载数据转发业务。但是,在硬件卸载后,用于存储卸载的数据的硬件存储介质可能在使用过程中发生错误导致存储的数据发生异常,从而影响到正常功能。常见的错误有软失效和硬失效两大类:硬失效一般是指由于硬件器件损害造成的失效,硬失效一般是不可逆的损害;软失效一般是指由于宇宙射线这些高能粒子穿越造成的存储数据的改变,这些损害不是永久的,可以恢复。现有技术中,对于软失效处理,一种方式是忽略对待,通过上送流量到软件走软转,但是这样导致数据转发性能下降;另一种方式是由硬件自行恢复,但是这样容易导致软硬件失调,增加软硬同步的损耗和复杂度。

2、为此,本技术提供了一种用于硬件卸载后软失效处理的方法、计算机设备及介质,用于应对现有技术中的技术难题。


技术实现思路

1、第一方面,本技术提供了一种用于硬件卸载后软失效处理的方法。所述方法包括:通过逻辑侧的第一硬件,响应于检测到所述第一硬件的第一流表中的第一表项失效,删除所述第一表项以及向驱动侧发送与所述第一表项对应的第一失效表项通知;通过所述驱动侧的第一驱动软件,响应于接收到所述第一失效表项通知,确定所述第一驱动软件的第二流表中与所述第一失效表项通知对应的第二表项,设定所述第二表项的老化处理标识为待老化处理,添加所述第二表项的表项特征到所述第一驱动软件的失效表项清单,以及,设置具有二元状态的失效表项全局标识为所述二元状态中的第一状态;通过所述驱动侧的虚拟交换机,基于流表老化处理策略,间隔地从所述第一驱动软件获取统计信息并且确定所述第二流表中的待老化处理表项,然后,删除所述虚拟交换机的第三流表中与所述待老化处理表项对应的表项,以及向所述第一驱动软件下发对所述待老化处理表项执行老化处理操作的指示,其中,所述待老化处理表项包括所述第二流表中的老化处理标识为待老化处理的表项和所述第二流表中的基于所述统计信息匹配所述流表老化处理策略所定义的表项老化条件的表项;通过所述第一驱动软件,响应于接收到所述虚拟交换机的指示,基于所述失效表项全局标识和所述失效表项清单,确定所述待老化处理表项中与所述失效表项清单相匹配的第一部分表项和不匹配的第二部分表项,对所述第一部分表项执行失效处理操作以及对所述第二部分表项执行老化处理操作。

2、通过本技术的第一方面,不影响虚拟交换机已有的老化处理流程的前提下,结合虚拟交换机已有的老化处理流程以及利用卸载软件已存储的卸载信息,实现了恢复因软失效发生错误的流表数据,从而使得硬件卸载的流表数据恢复正常;并且,可以灵活地适配任意的流表老化处理策略和表项老化条件还有已有的老化处理流程,也没有增加逻辑侧的硬件的存储和控制成本,有利于实现不增加成本和最大限度降低硬件复杂度;而且,因为恢复流程是自顶向下的逻辑,通过尽可能复用已有流程降低了整体方案的复杂度,易于维护和管理;通过重新建立失效流表和重新触发硬件卸载,确保了软硬件的一致性。

3、在本技术的第一方面的一种可能的实现方式中,通过所述第一驱动软件,对所述第一部分表项执行失效处理操作,包括:通过所述第一驱动软件,删除所述失效表项清单中匹配所述第一部分表项的表项特征,以及,设置所述失效表项全局标识为所述二元状态中的第二状态。

4、在本技术的第一方面的一种可能的实现方式中,通过所述第一驱动软件,对所述第二部分表项执行老化处理操作,包括:通过所述第一驱动软件,保留所述失效表项清单,以及,指示所述第一硬件删除所述第一流表中与所述第二部分表项对应的表项。

5、在本技术的第一方面的一种可能的实现方式中,通过所述第一驱动软件,基于所述失效表项全局标识和所述失效表项清单,确定所述待老化处理表项中与所述失效表项清单相匹配的所述第一部分表项和不匹配的所述第二部分表项,包括:当所述失效表项全局标识为所述第一状态时,针对所述待老化处理表项中的任一表项,判断所述失效表项清单中是否存在匹配所述任一表项的表项特征,如果存在,确定所述任一表项属于所述第一部分表项,如果不存在,确定所述任一表项属于所述第二部分表项。

6、在本技术的第一方面的一种可能的实现方式中,所述第一硬件通过校验和计算来检测所述第一流表中的表项的表项特征字段或者表项动作字段是否发生了比特错误,如果是,确定该表项失效。

7、在本技术的第一方面的一种可能的实现方式中,所述第一驱动软件利用所述第二流表对失效的所述第一表项进行恢复从而修正所述第一表项中的比特错误以便得到恢复后的第一表项,所述恢复后的第一表项的表项特征匹配所述第二表项的表项特征。

8、在本技术的第一方面的一种可能的实现方式中,所述第一流表是硬转流表,所述第三流表是软转流表,所述第二流表用于从所述软转流表到所述硬转流表的硬件卸载,所述第一驱动软件用于驱动所述第一硬件基于所述硬转流表进行流表匹配和转发操作。

9、在本技术的第一方面的一种可能的实现方式中,所述第一流表、所述第二流表以及所述第三流表各自的表项的表项特征是唯一标识符。

10、在本技术的第一方面的一种可能的实现方式中,所述表项老化条件定义了在老化周期内没有变化的表项属于所述待老化处理表项,所述统计信息包括所述第二流表中的各个表项是否在与所述统计信息对应的时间段内发生了变化,所述第二流表中的各个表项的老化处理标识初始为不待老化处理。

11、在本技术的第一方面的一种可能的实现方式中,所述虚拟交换机被配置为在多个时间点分别获取多个统计信息,所述多个统计信息用于增量式地反馈在所述多个时间点的所述第二流表中的各个表项的变化。

12、在本技术的第一方面的一种可能的实现方式中,所述流表老化处理策略和所述流表老化处理策略所定义的所述表项老化条件由相对于所述第一驱动软件的上层业务设定,所述上层业务包括所述虚拟交换机。

13、在本技术的第一方面的一种可能的实现方式中,所述方法还包括:通过所述第一驱动软件,基于流表失效处理策略,间隔地指示所述第一硬件来检测所述第一流表中的位于多个位置的多个静态表项是否失效,并且,当检测到所述多个静态表项中的高于第一比例的静态表项失效时,确定所述第一流表失效,设定所述第二表项中的所有表项的老化标识为待老化处理,指示所述第一硬件删除所述第一流表中的所有表项。

14、在本技术的第一方面的一种可能的实现方式中,当确定所述第一流表失效时,所述第一驱动软件删除所述第二流表中的所有表项,并且,所述虚拟交换机删除所述第三流表中与所述第二流表中的所有表项对应的表项。

15、在本技术的第一方面的一种可能的实现方式中,所述第一比例是基于所述第一硬件用于存储所述第一流表的第一存储器确定,当所述第一存储器是双倍数据速率同步动态随机存取存储器时的所述第一比例高于当所述第一存储器是闪存时的所述第一比例。

16、在本技术的第一方面的一种可能的实现方式中,所述第一比例是基于所述第一硬件先前检测到的所述第一流表中的单个表项失效的频率和次数确定。

17、在本技术的第一方面的一种可能的实现方式中,所述虚拟交换机是开放虚拟交换机,所述开放虚拟交换机通过重新验证线程,间隔地从所述第一驱动软件获取所述统计信息以及确定所述第二流表中的老化处理标识为待老化处理的表项。

18、第二方面,本技术实施例还提供了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据上述任一方面的任一种实现方式的方法。

19、第三方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。

20、第四方面,本技术实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的指令,当所述指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。

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