CN115857995B - 一种用于互联设备升级的方法、介质及计算设备 - Google Patents

一种用于互联设备升级的方法、介质及计算设备 Download PDF

Info

Publication number
CN115857995B
CN115857995B CN202310083274.0A CN202310083274A CN115857995B CN 115857995 B CN115857995 B CN 115857995B CN 202310083274 A CN202310083274 A CN 202310083274A CN 115857995 B CN115857995 B CN 115857995B
Authority
CN
China
Prior art keywords
upgrade
interconnect
interconnection
devices
upgrade request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310083274.0A
Other languages
English (en)
Other versions
CN115857995A (zh
Inventor
胡培培
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Xingyun Zhilian Technology Co Ltd
Original Assignee
Zhuhai Xingyun Zhilian Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Xingyun Zhilian Technology Co Ltd filed Critical Zhuhai Xingyun Zhilian Technology Co Ltd
Priority to CN202310083274.0A priority Critical patent/CN115857995B/zh
Publication of CN115857995A publication Critical patent/CN115857995A/zh
Application granted granted Critical
Publication of CN115857995B publication Critical patent/CN115857995B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供一种用于互联设备升级的方法、介质及计算设备。方法包括:接收与至少一个互联设备相关联的升级请求,升级请求对应一个或者多个互联设备或者指示新增设备;当升级请求改动所述至少一个互联设备的拓扑结构时,通过第一升级方式执行升级请求,第一升级方式至少包括中断数据业务以及卸载互联设备;当升级请求不改动拓扑结构时,根据所述至少一个互联设备中的物理设备与虚拟设备各自的数量和比例以及所述一个或者多个互联设备中的物理设备与虚拟设备各自的数量和比例,选择性地通过第一升级方式或者第二升级方式执行升级请求,第二升级方式至少包括关闭数据业务的通知功能以及排空数据业务的数据队列。如此提高系统稳定性和升级可靠性。

Description

一种用于互联设备升级的方法、介质及计算设备
技术领域
本申请涉及计算机技术领域,尤其涉及一种用于互联设备升级的方法、介质及计算设备。
背景技术
随着高性能计算技术和异构计算技术的发展,在例如数据中心、服务器等应用中,往往需要挂接类型可能不同的多个设备,这些设备一般按照特定标准或者协议互联。例如,外围器件互联(Peripheral Component Interconnect,PCI)提供了一种局部并行总线标准,外围器件互联总线也即PCI总线作为一种树型结构可以与中央处理器(CentralProcessing Unit,CPU)总线并行操作。一般来说,在PCI总线上挂接PCI设备和PCI桥片,且PCI设备中一个为主设备和其他为从设备,读写操作在主设备和从设备之间进行且从设备之间的数据交换通过主设备中转。还例如,高速外围器件互联(Peripheral ComponentInterconnect Express,PCIE)在PCI基础上实现了从并行到串行的切换且具有更快速率。PCIE是一种分层协议,一般由事务层,数据链路层和物理层组成。
现有技术中,出于业务发展和设备保养等需求,可能需要对数据中心和服务器的互联设备例如PCIE设备进行设备升级或者添加新的设备,这样需要考虑到多个互联设备之间可能具有不同的类型、不同的异构计算架构以及软硬件等方面的差异,还需要考虑到设备升级对业务运行带来的影响。
综上所述,需要一种用于互联设备升级的方法、介质及计算设备,用于应对现有技术中的技术难题。
发明内容
本申请实施例提供了一种用于互联设备升级的方法、介质及计算设备,用于解决现有技术中存在的问题。
第一方面,本申请提供了一种方法,用于互联设备升级。所述方法包括:接收与至少一个互联设备相关联的升级请求,所述升级请求对应所述至少一个互联设备中的一个或者多个互联设备或者指示新增设备;当所述升级请求改动所述至少一个互联设备的拓扑结构时,通过第一升级方式执行所述升级请求,其中所述第一升级方式至少包括中断所述至少一个互联设备的数据业务以及卸载所述至少一个互联设备;当所述升级请求不改动所述至少一个互联设备的拓扑结构时,根据所述至少一个互联设备中的物理设备与虚拟设备各自的数量和比例以及所述一个或者多个互联设备中的物理设备与虚拟设备各自的数量和比例,选择性地通过所述第一升级方式执行所述升级请求或者通过第二升级方式执行所述升级请求,其中所述第二升级方式至少包括关闭所述至少一个互联设备的数据业务的通知功能以及排空所述至少一个互联设备的数据业务的数据队列。
在本申请的第一方面的一种可能的实现方式中,当所述升级请求指示新增设备时,所述升级请求改动所述至少一个互联设备的拓扑结构。
在本申请的第一方面的一种可能的实现方式中,当所述升级请求指示改动所述一个或者多个互联设备的设备类型时,所述升级请求改动所述至少一个互联设备的拓扑结构。
在本申请的第一方面的一种可能的实现方式中,所述至少一个互联设备的拓扑结构包括所述至少一个互联设备的数量、所述至少一个互联设备各自的设备类型以及所述至少一个互联设备之间的连接关系。
在本申请的第一方面的一种可能的实现方式中,当所述升级请求指示对所述一个或者多个互联设备进行功能升级或者代码升级时,所述升级请求不改动所述至少一个互联设备的拓扑结构。
在本申请的第一方面的一种可能的实现方式中,所述至少一个互联设备均连接同一个外围器件互联总线。
在本申请的第一方面的一种可能的实现方式中,所述同一个外围器件互联总线是高速外围器件互联总线。
在本申请的第一方面的一种可能的实现方式中,所述至少一个互联设备均是高速外围器件互联总线设备。
在本申请的第一方面的一种可能的实现方式中,所述至少一个互联设备中的虚拟设备通过数据处理器模拟,所述数据处理器通过运行设备模拟器从而模拟所述至少一个互联设备中的虚拟设备以及通过运行高速外围器件互联总线模拟器从而模拟所述高速外围器件互联总线。
在本申请的第一方面的一种可能的实现方式中,所述至少一个互联设备是相对于与所述高速外围器件互联总线相关联的主机的高速外围器件互联总线设备,所述至少一个互联设备的数据业务是在所述主机和所述高速外围器件互联总线设备之间进行。
在本申请的第一方面的一种可能的实现方式中,所述第一升级方式包括对所述高速外围器件互联总线设备进行热插拔操作。
在本申请的第一方面的一种可能的实现方式中,所述第一升级方式还包括重新配置单根输入输出虚拟化功能或者重新绑定轮询机制驱动。
在本申请的第一方面的一种可能的实现方式中,所述关闭所述至少一个互联设备的数据业务的通知功能包括防止所述高速外围器件互联总线设备接收由所述主机发送的数据,所述排空所述至少一个互联设备的数据业务的数据队列包括排空所述高速外围器件互联总线设备的发送队列和/或排空所述高速外围器件互联总线设备的接收队列。
在本申请的第一方面的一种可能的实现方式中,所述第二升级方式还包括停止所述至少一个互联设备的控制队列。
在本申请的第一方面的一种可能的实现方式中,所述第二升级方式还包括保存所述至少一个互联设备的数据业务的数据队列和所述至少一个互联设备的控制队列分别在通过所述第二升级方式执行所述升级请求之前的队列状态。
在本申请的第一方面的一种可能的实现方式中,所述第二升级方式还包括保存所述高速外围器件互联总线设备在通过所述第二升级方式执行所述升级请求之前的高速外围器件互联总线配置空间状态,所述高速外围器件互联总线配置空间状态至少包括高速外围器件互联总线配置空间头状态和能力集状态。
在本申请的第一方面的一种可能的实现方式中,所述能力集状态包括所述高速外围器件互联总线设备的扩展能力集状态。
在本申请的第一方面的一种可能的实现方式中,所述第二升级方式还包括使用所保存的所述至少一个互联设备的数据业务的数据队列和所述至少一个互联设备的控制队列分别在通过所述第二升级方式执行所述升级请求之前的队列状态进行队列状态恢复操作,以及使用所保存的所述高速外围器件互联总线设备在通过所述第二升级方式执行所述升级请求之前的高速外围器件互联总线配置空间状态进行高速外围器件互联总线配置空间状态恢复操作。
第二方面,本申请实施例还提供了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据上述任一方面的任一种实现方式的方法。
第三方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。
第四方面,本申请实施例还提供了一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在计算机可读存储介质上的指令,当所述指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种互联设备升级的场景示意图;
图2为本申请实施例提供的一种用于互联设备升级的方法的流程示意图;
图3为本申请实施例提供的一种用于模拟互联设备中的虚拟设备的数据处理器的示意图;
图4为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
下面将结合附图对本申请实施例作进一步地详细描述。
本申请实施例提供了一种用于互联设备升级的方法、介质及计算设备,用于解决现有技术中存在的问题。其中,本申请实施例提供的方法和设备是基于同一发明构思的,由于方法及设备解决问题的原理相似,因此方法与设备的实施例、实施方式、示例或实现方式可以相互参见,其中重复之处不再赘述。
应当理解的是,在本申请的描述中,“至少一个”指一个或一个以上,“多个”指两个或两个以上。另外,“第一”、“第二”等词汇,除非另有说明,否则仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
图1为本申请实施例提供的一种互联设备升级的场景示意图。如图1所示,前端系统102与硬件后端系统104连接,硬件后端系统104与嵌入式中央处理器后端系统106连接。硬件后端系统104和嵌入式中央处理器后端系统106一起作为后端系统与前端系统102对应。前端系统102一般位于主机侧也叫HOST侧,后端系统包括互联设备并执行互联设备相关的升级请求。后端系统可以基于如数据处理器(data processing unit,DPU)实现,例如通过数据处理器来实现后端的设备升级。嵌入式中央处理器后端系统106包括嵌入式中央处理器(Embedded Central Processing Unit,ECPU)以及在嵌入式中央处理器侧也即ECPU侧的设备模拟器。硬件后端系统104可以是基于如现场可编程逻辑门阵列(field-programmable gate array,FPGA)或者专用集成电路(application-specific integratedcircuit,ASIC)实现。硬件后端系统104用于为嵌入式中央处理器后端系统106提供必要的协作功能从而一起实现后端系统。在数据中心和数据处理器的应用场景中,后端系统可以包括多种不同类型的标准化互联设备,例如通过数据处理器模拟得到的虚拟化的多种标准化互联设备,再例如高速外围器件互联设备也即PCIE设备。当需要对后端系统例如硬件后端系统104的互联设备进行升级或者添加新设备时,需要考虑到这些可能类型不同的多种标准化互联设备之间的差异性(不同的类型、不同的异构计算架构以及软硬件等),还需要考虑到设备升级对业务运行带来的影响,例如中断在前端系统102也即主机侧和后端系统的互联设备之间的数据业务可能影响系统运行效率。下面结合本申请其他实施例详细说明如何通过提供一种用于互联设备升级的方法、介质及计算设备来应对上述问题。
图2为本申请实施例提供的一种用于互联设备升级的方法的流程示意图。如图2所示,方法包括以下步骤。
步骤S202:接收与至少一个互联设备相关联的升级请求。
其中,所述升级请求对应所述至少一个互联设备中的一个或者多个互联设备或者指示新增设备。这里,至少一个互联设备可能存在于例如数据中心、服务器等应用场景,所述至少一个互联设备可以对应挂接的多个设备,这些设备可能有相同的类型或者可能有不同的类型,一般按照特定标准或者协议互联。例如,在数据中心的应用场景中,所述至少一个互联设备可以对应用在数据中心的数据处理器(data processing unit,DPU)所挂接的多个设备,包括由数据处理器模拟或者虚拟化生成的虚拟设备和/或物理连接的物理设备等。所述至少一个互联设备之间互联的标准可以是例如外围器件互联(PeripheralComponent Interconnect,PCI)标准或者类似的局部并行总线标准,也可以是例如高速外围器件互联(Peripheral Component Interconnect Express,PCIE)或者类似的高速串行总线标准,或者可以是其他合适的总线标准只要可适用本申请实施例提供的用于互联设备升级的方法。在采用外围器件互联标准也即PCI标准或者采用高速外围器件互联标准也即PCIE标准的应用中,一般设定一个设备为主设备而其他设备为从设备,读写操作在主设备和从设备之间进行且从设备之间的数据交换通过主设备中转。另外,主设备和从设备的角色可以互换或者重新分配。出于业务发展和设备保养等需求,可能需要对例如数据中心和服务器等应用场景下的所述至少一个互联设备进行设备升级或者新增设备,也就是可能接收到与至少一个互联设备相关联的升级请求。该升级请求可以是对应所述至少一个互联设备中的一个或者多个互联设备,或者不对应当前设备而是指示新增设备。考虑到所述至少一个互联设备之间可能具有不同的类型、不同的异构计算架构以及软硬件等方面的差异,例如一个互联设备可能是数据处理器模拟的虚拟设备而另一个互联设备可能是物理连接的物理设备,再例如一个互联设备可能具有单根输入输出虚拟化功能并因此需要特别的配置而另一个互联设备可能不具有单根输入输出虚拟化功能,因此,在执行升级请求来新增设备或者更新与升级请求对应的该一个或者多个互联设备的过程中,应尽量减轻对当前数据业务的干扰和中断,同时还需要考虑到上述的所述至少一个互联设备之间的各种可能的差异性。下面结合其他步骤详细说明本申请实施例为此做出的各项改进。
步骤S204:判断所述升级请求是否改动所述至少一个互联设备的拓扑结构,如果是也即所述升级请求改动所述至少一个互联设备的拓扑结构时执行步骤S206,如果否也即所述升级请求不改动所述至少一个互联设备的拓扑结构时执行步骤S208。
所述至少一个互联设备的拓扑结构指的是所述至少一个互联设备的数量、连接关系以及设备类型等,例如,所述升级请求指示新增设备,则意味着改动所述至少一个互联设备的数量并且可能改动现有的连接关系。再例如,所述升级请求指示改动其中一个互联设备的设备类型,如替换其中一个互联设备,这意味着与该互联设备相关的连接关系如接口、通讯配置等都可能需要做出调整。再例如,所述升级请求指示改动所述至少一个互联设备之间的连接关系,这意味着至少两个互联设备的接口、通讯配置等可能需要做出调整。在步骤S204中判断所述升级请求是否改动所述至少一个互联设备的拓扑结构,可以为后续处理流程提供参考,也就是说,如果是也即所述升级请求改动所述至少一个互联设备的拓扑结构时执行步骤S206,如果否也即所述升级请求不改动所述至少一个互联设备的拓扑结构时执行步骤S208。
具体地,在步骤S204中判断所述升级请求是否改动所述至少一个互联设备的拓扑结构,可以是基于升级请求的内容例如其中的特定标识符、特定特征等,或者通过比较升级请求之前的拓扑结构和升级请求之后的拓扑结构。应当理解的是,通过在步骤S204中判断是否改动当前的互联设备也就是所述至少一个互联设备的拓扑结构,有利于后续处理流程中采取相应的行动,从而尽量减少对进行中的数据业务的影响同时又确保设备升级或者设备新增能够顺利完成。
步骤S206:通过第一升级方式执行所述升级请求。
其中所述第一升级方式至少包括中断所述至少一个互联设备的数据业务以及卸载所述至少一个互联设备。上面提到,在步骤S204中判断为是也即所述升级请求改动所述至少一个互联设备的拓扑结构时执行步骤S206。这里,第一升级方式包括中断当前数据业务以及卸载所述至少一个互联设备。例如,当所述至少一个互联设备是属于在主机和高速外围器件互联总线设备之间进行数据通信以及数据业务的应用场景,如图1所示的由硬件后端系统104和嵌入式中央处理器后端系统106一起构成的相对于前端系统102的后端系统,第一升级方式包括主机感知到数据业务的中断并且卸载所述至少一个互联设备。这是因为在步骤S204中判断拓扑结构被改动,因此适合通过第一升级方式来执行所述升级请求,这样做可以确保顺利完成所述升级请求。例如,当升级请求指示新增设备,则在卸载所述至少一个互联设备后可以新增设备并建立起新的连接关系后再恢复与主机之间的数据业务;再例如,当升级请求指示改动所述至少一个互联设备之间的连接关系,则在卸载所述至少一个互联设备后可以根据改动后的新的连接关系来恢复与主机之间的数据业务;再例如,当升级请求指示改动其中一个互联设备的设备类型,则在卸载所述至少一个互联设备后先用新的设备类型来替代原先的设备然后恢复与主机之间的数据业务。在实际应用中,所述升级请求可能同时涉及新增设备、改动连接关系、改动设备类型中的多个方面,例如所述升级请求可能在新增设备同时也改动现有设备的设备类型。为此,为了顺利完成所述升级请求并且考虑到所述升级请求的内容的可能情况,当在步骤S204中判断所述升级请求改动所述至少一个互联设备的拓扑结构后,适合通过第一升级方式也就是至少包括中断所述至少一个互联设备的数据业务以及卸载所述至少一个互联设备,这样有利于系统稳定性和可靠性。在一些实施例中,所述第一升级方式包括删除所有挂接的互联设备并释放相关硬件资源和软件资源,并且中断进行中的数据业务(例如停止设备模拟功能等),在完成升级请求后开启运行(例如启动设备模拟功能),接着分配硬件资源和软件资源(还可以通过设备模拟和虚拟化技术重新创建设备),然后由主机侧驱动加载设备从而继续进行数据业务。应当理解的是,所述第一升级方式一般包括发出两次中断信号,也就是主机侧在开始设备升级时收到中断信号并且在设备升级完成后收到中断信号,这样使得主机侧或者HOST侧可以感知到数据业务的中断并且驱动卸载设备以及驱动加载设备。另外,所述至少一个互联设备中可能存在一个或者多个设备具有如单根输入输出虚拟化(Single Root I/OVirtualization,SR-IOV)功能、访问控制服务(Access Control Services,ACS)、可替换路由名称解释(Alternative Routing ID Interpretation,ARI)、基于消息信号中断扩展(Message Signaled Interrupt Extended,MSIX)。这些额外的功能可以是互联设备例如PCIE设备的扩展能力集状态。扩展能力集状态的例子如单根输入输出虚拟化功能需要在设备升级后重新配置。另外,所述互联设备还可以是基于主机侧的设备驱动程序具有如轮询机制驱动(Poll Mode Driver,PMD)。基于主机侧的设备驱动程序的例子如轮询机制驱动意味着,如果互联设备如PCIE设备在升级之前被主机侧的用户态轮询机制驱动加载,那么就需要在升级之前解除绑定并且在设备升级完成之后重新绑定。另外,所述至少一个互联设备各自可能具有不同配置的物理功能(Physical Function,PF)和/或虚拟功能(VirtualFunction,VF),对于具体的物理功能/虚拟功能的设备,与其相关联的扩展能力集状态者单根输入输出虚拟化功能或者其被主机侧的设备驱动如轮询机制驱动加载,在通过所述第一升级方式来完成设备升级的流程中需要对此做出针对性地处理,例如解除绑定和重新绑定物理功能/虚拟功能的设备的轮询机制驱动以及重新配置物理功能/虚拟功能的设备的单根输入输出虚拟化功能。
步骤S208:根据所述至少一个互联设备中的物理设备与虚拟设备各自的数量和比例以及所述一个或者多个互联设备中的物理设备与虚拟设备各自的数量和比例,选择性地通过所述第一升级方式执行所述升级请求或者通过第二升级方式执行所述升级请求。
其中所述第二升级方式至少包括关闭所述至少一个互联设备的数据业务的通知功能以及排空所述至少一个互联设备的数据业务的数据队列。相对于所述第一升级方式至少包括中断所述至少一个互联设备的数据业务以及卸载所述至少一个互联设备,所述第二升级方式暂停数据发送和接收并且不会卸载互联设备。相对的,所述第二升级方式通过关闭数据业务的通知功能,也就是使得所述至少一个互联设备关闭数据业务的通知功能。例如,当所述至少一个互联设备是属于在主机和高速外围器件互联总线设备之间进行数据通信以及数据业务的应用场景,如图1所示的由硬件后端系统104和嵌入式中央处理器后端系统106一起构成的相对于前端系统102的后端系统,所述第二升级方式意味着关闭通知功能从而防止主机如图1所示的前端系统102发送更多的数据。应当理解的是,第二升级方式所包括的关闭数据业务的通知功能,不同于第一升级方式所包括的中断数据业务,第二升级方式只需要暂停数据发送和接收因此对数据业务带来的影响有限。并且,第二升级方式至少还包括排空所述至少一个互联设备的数据业务的数据队列。例如,可以排空发送队列并且先关闭接收队列的接收功能然后排空接收队列。可选地,第二升级方式还包括停止控制队列以及保留队列状态等。上面提到,所述至少一个互联设备中可能存在一个或者多个设备具有额外功能或者扩展能力集状态,例如单根输入输出虚拟化(Single Root I/OVirtualization,SR-IOV)功能、访问控制服务(Access Control Services,ACS)、可替换路由名称解释(Alternative Routing ID Interpretation,ARI)、基于消息信号中断扩展(Message Signaled Interrupt Extended,MSIX)。针对这些额外功能或者扩展能力集状态,在一些实施例中,所述第二升级方式可以包括保存队列状态,包括数据队列状态和控制队列状态如队列当前处理的位置,还可以包括保存配置空间状态如配置空间头状态和当前互联设备所使用的扩展能力集状态。如此,通过第二升级方式来完成设备升级,一方面不响应来自主机的请求也即关闭通知功能,另一方面在暂停数据发送和接收的前提下通过排空数据队列从而为设备升级提供必要的处理时间,进而使得可以通过软硬件状态的保存和恢复来执行所述升级请求。应当理解的是,所述第二升级方式只是暂停数据发送和接收,也意味着主机不感知到中断信号,因此不同于所述第一升级方式触发数据业务的中断。另外,所述第二升级方式不卸载设备而是排空数据业务的数据队列,也意味着主机驱动不卸载设备,因此不同于所述第一升级方式卸载当前挂接的互联设备。基于所述第一升级方式和所述第二升级方式之间的区别,可以看出,第一升级方式和第二升级方式分别有不同的优势。特别是当在步骤S204中判断所述升级请求改动所述至少一个互联设备的拓扑结构时,适合采用第一升级方式。当在步骤S204中判断所述升级请求没有改动所述至少一个互联设备的拓扑结构时,需要结合更多的参考因素从而选择第一升级方式或者第二升级方式。
参考上述步骤S202至步骤S208,其中在步骤S208中,根据所述至少一个互联设备中的物理设备与虚拟设备各自的数量和比例以及所述一个或者多个互联设备中的物理设备与虚拟设备各自的数量和比例,选择性地通过所述第一升级方式执行所述升级请求或者通过第二升级方式执行所述升级请求。这里,取决于具体的应用场景以及实际需求,所述至少一个互联设备中的物理设备与虚拟设备各自的数量和比例可能有所不同,所述一个或者多个互联设备中的物理设备与虚拟设备各自的数量和比例也可能有所不同。例如,在数据处理器也即DPU的应用场景下,可能大部分的互联设备都是通过数据处理器模拟或者虚拟化得到的虚拟设备,这些虚拟设备的设备升级、设备新增以及设备删除,都是通过数据处理器内部的软件或者程序代码等方式实现,因此不需要通过所述第一升级方式来进行升级并导致数据业务的中断。但是,在一些应用场景中,有部分的互联设备是物理设备并且这些物理设备和通过数据处理器模拟得到的虚拟设备一起构成所述至少一个互联设备,而这些物理设备的设备升级、设备新增以及设备删除需要结合实际情况分析。例如,物理设备的设备升级,如果仅限于功能升级、代码更新或者固件升级等,一般不会导致设备类型的变化,也就是在步骤S204中被认定为不会改动所述至少一个互联设备的拓扑结构,这种情况下对该物理设备的设备升级适合所述第一升级方式。但是,物理设备的设备升级也可能涉及到设备替换或者其他导致设备类型变化的情况,也就使得在步骤S204中被认定为会改动所述至少一个互联设备的拓扑结构。此外,物理设备或者虚拟设备的设备新增和设备删除都使得在步骤S204中被认定为会改动所述至少一个互联设备的拓扑结构。进一步地,从提高系统稳定性和升级可靠性角度,需要考虑两个参考因素,一个参考因素是所述至少一个互联设备中的物理设备与虚拟设备各自的数量和比例也就是在升级前挂接的互联设备中的物理设备与虚拟设备各自的数量和比例。当所述至少一个互联设备中的物理设备的数量较多或者相对比例较高时,可能更适合第一升级方式也就是通过中断数据业务和卸载设备来实现设备升级,这是因为在物理设备数量较多或者相对比例较高的情况下通过所述第一升级方式能更好地提高系统稳定性和升级可靠性。另一个参考因素是所述一个或者多个互联设备中的物理设备与虚拟设备各自的数量和比例,也就是根据与所述升级请求对应的所述至少一个互联设备中的所述一个或者多个互联设备中的物理设备与虚拟设备各自的数量和比例。当所述升级请求指示对若干个互联设备进行设备升级时,这些与所述升级请求对应的互联设备中可能物理设备的数量或者相对比例较高,可能更适合第一升级方式也就是通过中断数据业务和卸载设备来实现设备升级。上述两个参考因素需要进行综合判断,或者可以设定权重、评分等机制,或者可以根据决策模型做出选择。
总之,图2所示的用于互联设备升级的方法,在执行升级请求来新增设备或者更新与升级请求对应的该一个或者多个互联设备的过程中,实现了尽量减轻对当前数据业务的干扰和中断,以及充分考虑到所述至少一个互联设备之间的各种可能的差异性,从而有利于提高系统稳定性和升级可靠性。
在一种可能的实施方式中,当所述升级请求指示新增设备时,所述升级请求改动所述至少一个互联设备的拓扑结构。在一些实施例中,当所述升级请求指示改动所述一个或者多个互联设备的设备类型时,所述升级请求改动所述至少一个互联设备的拓扑结构。在一些实施例中,所述至少一个互联设备的拓扑结构包括所述至少一个互联设备的数量、所述至少一个互联设备各自的设备类型以及所述至少一个互联设备之间的连接关系。如此,结合升级请求的具体内容为后续处理流程提供参考。
在一种可能的实施方式中,当所述升级请求指示对所述一个或者多个互联设备进行功能升级或者代码升级时,所述升级请求不改动所述至少一个互联设备的拓扑结构。这里,功能升级或者代码升级一般不改动设备类型或者基本运行原理,因此不改动拓扑结构。
在一种可能的实施方式中,所述至少一个互联设备均连接同一个外围器件互联总线。在一些实施例中,所述同一个外围器件互联总线是高速外围器件互联总线。在一些实施例中,所述至少一个互联设备均是高速外围器件互联总线设备。这里,高速外围器件互联总线设备可以是例如高速外围器件互联(Peripheral Component Interconnect Express,PCIE)或者类似的高速串行总线标准。
在一种可能的实施方式中,所述至少一个互联设备中的虚拟设备通过数据处理器模拟,所述数据处理器通过运行设备模拟器从而模拟所述至少一个互联设备中的虚拟设备以及通过运行高速外围器件互联总线模拟器从而模拟所述高速外围器件互联总线。在一些实施例中,所述至少一个互联设备是相对于与所述高速外围器件互联总线相关联的主机的高速外围器件互联总线设备,所述至少一个互联设备的数据业务是在所述主机和所述高速外围器件互联总线设备之间进行。这里,在数据中心的应用场景中,所述至少一个互联设备可以对应用在数据中心的数据处理器(data processing unit,DPU)所挂接的多个设备,包括由数据处理器模拟或者虚拟化生成的虚拟设备和/或物理连接的物理设备等。另外,所述至少一个互联设备中可能存在一个或者多个设备具有如单根输入输出虚拟化(SingleRoot I/O Virtualization,SR-IOV)功能、访问控制服务(Access Control Services,ACS)、可替换路由名称解释(Alternative Routing ID Interpretation,ARI)、基于消息信号中断扩展(Message Signaled Interrupt Extended,MSIX)。这些额外的功能可以是互联设备例如PCIE设备的扩展能力集状态。这些扩展能力集状态例如单根输入输出虚拟化功能需要在设备升级后重新配置。另外,所述互联设备还可以是基于主机侧的设备驱动程序具有如轮询机制驱动(Poll Mode Driver,PMD)。基于主机侧的设备驱动程序的例子如轮询机制驱动意味着,如果互联设备如PCIE设备在升级之前被主机侧的用户态轮询机制驱动加载,那么就需要在升级之前解除绑定并且在设备升级完成之后重新绑定。另外,所述至少一个互联设备各自可能具有不同配置的物理功能(Physical Function,PF)和/或虚拟功能(Virtual Function,VF),对于具体的物理功能/虚拟功能的设备,与其相关联的扩展能力集状态如单根输入输出虚拟化功能或者其被主机侧的设备驱动如轮询机制驱动加载,在通过所述第一升级方式来完成设备升级的流程中需要对此做出针对性地处理,例如解除绑定和重新绑定物理功能/虚拟功能的设备的轮询机制驱动以及重新配置物理功能/虚拟功能的设备的单根输入输出虚拟化功能。
在一种可能的实施方式中,所述第一升级方式包括对所述高速外围器件互联总线设备进行热插拔操作。在一些实施例中,所述第一升级方式还包括重新配置单根输入输出虚拟化功能或者重新绑定轮询机制驱动。这里,单根输入输出虚拟化(Single Root I/OVirtualization,SR-IOV)功能一般指的是将单个物理设备模拟成多个虚拟设备且每个虚拟设备可以分别绑定虚拟机从而用于分配给虚拟机使用。轮询机制驱动(Poll ModeDriver,PMD)一般指的是基于用户态的轮询机制的驱动,通过在用户空间中运行的驱动程序来配置设备及其各自的队列。
在一种可能的实施方式中,所述关闭所述至少一个互联设备的数据业务的通知功能包括防止所述高速外围器件互联总线设备接收由所述主机发送的数据,所述排空所述至少一个互联设备的数据业务的数据队列包括排空所述高速外围器件互联总线设备的发送队列和/或排空所述高速外围器件互联总线设备的接收队列。这里,相比于第一升级方式所采用的中断数据业务,通过排空发送队列和接收队列来排空所述至少一个互联设备的数据业务的数据队列,只是暂停数据发送和接收以及通过排空数据队列来提供了设备升级所需要的窗口。
在一种可能的实施方式中,所述第二升级方式还包括停止所述至少一个互联设备的控制队列。在一些实施例中,所述第二升级方式还包括保存所述至少一个互联设备的数据业务的数据队列和所述至少一个互联设备的控制队列分别在通过所述第二升级方式执行所述升级请求之前的队列状态。在一些实施例中,所述第二升级方式还包括保存所述高速外围器件互联总线设备在通过所述第二升级方式执行所述升级请求之前的高速外围器件互联总线配置空间状态,所述高速外围器件互联总线配置空间状态至少包括高速外围器件互联总线配置空间头状态和能力集状态。在一些实施例中,所述能力集状态包括所述高速外围器件互联总线设备的扩展能力集状态。如此,通过第二升级方式来完成设备升级,一方面不响应来自主机的请求也即关闭通知功能,另一方面在暂停数据发送和接收的前提下通过排空数据队列从而为设备升级提供必要的处理时间,进而使得可以通过软硬件状态的保存和恢复来执行所述升级请求。应当理解的是,所述第二升级方式暂停数据发送和接收,也意味着主机不感知到中断信号,因此不同于所述第一升级方式触发数据业务的中断。另外,所述第二升级方式不卸载设备而是排空数据业务的数据队列,也意味着主机驱动不卸载设备,因此不同于所述第一升级方式卸载当前挂接的互联设备。
在一种可能的实施方式中,所述第二升级方式还包括使用所保存的所述至少一个互联设备的数据业务的数据队列和所述至少一个互联设备的控制队列分别在通过所述第二升级方式执行所述升级请求之前的队列状态进行队列状态恢复操作,以及使用所保存的所述高速外围器件互联总线设备在通过所述第二升级方式执行所述升级请求之前的高速外围器件互联总线配置空间状态进行高速外围器件互联总线配置空间状态恢复操作。如此,通过第二升级方式来完成设备升级,一方面不响应来自主机的请求也即关闭通知功能,另一方面在暂停数据发送和接收的前提下通过排空数据队列从而为设备升级提供必要的处理时间,进而使得可以通过软硬件状态的保存和恢复来执行所述升级请求。
图3为本申请实施例提供的一种用于模拟互联设备中的虚拟设备的数据处理器的示意图。如图3所示,数据处理器300包括高速外围器件互联总线模拟器302和设备模拟器310以及设备模拟器312。应当理解的是,数据处理器300可以包括任意数量的设备模拟器用于模拟各种互联设备。所述至少一个互联设备中的虚拟设备通过数据处理器300模拟,所述数据处理器300通过运行设备模拟器310和设备模拟器312(还可以通过运行更多的或者任意数量的设备模拟器)从而模拟所述至少一个互联设备中的虚拟设备以及通过运行高速外围器件互联总线模拟器302从而模拟所述高速外围器件互联总线。所述至少一个互联设备是相对于与所述高速外围器件互联总线相关联的主机的高速外围器件互联总线设备,所述至少一个互联设备的数据业务是在所述主机和所述高速外围器件互联总线设备之间进行。图3中用主机320来指代相对于所述至少一个互联设备的主机。数据处理器300通过设备模拟器310和设备模拟器312模拟得到的虚拟设备,作为高速外围器件互联总线设备与主机320之间进行数据业务,类似于图1中所示的在后端系统和前端系统102之间的数据业务。应当理解的是,通过数据处理器300模拟的虚拟设备可以包括多种不同类型的标准化互联设备,例如高速外围器件互联设备也即PCIE设备。另外,通过数据处理器300模拟的虚拟设备之间可能具有差异性,如不同的类型、不同的异构计算架构以及软硬件等。另外,通过数据处理器300模拟的虚拟设备中的一个或者多个虚拟设备可能具有额外功能,例如单根输入输出虚拟化(Single Root I/O Virtualization,SR-IOV)功能、轮询机制驱动(Poll ModeDriver,PMD)、访问控制服务(Access Control Services,ACS)、可替换路由名称解释(Alternative Routing ID Interpretation,ARI)、基于消息信号中断扩展(MessageSignaled Interrupt Extended,MSIX)。
继续参阅图3,图3所示的数据处理器用于模拟互联设备中的虚拟设备,这些虚拟设备可能与物理设备一起构成所述至少一个互联设备。针对这些互联设备的设备升级,包括针对通过数据处理器300模拟的虚拟设备的设备升级,可以适用图2所示的用于互联设备升级的方法,包括适用上述任意实施例、实施方式及其组合。
因此,图3所示的数据处理器,在执行升级请求来新增设备或者更新与升级请求对应的该一个或者多个互联设备的过程中,实现了尽量减轻对当前数据业务的干扰和中断,以及充分考虑到所述至少一个互联设备之间的各种可能的差异性,从而有利于提高系统稳定性和升级可靠性。
参见图4,图4是本申请实施例提供的一种计算设备的结构示意图,该计算设备400包括:一个或者多个处理器410、通信接口420以及存储器430。所述处理器410、通信接口420以及存储器430通过总线440相互连接。可选地,该计算设备400还可以包括输入/输出接口450,输入/输出接口450连接有输入/输出设备,用于接收用户设置的参数等。该计算设备400能够用于实现上述的本申请实施例中设备实施例或者系统实施例的部分或者全部功能;处理器410还能够用于实现上述的本申请实施例中方法实施例的部分或者全部操作步骤。例如,该计算设备400执行各种操作的具体实现可参照上述实施例中的具体细节,如处理器410用于执行上述方法实施例中部分或者全部步骤或者上述方法实施例中的部分或者全部操作。再例如,本申请实施例中,计算设备400可用于实现上述装置实施例中一个或者多个部件的部分或者全部功能,此外通信接口420具体可用于为了实现这些装置、部件的功能所必须的通讯功能等,以及处理器410具体可用于为了实现这些装置、部件的功能所必须的处理功能等。
应当理解的是,图4的计算设备400可以包括一个或者多个处理器410,并且多个处理器410可以按照并行化连接方式、串行化连接方式、串并行连接方式或者任意连接方式来协同提供处理能力,或者多个处理器410可以构成处理器序列或者处理器阵列,或者多个处理器410之间可以分成主处理器和辅助处理器,或者多个处理器410之间可以具有不同的架构如采用异构计算架构。另外,图4所示的计算设备400,相关的结构性描述及功能性描述是示例性且非限制性的。在一些示例性实施例中,计算设备400可以包括比图4所示的更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。
处理器410可以有多种具体实现形式,例如处理器410可以包括中央处理器(central processingunit,CPU)、图形处理器(graphic processing unit,GPU)、神经网络处理器(neural-networkprocessing unit,NPU)、张量处理器(tensor processing unit,TPU)或数据处理器(data processing unit,DPU)等一种或多种的组合,本申请实施例不做具体限定。处理器410还可以是单核处理器或多核处理器。处理器410可以由CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(application-specificintegrated circuit,ASIC),可编程逻辑器件(programmable logicdevice,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。处理器410也可以单独采用内置处理逻辑的逻辑器件来实现,例如FPGA或数字信号处理器(digital signal processor,DSP)等。通信接口420可以为有线接口或无线接口,用于与其他模块或设备进行通信,有线接口可以是以太接口、局域互联网络(localinterconnect network,LIN)等,无线接口可以是蜂窝网络接口或使用无线局域网接口等。
存储器430可以是非易失性存储器,例如,只读存储器(read-onlymemory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electricallyEPROM,EEPROM)或闪存。存储器430也可以是易失性存储器,易失性存储器可以是随机存取存储器(randomaccess memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(doubledatarate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。存储器430也可用于存储程序代码和数据,以便于处理器410调用存储器430中存储的程序代码执行上述方法实施例中的部分或者全部操作步骤,或者执行上述设备实施例中的相应功能。此外,计算设备400可能包含相比于图4展示的更多或者更少的组件,或者有不同的组件配置方式。
总线440可以是快捷外围部件互连标准(peripheralcomponent interconnectexpress,PCIe)总线,或扩展工业标准结构(extended industry standard architecture,EISA)总线、统一总线(unified bus,Ubus或UB)、计算机快速链接(compute express link,CXL)、缓存一致互联协议(cache coherentinterconnect for accelerators,CCIX)等。总线440可以分为地址总线、数据总线、控制总线等。总线440除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请实施例还提供一种系统,该系统包括多个计算设备,每个计算设备的结构可以参照上述的计算设备的结构。该系统可实现的功能或者操作可以参照上述方法实施例中的具体实现步骤和/或上述装置实施例中所描述的具体功能,在此不再赘述。本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机设备(如一个或者多个处理器)上运行时可以实现上述方法实施例中的方法步骤。所述计算机可读存储介质的处理器在执行上述方法步骤的具体实现可参照上述方法实施例中所描述的具体操作和/或上述装置实施例中所描述的具体功能,在此不再赘述。本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的指令,当所述指令在计算机设备上运行时使得所述计算机设备执行上述方法实施例中的方法步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。本申请实施例可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(如软盘、硬盘、磁带)、光介质、或者半导体介质。半导体介质可以是固态硬盘,也可以是随机存取存储器,闪存,只读存储器,可擦可编程只读存储器,电可擦可编程只读存储器,寄存器或任何其他形式的合适存储介质。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并或删减;本申请实施例系统中的模块可以根据实际需要进行划分、合并或删减。如果本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (19)

1.一种用于互联设备升级的方法,其特征在于,所述方法包括:
接收与至少一个互联设备相关联的升级请求,所述升级请求对应所述至少一个互联设备中的一个或者多个互联设备或者指示新增设备;
当所述升级请求改动所述至少一个互联设备的拓扑结构时,通过第一升级方式执行所述升级请求,其中所述第一升级方式至少包括中断所述至少一个互联设备的数据业务以及卸载所述至少一个互联设备,通过所述第一升级方式执行所述升级请求发出两次中断信号,所述至少一个互联设备的拓扑结构包括所述至少一个互联设备的数量、所述至少一个互联设备各自的设备类型以及所述至少一个互联设备之间的连接关系;
当所述升级请求不改动所述至少一个互联设备的拓扑结构时,根据所述至少一个互联设备中的物理设备与虚拟设备各自的数量和比例以及与所述升级请求对应的所述至少一个互联设备中的所述一个或者多个互联设备中的物理设备与虚拟设备各自的数量和比例,选择性地通过所述第一升级方式执行所述升级请求或者通过第二升级方式执行所述升级请求,其中所述第二升级方式至少包括关闭所述至少一个互联设备的数据业务的通知功能以及排空所述至少一个互联设备的数据业务的数据队列,通过所述第二升级方式执行所述升级请求不发出中断信号,
其中,当所述至少一个互联设备中的物理设备的数量或者相对比例超过第一阈值时,选择通过所述第一升级方式执行所述升级请求,
当所述一个或者多个互联设备中的物理设备的数量或者相对比例超过第二阈值时,选择通过所述第一升级方式执行所述升级请求。
2.根据权利要求1所述的方法,其特征在于,当所述升级请求指示新增设备时,所述升级请求改动所述至少一个互联设备的拓扑结构。
3.根据权利要求2所述的方法,其特征在于,当所述升级请求指示改动所述一个或者多个互联设备的设备类型时,所述升级请求改动所述至少一个互联设备的拓扑结构。
4.根据权利要求1所述的方法,其特征在于,当所述升级请求指示对所述一个或者多个互联设备进行功能升级或者代码升级时,所述升级请求不改动所述至少一个互联设备的拓扑结构。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述至少一个互联设备均连接同一个外围器件互联总线。
6.根据权利要求5所述的方法,其特征在于,所述同一个外围器件互联总线是高速外围器件互联总线。
7.根据权利要求6所述的方法,其特征在于,所述至少一个互联设备均是高速外围器件互联总线设备。
8.根据权利要求7所述的方法,其特征在于,所述至少一个互联设备中的虚拟设备通过数据处理器模拟,所述数据处理器通过运行设备模拟器从而模拟所述至少一个互联设备中的虚拟设备以及通过运行高速外围器件互联总线模拟器从而模拟所述高速外围器件互联总线。
9.根据权利要求8所述的方法,其特征在于,所述至少一个互联设备是相对于与所述高速外围器件互联总线相关联的主机的高速外围器件互联总线设备,所述至少一个互联设备的数据业务是在所述主机和所述高速外围器件互联总线设备之间进行。
10.根据权利要求9所述的方法,其特征在于,所述第一升级方式包括对所述高速外围器件互联总线设备进行热插拔操作。
11.根据权利要求10所述的方法,其特征在于,所述第一升级方式还包括重新配置单根输入输出虚拟化功能或者重新绑定轮询机制驱动。
12.根据权利要求9所述的方法,其特征在于,所述关闭所述至少一个互联设备的数据业务的通知功能包括防止所述高速外围器件互联总线设备接收由所述主机发送的数据,所述排空所述至少一个互联设备的数据业务的数据队列包括排空所述高速外围器件互联总线设备的发送队列和/或排空所述高速外围器件互联总线设备的接收队列。
13.根据权利要求12所述的方法,其特征在于,所述第二升级方式还包括停止所述至少一个互联设备的控制队列。
14.根据权利要求13所述的方法,其特征在于,所述第二升级方式还包括保存所述至少一个互联设备的数据业务的数据队列和所述至少一个互联设备的控制队列分别在通过所述第二升级方式执行所述升级请求之前的队列状态。
15.根据权利要求14所述的方法,其特征在于,所述第二升级方式还包括保存所述高速外围器件互联总线设备在通过所述第二升级方式执行所述升级请求之前的高速外围器件互联总线配置空间状态,所述高速外围器件互联总线配置空间状态至少包括高速外围器件互联总线配置空间头状态和能力集状态。
16.根据权利要求15所述的方法,其特征在于,所述能力集状态包括所述高速外围器件互联总线设备的扩展能力集状态。
17.根据权利要求15所述的方法,其特征在于,所述第二升级方式还包括使用所保存的所述至少一个互联设备的数据业务的数据队列和所述至少一个互联设备的控制队列分别在通过所述第二升级方式执行所述升级请求之前的队列状态进行队列状态恢复操作,以及使用所保存的所述高速外围器件互联总线设备在通过所述第二升级方式执行所述升级请求之前的高速外围器件互联总线配置空间状态进行高速外围器件互联总线配置空间状态恢复操作。
18.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据权利要求1至17中任一项所述的方法。
19.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据权利要求1至17中任一项所述的方法。
CN202310083274.0A 2023-02-08 2023-02-08 一种用于互联设备升级的方法、介质及计算设备 Active CN115857995B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310083274.0A CN115857995B (zh) 2023-02-08 2023-02-08 一种用于互联设备升级的方法、介质及计算设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310083274.0A CN115857995B (zh) 2023-02-08 2023-02-08 一种用于互联设备升级的方法、介质及计算设备

Publications (2)

Publication Number Publication Date
CN115857995A CN115857995A (zh) 2023-03-28
CN115857995B true CN115857995B (zh) 2023-05-16

Family

ID=85657777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310083274.0A Active CN115857995B (zh) 2023-02-08 2023-02-08 一种用于互联设备升级的方法、介质及计算设备

Country Status (1)

Country Link
CN (1) CN115857995B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116302006B (zh) * 2023-05-18 2023-08-18 珠海星云智联科技有限公司 模拟器的热升级方法及相关装置
CN118054998B (zh) * 2024-04-15 2024-06-18 珠海星云智联科技有限公司 用于内核网络驱动的驱动器和驱动升级方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9753713B2 (en) * 2010-10-22 2017-09-05 Microsoft Technology Licensing, Llc Coordinated upgrades in distributed systems
US10333865B2 (en) * 2015-08-21 2019-06-25 Cisco Technology, Inc. Transformation of peripheral component interconnect express compliant virtual devices in a network environment
CN115408064A (zh) * 2021-05-28 2022-11-29 华为云计算技术有限公司 支持内核在线更新的方法、服务器和相关设备
CN113904938B (zh) * 2021-09-28 2022-04-29 北京大禹智芯科技有限公司 一种动态配置PCIe终端设备的系统和方法
CN114116129A (zh) * 2021-11-25 2022-03-01 浪潮云信息技术股份公司 基于OpenStack平台为虚拟机灵活透传PCI设备的方法及系统
CN115167892A (zh) * 2022-07-18 2022-10-11 深圳星云智联科技有限公司 软件升级方法及相关设备
CN115580943A (zh) * 2022-09-28 2023-01-06 Oppo广东移动通信有限公司 基于组网服务的通信方法和网络、终端设备及存储介质
CN115657553A (zh) * 2022-10-25 2023-01-31 珠海星云智联科技有限公司 Pcie拓扑和pcie设备模拟方法、装置、设备及介质

Also Published As

Publication number Publication date
CN115857995A (zh) 2023-03-28

Similar Documents

Publication Publication Date Title
CN115857995B (zh) 一种用于互联设备升级的方法、介质及计算设备
US10353714B1 (en) Non-disruptive upgrade of multipath drivers in information processing system
CN110063051B (zh) 用于重新配置服务器的系统和方法以及服务器
CN115858102B (zh) 一种用于部署支持虚拟化硬件加速的虚拟机的方法
EP3242440B1 (en) Fault tolerant method, apparatus and system for virtual machine
CN115858103B (zh) 用于开放堆栈架构虚拟机热迁移的方法、设备及介质
CN116257276B (zh) 支持虚拟化硬件加速的虚拟宿主机用户后端升级方法
CN117519908B (zh) 一种虚拟机热迁移方法、计算机设备及介质
WO2022143714A1 (zh) 服务器系统、虚拟机创建方法及装置
CN115840620B (zh) 一种数据通路构建方法、设备及介质
CN117909031A (zh) 用于数据处理单元的报文处理方法、计算机设备及介质
US20220147502A1 (en) Method to perform hash table lookup for keys wider than data path size
KR102692866B1 (ko) 컴퓨팅 자원 분할 운용 방법 및 장치
CN118331687B (zh) 用户态半虚拟化数据路径加速方法、设备、集群以及介质
CN116303154B (zh) 用于数据处理单元的基地址寄存器资源分配方法及介质
CN118331747B (zh) 用于数据处理器的转发方法、计算机设备及介质
CN118233414B (zh) 数据处理单元点对点通信方法、计算机设备及介质
CN118426913B (zh) 用于vDPA内存映射的方法、计算机设备及介质
CN118394453B (zh) 用户态半虚拟化设备创建以及删除系统、设备及集群
US20200174814A1 (en) Systems and methods for upgrading hypervisor locally
CN118250228B (zh) 基于硬件卸载的流量限速装置及方法
CN118055077B (zh) 用于总线带宽资源分配的方法、计算机设备及介质
CN118467277B (zh) 先进先出队列验证系统、方法、设备以及集群
US11953974B2 (en) Method for PCIe fallback in a CXL system
CN118394420B (zh) 一种驱动方法、计算机设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant