数据传输方法及相关设备技术

技术编号:15094784 阅读:80 留言:0更新日期:2017-04-07 22:18
本发明专利技术公开了一种数据传输方法,包括:当第一设备发送由自身的第一虚拟机产生的第一报文时,对第一报文进行分析,至少得到目标虚拟机的第一标识和第二标识,所述目标虚拟机位于所述至少一个第二设备的一个第二设备中;调用第一列表;依据第一标识和第二标识,判断在第一列表中是否存在有所述目标虚拟机所属的第二设备的设备标识;判断为存在时,发送第一报文至具有所述设备标识的第二设备,以使第二设备的所述目标虚拟机进行第一报文的接收。本发明专利技术实施例还公开了另一种数据传输方法、两种数据传输设备。能够有效减轻主机的传输负担,减少对云平台系统处理资源的占用。

Data transmission method and related equipment

The invention discloses a data transmission method, including: when the first device sends a first message generated by the first virtual machine itself when the first packet is analyzed, at least the first identification and the second identification target virtual machine, a second device of the target virtual machine in the at least one device second the first call list;; according to the first identification and the second identification, to determine whether there is the target virtual machine belongs to second devices in the first list of the equipment identification; for the judgment of existence, sending the first message to have the device identification second receiving equipment, in order to make the target virtual machine equipment second the first message. The embodiment of the invention also discloses a data transmission method and two data transmission equipment. It can effectively reduce the burden of the host, and reduce the occupation of the cloud platform.

【技术实现步骤摘要】

