CN113242179B - 一种基于sdn的sr路径计算和标签栈生成的方法及sdn控制器 - Google Patents
一种基于sdn的sr路径计算和标签栈生成的方法及sdn控制器 Download PDFInfo
- Publication number
- CN113242179B CN113242179B CN202110503597.1A CN202110503597A CN113242179B CN 113242179 B CN113242179 B CN 113242179B CN 202110503597 A CN202110503597 A CN 202110503597A CN 113242179 B CN113242179 B CN 113242179B
- Authority
- CN
- China
- Prior art keywords
- link
- node
- topology
- layer
- shortest path
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/34—Source routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于SDN的SR路径计算和标签栈生成的方法,包括:在SDN控制器上构建包括三层链路拓扑模型和IP可达链路拓扑模型的分层拓扑模型,基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构;根据IGP链路状态数据库生成最短路径树拓扑结构,根据CSPF算法得到最短路径树拓扑结构中的一源节点到宿节点所经过的所有链路,得到所述源节点到宿节点整条转发路径上的所有节点标签和/或邻近标签,并生成该转发路径对应的标签栈。通过本发明实现最短路径的计算以及得到转发路径的最小标签栈。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种基于SDN的SR路径计算和标签栈生成的方法及SDN控制器。
背景技术
Segment Routing(分段路由,简称SR)是一种源路由技术,指数据包在源节点确定了转发路径,SR将业务报文的转发路径按需求在网络上做分段传送,分段标识用SegmentID(段标识,简称SID)表示,SID在网络中可表示节点标识(NodeSID)或邻接标识(AdjacencySID,AdjSID),将SID组织成SIDList(SID列表)压入发送的报文头部,就确定了该报文在网络中的转发路径。
现有的网络寻路算法包括IGP路由计算和CSPF算法。IGP路由协议通过路由学习得到网络上链路状态信息,由最短生成树算法计算本节点到网络上其他节点的最短路径。IP路由器中生成最短路径树(Shortest Path Tree,SPT)的基本算法是最短路径算法。在传统IP-MPLS网络支持MPLS TE的环境中,提供了SPF算法的增强版-约束式最短路径优先算法(Constrained Shortest Path First,CSPF),即带条件的最短路径算法。上述的寻路算法重在路径计算算法本身,但是在SR网络实际应用中存在着缺陷:传统的IGP路由技术只按最短路径的方式做流量引导,在网络业务量繁忙时,很容易会出现局部路径过度拥塞,而又有其他空闲路径的存在,网络带宽资源利用不均衡等问题。MPLS TE流量工程提供了不同于默认最短路径的流量调整方式,但网元需支持相关协议RSVP-TE,且配置和维护相对复杂。Segment Routing技术与SDN控制器系统的结合为网络业务的多样性需求提供了灵活的支持手段,但到目前为止的SR部署要求来看,也基本上是对SRTE/SRTP隧道源宿节点间的每段连接都打AdjSID的方式做报文转发,这样导致报文净荷低效。同时使用上述基于物理拓扑的寻路方法,还会对SR转发带来问题:不论是移动的SPN SRTP隧道还是联通的IPRAN SRTE隧道,打SID都是基于AdjSID的,即按每跳链路打邻接标签,这样会导致标签过长。在源节点上需将完整路径都表示在标签栈,标签栈过长将导致报文净荷承载效率低,以及网元转发芯片无法支持过长的标签栈的问题。
因此在SR网络中,SDN控制器如何利用收集到的网络拓扑信息和自身强度的计算能力,得到即能满足实际业务的各种流量工程条件参数要求,又能输出最短标签栈,是本领域技术人员急需解决的技术问题。
发明内容
有鉴于此,本发明提供一种基于SDN的SR路径计算和标签栈的生成方法及SDN控制器,利用在SDN控制器中构建分层拓扑模型,实现SR最短的路径计算以及生成转发路径上的最小标签栈。
为实现上述目的,本发明提供了一种基于SDN的SR路径计算和标签栈的生成方法,所述方法包括:
S1、在SDN控制器上构建一包括下层模型和上层模型的分层拓扑模型,所述下层模型为三层链路拓扑模型,所述上层模型为IP可达链路拓扑模型,其中,所述分层拓扑模型的构建步骤包括;
S101、所述三层链路拓扑模型的构建步骤包括:基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构,并设置各个节点之间链路的流量工程属性,以及设置各个节点的邻接标签,并在该三层链路拓扑结构中以有向边标识邻接标签;
S102、所述IP可达链路拓扑模型的构建步骤包括:根据IGP链路状态数据库生成最短路径树拓扑结构,将所述三层链路拓扑结构中的各个节点映射所述最短路径树拓扑结构的各个节点,并根据所述三层链路拓扑结构中的各个节点之间的链路和流量工程属性,构建所述最短路径树拓扑结构中各个节点的链路以及对应的流量工程属性,并设置该最短路径树拓扑中各个节点的节点标签;
S2、获取预设的寻路条件,并根据所述最短路径树拓扑结构中各个节点的路由转发表,以及各个节点间的链路属性,根据CSPF算法得到所述最短路径树拓扑结构中的一源节点到宿节点所经过的所有链路,得到所述源节点到宿节点整条转发路径上的所有节点标签和/或邻近标签,并生成该转发路径对应的标签栈。
优选的,所述三层链路拓扑模型具体包括:
upper_layer_topo_id对象,用以指向上层的IP可达链路拓扑模型;
node_set对象,用以设置拓扑结构中的节点;
link_set对象,用于设置三层链路拓扑模型相关联的link对象,其中,所述link对象包括:
链路cost对象,用以设置链路流量工程属性;
upper_layer_link set对象,用于将链路关联到多条IP可达链路拓扑模型中的链路。
优选的,所述IP可达链路拓扑模型具体包括:
under_layer_topo_id对象,用以指向下层的三层链路拓扑模型;
node_set对象,用以设置拓扑结构中的节点;
link_set对象,用于设置IP可达链路拓扑模型相关联的link对象,其中,所述link对象包括:
under_layer_link set对象,用于将链路关联到多条三层链路拓扑模型中的链路;
bandwidth对象,计算所述IP可达链路拓扑模型中链路的有效剩余带宽为对应三层链路拓扑模型的链路的最低有效带宽;
cost对象,计算所述IP可达链路拓扑模型中链路代价为对应三层链路拓扑模型的链路的总代价;
delay对象,计算所述IP可达链路拓扑模型中链路的时延为对应三层链路拓扑模型的链路的总时延。
优选的,所述步骤S2包括:
所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走IGP最短路径,并且源节点和宿节点之间存在的可达路由时,基于所述最短路径树拓扑结构计算得到所述IGP最短路径,并得到所述IGP最短路径上的所有节点标签,并生成对应的标签栈。
优选的,所述步骤S2包括:
所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括必经节点和/或必经链路,设置必经节点对应该节点的节点标签,必经链路对应该指定路径源节点的邻接标签,该指定路径所对应的标签栈包括必经节点的节点标签和/或必经链路的邻接标签。
优选的,所述步骤S2包括:
所述预设的寻路条件设置为为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括避绕节点和/或避绕链路,将所述三层链路拓扑结构数据删除所述避绕节点和/或避绕链路,并在删除后的拓扑数据中计算源节点和宿节点间的最短路径,将该最短路径与最短路径树拓扑结构上的路径进行最长匹配,能够匹配的段用节点标签标识,不能匹配的节点间直接用邻接标签标识。
优选的,所述步骤S2包括:
所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括避绕节点和/或避绕链路,将所述三层链路拓扑结构数据删除所述避绕节点和/或避绕链路,将被删除的避绕节点和/或避绕链路在所述最短路径树拓扑结构中对应的节点和/或链路,并所述最短路径树拓扑结构中删除该节点和/或链路,基于删除后的最短路径树拓扑结构进行最短路径计算,得到对应的标签栈。
优选的,所述步骤S2包括:当所述最短路径树拓扑结构中删除避绕节点后,若该最短路径树拓扑中的两个节点间不存在链路,但是对应在三层链路拓扑中存在链路的,将三层链路拓扑中链路数据补充到最短路径树拓扑中,若转发路径经过该链路时,则转发路径打邻接标签。
优选的,所述步骤S2包括:
所述预设的寻路条件设置为当源节点和宿节点之间的业务流的路径基于非IGP链路的Metric所选的最短路径,所述Metric包括最小时延或TE Metric最短,根据所述三层链路拓扑结构中的链路的时延或者TE Metric值,将链路的时延或者TE Metric累加到对应的最短路径树拓扑结构链路上,得到最短路径树拓扑结构链路的总时延或者总TE Metric值,并基于最短路径树拓扑结构进行路径计算得到最小时延或者最小TE Metric路径,并得到对应路径的标签栈。
为实现上述目的,本发明提供了一种SDN控制器,包括:
三层链路拓扑模型模块,用于基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构,并设置各个节点之间链路的流量工程属性,以及设置各个节点的邻接标签,并在该三层链路拓扑结构中以有向边标识邻接标签;
IP可达链路拓扑模型模块,根据IGP链路状态数据库生成最短路径树拓扑结构,将所述三层链路拓扑结构中的各个节点映射所述最短路径树拓扑结构的各个节点,并根据所述三层链路拓扑结构中的各个节点之间的链路和流量工程属性,构建所述最短路径树拓扑结构中各个节点的链路以及对应的流量工程属性,并设置该最短路径树拓扑中各个节点的节点标签;
路径计算模块,获取预设的寻路条件,并根据所述最短路径树拓扑结构中各个节点的路由转发表,以及各个节点间的链路属性,根据CSPF算法得到所述最短路径树拓扑结构中的一源节点到宿节点所经过的所有链路,得到所述源节点到宿节点整条转发路径上的所有节点标签和/或邻近标签,并生成该转发路径对应的标签栈。
与现有技术相比,本发明提供一种基于SDN的SR路径计算和标签栈的生成方法及SDN控制器,所带来的有益效果为:本发明利用在SDN控制器中构建三层链路拓扑模型和IP可达链路拓扑模型的分层拓扑模型,并基于IP可达链路拓扑模型进行路径计算,实现最短路径的计算,并得到转发路径上的最小标签栈,使SR隧道路径的标签栈生成十分方便,为智能地引导各种需求的业务流提供了有效方案,为SR网络的PCE计算功能实现和业务部署应用提供了实际的参考意义。
附图说明
图1是根据本发明的一个实施例的基于SDN的SR路径计算和标签栈的生成方法的流程示意图。
图2是根据本发明的具体实施例的分层拓扑模型示意图。
图3是根据本发明的具体实施例的三层链路拓扑模型和IP可达链路拓扑模型的对象结构示意图。
图4是根据本发明的具体实施例的避绕节点示意图。
图5是根据本发明的一个实施例的SDN控制器的系统框图。
具体实施方式
以下将结合附图所示的具体实施方式对本发明进行详细描述,但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
如图1所示的本发明一实施例,本发明提供一种基于SDN的SR路径计算和标签栈的生成方法,所述方法包括:
S1、在SDN控制器上构建一包括下层模型和上层模型的分层拓扑模型,所述下层模型为三层链路拓扑模型,所述上层模型为IP可达链路拓扑模型,其中,所述分层拓扑模型的构建步骤包括:
S101、所述三层链路拓扑模型的构建步骤包括:基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构,并设置各个节点之间链路的流量工程属性,以及设置各个节点的邻接标签,并在该三层链路拓扑结构中以有向边标识邻接标签;
S102、所述IP可达链路拓扑模型的构建步骤包括:根据IGP链路状态数据库生成最短路径树拓扑结构,将所述三层链路拓扑结构中的各个节点映射所述最短路径树拓扑结构的各个节点,并根据所述三层链路拓扑结构中的各个节点之间的链路和流量工程属性,构建所述最短路径树拓扑结构中各个节点的链路以及对应的流量工程属性,并设置该最短路径树拓扑中各个节点的节点标签;
S2、获取预设的寻路条件,并根据所述最短路径树拓扑结构中各个节点的路由转发表,以及各个节点间的链路属性,根据CSPF算法得到所述最短路径树拓扑结构中的一源节点到宿节点所经过的所有链路,得到所述源节点到宿节点整条转发路径上的所有节点标签和/或邻近标签,并生成该转发路径对应的标签栈。
SDN(Software Defined Network,软件定义网络)架构为复杂的流量工程实现开辟了新的思路,因为SDN控制器掌握了网络的运行状态信息,而且控制器一般部署在比网元硬件强大许多倍的服务器上,不论是对海量网络信息库的存储,还是对付大拓扑数据的路径计算能力,都是单网元所不能匹及的。支持PCE(Path Computation Element,路径计算单元)算路功能的SDN控制器包括以下几个关键模块:PCE模块,提供多种路径算法,包括Dijkstra、BFS、K-Shortest等路径算法;TEDB(Traffic Engineer Database,流量工程数据库),包括各类流量工程拓扑数据,是算路的数据基础;IGP FIB,同步于网元上的IP转发表,使控制器更新转发状态;SR Tunnel/Path Process,SRTE隧道业务处理模块。
本发明在SDN控制器上构建分层拓扑模型,该分层拓扑模型包括下层模型和上层模型,所述下层模型为三层链路拓扑模型,所述上层模型为IP可达链路拓扑模型,图2为分层拓扑模型示意图。基于对IP可达链路拓扑模型的路径计算,从而得到转发路径上的标签栈,该标签栈具有最小深度。所述分层拓扑模型的构建步骤包括三层链路拓扑模型的构建和IP可达链路拓扑模型的构建。
所述三层链路拓扑模型的构建步骤包括:基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构,并设置各个节点之间链路的流量工程属性,以及设置各个节点的邻接标签,并在该三层链路拓扑结构中以有向边标识邻接标签。如图2所示的节点1~7,设置节点1的邻接标签为AdjSID12和AdjSID13,用有向边来标识邻接标签,设置链路的流量工程属性,包括链路带宽配置参数、链路的TE Metric值以及链路风险共享链路组SRLG、链路亲和属性、时延等参数。如图2中的link1 10G,表示链路link1带宽为10G。
所述IP可达链路拓扑模型的构建步骤包括:根据IGP链路状态数据库生成最短路径树拓扑结构,将所述三层链路拓扑结构中的各个节点映射所述最短路径树拓扑结构的各个节点,并根据所述三层链路拓扑结构中的各个节点之间的链路和流量工程属性,构建所述最短路径树拓扑结构中各个节点的链路以及对应的流量工程属性,并设置该最短路径树拓扑中各个节点的节点标签。IP可达链路拓扑模型是表示在IP网络中的两点间路由可达关系的拓扑,该拓扑的边即表示两关联节点在IGP域内可达。
根据本发明的一具体实施例,如图3所示,所述三层链路拓扑模型和IP可达链路拓扑模型具有相同的对象结构,所述三层链路拓扑模型的link和IP可达链路拓扑模型的link也具有相同的对象结构。所述三层链路拓扑模型具体包括:
upper_layer_topo_id对象,用以指向上层的IP可达链路拓扑模型,
node_set对象,用以设置拓扑结构中的节点;
link_set对象,用于设置三层链路拓扑模型相关联的link对象,其中,所述link对象包括:
链路cost对象,用以设置链路流量工程属性;
upper_layer_link set对象,用于将链路关联到多条IP可达链路拓扑模型中的链路。
所述IP可达链路拓扑模型具体包括:
under_layer_topo_id对象,用以指向下层的三层链路拓扑模型;
node_set对象,用以设置拓扑结构中的节点;
link_set对象,用于设置IP可达链路拓扑模型相关联的link对象,其中,所述link对象包括:
under_layer_link set对象,用于将链路关联到多条三层链路拓扑模型中的链路;
bandwidth对象,计算所述IP可达链路拓扑模型中链路的有效剩余带宽为对应三层链路拓扑模型的链路的最低有效带宽;
cost对象,计算所述IP可达链路拓扑模型中链路代价为对应三层链路拓扑模型的链路的总代价;
delay对象,计算所述IP可达链路拓扑模型中链路的时延为对应三层链路拓扑模型的链路的总时延;
IP可达链路拓扑模型中链路的Delay、bandwidth、cost,根据三层链路拓扑模型的链路的流量工程属性进行计算得到。如图3中所示,
under_layer_link set of L1={link1,link2,link3,link4};
upper_layer_link set of link1={L1,。。。},计算得到IP可达链路拓扑模型中的link L1的有效带宽为10G。比如三层链路拓扑模型的链路A->B,B->C的代价值是10,20;那么IP可达链路拓扑模型链路A->C的链路代价值就是30。
获取预设的寻路条件,并根据所述最短路径树拓扑结构中各个节点的路由转发表,以及各个节点间的链路属性,根据CSPF算法得到所述最短路径树拓扑结构中的一源节点到宿节点所经过的所有链路,得到所述源节点到宿节点整条转发路径上的所有节点标签和/或邻近标签,并生成该转发路径对应的标签栈。SR分段路由网络中报文转发是以节点标签/邻接标签为指令而实现的,这样就对应于上述拓扑分层模型中的节点和边。标签栈就表示一条从源节点到宿节点的路径,这条路径就是节点标签/邻接标签的序列。
根据该实施例,对网元来讲,只需简单地维护本网元SPT拓扑即可,即IP报文转发按传统IGP路由转发;而SDN控制器上维护的三层链路拓扑可以赋予丰富的流量工程属性,可以设置三层链路带宽配置参数、TE Metric值以及设置链路风险共享链路组SRLG、链路亲和属性、时延等参数;同时,SDN控制器可以将三层链路拓扑链路上的流量工程属性也反映IP可达链路拓扑链路上。SDN控制器可以直接在IP可达链路拓扑做路径计算,得到分段路由的路径计算结果,从而得到最小深度的标签栈。
通过具体的场景实施例,来对本发明利用IP可达链路拓扑进行路径计算得到最小深度的标签栈,进行详细说明。根据本发明的一具体实施例,所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走IGP最短路径,并且源节点和宿节点之间存在的可达路由时,基于所述最短路径树拓扑结构计算得到所述IGP最短路径,并得到所述IGP最短路径上的所有节点标签,并生成对应的标签栈。根据最短路径树拓扑结构,只要源节点和宿节点之间存在链路,即有IGP可达路径,报文头部标签打入对端的节点标签即可。
根据本发明的一具体实施例,所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括必经节点和/或必经链路,设置必经节点对应该节点的节点标签,必经链路对应该指定路径源节点的邻接标签,该指定路径所对应的标签栈包括必经节点的节点标签和/或必经链路的邻接标签。在SR网络中,必经节点可以对应于该节点的节点标签,必经链路可以对应于该链路发端的邻接标签。所以必经路径的就是由节点标签和邻接标签组成的标签栈。如图4所示,源节点DC1到宿节点DC2的路径指定必须经过NE5,在源节点DC1的报文打入NE5的节点标签和DC2的节点标签既可。如果转发路径上本来就包含指定的必经节点或者必经链路时,无需在报文头部打入必经节点的节点标签或必经链路的邻接标签。
根据本发明的一具体实施例,所述预设的寻路条件设置为为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括避绕节点和/或避绕链路,将所述三层链路拓扑结构数据删除所述避绕节点和/或避绕链路,并在删除后的拓扑数据中计算源节点和宿节点间的最短路径,将该最短路径与最短路径树拓扑结构上的路径进行最长匹配,能够匹配的段用节点标签标识,不能匹配的节点间直接用邻接标签标识。
根据本发明的一具体实施例,所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括避绕节点和/或避绕链路,将所述三层链路拓扑结构数据删除所述避绕节点和/或避绕链路,将被删除的避绕节点和/或避绕链路在所述最短路径树拓扑结构中对应的节点和/或链路,并在所述最短路径树拓扑结构中删除该节点和/或链路,基于删除后的最短路径树拓扑结构进行最短路径计算,得到对应的标签栈。如图2所示,设置源节点3到宿节点4的避绕链路为(3,4),三层链路拓扑结构中的链路(3,4)的upper_layer_link是最短路径树拓扑结构中的链路(33,34),链路(33,35)。复制最短路径树拓扑结构数据,并将上述链路移除,得到新的最短路径树拓扑结构,并做最短路径计算,得到最短路径是{(33,31),(31,34)}或{(33,32),(32,34)},对应的标签栈只要打{Node1,Node4}或{Node2,Node4}就可以了。当所述最短路径树拓扑结构中删除避绕节点后,若该最短路径树拓扑中的两个节点间不存在链路,但是对应在三层链路拓扑中存在链路的,将三层链路拓扑中链路数据补充到最短路径树拓扑中,若转发路径经过该链路时,则转发路径打邻接标签。
根据本发明的一具体实施例,所述预设的寻路条件设置为当源节点和宿节点之间的业务流的路径基于非IGP链路的Metric所选的最短路径,所述Metric包括最小时延或TEMetric最短,根据所述三层链路拓扑结构中的链路的时延或者TE Metric值,将链路的时延或者TE Metric累加到对应的最短路径树拓扑结构链路上,得到最短路径树拓扑结构链路的总时延或者总TE Metric值,并基于最短路径树拓扑结构进行路径计算得到最小时延或者最小TE Metric路径,并得到对应路径的标签栈。
根据本发明的一具体实施例,所述预设的寻路条件设置为当源节点和宿节点之间的业务流的路径基于流量负载平衡策略进行选路,SD控制器可以监控网络上的实时流量,记录三层链路拓扑结构中每条链路的剩余可用带宽和带宽使用率,对新上的业务或对老业务调整,都可以按网络链路的带宽实际使用情况做负载均衡。如按走最大剩余带宽链路的方式来做负载均衡为例,控制器将最短路径树拓扑结构对链路设置可用带宽=Min(available bandwidth of under_layer_links),即选途经三层链路拓扑链路上的可用带宽值为最小那段链路的带宽作为最短路径树拓扑结构连接链路的可用带宽。然后按高带宽低权重的方式将可用带宽折算为链路权重,这样在最短路径树拓扑上做出的最短路径就是符合负载均衡要求的路径。
根据本发明的一具体实施例,所述预设的寻路条件设置为当源节点和宿节点之间的业务流的路径按照链路亲和属性进行选路,不同业务可以限制走到具有不同亲和属性的链路上。在SDN控制器的支持下,即使网元不提供链路亲和属性功能,也能完成MPLS TE的亲和属性寻路规则。通过在控制器上对三层链路拓扑的链路设置亲和属性值,这些亲和属性值会同步到最短路径树拓扑链路上,即最短路径树拓扑链路的亲和值是途经三层链路拓扑链路的亲和值的交集。当用户要求按某亲和属性值选路时,控制器就先按条件过滤出最短路径树拓,然后再按最短路径算法计算路径。
如图5所示的本发明的一实施例,本发明提供了一种SDN控制器,包括:
三层链路拓扑模型模块50,用于基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构,并设置各个节点之间链路的流量工程属性,以及设置各个节点的邻接标签,并在该三层链路拓扑结构中以有向边标识邻接标签;
IP可达链路拓扑模型模块51,根据IGP链路状态数据库生成最短路径树拓扑结构,将所述三层链路拓扑结构中的各个节点映射所述最短路径树拓扑结构的各个节点,并根据所述三层链路拓扑结构中的各个节点之间的链路和流量工程属性,构建所述最短路径树拓扑结构中各个节点的链路以及对应的流量工程属性,并设置该最短路径树拓扑中各个节点的节点标签;
路径计算模块52,获取预设的寻路条件,并根据所述最短路径树拓扑结构中各个节点的路由转发表,以及各个节点间的链路属性,根据CSPF算法得到所述最短路径树拓扑结构中的一源节点到宿节点所经过的所有链路,得到所述源节点到宿节点整条转发路径上的所有节点标签和/或邻近标签,并生成该转发路径对应的标签栈。
本发明在SDN控制器上构建分层拓扑模型,该分层拓扑模型包括下层模型和上层模型,所述下层模型为三层链路拓扑模型,所述上层模型为IP可达链路拓扑模型。三层链路拓扑模型模块基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构,并设置各个节点之间链路的流量工程属性,以及设置各个节点的邻接标签,并在该三层链路拓扑结构中以有向边标识邻接标签。IP可达链路拓扑模型模块根据IGP链路状态数据库生成最短路径树拓扑结构,将所述三层链路拓扑结构中的各个节点映射所述最短路径树拓扑结构的各个节点,并根据所述三层链路拓扑结构中的各个节点之间的链路和流量工程属性,构建所述最短路径树拓扑结构中各个节点的链路以及对应的流量工程属性,并设置该最短路径树拓扑中各个节点的节点标签。述三层链路拓扑模型和IP可达链路拓扑模型具有相同的对象结构,所述三层链路拓扑模型的link和IP可达链路拓扑模型的link也具有相同的对象结构。通过分层的拓扑数据模型,三层链路拓扑反应的是IGP网络上节点邻居关系的拓扑,IP拓扑可达链路拓扑反应的是网元IP可达链路,利用这两层拓扑数据来作为SR网络业务路径计算的拓扑数据源,结合通用的最短路径算法,可以方便地得到最小深度的标签栈。
尽管为示例目的,已经公开了本发明的优选实施方式,但是本领域的普通技术人员将意识到,在不脱离由所附的权利要求书公开的本发明的范围和精神的情况下,各种改进、增加以及取代是可能的。
Claims (8)
1.一种基于SDN的SR路径计算和标签栈生成的方法,其特征在于,所述方法包括步骤:
S1、在SDN控制器上构建一包括下层模型和上层模型的分层拓扑模型,所述下层模型为三层链路拓扑模型,所述上层模型为IP可达链路拓扑模型,其中,所述分层拓扑模型的构建步骤包括;
S101、所述三层链路拓扑模型的构建步骤包括:基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构,并设置各个节点之间链路的流量工程属性,以及设置各个节点的邻接标签,并在该三层链路拓扑结构中以有向边标识邻接标签;
S102、所述IP可达链路拓扑模型的构建步骤包括:根据IGP链路状态数据库生成最短路径树拓扑结构,将所述三层链路拓扑结构中的各个节点映射所述最短路径树拓扑结构的各个节点,并根据所述三层链路拓扑结构中的各个节点之间的链路和流量工程属性,构建所述最短路径树拓扑结构中各个节点的链路以及对应的流量工程属性,并设置该最短路径树拓扑中各个节点的节点标签;
S2、获取预设的寻路条件,并根据所述最短路径树拓扑结构中各个节点的路由转发表,以及各个节点间的链路属性,根据CSPF算法得到所述最短路径树拓扑结构中的一源节点到宿节点所经过的所有链路,得到所述源节点到宿节点整条转发路径上的所有节点标签和/或邻近标签,并生成该转发路径对应的标签栈;
所述步骤S2包括:
所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括避绕节点和/或避绕链路,将所述三层链路拓扑结构数据删除所述避绕节点和/或避绕链路,将被删除的避绕节点和/或避绕链路在所述最短路径树拓扑结构中对应的节点和/或链路,并所述最短路径树拓扑结构中删除该节点和/或链路,基于删除后的最短路径树拓扑结构进行最短路径计算,得到对应的标签栈;
当所述最短路径树拓扑结构中删除避绕节点后,若该最短路径树拓扑中的两个节点间不存在链路,但是对应在三层链路拓扑中存在链路的,将三层链路拓扑中链路数据补充到最短路径树拓扑中,若转发路径经过该链路时,则转发路径打邻接标签。
2.如权利要求1所述的基于SDN的SR路径计算和标签栈生成的方法,其特征在于,所述三层链路拓扑模型具体包括:
upper_layer_topo_id对象,用以指向上层的IP可达链路拓扑模型;
node_set对象,用以设置拓扑结构中的节点;
link_set对象,用于设置三层链路拓扑模型相关联的link对象,其中,所述link对象包括:
链路cost对象,用以设置链路流量工程属性;
upper_layer_link set对象,用于将链路关联到多条IP可达链路拓扑模型中的链路。
3.如权利要求2所述的基于SDN的SR路径计算和标签栈生成的方法,其特征在于,所述IP可达链路拓扑模型具体包括:
under_layer_topo_id对象,用以指向下层的三层链路拓扑模型;
node_set对象,用以设置拓扑结构中的节点;
link_set对象,用于设置IP可达链路拓扑模型相关联的link对象,其中,所述link对象包括:
under_layer_link set对象,用于将链路关联到多条三层链路拓扑模型中的链路;
bandwidth对象,计算所述IP可达链路拓扑模型中链路的有效剩余带宽为对应三层链路拓扑模型的链路的最低有效带宽;
cost对象,计算所述IP可达链路拓扑模型中链路代价为对应三层链路拓扑模型的链路的总代价;
delay对象,计算所述IP可达链路拓扑模型中链路的时延为对应三层链路拓扑模型的链路的总时延。
4.如权利要求1所述的基于SDN的SR路径计算和标签栈生成的方法,其特征在于,所述步骤S2包括:
所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走IGP最短路径,并且源节点和宿节点之间存在的可达路由时,基于所述最短路径树拓扑结构计算得到所述IGP最短路径,并得到所述IGP最短路径上的所有节点标签,并生成对应的标签栈。
5.如权利要求1所述的基于SDN的SR路径计算和标签栈生成的方法,其特征在于,所述步骤S2包括:
所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括必经节点和/或必经链路,设置必经节点对应该节点的节点标签,必经链路对应该指定路径源节点的邻接标签,该指定路径所对应的标签栈包括必经节点的节点标签和/或必经链路的邻接标签。
6.如权利要求1所述的基于SDN的SR路径计算和标签栈生成的方法,其特征在于,所述步骤S2包括:
所述预设的寻路条件设置为为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括避绕节点和/或避绕链路,将所述三层链路拓扑结构数据删除所述避绕节点和/或避绕链路,并在删除后的拓扑数据中计算源节点和宿节点间的最短路径,将该最短路径与最短路径树拓扑结构上的路径进行最长匹配,能够匹配的段用节点标签标识,不能匹配的节点间直接用邻接标签标识。
7.如权利要求1所述的基于SDN的SR路径计算和标签栈生成的方法,其特征在于,所述步骤S2包括:
所述预设的寻路条件设置为当源节点和宿节点之间的业务流的路径基于非IGP链路的Metric所选的最短路径,所述Metric包括最小时延或TE Metric最短,根据所述三层链路拓扑结构中的链路的时延或者TE Metric值,将链路的时延或者TE Metric累加到对应的最短路径树拓扑结构链路上,得到最短路径树拓扑结构链路的总时延或者总TE Metric值,并基于最短路径树拓扑结构进行路径计算得到最小时延或者最小TE Metric路径,并得到对应路径的标签栈。
8.一种SDN控制器,其特征在于,包括:
三层链路拓扑模型模块,用于基于内部网关协议所获取的各个节点的邻居表信息构建一个三层链路拓扑结构,并设置各个节点之间链路的流量工程属性,以及设置各个节点的邻接标签,并在该三层链路拓扑结构中以有向边标识邻接标签;
IP可达链路拓扑模型模块,根据IGP链路状态数据库生成最短路径树拓扑结构,将所述三层链路拓扑结构中的各个节点映射所述最短路径树拓扑结构的各个节点,并根据所述三层链路拓扑结构中的各个节点之间的链路和流量工程属性,构建所述最短路径树拓扑结构中各个节点的链路以及对应的流量工程属性,并设置该最短路径树拓扑中各个节点的节点标签;
路径计算模块,获取预设的寻路条件,并根据所述最短路径树拓扑结构中各个节点的路由转发表,以及各个节点间的链路属性,根据CSPF算法得到所述最短路径树拓扑结构中的一源节点到宿节点所经过的所有链路,得到所述源节点到宿节点整条转发路径上的所有节点标签和/或邻近标签,并生成该转发路径对应的标签栈;
所述路径计算模块,所述预设的寻路条件设置为当源节点和宿节点之间的业务流需要走指定路径时,该指定路径的设定条件包括避绕节点和/或避绕链路,将所述三层链路拓扑结构数据删除所述避绕节点和/或避绕链路,将被删除的避绕节点和/或避绕链路在所述最短路径树拓扑结构中对应的节点和/或链路,并所述最短路径树拓扑结构中删除该节点和/或链路,基于删除后的最短路径树拓扑结构进行最短路径计算,得到对应的标签栈,当所述最短路径树拓扑结构中删除避绕节点后,若该最短路径树拓扑中的两个节点间不存在链路,但是对应在三层链路拓扑中存在链路的,将三层链路拓扑中链路数据补充到最短路径树拓扑中,若转发路径经过该链路时,则转发路径打邻接标签。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110503597.1A CN113242179B (zh) | 2021-05-10 | 2021-05-10 | 一种基于sdn的sr路径计算和标签栈生成的方法及sdn控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110503597.1A CN113242179B (zh) | 2021-05-10 | 2021-05-10 | 一种基于sdn的sr路径计算和标签栈生成的方法及sdn控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113242179A CN113242179A (zh) | 2021-08-10 |
CN113242179B true CN113242179B (zh) | 2023-03-24 |
Family
ID=77132843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110503597.1A Active CN113242179B (zh) | 2021-05-10 | 2021-05-10 | 一种基于sdn的sr路径计算和标签栈生成的方法及sdn控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113242179B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691447A (zh) * | 2021-08-23 | 2021-11-23 | 烽火通信科技股份有限公司 | 一种sr本地防微环的方法和装置 |
CN113726646B (zh) * | 2021-08-25 | 2022-10-18 | 烽火通信科技股份有限公司 | 一种分段路由的快速保护倒换方法及装置 |
CN114172787B (zh) * | 2021-11-10 | 2023-08-25 | 中盈优创资讯科技有限公司 | 一种IGP链路异常Metric实时监测处置方法及装置 |
CN114884879B (zh) * | 2022-05-06 | 2023-07-14 | 鹏城实验室 | 一种基于标签技术的软件定义网络混合交换方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108259341A (zh) * | 2017-12-06 | 2018-07-06 | 新华三技术有限公司 | 一种前缀标签分配方法和sdn控制器 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3238387B1 (en) * | 2014-12-23 | 2019-10-30 | Telefonaktiebolaget LM Ericsson (publ) | Path computation in a segment routing network |
US9954765B2 (en) * | 2016-01-08 | 2018-04-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Graph construction for computed spring multicast |
CN111355657B (zh) * | 2018-12-24 | 2022-06-24 | 中兴通讯股份有限公司 | 一种流量工程路径建立方法及装置和系统 |
CN112350935B (zh) * | 2019-08-08 | 2023-03-24 | 中兴通讯股份有限公司 | 针对具有栈深约束的路径计算方法及装置 |
-
2021
- 2021-05-10 CN CN202110503597.1A patent/CN113242179B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108259341A (zh) * | 2017-12-06 | 2018-07-06 | 新华三技术有限公司 | 一种前缀标签分配方法和sdn控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN113242179A (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113242179B (zh) | 一种基于sdn的sr路径计算和标签栈生成的方法及sdn控制器 | |
CN100454841C (zh) | 一种多域路由计算方法和系统 | |
US7120118B2 (en) | Multi-path analysis for managing machine communications in a network | |
JP5410998B2 (ja) | スイッチ及びルータのためのソフトウェア制御プレーン | |
Feldmann et al. | NetScope: Traffic engineering for IP networks | |
EP1859561B1 (en) | Algorithm for backup pe selection | |
US7382738B2 (en) | Method and apparatus for computing metric information for abstracted network links | |
Awduche et al. | Internet traffic engineering using multi-protocol label switching (MPLS) | |
CN105024844B (zh) | 一种计算跨域路由的方法、服务器以及系统 | |
US8526325B2 (en) | Detecting and identifying connectivity in a network | |
US9246794B2 (en) | Label distribution and route installation in a loop-free routing topology using routing arcs | |
WO2013159451A1 (zh) | 跨域端到端路由的获取方法及装置、子路由计算实体 | |
CN111224857B (zh) | 用于实现组合虚拟专用网vpn的方法与装置 | |
Sprintson et al. | Reliable routing with QoS guarantees for multi-domain IP/MPLS networks | |
US20070268821A1 (en) | Rpr representation in ospf-te | |
CN103477612A (zh) | 经扩展以连接网络层级的云服务控制和管理架构 | |
KR101343596B1 (ko) | 다계층 자원 전송망 경로 계산에 필요한 자원 관리 및 재귀적 경로 계산 방법 및 장치 | |
WO2007062608A1 (fr) | Procede pour la realisation d'acheminements separes reliant des domaines | |
CN108574628B (zh) | 域级拓扑的建立方法及装置、系统 | |
CN108206780A (zh) | 流量调度策略上报方法、自治域系统及sdn网络系统 | |
CN101471879A (zh) | 一种层次化有序地址分组网络的路径控制系统和方法 | |
JPWO2006059787A1 (ja) | オーバーレイリンク計算装置およびその計算方法ならびにプログラム | |
Fajjari et al. | A novel SDN scheme for QoS path allocation in wide area networks | |
JP3920787B2 (ja) | 迂回経路管理方法及びシステム | |
JP2010199882A (ja) | 通信システム、経路計算装置、経路計算方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |