管理虚拟链路聚合信道制造技术

技术编号:29138285 阅读:15 留言:0更新日期:2021-07-02 22:35
本公开的实施例提供了一种用于通信的方法、设备、装置和计算机可读介质。在该方法中,第一设备从第二设备接收由第二设备上运行的多个虚拟机中的第一虚拟机生成的链路聚合控制消息。根据确定接收到链路聚合控制消息,第一设备基于第一设备的第一端口集合和第二设备的第二端口集合,建立第一设备与第一虚拟机之间的第一虚拟链路聚合信道,第一设备与多个虚拟机中的第二虚拟机之间已经基于第一端口集合和第二端口集合建立第二虚拟链路聚合信道。第一设备至少基于第一虚拟机的标识符,来管理第一虚拟链路聚合信道。本公开的实施例可以改进基于链路聚合的通信网络或计算机网络的性能。

【技术实现步骤摘要】
管理虚拟链路聚合信道
本公开的实施例一般地涉及与通信网络或计算机网络相关的
,并且更特别地涉及一种管理虚拟链路聚合信道的技术方案。
技术介绍
在通信网络(或计算机网络)中,链路聚合(LinkAggregation)是指将通信设备或网络设备(例如,交换机、服务器,等等)的多个物理端口汇聚在一起形成逻辑端口,以实现输出/输入流量在逻辑端口的各成员端口上的负荷分担。例如,通信设备可以根据用户配置的端口负荷分担策略来决定网络数据(例如,数据分组)从哪个成员端口发送到对端的通信设备。当通信设备检测到某个成员端口的链路发生故障时,可以停止在此端口上发送数据,并且根据负荷分担策略在剩下的链路中重新确定数据的发送端口,故障端口恢复后可以再次担任收发端口。链路聚合在增加链路带宽、实现链路传输弹性和工程冗余等方面是一项重要的技术。随着虚拟端口(例如,通过单根I/O虚拟化SR-IOV技术)被引入到通信设备上运行的虚拟机,通信设备(例如,服务器)上的物理端口可以连接数百个虚拟端口。在一些情况下,通信设备上运行的虚拟机也可能需要使用链路聚合技术来实现链路级冗余,以确保可以从单点故障继续保持连接。然而,当前的链路聚合协议无法满足这样的需求,在许多场景中导致通信网络或计算机网络的低性能,造成了不良的用户体验。
技术实现思路
本公开的实施例涉及一种管理虚拟链路聚合信道的技术方案。在本公开的第一方面,提供了一种用于通信的方法。该方法包括:在第一设备处,从第二设备接收由第二设备上运行的多个虚拟机中的第一虚拟机生成的链路聚合控制消息。该方法还包括:根据确定接收到链路聚合控制消息,基于第一设备的第一端口集合和第二设备的第二端口集合,建立第一设备与第一虚拟机之间的第一虚拟链路聚合信道,第一设备与多个虚拟机中的第二虚拟机之间已经基于第一端口集合和第二端口集合建立第二虚拟链路聚合信道。该方法进一步包括:至少基于第一虚拟机的标识符,来管理第一虚拟链路聚合信道。在本公开的第二方面,提供了一种用于通信的方法。该方法包括:在第二设备处,向第一设备发送由第二设备上运行的虚拟机生成的用于建立虚拟链路聚合信道的链路聚合控制消息。该方法还包括:根据确定从第一设备接收到针对链路聚合控制消息的响应消息,基于响应消息来确定第一设备是数据处理设备还是数据转发设备。该方法进一步包括:根据确定第一设备是数据转发设备,在虚拟机与第一设备之间建立虚拟链路聚合信道。在本公开的第三方面,提供了一种第一设备。该第一设备包括至少一个处理器和包括计算机程序指令的至少一个存储器。至少一个存储器和计算机程序指令被配置为,与至少一个处理器一起,使得第一设备:从第二设备接收由第二设备上运行的多个虚拟机中的第一虚拟机生成的链路聚合控制消息。至少一个存储器和计算机程序指令还被配置为,与至少一个处理器一起,使得第一设备:根据确定接收到链路聚合控制消息,基于第一设备的第一端口集合和第二设备的第二端口集合,建立第一设备与第一虚拟机之间的第一虚拟链路聚合信道,第一设备与多个虚拟机中的第二虚拟机之间已经基于第一端口集合和第二端口集合建立第二虚拟链路聚合信道。至少一个存储器和计算机程序指令进一步被配置为,与至少一个处理器一起,使得第一设备:至少基于第一虚拟机的标识符,来管理第一虚拟链路聚合信道。在本公开的第四方面,提供了一种第二设备。该第二设备包括至少一个处理器和包括计算机程序指令的至少一个存储器。至少一个存储器和计算机程序指令被配置为,与至少一个处理器一起,使得第二设备:向第一设备发送由第二设备上运行的虚拟机生成的用于建立虚拟链路聚合信道的链路聚合控制消息。至少一个存储器和计算机程序指令还被配置为,与至少一个处理器一起,使得第二设备:根据确定从第一设备接收到针对链路聚合控制消息的响应消息,基于响应消息来确定第一设备是数据处理设备还是数据转发设备。至少一个存储器和计算机程序指令进一步被配置为,与至少一个处理器一起,使得第二设备:根据确定第一设备是数据转发设备,在虚拟机与第一设备之间建立虚拟链路聚合信道。在本公开的第五方面,提供了一种用于通信的装置。该第一设备包括:用于在第一设备处,从第二设备接收由第二设备上运行的多个虚拟机中的第一虚拟机生成的链路聚合控制消息的部件。该第一设备还包括:用于根据确定接收到链路聚合控制消息,基于第一设备的第一端口集合和第二设备的第二端口集合,建立第一设备与第一虚拟机之间的第一虚拟链路聚合信道的部件,第一设备与多个虚拟机中的第二虚拟机之间已经基于第一端口集合和第二端口集合建立第二虚拟链路聚合信道。该第一设备进一步包括:用于至少基于第一虚拟机的标识符,来管理第一虚拟链路聚合信道的部件。在本公开的第六方面,提供了一种用于通信的装置。该第二设备包括:用于在第二设备处,向第一设备发送由第二设备上运行的虚拟机生成的用于建立虚拟链路聚合信道的链路聚合控制消息的部件。该第二设备还包括:用于根据确定从第一设备接收到针对链路聚合控制消息的响应消息,基于响应消息来确定第一设备是数据处理设备还是数据转发设备的部件。该第二设备进一步包括:用于根据确定第一设备是数据转发设备,在虚拟机与第一设备之间建立虚拟链路聚合信道的部件。在本公开的第七方面,提供了一种计算机可读介质。该计算机可读介质存储有机器可执行指令,机器可执行指令在被执行时使机器执行根据第一方面的方法。在本公开的第八方面,提供了一种计算机可读介质。该计算机可读介质存储有机器可执行指令,机器可执行指令在被执行时使机器执行根据第二方面的方法。应当理解,
技术实现思路
部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其他特征通过以下的描述将变得容易理解。附图说明通过参考附图阅读下文的详细描述,本公开的实施例的上述以及其他目的、特征和优点将变得容易理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施例。图1示出了本公开的实施例可以在其中实现的通信系统的示意图。图2示出了根据本公开的实施例的用于通信的方法的示例流程图。图3示出了根据本公开的实施例的第一设备的示例实施方式的示意性框图。图4示出了根据本公开的实施例的在第一设备与第二设备上的多个虚拟机建立多个虚拟链路聚合信道的示意图。图5示出了根据本公开的实施例的与第一设备之间存在虚拟链路聚合信道的第一虚拟机从第二设备迁移到第四设备的示意图。图6示出了根据本公开的实施例的第二设备与第一设备建立虚拟链路聚合信道并且不与第三设备建立虚拟链路聚合信道的示意图。图7示出了根据本公开的实施例的第二设备与作为数据转发设备的第一设备建立虚拟链路聚合信道的通信过程的示意图。图8示出了根据本公开的实施例的第二设备避免与作为数据处理设备的第三设备建立虚拟链路聚合信道的通信过程的示意图。图9示出了根据本公开的实施例的链路聚合控制数据单元(LACPDU)的示意性结构。图10示出了根据本公开的另一实施例的用于通信的方法的示例流程图。...

