【技术实现步骤摘要】
数据处理的方法、设备和服务器
本申请涉及服务器领域,并且更具体地,涉及数据处理的方法、设备和服务器。
技术介绍
在虚拟化场景中,虚拟机上的虚拟化输入/输出设备(virtualinput/outputdevice,Virtio)可以通过下述方式实现:全虚拟化(fullvirtualization)方式,这种方式通过虚拟机监控器(virtualmachinemonitor,VMM)来模拟Virtio实现,VMM会截获虚拟机发起的I\O请求,并通过软件模拟真实的硬件。VMM必须处理所有虚拟机发起的I\O请求,然后将所有的IO请求序列化为可以被底层硬件处理的单一I\O流。当虚拟机中的Virtio发起I\O请求时,虚拟机与虚拟机所在服务器之间会频繁地发生内核态与用户态切换等涉及上下文切换的操作,对I\O性能的影响较大。此外,当VMM模拟多个Virtio时,虚拟机所在服务器中的中央处理器(centralprocessingunit,CPU)的开销增大,性能降低。
技术实现思路
本申请提供一种数 ...
【技术保护点】
1.一种数据处理的方法,其特征在于,所述方法包括:/n服务器中的设备获取虚拟机发送的第一输入输出I/O请求,所述设备通过高速串行计算机扩展标准PCIe总线连接所述服务器,所述虚拟机运行在所述服务器上,所述设备向所述服务器提供多个虚拟功能VF,所述第一I/O请求为所述虚拟机针对所述多个VF中的任意一个VF发起的,所述第一I/O请求包括读操作或写操作,所述读操作用于对所述服务器的I/O设备执行读取数据操作,所述写操作用于对所述服务器的I/O设备执行写入数据操作,所述VF用于管理所述虚拟机的存储空间;/n所述设备根据所述第一I/O请求,从所述服务器的I/O设备中读取或写入数据。/n
【技术特征摘要】
1.一种数据处理的方法,其特征在于,所述方法包括:
服务器中的设备获取虚拟机发送的第一输入输出I/O请求,所述设备通过高速串行计算机扩展标准PCIe总线连接所述服务器,所述虚拟机运行在所述服务器上,所述设备向所述服务器提供多个虚拟功能VF,所述第一I/O请求为所述虚拟机针对所述多个VF中的任意一个VF发起的,所述第一I/O请求包括读操作或写操作,所述读操作用于对所述服务器的I/O设备执行读取数据操作,所述写操作用于对所述服务器的I/O设备执行写入数据操作,所述VF用于管理所述虚拟机的存储空间;
所述设备根据所述第一I/O请求,从所述服务器的I/O设备中读取或写入数据。
2.根据权利要求1所述方法,其特征在于,所述设备获取所述虚拟机发送的第一I/O请求,包括:
所述设备从第一队列获取第一描述符,所述第一描述符为所述虚拟机中的前端驱动对所述第一I/O请求处理后生成的,所述第一描述符用于指示所述第一I/O请求在所述服务器的内存中的存储位置,所述第一队列存储至所述服务器的内存,所述第一队列用于存储包括所述第一I/O请求在内的多个I/O请求的描述符;
所述设备根据所述第一描述符,从所述服务器的内存中获取所述第一I/O请求。
3.根据权利要求2所述的方法,其特征在于,所述设备包括描述符预取引擎与直接内存访问DMA引擎与存储器,所述设备从所述服务器为第一队列分配的存储空间中获取第一描述符,包括:
所述描述符预取引擎生成第二描述符,并将所述第二描述符发送至所述DMA引擎,所述第二描述符用于指示所述第一描述符在所述服务器为所述第一队列分配的存储空间中的存储位置;
所述DMA引擎根据所述第二描述符,通过DMA的方式从所述第一队获取所述第一描述符,并将所述第一描述符存储至所述设备的存储器中。
4.根据权利要求3所述的方法,其特征在于,所述设备包括中断产生模块与后端驱动,所述设备根据所述第一描述符,从所述服务器的内存中获取所述第一I/O请求,包括:
所述后端驱动通过处理所述中断产生模块发起的中断请求,从所述存储器中获取所述第一描述符,并将所述第一描述符发送至所述DMA引擎;
所述DMA引擎根据所述第一描述符,通过DMA的方式从所述服务器的内存中获取所述第一I/O请求。
5.根据权利要求3或4所述的方法,其特征在于,所述设备还包括I/O设备引擎,所述设备根据所述第一I/O请求从所述服务器的I/O设备中读取或写入数据,包括:
当所述第一I/O请求为所述读操作时,所述后端驱动根据所述第一I/O请求,生成读数据报文,所述读数据报文用于指示待读取的目标数据在所述I/O设备中的存储位置,所述读数据报文还用于指示读取到的所述目标数据在所述设备的存储器中的存储位置;
所述后端驱动通过所述I/O设备引擎向所述I/O设备发送所述读数据报文;
所述后端驱动通知所述DMA引擎将存储在所述设备的存储器中的所述目标数据存储至所述服务器的内存中。
6.权利要求3或4所述的方法,其特征在于,所述设备根据所述第一I/O请求从所述服务器的I/O设备中读取或写入数据,包括:
当所述第一I/O请求为所述写操作时,所述DMA引擎从所述服务器的内存中获取待写入I/O设备的目标数据,并将所述目标数据写入所述设备的存储器中;
所述后端驱动根据所述第一I/O请求,生成写数据报文,所述写数据报文用于指示所述目标数据在所述存储器中的存储位置,所述写数据报文还用于指示将所述目标数据存储至所述I/O设备的存储位置;
所述后端驱动向所述I/O设备发送所述写数据报文。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
在所述第一I/O请求处理完成之后,所述后端驱动通过所述DMA引擎向所述服务器发送中断请求,所述中断请求用...
【专利技术属性】
技术研发人员:阙鸣健,王俊捷,周敏均,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。