一种服务器系统以及数据处理的方法技术方案

技术编号:33545246 阅读:29 留言:0更新日期:2022-05-26 22:38
本申请公开了一种服务器系统以及数据处理的方法,通过卸载卡对接异构卡的扩展,故可由卸载卡负责处理异构卡的第二虚拟化设备的管控面,能够节省服务器的资源,有利于促进服务器的轻量化。本申请的服务器系统包括:服务器、卸载卡和异构卡,卸载卡与服务器连接,异构卡与卸载卡连接。其中,卸载卡用于记录卸载卡的第一虚拟化设备与异构卡的第二虚拟化设备的映射关系,根据映射关系实现服务器的云实例与异构卡的第二虚拟化设备之间的通信,其中,卸载卡的第一虚拟化设备直通至服务器的云实例,异构卡的第二虚拟设备直通至卸载卡。异构卡的第二虚拟设备直通至卸载卡。异构卡的第二虚拟设备直通至卸载卡。

【技术实现步骤摘要】
一种服务器系统以及数据处理的方法


[0001]本申请涉及计算机
,尤其涉及一种服务器系统以及数据处理的方法。

技术介绍

[0002]在云场景中,服务器上部署有云实例,例如,虚拟机(virtual machine,VM)等等。为了提高输入/输出(input/output,I/O)业务的处理速度,可将服务器中的一些I/O业务卸载至低成本的设备中执行,从而释放服务器的中央处理器(central processing unit,CPU)资源。这些用于卸载I/O业务的设备通常被称为卸载卡,例如,专用集成电路(application specific integrated circuit,ASIC)或现场可编程逻辑门阵列(field programmable gate array,FPGA)等等。
[0003]在某些云场景的特殊需求下,需要引入额外的异构卡,例如,图形处理器(graphics processing unit,GPU)、网络接口控制器(network interface controller,NIC)等等。一般地,可将这些异构卡直接与服务器连接,使得卸载卡、异构卡分别占用服务器的不同高速串行计算机扩展总线标准(peripheral component interconnect express,PCIE)接口。
[0004]异构卡通常支持单根I/O虚拟化(single-root I/O virtualization,SRIOV)功能,故异构卡可创建出虚拟化设备。由于这些虚拟化设备直通至服务器的云实例,故异构卡可基于这些虚拟化设备,实现与服务器的云实例之间的通信。
[0005]上述方案中,服务器直接对接异构卡的扩展,会增加管理面的复杂度。因此,前端服务器会被占用很多资源,这些资源用于处理异构卡的虚拟化设备的管控面,不符合前端服务器的轻量化趋势。

技术实现思路

