当前位置: 首页 > 专利查询>复旦大学专利>正文

支持混合虚拟环境的RDMA虚拟化装置制造方法及图纸

技术编号:36327878 阅读:61 留言:0更新日期:2023-01-14 17:36
本发明专利技术提供一种支持混合虚拟环境的RDMA虚拟化装置,其特征在于,包括:虚拟机;容器;物理RDMA网卡;以及虚拟层,与虚拟机接口、容器接口以及物理RDMA网卡分别相通信连接,虚拟层具有对物理RDMA网卡进行虚拟化得到的虚拟RDMA网卡、转换模块、路由规则存储模块、连接管理模块、资源映射模块,虚拟RDMA网卡与虚拟机以及容器一一对应,转换模块对来自虚拟机接口的RDMA命令信息进行转换,使其与容器格式一致,虚拟RDMA网卡收到来自于虚拟机以及容器发送的连接请求命令时,虚拟层创建对应RDMA资源,将该RDMA资源映射给虚拟机以及容器,连接管理模块基于预先配置的路由规则建立虚拟机与容器之间的RDMA连接,使得虚拟机以及容器之间能够通过物理RDMA网卡直接访问彼此的RDMA资源。够通过物理RDMA网卡直接访问彼此的RDMA资源。够通过物理RDMA网卡直接访问彼此的RDMA资源。

【技术实现步骤摘要】
支持混合虚拟环境的RDMA虚拟化装置


[0001]本专利技术属于计算机网络
,具体涉及一种支持混合虚拟环境的RDMA虚拟化装置。

技术介绍

[0002]随着软件应用规模的扩张和计算机底层硬件的发展,云计算越来越流行。云计算的虚拟化基础是容器和虚拟机,两者各自的优势不同,容器具有低损耗、快启动的轻量级特点,虚拟机具有强隔离的优势。目前,两者混合的虚拟环境在云计算中越来越普遍。在同一集群中,对于虚拟机和容器的混合虚拟化环境,需要集中的虚拟化管理平台,以增加资源的利用率,降低管理维护的复杂性,适用动态变化的业务需求。
[0003]传统的TCP网络,难以满足云计算环境中的数据传输需求。RDMA(Remote Direct Memory Access,远程直接数据存取)网络作为一种高性能的新型网络,广泛应用于各数据中心的云计算环境中,为深度学习、大数据系统、分布式存储等数据密集型应用提供服务。RDMA网络通过绕过操作系统,零拷贝,硬件协议栈等技术,具备了高吞吐量,低延迟,低CPU负载的特点。
[0004]在混合的虚拟化环境中,虚拟机和容器中的应用利用RDMA的高性能,需要一个统一的RDMA虚拟化框架。然而,由于RDMA网络与TCP的差异,已有的TCP网络虚拟化技术难以适应于RDMA。同时,已有的RDMA虚拟化方案也无法兼容虚拟机和容器,因此,统一的RDMA虚拟化框架对于混合虚拟环境十分重要。
[0005]目前,已有的网络虚拟化大多是传统网络的虚拟化,王磊、詹剑锋等人针对传统的网络进行了高性能的虚拟化(参见《多内核操作系统实现方法和实现装置及系统》,CN104077266B),吴韬、王颢等人实现了一种在虚拟化环境中管理资源的系统,对于包括计算,存储和网络的资源进行管理,该系统通过InfiniBand(无限带宽技术)连接的文件、桥接、存储和管理监视器为虚拟化系统提供高速的网络服务,该系统虽然在虚拟环境中运用了RDMA技术,但与RDMA虚拟化无关(参见《一种基于多操作系统的多内核处理装置》,CN104951374A),目前仍然缺乏与RDMA虚拟化相关,尤其是混合虚拟环境下的通用RDMA虚拟化框架。

技术实现思路

