H04L12/761 H04L12/753 H04L12/46
1.一种组播树切换管理装置,应用于公网的运营商边缘PE设备上,其 中该PE设备连接用户私网中的CE设备,该网络还包括软件定义网络SDN 控制器,该装置包括:状态通知单元、切换申请单元以及切换执行单元,其 特征在于:
状态通知单元,用于将本PE设备上可用公网组播路由表项的数量 AME_Num发送给SDN控制器;
切换申请单元,用于在确定承载于默认组播树Default MDT上的私网组 播满足预定切换条件时向SDN控制器发起切换申请,并在切换申请中携带该 私网组播标识以请求将该私网组播切换到特定组播树DATA MDT上进行承 载,并等待SDN控制器的切换通知;
切换执行单元,用于在收到SDN控制器的切换通知时,将待切换的私网 组播从Default MDT切换到DATA MDT上进行承载。
2.如权利要求1所述的装置,其特征在于:所述状态通知单元进一步用 于定期将本PE设备上所有满足切换条件的私网组播的状态信息发送给SDN 控制器;其中该状态信息包括私网组播标识、私网组播流量速率以及MDT 承载标记;其中MDT承载标记为表示私网组播在Default MDT上承载的第 一标记或表示私网组播在DATA MDT上承载的第二标记。
3.如权利要求1所述的装置,其特征在于:所述切换申请单元进一步用 于在确定承载于DATA MDT上的私网组播满足预定回切条件后通知切换执 行单元;
所述切换执行单元,进一步用于根据切换申请单元的通知,将待切换的 私网组播从DATA MDT切换到Default MDT上进行承载,并将切换执行结 果通知所述SDN控制器,其中该切换执行结果中携带有该私网组播的标识。
4.如权利要求1所述的装置,其特征在于:所述切换执行单元,进一步 用于在收到SDN控制器的回切通知时,将回切通知中指定的私网组播从 DATA MDT切换到Default MDT上进行承载。
5.如权利要求1所述的装置,其特征在于:其中将AME_Num发送给 SDN控制器方式为定期发送或在AME_Num发生变化时主动发送。
6.一种组播树切换管理方法,应用于公网的运营商边缘PE设备上,其 中该PE设备连接用户私网中的CE设备,该网络还包括软件定义网络SDN 控制器,其特征在于,该方法包括如下步骤:
A、将本PE设备上可用公网组播路由表项的数量AME_Num发送给SDN 控制器;
B、在确定承载于默认组播树Default MDT上的私网组播满足预定切换 条件时向SDN控制器发起切换申请,并在切换申请中携带该私网组播标识以 请求将该私网组播切换到特定组播树DATA MDT上进行承载,并等待SDN 控制器的切换通知;
C、在收到SDN控制器的切换通知时,将待切换的私网组播从Default MDT切换到DATA MDT上进行承载。
7.如权利要求6所述的方法,其特征在于:其中步骤A进一步包括:定 期将本PE设备上所有满足切换条件的私网组播的状态信息发送给SDN控制 器;其中该状态信息包括私网组播标识、私网组播流量速率以及MDT承载 标记;其中MDT承载标记为表示私网组播在Default MDT上承载的第一标 记或表示私网组播在DATA MDT上承载的第二标记。
8.如权利要求6所述的方法,其特征在于:其中步骤C进一步包括:
在确定承载于DATA MDT上的私网组播满足预定回切条件后将待切换 的私网组播从DATA MDT切换到Default MDT上进行承载,并将切换执行 结果通知所述SDN控制器,其中该切换执行结果中携带有该私网组播的标识。
9.如权利要求6所述的方法,其特征在于:其中步骤C进一步包括:
在收到SDN控制器的回切通知时,将回切通知中指定的私网组播从 DATA MDT切换到Default MDT上进行承载。
10.如权利要求6所述的方法,其特征在于:其中将AME_Num发送给 SDN控制器方式为定期发送或在AME_Num发生变化时主动发送。
11.一种组播树切换调度装置,应用于SDN控制器上,其中该SDN控 制器用于管理公网中的PE设备以及P设备,该装置包括信息更新单元以及 切换调度单元,其特征在于:
信息更新单元,用于接收并保存PE设备或P设备发送的AME_Num;
切换调度单元,用于在收到PE设备的切换申请时判断当前最小的 AME_Num是否为0;如果不为0则向该PE设备发送切换通知;其中该切换 申请中携带有期望从Default MDT切换到DATA MDT上进行承载的私网组 播标识。
12.如权利要求11所述的装置,其特征在于:所述信息更新单元进一步 用于接收公网中PE设备发送的私网组播的状态信息,并将该状态信息保存 在私网组播状态信息表中,其中该私网组播状态信息包括私网组播标识以及 私网组播的流量速率;
所述切换调度单元进一步用于在收到PE设备的切换申请时执行切换调 度,其中切换调度过程包括:判断当前最小的AME_Num是否为0;如果不 为0则向该PE设备发送切换通知;如果为0,则遍历私网组播状态信息表以 确定是否有在DATA MDT上承载的私网组播的流量速率小于当前待切换私 网组播的流量速率,如果有则向管理该流量速率小于当前待切换私网组播且 承载于DATA MDT上的私网组播的PE设备发送回切通知;延时预定时间后 返回继续执行切换调度。
13.如权利要求12所述的装置,其特征在于,所述私网组播状态信息中 还包括该私网组播的MDT承载标记,其中MDT承载标记为表示私网组播在 Default MDT上承载的第一标记或者表示私网组播在DATA MDT上承载的 第二标记;
所述切换调度单元进一步用于在当前最小的AME_Num为0时,定期查 私网组播状态信息表中MDT承载标记为第一标记的私网组播中流量速率 最小的第一私网组播以及MDT承载标记为第二标记的私网组播中流量速率 最大的第二私网组播;判断第一私网组播的流量速率是否小于第二私网组播 的流量速率,如果是,则向管理该第一私网组播的PE设备发送回切通知;
所述切换调度单元进一步用于在当前最小的AME_Num不为0时,查 私网组播状态信息表中是否存在所述第二私网组播,如果是,则向管理该第 二私网组播的PE发送切换通知。
14.一种组播树切换调度方法,应用于SDN控制器上,其中该SDN控 制器用于管理公网中的PE设备以及P设备,其特征在于,该方法包括如下 步骤:
a、接收并保存PE设备或P设备发送的AME_Num;
b、在收到PE设备的切换申请时判断当前最小的AME_Num是否为0; 如果不为0则向该PE设备发送切换通知;其中该切换申请中携带有期望从 Default MDT切换到DATA MDT上进行承载的私网组播标识。
15.如权利要求14所述的方法,其特征在于:所述步骤a进一步包括:
接收公网中PE设备或P设备发送的私网组播的状态信息,并将该状态 信息保存在私网组播状态信息表中,其中该私网组播状态信息包括私网组播 标识以及私网组播的流量速率;
所述步骤b进一步包括:
在收到PE设备的切换申请时执行切换调度,其中切换调度过程包括: 判断当前最小的AME_Num是否为0;如果不为0则向该PE设备发送切换 通知;如果为0,则遍历私网组播状态信息表以确定是否有在DATA MDT 上承载的私网组播的流量速率小于当前待切换私网组播的流量速率,如果有 则向管理该流量速率小于当前待切换私网组播且承载于DATA MDT上的私 网组播的PE设备发送回切通知;延时预定时间后返回继续执行切换调度。
16.如权利要求15所述的方法,其特征在于,所述私网组播状态信息中 还包括该私网组播的MDT承载标记,其中MDT承载标记为表示私网组播在 Default MDT上承载的第一标记或者表示私网组播在DATA MDT上承载的 第二标记;
所述步骤b进一步包括:
在当前最小的AME_Num为0时,定期查私网组播状态信息表中MDT 承载标记为第一标记的私网组播中流量速率最小的第一私网组播以及MDT 承载标记为第二标记的私网组播中流量速率最大的第二私网组播;判断第一 私网组播的流量速率是否小于第二私网组播的流量速率,如果是,则向管理 该第一私网组播的PE设备发送回切通知;
在当前最小的AME_Num不为0时,查私网组播状态信息表中是否存 在所述第二私网组播,如果是,则向管理该第二私网组播的PE发送切换通 知。
本发明涉及通信技术领域,尤其涉及一种组播树管理、调度方法及装置。
在IP网络中,组播技术发展有相当的历史,而组播路由相关的协议经过 多年发展之后,如今最为流行的协议是PIM(Protocol Independent Multicast, 协议无关组播)协议。PIM协议又分为PIM SM(稀疏模式)协议以及PIM DM (密集模式)协议。随着技术的发展后来有出现了双向PIM(Bidir-PIM, Bidirectional PIM),其基本原理是:利用(*,G)表项进行转发,不区分发送 组播流的源地址,可以转发来自多个源方向的组播流。
随着VPN技术的发展,VPN用户在其网络内开展组播业务的需求越来越 多。对于VPN服务的提供者而言,其需要让用户的组播业务透明地跨越公网。 组播VPN技术就是在这样的背景下诞生的。以基于MPLS L3VPN网络来实 现组播VPN为例,在这种方案中一般利用MD(Multicast Domain,组播域) 方案来实现组播VPN,简称为MD MVPN。MD是一个集合,它由一些相互 间可以收发组播数据报文的VRF(Virtual Routing Forwarding)组成,每个 VPN实例独立维护的单播路由转发表称为VRF,相应地称支持组播业务的 VRF为MVRF,它同时维护单播和组播路由转发表。不同的MVRF加入到 同一个MD中,通过MD内自动建立的组播树将这些MVRF连接在一起,实 现了VPN中不同Site(站点)之间的组播业务互通,从而形成了一个组播 VPN网络。
MD方案的基本思想是:在公网中为每个VPN维护一棵默认组播分发树 (Default-MDT),以下将组播分发树简称为组播树或MDT。来自VPN中任 意一个Site的组播报文(包括协议和数据报文)都会沿着该Default-MDT被 转发给属于该MD的所有PE:PE收到组播报文后,如果其MVRF内有该组 播组的接收者,则继续向CE转发;否则将其丢弃。然而这样的方案中,仍 然存在设备的表项资源无法合理利用的问题。
有鉴于此,本发明提供一种组播树切换管理装置,应用于公网的运营商 边缘PE设备上,其中该PE设备连接用户私网中的CE设备,该网络还包括 软件定义网络SDN控制器,该装置包括:状态通知单元、切换申请单元以及 切换执行单元,其中:
状态通知单元,用于将本PE设备上可用公网组播路由表项的数量 AME_Num发送给SDN控制器;
切换申请单元,用于在确定承载于默认组播树Default MDT上的私网组 播满足预定切换条件时向SDN控制器发起切换申请,并在切换申请中携带该 私网组播标识以请求将该私网组播切换到特定组播树DATA MDT上进行承 载,并等待SDN控制器的切换通知;
切换执行单元,用于在收到SDN控制器的切换通知时,将待切换的私网 组播从Default MDT切换到DATA MDT上进行承载。
本发明还提供一种组播树切换管理方法,应用于公网的运营商边缘PE 设备上,其中该PE设备连接用户私网中的CE设备,该网络还包括软件定义 网络SDN控制器,其中该方法包括如下步骤:
A、将本PE设备上可用公网组播路由表项的数量AME_Num发送给SDN 控制器;
B、在确定承载于默认组播树Default MDT上的私网组播满足预定切换 条件时向SDN控制器发起切换申请,并在切换申请中携带该私网组播标识以 请求将该私网组播切换到特定组播树DATA MDT上进行承载,并等待SDN 控制器的切换通知;
C、在收到SDN控制器的切换通知时,将待切换的私网组播从Default MDT切换到DATA MDT上进行承载。
本发明还提供一种组播树切换调度装置,应用于SDN控制器上,其中该 SDN控制器用于管理公网中的PE设备以及P设备,该装置包括:
信息更新单元,用于接收并保存PE设备或P设备发送的AME_Num;
切换调度单元,用于在收到PE设备的切换申请时判断当前最小的 AME_Num是否为0;如果不为0则向该PE设备发送切换通知;其中该切换 申请中携带有期望从Default MDT切换到DATA MDT上进行承载的私网组 播标识。
本发明还提供一种组播树切换调度方法,应用于SDN控制器上,其中该 SDN控制器用于管理公网中的PE设备以及P设备,其中该方法包括如下步 骤:
a、接收并保存PE设备或P设备发送的AME_Num;
b、在收到PE设备的切换申请时判断当前最小的AME_Num是否为0; 如果不为0则向该PE设备发送切换通知;其中该切换申请中携带有期望从 Default MDT切换到DATA MDT上进行承载的私网组播标识。
相较于现有技术,本发明可以有效避免PE在进行DATA MDT切换之后, 组播流量转发不通的问题。
图1是一种典型的DATA MDT加入消息的格式图。
图2是一种典型的MVPN组网图。
图3是本发明一种实施方式中组播树管理装置的逻辑结构以及硬件环境 原理图。
图4是本发明一种实施方式中组播树调度装置的逻辑结构以及硬件环境 原理图。
图5是本发明一种实施方式中组播树管理方法处理流程图。
图6是本发明一种实施方式中组播树管理方法处理流程图。
图7是本发明一种实施方式中组播树管理方法处理流程图。
图8是本发明一种实施方式中组播树管理方法处理流程图。
在MVPN中,私网组播流量是承载在公网MDT上的,也就是说CE发 送的私网组播报文在PE处会被再封装上一个公网组播报文头。封装后的报 文相当于一个组播隧道报文,由于组播隧道报文使用公网组播地址,因此可 以顺利跨越公网MDT中的各个P设备,到达对端PE之后进行解封装获得原 始私网组播报文发送给对端CE设备。
MVPN中使用Default MDT最大的好处就是公网上的组播状态稳定,最 大的缺点是带宽利用率低。当组播流量比较大时,没用的组播流会无谓的消 耗组播分发树的某些分支上的带宽,因为那些分支上没有接收者。在后续的 演进过程中,MD方案又演化出一个权衡于组播路由优化和可扩展性之间的 折中方案:对于流量比较大的组播组,为其单独分配一棵特定的组播分发树 (DATA MDT),而对于流量较小的组播组,则统一使用Default MDT。由 于流量是动态变化的,因此肯定会涉及两个MDT切换问题,但是这些切换 仅仅是在公网PE(Provider Edge,运营商边缘)设备上,切换过程对于CE (Customer Edge,用户边缘)设备来说是不可见的,而对于公网核心设备(P 设备)设备而言,其会将VPN业务当成正常的数据业务进行处理,其感知不 到VPN的存在。
DATA MDT是根据实际的组播流量变化而动态创建的。在具体实现时, 一般会预先在组播源归属的PE(称为“源PE”)上设置一定条件,比如流 量阈值;如果来自组播源的流量超过了这个阈值,该PE就通知所有 Default-MDT上的其他PE(称为“接收者PE”)本PE将为这个源使用一棵 新的DATA MDT,此时只有对这个组播组有兴趣的PE们才会加入这棵新的 DATA MDT,于是组播流只会通过PE分发给那些有兴趣的其他PE。
请参考图1,在交互过程中,源PE向Default-MDT上所有的PE发送的 DATA MDT加入消息,这个消息是通过UDP方式承载的,UDP端口号为3232, 目的地址一般为224.0.0.13。其中类型字段(TYPE)目前为1;长度字段(Length) 指整个消息的字节数,这里一般为16;Customer VPN Source是指用户侧组 播源的地址,Customer VPN Group是用户组播组的地址;DATA-MDT Group 是DATA MDT需要使用组播组的地址,DATA-MDT Group是从预先配置的 组播地址池中选取的组播地址。
上述消息被封装在报文中,由源PE每隔一段时间通过Default MDT发 送一次。只要组播流量一直达到或超过阈值,源PE就会一直发送这个消息,
如果回落到阈值之下就停止发送消息。希望接收该组播组流量的PE收到消 息后会发送PIM加入消息以加入这棵DATA MDT。源PE在发出DATA MDT 消息一段时间后之后使用DATA MDT的报文头封装组播业务报文,这一段 时间的延迟主要是为了确保其他PE都能收到该消息。接下来源PE沿着 DATA MDT发送组播组流量。如果组播组流量降低到阈值以下,源PE不会 马上切换回Default MDT,而是先使用DATA MDT至少一段时间,如果这段 时间内流量一直低于阈值,则60秒后切换回Default MDT,这样可以避免频 繁的切换。接收者PE如果连续一段时间都未收到DATA MDT加入消息,为 DATA MDT组而创建的组播转发表项就会老化删除。
请参考图2,假定PE1和PE3上建立了组播VPN1,对应的组播域称为 MD1,Data-MDT组播地址池的配置为(226.0.0.1~226.0.0.100)。若组播地址 池中地址都被分配出去给了100个DATA MDT,在这种情况下 PE1->P1->P2->P3->PE3上每个设备都需要建立100条对应的组播路由。同样 的道理,假定PE2和PE4上建立了组播VPN2,对应的组播域称为MD2,其 组播地址池的配置为(227.0.0.1~227.0.0.100),假设组播地址池中的组播地址 也都被分配出去给了100个DATA MDT,那么PE4->P4->P3->P2->PE2上 每个设备需要建立100条Data-group对应的组播路由。从这里可以看出,处 于网络核心位置的P2和P3上需要支持至少200条组播路由,其它设备需要 支持至少100条组播路由。图2只不过是一个很简单的组网示例,在实际的 网络中,类似P2或P3这样的处于公网核心位置上的设备,其需要支持的组 播路由数量可能多达上千条乃至更多。
仍然以图2为例,假设P2设备最大只能支持150条组播路由,则就可 能出现某个PE发起Data MDT切换后,由于P设备组播路由表项资源不足 而出现组播转发不通的情况。一种容易想到的解决方案是,网络管理者在配 置PE设备上给DATA MDT使用的组播地址池时,必须确保整个网络中各 PE的组播地址池中组播地址的数量总和不要超过网络中任意P/PE设备的组 播路由表项的规格。但这种方式问题仍然比较突出:首先,若网络中新增加 P/PE设备,则必须对整个网络重新进行配置,确保上述条件能够得到满足, 这无疑大大制约了网络管理的灵活性和便利性。其次,对于网络提供商来说, 当某一个组播地址池配置完成后,VPN1租户可能并不会总是满负荷使用 MD1的组播地址池中的组播地址,而VPN2的租户则可能由于私网组播组数 目较多,对应的MD2组播地址池中由于地址数量较少,而无法实现每条私 网组播路由占用单独Data-MDT,实现按对应PE设备的按需洪泛。
针对上述情况,本发明提供一种SDN控制器与PE设备联动解决方案来 解决组播路由表项规格有限所引发的问题。SDN(Software Defined Network) 的技术构思起源于斯坦福大学Ethane项目,此后SDN架构随着技术研究的 深入和发展得到了学术界和工业界的广泛认可,成为了未来网络发展的新方 向。SDN技术架构通过把原有封闭的体系解耦为数据平面、控制平面和应用 平面,提供了一种可编程的网络实现。在SDN网络中,所有的设备都会与 SDN控制器建立连接(比如TCP连接)。在这些连接之上,SDN控制器能 够实时的获取网络设备的状态,资源、协议运行情况等信息,并下发控制命 令控制网路设备的表项的增删、进行业务配置和流量优化与监测等。在本发 明中SDN控制器一样和公网中的PE设备以及P设备建立连接,对PE设备 和P设备进行管理以及调度,或者接收各个设备上报的各种有用的信息。
请参考图3以及图4,在本发明联动方案中,本发明提供一种应用于PE 设备上的组播树切换管理装置以及应用于SDN控制器上组播树切换调度装 置。在一种流行的实施方式中,上述两个装置均通过计算机程序来实现,本 发明并不排除软硬件结合,硬件实现乃至可编程逻辑器件的实现方式。请参 考图2,从逻辑结构上看,所述组播树切换管理装置包括状态通知单元、切 换申请单元以及切换执行单元,组播树切换调度装置包括信息更新单元以及 切换调度单元。上述两个装置运行的基本硬件环境包括CPU、内存、非易失 性存储器以及其他必要的硬件。请参考图4至图8,在一个实施方式中,在 运行过程中,上述两个装置配合过程包括如下步骤。
PE设备一侧,组播树切换管理装置的处理流程包括:
步骤501,状态通知单元将本PE设备上可用公网组播路由表项的数量 AME_Num发送给SDN控制器;
步骤502,切换申请单元在确定承载于Default MDT上的私网组播满足 预定切换条件时向SDN控制器发起切换申请,并在切换申请中携带该私网组 播标识以请求将该私网组播切换到DATA MDT上进行承载,并等待SDN控 制器的切换通知;
步骤503,切换执行单元在收到SDN控制器的切换通知时,将私网组播 从Default MDT切换到DATA MDT上进行承载。
SDN控制器一侧,组播树切换调度装置的处理流程包括:
步骤601,信息更新单元接收并保存PE设备或P设备发送的AME_Num;
步骤602,切换调度单元在收到PE设备的切换申请时判断当前最小的 AME_Num是否为0;如果不为0则向该PE设备发送切换通知;其中该切换 申请中携带有期望从Default MDT切换到DATA MDT上进行承载的私网组 播标识。
通过以上的实施例可以看出,本发明中,PE设备以及P设备将自身的 AME_Num发送给SDN控制器,AME_Num的发送方式可以是定期发送,或 者是在AME_Num发生变化是主动发送。得到各个设备发送的AME_Num之 后,SDN控制器可以在内部维护一张AME_Num记录表,在该记录表中记录 和更新每个设备对应的AME_Num,根据该表SDN控制器就可以及时得知当 前公网中是否有PE设备或P设备的公网组播表项已经耗尽(即最小的 AME_Num为0);如果是,则说明若当前PE设备立刻进行切换,就有可能 导致组播流量在到达公网组播表项已经耗尽的设备时无法被转发。本发明中, PE设备进行Default MDT到DATA MDT的切换是根据SDN控制器的切换 通知进行的。在没有得到切换通知之前,对于满足切换条件的私网组播流量 仍然在Default MDT进行承载,如此可避免盲目切换而导致转发不通的问题。
在上述的实施方式中,SDN控制器在PE设备和P设备的协助下对切换 过程进行控制,使得切换过程更加合理。然而考虑到一个公网服务的用户非 常多,私网组播的数量不断变化,私网组播流量也会发生变化,其仍然可能 出现下述情况:
假设PE1设备上预定切换条件是私网组播的流量速率达到V1,其中该 私网组播通常以(VPN,S,G)来标识,其中VPN标识私网用户的VPN标识, S表示组播源地址,而G表示私网组播地址。一开始的时候,假设PE1上私 网组播1的流量速率为1.2V1,在切换时,SDN控制器发现没有AME_Num 为0,于是就批准了这个切换申请。私网组播1切换到对应的DATA MDT 上进行承载。过了一段时间之后,PE1上又出现了一个私网组播2,其流量 速率是2.5V1,也满足切换条件。PE1同样向SDN控制器发送切换申请,此 时假设SDN控制器发现有设备的AME_Num为0。在一种常规的处理方式中, SDN控制器可以拒绝该申请,直到最小的AME_Num不为0,私网组播2流 量仍然在Default MDT进行承载。但这样的方式显得不够优化,在MVPN中, 使用DATA MDT的初衷是希望流量较大的私网组播能够切换到DATA MDT 上来。然而此时由于有设备的AME_Num为0,这个切换无法被批准。针对 这种情况,本发明在上述实施方式的基础上提出一个更为优化为实施方式, 其处理过程如下。
PE设备一侧,组播树切换管理装置的处理流程包括:
步骤701,状态通知单元将本PE设备上可用公网组播路由表项的数量 AME_Num发送给SDN控制器;
步骤702,状态通知单元定期将本PE设备上所有在DATA MDT上承载 的私网组播的状态信息发送给SDN控制器;其中该状态信息包括私网组播标 识以及对应的私网组播流量速率;
步骤703,切换申请单元在确定承载于Default MDT上的私网组播满足 预定切换条件时向SDN控制器发起切换申请,并在切换申请中携带该私网组 播标识以请求将该私网组播切换到DATA MDT上进行承载,并等待SDN控 制器的切换通知,其中切换申请中还携带有待切换私网组播的流量速率;
步骤704,切换执行单元在收到SDN控制器的切换通知时,将私网组播 从Default MDT切换到DATA MDT上进行承载;
步骤705,切换执行单元在收到SDN控制器的回切通知时,将私网组播 从DATA MDT切换到Default MDT上进行承载;
SDN控制器一侧,组播树切换调度装置的处理流程包括:
步骤801,信息更新单元接收并保存PE设备或P设备发送的AME_Num;
步骤802,信息更新单元接收PE设备发送私网组播的状态信息,并将该 状态信息对应保存在私网组播状态信息表中;其中该信息表中至少包括PE 设备标识、私网组播标识以及私网组播流量速率;
步骤803,切换调度单元在收到PE设备的切换申请时执行切换调度,转 入步骤804;
步骤804,切换调度单元判断当前最小的AME_Num是否为0;如果不 为0转步骤805;如果为0,转步骤806;
步骤805,切换调度单元向该PE设备发送切换通知;
步骤806,切换调度单元遍历私网组播状态信息表以确定是否有在DATA MDT上承载的私网组播的流量速率小于当前待切换私网组播的流量速率,如 果有则向管理该流量速率小于当前待切换私网组播且承载于DATA MDT上 的私网组播的PE设备发送回切通知,转步骤807;
步骤807,延时预定时间后返回步骤804。
在一个较佳的实施方式中,本发明PE设备配置的切换条件是流量速率 达到阈值V。若某个私网组播的流量速率达到V,则可以等待一个“观察时 间”,比如60秒,然后向SDN提出切换申请,以要求将该私网组播从Default MDT切换到DATA MDT上承载。相反当一个原来在DATA MDT上承载的 私网组播的流量速率下降到小于V的时候,PE可以主动进行回切,主动回 切的实现可以参考各种成熟的设计。进一步来说,在一种比较优化的实现方 式中,在PE申请切换或者主动回切时,其可相应将回切的私网组播的状态 信息发送给SDN控制器,而满足切换条件的私网组播是SDN控制器所关注 的重要信息。
从SDN控制器的角度来说,其需要从PE处得知所有在DATA MDT上 承载的私网组播的流量速率的变化情况。除了PE设备在申请切换或主动回 切时发送之外,在优选的方式中,PE设备还可以定期将其上的私网组播的状 态信息发送给SDN控制器,因为某个私网组播速率的变化可能会导致SDN 控制器后续会对其采取相应的处理措施。比如说,假设私网组播1已经切换 到DATA MDT上进行承载,但是其速率下降到1.1V,假定该速率是在通过 DATA MDT承载的私网组播中最低的一个,而此时一个新的私网组播2产生, 其流量速率是2.5V。若当前最小的AME_Num为0,说明网络中有设备的公 网组播路由表项资源已经耗尽,私网组播2进行切换的后果是报文在 AME_Num为0的设备上无法转发。
针对这种情况,本发明中SDN控制器发现私网组播1的速率低,而私网 组播2的速率高,两者在一般原则上都需要在DATA MDT进行承载,但是 此时最小AME_Num为0,那么SDN控制器优先让速率更大的私网组播2 在DATA MDT上进行承载。因此其可以要求私网组播1所在的PE对私网组 播1进行回切,因为私网组播1的回切很可能会让最小AME_Num从0变化 为1。在发出回切通知之后,SDN控制器通常需要等待一个预定的时间之后, 再来检查最小AME_Num是否为0,如果还是为0则重新选择进行回切的私 网组播,如果一直选择不到,也就是在DATA MDT上承载的私网组播的流 量速率都不小于当前待切换私网组播的流量速率,此时SDN控制器更新私网 组播状态信息表即可。值得注意的是:理论上来说,一个私网组播回切到 Default MDT,并不意味着当前AME_Num为0的设备的AME_Num一定会 变化为1。举例来说,请参考图2,若MD1中的某个私网组播回切到Default MDT,此时P4的AME_Num不会有任何变化。但在实际组网中,AME_Num 为0的设备往往是网络中比较核心位置上的设备,因为几乎每一个MDT都 会经过该设备,因此这些比较核心设备的公网组播路由表项规格固然很大, 但是由于其表项消耗更大,因此AME_Num为0的设备更有可能是这些设备。 此时,从反向来看,当一条私网组播回切之后,这些设备的AME_Num有很 大的可能性从0变化为1,因为回切的私网组播所使用的DATA MDT很可能 经过这些核心设备,或者说核心设备上很可能有DATA MDT对应的公网组 播路由表项。
以上实施方式解决了最小AME_Num为0时,如何进行回切实现表项资 源腾挪,从而为速率更高的待切换私网组播提供DATA MDT的问题。这种 实施方式中,腾挪的触发机制是有PE发起申请切换。如果仅仅依赖这一个 触发机制,那么实现上仍然不是那么完美。仍然以上述例子为基础,假设私 网组播1速率分别为2V,假设该速率是所有在DATA MDT上承载的私网组 播中最小的一个。此时新的私网组播2的流量速率为1.5V,其满足切换条件, 于是PE向SDN控制器发起切换申请,SDN控制器发现当前最小AME_Num 为0,继续检查是否有DATA MDT上私网组播流量速率小于1.5V的,经过 检查发现最小的速率是2V,大于1.5V,于是私网组播2无法切换到DATA MDT上承载,继续在Default MDT上承载。
假设过了一段时间之后,当前最小AME_Num仍然为0,私网组播1的 速率下降到1.5V,而私网组播2的速率上升到2V。显然这种情况是可能发 生。本发明中,针对这种情况,每个PE设备上的状态通知单元定期上报的 私网组播的状态信息中进一步包括私网组播的MDT状态标记,MDT状态标 记分为两种,一种表示DATA MDT,另一种表示Default MDT。在本实施方 式中PE上报的私网组播不仅包括在DATA MDT上承载的私网组播,此时 PE会上报所有待切换的私网组播(也就是满足切换条件的私网组播),其中 可能有一些组播虽然满足切换条件,但当前仍然在Default MDT上进行承载。 比如说,之前私网组播2的速率是1.5V,大于切换阈值V,因此属于满足切 换条件的私网组播,只不过私网组播2仍然在Default MDT承载。
SDN控制器可以根据最新的状态信息定期去检查是否有Default MDT上 承载的待切换私网组播的流量速率大于在DATA MDT上承载的私网组播的 流量速率。如果有这种情况存在,则将DATA MDT上承载的私网组播进行 回切,尝试腾挪出表项资源,以允许流量速率更大的私网组播切换到DATA MDT上承载。在优选的方式中,SDN控制器上的切换调度单元定期查私 网组播状态信息表中MDT承载标记为第一标记的私网组播中流量速率最小 的第一私网组播以及MDT承载标记为第二标记的私网组播中流量速率最大 的第二私网组播。这里的第一私网组播和第二私网组播是SDN控制器优先调 度的两个对象,如果后续真的进行回切,那么被回切的第一私网组播最好是 在DATA MDT上承载的私网组播中流量速率最小的那一个;而如果后续真 的对第二私网组播进行切换的话,那么第二私网组播最好是Default MDT上 承载的私网组播中流量速率最大的那一个。当该第一私网组播的流量速率小 于第二私网组播的流量速率,SDN控制器向管理该第一私网组播的PE设备 发送回切通知。这个过程可以循环执行,目标是在最小的AME_Num为0, 且第一私网组播和第二私网组播流量关系满足上述条件时,为第二私网组播 腾挪出资源。
在SDN控制器完成一次腾挪之后,最小的AME_Num并不一定会从0 变化为1,因此要对第二私网组播进行切换,其同样可以通过定期判断 AME_Num是否为0来确定是否切换。如果SDN控制器的切换调度单元发现 当前最小的AME_Num不为0,且查私网组播状态信息表发现其中存在所 述第二私网组播,向管理该第二私网组播的PE发送切换通知,从而将第二 私网组播切换到DATA MDT上进行承载。
值得注意的是,本发明上述切换过程以及回切过程着重于描述在切换和 回切的流量条件,事实上切换和回切可能还受到其他条件约束,比如说为了 避免频繁的切换和回切,可能需要在流量条件满足的时长达到一定的时长才 需要回切。再比如说,第二私网组播隧道的流量速率大于第一私网组播,是 第一私网组播回切的必要条件,但如果两者之间的差值达不到一个指定的阈 值,或者说两者之间流量速率差值很小(比如只有1KB/S),立刻进行切换 可能会出现切换频繁影响稳定度的问题,因此本发明同样也可以选择不进行 回切。更多与回切或切换相关的约束条件,本领域普通技术人员可以参考现 有设计或根据网络应用的实际需要增加进来,本发明不再一一列举。
以下通过一个示例来进一步解释上述实施方式。请参考图2,假定PE1 和PE3上建立了组播VPN1,对应的组播域为MD1。PE1上配置的Default MDT的公网组播地址为225.0.0.1,Data MDT的公网组播地址池的配置为 (226.0.0.1~226.0.0.2),进行Data-MDT切换条件是私网组播流量速率达到 100KB/S。假定PE2和PE4上建立了组播VPN2,对应的组播域为MD2,PE4 上配置的Default MDT的公网组播地址为225.0.0.2,Data MDT的公网组播 地址池的配置为(227.0.0.1~227.0.0.2),进行Data-MDT切换条件是私网组播 流量速率达到100KB/S。
SDN控制器通过接收各个PE以及P设备发送的AME_Num确定当前P2 上可用组播路由资源数目最少,P2是整个网络开展DATA MDT承载的瓶颈 所在。假设除了Default MDT占用的表项之外,P2上的AME_Num为2条, 当然事实上一般远远超过2条,这里仅仅是示例性的。为了方便描述,后续 都假设P2的AME_Num一直是最小;当然在实际网络中最小的AME_Num 可能随时变化为其他设备的AME_Num。
在初始的时候,假设从CE1发送的私网组播a的(VPN,S,G)为(1, 100.0.0.1,230.0.0.1),该私网组播的流量速率为200KB/S。显然该速率已经 达到PE1上的Data-MDT的切换阈值,于是PE1按照前述流程向SDN控制 器申请进行Data-MDT切换。收到该切换申请之后,SDN controller发现P2 的AME_Num不为0,SDN控制器批准该申请,向PE1发送切换通知,同时 将本地保存的私网组播状态信息表更新。同样地,假设CE4私网组播b的 (VPN,S,G)为(2,100.0.0,1,230.0.0.1),其流量速率为120KB/S,显然该 速率达到PE4上的配置的Data-MDT的切换阈值,PE4同样也会发出申请, 该切换申请最终也会被批准。最终私网组播a和私网组播b也会切换到 Data-MDT上进行承载。此时SDN控制器上的私网组播状态信息表的更新结 果如表1所示。
设备标识 (VPN,S,G) 流量速率 MDT状态
PE1 (1,100.0.0.1,230.0.0.1) 200KB/S Data-MDT
PE4 (2,100.0.0.1,230.0.0.1) 120KB/S Data-MDT
表1
接下来,假设CE1又发送了一个新的私网组播c,其(VPN,S,G)为(1, 100.0.0.2,230.0.0.2),其流量速率为150KB/S,也达到PE1上的Data-MDT 的切换阈值,于是PE1向SDN controller申请切换,SDN控制器更新表1得 到表2。如前所述,由于私网组播a和私网组播b切换到DATA MDT,这导 致了P2的AME_Num变为0。SDN控制器发现P2上没有可用公网组播路由 表项,此时SDN控制器遍历比较表2中其他私网组播的流量速率,结果发现 PE4上私网组播b当前的流量速率为120KB/S。在优选的方式中,SDN控制 器先通知PE4将私网组播回切到Default-MDT进行承载。由于回切需要一定 的时间,SDN控制器等待一段时间后,假设PE4执行回切完成,此时SDN 控制器再检查发现P2的AME_Num,发现P2的AME_Num为1,也就是P2 有1条可用的公网组播路由表项。此时SDN控制器再通知PE1私网组播c 可以进行切换,然后将表2更新为表3。
设备标识 (VPN,S,G) 流量速率 MDT状态
PE1 (1,100.0.0.1,230.0.0.1) 200KB/S Data-MDT
PE4 (2,100.0.0.1,230.0.0.1) 120KB/S Data-MDT
PE1 (1,100.0.0.2,230.0.0.2) 150KB/S Default-MDT
表2
设备标识 (VPN,S,G) 流量速率 MDT状态
PE1 (1,100.0.0.1,230.0.0.1) 200KB/S Data-MDT
PE4 (2,100.0.0.1,230.0.0.1) 120KB/S Default-MDT
PE1 (1,100.0.0.2,230.0.0.2) 150KB/S Data-MDT
表3
假设经过一段时间后,CE1发送的私网组播c流量减少为100KB/S。由 于PE1会定期将达到切换条件的私网组播的状态信息发送给SDN控制器。 SDN控制器收到上述状态信息对表3进行更新时,发现PE4上有私网组播b 的流量速率比私网组播c更高,但私网组播b使用的却还是Default-MDT。 针对这种情况,SDN控制器向PE1发送回切通知,要求PE1将私网组播c 切换到Default-MDT进行承载。等待回切完成,P2向SDN控制器发送自身 的最新的AME_Num(此时为1)之后,SDN控制器再通知PE4将私网组播 b切换到Data-MDT进行承载,更新后的私网组播状态信息表如表4所示。
设备标识 (VPN,S,G) 报文速率 MDT状态
PE1 (1,100,0.0.1,230.0.0.1) 200KB/S Data-MDT
PE4 (2,100,0.0.1,230.0.0.1) 120KB/S Data-MDT
PE1 (1,100,0.0.2,230.0.0.2) 100KB/S Default-MDT
再过一段时间之后,假设CE1发送的私网组播a的流量速率下降为 50KB/S,为了避免频繁切换引发震荡,经过一段时间观察之后,PE1发现私 网组播a的流量确实一直无法达到阈值100KB/S。此时PE1主动将私网组播 a切换到Default MDT上进行承载,并向更新SDN控制器该私网组播的状态 信息。SDN控制器对表4进行更新,等待一段时间之后发现AME_Num又变 化为1,此时SDN控制器可以向PE1发送切换通知,允许PE1将私网组播c 切换到DATA MDT上进行承载。
通过以上的描述可以看出,在本发明中,PE通过与SDN的配合,在PE 真正发起切换时,网络上PE/P设备总是有可用的组播路由资源,不会出现 PE切换后因P设备或PE设备组播路由表项资源不足而导致组播业务中断的 情况,而且在较佳的方式中,通过对DATA MDT的统一管理调度,使得更 高速的组播业务总是有更大的机会使用独占的Data-MDT,优化了整个网络 的组播流量的分发。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。
本文发布于:2023-04-14 05:03:48,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/2/86013.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |