System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 用于内核网络驱动的驱动器和驱动升级方法技术_技高网

用于内核网络驱动的驱动器和驱动升级方法技术

技术编号:41400572 阅读:15 留言:0更新日期:2024-05-20 19:25
本申请涉及计算机技术领域并提供一种用于内核网络驱动的驱动器和驱动升级方法。驱动器包括:父驱动,用于管理网络接口和子设备,还用于提供父网络设备操作接口和父以太操作接口;第一子驱动和第二子驱动,第一子驱动绑定子设备并且提供子网络设备操作接口和子以太操作接口。当第一子驱动已被加载时,父驱动使得父网络设备操作接口和父以太操作接口分别短接到对应的子网络设备操作接口和子以太操作接口,并且,当第一子驱动已被卸载时,父驱动通过父网络设备操作接口和父以太操作接口接管网络接口。如此,避免了网络接口和子设备的重建,有利于实现驱动的热升级。

【技术实现步骤摘要】

本申请涉及计算机,尤其涉及一种用于内核网络驱动的驱动器和驱动升级方法


技术介绍

1、随着云计算、数据中心等技术的发展,数据处理单元(data processing unit,dpu)和网络接口卡(network interface card,nic)等硬件得到了广泛的部署。硬件厂商会发布配套的内核网络驱动以提供网络能力,还可以支持客户定制和纠错,因此可能需要时而升级内核网络驱动。现有技术中,对内核网络驱动升级需要卸载驱动,同时删除驱动提供的内核网络接口,然后再安装驱动和创建内核网络接口,重新进行网络地址分配等以恢复网络功能。因为内核网络驱动的升级时间可能较长,云厂商需要事先找到可用的服务器资源用于业务迁移,但是,业务迁移操作复杂容易出错,而且需要占用大量的额外的服务器资源。

2、为此,本申请提供了一种用于内核网络驱动的驱动器和驱动升级方法,用于应对现有技术中的技术难题。


技术实现思路

1、第一方面,本申请提供了一种用于内核网络驱动的驱动器。所述驱动器包括:父驱动,其中,所述父驱动用于管理多个网络接口和与所述多个网络接口一一对应的多个子设备,所述父驱动还用于提供与所述多个网络接口一一对应的父网络设备操作接口和父以太操作接口,所述多个网络接口包括第一网络接口和第二网络接口,所述多个子设备包括第一子设备和第二子设备,所述第一网络接口对应所述第一子设备,所述第二网络接口对应所述第二子设备;第一子驱动和第二子驱动,其中,所述第一子驱动绑定所述第一子设备并且提供与所述第一网络接口对应的子网络设备操作接口和子以太操作接口,所述第二子驱动绑定所述第二子设备并且提供与所述第二网络接口对应的子网络设备操作接口和子以太操作接口,其中,当所述第一子驱动已被加载时,所述父驱动使得与所述第一网络接口对应的父网络设备操作接口和父以太操作接口分别短接到与所述第一网络接口对应的子网络设备操作接口和子以太操作接口,并且,当所述第一子驱动已被卸载时,所述父驱动通过与所述第一网络接口对应的父网络设备操作接口和父以太操作接口接管所述第一网络接口。

2、通过本申请的第一方面,避免了网络接口和子设备的重建,避免了接口状态出现异常,也节省了重新分配设备编号和重新创建内核网络接口的损耗,有利于应对客户定制需要和业务发展需要来升级内核网络驱动,并且,有利于实现驱动的热升级,在升级驱动期间网络不中断也不需要业务迁移,也不需要冗余的服务器资源,便于扩展网络接口数量和拓展业务。

3、在本申请的第一方面的一种可能的实现方式中,当所述第二子驱动已被加载时,所述父驱动使得与所述第二网络接口对应的父网络设备操作接口和父以太操作接口分别短接到与所述第二网络接口对应的子网络设备操作接口和子以太操作接口,并且,当所述第二子驱动已被卸载时,所述父驱动通过与所述第二网络接口对应的父网络设备操作接口和父以太操作接口接管所述第二网络接口。

4、在本申请的第一方面的一种可能的实现方式中,所述第一子驱动被卸载后再加载以完成所述第一子驱动的升级,并且,所述第二子驱动被卸载后再加载以完成所述第二子驱动的升级。

