网络资源受限的PTN容量分配方法
技术领域
本发明涉及PTN容量分配方法,具体说是网络资源受限的PTN容量分配方法。
背景技术
分组传送网络PTN(Packet Transport Network)。随着TDM(Time Division Multiplexing,时分复用)业务的萎缩以及“全球IP环境”的逐渐成熟,传送设备要从“多业务的接口适应性”转化为“多业务的内核适应性”,分组传送网络正好迎合了这种趋势,这就导致分组传送网络的发展成为一个全世界范围内炙手可热的话题。
PTN技术是IP/MPLS、以太网和传送网三种技术相结合的产物,具体面向连接的传送特征。以基于路由器的IP/MPLS解决方案相比,PTN的优势主要体现在:高可靠、易维护和低成本。
PTN的最大优点在于它能够满足各种各样业务的服务质量需求,因此PTN规划问题也得到越来越多的重视,具有重要的研究意义。PTN规划问题中,最常见的场景是已知物理网络中节点的位置和节点之间的连通情况,需要为网络中的链路和节点设计合适的容量,使得业务需求能够在网络中得到成功配置的同时最小化网络的总成本。针对已有网络拓扑信息和业务需求信息,同时已知网络中链路和节点的容量配置情况,并且网络中已经配置基础上(包括链路总容量及负载情况、节点交换能力等),实现指定业务(包括新增业务和允许改变的老业务)的规划,优化目标是业务带宽尽量多的在网络中成功配置。
发明内容
本发明的目的在于提供一种网络资源受限的PTN容量分配方法,本发明采取的技术方案是:
一种网络资源受限的PTN容量分配方法,其特征在于,以最大化配置业务带宽的网络容量分配算法(MB-NCD算法)为基础,得到网络资源受限的PTN容量分配方法。
MB-NCD算法包括二个子模块,包括完成业务排序预处理模块,完成所有业务的路由和链路容量分配模块。具体步骤如下:
步骤1:如果网络中不存在允许改变路由的老业务,则对新业务排序后,逐个业务进行路由及链路容量分配;
步骤2:如果网络中存在允许改变路由的老业务,则首先记录网络的原始状态,包括业务信息、资源配置情况等;然后释放允许改变的老业务在网络配置的资源,这时将这些已释放资源的老业务作为新业务重新计算;如果最终配置的失败业务中存在老业务,那么需要将网络的状态恢复至原始状态,并设置所有老业务都是不允许改变的,然后按照步骤1执行;如果老业务均成功,则结束。
在上述技术方案的基础上,步骤1和步骤2均对业务进行排序预处理。业务排序预处理的具体步骤如下:
1)将所有业务按带宽从大到小进行排序,即先处理带宽较大的业务,再处理带宽较小的业务;
2)对于带宽相同的业务,按CT类型进行排序。由BCM的定义可知,相同带宽的业务依次排序为:CT7、CT6、CT5、……、CT0。
3)按照1)和2)所得的排序结果,将所有业务放入一个集合中,为业务逐个进行配置做好准备。
在上述技术方案的基础上,步骤1和步骤2均需要对业务进行路由及链路容量进行分配。业务路由及链路容量分配模块主要由三个步骤完成:
首先更新网络中链路和节点的代价,然后采用Dijkstra路由算法在网络中为业务寻求一条端到端的最小代价链路,最后为业务在所经过的链路上分配资源。
在上述技术方案的基础上,链路代价设置方式是关键,其具体过程如下:
1)在链路集合中取一条链路;
2)在链路的光纤集合中取一根光纤;
3)判断光纤上CTi类业务的可用容量是否满足业务的带宽需求Bw。如果满足,则累积链路上CTi类业务的可用容量值CAvailable(CTi)和链路CTi业务的总容量CTotal(CTi);
4)判断是否已遍历完链路光纤集合中的所有光纤,如果是则继续,否则返回2);
5)利用公式(1-1)计算链路的负载率load;
6)利用公式(1-2)更新链路的代价值E(w);
7)判断是否已遍历完网络链路集合中的所有链路,是则结束,否则返回到1)。
在公式(1-2)中需要设置负载门限μ。随着网络拓扑和业务需求的变化,μ值的选择很难控制。本发明提出了一种迭代框架,选取一系列的μ值进行业务的配置,最终记录最优结果,从而很好的控制了这个可调参数的选择。
首先选择一系列的μ值以被迭代使用。同时,记录原始网络信息,以备业务重新计算时恢复网络场景信息;
其次,在此μ值下进行业务计算,如果此次计算的业务数目减少,则接受此次计算结果为最优结果,如果此次计算在失败业务带宽不变的情况下所使用的资源减少,也接受此次计算结果为最优结果;
最后在所有μ值迭代计算完成后,恢复网络状态到最优状态。
附图说明
本发明有如下附图:
图1:MB-NCD算法主体流程图
图2:MB-NCD算法详细流程图
图3:链路代价设置方法流程图
图4:基于负载门限值的迭代框架
具体实施方式
以下结合附图对本发明作进一步详细说明。
本发明公开了网络资源受限的PTN容量分配方法。具体流程图见图2所示。
步骤1:如果网络中不存在允许改变路由的老业务,则对新业务排序后,逐个业务进行路由及链路容量分配;
步骤2:如果网络中存在允许改变路由的老业务,则首先记录网络的原始状态,包括业务信息、资源配置情况等;然后释放允许改变的老业务在网络配置的资源,这时将这些已释放资源的老业务作为新业务重新计算;如果最终配置的失败业务中存在老业务,那么需要将网络的状态恢复至原始状态,并设置所有老业务都是不允许改变的,然后按照步骤1执行;如果老业务均成功,则结束。
其中,步骤1和步骤2均对业务进行排序预处理。业务排序预处理的具体步骤如下:
1)将所有业务按带宽从大到小进行排序,即先处理带宽较大的业务,再处理带宽较小的业务;
2)对于带宽相同的业务,按CT类型进行排序。由BCM的定义可知,相同带宽的业务依次排序为:CT7、CT6、CT5、……、CT0。
3)按照1)和2)所得的排序结果,将所有业务放入一个集合中,为业务逐个进行配置做好准备。
步骤1和步骤2均需要对业务进行路由及链路容量进行分配。业务路由及链路容量分配模块主要由三个步骤完成:
首先更新网络中链路和节点的代价,然后采用Dijkstra路由算法在网络中为业务寻求一条端到端的最小代价链路,最后为业务在所经过的链路上分配资源。
链路代价设置方式是关键,流程图见图3所示。其具体过程如下:
1)在链路集合中取一条链路;
2)在链路的光纤集合中取一根光纤;
3)判断光纤上CTi类业务的可用容量是否满足业务的带宽需求Bw。如果满足,则累积链路上CTi类业务的可用容量值CAvailable(CTi)和链路CTi业务的总容量CTotal(CTi);
4)判断是否已遍历完链路光纤集合中的所有光纤,如果是则继续,否则返回2);
5)利用公式(1-1)计算链路的负载率load;
6)利用公式(1-2)更新链路的代价值E(w);
7)判断是否已遍历完网络链路集合中的所有链路,是则结束,否则返回到1)。
在公式(1-2)中需要设置负载门限μ。随着网络拓扑和业务需求的变化,μ值的选择很难控制。本发明提出了一种迭代框架,选取一系列的μ值进行业务的配置,最终记录最优结果,从而很好的控制了这个可调参数的选择。具体流程图见图4所示。
首先选择一系列的μ值以被迭代使用。同时,记录原始网络信息,以备业务重新计算时恢复网络场景信息;
其次,在此μ值下进行业务计算,如果此次计算的业务数目减少,则接受此次计算结果为最优结果,如果此次计算在失败业务带宽不变的情况下所使用的资源减少,也接受此次计算结果为最优结果;
最后在所有μ值迭代计算完成后,恢复网络状态到最优状态。