本专利技术涉及传输技术,具体涉及一种数据传输方法及相关设备
技术介绍
在云平台环境中,至少包括云平台系统及多个主机。云平台系统用于对多个主机进行管理与控制,例如通过为主机间建立基于通用路由封装(GREGenericRoutingEncapsulation)/虚拟局域网(VLAN,VirtualLocalAreaNetwork)/虚拟可扩展局域网VXLAN等协议的通信,而控制数据在主机间进行传输。实际上,每个主机上均通过安装有多层交换机OVS软件而运行有至少一个虚拟机,主机间的数据传输意在将由一个虚拟机产生的数据传输到另一个主机所运行的某个虚拟机上。当主机1所运行的虚拟机1要进行数据1的发送时,需要查询OVS中的流表,确定GRE/VXLAN端口,再进行基于GRE/VXLAN协议的报头封装,之后进入协议栈处理流程,根据隧道信息中的源网际协议(IP,InternetProtocol)地址与目的IP地址对数据1进行IP层报头的封装,再根据隧道信息中存储的目的IP查询路由表获取物理网卡信息及源媒体接入控制(MAC,MediaAccessControl)地址信息,再根据物理网卡信息和目的IP查询地址解析协议(ARP,AddressResolutionProtocol)表,获得目的MAC,从而再对数据1进行链路层报头的封装,通过确定出的网卡将封装好的报文发送出去。由此可见,在主机传输数据的过程中至少需要查询流表和路由表这两个表,r>在主机之间每进行一次数据传输就需要对这两个表查询一次,对于主机来说无疑增加了处理负担。另外,协议栈处理流程的处理时间较长,会占用大量的处理资源,不利于云平台环境的运行。
技术实现思路
为解决现有存在的技术问题,本专利技术实施例提供一种数据传输方法及相关设备,在数据在主机(虚拟机)之间进行传输时,能够有效减轻主机的传输负担,减少对云平台系统处理资源的占用。本专利技术实施例的技术方案是这样实现的:本专利技术实施例提供一种数据传输方法,应用于第一设备中,所述第一设备、至少一个第二设备通过各自运行的至少一个虚拟机进行通信;所述方法包括:当所述第一设备发送由自身的第一虚拟机产生的第一报文时,对第一报文进行分析,至少得到目标虚拟机的第一标识和第二标识,所述目标虚拟机为能够接收第一报文的虚拟机,所述第一标识为所述目标虚拟机的媒体接入控制MAC地址,所述第二标识为所述目标虚拟机所连接网络的网络标识,所述目标虚拟机位于所述至少一个第二设备的一个第二设备中;调用第一列表;依据第一标识和第二标识,判断在第一列表中是否存在有所述目标虚拟机所属的第二设备的设备标识;判断为存在时,发送第一报文至具有所述设备标识的第二设备,以使第二设备的所述目标虚拟机进行第一报文的接收。本专利技术实施例提供一种数据传输方法,应用于第二设备中,所述第二设备、至少一个第一设备通过各自运行的虚拟机进行通信;所述方法包括:缓存由第一设备发送的第一报文;对第一报文进行解析,至少得到在第二设备中所运行的至少一个虚拟机中能够接收第一报文的虚拟机的MAC地址;触发具有所述MAC地址的虚拟机进行第一报文的接收。本专利技术实施例提供一种数据传输设备,所述设备包括:第一分析单元,用于当所述设备发送由自身的第一虚拟机产生的第一报文时,对第一报文进行分析,至少得到目标虚拟机的第一标识和第二标识,所述目标虚拟机为能够接收第一报文的虚拟机,所述第一标识为所述目标虚拟机的媒体接入MAC地址,所述第二标识为所述目标虚拟机所连接网络的网络标识,所述目标虚拟机位于所述至少一个第二设备的一个第二设备中;第一调用单元,用于调用第一列表;第一判断单元,用于依据第一标识和第二标识,判断在第一列表中是否存在有所述目标虚拟机所属的第二设备的设备标识;第一发送单元,用于在第一判断单元判断为存在时,发送第一报文至具有所述设备标识的第二设备,以使第二设备的所述目标虚拟机进行第一报文的接收。本专利技术实施例提供一种数据传输设备,所述设备包括:第一存储单元,用于缓存由第一设备发送的第一报文;第一解析单元,用于对第一报文进行解析,至少得到在第二设备中所运行的至少一个虚拟机中能够接收第一报文的虚拟机的MAC地址;第一触发单元,用于触发具有所述MAC地址的虚拟机进行第一报文的接收。本专利技术实施例提供的数据传输方法及相关设备,所述方法包括:当第一设备发送由自身的第一虚拟机产生的第一报文时,对第一报文进行分析,至少得到目标虚拟机的第一标识和第二标识,所述目标虚拟机位于所述至少一个第二设备的一个第二设备中;调用第一列表;依据第一标识和第二标识,判断在第一列表中是否存在有所述目标虚拟机所属的第二设备的设备标识;判断为存在时,发送第一报文至具有所述设备标识的第二设备,以使第二设备的所述目标虚拟机进行第一报文的接收。能够有效减轻主机的传输负担,减少对云平台系统处理资源的占用。附图说明图1为本专利技术提供的应用于第一设备中的数据传输方法的第一实施例的实现流程示意图;图2为本专利技术提供的应用于第一设备中的数据传输方法的第二实施例的实现流程示意图;图3(a)、(b)为本专利技术提供的应用于第一设备中的数据传输方法的第三实施例的实现流程示意图;图4为本专利技术实施例中第一报文的GRE报头封装以及外部报头封装的示意图;图5为本专利技术实施例中第一报文的VXLAN报头封装以及外部报头封装的示意图;图6为本专利技术提供的应用于第二设备中的数据传输方法实施例的实现流程示意图;图7为本专利技术提供的数据传输设备实施例的组成结构示意图;图8为本专利技术提供的另一种数据传输设备实施例的组成结构示意图。具体实施方式以下结合附图对本专利技术的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本专利技术,并不用于限定本专利技术。实施例一本专利技术提供的数据传输方法的第一实施例,应用于第一设备中,该第一设备为一主机、具体是数据发送方的主机,该主机通过安装有OVS软件而运行有至少一个虚拟机。该主机通过自身运行的至少一个虚拟机与至少一个第二设备进行数据通信,第二设备也为主机、具体为数据接收方的主机。当然,当第二设备为数据发送方主机时,第一设备可以为数据接收方主机,对此本文不做具体限定。图1为本专利技术提供的数据传输方法的第一实施例的实现流程示意图;如图1所示,所述方法包括:步骤101:当所述第一设备发送由本文档来自技高网...

【技术保护点】
一种数据传输方法,应用于第一设备中,所述第一设备、至少一个第二设备通过各自运行的至少一个虚拟机进行通信;所述方法包括:当所述第一设备发送由自身的第一虚拟机产生的第一报文时,对第一报文进行分析,至少得到目标虚拟机的第一标识和第二标识,所述目标虚拟机为能够接收第一报文的虚拟机,所述第一标识为所述目标虚拟机的媒体接入控制MAC地址,所述第二标识为所述目标虚拟机所连接网络的网络标识,所述目标虚拟机位于所述至少一个第二设备的一个第二设备中;调用第一列表;依据第一标识和第二标识,判断在第一列表中是否存在有所述目标虚拟机所属的第二设备的设备标识;判断为存在时,发送第一报文至具有所述设备标识的第二设备,以使第二设备的所述目标虚拟机进行第一报文的接收。

