组播处理方法与流程

文档序号:16309757发布日期:2018-12-19 05:13阅读:630来源:国知局
组播处理方法与流程

本发明涉及通信技术领域,特别涉及一种组播处理方法。

背景技术

组播是一种点对多的数据出传输技术,与单播相比,减少了网络冗余数据包传输,提高了网络资源的利用率,尤其适用于在线直播、网络电视、远程教育、远程医疗、实频会议等互联网的信息服务领域。

在实现过程中,发明人发现传统技术中至少存在如下问题:

传统技术中的组播技术相对较为开放,数据的安全性难以保证,且需每台设备各自计算自己的路由以及转发行为,缺少统一的组播转发路径规划方案,在修改转发路径时,需在沿途的多台路由设备分别设置,配置复杂且局限性较大。



技术实现要素:

本发明的目的在于针对传统技术的不足,提供一种组播处理方法,包括以下步骤:

现网络中指定的组播路由器根据获取到的集中组播配置指令进入集中组播配置状态,并作为集中组播服务器;

待加入接收端的接收组播路由器向集中组播服务器发送身份确认报文;以及待确认组播源的组播源路由器向集中组播服务器发送注册报文;

集中组播服务器根据接收到的身份确认报文进行身份确认,将对应的待加入接收端作为组播组中的接收端;根据接收到的注册报文进行身份确认,将待确认组播源作为组播源;

集中组播服务器根据获取到的组播约束条件和网络拓扑信息,以组播源的组播源路由器为根节点,以组播组中的各接收端对应的接收组播路由器为叶子节点,生成组播树;

集中组播服务器根据组播树,生成组播树中每一节点对应的组播路由器的路由表,并将路由表下发至对应的组播路由器,完成集中组播路由的配置。

在其中一个实施例中,集中组播服务器根据接收到的身份确认报文进行身份确认,将对应的待加入接收端作为组播组中的接收端的步骤,包括:

集中组播服务器根据接收到的身份确认报文,识别出接收组播路由器对应的待加入接收端在组播接收端列表中时,将待加入接收端加入到组播组中,作为组播组中的接收端。

在其中一个实施例中,根据接收到注册报文进行身份确认,将待确认组播源作为组播组的组播源的步骤包括:

集中组播服务器根据接收到的注册报文,识别出组播源路由器对应的待确认组播源在组播源列表中时,将待确认组播源作为组播组的组播源。

在其中一个实施例中,待加入接收端的接收组播路由器向集中组播服务器发送身份确认报文的步骤之前,还包括:

待加入接收端向对应的接收组播路由器发送igmp报文;

对应的接收组播路由器根据接收到的igmp报文生成身份确认报文。

在其中一个实施例中,在待确认组播源的组播源路由器向集中组播服务器发送注册报文的步骤之前,还包括:

待确认组播源向对应的组播源路由器发送组播数据;组播数据包括待确认组播源的ip地址;

对应的组播源路由器根据接收到的组播数据,将组播数据进行封装,得到注册报文。

在其中一个实施例中,集中组播服务器根据接收到的身份确认报文进行身份确认,将对应的待加入接收端作为组播组中的接收端的步骤之后,还包括步骤:

集中组播服务器将对应的待加入接收端作为组播组中的接收端时,向作为组播组中的接收端对应的接收组播路由器发送身份已确认报文;

接收组播路由器根据接收到的身份已确认报文,停止向集中组播服务器发送pimjoin报文。

在其中一个实施例中,在根据接收到注册报文进行身份确认,将待确认组播源作为组播组的组播源的步骤之后,还包括:

集中组播服务器在将待确认组播源作为组播组的组播源时,向作为组播组的组播源对应组播源路由器发送停止注册报文;

组播源路由器根据停止注册报文停止向集中组播服务器发送注册报文。

在其中一个实施例中,在待加入接收端的接收组播路由器向集中组播服务器发送身份确认报文;以及待确认组播源的组播源路由器向集中组播服务器发送注册报文的步骤之前,还包括:

现网络中指定的组播路由器基于pim协议作为汇聚点,并将作为汇聚点的消息通告给现网络中的组播路由器。

在其中一个实施例中,集中组播服务器根据组播约束条件以及网络拓扑信息,以组播源为根节点,以组播组中的各接收端为叶子节点,生成组播树的步骤包括:

获取各叶子节点到根节点的路径,根据根节点、各路径中的最短路径,以及最短路径对应的叶子节点,生成待添加最短路径树;

依次将待添加最短路径树外的叶子节点、以到待添加最短路径树中任一节点的距离为最短的路径,添加到待添加最短路径树中,得到组播树。

在其中一个实施例中,在现网络中指定的组播路由器根据获取到的集中组播配置指令进入集中组播配置状态,并作为集中组播服务器的步骤之后,还包括:

集中组播服务器获取加载指令,并根据加载指令加载对应的组播路由选择算法。

上述技术方案中的一个技术方案具有如下优点和有益效果:

本发明的组播处理方法,可将现网络中指定的组播路由器进入集中组播配置状态,待加入接收端需加入组播组时需通过对应的接收组播路由器发送身份确认报文,由集中组播服务器进行身份确认。待确认组播源需发送注册报文,由集中组播服务器进行身份确认。进一步地,在完成身份验证时,集中组播服务器可根据网络拓扑信息和组播约束条件,获取组播约束条件,生成组播树,并根据组播树生成每一节点的路由表,将各路由表集中下发给对应的组播路由器。本发明的组播处理方法,可在集中组播服务器端获得完整的组播树信息,由此集中管理组播树上每一节点对应的路由设备。本发明可实现集中组播,使得数据信息可在较安全稳定的网络中进行传输,防止随意加入组播组造成的安全隐患以及网络负担,并可根据现网络的网络拓扑信息得到较优的组播路由。同时本发明便于组播协议的升级与维护,可降低网络资源的开销。

附图说明

图1示出了本发明的一个实施方式提供的组播处理方法流程示意图;

图2示出了本发明的一个实施方式提供的组播处理方法的身份确认报文生成流程示意图;

图3示出了本发明的一个实施方式提供的组播处理方法的注册报文生成流程示意图;

图4示出了本发明的一个实施方式提供的组播处理方法的组播树生成流程示意图;

图5示出了本发明的一个实施方式提供的组播处理方法的具体流程示意图;

图6示出了本发明的一个实施方式提供的组播处理方法的配置组播路由的具体流程示意图;

图7示出了本发明的一个实施方式提供的组播处理方法的组播树生成的具体流程示意图;

图8示出了本发明的一个实施方式提供的组播处理方法的现网络的网络拓扑图;

图9示出了本发明的一个实施方式提供的组播处理方法的组播树的路径示意图。

具体实施方试

为使本发明的目的、技术方案及优点更清楚明白,以下参照附图结合实施例,对本发明进一步说明。

主流的分布式组播路由如pim(protocolindependentmulticast)协议无关组播在计算组播路由的时主要依靠单播路由信息,在每台路由设备上计算组播路径,缺少统一的组播转发路径规划方案,虽然可以通过某些配置修改组播的转发路径,但是这些配置需要在沿途的多台路由设备分别设置,局限性大。组播转发路径的不可定制对组播安全和qos(qualityofservice,服务质量)也带来很大的影响,特别在某些对安全要求较高的应用场景中,可能需要避开某些存在安全隐患或者流量繁忙的路径,这在目前的组播实现方案中较为缺少。进一步地,当前组播协议需要在每台设备上各自维护本身的组播状态,同时需要上下游邻居的组播状态,需要大量协议报文交互,在组播表项容量很大的情况下,大量的协议报文交互不仅增加了系统和网络的资源开销,更可能会导致组播路由的不稳定。基于分布式的组播计算架构,当组播协议需要更新升级或在处理某些缺陷后需要升级映像时,需要在每台网络设备中进行映像更新,在网络规模宏大的情况下不便于快速解决组播故障和设备缺陷。

伴随着sdn((softwaredefinednetwork)技术的兴起,所采用的控制与转发分离设计理念,有助于将组播组成员管理与组播数据转发分离,并借助于sdn控制器采集的全局网络拓扑和状态信息,有助于实现满足qos要求的组播转发路径,并依据不同的安全需求,结合组播安全功能实现集中可控的组播服务。但是sdn架构需要部署专用的控制器,不仅增加成本,在控制器故障时还可能会导致网络无法有效运行。

本发明在目前分布式组播的基础上,为解决分布式组播的数据转发的安全和效率问题,可无需部署专用服务器,使用普通组播路由器作为集中组播服务器,利用pim协议的rp选举机制对组播服务器进行通告,可以但局限于利用单播链路协议同步的网络拓扑信息对组播转发树进行集中计算并下发到组播转发路径中的组播路由器,同时引入对组播源和组播接收端的身份确认机制,保证组播接收端的身份安全可控和组播数据安全。

参见图1,在本发明提供的实施例中,本发明的组播处理方法,包括以下步骤:

步骤s110:现网络中指定的组播路由器根据获取到的集中组播配置指令进入集中组播配置状态,并作为集中组播服务器。

具体而言,可通过用户终端如个人计算机、移动终端或指定的组播路由器本体的按键,向指定的组播路由器发送集中组播配置指令,其中,集中组播配置指令为触发进入集中组播配置程序的命令,以此使能指定的组播路由器的集中组播功能。

本发明的组播处理方法,可使用现网络中的组播路由器实现集中组播,降低了设备成本,优化了组播网络的设备组成,同时可提高组播路由的效率,使得数据得到有效传输。

步骤s120:待加入接收端的接收组播路由器向集中组播服务器发送身份确认报文;以及待确认组播源的组播源路由器向集中组播服务器发送注册报文。

具体而言,身份确认报文包括待加入接收端的ip地址、待加入接收端的接收组播路由器的ip地址,以及待加入接收端请求加入的组播地址。注册报文包括待确认组播源的ip地址以及待确认组播源的组播源路由器的ip地址。

步骤s130:集中组播服务器根据接收到的身份确认报文进行身份确认,将对应的待加入接收端作为组播组中的接收端;根据接收到的注册报文进行身份确认,将待确认组播源作为组播源。

具体而言,集中组播服务器在身份确认通过时,将对应的待加入接收端作为组播组中的接收端,以及将待确认组播源作为组播源。

本发明的组播处理方法,加入组播组的待加入接收端需通过身份确认,同时成为组播源的待确认组播源需身份确认通过,可防止随意加入组播组造成的网络负担,和造成的网络的安全隐患。

步骤s140:集中组播服务器根据获取到的组播约束条件和网络拓扑信息,以组播源的组播源路由器为根节点,以组播组中的各接收端对应的接收组播路由器为叶子节点,生成组播树。

具体而言,组播约束条件包括链路约束和路径约束等中的任一种或任意种组合,具体可根据使用者的需求确定组播约束条件,如可使设置某个组播流的组播拓扑限制、最大时延限制、最小带宽限制和整体组播树代价最小等。网络拓扑信息为现网络中所有设备的网络拓扑信息,进一步地,网络拓扑信息为集中组播服务器基于链路状态路由协议实时同步得到的链路状态信息,链路状态协议可以但不局限于单播链路状态路由协议如ospf(openshortestpathfirst开放式最短路径优先)协议。具体地,集中组播服务器可根据对应的组播约束条件以及网络拓扑信息计算出各叶子节点到根节点的路径,进而生成组播树。

本发明的组播处理方法,根据组播约束条件以及网络拓扑信息生成路径树,在集中组播服务器一端集中生成组播路由,便于在大规模网络中快速建立组播路由,减低了网络开销,提高了组播转发效率。

步骤s150:集中组播服务器根据组播树,生成组播树中每一节点对应的组播路由器的路由表,并将路由表下发至对应的组播路由器,完成集中组播路由的配置。

具体而言,可根据组播树得到组播源路由器将数据传输至组播组中的各接收端时所经过的路径,由此,可生成所有节点在现网络中对应的组播路由器的路由表,并下发至对应的设备。

本发明的组播处理方法,可将现网络中指定的组播路由器进入集中组播配置状态,待加入接收端需加入组播组时需通过对应的接收组播路由器发送身份确认报文,由集中组播服务器进行身份确认。待确认组播源需发送注册报文,由集中组播服务器进行身份确认。进一步地,在完成身份验证时,集中组播服务器可根据网络拓扑信息和组播约束条件,获取组播约束条件,生成组播树,并根据组播树生成每一节点的路由表,将各路由表集中下发给组播树每一节点对应的组播路由器。本发明的组播处理方法,可在集中组播服务器端获得完整的组播树信息,由此可集中管理至组播树上每一节点对应的路由设备。本发明可实现集中组播,使得数据信息可在较安全稳定的网络中进行传输,防止随意加入组播组造成的安全隐患以及网络负担,并可根据现网络的网络拓扑信息得到较优的组播路由。同时本发明便于组播协议的升级与维护,可降低网络资源的开销。

在一个具体的实施例中,现网络中指定的组播路由器根据获取到的集中组播配置指令进入集中组播配置状态,并作为集中组播服务器的步骤之后,还包括:

步骤s1:集中组播服务器获取加载指令,并根据加载指令加载对应的组播路由选择算法。

具体而言,组播路由选择算法可以但不局限于spf(shortestpathfirst,最短路径优先)算法和mph(minimumpathcostheuristic,最小成本组播)算法等,可在集中组播服务器上加载多种适应不同需求的集中组播路由算法。

本发明的组播处理方法,便于集中组播服务器基于组播树生成组播源路由器、各接收端的接收端组播路由器以及组播树的路径中各中间组播路由器的路由表。有助于集中管理和下发各设备的路由,提高组播转发效率,有利于快速维护和更新。

在一个具体的实施例中,集中组播服务器根据接收到的身份确认报文进行身份确认,将对应的待加入接收端作为组播组中的接收端的步骤,包括:

步骤s4:集中组播服务器根据接收到的身份确认报文,识别出接收组播路由器对应的待加入接收端在组播接收端列表中时,将待加入接收端加入到组播组中,作为组播组中的接收端。

具体而言,组播接收端列表为根据现网络的网络拓扑信息设置的组播组数据信息,可以但不局限于包括合法的组播组网段,或组播组中各接收端合法的ip地址等。具体地,集中组播服务器根据身份确认报文,识别出接收组播路由器对应的待加入接收端在组播接收端列表时,则表示该待加入接收端为合法的接收端,可加入到组播组中。此时,集中组播服务器将待加入接收端加入到组播组中,作为组播组中的接收端。进一步地,将已作为组播组中的接收端对应的接收组播路由器ip地址保存到接收组播路由器列表中,以便组播树的建立。

本发明的组播处理方法,可对组播组的加入进行身份验证,防止非法接收端随意加入,造成的网络负担和安全隐患,同时有助于集中组播服务器对组播组的集中管理。

在一个具体的实施例中,根据接收到注册报文进行身份确认,将待确认组播源作为组播组的组播源的步骤包括:

步骤s8:集中组播服务器根据接收到的注册报文,识别出组播源路由器对应的待确认组播源在组播源列表中时,将待确认组播源作为组播组的组播源。

具体而言,组播源列表为根据现网络的网络拓扑信息设置的组播源数据信息,可以但不局限于包括合法的组播源的网段,或指定组播源合法ip地址。具体地,集中组播服务器根据注册报文,识别出组播源路由器对应的待确认组播源在组播源列表中时,则表示该待确认组播源为合法的组播源,可作为组播组的组播源。进一步地,将已成为组播源的组播源路由器的ip地址保存为组播流的组播源节点,以便作为建立组播树的根节点。

本发明的组播处理方法,可对组播源进行身份确认,防止非法的组播源成为组播组的组播源,造成数据组播的混乱而引起的安全隐患,同时有助于集中组播服务器对组播源的集中管理。

参见图2,在一个具体的实施例中,在待加入接收端的接收组播路由器向集中组播服务器发送身份确认报文的步骤之前,还包括:

步骤s210:待加入接收端向对应的接收组播路由器发送igmp(internetgroupmanageprotocol,internet组管理协议)报文。

具体而言,igmp报文可以但不局限于包括待加入接收端的加入组播组的消息以及该待加入接收端的ip地址。

步骤s220:对应的接收组播路由器根据接收到的igmp报文生成身份确认报文。

具体而言,待加入接收端对应的接收组播路由器接收到igmp报文时,生成包括该接收组播路由器的ip地址、该待加入接收端的ip地址以及待加入接收端请求加入的组播地址的数据包作为身份确认报文。该接收组播路由器将身份确认报文传输至集中组播服务器请求将该待加入接收端加入组播组。

本发明的组播处理方法,便于待加入接收端通过对应的接收组播路由器加入到组播组中,同时能够有效防止非法接收端随意加入,造成的网络负担和安全隐患,同时有助于集中组播服务器对组播组的集中管理。

参加图3,在一个具体的实施例中,在待确认组播源的组播源路由器向集中组播服务器发送注册报文的步骤之前,还包括:

步骤s310:待确认组播源向对应的组播源路由器发送组播数据;组播数据包括待确认组播源的ip地址。

步骤s320:对应的组播源路由器根据接收到的组播数据,将组播数据进行封装,得到注册报文。

具体而言,对应的组播源路由器收到组播源发送的组播数据,向集中组播服务器进行注册,以便通知集中组播服务器组播源的存在。

本发明的组播处理方法,通过对应的组播源路由器得到用于传输给集中组播服务器的注册报文,便于集中组播服务器确认待确认组播源的合法性,并将存在的合法的待确认组播源作为组播组的组播源。

在一个具体的实施例中,在集中组播服务器根据接收到的身份确认报文进行身份确认,将对应的待加入接收端作为组播组中的接收端的步骤之后,还包括步骤:

步骤s12:集中组播服务器将对应的待加入接收端作为组播组中的接收端时,向作为组播组中的接收端对应的接收组播路由器发送身份已确认报文。

具体而言,身份已确认报文包括集中组播服务器确认待加入接收端加入组播组的确认信息。被集中组播服务器确认通过的组播组接收端,即作为组播组中的接收端可通过对应的接收组播路由器接收该身份已确认信息,确认成为组播组中的接收端。

步骤s16:接收组播路由器根据接收到的身份已确认报文,停止向集中组播服务器发送pimjoin报文。

具体而言,接收组播路由器根据接收到的身份已确认报文,可免于发送pimjoin报文。

本发明的组播处理方法,接收组播路由器可通过身份已确认报文通告给被集中组播服务器作为组播组中的接收端,以使该对应的待加入接收端确认成为组播组中的接收端,且无需发送pimjion报文,可减少大量报文交互给网络和系统带去的网络资源的开销,同时有助于实现集中组播服务器对组播组的集中管控和组播数据的传输。

在一个具体的实施例中,在根据接收到注册报文进行身份确认,将待确认组播源作为组播组的组播源的步骤之后,还包括:

步骤s20:集中组播服务器在将待确认组播源作为组播组的组播源时,向作为组播组的组播源对应组播源路由器发送停止注册报文。

步骤s24:组播源路由器根据停止注册报文停止向集中组播服务器发送注册报文。

本发明的组播处理方法,被集中组播服务器确认作为组播组的组播源对应的待确认组播源,可通过组播源路由器确认通过验证,并确认成为合法的组播组的组播源。本发明有助于组播树的建立,以及实现集中组播,能够地完成组播协议的维护和升级。

在一个具体的实施例中,在待加入接收端的接收端组播路由器向集中组播服务器发送身份确认报文;以及待确认组播源的组播源路由器向集中组播服务器发送注册报文的步骤之前,还包括:

现网络中指定的组播路由器基于pim协议作为汇聚点,并将作为汇聚点的消息通告给现网络中的组播路由器。

具体而言,作为现网络中指定的组播路由器嵌入了pim协议,由此,可在该指定的组播路由器作为集中组播服务器时,将该指定的组播路由器作为备选的汇聚点rp,因此,该指定的组播路由器可根据用户输入指令或优先级,基于pim的选举和通告机制,成为现网络中的汇聚点rp,并将该消息通告给现网络中的组播路由器。或者该指定的路由器可在未成为集中组播服务器时预先根据用于用户输入指令或优先级,基于pim的选举和通过机制成为现网络中的汇聚点rp。进一步地,可确保指定的组播路由器作为集中组播服务器兼汇聚点rp,并使得组播组的接收端、组播源以及其他待加入接收端的信息在集中组播服务器处实现集中管控和统一的组播路由器计算。

本发明的组播处理方法,有助于作为汇聚点的指定的组播路由器实现集中组播配置,并集中下发组播组以及组播源的组播路由,以及实现集中管控组播组接收端以及组播源。

参见图4,在一个具体的实施例中,集中组播服务器根据组播约束条件以及网络拓扑信息,以组播源为根节点,以组播组中的各接收端为叶子节点,生成组播树的步骤包括:

步骤s410:获取各叶子节点到根节点的路径,根据根节点、各路径中的最短路径,以及最短路径对应的叶子节点,生成待添加最短路径树。

具体而言,根据组播约束条件对组播数据转发的路径的约束,以及根据网络拓扑信息,将根节点和在各路径中选择的最短路径对应的叶子节点生成待添加最短路径树。

步骤s420:依次将待添加最短路径树外的叶子节点、以到待添加最短路径树中任一节点的距离为最短的路径,添加到待添加最短路径树中,得到组播树。

具体而言,基于上述步骤s410生成的待添加最短路径树,分别计算出树外叶子节点到任一节点的最短路径,并以该最短路径和将该最短路径对应的树外叶子节点添加到待添加最短路径树中,得到完整的组播树。

本发明的组播处理方法,可在集中组播服务器端根据组播约束条件和网络拓扑信息集中生成组播树,使得组播组中的接收端到组播源的组播转发路径最优。本发明提高了组播转发的效率,能实现组播协议的快速维护和升级。

参见图5,结合图6、图7、图8和图9,为进一步说明本发明的组播方法,以图8中的组播路由器router10为集中组播服务器进行说明。

作为一优选的实施例,本发明的组播处理方法,包括以下步骤:

步骤s510:配置指定的组播服务器。

具体地,配置指定的组播服务器包括以下步骤:

步骤s610:配置指定的组播路由器为备选rp,并使能集中组播计算功能。

步骤s620:配置组播源列表和接收端列表。

步骤s630:配置约束条件,组播约束条件最大可基于指定组播流。

步骤s640:基于单播链路状态路由协议同步链路状态信息。

具体地,现网络中指定的组播路由器基于pim协议作为汇聚点,并将作为汇聚点的消息通告给现网络中的组播路由器。进一步地,作为汇聚点的组播路由器接收集中组播配置指令被使能进入集中组播配置状态,作为集中组播服务器。

进一步地,图7中组播路由器router10作为集中组播服务器。配置router10为组播组225.0.0.1的rp,并使能作为rp的组播路由器的集中组播服务器选项作为集中组播服务器。进一步地,配置可信组播源为10.0.01(主机source)并保存至组播源列表中,配置可信组播接收端20.0.0.1(主机receivera),20.0.0.2(主机receiverb),并将可信组播端保存在接收端列表中。组播约束条件配置为“对于(10.0.0.1,225.0.0.1)的组播流,组播转发路径排除组播路由器router6,并且组播转发方式为最小成本”,即组播树中不能包含router6。进一步地,在使能组播路由器进入集中组播配置状态后,自动启动基于单播链路状态路由协议同步现网络中的链路状态信息。

步骤s520:集中组播服务器通告rp消息。

具体地,集中组播服务器router10基于pim协议将router10为225.0.0.1的rp的消息通告给所有组播路由器。

步骤s530:待加入接收端请求加入组播组。

具体地,当待加入接收端的接收组播路由器收到待加入接收端发送的igmp报文的时候,查找到集中组播服务器,优选地,可通过单播的方式发送身份确认报文给集中组播服务器,集中组播服务器收到该报文后,对待加入接收端进行合法性检查,不在接收端列表中的待加入接收端被告知不合法,此时待加入接收端不再发送pimjoin报文;对于合法的待加入接收端,集中组播服务器在响应报文中下发给对应的接收组播路由器,接收组播路由器根据情况决定发送pimjoin报文。

进一步地,如图8所示,router11收到待加入接收端receivera发送加入225.0.0.1的igmp报文后,向集中组播服务器router10发送身份确认报文,在集中组播服务器端和接收端列表匹配通过,即receivera在接收端列表中,将receivera加入到组播组中,作为组播组中的接收端,并把router11的ip地址保存到接收组播路由器列表中。此时,集中组播服务器将身份已确认报文发送给router11告知receivera身份确认通过。进一步地,router11收到身份已确认报文后,保存当前合法的接收端的信息。receivera通过router11确认成为组播组中的接收端后,根据当前汇聚点rp为集中式组播方式,router11将不再向rp发送pimjoin报文。

步骤s540:组播源发现。

具体地,采用pim注册机制进行组播源的发现。待确认组播源的组播源路由器收到组播数据后,封装为注册报文对集中组播服务器rp进行注册,集中组播服务器收到注册报文后,根据注册报文对待确认组播源进行身份确认。

进一步地,待确认组播源发送组播数据到router1,router1把报文封装为单播,向rp集中组播服务器router10发起注册。router10对待确认组播源进行确认,发现待确认组播源10.0.01合法,检查通过。如果使能了集中计算功能,则把组播源路由器router1保存为(10.0.01,225.0.0.1)的组播树的根节点,并发送注册停止报文给router1,使router1停止发送注册报文,并根据组播约束条件启动路由计算。

步骤s550:组播路由计算。

具体地,根据组播约束条件选择合适的组播算法进行组播路由计算。router10支持多种集中组播路由算法如spf和mph。

如图8所示,组播路由计算包括以下步骤:

步骤s810:拓扑过滤。

步骤s820:算法选择。

步骤s830:组播树计算。

步骤s840:组播路由生成。

步骤s850:组播路由下发。

具体地,拓扑过滤是根据组播约束条件,优选地,可从单播链路状态路由协议中同步的链路状态信息进行制定,算法选择是根据组播约束条件进行合法的算法选择,路由计算指根据选择的算法进行组播转发树的计算,得到指定组播流的组播树,路由生成是根据组播路由计算得到的组播树,为组播树上的每个节点生成组播路由表项,路由下发则是把每个节点的路由表下发到指定的组播路由器中。

在本实施例中,进一步地,组播约束条件为“组播转发路径排除router并且组播转发方式整体代价最小”,根据组播约束条件,在拓扑过滤阶段,把当前组播网络拓扑中,router6从接收到的拓扑中移除。优选地,根据组播约束条件,选择mph算法作为集中组播路由算法对(10.0.0.1,225.0.0.1)进行路由计算;组播路由计算以组播源直连的组播源路由器router1为根,组播接收端直连的接收组播路由器router11和router12为叶子节点,在排除了router6的拓扑中进行组播树计算。

具体地,首先分别计算接收组播路由器router11和router12到与组播源路由器router1最短路径(优选地,如采用dijkstra算法),通过比较计算结果获知router11距离组播源路由器router1更近,由此,根据router11到router1的最短路径得到待添加最短路径树,形成router1,router5,router9,router11的待添加最短路径树,再把router12到待添加最短路径树的最短路径router12-router11加入到待添加最短路径树中,最后生成组播树,如图9所示。组播树由router1,router5,router9,router11和router12组成。集中组播服务器根据组播树为这些组播路由器生成路由表并下发给相应的组播路由器,至此完成集中组播路由的配置。

本发明的组播处理方法,可将现网络中指定的组播路由器进入集中组播配置状态,待加入接收端需加入组播组时需通过对应的接收组播路由器发送身份确认报文,由集中组播服务器进行身份确认。待确认组播源需发送注册报文,由集中组播服务器进行身份确认。进一步地,在完成身份验证时,集中组播服务器可根据网络拓扑信息和组播约束条件,获取组播约束条件,生成组播树,并根据组播树生成每一节点的路由表,将各路由表集中下发给对应的组播路由器。本发明可实现集中组播,使得数据信息可在较安全稳定的网络中进行传输,防止随意加入组播组造成的安全隐患以及网络负担,并可根据现网络的网络拓扑信息得到较优的组播路由。同时本发明便于组播协议的升级与维护,可降低网络资源的开销。

作为一优选的实施例,本发明兼容当前分布式组播的实现方案。

通过配置组播服务器,可以实现和当前主流的分布式组播兼容,实现步骤如下:

步骤s30:配置组播。

在这个步骤中,和集中组播的区域在于不使能集中组播配置,只配置可信组播源和接收端列表,不需要配置组播约束条件。在这种配置下,组播服务器不再同步链路状态信息。

步骤s40:组播服务器rp点消息的通告。

该步骤和集中组播服务器相同。

步骤s50:待加入接收端加入组播组。

和集中组播服务器的集中组播方式在于,待加入接收端确认通过后,告知对应的组播接收路由器采用分布式组播路由,接收组播路由器按照pim协议,向作为rp的组播路由器发送pimjoin报文。

步骤s60:组播源发现。

和集中组播服务器的集中组播方式区别在于,待确认组播源确认通过后,组播服务器先根据接收端的情况向组播源路由器发送(s,g)join(s表示组播源,g表示组播组,(s,g)表示最短路径树),建立组播源的组播转发路径,组播转发路径建立成功后,才发送注册停止报文。

步骤s70:组播路由计算。

和集中组播服务器的集中组播方式区别在于,不再通过集中组播算法进行计算,而是每台设备根据pim协议的上下游状态各自进行计算并生成组播路由表。

本发明的组播处理方法,在现网络指定组播路由器通过配置作为集中组播服务器,可支持多种集中组播路由选择算法,以及多种组播约束条件,由此,在组播协议更新维护时,只需更新作为集中组播服务器的组播路由器即可,便于使用,组播效率高。本发明提供了加入组播组和成为组播源的身份确认机制,保证了组播数据的安全和升级维护。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法,也可以通过其它的方式实现。附图中的流程图显示了根据本发明的多个实施例的装置、方法和产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1