多播流量的转发方法、装置和服务器制造方法及图纸

技术编号:19548188 阅读:39 留言:0更新日期:2018-11-24 21:22
本公开提供了一种多播流量的转发方法、装置和服务器,其中,该方法应用于虚拟交换机,该方法包括:如果接收到多播流量,获取多播流量对应的出端口;对于每个出端口,检查该出端口是否配置有meter通道;如果是,在多播流量的meter列表中,将该出端口添加至对应的meter通道的端口组中;根据meter列表生成与多播流量匹配的内核态流表,以使多播流量在meter列表包括的出端口上,按照该出端口组对应的meter通道转发多播流量;根据内核态流表转发多播流量。本公开可以避免多播流量在转发过程中被多次限速,使得流量的限速方式与预期更加匹配,从而提高了网络带宽的稳定性。

Multicast traffic forwarding methods, devices and servers

The present disclosure provides a multicast traffic forwarding method, device and server, in which the method is applied to a virtual switch. The method includes: if multicast traffic is received, the corresponding outgoing port of multicast traffic is obtained; for each outgoing port, the meter channel is checked; if so, in multicast. In the meter list of traffic, add the outgoing port to the port group of the corresponding meter channel; generate a kernel flow table matching the multicast traffic according to the meter list, so that the multicast traffic is on the outgoing port included in the meter list, and forward the multicast traffic according to the meter channel corresponding to the outgoing port group; and forward the multicast traffic according to the kernel flow table. Multicast traffic. The present disclosure can avoid multiple speed limits of multicast traffic during forwarding, and make the speed limits of traffic more matching with expectations, thereby improving the stability of network bandwidth.

【技术实现步骤摘要】
多播流量的转发方法、装置和服务器
本公开涉及云计算
,尤其是涉及一种多播流量的转发方法、装置和服务器。
技术介绍
OVS(Openvswitch,开放虚拟交换机)是一种广泛应用于虚拟平台的开源软件;OVS通过软件的方式形成交换机部件,可以实现传统物理交换机的网桥(Bridge)转发功能,及其他网络特性;相对于物理交换机,OVS具备配置更灵活、部署更方便、开发新特性更快捷等优势。随着云计算的发展,虚拟机应用日益普遍,OVS技术通过对虚拟机进行流量限速,从而实现云环境中的用户管理、网络控制等应用。现有的OVS流表可以实现入端口和出端口方向上的流量限速,然而当OVS转发多播流量(包括广播流量和组播流量)时,受自身转发机制的影响,多播流量到达实际的出端口之前,可能会流经其他出端口,从而受到多个出端口的限速,多次限速导致该多播流量与实际出端口的限速需求不符,限速准确性较差。
技术实现思路
有鉴于此,本公开的目的在于提供一种多播流量的转发方法、装置和服务器,以避免多播流量在转发过程中被多次限速,使得流量的限速方式与预期更加匹配,从而提高网络带宽的稳定性。为了实现上述目的,本公开采用的技术方案如下:第一方面,本公开提供了一种多播流量的转发方法,该方法应用于虚拟交换机,该方法包括:如果接收到多播流量,获取多播流量对应的出端口;对于每个出端口,检查该出端口是否配置有meter通道;如果是,在多播流量的meter列表中,将该出端口添加至对应的meter通道的端口组中;根据meter列表生成与多播流量匹配的内核态流表,以使多播流量在meter列表包括的出端口上,按照该出端口组对应的meter通道转发多播流量;根据内核态流表转发多播流量。第二方面,本公开提供了一种多播流量的转发装置,该装置应用于虚拟交换机,该装置包括:获取模块,用于如果接收到多播流量,获取多播流量对应的出端口;检查模块,用于对于每个出端口,检查该出端口是否配置有meter通道;添加模块,用于如果该出端口配置有meter通道,在多播流量的meter列表中,将该出端口添加至对应的meter通道的端口组中;流表生成模块,用于根据meter列表生成与多播流量匹配的内核态流表,以使多播流量在meter列表包括的出端口上,按照该出端口组对应的meter通道转发多播流量;转发模块,用于根据内核态流表转发多播流量。第三方面,本公开实施方式提供了一种服务器,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述多播流量的转发方法。第四方面,本公开实施方式提供了一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述多播流量的转发方法。上述多播流量的转发方法、装置、服务器和机器可读存储介质,将多播流量的每个出端口添加至meter列表中对应的meter通道的端口组中;再根据该meter列表生成与多播流量匹配的内核态流表,以使该多播流量按照各出端口组对应的meter通道转发多播流量;该方式可以避免多播流量在转发过程中被多次限速,使得流量的限速方式与预期更加匹配,从而提高了网络带宽的稳定性。本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本公开实施方式提供的多播流量的转发方法的应用场景示意图;图2为本公开实施方式提供的通过TC队列实现端口出流量限速的示意图;图3为现有的OVS转发多播流量的流程示意图;图4为本公开实施方式提供的一种多播流量的转发方法的流程图;图5为本公开实施方式提供的通过meter通道对虚拟机端口进行流量控制的示意图;图6为本公开实施方式提供的另一种多播流量的转发方法的流程图;图7为本公开实施方式提供的虚拟交换机通过meter通道限速的原理示意图;图8为本公开实施方式提供的另一种多播流量的转发方法的流程图;图9为本公开实施方式提供的一种多播流量的转发装置的结构示意图;图10为本公开实施方式提供的一种服务器的结构示意图。具体实施方式为使本公开实施方式的目的、技术方案和优点更加清楚,下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本公开一部分实施方式,而不是全部的实施方式。基于本公开中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本公开保护的范围。为了更好地理解本公开的技术方案,下面首先对多播流量的转发方法的应用场景进行描述。如图1所示,主机1和主机2通过物理网络连接,且主机1和主机2上分别配置有虚拟机VM(VirtualMachine,虚拟机)和虚拟交换机,虚拟交换机内设置有多个虚拟端口,虚拟端口用于连接虚拟机内部端口(即虚拟网卡),实现虚拟机和虚拟交换机的连通,虚拟机可以通过虚拟交换机转发数据,虚拟交换机通过物理端口与外界通信,物理端口设置在物理网卡上;连接主机上物理网卡的虚拟端口与外部的物理网络进行通信;连接虚拟网卡的虚拟端口与该主机上的虚拟机连接,用于实现虚拟机与外部网络,或虚拟机之间的数据交换,一台虚拟交换机可以管理一台主机上的虚拟机(如图1所示)。虚拟网卡通常设置在虚拟机上;一台虚拟机可以设置一个或多个虚拟网卡,当虚拟机设置多个虚拟网卡时,可以使该虚拟机连接不同的虚拟网络。下述实施方式中,虚拟机也可以简称为VM,如VM1即虚拟机1。OVS管理虚拟机网卡时,通常会对网卡对应的虚拟机端口vnet进行IP/MAC绑定;在转发过程中,如果OVS接收到虚拟机端口发出的报文,会检查该报文的源MAC/IP地址是否与该端口绑定的IP/MAC一致;一致时,才将该报文转发至物理网络;如果OVS从物理端口接收到报文,也会检查该报文的目的MAC/IP地址是否与对应端口绑定的IP/MAC一致;一致时,才将该报文转发至虚拟机。虚拟交换机在对所连接的虚拟机进行限速时,除了OVS流表方式,还有一种TC(TrafficControl,流量控制)队列的方式。如图2所示的通过TC队列实现端口出流量限速的示意图。对于虚拟交换机的出流量,即虚拟交换机输出至虚拟机或外部的物理网络的流量,对应虚拟端口可以根据流量的特性(例如,协议类型、地址、协议端口等)将出流量进行分类,归类至不同的队列中,再依照各队列设置的限速措施进行限速处理。如图2所示,每个虚拟端口可以设置多个rootqdisc,每个rootqdisc下,还可以设置多个childclass,且该childclass可以设置多级,直至leafclass。上述这种基于TC队列的流限速方式中,流量转发至对应的出端口后,再依据该出端口上TC队列的限速措施进行限速处理,因此,本文档来自技高网...