5、在本申请的第一方面的一种可能的实现方式中,当所述第一子驱动已被加载时,经过所述第一网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理,并且,当所述第二子驱动已被加载时,经过所述第二网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理。

6、在本申请的第一方面的一种可能的实现方式中,所述第一网络接口和所述第二网络接口组成同一网络聚合接口,当所述第一子驱动已被卸载时,所述父驱动关闭经过所述第一网络接口的链路并且将经过所述第一网络接口的链路流量切换到经过所述第二网络接口的链路,从而使得经过所述第一网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理,并且,当所述第二子驱动已被卸载时,所述父驱动关闭经过所述第二网络接口的链路并且将经过所述第二网络接口的链路流量切换到经过所述第一网络接口的链路,从而使得经过所述第二网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理。

7、在本申请的第一方面的一种可能的实现方式中,当所述第一子驱动已被卸载后又加载时,所述第一子驱动匹配所述第一子设备并发出所述第一子驱动的升级结束通知,所述父驱动打开经过所述第一网络接口的链路并且恢复经过所述第一网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理,并且,当所述第二子驱动已被卸载后又加载时,所述第二子驱动匹配所述第二子设备并发出所述第二子驱动的升级结束通知,所述父驱动打开经过所述第二网络接口的链路并且恢复经过所述第二网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理。

8、在本申请的第一方面的一种可能的实现方式中,所述第一子驱动的升级结束通知和所述第二子驱动的升级结束通知通过用户内核访问接口或者字符设备内核访问接口被用户接收。

9、在本申请的第一方面的一种可能的实现方式中,所述第一子驱动和所述第二子驱动交替升级,并且,所述第一子驱动和所述第二子驱动不被同时卸载,并且,所述第一网络接口在所述第一子驱动升级期间保持,所述第二网络接口在所述第二子驱动升级期间保持。

10、在本申请的第一方面的一种可能的实现方式中,所述第一子驱动通过虚拟总线与所述多个子设备中所述第一子驱动所绑定的子设备连接,所述第二子驱动通过所述虚拟总线与所述多个子设备中所述第二子驱动所绑定的子设备连接,所述父驱动与物理总线连接。

11、在本申请的第一方面的一种可能的实现方式中,所述多个网络接口还包括第三网络接口,所述多个子设备还包括第三子设备,所述第三网络接口对应所述第三子设备,所述第一子驱动绑定所述第三子设备并且提供与所述第三网络接口对应的子网络设备操作接口和子以太操作接口,当所述第一子驱动已被加载时,所述父驱动使得与所述第三网络接口对应的父网络设备操作接口和父以太操作接口分别短接到与所述第三网络接口对应的子网络设备操作接口和子以太操作接口,并且,当所述第一子驱动已被卸载时,所述父驱动通过与所述第三网络接口对应的父网络设备操作接口和父以太操作接口接管所述第三网络接口,并且,当所述第一子驱动已被加载时,经过所述第三网络接口的链路流量通过所述第一子驱动所驱动的所述第三子设备处理。

12、在本申请的第一方面的一种可能的实现方式中,所述第一网络接口、所述第二网络接口和所述第三网络接口组成所述同一网络聚合接口,当所述第一子驱动已被卸载时,所述父驱动关闭经过所述第三网络接口的链路并且将经过所述第三网络接口的链路流量切换到经过所述第二网络接口的链路,从而使得经过所述第三网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理,并且,当所述第一子驱动已被卸载后又加载时,所述第一子驱动匹配所述第三子设备,所述父驱动打开经过所述第三网络接口的链路并且恢复经过所述第三网络接口的链路流量通过所述第一子驱动所驱动的所述第三子设备处理,并且,所述第三网络接口在所述第一子本文档来自技高网...

【技术保护点】

1.一种用于内核网络驱动的驱动器,其特征在于,所述驱动器包括:

2.根据权利要求1所述的驱动器,其特征在于,当所述第二子驱动已被加载时,所述父驱动使得与所述第二网络接口对应的父网络设备操作接口和父以太操作接口分别短接到与所述第二网络接口对应的子网络设备操作接口和子以太操作接口,并且,当所述第二子驱动已被卸载时,所述父驱动通过与所述第二网络接口对应的父网络设备操作接口和父以太操作接口接管所述第二网络接口。

