
技术摘要:
本发明涉及人工智能技术领域,公开了一种基于SDN控制器在主机覆盖网络的组播方法及系统,采用SDN控制器集中控制覆盖网络的组播组信息,根据控制器对全网拓扑的了解生成组播流量规则,并下发到主机上的分布式虚拟路由器执行,在数据面流表投递的时候,根据获取到的接口 全部
背景技术:
覆盖网络是将一个逻辑网络建立在一个实体网络之上,将二层数据包重新封装在 用户数据报协议中,现有的覆盖网络针对物理服务器,采用物理交换机作为边缘设备。 现有的单播、广播和组播方式都存在着一定的弊端,在广播方式下,信息会发送到 不需要该信息的主机,从而浪费带宽资源,甚至引起广播风暴;而单播方式下,会因为数据 包的多次重复而浪费带宽资源。 仅采用组播方式同样会因为大二层网络里每个虚拟网络的广播域会扩展到所有 的VNE设备上,由此带来泛洪的问题,广播报文会泛洪到广播域内所有主机上,而主机数量 可能多达数百台,从而对网络造成重大负担。
技术实现要素:
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地 解决上述问题的一种基于SDN控制器在主机覆盖网络的组播方法和相应的一种基于SDN控 制器在主机覆盖网络的组播系统。 为了解决上述问题,本发明实施例公开了一种基于SDN控制器的组播方法,应用于 主机覆盖网络中,所述主机覆盖网络包括隧道、位于所述隧道两端的源虚拟端口和对端虚 拟端口,包括步骤: 通过所述主机覆盖网络获取源虚拟端口信息,其中,所述源虚拟端口信息包括组 播组、对端虚拟端口位置信息和报文信息,所述对端虚拟端口位置信息包括组播组的IP地 址和成员信息; 根据所述成员信息解析出目的接口信息; 虚拟交换机根据所述目的接口信息、所述报文信息和所述组播组的IP地址生成数 据面流表,按照所述数据面流表转发所述报文信息。 进一步地,所述通过主机覆盖网络获取源虚拟端口信息包括: 通过预设应用程序接口获取所述组播组的成员信息和IP地址; 根据所述成员信息和所述IP地址创建所述组播组。 进一步地,所述虚拟交换机根据所述目的接口信息、所述报文信息和所述组播组 的IP地址生成数据面流表,按照所述数据面流表转发所述报文信息包括: 通过所述源虚拟端口位置信息判断所述源虚拟端口是本地接口还是远端接口; 若所述源虚拟端口为本地接口,则将所述源虚拟端口位置信息设置为本地接口信 息,所述虚拟交换机根据所述目的接口信息、所述报文信息和所述本地接口信息生成数据 面流表,按照所述数据面流表将所述报文信息转发至所述对端虚拟端口; 4 CN 111585900 A 说 明 书 2/8 页 若所述源虚拟端口为远端接口,则获取本地vxlan tunnel信息,通过所述本地 vxlan tunnel信息将所述报文信息发往对端vtep,并通过所述对端vtep剥离所述报文信息 的头部后转发到所述对端虚拟端口。 进一步地,所述虚拟交换机根据所述目的接口信息、所述报文信息和所述组播组 的IP地址生成数据面流表,按照所述数据面流表转发所述报文信息之前,还包括: 判断所述源虚拟端口是否为未配置过的组播组; 若所述组播组为未配置过的组播组,所述虚拟交换机直接将所述源虚拟端口的所 述报文信息丢弃。 进一步地,所述SDN控制器包括全局控制器和本地控制器,所述组播组包括全局组 播位置信息和本区域组播位置信息,所述通过主机覆盖网络获取源虚拟端口信息,其中,所 述源虚拟端口信息包括组播组、对端虚拟端口位置信息和报文信息,所述对端虚拟端口位 置信息包组播组的IP地址和成员信息之前,还包括: 通过所述全局控制器获取并调用所述全局组播位置信息,通过所述本地控制器获 取并调用所述本区域组播位置信息。 进一步地,所述虚拟交换机根据所述目的接口信息、所述报文信息和所述组播组 的IP地址生成数据面流表,按照所述数据面流表转发所述报文信息之后,还包括: 判断所述对端虚拟端口位置信息是否发生迁移; 若是,则通过编排器采集第二对端虚拟端口位置信息,并将所述第二对端虚拟端 口位置信息发送至物理主机服务器,所述第二对端虚拟端口位置信息为迁移后的对端虚拟 端口位置信息。 进一步地,所述虚拟交换机根据所述目的接口信息、所述报文信息和所述组播组 的IP地址生成数据面流表,按照所述数据面流表转发所述报文信息之后,还包括: 判断所述对端虚拟端口位置信息是否处于浮动状态; 若是,则下发预设地址解析协议提取地址对应关系,根据所述地址对应关系查询 实际映射,并将所述映射发送至所述虚拟交换机。 本发明实施例公开了一种基于SDN控制器在主机覆盖网络的组播系统,所述主机 覆盖网络包括隧道和位于所述隧道两端的源虚拟端口和对端虚拟端口,包括: 信息获取模块,用于通过主机覆盖网络获取源虚拟端口信息,其中,所述源虚拟端 口信息包括组播组、对端虚拟端口位置信息和报文信息,所述对端虚拟端口位置信息包括 组播组的IP地址和成员信息; 信息解析模块,用于根据所述成员信息解析出目的接口信息; 报文转发模块,用于虚拟交换机根据所述目的接口信息、所述报文信息和所述组 播组的IP地址生成数据面流表,按照所述数据面流表转发所述报文信息。 本发明实施例公开了一种电子设备,包括处理器、存储器及存储在所述存储器上 并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上 述的基于SDN控制器在主机覆盖网络的组播方法的步骤。 本发明实施例公开了一种计算机可读存储介质,所述计算机可读存储介质上存储 计算机程序,所述计算机程序被处理器执行时实现如上述的基于SDN控制器在主机覆盖网 络的组播方法的步骤。 5 CN 111585900 A 说 明 书 3/8 页 本发明实施例包括以下优点:采用SDN控制器集中控制覆盖网络的组播组信息,根 据控制器对全网拓扑的了解生成组播流量规则,并下发到主机上的分布式虚拟路由器执 行,在数据面流表投递的时候,根据获取到的接口信息直接将报文信息发往组播组成员所 在的接口,使用精准地投递方式,较好的抑制了组播报文在二层的泛洪问题,解决了网路负 担较重的现象。 附图说明 图1是本发明的基于SDN控制器在主机覆盖网络的组播方法一实施例的步骤流程 图; 图2是本发明的基于SDN控制器在主机覆盖网络的组播方法另一实施例的步骤流 程图; 图3是本发明的基于SDN控制器在主机覆盖网络的组播方法另一实施例的步骤流 程图; 图4是本发明的一种基于SDN控制器在主机覆盖网络的组播系统实施例的结构框 图; 图5是本发明的一种基于SDN控制器在主机覆盖网络的组播系统实施例的结构框 图; 图6是本发明的一种基于SDN控制器在主机覆盖网络的组播系统实施例的结构框 图。