[0006]本申请实施例提供了一种服务器系统以及数据处理的方法,通过卸载卡对接异构卡的扩展,故可由卸载卡负责处理异构卡的第二虚拟化设备的管控面,能够节省服务器的资源,有利于促进服务器的轻量化。
[0007]本申请实施例的第一方面提供了一种服务器系统,该服务器系统包括:服务器、卸载卡和异构卡,卸载卡与服务器连接,异构卡与卸载卡连接。其中,卸载卡用于记录卸载卡的第一虚拟化设备与异构卡的第二虚拟化设备的映射关系,根据映射关系实现服务器的云实例与异构卡的第二虚拟化设备之间的通信,其中,卸载卡的第一虚拟化设备直通至服务器的云实例,异构卡的第二虚拟设备直通至卸载卡。
[0008]在上述服务器系统中,卸载卡连接于服务器和异构卡之间。由于卸载卡的第一虚拟化设备直通至服务器的云实例,故卸载卡可基于第一虚拟化设备,实现与服务器的云实例之间的通信。更进一步地,由于异构卡的第二虚拟设备直通至卸载卡,故异构卡可基于第二虚拟设备,实现与卸载卡之间的通信。因此,卸载卡可作为异构卡和服务器的云实例之间的桥梁,实现异构卡和服务器的云实例之间的通信。由于卸载卡直接对接异构卡的扩展,故
可由卸载卡负责处理异构卡的第二虚拟化设备的管控面,能够节省服务器的资源,有利于促进服务器的轻量化。
[0009]在一种可能的实现方式中,服务器包括第一接口,卸载卡包括第二接口和第三接口,异构卡包括第四接口;第一接口与第二接口连接,第三接口和第四接口连接。前述实现方式中,卸载卡本身具有两个接口,卸载卡通过其中一个接口与服务器连接,通过另一个接口与异构卡连接,从而令卸载卡连接在卸载卡与服务器之间。
[0010]在一种可能的实现方式中,服务器系统还包括扩展卡,服务器包括第一接口,扩展卡包括第二接口、第三接口、第四接口和第五接口,卸载卡包括第六接口和第七接口,异构卡包括第八接口;第一接口和第二接口连接,第二接口和第三接口连接,第四接口和第五接口连接,第六接口和第三接口连接,第七接口和第四接口连接,第八接口和第五接口连接。前述实现方式中,服务器、卸载卡和异构卡分别连接在同一张拓展卡的不同接口上,通过设置拓展卡的接口之间的连接关系,使得卸载卡连接在卸载卡与服务器之间。
[0011]在一种可能的实现方式中,异构卡支持第一协议,卸载卡加载有与第一协议对应的第一驱动,服务器支持第二协议,且服务器的云实例加载有与第二协议对应的第二驱动;卸载卡具体用于通过第一驱动接收来自第二虚拟化设备的第一操作请求,第一操作请求符合第一协议的格式要求;卸载卡具体用于将第一操作请求转换为第二操作请求,第二操作请求符合第二协议的格式要求;卸载卡具体用于通过第一虚拟化设备将第二操作请求发送至第二驱动,以使得服务器的云实例基于第二操作请求,从服务器的云实例的内存读取目标数据或向服务器的云实例的内存写入目标数据。前述实现方式中,卸载卡通过第一驱动接收来自异构卡的第二虚拟化设备的第一操作请求后,可将第一操作请求转换为第二操作请求,第一操作请求符合第一协议的格式要求,第二操作请求符合第二协议的格式要求。然后,卸载卡通过第一虚拟化设备将第一操作请求发送至服务器的云实例的第二驱动,使得服务器的云实例基于第一操作请求完成相应的操作。因此,在本申请提供的服务器系统中,即使服务器的云实例仅加载第二驱动,也可以实现服务器的云实例与异构卡之间的通信。
[0012]在一种可能的实现方式中,卸载卡包括支持第二协议的引擎模块;卸载卡具体用于在确定异构卡启动后,加载第一驱动;卸载卡具体用于通过第一驱动获取异构卡的设备信息;卸载卡具体用于基于配置信息将引擎模块配置为第一虚拟化设备,配置信息为预置的信息;卸载卡具体用于通过第一虚拟化设备接收来自第二驱动的枚举结果,枚举结果用于指示服务器的云实例已检测到第一虚拟化设备;卸载卡具体用于基于设备信息和枚举结果构建异构卡的第二虚拟化设备与卸载卡的第一虚拟化设备之间的映射关系。前述实现方式中,卸载卡可基于配置信息将引擎模块配置为第一虚拟化设备,且可基于服务器的云实例的枚举结果和异构卡的设备信息,构建卸载卡的第一虚拟化设备与异构卡的第二虚拟化设备之间的映射关系。对于服务器一侧而言,引擎模块可呈现为第一虚拟化设备,故服务器的云实例可根据自身的需求对第一虚拟化设备发送信息。卸载卡通过第一虚拟化设备接收到该信息后,可基于卸载卡的第一虚拟化设备与异构卡的第二虚拟化设备之间的映射关系,将该信息发送至异构卡的第二虚拟化设备,从而实现服务器的云实例与异构卡之间的通信。
[0013]在一种可能的实现方式中,若第一操作请求为第一读请求,则卸载卡具体用于通过第一虚拟化设备,接收来自第二驱动的第二发送请求,第二发送请求符合第二协议的格
式要求,且第二发送请求用于指示服务器的云实例即将发送目标数据;卸载卡具体用于将第二发送请求转换为第一发送请求,第一发送请求符合第一协议的格式要求;卸载卡具体用于通过第一驱动将第一发送请求发送至第二虚拟化设备,以使得异构卡基于第一发送请求,通过第二虚拟化设备向卸载卡发送第一读请求。前述实现方式中,卸载卡通过第一虚拟化设备接收服务器的云实例的第二驱动的第二发送请求后,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务器系统,其特征在于,所述服务器系统包括:服务器、卸载卡和异构卡,所述卸载卡与所述服务器连接,所述异构卡与所述卸载卡连接;所述卸载卡,用于记录所述卸载卡的第一虚拟化设备与所述异构卡的第二虚拟化设备的映射关系,根据所述映射关系实现服务器的云实例与所述异构卡的第二虚拟化设备之间的通信,其中,所述卸载卡的第一虚拟化设备直通至所述服务器的云实例,所述异构卡的第二虚拟设备直通至所述卸载卡。2.根据权利要求1所述的服务器系统,其特征在于,所述服务器包括第一接口,所述卸载卡包括第二接口和第三接口,所述异构卡包括第四接口;所述第一接口与所述第二接口连接,所述第三接口和所述第四接口连接。3.根据权利要求1所述的服务器系统,其特征在于,所述服务器系统还包括扩展卡,所述服务器包括第一接口,所述扩展卡包括第二接口、第三接口、第四接口和第五接口,所述卸载卡包括第六接口和第七接口,所述异构卡包括第八接口;所述第一接口和所述第二接口连接,所述第二接口和所述第三接口连接,所述第四接口和所述第五接口连接,所述第六接口和所述第三接口连接,所述第七接口和所述第四接口连接,所述第八接口和所述第五接口连接。4.根据权利要求1至3任意一项所述的服务器系统,其特征在于,所述异构卡支持第一协议,所述卸载卡加载有与所述第一协议对应的第一驱动,所述服务器支持第二协议,且所述服务器的云实例加载有与所述第二协议对应的第二驱动;所述卸载卡具体用于通过所述第一驱动接收来自所述第二虚拟化设备的第一操作请求,所述第一操作请求符合所述第一协议的格式要求;所述卸载卡具体用于将所述第一操作请求转换为第二操作请求,所述第二操作请求符合所述第二协议的格式要求;所述卸载卡具体用于通过所述第一虚拟化设备将所述第二操作请求发送至所述第二驱动,以使得所述服务器的云实例基于所述第二操作请求,从所述服务器的云实例的内存读取目标数据或向所述服务器的云实例的内存写入所述目标数据。5.根据权利要求4所述的服务器系统,其特征在于,所述卸载卡包括支持所述第二协议的引擎模块;所述卸载卡具体用于在确定所述异构卡启动后,加载所述第一驱动;所述卸载卡具体用于通过所述第一驱动获取所述异构卡的设备信息;所述卸载卡具体用于基于配置信息将所述引擎模块配置为所述第一虚拟化设备,所述配置信息为预置的信息;所述卸载卡具体用于通过所述第一虚拟化设备接收来自所述第二驱动的枚举结果,所述枚举结果用于指示所述服务器的云实例已检测到所述第一虚拟化设备;所述卸载卡具体用于基于所述设备信息和所述枚举结果构建所述异构卡的第二虚拟化设备与所述卸载卡的所述第一虚拟化设备之间的映射关系。6.根据权利要求1至5任意一项所述的服务器系统,其特征在于,若所述第一操作请求为第一读请求,则所述卸载卡具体用于通过所述第一虚拟化设备,接收来自所述第二驱动的第二发送请求,所述第二发送请求符合所述第二协议的格式要求,且所述第二发送请求用于指示所述服务器的云实例即将发送所述目标数据;
所述卸载卡具体用于将所述第二发送请求转换为第一发送请求,所述第一发送请求符合所述第一协议的格式要求;所述卸载卡具体用于通过所述第一驱动将所述第一发送请求发送至所述第二虚拟化设备,以使得所述异构卡基于所述第一发送请求,通过所述第二虚拟化设备向所述卸载卡发送所述第一读请求。7.根据权利要求1至6任意一项所述的服务器系统,其特征在于,所述卸载卡具体用于通过所述第一虚拟化设备接收来自所述第二驱动的目标数据;所述卸载卡具体用于通过所述第一驱动将所述目标数据发送至所述第二虚拟化设备。8.根据权利要求6所述的服务器系统,其特征在于,若所述第一操作请求为第一读请求,所述第二操作请求为第二读请求,则所述卸载卡还用于通过所述第一虚拟化设备将所述第二读请求发送至所述第二驱动,以使得所述服务器的云实例基于所述第二读请求从所述服务器的云实例的内存中读取所述目标数据,并传输至所述第一虚拟化设备;所述卸载卡还用于将所述目标数据存储至所述卸载卡的内存中;所述卸载卡还用于通过所述第一驱动接收来自所述第二虚拟化设备的所述第一读请求;所述卸载卡还用于基于所述第一读请求从所述卸载卡的内存中读取所述目标数据;所述卸载卡还用于通过所述第一驱动将所述目标数据发送至所述第二虚拟化设备。9.根据权利要求1至5任意一项所述的服务器系统,其特征在于,若所述第一操作请求为第一写请求,则所述卸载卡具体用于通过所述第一驱动接收来自所述第二虚拟化设备的第一接收请求,所述第一接收请求符合所述第一协议的格式要求,且所述第一接收请求用于指示所述异构卡请求获取所述服务器的云实例的可用内存空间信息;所述卸载卡具体用于将所述第一接收请求转换为第二接收请求,所述第二接收请求符合所述第二协议的格式要求;所述卸载卡具体用于通过所述第一虚拟化设备将所述第二接收请求发送至所述第二驱动;所述卸载卡具体用于通过所述第一虚拟化设备接收来自所述第二驱动的所述可用内存空间信息;所述卸载卡具体用于通过所述第一驱动将可用内存空间信息发送至所述第二虚拟化设备,以使得所述异构卡基于所述可用内存空间信息,通过所述第二虚拟化设备向所述卸载卡发送所述第一写请求。10.一种数据处理的方法,其特征在于,所述方法应用于所述服务器系统,所述服务器系统包括:服务器、卸载卡和异构卡,所述卸载卡与所述服务器连接,所述异构卡与所述卸载卡连接;所述卸载卡记录所述卸载卡的第一虚拟化设备与所述异构卡的第二虚拟化设备的映射关系;所述卸载卡根据所述映射关系实现服...

【专利技术属性】
技术研发人员:于海鑫邹倩陈士阳
申请(专利权)人:华为云计算技术有限公司
类型:发明
国别省市:

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

1