本发明涉及SDN技术领域,尤其涉及一种层次化路由的管理方法、主控制器、子域控制器及SDN。
背景技术:
软件定义网络SDN(Software Defined Network)是一种新型网络创新架构,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制。网络功能虚拟化NFV技术通过使用x86服务器等通用硬件平台以及虚拟化技术,来承载多种网络业务功能,从而降低对昂贵的网络专用设备的依赖。业务链(Service Chaining)是其中一项重要应用,它通过通用服务器硬件和运行在服务器内的网络虚拟化软件,将多类网络业务功能(App),如:CGN、防火墙、DPI等,运行在虚拟机(VM)中,并形成串接的链状拓扑,提供一种高扩展的电信业务处理架构,为构造新型IP智能边缘设备(BRAS、PGW等)提供了实现手段。
目前,在多层多域网络情况下,现有的跨域计算方法主要有以下两种方式:1、由主控制器完成松散路径计算,并交给相关子域完成严格路径计算;2、主控制器直接完成严格路径计算,并下发子域。采用第一种方式,不需要主控制器获取子域路由信息,但建立一条完整电路,需要主控制器与子域复杂交互过程,中间稍有出错,均导致电路建立失败;采用第二种方式,则需要主控制器获取子域全部信息,导致主控制器数据库庞大,且日常与子域更新交互量大,稍有变动,则会带来网络流量增加,影响其他正常业务及时响应。
技术实现要素:
有鉴于此,本发明要解决的一个技术问题是提供一种层次化路由的管理方法主控制器、子域控制器及SDN,将全网资源分为内部资源和外部资源并进行跨域路由计算。
一种层次化路由的管理方法,包括:计算属于子域的域间节点之间的最优域内路由;将所述域间节点和所述最优域内路由上的域内节点设置为外部资源节点,并存储在外部资源库中;将子域内不是外部资源节点的域内节点设置为内部资源节点,并存储在内部资源库中;当接收跨域业务请求时,主控制器基于所述外部资源库计算跨域业务的详细路由。
根据本发明的一个实施例,进一步的,所述主控制器基于所述外部资源库计算跨域业务的详细路由包括:判断发送所述跨域业务请求的业务发起节点是否为所述外部资源库中的节点,如果是,则所述主控制器计算所述跨域业务在所述外部资源节点之间的端到端路由,并预留所述端到端路由中的外部资源节点资源。
根据本发明的一个实施例,进一步的,所述主控制器基于所述外部资源库计算跨域业务的详细路由还包括:如果发送所述跨域业务请求的业务发起节点不是所述外部资源库中的节点,则所述主控制器计算所述跨域业务的域间路由并确定所述跨域业务经过的子域;所述主控制器将域内路由请求发送给所述跨域业务经过的子域中的子域控制器,由子域控制器进行域内路由计算并将所述域内路由返回给所述主控制器,预留所述域内路由中的内部资源节点资源;所述主控制器将获取的所述域间路由与所述域内路由进行拼接计算,获取所述跨域业务在所述外部资源节点、所述内部资源节点之间的端到端路由,并预留域间节点资源。
根据本发明的一个实施例,进一步的,所述进行域内路由计算包括:所述子域控制器从所述内部资源库中获取本域的内部资源节点,计算内部资源节点之间的域内端到端详细路由及域内拓扑连接信息;其中,所述域内拓扑连接信息包括:拓扑标识、拓扑类型、A/Z端网元标识、端口标识。
根据本发明的一个实施例,进一步的,所述主控制器计算所述跨域 业务的域间路由并确定所述跨域业务经过的子域包括:所述主控制器采用最短路径算法计算出所述跨域业务的端到端通道经过的子域以及域间节点,基于外部资源库计算各个域间节点之间的域间路由。
根据本发明的一个实施例,进一步的,所述主控制器将所述跨域业务的详细路由发送到业务发起节点;所述业务发起节点根据所述跨域业务的详细路由在全网内建立端到端的电路连接,并通知所述主控制器电路连接建立的结果;如果电路连接建立成功,则所述主控制器或所述子域控制器保持预留的资源,否则,所述主控制器或所述子域控制器释放预留的资源。
根据本发明的一个实施例,进一步的,当预开通业务或业务建立失败时,所述主控制器向所述子域控制器发送内部资源调整请求;所述子域控制器判断本域内的内部资源节点是否能够满足预开通业务和本域内现有业务的资源需求,如果是,则调整本域内的内部资源节点为外部资源节点。
根据本发明的一个实施例,进一步的,所述调整本域内的内部资源节点为外部资源节点包括:所述子域控制器在所述内部资源库中将调整的内部资源节点的相关信息删除,并通知所述主控制器;所述主控制器将所述调整的内部资源添加在所述外部资源库中。
根据本发明的一个实施例,进一步的,当预开通业务或业务建立失败时,所述子域控制器向所述主控制器发送内部资源调整请求;所述主控制器判断外部资源节点是否能够满足预开通业务和全网内的现有业务,如果是,则将属于发送内部资源调整请求的子域的外部资源节点调整为内部资源节点。
根据本发明的一个实施例,进一步的,所述将属于发送内部资源调整请求的子域的外部资源节点调整为内部资源节点包括:所述主控制器在外部资源库中删除属于发送内部资源调整请求的子域的外部资源节点,并通知所述子域控制器;所述子域控制器将此外部资源节点添加在所述内部资源库中。
根据本发明的一个实施例,进一步的,获取所述主控制器和所述子 域控制器控制下的业务信息,所述业务信息包括:已建和待建业务的流量、走向;整理现有业务模型并分析能够开展的业务模型。
根据本发明的一个实施例,进一步的,获取所述主控制器和所述子域控制器在路由计算过程中的故障信息,判断故障原因,并对故障原因进行分类、存储。
根据本发明的一个实施例,进一步的,结合网络现有资源、现有业务模型、未来可能业务模型,判断外部资源节点、内部资源节点与业务的匹配性,进行风险评估。
根据本发明的一个实施例,进一步的,结合风险点进行资源优化处理,并将资源优化指令分别下发至所述子域控制器或所述主控制器,完成全网资源的动态调整。
一种软件定义网络SDN,包括:子域控制器,包括:域内路由计算单元,用于计算属于子域的域间节点之间的最优域内路由;内部资源管理单元,用于将所述域间节点和所述最优域内路由上的域内节点设置为外部资源节点,并存储在外部资源库中;将子域内不是外部资源节点的域内节点设置为内部资源节点,并存储在内部资源库中;主控制器,包括:跨域路由计算单元,用于当接收跨域业务请求时,基于所述外部资源库计算跨域业务的详细路由。
根据本发明的一个实施例,进一步的,所述跨域路由计算单元,还用当判断所述跨域业务请求的业务发起节点是所述外部资源库中的节点时,计算所述跨域业务在所述外部资源节点之间的端到端路由;所述主控制器,还包括:外部资源管理单元,用于预留所述端到端路由中的外部资源节点资源。
根据本发明的一个实施例,进一步的,所述跨域路由计算单元,还用于当判断发送所述跨域业务请求的业务发起节点不是所述外部资源库中的节点时,计算所述跨域业务的域间路由并确定所述跨域业务经过的子域;将域内路由请求发送给所述跨域业务经过的子域中的子域控制器,并将获取的所述域间路由与所述域内路由进行拼接计算,获取所述跨域业务在所述外部资源节点、所述内部资源节点之间的端到端路由; 所述外部资源管理单元,还用于预留域间节点资源;所述域内路由计算单元,还用于进行域内路由计算并将所述域内路由返回给所述跨域路由计算单元;所述内部资源管理单元,还用于预留所述域内路由中的内部资源节点资源。
根据本发明的一个实施例,进一步的,所述域内路由计算单元,还用于从所述内部资源库中获取本域的内部资源节点,计算内部资源节点之间的域内端到端详细路由及域内拓扑连接信息;其中,所述域内拓扑连接信息包括:拓扑标识、拓扑类型、A/Z端网元标识、端口标识。
根据本发明的一个实施例,进一步的,所述跨域路由计算单元,还用于采用最短路径算法计算出所述跨域业务的端到端通道经过的子域以及域间节点,基于外部资源库计算各个域间节点之间的域间路由。
根据本发明的一个实施例,进一步的,所述主控制器,还包括:跨域路由下发单元,用于将所述跨域业务的详细路由发送到业务发起节点;其中,所述业务发起节点根据所述跨域业务的详细路由在全网内建立端到端的电路连接,如果电路连接建立成功,则所述外部资源管理单元或所述内部资源管理单元保持预留的资源,否则,所述外部资源管理单元或所述内部资源管理单元释放预留的资源。
根据本发明的一个实施例,进一步的,所述主控制器,还包括:内部资源调整请求单元,用于当预开通业务或业务建立失败时,向所述内部资源管理单元发送内部资源调整请求;所述内部资源管理单元,还用于判断本域内的内部资源节点是否能够满足预开通业务和本域内现有业务的资源需求,如果是,在所述内部资源库中将调整的内部资源节点的相关信息删除,并通知所述外部资源管理单元;所述外部资源管理单元,还用于将所述调整的内部资源添加在所述外部资源库中。
根据本发明的一个实施例,进一步的,所述子域控制器包括:外部资源请求单元,用于当预开通业务或业务建立失败时,向所述外部资源管理单元发送内部资源调整请求;所述外部资源管理单元,还用于判断外部资源节点是否能够满足预开通业务和全网内的现有业务,如果是,则在外部资源库中删除属于发送内部资源调整请求的子域的外部资源节 点,并通知所述内部资源调整单元;所述内部资源调整单元,还用于将此外部资源节点添加在所述内部资源库中。
根据本发明的一个实施例,进一步的,还包括:业务信息装置,用于获取所述主控制器和所述子域控制器控制下的业务信息,所述业务信息包括:已建和待建业务的流量、走向;整理现有业务模型并分析能够开展的业务模型。
根据本发明的一个实施例,进一步的,还包括:故障分析装置,用于获取所述主控制器和所述子域控制器在路由计算过程中的故障信息,判断故障原因,并对故障原因进行分类、存储。
根据本发明的一个实施例,进一步的,还包括:业务仿真装置,用于结合网络现有资源、现有业务模型、未来可能业务模型,判断外部资源节点、内部资源节点与业务的匹配性,进行风险评估。
根据本发明的一个实施例,进一步的,还包括:优化策略装置,用于结合风险点进行资源优化处理,并将资源优化指令分别下发至所述子域控制器或所述主控制器,完成全网资源的动态调整。
一种子域控制器,包括:域内路由计算单元,用于计算属于子域的域间节点之间的最优域内路由;内部资源管理单元,用于将所述域间节点和所述最优域内路由上的域内节点设置为外部资源节点,并存储在外部资源库中;将子域内不是外部资源节点的域内节点设置为内部资源节点,并存储在内部资源库中;其中,主控制器用于当接收跨域业务请求时,基于所述外部资源库计算跨域业务的详细路由。
根据本发明的一个实施例,进一步的,所述域内路由计算单元,还用于接收所述主控制器发送的域内路由计算指令,从所述内部资源库中获取本域的内部资源节点,计算内部资源节点之间的域内端到端域内路由及域内拓扑连接信息,并将域内路由返回给所述主控制器;所述内部资源管理单元,还用于预留所述域内路由中的内部资源节点资源;其中,所述主控制器将获取的域间路由与所述域内路由进行拼接计算,获取跨域业务在所述外部资源节点、所述内部资源节点之间的端到端路由。
根据本发明的一个实施例,进一步的,所述内部资源管理单元,还用于接收到所述主控制器发送的内部资源调整请求,判断本域内的内部资源节点是否能够满足预开通业务和本域内现有业务的资源需求,如果是,在所述内部资源库中将调整的内部资源节点的相关信息删除,并通知所述主控制器;所述主控制器将所述调整的内部资源添加在所述外部资源库中。
根据本发明的一个实施例,进一步的,所述子域控制器包括:外部资源请求单元,用于当预开通业务或业务建立失败时,向所述主控制器发送内部资源调整请求;其中,所述主控制器判断外部资源节点是否能够满足预开通业务和全网内的现有业务,如果是,则在外部资源库中删除属于发送内部资源调整请求的子域的外部资源节点,并通知所述内部资源调整单元;所述内部资源调整单元,还用于将此外部资源节点添加在所述内部资源库中。
一种主控制器,包括:跨域路由计算单元,用于当接收跨域业务请求时,基于外部资源库计算跨域业务的详细路由;外部资源管理单元,用于预留所述详细路由中的外部资源节点资源。
根据本发明的一个实施例,进一步的,所述跨域路由计算单元,还用当判断所述跨域业务请求的业务发起节点是所述外部资源库中的节点时,计算所述跨域业务在所述外部资源节点之间的端到端路由;当判断发送所述跨域业务请求的业务发起节点不是所述外部资源库中的节点时,计算所述跨域业务的域间路由并确定所述跨域业务经过的子域;将域内路由请求发送给所述跨域业务经过的子域中的子域控制器,并将获取的所述域间路由与所述域内路由进行拼接计算,获取所述跨域业务在所述外部资源节点、所述内部资源节点之间的端到端路由;所述外部资源管理单元,还用于预留域间节点资源。
根据本发明的一个实施例,进一步的,所述跨域路由计算单元,还用于采用最短路径算法计算出所述跨域业务的端到端通道经过的子域以及域间节点,基于外部资源库计算各个域间节点之间的域间路由。
根据本发明的一个实施例,进一步的,所述主控制器,还包括:跨 域路由下发单元,用于将所述跨域业务的详细路由发送到业务发起节点;其中,所述业务发起节点根据所述跨域业务的详细路由在全网内建立端到端的电路连接,如果电路连接建立成功,则所述外部资源管理单元保持预留的资源,否则,所述外部资源管理单元释放预留的资源。
根据本发明的一个实施例,进一步的,所述主控制器,还包括:内部资源调整请求单元,用于当预开通业务或业务建立失败时,向所述子域控制器发送内部资源调整请求;其中,所述子域控制器判断本域内的内部资源节点是否能够满足预开通业务和本域内现有业务的资源需求,如果是,在所述内部资源库中将调整的内部资源节点的相关信息删除,并通知所述外部资源管理单元;所述外部资源管理单元,还用于将所述调整的内部资源添加在所述外部资源库中。
根据本发明的一个实施例,进一步的,当预开通业务或业务建立失败时,所述子域控制器向所述主控制器发送内部资源调整请求;所述外部资源管理单元,还用于判断外部资源节点是否能够满足预开通业务和全网内的现有业务,如果是,则在外部资源库中删除属于发送内部资源调整请求的子域的外部资源节点,并通知所述子域控制器;所述子域控制器将此外部资源节点添加在所述内部资源库中。
本发明的层次化路由的管理方法、主控制器、子域控制器及SDN,能够减少主控制器与子域控制器之间的交互过程,提升计算成功概率,加快业务处理能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为根据本发明的层次化路由的管理方法的一个实施例的流程图;
图2为根据本发明的层次化路由的管理方法的一个实施例中的内部资源和外部资源的配置示意图;
图3为根据本发明的层次化路由的管理方法的另一个实施例的流程图;
图4为根据本发明的层次化路由的管理方法的一个实施例中内部资源节点调整的流程图;
图5为根据本发明的层次化路由的管理方法的一个实施例中外部资源节点调整的流程图;
图6为SDN的一个拓扑示意图;
图7a至7d为SDN中各个子域的拓扑;
图8为SDN中主控制器和子域控制器的示意图;
图9为主控制器所保存的拓扑信息视图;
图10为根据本发明的SDN的一个实施例的模块示意图;
图11为根据本发明的主控制器的一个实施例的模块示意图;
图12为根据本发明的子域控制器的一个实施例的模块示意图。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。下面结合各个图和实施例对本发明的技术方案进行多方面的描述。
图1为根据本发明的层次化路由的管理方法的一个实施例的流程图,如图1所示:
步骤101,计算属于子域的域间节点之间的最优域内路由。域间节点之间可能存在多条路由,最佳路由可以为通过最短路径优先算法计算出的路由。
步骤102,将域间节点和最优域内路由上的域内节点设置为外部资源节点,并存储在外部资源库中。
步骤103,将子域内不是外部资源节点的域内节点设置为内部资源节点,并存储在内部资源库中。
步骤104,当接收跨域业务请求时,主控制器基于外部资源库计算跨域业务的详细路由。
本发明的层次化路由的管理方法,在多层、多域架构下,提供一种资源的逻辑分类方法,包括按照业务模型和网络拓扑,预先将全网子域控制器控制的网络资源预先分为内部资源和外部资源两个资源平面。
内部计算资源,主要由子域控制器掌控,用于子域内部电路计算。外部计算资源,这部分资源信息由子域控制器和主控制器共同掌握,主要用于跨域电路计算。
在多层、多域架构下,首先分析跨域业务的业务模型,结合网络规划和拓扑,将各子域域间接口(域间节点)以及这些接口在本域内之间的最佳路由涉及的相关资源按比例放入外部资源库中,将该控制器控制的其他资源和不想让跨域业务涉及的子域控制器资源放入内部资源库中。主控制器享有对这部分资源的使用权,资源信息同时存储在主控制器和子域控制器内部,如图2所示。
在一个实施例中,主控制器判断发送跨域业务请求的业务发起节点是否为外部资源库中的节点,如果是,则主控制器计算跨域业务在外部资源节点之间的端到端路由,并预留端到端路由中的外部资源节点资源。
如果发送跨域业务请求的业务发起节点不是外部资源库中的节点,则主控制器计算跨域业务的域间路由并确定跨域业务经过的子域。例如,主控制器采用最短路径算法计算出跨域业务的端到端通道经过的子域以及域间节点,基于外部资源库计算各个域间节点之间的域间路由。
主控制器将域内路由请求发送给跨域业务经过的子域中的子域控制器,由子域控制器进行域内路由计算并将域内路由返回给主控制器,预留域内路由中的内部资源节点资源。子域控制器从内部资源库中获取本 域的内部资源节点,计算内部资源节点之间的域内端到端详细路由及域内拓扑连接信息。
域内拓扑连接信息包括:拓扑标识、拓扑类型、A/Z端网元标识、端口标识等。主控制器将获取的域间路由与域内路由进行拼接计算,获取跨域业务在外部资源节点、内部资源节点之间的端到端路由,并预留域间节点资源。
主控制器将跨域业务的详细路由发送到业务发起节点。业务发起节点根据跨域业务的详细路由在全网内建立端到端的电路连接,并通知主控制器电路连接建立的结果。如果电路连接建立成功,则主控制器或子域控制器保持预留的资源,否则,主控制器或子域控制器释放预留的资源。
上述实施例中的层次化路由的管理方法,通过在主控制器中引入资源的逻辑分类,提升主控制器对跨域网络资源管理能力,减少了主控制器与子域控制器之间的信息交互,提高了全网跨径路由的计算能力,提升对业务的快速响应能力。
在一个实施例中,当主控制器收到跨域计算请求,首先在其控制的外部资源库中计算出跨域最佳路径,并将计算结果返回发起设备,同时主控制器在外部资源库中预留资源。发起设备在收到将继续进行后续的信令过程建立电路,当连接建立成功之后,通过信令协议通知消息通知主控制器连接建立结果。如果收到连接建立成功通知,则主控制器继续保持预留的资源,如果收到建立失败通知,则主控制器删除保存的计算路径和资源等信息,并释放预留的资源。
图3为根据本发明的层次化路由的管理方法的另一个实施例的流程图,如图3所示:
步骤201,主控制器收到跨域计算请求。
步骤202,判断业务发起端节点是否在其控制的外部资源库内,如果是外部资源库内节点,则进入步骤204,如果否,则进入步骤203。
步骤204-207,在其控制的外部资源库中计算出跨域最佳路径,并将计算结果返回业务发起端节点,主控制器在外部资源库中预留资源, 并记录路由计算结果。
步骤203,如果业务发起节点不在其控制的外部资源库内,则按照常规处理流程。
在一个实施例中,首先由主控制器计算出域序列,然后将请求分别发送给域序列中的各个子域控制器,每个子域控制器在其内部资源库内计算路径,当计算完毕后将计算结果返回给主控制器,同时将计算结果保存在控制器中,并在控制器预留计算路径使用的资源。当所有子域计算完毕,主控制器收集齐所有子域计算结果后,主控制器拼接生成端到端的路径结果返回业务发起节点。
当预开通业务或业务建立失败时,主控制器向子域控制器发送内部资源调整请求。子域控制器判断本域内的内部资源节点是否能够满足预开通业务和本域内现有业务的资源需求,如果是,则调整本域内的内部资源节点为外部资源节点。子域控制器在内部资源库中将调整的内部资源节点的相关信息删除,并通知主控制器。主控制器将调整的内部资源添加在外部资源库中。
当预开通业务或业务建立失败时,子域控制器向主控制器发送内部资源调整请求。主控制器判断外部资源节点是否能够满足预开通业务和全网内的现有业务,如果是,则将属于发送内部资源调整请求的子域的外部资源节点调整为内部资源节点。主控制器在外部资源库中删除属于发送内部资源调整请求的子域的外部资源节点,并通知子域控制器。子域控制器将此外部资源节点添加在内部资源库中。
在一个实施例中,当业务发展到一定阶段,内部资源库的资源已经不能适应业务发展需要,导致子域内业务无法建立、或者无法计算出最优的路径导致业务运行质量下降,降低客户感知,或者不能为现有业务提供足够的保护路径,需要子域控制器向主控制器从外部资源库申请资源或者网络进行扩容,如图4所示:
步骤301,子域控制器结合计算失败业务方向和未来业务模型提出扩展资源信息。
步骤302,向主控制器提出内部资源调整请求。
步骤303、304,主控制器首先结合已经建立的业务方向和未来跨域业务模型,判断是否可以调整。
步骤305,如果主控制器判断剩余资源可以满足未来业务发展和现有业务保护需求,则可以同意进行调整。
步骤306,主控制器首先删除在外部资源库中的相关资源信息,同时通知子域控制器完成对这部分资源的接管。
步骤307,如果主控制器不同意调整,则向维护人员提出网络扩容需求。
在一个实施例中,当外部资源库的资源已经不能适应业务发展需要,导致跨域业务无法建立、或者无法计算出最优的路径导致业务运行质量下降,降低客户感知,或者不能为现有业务提供足够的保护路径,需要外部资源库从内部资源库申请资源或者网络进行扩容,此时需要内部资源库让出部分资源给内部资源库,以满足业务发展需要,如图5所示:
步骤401,主控制器结合计算失败业务方向和未来业务模型提出扩展资源信息。
步骤402,向子域控制器提出内部资源调整请求。
步骤403、404,子域控制器首先结合已经建立的业务方向和未来本域业务模型,判断是否可以调整。
步骤405,如果子域控制器判断剩余资源可以满足未来业务发展和现有业务保护需求,则可以同意进行调整。子域控制器首先删除在内部资源库中的相关资源信息,同时通知主控制器在外部资源库完成资源添加。
步骤407,如果子域控制器不同意调整,则向维护人员提出网络扩容需求。
在一个实施例中,获取主控制器和子域控制器控制下的业务信息,业务信息包括:已建和待建业务的流量、走向。整理现有业务模型并分析能够开展的业务模型。获取主控制器和子域控制器在路由计算过程中的故障信息,判断故障原因,并对故障原因进行分类、存储。
结合网络现有资源、现有业务模型、未来可能业务模型,判断外部资源节点、内部资源节点与业务的匹配性,进行风险评估。结合风险点进行资源优化处理,并将资源优化指令分别下发至子域控制器或主控制器,完成全网资源的动态调整。
如图6所示,4个子域(G1-G4)组成一个主控制器(G5)。各子域分别有相应的控制器计算域内路径。主控制器维护子域的互联信息。主控制器对每个子域抽象成一个节点,此时各个子域和主控制器初始保存拓扑信息如图7a-7d、8所示。各个子域的控制器需要与主控制器中的控制器建立会话,并上报相应的域与其他域的连通性。
在开始建立业务之前,首先按照业务模型和网络拓扑,预先将全网子域控制器控制的网络资源预先分为内部资源和外部资源两个平面库。通过分析发现,对跨域电路的需求主要集中在从G1子域的节点3到G3子域的节点11和12,同时基于提供不同保护路由考虑,可以将G1子域内节点3、节点4,G2子域内节点5、节点6、节点7、节点8以及子域G3内的节点9、节点10、节点11、节点12部分资源纳入到外部资源库内,由主控制器进行掌握,主要用于跨域路由计算。剩下资源由各个子域控制器自己掌握,主要用于各个子域内部路径计算。
各个子域内部节点之间只是部分资源被分配给了主控制器使用,因此各个子域所保存的拓扑信息视图与原来视图一致。但主控制器所保存的拓扑信息视图则变为图9所示。
在一个实施例中,当主控制器收到跨域计算请求,先判断业务发起端节点是否在其控制的外部资源库内,如果业务发起节点不在其控制的外部资源库内,则按照常规处理流程,即首先由主控制器计算出域序列,然后将请求分别发送给域序列中的各个子域控制器,每个子域控制器在其内部资源库内计算路径,当计算完毕后将计算结果返回给主控制器,同时将计算结果保存在控制器中,并在控制器预留计算路径使用的资源。
当所有子域计算完毕,主控制器收集齐所有子域计算结果后,主控制器拼接生成端到端的路径结果返回业务发起节点,同时主控制器通知 各个子域控制器端到端计算结果,子域收到计算成功的通知继续保持预留的资源,收到计算失败的通知则释放预留的资源并删除保存的计算结果。
主控制器结合计算失败业务方向和未来业务模型提出扩展资源信息,并向子域控制器提出内部资源调整请求。子域控制器首先结合已经建立的业务方向和未来跨域业务模型,判断是否可以调整,如果子域控制器判断剩余资源可以满足未来业务发展和现有业务保护需求,则可以同意进行调整。子域控制器首先删除在内部资源库中的相关资源信息,同时通知主控制器在外部资源库完成资源添加。如果子域控制器不同意调整,则向维护人员提出网络扩容需求。
在一个实施例中,当各个子域控制器收到本域内计算请求,先判断业务发起节点是否在其控制的内部资源库内,如果是内部资源库内节点,则首先在其控制的内部资源库中计算出最佳路径,并将计算结果返回业务发起,同时子域控制器在内部资源库中预留资源。
如果子域控制器在计算最佳路径时出现失败,则将失败原因按照业务方向、保护恢复方式、现网资源情况等信息进行记录,当相似问题多次发生,则触发内部资源主动调整流程,需要子域控制器向主控制器从外部资源库申请资源或者网络进行扩容。
子域控制器结合计算失败业务方向和未来业务模型提出扩展资源信息,并向主控制器提出内部资源调整请求。主控制器首先结合已经建立的业务方向和未来跨域业务模型,判断是否可以调整,如果主控制器判断剩余资源可以满足未来业务发展和现有业务保护需求,则可以同意进行调整。主控制器首先删除在外部资源库中的相关资源信息,同时通知子域控制器在内部资源库完成资源添加。如果主控制器不同意调整,则向维护人员提出网络扩容需求。
本发明提供一种软件定义网络SDN、主控制器61和子域控制器62、63。如图10-12所示,主控制器包括:跨域路由计算单元611、外部资源管理单元612、跨域路由下发单元613和内部资源调整请求单元614。子域控制器包括:域内路由计算单元621、内部资源管理单元622 和外部资源请求单元623。
域内路由计算单元621计算属于子域的域间节点之间的最优域内路由。内部资源管理单元622将域间节点和最优域内路由上的域内节点设置为外部资源节点,并存储在外部资源库中。将子域内不是外部资源节点的域内节点设置为内部资源节点,并存储在内部资源库中。跨域路由计算单元611当接收跨域业务请求时,基于外部资源库计算跨域业务的详细路由。
当判断跨域业务请求的业务发起节点是外部资源库中的节点时,跨域路由计算单元611计算跨域业务在外部资源节点之间的端到端路由。外部资源管理单元612预留端到端路由中的外部资源节点资源。
当判断发送跨域业务请求的业务发起节点不是外部资源库中的节点时,跨域路由计算单元611计算跨域业务的域间路由并确定跨域业务经过的子域。将域内路由请求发送给跨域业务经过的子域中的子域控制器,并将获取的域间路由与域内路由进行拼接计算,获取跨域业务在外部资源节点、内部资源节点之间的端到端路由。
在一个实施例中,跨域路由计算单元611采用最短路径算法计算出跨域业务的端到端通道经过的子域以及域间节点,基于外部资源库计算各个域间节点之间的域间路由。
域内路由计算单元621从内部资源库中获取本域的内部资源节点,计算内部资源节点之间的域内端到端详细路由及域内拓扑连接信息。外部资源管理单元612预留域间节点资源。域内路由计算单元621进行域内路由计算并将域内路由返回给跨域路由计算单元。内部资源管理单元622预留域内路由中的内部资源节点资源。
在一个实施例中,跨域路由下发单元613将跨域业务的详细路由发送到业务发起节点。业务发起节点根据跨域业务的详细路由在全网内建立端到端的电路连接,如果电路连接建立成功,则外部资源管理单元612或内部资源管理单元622保持预留的资源,否则,外部资源管理单元612或内部资源管理单元622释放预留的资源。
当预开通业务或业务建立失败时,内部资源调整请求单元614向内 部资源管理单元发送内部资源调整请求。内部资源管理单元622判断本域内的内部资源节点是否能够满足预开通业务和本域内现有业务的资源需求,如果是,在内部资源库中将调整的内部资源节点的相关信息删除,并通知外部资源管理单元612。外部资源管理单元612将调整的内部资源添加在外部资源库中。
当预开通业务或业务建立失败时,外部资源请求单元623向外部资源管理单元发送内部资源调整请求。外部资源管理单元612判断外部资源节点是否能够满足预开通业务和全网内的现有业务,如果是,则在外部资源库中删除属于发送内部资源调整请求的子域的外部资源节点,并通知内部资源调整单元622。内部资源调整单元622将此外部资源节点添加在内部资源库中。
在一个实施例中,业务信息装置64获取主控制器和子域控制器控制下的业务信息,业务信息包括:已建和待建业务的流量、走向等,并整理现有业务模型并分析能够开展的业务模型。故障分析装置65获取主控制器和子域控制器在路由计算过程中的故障信息,判断故障原因,并对故障原因进行分类、存储。
业务仿真装置66结合网络现有资源、现有业务模型、未来可能业务模型,判断外部资源节点、内部资源节点与业务的匹配性,进行风险评估。优化策略装置67结合风险点进行资源优化处理,并将资源优化指令分别下发至子域控制器或主控制器,完成全网资源的动态调整。
上述实施例提供的层次化路由的管理方法、主控制器、子域控制器及SDN,能够简化处理流程,减少主控制器与子域控制器之间的交互过程,提升计算成功概率,加快业务处理能力,并能够增加动态资源调整能力,能够及时对业务模型和网络资源进行优化,实现资源优化和动态调整,提升网络健壮性和业务稳定性。
可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。 此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。