SDN共享树群播串流机制与方法与流程

文档序号:11693148阅读:250来源:国知局
SDN共享树群播串流机制与方法与流程

本发明属于一种应用于sdn(softwaredefinednetworking,软件定义网络)共享树群播串流机制与方法,群播来源端在发送群播串流前会建立群播树,以作为传送群播串流的路径,并借此减少网络带宽的浪费。本发明所提出的方法可减少在控制器所需要的计算量以及减少交换器所需设定的流量条数量。



背景技术:

sdn是近年来的新兴网络架构。它的概念是将网络的控制层(control-plane)功能与数据层(data-plane)功能分离,并将控制层集中至控制器,交换器上只保留传送封包的功能,交换器需要透过控制器去计算路径,并由控制器将封包传送的方向设定至交换器。因此,控制器具有全面的网络拓朴信息去建立最佳的群播树,并且能更快速的处理群播信息,使得ip串流群播在sdn上是可以实现。

控制器在群播来源端传送串流前,必须先为群播来源端建立群播树,使得群播来源端能传送至客户端。本发明针对sdn网络设计一种共享树群播串流机制。先前应用于群播串流主要是针对交换器如何设定流量条能使得封包得以传送至客户端,并没有考虑群播来源端数量造成流量条数量影响,进而影响交换器效能,不适用于大量群播来源端,在下列先前的专利技术中有提及类似的概念:us8831000(ipmulticastservicejoinprocessformpls-basedvirtualprivatecloudnetworking)、us8638789(optimalmulticastforwardinginopenflowbasednetworks)。另一方面针对树建立的机制,都是对每一个群播来源端去建立群播树,会使控制器计算群播树的时间过长,并且使交换器内流量条的数量过多,因此也不适用于大量群播来源端。

本案发明人鉴于上述现有方式所衍生的各项缺点,乃亟思加以改良创新,并经多年苦心孤诣潜心研究后,终于成功研发完成本sdn共享树群播串流机制与方法。



技术实现要素:

为达上述目的,本发明即在于针对sdn网络设计一种共享树群播串流机制与方法,群播来源端在发送群播串流前,透过将临近的群播来源树分为同一丛集,随着网络拓朴分布,自动能形成多个丛集,接着为每个丛集建立群播树,以作为传送群播串流的路径。透过共享树并设定共享树的流量条,减少在控制器所需要的计算量以及减少交换器所需设定的流量条数量。若建立过多的群播树(如对每一个群播来源建立群播树),会使控制器计算群播树的时间过长,并且使交换器内流量条的数量过多;若建立过少的群播树(如对所有群播来源只建立一棵群播树),则会使传送的路径过长,并且使集中点的负担过重。

达成上述发明目的的sdn共享树群播串流机制,是在控制器在群播来源端传送串流前,将临近的群播来源端分为多个丛集,随着网络拓朴分布,自动能形成多个丛集,对于每一个丛集设立一个与群播来源端距离最小的交换器作为集中点,使得同一个丛集内的群播来源端建立最短路径至集中点,并以集中点为根,建立最短路径树到所有的群播客户端,并根据最短路径树,对于每个在树节点上的交换器设定流量条。若建立过多的群播树(如对每一个群播来源建立群播树),会使控制器计算群播树的时间过长,并且使交换器内流量条的数量过多;若建立过少的群播树(如对所有群播来源只建立一棵群播树),则会使传送的路径过长,并且使集中点的负担过重。

本发明所提出的sdn共享树群播串流机制包括两大模块:一群播树建立模块,以及(二)一流量条设定模块。控制器在群播来源端传送串流前,首先利用控制器原有的拓朴侦测模块进行交换器、群播来源端与客户端位置的侦测。接下来,利用群播树建立模块,建立多个群播树使得所有的群播来源端以及客户端都在群播树内。最后,根据群播树,控制器设定传送封包至客户端的流量条到群播树上的交换器上。

