中文引用格式: 戴华昇,易见雨,淡唯,等. UniRDMA:面向混合虚拟环境的统一虚拟RDMA[J]. 电子技术应用,2026,52(7):82-90.
英文引用格式: Dai Huasheng,Yi Jianyu,Dan Wei,et al. UniRDMA : unified virtual RDMA for hybrid virtual environments[J]. Application of Electronic Technique,2026,52(7):82-90.
引言
RDMA(Remote Direct Memory Access,远程直接内存访问)技术是一种通过网络进行的,允许数据直接从一台机器的程序内存传输到另一台机器的程序内存的零拷贝数据传输方式。借助商业硬件的支持[1-3],这一传输操作无需CPU或操作系统的参与。这项技术使得机器之间能够进行低延迟和高性能的数据交换,并广泛应用于各种高性能分布式系统[4-6]、深度学习框架[7-8]和大数据系统[9-10]。
如今的分布式环境(如数据中心),通常以虚拟机或容器的形式进行虚拟化。由于这两种形式各有优点,当前的趋势是将虚拟机和容器并行运行[11]。RDMA要么像HyV[12]和MasQ[13]那样为虚拟机虚拟化,要么像FreeFlow[14]那样为容器虚拟化,或者通过硬件虚拟化的直通方法专门分配给虚拟机或容器[15]。
对于混合虚拟化环境,RDMA的虚拟化应考虑以下四方面:
(1)统一性:无论RDMA资源是由虚拟机还是容器使用,都应该由一个统一的RDMA虚拟化框架来管理。
(2)高性能:虚拟RDMA的性能应该接近硬件虚拟化或裸机RDMA的性能,无论是在吞吐量、延迟还是CPU负载方面。
(3)兼容性:RDMA虚拟化框架应具有清晰、稳定的特性,适用于不同的环境,并且对虚拟化栈中的其他软件(如RDMA内核驱动程序)有最小依赖。
(4)高可管理性:应提供基本的云环境管理能力,如资源共享、性能隔离、虚拟网络管理和可移植性。
然而,现有的RDMA虚拟化技术无法解决混合虚拟化栈的问题,在这种栈中,虚拟机、容器以及其他形式的虚拟化(例如嵌套在虚拟机中的容器[16])共存于同一数据中心,甚至同一台机器上。FreeFlow[14]是为容器设计的,但由于其RDMA操作未绕过路由器和操作系统内核,因此无法实现最佳性能。HyV[12]和MasQ[13]是为虚拟机设计的,它们的虚拟化层位于内核空间,这增加了操作系统内核被攻击的风险。其虚拟化层依赖于硬件特定的RDMA内核驱动程序,而这些驱动程序的接口稳定性较差。对于SR-IOV[15]等直通解决方案,一个RDMA资源被专门分配给特定的虚拟机或容器。这种静态的资源分配导致利用率低下。此外,还需要根据虚拟化RDMA网络的策略配置物理交换机或路由器,进一步增加了管理的复杂性。
为满足上述四项需求,本文提出了一种适用于数据中心混合虚拟化环境的统一RDMA虚拟化框架,即uniRDMA。该框架由多个vRNIC(虚拟RDMA网络接口控制器)、每台服务器上的uniRDMA核心以及一个集中管理节点组成。每个vRNIC包含一个前端和一个后端。前端是一个代理,在客户空间中表现为一个类似NIC设备的组件,与后端进行通信。后端实现了具有基本RDMA属性,如QP(队列对)和MR(内存区域)的虚拟设备模型。后端可以通过标准库接口[17]与不同的RDMA内核驱动程序进行交互。为实现最佳性能,存储RDMA元数据的内存会同时映射到前端和后端。uniRDMA核心旨在管理主机的虚拟和物理RDMA资源,包括实例化vRNIC后端、管理虚拟RDMA网络配置和策略。此外,uniRDMA核心还通过Verbs库[17]与物理RNIC进行交互。管理节点负责维护和协调各个服务器的控制策略,例如ACL(网络访问控制列表)和QoS(服务质量)。
本文实现了uniRDMA系统,并对其吞吐量、延迟和可扩展性进行了评估。结果表明,uniRDMA在混合虚拟化环境中的性能接近SR-IOV和裸机RDMA。在简单网络操作评估(吞吐量和延迟)中,与SR-IOV(硬件虚拟化)相比,uniRDMA在虚拟机中的性能下降不到4%,相较于裸机RDMA,在容器中的性能下降约10%。此外,uniRDMA具有高可扩展性,并能够适应混合虚拟化环境中的实际RDMA应用。在使用实际应用程序进行评估时,uniRDMA表现出与SR-IOV和裸机RDMA相近的性能。
本文详细内容请下载:
http://www.chinaaet.com/resource/share/2000007145
作者信息:
戴华昇1,2,易见雨1,2,淡唯1,颜峻3,蒋金虎1,2,张为华1,2
(1.复旦大学 计算与智能创新学院,上海 200438;
2.复旦大学 大数据研究院,上海 200438;
3.网络空间部队信息工程大学,河南 郑州 450002)