【技术特征摘要】
1.一种数据传输方法,应用于第一设备中,所述第一设备、至少一个第二
设备通过各自运行的至少一个虚拟机进行通信;所述方法包括:
当所述第一设备发送由自身的第一虚拟机产生的第一报文时,
对第一报文进行分析,至少得到目标虚拟机的第一标识和第二标识,所述
目标虚拟机为能够接收第一报文的虚拟机,所述第一标识为所述目标虚拟机的
媒体接入控制MAC地址,所述第二标识为所述目标虚拟机所连接网络的网络
标识,所述目标虚拟机位于所述至少一个第二设备的一个第二设备中;
调用第一列表;
依据第一标识和第二标识,判断在第一列表中是否存在有所述目标虚拟机
所属的第二设备的设备标识;
判断为存在时,发送第一报文至具有所述设备标识的第二设备,以使第二
设备的所述目标虚拟机进行第一报文的接收。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当判断为在第一列表中不存在有所述目标虚拟机所属的第二设备的设备标
识时,
调用第二列表;
依据第二标识,判断在第二列表中是否存在有所述目标虚拟机所属的第二
设备的设备标识;
判断为存在时,发送第一报文至具有所述设备标识的第二设备,以使第二
设备的所述目标虚拟机进行第一报文的接收。
3.根据权利要求1或2所述的方法,在发送第一报文至具有所述设备标识
的第二设备之前,所述方法包括:
调用第三列表;
在第三列表中,依据所述设备标识,确定所述目标虚拟机所属的第二设备
的网际互联协议IP地址和MAC地址;
依据该IP地址和MAC地址,对第一报文进行封装,得到第二报文;
相应的,所述发送第一报文至具有所述设备标识的第二设备,包括:
发送第二报文至具有所述设备标识的第二设备。
4.根据权利要求3所述的方法,其特征在于,在调用第三列表之前,所述
方法还包括:
建立第三列表;
进一步的,所述建立第三列表,包括:
当所述第一设备接收到隧道建立指令时,所述指令用于建立所述第一设备
与至少一个第二设备之间的隧道通信的指令;
至少获取所述至少一个第二设备中每个第二设备的设备标识、IP地址及
MAC地址;
至少获取第一设备的第一标识;
将每个第二设备的设备标识、IP地址及MAC地址与所述第一设备的第一
标识进行对应记录,形成第三列表。
5.根据权利要求4所述的方法,其特征在于,在调用第一列表之前,所述
方法还包括:
建立第一列表;
进一步的,所述建立第一列表,包括:
确定第一设备所运行的每个虚拟机所连接网络的网络标识,得到至少一个
网络标识;
在至少一个第二设备中,确定符合第一预定条件的第二设备的设备标识,
得到至少一个设备标识,所述符合第一预定条件的第二设备为其上所运行的虚
拟机所连接网络的网络标识为所述至少一个网络标识;
确定运行有具有所述至少一个网络标识的虚拟机的第二设备;
将第一设备所运行的每个虚拟机的MAC地址、所述至少一个网络标识、
所述至少一个设备标识进行对应记录,形成第一列表。
6.根据权利要求2所述的方法,其特征在于,在调用第二列表之前,所述

\t方法还包括:
建立第二列表;
进一步的,所述建立第二列表,包括:
获取在第一设备中所运行的每个虚拟机所连接网络的网络标识,得到至少
一个网络标识;
在具有所述至少一个网络标识的至少一个网络中,确定每个网络中的第一
虚拟路由器,得到至少一个虚拟路由器;
确定每个第一虚拟路由器所在的第二设备的设备标识,得到至少一个设备
标识;
将所述至少一个网络标识、所述至少一个设备标识进行对应记录,得到所
述第二列表。
7.一种数据传输方法,应用于第二设备中,所述第二设备、至少一个第一
设备通过各自运行的虚拟机进行通信;所述方法包括:
缓存由第一设备发送的第一报文;
对第一报文进行解析,至少得到在第二设备中所运行的至少一个虚拟机中
能够接收第一报文的虚拟机的MAC地址;
触发具有所...

【专利技术属性】
技术研发人员:吉敏
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:北京;11

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

1