一种sdn共享树群播串流机制,是由控制器在群播来源端传送串流前,将群播来源端分为多个丛集,对于每一个丛集设立一个与群播来源端距离最小的交换器作为集中点,使得同一个丛集内的群播来源端建立最短路径至集中点,并以集中点为根,建立最短路径树到所有的群播客户端,并根据最短路径树,对于每个在树节点上的交换器设定流量条(flowentry),主要包括一群播树建立模块,是于交换器、群播来源端以及群播客户端分布下,建立传送串流所需的群播树,其包含:一群播来源端丛集单元,是将所有群播来源端分为多个丛集;一集中点选择单元,是设置于群播来源端丛集单元之后,以选择一个丛集中距离最小的交换器作为集中点;以及一最短路径树建立单元,是设置于集中点选择单元之后,用以将每个丛集中的所有群播来源端建立最短路径至丛集集中点,并以丛集集中点为根,建立最短路径群播树到所有的群播客户端;一流量条设定模块,是设置于群播树建立模块之后,并以设定交换器上的流量条,其流量条包含一群播来源端流量条设定单元,是以设定对于在丛集内的来源端串流,利用openflowprotocol(openflow协议)设定传送flow(流量)至交换器的流量条动作,来将串流封包送出至丛集集中点;一集中点交换器流量条设定单元,是以设定对于在丛集内的来源端串流,利用openflowprotocol设定贴vlan(virtuallocalareanetwork,虚拟局域网)标签的flow至交换器的流量条动作,来贴vlan标签到串流封包上,并将串流封包送出至客户端;一树交换器流量条设定单元,是以设定对于已贴vlan标签的串流封包,利用openflowprotocol设定传送的flow至交换器的流量条动作,来将串流封包送出至客户端;以及一客户端交换器流量条设定单元,是以设定对于已贴vlan标签的串流封包上,利用openflowprotocol设定移除vlan标签并传送flow至交换器的流量条动作,来将串流封包上的vlan标签移除,并将串流封包送至要求的客户端上。

其中群播来源端丛集单元,包含:一丛集选择单元,是以计算丛集与丛集之间的距离,并选择丛集距离最小的两个丛集;一距离阀值比较单元,是设置于丛集选择单元之后,以根据丛集选择单元所选择的两个丛集,其距离是否小于距离阀值,以决定群播来源端丛集单元是否结束;一负载比较单元,是设置于距离阀值比较单元之后,以根据丛集选择单元所选择的两个丛集,其总流量是否小于等于最大交换器容量,以决定两个丛集是否进行合并。其中集中点选择单元,是包含一最短路径计算单元,是以计算一个群播来源端到某交换器的最短路径;以及一最小距离总和选择单元,是设置于最短路径计算单元之后,以选择具有最小距离总和的交换器,以作为丛集集中点。其中最短路径树建立单元,是包含二最短路经计算,以计算群播来源端或客户端到丛集集中点的最短路径,以建立最短路径的群播树。

一种sdn共享树群播串流方法,包括:

步骤一、拓朴建立,当控制器开启时,利用控制器中的拓朴侦测模块以及群组管理模块获得交换器、群播来源端以及群播客户端的分布;

步骤二、群播树建立,依拓朴建立,将群播来源端分为多个丛集,对于每一个丛集设立一个与群播来源端距离最小的交换器作为集中点,使得同一个丛集内的群播来源端建立最短路径至集中点,并以集中点为根,建立最短路径树到所有的群播客户端;

步骤三、流量条设定,依群播树建立,设定流量条在群播树上的交换器,以传送群播串流封包。

其中群播树建立的步骤是包含:

步骤一、群播来源端丛集,将所有群播来源端分为多个丛集;

步骤二、集中点选择,将群播来源端丛集中每一个丛集选择距离最小的交换器,以作为丛集集中点;

步骤三、最短路径树建立,将集中点选择中每一个丛集集中点,建立每一个群播来源端到丛集集中点的最短路径,以及建立从丛集集中点到所有客户端的最短路径树。