3.根据权利要求2所述的驱动器,其特征在于,所述第一子驱动被卸载后再加载以完成所述第一子驱动的升级,并且,所述第二子驱动被卸载后再加载以完成所述第二子驱动的升级。

4.根据权利要求2所述的驱动器,其特征在于,当所述第一子驱动已被加载时,经过所述第一网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理,并且,当所述第二子驱动已被加载时,经过所述第二网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理。

5.根据权利要求4所述的驱动器,其特征在于,所述第一网络接口和所述第二网络接口组成同一网络聚合接口,当所述第一子驱动已被卸载时,所述父驱动关闭经过所述第一网络接口的链路并且将经过所述第一网络接口的链路流量切换到经过所述第二网络接口的链路,从而使得经过所述第一网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理,并且,当所述第二子驱动已被卸载时,所述父驱动关闭经过所述第二网络接口的链路并且将经过所述第二网络接口的链路流量切换到经过所述第一网络接口的链路,从而使得经过所述第二网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理。

6.根据权利要求5所述的驱动器,其特征在于,当所述第一子驱动已被卸载后又加载时,所述第一子驱动匹配所述第一子设备并发出所述第一子驱动的升级结束通知,所述父驱动打开经过所述第一网络接口的链路并且恢复经过所述第一网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理,并且,当所述第二子驱动已被卸载后又加载时,所述第二子驱动匹配所述第二子设备并发出所述第二子驱动的升级结束通知,所述父驱动打开经过所述第二网络接口的链路并且恢复经过所述第二网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理。

7.根据权利要求6所述的驱动器,其特征在于,所述第一子驱动的升级结束通知和所述第二子驱动的升级结束通知通过用户内核访问接口或者字符设备内核访问接口被用户接收。

8.根据权利要求5所述的驱动器,其特征在于,所述第一子驱动和所述第二子驱动交替升级,并且,所述第一子驱动和所述第二子驱动不被同时卸载,并且,所述第一网络接口在所述第一子驱动升级期间保持,所述第二网络接口在所述第二子驱动升级期间保持。

9.根据权利要求1所述的驱动器,其特征在于,所述第一子驱动通过虚拟总线与所述多个子设备中所述第一子驱动所绑定的子设备连接,所述第二子驱动通过所述虚拟总线与所述多个子设备中所述第二子驱动所绑定的子设备连接,所述父驱动与物理总线连接。

10.根据权利要求1所述的驱动器,其特征在于,所述多个网络接口还包括第三网络接口,所述多个子设备还包括第三子设备,所述第三网络接口对应所述第三子设备,所述第一子驱动绑定所述第三子设备并且提供与所述第三网络接口对应的子网络设备操作接口和子以太操作接口,当所述第一子驱动已被加载时,所述父驱动使得与所述第三网络接口对应的父网络设备操作接口和父以太操作接口分别短接到与所述第三网络接口对应的子网络设备操作接口和子以太操作接口,并且,当所述第一子驱动已被卸载时,所述父驱动通过与所述第三网络接口对应的父网络设备操作接口和父以太操作接口接管所述第三网络接口,并且,当所述第一子驱动已被加载时,经过所述第三网络接口的链路流量通过所述第一子驱动所驱动的所述第三子设备处理。

11.根据权利要求10所述的驱动器,其特征在于,所述第一网络接口、所述第二网络接口和所述第三网络接口组成所述同一网络聚合接口,当所述第一子驱动已被卸载时,所述父驱动关闭经过所述第三网络接口的链路并且将经过所述第三网络接口的链路流量切换到经过所述第二网络接口的链路,从而使得经过所述第三网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理,并且,当所述第一子驱动已被卸载后又加载时,所述第一子驱动匹配所述第三子设备,所述父驱动打开经过所述第三网络接口的链路并且恢复经过所述第三网络接口的链路流量通过所述第一子驱动所驱动的所述第三子设备处理,并且,所述第三网络接口在所述第一子驱动升级期间保持。

12.根据权利要求1所述的驱动器,其特征在于,所述多个网络接口还包括第三网络接口和...

【技术特征摘要】

1.一种用于内核网络驱动的驱动器,其特征在于,所述驱动器包括:

