[发明专利]一种基于虚拟机的数据发送方法、接收方法及系统有效

专利信息
申请号: 201310076510.2 申请日: 2013-03-11
公开(公告)号: CN103176833A 公开(公告)日: 2013-06-26
发明(设计)人: 何冠森;张洁 申请(专利权)人: 华为技术有限公司
主分类号: G06F9/455 分类号: G06F9/455;H04L12/861
代理公司: 深圳市深佳知识产权代理事务所(普通合伙) 44285 代理人: 唐华明
地址: 518129 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 虚拟机 数据 发送 方法 接收 系统
【说明书】:

技术领域

发明涉及数据传输领域,特别是涉及一种基于虚拟机的数据发送方法、接收方法及系统。

背景技术

虚拟机(Virtual Machine)是指通过软件模拟的、具有完整硬件系统功能的,运行在一个完全隔离环境中的完整计算机系统。通过虚拟机软件,可以在一台物理计算机上模拟出一台或多台虚拟的计算机。虚拟机可以像真正的计算机那样进行工作,例如可以安装操作系统、安装应用程序、访问网络资源等等。

通常,虚拟机所在的物理计算机称为宿主机(Host),虚拟机自身称为客户机(Guest)。

在Xen虚拟机架构中,宿主机向客户机发送数据的过程主要是:宿主机的Netback(宿主机的后端虚拟网络设备)先对需要发送的数据包进行切包。切包可以将数据量较大的数据包拆分成多个数据量较小(不大于允许传输的最大值)的数据包。然后,Netback端将拆分后的数据包逐一发送至客户机的Netfront(客户机的前端虚拟网络设备)。Netfront逐一接收Netback发送的数据包,并逐一回复ACK(Acknowledgement)包,以告知Host“Guest已经对某个数据包接收成功”。

可见,现有技术中,基于虚拟机的数据发送、接收方法,需要对较大的数据包进行拆分,相对于拆分之前,拆分后得到的较小的数据包的数目较多,逐个传递数目较多的数据包,会导致Host和Guest的系统开销较大。另外,由于Guest对于每个数据包还需要逐一发送ACK包,导致对Guest的开销进一步增大。

发明内容

本发明的目的是提供一种基于虚拟机的数据发送方法、接收方法及系统,能够避免对较大的数据进行拆分,减少Host的系统开销。

为实现上述目的,本发明提供了如下方案:

根据本发明的第一方面的第一种可能的实现方式,本发明提供一种基于虚拟机的数据发送方法,所述方法应用于具有宿主机和客户机的虚拟机架构,所述方法包括:

宿主机的后端虚拟网络设备获取套接字缓冲区的数据;所述套接字缓冲区的数据的数据片段,采用链表形式存储,所述数据片段的大小与所述宿主机的物理网卡发送的数据包的大小相等;

将所述数据片段映射至共享内存区域,以便客户机从所述共享内存区域读取所述数据片段。

结合第一方面的第二种可能的实现方式,所述共享内存区域为IO环。

结合第一方面的第三种可能的实现方式,将所述数据片段映射至共享内存区域,包括:

对所述数据片段进行标识,以表明所述数据片段是采用链表形式存储的;

将标识后的数据片段映射至共享内存区域。

结合第一方面的第四种可能的实现方式,还包括:

获取客户机的前端虚拟网络设备支持的数据片段聚合方式;

当所述数据片段聚合方式表示所述客户机的前端虚拟网络设备只支持按照数组形式进行数据片段聚合时,

所述将所述数据片段映射至共享内存区域,包括:

每次将预设数目的数据片段映射至所述共享内存区域,所述预设数目小于或等于所述数组形式定义的数据片段的个数的最大值。

根据本发明的第二方面的第一种可能的实现方式,本发明提供一种基于虚拟机的数据接收方法,所述方法包括:

客户机的前端虚拟网络设备从所述共享内存区域中获取所述数据片段;其中,所述数据片段为宿主机的后端虚拟网络设备将套接字缓冲区中的数据的数据片段映射至所述共享内存区域而得到的结果,所述套接字缓冲区中的数据数据片段采用链表形式存储,所述数据片段的大小与所述宿主机的物理网卡发送的数据包的大小相等;

按照链表形式,将所述数据片段聚合为套接字缓冲区的数据。

结合第二方面的第二种可能的实现方式,所述将所述数据片段聚合为套接字缓冲区的数据,包括:

获取所述数据片段的链表属性;所述链表属性用于表示各个数据片段之间的顺序;

按照所述顺序,将所述数据片段聚合为套接字缓冲区的数据。

结合第二方面的两种可能的实现方式中的任意一种,所述方法还包括:

获取所述数据片段的存储标识;

当所述存储标识表示所述数据片段是采用数组形式存储时,按照数组形式,将所述数据片段聚合为套接字缓冲区的数据。

根据本发明的第三方面的第一种可能的实现方式,本发明提供一种基于虚拟机的数据发送系统,所述系统应用于具有宿主机和客户机的虚拟机架构,所述系统包括:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201310076510.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top