其中流量条设定的步骤是包含:

步骤一、群播来源端流量条设定,对于在群播来源端到丛集集中点路径上的交换器,设定流量条符合条件为来源ip为群播来源端ip,目的ip为群播ip,动作为传送至丛集集中点;

步骤二、集中点交换器流量条设定,对于丛集集中点,设定流量条符合条件为丛集内从群播来源端送出的封包,动作为贴上丛集vlan标签,并传送至所有客户端;

步骤三、树交换器流量条设定,对于群播树上的交换器,设定流量条符合条件为丛集vlan标签的封包,动作为传送至所有客户端;

步骤四、客户端交换器流量条设定,对于连接客户端的交换器,设定流量条符合条件为丛集vlan标签的封包,动作为移除封包上的丛集vlan标签,并将封包传送至客户端。

其中群播来源端丛集的步骤是包含:

步骤一、设定每一群播来源端为一个丛集;

步骤二、丛集选择,透过dijkstra算法,以计算任两个丛集之间的距离,从结果中选择距离最小的两个丛集;

步骤三、距离阀值比较,以决定目前两个丛集的距离是否小于距离阀值,若是,则进入负载比较;反之,则结束群播来源端丛集,所得结果为多个丛集;

步骤四、其负载比较,是以决定目前两个丛集的流量是否小于等于最大交换器容量,若是,则两丛集进行丛集合并,并重新回到丛集选择;反之,则直接回到丛集选择,重新选择距离最小的两个丛集。

其中集中点选择的步骤是包含:

步骤一、最短路径计算,透过dijkstra算法,以计算一个群播来源端到某交换器的最短路径;

步骤二、最小距离总和选择,从最短路径计算的结果,累加在同一个丛集下所有群播来源到相同交换器的最短路径距离,并选择具有最小距离总和的交换器,以作为丛集集中点。

其中最短路径树建立的步骤,是包含二最短路经计算,以计算群播来源端或客户端到丛集集中点的最短路径,以建立最短路径树。

本发明所提供一种sdn共享树群播串流机制与方法,主要是针对交换器如何设定流量条能使得封包得以传送至客户端,并没有考虑群播来源端数量造成流量条数量影响,进而影响交换器效能,不适用于大量群播来源端,与其他习用技术相互比较时,更具备下列优点:

本发明利用将群播来源端分为多个丛集,可减少群播树的数量。

本发明利用丛集共享群播树,可减少控制器计算群播树的时间。

本发明利用丛集共享群播树,可减少交换器内流量条的数量。

附图说明

请参阅有关本发明的详细说明及其附图,将可进一步了解本发明的技术内容及其目的功效;有关附图为:

图1为本发明sdn共享树群播串流机制与方法的系统架构图;

图2为本发明sdn共享树群播串流机制与方法的群播来源端丛集单元的架构图;

图3为本发明sdn共享树群播串流机制与方法的集中点选择单元的架构图;

图4为本发明sdn共享树群播串流机制与方法的最短路径树建立单元的架构图;

图5为本发明sdn共享树群播串流机制与方法的流程图;

图6为本发明sdn共享树群播串流机制与方法的群播来源端丛集的流程图;

图7为本发明sdn共享树群播串流机制与方法的集中点选择步骤的流程图;

图8为本发明sdn共享树群播串流机制与方法的最短路径树建立的流程图;

图9为本发明sdn共享树群播串流机制与方法的流量条设定的流程图。

附图标记说明:

100-拓朴侦测单元;200-群播树建立模块;210-群播来源端丛集单元;211-丛集选择单元;212-距离阀值比较单元;213-负载比较单元;220-集中点选择单元;221-最短路径计算单元;222-最小距离总和选择单元;230-最短路径树建立单元;300-丛集;400-集中点;500-群播树;510-群播来源端;520-客户端;530-最短路径计算;600-流量条设定模块;610-群播来源端流量条设定单元;620-集中点交换器流量条设定单元;630-树交换器流量条设定单元;640-客户端交换器流量条设定单元;s7121-最短路径计算;s7122-最小距离总和选择;s700~s720-流程;s720~s728-流量条设定流程;s7111~s7116-群播来源端丛集的流程;s810~s850-最短路径树建立流程。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,但并不用于限定本发明。

以下,结合附图对本发明进一步说明:

请参阅图1所示,为本发明sdn共享树群播串流机制与方法的系统架构图,是由控制器在群播来源端传送串流前,将群播来源端分为多个丛集,对于每一个丛集设立一个与群播来源端距离最小的交换器作为集中点,使得同一个丛集内的群播来源端建立最短路径至集中点,并以集中点为根,建立最短路径树到所有的群播客户端,并根据最短路径树,对于每个在树节点上的交换器设定流量条(flowentry),主要包括一群播树建立模块200,是于交换器、群播来源端以及群播客户端分布下,建立传送串流所需的群播树,其包含:一群播来源端丛集单元210,是将所有群播来源端分为多个丛集300;一集中点选择单元220,是设置于群播来源端丛集单元210之后,以选择一个丛集300中距离最小的交换器作为集中点400;以及一最短路径树建立单元230,是设置于集中点选择单元220之后,用以将每个丛集中的所有群播来源端建立最短路径至丛集集中点,并以丛集集中点为根,建立最短路径群播树到所有的群播客户端;一流量条设定模块600,是设置于群播树建立模块200之后,并以设定交换器上的流量条,其流量条包含一群播来源端流量条设定单元610,是以设定对于在丛集内的来源端串流,利用openflowprotocol设定传送flow至交换器的流量条动作,来将串流封包送出至丛集集中点;一集中点交换器流量条设定单元620,是以设定对于在丛集内的来源端串流,利用openflowprotocol设定贴vlan标签的flow至交换器之流量条动作,来贴vlan标签到串流封包上,并将串流封包送出至客户端;一树交换器流量条设定单元630,是以设定对于已贴vlan标签的串流封包,利用openflowprotocol设定传送的flow至交换器之流量条动作,来将串流封包送出至客户端;以及一客户端交换器流量条设定单元640,是以设定对于已贴vlan标签的串流封包上,利用openflowprotocol设定移除vlan标签并传送flow至交换器的流量条动作,来将串流封包上的vlan标签移除,并将串流封包送至要求的客户端上。

请参阅图2所示,为本发明sdn共享树群播串流机制与方法的群播来源端丛集单元的架构图,其中群播来源端丛集单元210,包含:一丛集选择单元211,是以计算丛集与丛集之间的距离,并选择丛集距离最小的两个丛集;一距离阀值比较单元212,是设置于丛集选择单元211之后,以根据丛集选择单元211所选择的两个丛集,其距离是否小于距离阀值,以决定群播来源端丛集单元是否结束;一负载比较单元213,是设置于距离阀值比较单元212之后,以根据丛集选择单元211所选择的两个丛集,其总流量是否小于等于最大交换器容量,以决定两个丛集是否进行合并。

请参阅图3所示,为本发明sdn共享树群播串流机制与方法的集中点选择单元的架构图,其中集中点选择单元220,是包含一最短路径计算单元221,是以计算一个群播来源端到某交换器的最短路径;以及一最小距离总和选择单元222,是设置于最短路径计算单元221之后,以选择具有最小距离总和的交换器,以作为丛集集中点。

请参阅图4所示,为本发明sdn共享树群播串流机制与方法的最短路径树建立单元的架构图,其中最短路径树建立单元,是包含二最短路经计算530,以计算群播来源端510或客户端520到丛集集中点400的最短路径,以建立最短路径的群播树500。

请参阅图5所示,为本发明sdn共享树群播串流机制与方法的流程图,一种sdn共享树群播串流方法,包括:

步骤一、拓朴建立s700,当控制器开启时,利用控制器中既有的拓朴侦测模块以及群组管理模块获得交换器、群播来源端以及群播客户端的分布;

