一种数据传输控制方法、设备及系统的制作方法

文档序号:9710781阅读:490来源:国知局
一种数据传输控制方法、设备及系统的制作方法
【技术领域】
[0001]本发明涉及通信技术领域,具体涉及一种数据传输控制方法、设备及系统。
【背景技术】
[0002]随着电信业务的不断发展,网络功能虚拟化的需求逐步增大,通过在服务器上设置虚拟机(英文virtual machine,简称:VM)可处理更多的数据信息,并能够灵活配置资源。VM可与外部物理网络连接,如通过交换机等设备与外部网络连接,从而获取外部用户的数据或为外部用户提供服务。
[0003]目前VM与物理网络进行连接的方式可采用虚拟边缘端口聚合多通道(英文:virtual edge port aggregat1n-multichannel,简称:VEPA-MultiChannel)等方式。通过VEPA-MultiChannel方式,每个VM可通过其对应的唯一逻辑通道直接与边缘交换机通信,边缘交换机的一个物理端口可以支持多个VM的逻辑通道。当某个VM的接收队列发生拥塞时,所述VM所在的服务器会向边缘交换机发送反压报文,所述边缘交换机根据接收到的所述反压报文暂停向所述VM发送数据。然而,现有技术中,边缘交换机收到反压报文后,会暂停所述VM的逻辑通道所在的物理端口上的所有的数据发送操作,导致通过所述物理端口通信的其他VM的接收效率下降。当所述边缘交换机上对应所述VM的接收队列发生拥塞时,交换机向所述VM发送反压报文,由于所述反压报文只能通过所述VM所在的服务器上的网卡(英文:network interface card,简称:NIC)发送,由于网卡控制了所有VM,因此,当所述网卡接收到所述反压报文后,暂停所述VM向所述边缘交换机发送数据时,实际就暂停了所有VM向所述边缘交换机发送数据,降低了其他VM的数据发送效率。
[0004]可见,现有技术中,当服务器上支持多个VM时,不能实现单个VM的数据传输控制。

【发明内容】