2.根据权利要求1所述的驱动器,其特征在于,当所述第二子驱动已被加载时,所述父驱动使得与所述第二网络接口对应的父网络设备操作接口和父以太操作接口分别短接到与所述第二网络接口对应的子网络设备操作接口和子以太操作接口,并且,当所述第二子驱动已被卸载时,所述父驱动通过与所述第二网络接口对应的父网络设备操作接口和父以太操作接口接管所述第二网络接口。

3.根据权利要求2所述的驱动器,其特征在于,所述第一子驱动被卸载后再加载以完成所述第一子驱动的升级,并且,所述第二子驱动被卸载后再加载以完成所述第二子驱动的升级。

4.根据权利要求2所述的驱动器,其特征在于,当所述第一子驱动已被加载时,经过所述第一网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理,并且,当所述第二子驱动已被加载时,经过所述第二网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理。

5.根据权利要求4所述的驱动器,其特征在于,所述第一网络接口和所述第二网络接口组成同一网络聚合接口,当所述第一子驱动已被卸载时,所述父驱动关闭经过所述第一网络接口的链路并且将经过所述第一网络接口的链路流量切换到经过所述第二网络接口的链路,从而使得经过所述第一网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理,并且,当所述第二子驱动已被卸载时,所述父驱动关闭经过所述第二网络接口的链路并且将经过所述第二网络接口的链路流量切换到经过所述第一网络接口的链路,从而使得经过所述第二网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理。

6.根据权利要求5所述的驱动器,其特征在于,当所述第一子驱动已被卸载后又加载时,所述第一子驱动匹配所述第一子设备并发出所述第一子驱动的升级结束通知,所述父驱动打开经过所述第一网络接口的链路并且恢复经过所述第一网络接口的链路流量通过所述第一子驱动所驱动的所述第一子设备处理,并且,当所述第二子驱动已被卸载后又加载时,所述第二子驱动匹配所述第二子设备并发出所述第二子驱动的升级结束通知,所述父驱动打开经过所述第二网络接口的链路并且恢复经过所述第二网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理。

7.根据权利要求6所述的驱动器,其特征在于,所述第一子驱动的升级结束通知和所述第二子驱动的升级结束通知通过用户内核访问接口或者字符设备内核访问接口被用户接收。

8.根据权利要求5所述的驱动器,其特征在于,所述第一子驱动和所述第二子驱动交替升级,并且,所述第一子驱动和所述第二子驱动不被同时卸载,并且,所述第一网络接口在所述第一子驱动升级期间保持,所述第二网络接口在所述第二子驱动升级期间保持。

9.根据权利要求1所述的驱动器,其特征在于,所述第一子驱动通过虚拟总线与所述多个子设备中所述第一子驱动所绑定的子设备连接,所述第二子驱动通过所述虚拟总线与所述多个子设备中所述第二子驱动所绑定的子设备连接,所述父驱动与物理总线连接。

10.根据权利要求1所述的驱动器,其特征在于,所述多个网络接口还包括第三网络接口,所述多个子设备还包括第三子设备,所述第三网络接口对应所述第三子设备,所述第一子驱动绑定所述第三子设备并且提供与所述第三网络接口对应的子网络设备操作接口和子以太操作接口,当所述第一子驱动已被加载时,所述父驱动使得与所述第三网络接口对应的父网络设备操作接口和父以太操作接口分别短接到与所述第三网络接口对应的子网络设备操作接口和子以太操作接口,并且,当所述第一子驱动已被卸载时,所述父驱动通过与所述第三网络接口对应的父网络设备操作接口和父以太操作接口接管所述第三网络接口,并且,当所述第一子驱动已被加载时,经过所述第三网络接口的链路流量通过所述第一子驱动所驱动的所述第三子设备处理。

11.根据权利要求10所述的驱动器,其特征在于,所述第一网络接口、所述第二网络接口和所述第三网络接口组成所述同一网络聚合接口,当所述第一子驱动已被卸载时,所述父驱动关闭经过所述第三网络接口的链路并且将经过所述第三网络接口的链路流量切换到经过所述第二网络接口的链路,从而使得经过所述第三网络接口的链路流量通过所述第二子驱动所驱动的所述第二子设备处理,并且,当所述第一子驱动已被卸载后又加载时,所述第一子驱动匹配所述第三子设备,所述父驱动打开经过所述第三网络接口的链路并...

【专利技术属性】
技术研发人员:陈森法
申请(专利权)人:珠海星云智联科技有限公司
类型:发明
国别省市:

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

1