步骤二、群播树建立s710,依拓朴建立s700,将群播来源端分为多个丛集,对于每一个丛集设立一个与群播来源端距离最小的交换器作为集中点,使得同一个丛集内的群播来源端建立最短路径至集中点,并以集中点为根,建立最短路径树到所有的群播客户端;

步骤三、流量条设定s720,依群播树建立s710,设定流量条在群播树上的交换器,以传送群播串流封包。

其中群播树建立s710的步骤是包含:

步骤一、群播来源端丛集s711,将所有群播来源端分为多个丛集;

步骤二、集中点选择s712,将群播来源端丛集中每一个丛集选择距离最小的交换器,以作为丛集集中点;

步骤三、最短路径树建立s713,将集中点选择中每一个丛集集中点,建立每一个群播来源端到丛集集中点的最短路径,以及建立从丛集集中点到所有客户端的最短路径树。

请参阅图9所示,为本发明sdn共享树群播串流机制与方法的流量条设定的流程图,其中流量条设定s720的步骤是包含:

步骤一、群播来源端流量条设定s721,对于在群播来源端到丛集集中点路径上的交换器,其设定流量条符合条件为:来源ip为群播来源端ip,目的ip为群播ip,动作为传送至丛集集中点s722;

步骤二、集中点交换器流量条设定s723,对于丛集集中点,其设定流量条符合条件为:丛集内从群播来源端送出的封包,动作为贴上丛集vlan标签,并传送至所有客户端s724;

步骤三、树交换器流量条设定s725,对于群播树上的交换器,其设定流量条符合条件为:丛集vlan标签的封包,动作为传送至所有客户端s726;

步骤四、客户端交换器流量条设定s727,对于连接客户端的交换器,其设定流量条符合条件为:丛集vlan标签的封包,动作为移除封包上的丛集vlan标签,并将封包传送至客户端s728。

请参阅图6所示,为本发明sdn共享树群播串流机制与方法的群播来源端丛集的流程图,其中群播来源端丛集s711的步骤是包含:

步骤一、设定每一群播来源端为一个丛集s7111;

步骤二、丛集选择s7112,透过dijkstra算法,以计算任两个丛集之间的距离,从结果中选择距离最小的两个丛集;

步骤三、距离阀值比较s7113,以决定目前两个丛集的距离是否小于距离阀值,若是,则进入负载比较;反之,则结束群播来源端丛集s7114,所得结果为多个丛集;

步骤四、负载比较s7115,是以决定目前两个丛集的流量是否小于等于最大交换器容量,若是,则两丛集进行丛集合并s7116,并重新回到丛集选择s7112;反之,则直接回到丛集选择s7112,重新选择距离最小的两个丛集。

请参阅图7所示,为本发明sdn共享树群播串流机制与方法的集中点选择步骤的流程图,其中集中点选择s712的步骤包含:

步骤一、最短路径计算s7121,透过dijkstra算法,以计算一个群播来源端到某交换器的最短路径;

步骤二、最小距离总和选择s7122,从最短路径计算的结果,累加在同一个丛集下所有群播来源到相同交换器的最短路径距离,并选择具有最小距离总和的交换器,以作为丛集集中点。

请参阅图8所示,为本发明sdn共享树群播串流机制与方法的最短路径树建立的流程图,其中最短路径树建立的步骤,是包含二最短路经计算s840,以计算群播来源端s810或客户端s820到丛集集中点s830的最短路径,以建立最短路径树s850。

上列详细说明乃针对本发明的一可行实施例进行具体说明,惟该实施例并非用以限制本发明的专利范围,凡未脱离本发明技艺精神所为的等效实施或变更,均应包含于本案的专利范围中。

综上所述,本案不仅于技术思想上确属创新,并具备习用的传统方法所不及之上述多项功效,已充分符合新颖性及进步性的法定发明专利要件,爰依法提出申请,恳请贵局核准本件发明专利申请案,以励发明,至感德便。

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