【技术保护点】
1.一种多播流量的转发方法,其特征在于,所述方法应用于虚拟交换机,所述方法包括:如果接收到多播流量,获取所述多播流量对应的出端口;对于每个所述出端口,检查该出端口是否配置有限速meter通道;如果是,在所述多播流量的meter列表中,将该出端口添加至对应的meter通道的端口组中;根据所述meter列表生成与所述多播流量匹配的内核态流表,以使所述多播流量在所述meter列表包括的出端口上,按照该出端口组对应的meter通道转发所述多播流量;根据所述内核态流表转发所述多播流量。

【技术特征摘要】
1.一种多播流量的转发方法,其特征在于,所述方法应用于虚拟交换机,所述方法包括:如果接收到多播流量,获取所述多播流量对应的出端口;对于每个所述出端口,检查该出端口是否配置有限速meter通道;如果是,在所述多播流量的meter列表中,将该出端口添加至对应的meter通道的端口组中;根据所述meter列表生成与所述多播流量匹配的内核态流表,以使所述多播流量在所述meter列表包括的出端口上,按照该出端口组对应的meter通道转发所述多播流量;根据所述内核态流表转发所述多播流量。2.根据权利要求1所述的方法,其特征在于,根据所述meter列表生成与所述多播流量匹配的内核态流表的步骤,包括:生成与所述多播流量匹配的内核态流表,所述内核态流表的动作域为所述meter列表,所述meter列表中的每条meter表项包括meter通道标识和所述meter通道标识对应的出端口,用以实现按照meter通道标识复制所述多播流量至所述meter通道标识对应的出端口,在所述出端口按照所述meter通道标识对应的meter通道转发所述多播流量。3.根据权利要求1所述的方法,其特征在于,根据所述meter列表生成与所述多播流量匹配的内核态流表的步骤,包括:为所述meter列表包括的每条meter表项分配一个内核态流表标识recirc_id;设置所述recirc_id对应的内核态流表与所述多播流量匹配,所述内核态流表的动作域为所述recirc_id对应的meter表项。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:如果接收到单播流量,从所述单播流量对应的出端口转发所述单播流量。5.一种多播流量的转发装置,其特征在于,所述装置应用于虚拟交换机,所述装置包括:获取模块,用于如果接收到多播流量,获取所述多播流量对应的出端口;检查模块,用于对于每个所述出端口,检查该出端口是否配...

【专利技术属性】
技术研发人员:张慧敏韩欢乐任维春
申请(专利权)人:新华三云计算技术有限公司
类型:发明
国别省市:四川,51

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

1