[0006]为解决上述问题,提供一种高性能的、支持混合虚拟环境的RDMA虚拟化装置,本专利技术采用了如下技术方案:
[0007]本专利技术提供了一种支持混合虚拟环境的RDMA虚拟化装置,其特征在于,包括:至少一个虚拟机,具有虚拟机接口;至少一个容器,具有容器接口;物理RDMA网卡;以及虚拟层(即主机虚拟层),与虚拟机接口、容器接口以及物理RDMA网卡分别相通信连接,其中,虚拟层具有对物理RDMA网卡进行虚拟化得到的多个虚拟RDMA网卡、转换模块、路由规则存储模块、连接管理模块、资源映射模块、控制模块,虚拟RDMA网卡与虚拟机以及容器一一对应,转
换模块用于对来自虚拟机接口的RDMA命令信息进行转换,使该RDMA命令信息的命令格式与容器接口的命令格式相一致,RDMA命令信息至少包括连接请求命令,路由规则存储模块存储有预先配置的路由规则,当虚拟RDMA网卡接收到来自于虚拟机以及容器发送的连接请求命令时,虚拟层就创建对应的RDMA资源,并通过资源映射模块将该RDMA资源映射给虚拟机以及容器,连接管理模块基于预先配置的路由规则建立虚拟机与容器之间的RDMA连接,使得虚拟机以及容器之间能够通过物理RDMA网卡直接访问彼此的RDMA资源。
[0008]根据本专利技术提供的支持混合虚拟环境的RDMA虚拟化装置,还可以具有这样的技术特征,其中,连接管理模块具有获取单元、判断单元以及连接创建单元,获取单元,从路由规则存储模块中获取预先配置的路由规则,判断单元,根据预设的路由规则,判断是否允许建立虚拟机与容器之间的RDMA连接,连接创建单元,用于在判断单元判断为是时,基于预设的路由规则建立虚拟机与容器之间的RDMA连接,使得虚拟机以及容器之间能够通过物理RDMA网卡直接访问彼此的RDMA资源。
[0009]根据本专利技术提供的支持混合虚拟环境的RDMA虚拟化装置,还可以具有这样的技术特征,其中,连接管理模块还具有资源销毁单元,RDMA命令信息还包括资源销毁命令,当虚拟RDMA网卡接收到来自于虚拟机以及容器发送的资源销毁命令时,资源销毁单元就销毁对应的RDMA资源,并关闭对应的物理RDMA网卡设备。
[0010]专利技术作用与效果
[0011]根据本专利技术提供的支持混合虚拟环境的RDMA虚拟化装置,由于具有转换模块,统一管理的虚拟层,具有统一接口的虚拟RDMA网卡,因此为混合的虚拟化环境中的虚拟机和容器提供了统一的RDMA虚拟化框架,这种框架与传统网络虚拟化方法不同,能够使得这些虚拟机和容器能利用RDMA的高性能。
[0012]同时,本专利技术中的RDMA虚拟化的过程中,资源映射模块将资源和数据映射到用户应用空间,因此,在传输数据时可以绕过虚拟层,物理RDMA网卡可以直接访问虚拟机以及容器中RDMA资源中的内容,避免了转发到虚拟层的延迟,实现了零拷贝,虚拟机以及容器的RDMA性能与原生RDMA的性能接近,也不同于现有的RDMA虚拟化方法。
附图说明
[0013]图1是本专利技术实施例的RDMA虚拟化装置的结构框图;
[0014]图2是本专利技术实施例的RDMA虚拟化装置的连接示意图;
[0015]图3是本专利技术实施例的虚拟RDMA连接管理示意图;
[0016]图4是本专利技术实施例的RDMA资源映射示意图;以及
[0017]图5是本专利技术实施例的RDMA工作流程图。
具体实施方式
[0018]为了使本专利技术实现的技术手段、创作特征、达成目的与功效易于明白了解,以下结合实施例及附图对本专利技术的支持混合虚拟环境的RDMA虚拟化装置作具体阐述。
[0019]<实施例>
[0020]本实施例的支持混合虚拟环境的RDMA虚拟化装置为具备RDMA物理网卡的服务器集群,服务器操作系统为Linux,虚拟层通过Unix套接字监听请求。
[0021]图1是本专利技术实施例的RDMA虚拟化装置的结构框图,图2是本专利技术实施例RDMA虚拟化装置的连接示意图。
[0022]如图1及图2所示,支持混合虚拟环境的RDMA虚拟化装置1包括虚拟机11、容器12、虚拟层13、物理RDMA网卡14。
[0023]虚拟机11以及容器12均运行有应用,均具有接口,用于通过接口发出连接请求命令以及资源销毁命令,以及连接建立后用于传输数据。
[0024]虚拟层13用于统一集中管理虚拟机11以及容器12的RDMA使用。
[0025]如图1所示,虚拟层13具有转换模块21、虚拟RDMA网卡22、连接管理模块23、资源映射模块24、控制模块25、路由规则存储模块26。
[0026]转换模块21与虚拟机11一一对应,用于将虚拟机11发出的命令信息格式转换为与容器的格式一致。
[0027]虚拟RDMA网卡22与虚拟机11以及容本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种支持混合虚拟环境的RDMA虚拟化装置,其特征在于,包括:至少一个虚拟机,具有虚拟机接口;至少一个容器,具有容器接口;物理RDMA网卡;以及,虚拟层,与所述虚拟机接口、容器接口以及所述物理RDMA网卡分别相通信连接,其中,所述虚拟层具有对所述物理RDMA网卡进行虚拟化得到的多个虚拟RDMA网卡、转换模块、路由规则存储模块、连接管理模块、资源映射模块,所述虚拟RDMA网卡与所述虚拟机以及所述容器一一对应,所述转换模块用于对来自所述虚拟机接口的RDMA命令信息进行转换,使该RDMA命令信息的命令格式与所述容器接口的命令格式相一致,所述RDMA命令信息至少包括连接请求命令,所述路由规则存储模块存储有预先配置的路由规则,当所述虚拟RDMA网卡接收到来自于所述虚拟机以及所述容器发送的所述连接请求命令时,所述虚拟层就创建对应的RDMA资源,并通过所述资源映射模块将该RDMA资源映射给所述虚拟机以及所述容器,所述连接管理模块基于所述路由规则建立所述虚拟机与所述容器之间的RDMA连接,使得所述虚拟...

【专利技术属性】
技术研发人员:张为华蒋金虎刘强
申请(专利权)人:复旦大学
类型:发明
国别省市:

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

1