【技术保护点】
1.一种用于通信的方法,包括:/n在第一设备处,从第二设备接收由所述第二设备上运行的多个虚拟机中的第一虚拟机生成的链路聚合控制消息;/n根据确定接收到所述链路聚合控制消息,基于所述第一设备的第一端口集合和所述第二设备的第二端口集合,建立所述第一设备与所述第一虚拟机之间的第一虚拟链路聚合信道,所述第一设备与所述多个虚拟机中的第二虚拟机之间已经基于所述第一端口集合和所述第二端口集合建立第二虚拟链路聚合信道;以及/n至少基于所述第一虚拟机的标识符,来管理所述第一虚拟链路聚合信道。/n

【技术特征摘要】
1.一种用于通信的方法,包括:
在第一设备处,从第二设备接收由所述第二设备上运行的多个虚拟机中的第一虚拟机生成的链路聚合控制消息;
根据确定接收到所述链路聚合控制消息,基于所述第一设备的第一端口集合和所述第二设备的第二端口集合,建立所述第一设备与所述第一虚拟机之间的第一虚拟链路聚合信道,所述第一设备与所述多个虚拟机中的第二虚拟机之间已经基于所述第一端口集合和所述第二端口集合建立第二虚拟链路聚合信道;以及
至少基于所述第一虚拟机的标识符,来管理所述第一虚拟链路聚合信道。