[0005]本发明公开了一种数据传输控制方法、设备及系统,用于实现单个VM的数据传输控制。
[0006]本发明第一方面公开一种数据传输控制方法,包括:
[0007]第一设备接收第二设备发送的暂停消息;其中,所述暂停消息包括暂停信息,所述暂停信息包括至少一个虚拟机的信息;
[0008]所述第一设备根据所述暂停信息获取所述至少一个虚拟机中每个虚拟机的虚拟机硬件地址,并获取所述每个虚拟机硬件地址对应的逻辑通道;
[0009]所述第一设备根据所述暂停消息暂停所述每个虚拟机硬件地址对应的逻辑通道上的数据传输。
[0010]在本发明第一方面的第一种可能的实现方式中,在所述第一设备接收第二设备发送的暂停消息之前,所述方法还包括:
[0011]所述第一设备获取虚拟机配置信息,所述虚拟机配置信息包括每个虚拟机的虚拟机硬件地址及虚拟机标识;
[0012]所述第一设备根据所述虚拟机配置信息建立每个虚拟机的逻辑通道。
[0013]结合本发明的第一方面的第一种可能的实现方式,在本发明第一方面的第二种可能的实现方式中,所述暂停消息还包括所述每个虚拟机的队列优先级标识;
[0014]其中,所述第一设备根据所述暂停消息暂停所述每个虚拟机硬件地址对应的逻辑通道上的数据传输,包括:
[0015]在每个虚拟机硬件地址对应的逻辑通道上,所述第一设备暂停所述每个虚拟机的队列优先级标识对应的数据的传输。
[0016]结合本发明的第一方面、第一方面的第一种或第二种可能的实现方式,在本发明第一方面的第三种可能的实现方式中,
[0017]所述至少一个虚拟机的信息为一个虚拟机的虚拟机硬件地址,所述虚拟机硬件地址不是所述暂停消息的源硬件地址或者目的硬件地址;
[0018]所述第一设备根据所述暂停信息获取所述至少一个虚拟机中每个虚拟机的虚拟机硬件地址包括:
[0019]所述第一设备从所述暂停信息中直接获取所述一个虚拟机的虚拟机硬件地址。
[0020]结合本发明的第一方面的第一种或第二种可能的实现方式,在本发明的第一方面的第四种可能的实现方式中,所述至少一个虚拟机的信息为至少一个虚拟机的虚拟机标识;
[0021]所述第一设备根据所述暂停信息获取所述至少一个虚拟机中每个虚拟机的虚拟机硬件地址包括:
[0022]所述第一设备根据所述至少一个虚拟机的虚拟机标识,以及所述虚拟机配置信息,获取所述至少一个虚拟机中每个虚拟机的虚拟机硬件地址。
[0023]结合本发明的第一方面、第一方面的第一种、第二种、第三种或第四种可能的实现方式,在本发明的第一方面的第五种可能的实现方式中,
[0024]所述第一设备建立并存储了暂停信息表,所述暂停信息表的每个表项至少包括虚拟机硬件地址;
[0025]所述方法还包括:
[0026]所述第一设备在所述暂停信息表为所述至少一个虚拟机中每个虚拟机的虚拟机硬件地址添加表项;
[0027]所述第一设备在每个添加的所述表项中设置暂停定时器以及暂停标记;
[0028]所述第一设备开启所述每个添加的表项中的暂停定时器,以分别对暂停所述每个虚拟机硬件地址对应的逻辑通道上的数据传输的操作计时。
[0029]结合本发明的第一方面的第五种可能的实现方式,在本发明第一方面的第六种可能的实现方式中,在所述第一设备根据所述暂停消息暂停所述每个虚拟机硬件地址对应的逻辑通道上的数据传输之后,所述方法还包括:
[0030]所述第一设备针对每个表项,检测所述表项中的暂停定时器是否到达设定时间或是否接收到所述第二设备发送的包括所述表项中的虚拟机硬件地址的恢复消息;
[0031]若所述第一设备检测到所述表项中的暂停定时器到达设定时间或接收到包括所述表项中的虚拟机硬件地址的所述恢复消息,则清除所述表项中的暂停标记;
[0032]所述第一设备重新启动所述表项中的虚拟机硬件地址对应的逻辑通道上的数据传输。
[0033]本发明的第二方面公开了一种数据传输控制设备,其特征在于,包括:
[0034]暂停消息接收模块,用于接收另一设备发送的暂停消息,其中,所述暂停消息包括暂停信息,所述暂停信息包括至少一个虚拟机的信息;
[0035]获取模块,用于根据所述暂停信息获取所述至少一个虚拟机中每个虚拟机的虚拟机硬件地址,并获取所述每个虚拟机硬件地址对应的逻辑通道;
[0036]传输模块,用于根据所述暂停消息暂停所述虚拟机硬件地址对应的虚拟机的逻辑通道上的数据传输。
[0037]结合本发明的第二方面,在本发明第二方面的第一种可能的实现方式中,所述设备还包括:
[0038]虚拟机配置信息获取模块,用于在所述暂停消息接收模块接收所述暂停消息之前,获取虚拟机配置信息,所述虚拟机配置信息包括每个虚拟机的虚拟机硬件地址及虚拟机标识;
[0039]通道建立模块,用于根据所述虚拟机配置信息获取模块获取的所述虚拟机配置信息,建立每个虚拟机的逻辑通道。
[0040]结合本发明的第二方面的第一种可能的实现方式,在本发明第二方面的第二种可能的实现方式中,所述暂停消息还包括所述每个虚拟机的队列优先级标识;
[0041]其中,所述传输模块具体用于:
[0042]在所述每个虚拟机硬件地址对应的逻辑通道上,暂停所述每个虚拟机的队列优先级标识对应的数据的传输。
[0043]结合本发明的第二方面、第二方面的第一种或第二种可能的实现方式,在本发明第二方面的第三种可能的实现方式中,所述至少一个虚拟机的信息为一个虚拟机的虚拟机硬件地址,所述虚拟机硬件地址不是所述暂停消息的源硬件地址或者目的硬件地址;
[0044]其中,所述获取模块具体用于:
[0045]从所述暂停信息中直接获取所述一个虚拟机的虚拟机硬件地址。
[0046]结合本发明的第二方面的第一种或第二种可能的实现方式,在本发明的第二方面第四种可能的实现方式中,所述至少一个虚拟机的信息为至少一个虚拟机的虚拟机标识;
[0047]其中,所述获取模块具体用于:
[0048]根据所述至少一个虚拟机的虚拟机标识,以及所述虚拟机配置信息,获取所述至少一个虚拟机中每个虚拟机的虚拟机硬件地址。
[0049]结合本发明的第二方面、第二方面的第一种、第二种、第三种或第四种可能的实现方式,在本发明的第二方面第五种可能的实现方式中,所述设备还包括:
[0050]信息表建立模块,用于建立并存储暂停信息表,所述暂停信息表的每个表项至少包括虚拟机硬件地址;
[0051]添加模块,用于在所述暂停信息表为所述每个虚拟机的虚拟机硬件地址添加表项;
[0052]设置模块,用于在每个添加的所述表项中设置暂停定时器以及暂停标记;
[0053]开启模块,用于开启所述每个添加的表项中的暂停定时器,以分别使所述暂停定时器对所述传输模块暂停所述每个虚拟机硬件地址对应的逻辑通道上的数据传输的操作计时。
[0054]结合本发明第二方面的第五种可能的实现方式,在本发明第二方面的第六种可能的实现方式中,所述设备还包括:
[0055]检测模块,用于在所述传输模块暂停所述每个虚拟机硬件地址对应的逻辑通道上的数据传输之后,针对每个表项,检测所述表项中的暂停定时器是否到达设定时间或是否接收到所述另一设备发送的包括所述表项中的虚拟机硬件地址的恢复消息;
[0056]清除模块,用于当所述检测模块检测到所述表项中的暂停定时器到达设定时间或接收到包括所述表项中的虚拟机硬件地址的所述恢复消息时,清除所述表项中的暂停标记;
[0057]重新启动模块,用于控制所述传输模块重新启动所述表项中的虚拟机硬件地址对应的逻辑通道上的数据传输。
[0058]本发明第三方面公开了一种数据传输控制系统,所述系统包括第一设备及第二设备,其中:
[0059]所述第一设备与所述第二设备共享虚拟机配置信息,所述虚拟机配置信息包括每个虚拟机的虚拟机硬件地址及虚拟机标识;
[0060]所述第一设备为本发明第二方面公开的所述数据传输控制设备;所述第二设备为本发明第二方面公开的所述另一设备。
[0061]本发明中,第一设备通过接收第二设备发送的包括虚拟机硬件地址的暂停消息,根据所述虚拟机硬件地址找到需要暂停数据传输的虚拟机,并暂停所述虚拟机硬件地址对应的虚拟机的逻辑通道上的数据传输,从而缓解了特定虚拟机的逻辑通道的拥塞,实现了单个虚拟机的数据传输控制,并且不影响其他虚拟机的数据传输,整体上提高了虚拟机的传输效率。
【附图说明】
[0062]为了更清楚地说明本发明实施例中的技术方案,下面将
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1