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

文档序号:9710781阅读:来源:国知局
对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0063]图1是本发明实施例公开的一种数据传输控制方法的流程图;
[0064]图2是本发明实施例公开的另一种数据传输控制方法的流程图;
[0065]图3时本发明实施例公开的一种暂停消息的帧格式的结构示意图;
[0066]图4是本发明实施例公开的一种数据传输控制设备的结构图;
[0067]图5是本发明实施例公开的另一种数据传输控制设备的结构图;
[0068]图6是本发明实施例公开的又一种数据传输控制设备的结构图;
[0069]图7是本发明实施例公开的一种数据传输控制系统示意图。
[0070]具体实现方式
[0071]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都是本发明保护的范围。
[0072]本发明公开了一种数据传输控制方法、装置及系统,可分别控制不同虚拟机的逻辑通道上的数据传输。以下分别参照附图进行详细说明。
[0073]参见图1,为本发明实施例公开的一种数据传输控制方法的流程图。如图1所示,该数据传输控制方法可包括以下步骤。
[0074]步骤S101,第一设备接收第二设备发送的暂停消息,其中,所述暂停消息包括暂停信息,所述暂停信息包括至少一个虚拟机的信息。
[0075]步骤S102,所述第一设备根据所述暂停信息获取所述至少一个虚拟机中每个虚拟机的虚拟机硬件地址,并获取所述每个虚拟机硬件地址对应的逻辑通道。
[0076]步骤S103,所述第一设备根据所述暂停消息暂停所述每个虚拟机硬件地址对应的逻辑通道上的数据传输。
[0077]在本发明实施例中,可存在以下两种情况:
[0078]1、第一设备为交换机,第二设备为服务器。
[0079]交换机向服务器上的虚拟机传输数据,当服务器检测到所述虚拟机的逻辑通道出现拥塞时,可向交换机发送暂停消息,其中,暂停消息包括暂停信息,暂停信息可包括至少一个虚拟机的信息,虚拟机的信息可为出现拥塞的一个虚拟机的硬件地址,例如媒体访问控制(英文:Media Access Control,缩写:MAC)地址或至少一个虚拟机的虚拟机标识,当暂停信息包括一个虚拟机的硬件地址时,即表明一个虚拟机的数据传输出现拥塞,当暂停信息包括至少一个虚拟机的虚拟机标识时,即表明多个虚拟机的数据传输出现拥塞。该虚拟机的硬件地址并非当前暂停消息中存在的源硬件地址或目的硬件地址。暂停消息中的源硬件地址为服务器的硬件地址,目的硬件地址为交换机的硬件地址。若暂停消息中不存在虚拟机的硬件地址,则交换机仅能根据源硬件地址找到对应的服务器,而无法找到特定的虚拟机,从而无法实现对虚拟机的数据传输控制。当交换机接收到暂停消息时,可查找出暂停消息中的虚拟机MAC地址对应的虚拟机的逻辑通道,并暂停该逻辑通道上的数据传输。
[0080]当接收到暂停信息时,可根据暂停信息获取到虚拟机的硬件地址,若暂停信息包括一个虚拟机的硬件地址时,则可根据该虚拟机的硬件地址获取对应的逻辑通道;若暂停信息包括至少一个虚拟机的虚拟机标识时,由于虚拟机标识、虚拟机硬件地址及虚拟机逻辑通道之间关系为一一对应,则可获取至少一个虚拟机中每个虚拟机的虚拟机硬件地址,从而可获取每个虚拟机硬件地址对应的逻辑通道。
[0081]可选的,交换机可预先从服务器上获取虚拟机配置信息,所述虚拟机配置信息包括每个虚拟机的MAC地址以及虚拟机标识,交换机可根据该虚拟机配置信息建立与每个虚拟机进行数据传输的逻辑通道,该逻辑通道可与虚拟机的MAC地址及相应的虚拟机标识一一对应,即交换机可通过一逻辑通道向其唯一对应的虚拟机传输数据。
[0082]2、第一设备为服务器,第二设备为交换机。
[0083]服务器上的虚拟机通过逻辑通道向交换机传输数据,交换机可监控逻辑通道的拥塞程度,根据所述逻辑通道的拥塞程度,向服务器发送暂停消息,其中,暂停消息中包括暂停信息,暂停信息可包括至少一个虚拟机的信息,虚拟机的信息可为出现拥塞的一个虚拟机的硬件地址或至少一个虚拟机的虚拟机标识,当暂停信息包括一个虚拟机的硬件地址时,即表明一个虚拟机的数据传输出现拥塞,当暂停信息包括至少一个虚拟机的虚拟机标识时,即表明多个虚拟机的数据传输出现拥塞。服务器可根据交换机发送的暂停信息,暂停对应的虚拟机的逻辑通道上的数据传输。该虚拟机的硬件地址并非当前暂停消息中存在的源硬件地址或目的硬件地址。暂停消息中的源硬件地址为交换机的硬件地址,目的硬件地址为服务器的硬件地址。若暂停消息中不存在虚拟机的硬件地址,则服务器仅能暂停服务器中全部虚拟机的数据传输,从而无法实现对虚拟机的数据传输控制。
[0084]可选的,交换机可预先获取虚拟机配置信息。在一个实施方式中,虚拟机管理器(英文:Virtual Machine-Manager,简称:VM_Manager)统一建立虚拟机,为每个虚拟机分配虚拟机标识及逻辑通道,并把创建虚拟机的信息分别发送至服务器及交换机,从而服务器与交换机可分别获得建立虚拟机的信息,从而为每个虚拟机建立逻辑通道、虚拟机MAC地址及虚拟机标识的对应关系。
[0085]本发明中,第一设备通过接收第二设备发送的包括虚拟机硬件地址的暂停消息,可根据所述虚拟机硬件地址找到需要暂停数据传输的虚拟机,并暂停所述虚拟机硬件地址对应的逻辑通道上的数据传输,从而缓解了特定虚拟机的逻辑通道的拥塞,实现了单个虚拟机的数据传输控制,并且不影响其他虚拟机的数据传输,整体上提高了虚拟机的传输效率。
[0086]参见图2,为本发明实施例公开的另一种数据传输控制方法的流程图。如图2所示,该数据传输控制方法可包括以下步骤。
[0087]步骤S201,第一设备获取虚拟机配置信息,所述虚拟机配置信息包括所述虚拟机硬件地址及相应的虚拟机标识。
[0088]本发明实施例中,第一设备可为交换机或服务器,相应的,与之通信的第二设备可对应为服务器或交换机。当第一设备为交换机时,可通过VM-Manager获取虚拟机配置信息,也可通过与第二设备服务器直接获取虚拟机配置信息。当第一设备为服务器时,可通过VM-Manager获取虚拟机配置信息,也可自己创建虚拟机配置信息。
[0089]步骤S202,所述第一设备根据所述虚拟机配置信息建立虚拟机的逻辑通道。
[0090]本发明实施例中,当从VM-Manger获取到统一建立的虚拟机配置信息时,即可根据虚拟机配置信息建立每个虚拟机对应的逻辑通道,具体来说,是建立每个虚拟机的硬件地址对应的逻辑通道。在一个实施方式中,VM-Manager统一建立虚拟机,为每个虚拟机分配虚拟机标识及逻辑通道,并把创建虚拟机的信息分别发送至服务器及交换机,服务器与交换机可分别获得建立虚拟机的信息,并为每个虚拟机建立逻辑通道、虚拟机MAC地址及虚拟机标识的对应关系。
[0091 ] 步骤S203,所述第一设备建立并存储暂停信息表,其中,所述暂停信息表的每个表项至少包括虚拟机硬件地址。
[0092]本发明实施例中,第一设备建立并存储暂停信息表,暂停信息表的表项可至少包括虚拟机硬件地址。其中,建立并存储暂停信息表的动作只需要执行一次。因此,对于本发明实施例方法来说,不是必然要执行的步骤。当第一设备接收到第二设备发送的暂停消息时,可根据暂停消息中的信息建立每个虚拟机的硬件地址对应的表项,并将暂停消息中的其他信息,例如暂停时间等记录到对应表项中,从而第一设备可根据表项中的信息对对应的逻辑通道暂停数据传输。
[0093]可选的,暂停消息中还可包括每个虚拟机的队列优先级标识。第一设备可将队列优先级标识保存至暂停信息表中虚拟机硬件地址对应的表项中,则第一设备可根据暂停信息表暂停所述虚拟机逻辑通道上队列优先级标识对应的数据传输。
[0094]步骤S204,所述第一设备接收第二设备发送的暂停消息,其中,所述暂停消息包括暂停信息,所述暂停信息包括至少一个虚拟机的信息。
[0095]本发明实施例中,第二设备可实时监控虚拟机逻辑通道的拥塞情况,当发现一个或多个虚拟机逻辑通道发生数据传输拥塞现象时,可发送暂停消息至第一设备,第一设备可根据接收的暂停消息,对对应的虚拟机逻辑通道上的数据传输进行暂停操作。
[0096]可选的,暂停消息除了包括虚拟机MAC地址外,还可包括虚拟机的队列优先级标识,即表明逻辑通道上队列优先级标识对应的数据发生拥塞,此时,第一设备在虚拟机硬件地址对应的虚拟机的逻辑通道上,暂停队列优先级标识对应的数据的传输。
[0097]可选的,暂停消息包括暂停信息,暂停信息可包括至少一个虚拟机的信息,虚拟机的信息可为出现拥塞的一个虚拟机的硬件地址,例如MAC地址或至少一个虚拟机的虚拟机标识,当暂停信息包括一个虚拟机的硬件地址时,即表明一个虚拟机的数据传输出现拥塞,当暂停信息包括至少一个虚拟机的虚拟机标识时,即表明多个虚拟机的数据传输出现拥塞。该虚拟机的硬件地址并非当前暂停消息中存在的源硬件地址或目的硬件地址。暂停消息中的源硬件地址为服务器的硬件地址,目的硬件地址为交换机的硬件地址。若暂停消息中不存在虚拟机的硬件地址,则交换机仅能根据源硬件地址找到对应的服务器,而无法找到特定的虚拟机,从而无法实现对虚拟机的数据传输控制。当交换机接收到暂停消息时,可查找出暂停消息中的虚拟机MAC地址对应的虚拟机的逻辑通道,并暂停该逻辑通道上的数据传输。
[0098]具体暂停消息包括的字段可参见图3,其中,图3中各字段代表的具体含义如下描述:
[0099]Dest mac:目的MAC地址,本实施例中为第一设备的MAC地址;
[0100]Src mac:源MAC地址,本实施例中为第二设备的MAC地址;
[0101]Ether type:以太网类型;
[0102]Control op code:暂停消息的控制字,即表明是一个虚拟机需要进行暂停控制,还是多个虚拟机需要进行暂停控制;可自定义值0x0201,表明为一个虚拟机需要进行暂停控制;自定义值0x0202表明多个虚拟机需要进行暂停控制;
[0103]BP_MAC:暂停消息中发送的虚拟机MAC地址,即根据该字段可得知具体为哪个虚拟机需要进行暂停操作;
[0104]BP_VM_bitmap:虚拟机位图,根据该字段可查找到多个虚拟机的标识和/或其相应的虚拟机MAC地址;
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1