2.根据权利要求1所述的方法,其中建立所述第一虚拟链路聚合信道包括:
根据确定接收到所述链路聚合控制消息,确定用于建立虚拟链路聚合信道的预定条件是否被满足;以及
根据确定所述预定条件被满足,建立所述第一虚拟链路聚合信道。


3.根据权利要求2所述的方法,其中所述预定条件包括以下中的至少一项:
所述第一设备的接收到所述链路聚合控制消息的接收端口集合可用于建立虚拟链路聚合信道;以及
所述第一设备已建立的虚拟链路聚合信道的数目未达到上限。


4.根据权利要求1所述的方法,其中管理所述第一虚拟链路聚合信道包括:
从所述链路聚合控制消息中获得所述第一虚拟机的所述标识符;以及
基于所述标识符来生成用于管理所述第一虚拟链路聚合信道的信道控制数据。


5.根据权利要求4所述的方法,还包括:
检测所述第一虚拟链路聚合信道的连接状态;以及
将检测到的所述连接状态记录在所述信道控制数据中。


6.根据权利要求5所述的方法,还包括:
根据确定检测到的所述连接状态为已断开,释放所述第一设备用于建立所述第一虚拟链路聚合信道的资源。


7.根据权利要求4所述的方法,还包括:
在所述信道控制数据中记录以下至少一项:指示用于建立所述第一虚拟链路聚合信道的第一端口集合的信息、以及所述第一虚拟链路聚合信道最近一次被更新的时间。


8.根据权利要求7所述的方法,其中所述链路聚合控制消息是第一链路聚合控制消息,并且所述第一虚拟机从所述第二设备迁移到另一设备,所述方法还包括:
从所述另一设备接收由所述第一虚拟机生成的用于更新所述第一虚拟链路聚合信道的第二链路聚合控制消息;以及
根据确定所述第一设备的接收到所述第二链路聚合控制消息的第三端口集合不同于所述第一端口集合,将所述信道控制数据中记录的指示所述第一端口集合的所述信息更新为指示所述第三端口集合的信息。


9.根据权利要求8所述的方法,还包括:
根据确定所述第二链路聚合控制消息中包括所述第一虚拟机的所述标识符,确定所述第二链路聚合控制消息由所述第一虚拟机生成。


10.根据权利要求1所述的方法,其中所述链路聚合控制消息包括指示信息,以指示所述第一虚拟机用作数据处理设备。


11.根据权利要求10所述的方法,其中所述指示信息被包括在作为所述链路聚合控制消息的链路聚合控制协议数据单元(LACPDU)中的保留字段中。


12.根据权利要求1所述的方法,还包括:
向所述第二设备发送针对所述链路聚合控制消息的响应消息,所述响应消息中包括指示信息,以指示所述第一设备是数据转发设备。


13.根据权利要求12所述的方法,其中所述指示信息被包括在作为所述响应消息的LACPDU中的保留字段中。


14.根据权利要求1所述的方法,其中所述第一设备包括交换机,并且所述第二设备包括服务器。


15.一种用于通信的方法,包括:
在第二设备处,向第一设备发送由所述第二设备上运行的虚拟机生成的用于建立虚拟链路聚合信道的链路聚合控制消息;
根据确定从所述第一设备接收到针对所述链路聚合控制消息的响应消息,基于所述响应消息来确定所述第一设备是数据处理设备还是...

【专利技术属性】
技术研发人员:李伟徐力
申请(专利权)人:上海诺基亚贝尔股份有限公司诺基亚通信公司
类型:发明
国别省市:上海;31

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

1