3.8 路由技术
要实现端到端的连接自动配置,首先必须进行路由选择,然后再利用信令把连接建立起来。ASON路由选择与IP网的最大区别是,IP路由选择是面向非连接的,而ASON是面向连接的,所以其路由选择是从源端到宿端整条路径的选择。
3.8.1 ASON路由的作用与要求
1.ASON路由的作用
ASON路由技术的作用是为跨越一个或多个运营商网络的连接提供选路服务,包括网络信息与资源信息的发布、可达性信息的传播及端到端连接的路由计算与选择等。
为了实现端到端的路由计算与选择,除了需要了解连接所提的要求之外,如连接的源端与宿端的地址、连接所需要的带宽及一些附加约束条件等,更重要的是还必须知道网络的拓扑结构、网络资源的分配情况等,所以ASON路由技术要把自动发现技术获得的网络信息、资源信息、可达性路由信息等在网络中进行通告与传播,并构建网络的拓扑结构。
2.ASON路由的要求
1)对路由体系的要求
(1)路由体系结构应为等级结构,即整个路由体系应该划分为多个不同的等级;
(2)不同等级的路由可以使用不同的路由协议;
(3)路由拓扑结构与传送平面的网络拓扑结构可以不一致;
(4)同一运营商网络内的每个路由域被唯一标识;
(5)域间路由协议应该和域内的路由协议及控制方式(集中式、分布式)无关。
2)对路由协议的要求
(1)对路由协议的基本要求如下:
· 应采用基于链路状态的路由协议;
· 支持路由的多等级结构;
· 支持多层网络;
· 至少支持分层路由、源路由与逐跳路由方式中的一种;
· 支持链路捆绑功能;
· 支持回溯机制;
· 支持不同级别的保护恢复要求。
(2)对域间路由协议的要求。
除上述基本要求之外,域间路由协议还应该满足以下要求:
· 应独立于任何域内路由协议;
· 支持基于策略的域间路由信息交换;
· 支持域拓扑和资源信息抽象,支持可达性信息的聚合;
· 支持分级路由信息的分发:包括域间拓扑信息、每个域的拓扑抽象信息和可达性信息等。
3)对路由计算与选择的要求
· 支持最短路径优先(可基于一些约束条件);
· 不出现环路;
· 至少支持三种路由方式的一种(分层路由、源路由、逐跳路由方式);
· 既可以计算出端到端的工作路由,又可以计算出它的恢复路由;
· 支持基于约束条件的路径计算与选择,约束条件包括结点数量、链路“代价”、包括排除某些网络资源、业务等级、分集约束(链路分离、结点分离、SRLG分离)等。
3.8.2 ASON的路由体系结构
1.路由功能元件
ASON的路由功能元件分为两类,即与路由协议有关的及无关的元件。前者包括路由控制器RC、链路资源管理器LRM等,后者包括协议控制器PC等,它们的关系如图3-19所示。
图3-19 路由功能元件之间关系
1)路由控制器RC
路由控制器RC处理所管辖路由区域内的路由信息,如路由信息的协调与分发、与对等RC进行路由信息交换、利用路由信息数据库响应路由查询请求等。RC与具体的路由协议无关。
一个路由区域RA一般配置一个RC,而一组RC将组成一个路由控制域RCD。RCD是一个抽象实体,它隐藏了内部的细节,提供与成员RC相同特性的分布式接口。
2)路由信息数据库RDB
路由信息数据库RDB存储所管辖路由控制域内的全部路由信息,包括本地拓扑、网络拓扑、可达性和其他通过路由信息交换获得的路由信息、路由配置信息等。RDB与具体的路由协议无关。RC可能通过访问RDB共享其他路由区域的路由消息。
3)链路资源管理器LRM
链路资源管理器LRM负责链路资源管理,向RC提供所有相关的子网点组SNPP链路信息。LRM与具体的协议无关。
4)协议控制器PC
协议控制器PC不仅将路由原语转换成特定的路由协议消息,而且还处理路由消息交换以及与协议有关的控制信息。PC与具体的路由协议密切相关。
2.ASON的等级路由体系结构
ASON的整个路由划分成多个路由等级,在每个等级层面上进而又划分成多个路由域。
一个典型的ASON路由体系结构如图3-20所示。
图3-20 ASON路由的等级体系结构
从图中可以看出,ASON路由体系一般可分为三级:
一级为不同运营商的ASON网络之间的路由;运营商ASON网络之间的路由没有相互信任关系。
二级为同一运营商网络内的不同路由控制域RCD之间的路由;RCD的划分可能会基于各方面的原因,如基于管理方面的要求,或基于不同厂家的设备,或基于不同技术等方面原因。RCD1与RCD2之间具有一定的信任关系,彼此之间应该能够相互交换路由信息。
三级为同一路由控制域内不同的路由区域RA之间,以及同一RA内部的路由。不同路由区域的划分主要基于地理因素方面的原因。
注意:ASON的路由结构分级并不是固定的,如可以根据情况把第三级路由与第二级路由合并为一级,这样就变成了两级结构。
3.路由协议种类
由于ASON路由结构一般可分为三级,所以一般需要三类路由协议的支持。
一级路由协议是支持一级路由即不同运营商的ASON网络间的路由协议。外部边界网关协议EBGP因为具有协议转换功能,所以是一级路由协议的主要候选者,但目前运营商ASON网络之间的互通还未提到日程上来。
二级路由协议即域间路由协议,它是支持运营商内部、不同控制域之间的路由协议。基于OSPF-TE协议、已进行扩展的域到域路由协议DDRP宜作为二级路由协议。
三级路由协议是支持同一控制域内的不同路由区域之间,以及同一路由区域内部的路由协议。由于同一控制区域内部不存在互通问题,所以三级路由协议可以是任何私有协议,不需要标准化。可供选择的协议有:GMPLS OSPF-TE、GMPLS IS-IS-TE、PNNI协议等。
3.8.3 ASON的路由功能
ASON的路由功能最主要的是按要求对端到端路进行计算与选择,此外还有重路由、链路捆绑、共享风险链路组、回溯机制等。
1.路由的计算与选择
路由的计算与选择是路由技术的核心功能,它取决于多方面因素,如可用的网络资源及网络拓扑结构、具体的路由算法与路由策略、网络环境等。网络拓扑的建立与更新、路由信息的发布,是进行路由计算与选择的基础。
1)路由计算方法
路由计算方法分为两种,一种是基于逐跳模式的算法,另一种是基于约束条件的显式路由算法。
ASON的路由计算通常采用CSPF算法,即基于约束条件的、最短路径优先的算法。也就是说,计算路由时,在满足预定约束条件的前提下,优先选取距离最短的路径。所以在计算路由时,首先需要了解网络的拓扑结构、网络资源使用情况等,然后从众多的由源端到宿端的路径中选取距离最短的,完成整个路由计算之后再把结果表示成显式路由形式,以便于用信令实现连接。
算法确定之后,ASON的路由技术更关注以何种方式计算路由,如计算是从高层向低层逐层进行,还是直接从低层的源结点开始等。此外,还关注究竟需要哪些路由信息以及如何提供这些信息等。
2)路由信息通告
路由信息通告的目的是为计算路由提供必要的条件。通告的路由信息包括结点属性信息、链路属性信息,根据通告的信息建立起全网的网络拓扑。
(1)结点属性信息。
· 可达性:通过某结点可以到达其他结点的信息(可达结点的地址列表);
· 多样性:用于约束路由算法的结点属性,如是否属于共享风险链路组SRLG;
· 其他属性:保护/恢复能力、在路由域中的拓扑信息、结点接口的交换能力等。
(2)链路属性信息。
· 链路状态:链路在路由信息数据库中的存在、链路的容量与权重,其中权重代表该链路在路径计算时被选中的可能性;
· 多样性:与结点的多样性类似,如是否属于共享风险链路组SRLG;
· 其他属性:可用性、链路的保护类型等。
3)路由计算与选择的约束条件
(1)结点数量约束,某路由所经过的结点不能超过约定的数量;
(2)链路“代价”约束,某路由的链路“代价”不能超过约定值;
(3)包含某些特定的网络资源,某路由必须包括某些特定的结点、链路、子网等网络资源;
(4)排除某些特定的网络资源,某路由必须排除某些特定的结点、链路、子网等,这种约束通常用于恢复路由的计算;
(5)保护类型约束,某路由必须满足既定的保护类型,如1+1或1:1保护等;
(6)负责均衡约束,某路由必须满足既定的流量均衡策略;
(7)传输层特定的约束条件,如必须是某个特定的波长等。
4)路由计算方式
路由的计算与选择既可以利用控制平面在线实时进行,也可以利用网管平面脱机进行。主要取决于具体需求,以及路由的复杂程度、拓扑信息的可用性与特定的网络环境等。
ASON进行路由的计算与选择时,有三种路由方式,即分层路由、源路由与逐跳路由方式。
(1)分层路由方式。
所谓分层路由方式就是路由的计算与选择从网络最高层开始,按网络等级从上至下地逐层进行,一直到具体的链路为止。
分层路由方式适用于多控制域的大型网络。
ASON网络的每一级路由区域可以划分成多个子网,每个子网由一个连接控制器控制,所以连接控制器之间也呈现等级关系。
采用分层路由方式时,路由的计算与选择从网络最高层的中心结点开始,在相关控制器的控制下,首先计算出路由必须经过的下一层多个子网,然后下一层每个子网进行类似操作,计算出在该子网管辖范围内必须经过的再下一层子网的多个子网,如此递归操作一直到最终选择到实际链路为止。
分层路由方式的计算结果是包括多个结点与多条链路在内的一条或多条端到端路由。
分层路由方式的工作示意图如图3-21所示。
图3-21 分层路由方式
分层路由方式的输入条件为:
· 网络拓扑信息;
· 目的结点;
· 源结点;
· 路由多样性限制,如输出的路由必须符合多样性要求;
· 路由必须包含的网络资源,如链路、子网等;
· 路由必须排除的网络资源,如链路、子网等。
(2)源路由方式。
所谓源路由方式就是路由的计算与选择从源结点开始、按路由区域逐个进行,一直到具体的链路为止。
每个路由区域的入口结点在本域相关控制器的控制下,进行本路由区域内的路径计算并判断下一个路由区域的入口结点,如此逐个路由区域进行类似的循环操作,直到目的结点所在的路由区域为止。
源路由方式适用于单控制域的中、小型网络。源路由方式的输入条件与分层路由方式类似,它的计算结果也是包括多个结点与多条链路在内的一条或多条端到端路径。源路由方式的工作示意图如图3-22所示。
图3-22 源路由方式与逐跳路由方式
源路由方式与分层路由方式的主要区别如下:
· 连接控制器负责的区域不同,在分层路由方式中,一个连接控制器负责一个子网的连接控制工作;而在源路由方式中,一个连接控制器则负责一个路由区域的连接控制工作;
· 连接控制器之间的关系不同,分层路由方式中的连接控制器之间呈等级关系;而源路由方式中的连接控制器之间是平等的协作关系;
· 路由计算的起始点不同,分层路由方式是从路由的最高层中心结点开始,逐步向层递归转移;而源路由方式则是从源结点开始,逐步向下游区域转移。
(3)逐跳路由方式。
逐跳路由方式类似于互联网的逐跳路由计算,即路由的计算与选择在每个结点上逐跳进行,所以路由的计算与选择需要进行多次。每个结点将独立地计算出到达目的结点的下一跳,然后转移到下一个结点进行计算,直到目的结点所有的链路为止。逐跳路由方式的计算结果是到达目的结点路由中的下一跳链路。
由于每个结点独立地选择下一跳,所以逐跳路由方式所选择的路由可能不是最优的,另一方面还可能会形成环路路由,因此ASON一般不采用逐跳路由方式。
逐跳路由方式的输入条件为:
· 网络拓扑信息;
· 目的结点;
· 源结点;
· 约束条件。
2.重路由功能
所谓重路由就是重新建立一条新的端到端连接以代替原有的端到端连接。所以实际上它还是进行路由的计算与选择,只不过是针对已有路由的重新计算与选择,因此其约束条件之一是排除某些特定的网络资源,如发生故障的网络资源。
根据重路由的发起者不同,重路由分为硬重路由和软重路由两种类型。
1)硬重路由
硬重路由又称动态重路由,它是一种由控制平面发起、专门用于网络恢复的重路由机制,它总是响应网络故障事件,是一种硬启动方式的重路由。
硬重路由既可以采用“先建后拆”方式,也可以采用“先拆后建”方式。
所谓“先建后拆”是指先建立具有指定属性的端到端连接,然后把原有发生故障的故障端到端连接拆除。
所谓“先拆后建”则是指先拆除原有的故障端到端连接,然后再建立具有指定属性的连接取而代之。
当网络中的某个端到端连接发生故障时,控制平面启动硬重路由功能。在路由协议的支持下,在全网范围对该连接重新进行路由计算与选择,计算时必须排除发生故障的结点与链路等。路由确定之后再利用信令功能建立新的端到端连接。
2)软重路由
所谓软重路由是一种出于管理目的的重路由机制,或者说是一种软启动方式的重路由。如需要对某条已存在的端到端连接进行优化,希望建立另一条新的端到端连接以代替它等。软重路由实现机制与硬重路由相同,但它一般由管理平面发起请求,而且只采用“先建后拆”方式。
3.其他路由功能
1)链路捆绑
链路捆绑就是把两个结点之间、具有相同属性的多条链路捆绑在一起作为一个链路组。
链路捆绑不仅节省IP地址资源,而且可以大大减少网络中发布的路由信息量。因为一个规模庞大的网络会包括成千上万条链路,网络要对每条链路消息进行发布,所以发布的信息量非常大,而经过链路捆绑之后,包括几条或几十条链路的一个链路组的状态信息量相当于一条链路的状态消息,大大减少了网络中发布的路由信息量。
2)共享风险链路组SRLG
(1)共享风险组(SRG)。
SRG就是共享相同风险的一组网络元件,如果发生故障将导致组中的所有网络元件失效(共享风险),如下面的几种情况属于SRG。
· 光纤共享:WDM系统中由一根光纤承载的多个光波长信号,如果光纤被切断,由其承载的全部波长都会失效,所以这些光波长信号就是一个SRG;
· 光缆、管道共享:同一根光缆中的光纤或同一根管道中的光缆,如果光缆或管道被切断,则光缆中的全部光纤或管道中的全部光缆也会失效。
(2)共享风险链路组(SRLG)。
把共享风险组的概念用于链路就是共享风险链路组SRLG。所以SRLG就是共享使用相同风险物理资源的多条链路,如果物理资源发生故障会使组中的所有链路变得不可用。与链路捆绑不同的是,SRLG所包含的链路并不一定具有相同的起始点。
SRLG可以大大减少网络中发布的路由信息量。
一条链路、一个结点可能会属于不同的SRLG,即所谓链路与结点的多样性。在计算与选择路由时不可避免地会遇到多样性问题,需要处理SRLG方面的限制。
3)回溯机制
所谓回溯机制是指当计算与选择路由失败时,能够回到源结点或中间结点(一般为域的边界结点),避开出现问题的结点或链路重新进行路由的计算与选择,而且还应该指示出现问题结点与链路的位置。
回溯应满足以下要求:
· 回溯的次数可以设置;
· 任何一次回溯和造成回溯失败的原因都要上报管理平面;
· 支持域内和域间的回溯;
· 具有后向兼容能力,即不具有回溯能力的结点不对回溯的相关信息进行任何处理,继续向上游回溯。
3.8.4 域内路由协议GMPLS OSPF-TE
虽然域内路由协议即三级协议不存在互通问题,但它会影响控制域之间的互通。因为控制域间的互通需要使用一些域内路由信息,这就需要和二级路由协议之间必须能进行“沟通”。因为域到域路由协议DDRP将会成为二级路由协议的标准协议,而它是在OSPF-TE协议基础上扩展起来的,所以需要对GMPLS OSPF-TE协议进行介绍。
1.概述
ASON的路由计算与选择通常采用基于约束条件的、最短路径优先的算法CSPF,并把计算结果表示成显示路由形式,便于用信令实现连接。所以如何为路由计算与选择提供所必需的路由信息,即如何分发链路状态信息与构建链路状态数据库,是路由协议的重要任务之一。
OSPF协议是一个基于IP的链路状态路由协议,主要用于自治域AS的路由计算与选择。它采用的是基于链路状态的逐跳路由算法,所以与ASON的路由算法不一致,但它的动态邻接关系建立、链路状态数据库同步、“泛洪”机制等都可以用于ASON。而且把OSPF扩展后还可以把流量工程TE及表征网络属性的一些其他参数包括进行扩展的链路状态数据库中,从而可为ASON路由计算提供足够的路由信息,这就是OSPF能成为ASON路由协议基础的原因。
但OSPF协议是为传统路由器设计的,它通告的链路状态信息只适用于IP的路由计算与选择,通告信息仅包括路由器ID、接口的IP地址及链路权值等有限信息,所以限制了OSPF的更广泛使用。为此RFC2370专门针对OSPF进行了扩展,主要是增加了不透明链路状态通告OLSA,提供了一种扩展的OSPF功能的通用机制,OLSA包括的信息可用于OSPF及其他。
MPLS对扩展的OSPF协议又进行了扩展,即所谓的OSPF-TE协议。扩展主要是在流量工程TE方面,TE关心的是网络性能的优化问题,主要增加了描述链路状态信息的TE-LSA(一种类型值为10的OLSA),其通告信息增加了链路方面的参数,如链路类型、链路ID、链路带宽等,使之能适应MPLS的基于约束条件的显式路由计算即CSPF算法。
但MPLS是支持分组交换的数据通信技术,而通用多协议标签交换技术GMPLS不仅支持分组交换而且还支持TDM交换、光波长交换等多种类型交换的技术,为此GMPLS又进一步对OSPF-TE进行了扩展,称为GMPLS OSPF-TE协议。扩展内容主要是增加了对未编号链路的支持,指示链路的保护类型、接口交换能力描述符、链路带宽编码等。
2.OSPF路由协议简介
开放的最短路径优先协议OSPF是由IETF提出的一种基于最短路径优先SPF算法,用于大中型网络的链路状态协议。主要用于在AS自治域内计算、选择路由。
所谓自治系统AS,一般是指在同一个管理部门下建立的网络,位于AS内部的路由器只关心内部的路由,出AS的路由则由自治系统边界路由器ASBS负责,并运行边界网关协议BGP。
在OSPF协议中,路由器之间通过链路状态通告LSA相互交换路由信息,路由信息不再是一个个的路由表,而是一些链路状态信息如路由器ID、接口的IP地址与链路权值等参数,所以网络中传播的路由信息量少、收敛性好、运行速度快。
OSPF把网络分成多个OSPF域和一个骨干域,每个OSPF域都有一个汇总本域路由信息的边界路由器ABR,ABR通过骨干域和其他域交换汇总路由信息。每个路由器都有自己的链路状态数据库LSDB,路由器之间通过链路状态信息的传播,最终达到域中所有的路由器都拥有相同内容的LSDB,即达到数据库同步。每个路由器都利用LSDB构建一棵最短路径树SPT,树根是本路由器,树叶是域中的其他路由器,树枝则是本路由器到域中其他路由器的链路成本最低的路由。所以利用各域的SPT与ABR的汇总路由信息就可以计算出自治域内的任何一条路径。
1)OSPF域
对于一个中大型网络,OSPF通常按地理范围把它划分为多个OSPF域,如图3-23所示。
图3-23 OSPF协议中的“域”
一个OSPF域由一组类同的路由器及接口组成。一个域一般最多不能超过60个路由器,域中的路由器运行OSPF协议并按规定的链路状态算法SPF计算出域内路由,所以每个路由器都拥有一个独立的链路状态数据库LSDB,它们对外是不可见的。
在同一个OSPF域内,路由之间通过链路状态通告LSA相互交换路由信息,以更新LSDB的内容。每个OSPF域都有一个域边界路由器ABR,它一方面负责汇总本域的路由消息,另一方面与骨干域相连接,通过骨干域获得其他OSPF域的汇总路由信息。
当某个OSPF域和骨干域没有物理连接时,必须配置所谓“虚拟链路”以达到可以和骨干域通信的目的。虚拟链路的两端是域边界路由器ABR,其中一个ABR和骨干域有物理连接。
2)链路状态信息
在OSPF协议中,路由器之间相互交换的路由信息并不是具体的路由表,即不是从路由器可以到达哪些网络及到达这些网络的距离、跳数等,它们相互交换的路由信息是链路状态信息。
所谓链路状态信息是指路由器的接口参数和链路参数,如路由器ID、路由器接口的IP地址与子网掩码、接口所连接的网络及使用这些接口所需要的“代价”等。
这些链路状态信息以链路状态通告LSA的形式在域内中传播,一直到域内所有的路由器都拥有完整而且内容相同的链路状态数据库LSDB为止,即达到LSDB的同步。
链路状态信息因不是路由表的相互交换,不仅可以大大减少网络中传播的信息量,而且还加快了最短路径的计算速度。
3)OSPF数据报文
(1)数据报文类型。
通过OSPF的多种类型数据报文,路由器可以建立邻接关系、相互交换路由信息。
· 呼叫数据报文又称“Hello”数据包,用它可以发现、保持并维护与相邻路由器的邻接关系。
· 数据库描述报文在建立邻接关系后,路由器之间通过相互交换“数据库描述”报文,以达到邻居之间的链路状态数据库完全同步。为此可能需要多个“数据库描述”报文,它主要包括能描述LSA主要特征的LSA头部。
· 链路状态请求报文即要求从邻居获取LSA。当路由器发现链路状态数据库有不一致或过时的LSA时,便向邻居请求新的数据库描述报文。
· 链路状态更新报文用于对链路状态请求报文的响应和LSA“泛洪”,一个“链路状态更新”报文包括一个或多个LSA。
· 链路状态确认报文对收到的LSA进行确认应答,以确保泛洪的可靠性。
(2)数据报文格式。
OSPF数据报文格式如图3-24所示。
图3-24 OSPF数据报文格式
由图中看出,OSPF数据报文由两部分组成,一是公用报头,二是报文的具体数据如各种类型的LSA等。无论是何种类型的数据报文,都有一个相同的公用报头,其具体内容如下:
· 版本号,目前的版本号为2;
· 报文类型,表示该报文是哪一种类型的数据报文;
· 报文长度,本数据报文的长度(字节数);
· 路由器ID,产生数据报文的路由器标识;
· 区域ID,本OSPF域的标识;
· 校验和,整个数据报文的校验和;
· 认证类型,认证的方法如口令认证等;
· 认证字,进行身份认证的具体数据。
4)链路状态通告(LSA)
LSA是路由器发布链路状态信息的一种通告形式。
(1)LSA类型。
OSPF使用了多种类型的LSA来描述各种不同类型的链路状态信息,主要有以下五种类型:
· 路由器LSA,由每个路由器产生,用于描述该路由器所有接口的状态信息,其内容在所负责的区域泛洪。
· 网络LSA,每个OSPF域分成多个子网,每个子网都有一个所谓指定路由器DR来代表该子网,其由DR产生,所以又称DR LSA。它用于描述DR所连接的多点访问网络及它所连接的路由器的信息,其内容在该子网中泛洪。
· ABR汇总LSA,每个域都有一个负责和骨干域打交道的域边界路由器ABR。ABR汇总LSA由ABR产生,用于描述某OSPF域内的链路状态信息,即汇总了从ABR能够到达的所有目的地址,其内容在所负责的OSPF域内泛洪。
· ASBR汇总LSA,每个AS域都有一个和其他AS打交道的自治域边界路由器ASBR。ASBR汇总LSA也由ABR产生,用于汇总并描述某AS域内的链路状态信息,但它汇总的是ABR到ASBR的链路状态信息,其内容也在所负责的OSPF域内泛洪。
· AS外部LSA,由ASBR产生,汇总外部系统传入的路由消息,其内容将在AS系统中所有的OSPF域泛洪。
(2)LSA格式。LSA的格式如图3-25所示。
图3-25 LSA的格式
由图可见,LSA由两部分组成,一是LSA报头,二是LSA净负荷。
20字节的LSA报头具有标准结构,用于描述LSA的主要特征,它包括:
· 期限,用2字节表示该LSA存在的期限,若LSA在泛洪过程中经过多跳后积累的时间超过设定值,LSA便予以撤销;
· 选项,1字节,指示LSA可选择的能力,目前都使用“E”,即选择外部路由能力(不泛洪到存根区);
· 链路类型值,1字节,表示LSA的格式与功能,或者说标识LSA的类型;共有5种LSA,1代表路由器LSA,2代表网络LSA,3或4代表汇总LSA,5代表AS外部LSA;除AS外部LSA在整个AS泛洪之外,其余LSA都在单个OSPF域内泛洪;
· 链路状态ID,4字节,标识由LSA描述的那部分路由域;
· 通告路由器,4字节,产生本LSA路由ID;
· 链路状态序列号,4字节,生成LSA的序号;
· 校验和,2字节,对LSA头部的校验和;
· 长度,2字节,LSA头部的长度(字节数)。
其中链路类型值、链路状态ID与通告路由器构成了LSA的唯一重要标志。
LSA的第二部分即是LSA净负荷,是LSA描述的具体内容,包括路由器参数、网络参数等。
5)链路状态数据库(LSDB)
链路状态数据库(LSDB)由各种类型的LSA组成,所以LSDB不仅包括本OSPF域中各路由器链路状态信息,而且还包括OSPF域边界路由器ABS及AS边界路由器ASBR的链路状态信息。
OSPF域中的每个路由器都拥有相同的LSDB(同步之后),可以利用LSDB构造最短路径树SPT。LSDB的查找是通过链路类型、链路ID等特征值来进行的。
6)邻居发现与邻接关系
建立邻接关系的目的是在路由器之间传送链路状态信息。
建立邻接关系首先要进行邻居发现。
邻居发现是通过相互交换“Hello”数据包实现的。路由器用自身的ID及接口参数来构建“Hello”数据包,并通过其接口向相邻路由器周期性地发送“Hello”数据包,对方收到后便回送“Hello”数据包。
如果双方都能在“Hello”数据包中发现对方的ID,双方就建立了邻居关系,以后便靠周期性地发送“Hello”数据包来维护邻居关系。根据“Hello”数据包中的优先级信息,每个子网选出一个代表该子网的所谓指定路由器DR,子网中的所有路由器都与DR建立所谓邻接关系,只有建立了邻接关系之后双方才可以进行双向通信,通过交换数据库描述、链路状态请求、更新、确认等数据报文达到相互交换信息的目的。
7)泛洪
所谓“泛洪”就是把需要泛洪的信息在整个网络中进行“泛滥”,刷新域中所有的LSDB,使它们保持相同的内容(LSDB同步)。
因为OSPF域的拓扑结构可以通过LSDB来描述,而LSDB又是由各种类型的LSA组成,所以拓扑结构的变化都体现在LSA的变化上。泛洪过程就是把这些变化的LSA或新的LSA在整个网络中进行传播,以确保每个路由器的LSDB及时更新,最终达到同步,这是泛洪的最终目的。
在OSPF协议中,泛洪利用“链路状态更新”报文与“链路状态确认”报文来实现。首先用这两种报文把变化的LSA信息与新的LSA信息在建立邻接关系的路由器之间进行发送与接收,然后通过扩散操作把信息扩展到整个网络中的所有结点,最终达到LSDB同步。
8)路由计算
OSPF协议计算路由主要包括域内路由计算和域间路由计算两部分。
(1)域内路由计算。
单纯的域内路由计算,利用各路由器构建的最短路径树SPT就可以实现。
每个路由器都会根据LSDB计算出一棵最短路径树SPT,计算SPT的方法称为Djkstra算法,即基于逐跳路由的最短路径优先算法SPT。SPT的树根就是路由器本身,树叶是域内的其他路由器,树枝则是本路由器到域内其他路由器的最短路由。所以利用SPT就可以找出到达域内各目的路由器的最短路由,包括到达域边界路由器的最短路由。
路由由许多“跳”组成,但对“跳”加权的依据却不是距离矢量而是链路代价,代价的单位=100/链路带宽。也就是说,代价与链路带宽成反比,带宽越宽链路代价越低,到达目的地所付出的代价越低。
(2)域间路由计算。
如果路由涉及其他的OSPF域,则首先利用SPT计算出源路由器到本域ABR的最短路由,然后通过骨干域计算出从本域到目的域的路由,再利用目的域的ABR汇总链路状态信息,最终计算出到目的路由器的路由。如果本域的ABR连着多个域,则需要检查骨干域的汇总LSA,以获得最短路由。因每个域都有一个ABR与骨干域相连,它把本域的汇总链路状态信息传送到骨干域,各ABR都进行类似的操作,最后的结果是骨干域拥有所有各域的汇总链路状态信息。因此,源路由器总可以计算出找到达域外部目的路由器的最短路由。
如果路由涉及到自治域外,则需要利用AS域边界路由器的LSA。
9)OSPF的优缺点
(1)优点。
· 通过把网络分成骨干域与多个OSPF域,使网络具有层次结构,所以适用于大、中型网络;
· 因为在OSPF域内传送的是链路状态信息,域之间传送的是汇总链路状态信息,所以减少了网络中传播的路由信息量,路由的收敛性好,运行速度快;
· 用“代价”而不是距离为依据来计算路由,所以路由的加权依据更合理,而且路由不受物理“跳”数的限制。
(2)缺点。
一是不利于网络负载的均衡,因为它计算路由采用“最短路径优先”的原则;二是提供的链路状态信息有限,只包括路由器ID、接口的IP地址及链路权值等,不能满足更高的需求,所以限制了OSPF的更广泛应用。
3.OSPF路由协议的扩展
为了克服OSPF协议提供信息量不足的缺点、增加通告的信息类型与数量,为此RFC2370对其进行了扩展,主要是新定义了不透明链路状态通告(OLSA),利用OLSA可以提供LSA不能提供的更多信息。OLSA净负荷域的信息不仅可以直接用于OSPF,而且还可以用于其他应用,所以OLSA提供了一种扩展OSPF协议的通用机制。
OLSA也是由LSA的标准头部与净负荷组成。OLSA根据标准头部中的“链路类型值”,分成三种子类型OLSA,每种子类型OLSA表示不同的泛洪范围。
· 链路类型值为9的OLSA,在本地链路范围泛洪。
· 链路类型值为10的OLSA,在本地区域范围泛洪。
· 链路类型值为11的OLSA,泛洪范围等效于AS LSA即为整个AS域;不同的是,它的泛洪遍及除存根区之外的所有发送区。
4.OSPF-TE路由协议简介
OSPF-TE协议是对RFC2370扩展的OSPF协议又进行了扩展、支持流量工程的路由协议。OSPF-TE协议主要是为了适用于MPLS技术。
1)TE-LSA
OSPF-TE协议的扩展实质是扩展了链路属性,在通告中扩大了链路方面的参数。
OSPF-TE协议定义了一种新链路状态通告,即TE-LSA,这是一种链路类型值为10的OLSA,其泛洪范围是本地OSPF域。
TE-LSA在结构上也是由两部分组成,即标准的LSA头部与LSA净负荷。
(1)TE-LSA报头。
TE-LSA报头是标准的LSA头部格式,报头中的通告路由器ID格式如图3-26所示。
图3-26 TE-LSA的通告路由器ID格式
图中,类型值为1,保留字节为0,“实例”域用来区别多个TE-LSA,一个系统最多可形成224=16777216个TE-LSA。
(2)TE-LSA净负荷。
TE-LSA的净负荷提供具体的TE链路的信息,它以TLV格式出现,其格式如图3-27所示。
图3-27 TLV格式
图中,U比特:指示对未知TLV的操作。
U=1表示将可能丢弃收到的未知TLV,而消息的其他部分不受影响;
U=0表示将丢弃收到的整个消息,并向消息源反馈相关信息。
F比特:指示是否转发未知的TLV。
它仅适用于U=1的情况,F=1表示转发未知TLV,F=0表示不转发未知TLV。
类型T:表示TLV的类型,即如何解释“值”。
长度L:表示“值”域长度(字节数)。
值V:表示TLV的具体内容,它又可包括一个或多个TLV,或者是TLV的嵌套。
净负荷由一个或多个TLV组成,它必须而且仅仅包括一个顶级的TLV,共有两种顶级TLV即路由器地址TLV与链路TLV,而链路TLV则包括一组扩展的子TLV。
· 路由器地址TLV
路由器地址TLV为通告路由器提供了一个稳定的IP地址。这是一个只要有连接就能可达的地址。其类型值为T=1、长度为L=4、数值V=4字节的路由器IP地址。
· 链路TLV
链路TLV描述一条链路的属性。其类型值为T=2、长度L可变、数值域V包括多个TLV(子TLV)。有9种子TLV,即可以描述链路以下9个方面的属性。
链路类型:点对点链路或多点接入网络;
链路ID:用于标识链路的另一端,如点对点链路的远端路由器ID;
链路的本地接口IP地址(近端);
链路的远端接口IP地址;
TE矩阵:由管理者配置的TE链路交叉连接矩阵;
链路的最大可用带宽:它有可能大于链路的最大可使用带宽;
未保留带宽:在每8个优先级中未保留的带宽;
管理组:由管理者指定的TE链路等级,一般用“颜色”来标识。
利用这些子TLV可以构建多种TE-LSA,实现了对OSPF的有效扩展,使之不仅能传递传统OSPF所需要的路由信息,而且又能传递链路方面的参数,这些新增参数与原路由信息一起存入扩展的链路状态数据库——流量工程数据库TE-LSDB,为实施基于约束条件的路由算法提供根据。
此外,还对OSPF协议的相关部分进行了修改,使之能适用于新增的TE-LSA,如对LSA分发域的定义、收到LSA后的处理流程等。
2)OSPF-TE协议的路由计算
在进行路由计算与选择时,OSPF-TE协议不再使用单纯的最短路径优先算法SPF,而是采用基于约束条件的最短路径优先算法CSPF。因为SPF是基于最短路径优先、逐跳路由的计算方法,不适用于面向连接的MPLS技术,另外,也不利于流量工程功能的实现。
CSPF算法是根据给定的约束条件来计算显式路由ER。在给定约束条件时已经考虑了网络负载的均衡性、融合了一些管理策略等多方面因素,保证了流量工程的实施。
CSPF算法必须要使用流量工程数据库关于链路属性方面的参数。
5.GMPLS OSPF-TE路由协议简介
MPLS是仅支持分组交换的技术,而通用多协议标签交换技术(GMPLS)则不仅需要支持分组交换而且还要支持TDM交换、波长交换与光纤交换等,所以GMPLS又对OSPF-TE进行了扩展,称为GMPLS OSPF-TE协议。
扩展后的GMPLS OSPF-TE仍采用基于IP的地址模型来识别端口,但不仅要识别分组交换的PSC端口而且也要识别非PSC的端口。
对于每个特定的非PSC层,GMPLS OSPF-TE协议把它视为一组特定的AS系统,而每个AS系统内的路由计算与管理等都采用LSA与TE-LSA模式。
1)GMPLS TE逻辑链路
GMPLS TE逻辑链路与通常所讲的TE链路有所不同,它是一条逻辑链路。
GMPLS对传统的TE链路概念提出三个方面的挑战,一是链路可能不支持分组交换(如波长通道),所以OSPF路由邻接不能建立在这样的链路上;二是标签交换通道LSP可以作为一条点对点的TE链路来进行通告,因此通知链路的两端结点不一定是邻居关系;三是位于两个相同结点间具有相同属性的多条链路可能以一条链路的方式予以通告(链路捆绑),致使通告的链路与具体的物理链路并不存在一一对应关系。
GMPLS对传统的TE链路概念进行了修改,使用了具有更广泛意义的TE逻辑链路概念。TE逻辑链路一方面具有一般TE链路的性质,另一方面它代表了把物理资源(包括其性质)组合/映射成CSPF路由计算所需要信息的一种方法。这种组合/映射必须在链路的两端进行,可以使用链路管理协议LMP进行检查检验。例如在一对LSR之间有一条TE逻辑链路,这两个LSR并不是邻居关系,但该TE逻辑链路可以由TE-LSA进行通告。
在一般情况下,通过识别TE逻辑链路ID与标签的组合标识即<TE链路ID,标签值>,就可以准确地识别GMPLS中TE逻辑链路,当然还取决于形成TE逻辑链路的物理资源性质。
2)GMPLS扩展的主要内容
(1)支持无编号链路。
无编号链路是GMPLS OSPF-TE协议用于解决光纤、波长、时隙的识别问题。
所谓无编号链路是指不具备IP地址的链路,如光纤、波长、TDM时隙等都不可能有IP地址,所以应该采用除IP地址之外的替代方法进行识别。
对于无编号点到点链路,GMPLS OSPF-TE协议采用的方法是,位于链路两端的路由器LSR A与LSR B各为该链路指定一个32bit的标识符,该标识符在LSR各自管辖的范围是唯一的。对无编号链路的支持还包括要传送链路的标识符信息,即链路通告信息中包括近端与远端的标识符信息。
(2)指示链路保护类型LPT。
指示链路保护类型LPT代表对链路所承载信息的保护能力,所以指示出链路的保护类型对于基于约束条件的LSP计算非常有用。可以指示以下几种链路保护类型:
· 额外业务。该链路是为其他链路提供保护的,在正常情况下,该链路上的LSP可以承载额外业务(非重要业务)。当发生故障需要该链路为其他链路提供保护时,它承载的额外业务将丢失。
· 无保护。对该链路不提供任何保护。
· 共享保护。用承载额外业务的链路对其提供共享保护。
· 1+1保护。采用双发选收机制对该链路提供保护。专用并承载业务的保护链路信息不在LSDB中予以通告,即用于1+1的保护链路不能再用于路由的计算与选择。
· 1:1保护。用一条专用的、承载额外业务的链路对其提供保护。
· 加强型保护。提供比1+1保护的可靠性更高的保护。
(3)链路捆绑与共享风险链路组SRLG。
当两个结点之间存在多条链路时,如果为每条链路分配一个IP地址,这样不仅会浪费大量的IP地址资源,而且还会大大增加网络中发布的路由信息量。链路捆绑功能就是把两个结点之间具有相同属性的多条链路捆绑在一起作为一个链路组,这样不仅节省了资源,而且还可以大大减少网络中发布的路由信息量。SRLG功能就是把一组共享使用相同风险物理资源的多条链路作为一个SRLG。
(4)接口交换能力描述符。
在GMPLS协议中增加了接口交换能力描述符,通过它可以了解所连接设备接口的交换能力。接口交换能力描述符仅出现在链路近端的LSA中。
同一个设备的不同接口可以不具备相同的交换能力,而一条链路的两个端口也不一定要具有相同的交换能力。对于双向链路而言,它的两个接口允许具有不同的交换能力,所以路由器LSR需要利用LSDB来决定链路远端接口的交换能力。对于单向链路,它的两个接口必须具备相同交换能力,所以链路两端接口的交换能力描述符是相同的。
接口交换能力描述符可提供以下交换类型能力的描述(如果没有,默认为PSC-1)。
· 二层交换能力L2SC。接口可基于二层地址对数据帧进行交换(转发)。
·分组交换能力PSC。接口具有分组交换能力就是可以对收到的数据分组逐个进行交换。交换能力描述符包括的信息有:最大LSP带宽、最小LSP带宽与接口的最大发送单元MTU等。
PSC可以再分为四种:PSC-1、PSC-2、PSC-3、PSC-4。其中,PSC-1为对POS信号的交换,PSC-2为对FR信号的交换,PSC-3为对ATM信号的交换,PSC-4为基于MPLS的分组交换。
· TDM交换能力。接口可以对SDH的净负荷通道VC进行复用与解复用。描述符包括的信息有最大LSP带宽、最小LSP带宽等。
· 波长交换能力LSC。它可以对WDM的光波长进行识别与交换。
· 光纤(端口)交换能力FSC。某端口可以把其承载的所有内容都交换到与其他光纤相连接的端口上,且不改变原来的波长、复用通路等各方面的安排。
(5)带宽编码。
采用IEEE规定的浮点格式、用32bit对带宽进行编码,这将有助于识别LSP的带宽。如STM-1的带宽编码为0×4B9450C0,STM-4的带宽编码为0×4C9450C0,STM-16的带宽编码为0×4D9450C0,STM-64的带宽编码为0×4E9450C0等。
3)GMPLS OSPF-TE的路由计算
(1)路由计算方法。
GMPLS的路由计算通常也采用CSPF算法,并将计算结果表示成显式路由形式。
CSPF的路由计算,就是首先从网络拓扑结构中删去不符合约束条件的链路,然后运行最短路径优先算法,计算出显式路由ER。
(2)约束条件。
计算显式路由的约束条件可以分为两类,即链路级约束与路径级约束。
· 链路级约束条件。
链路级约束是指在计算路由时对网络中链路属性特征方面的约束,它们主要包括:
链路带宽。链路必须满足路由所需要的带宽。
链路保护类型。如1+1、1:1保护还是共享保护等,应该满足整个路由对保护的要求。
接口交换能力。如要求路由上的所有链路接口都具有相同的交换能力。
SRLG。由不相交的SRLG组成的两条路由可能满足保护与恢复机制要求。
链路资源类型,即所谓链路“颜色”,它表示链路资源的级别。
TE度量,即链路带宽开销值。
· 路径级约束条件。
上述链路级约束同样适用于路径级,此外还有一些特有的路径级约束条件。
跳数限制。整个路径的最大跳数。
松散显式路由。路径必须经过的一些中间链路或中间结点。
优先级。当资源有限时可根据它提供等级服务。
保护与恢复机制。整个路径的保护与恢复机制。
综上所述可知,GMPLS OSPF-TE是基于IP、技术比较成熟的路由协议,非常适用于ASON的同一控制域内的路由计算。其不足之处是域间只能交换可达性信息而不能实现跨控制域的路由计算,所以只能作为三级路由协议使用。
6.其他三级路由协议
除GMPLS OSPF-TE路由协议之外,还有几种路由协议可以作为三级路由协议使用。
1)GMPLS IS-IS-TE路由协议
中间系统到中间系统路由协议IS-IS也是一个链路状态路由协议。它根据最佳路径信息生成路由选择表,并通过一级、二级路由器分别实现对区域内、区域之间的路由计算。
MPLS对IS-IS协议进行了扩展,也是增加了流量工程TE功能。
GMPLS又对IS-IS协议进行了扩展,其扩展内容对GMPLS OSPF-TE的扩展相类似。
GMPLS IS-IS-TE协议也比较成熟,但同样不能实现跨控制域的路由计算。
两者的区别:GMPLS OSPF-TE只支持IP协议,而GMPLS IS-IS-TE是支持多协议的路由协议。但因为IP技术成熟、应用范围广,所以GMPLS OSPF-TE的应用更广泛。
2)专用网络接口协议PNNI
PNNI是基于ATM技术的协议,它由两部分组成,即路由部分与信令部分。它既可以用来选择路由,也可以当作信令协议使用,这是它的最大优点之一。
在路由选择方面它与OSPF很相似,即也是基于链路状态的选路机制,而且还支持QoS功能和为适用大型网络而引入的等级机制等。PNNI的缺点是基于ATM技术,难以作为通用协议。
3.8.5 域内路由协议DDRP
域间路由协议是支持同一运营商网络内部不同控制域之间的路由协议,即二级路由协议。
1.概述
域间路由协议DDRP是用于运营商光网络内部不同控制域之间的链路状态协议。它并不关注各控制域内路由协议的使用、运行情况,如控制域内的各区域之间、区域内各结点之间采用哪种路由机制、使用的是何种路由协议等。它关注的是如何汇总并搜集各控制域之间的路由信息,为跨越控制域的路由计算提供依据。这些信息包括各控制域的网络拓扑信息、资源状态信息、可达性信息等,通过代表各控制域的“扬声器”结点之间的数据报文交换,把这些信息搜集上来创建拓扑与资源状态数据库,利用可靠的“泛洪”机制及时、高效地更新数据库。该数据库就可以为跨控制域的路由计算提供依据。但DDRP协议并不规定具体的路由计算方法,它认为能把域间路由计算出来,采用哪种计算方法都可以。
DDRP协议是基于OSPF-TE协议的,一方面它直接采用了OSPF-TE协议大部分的基本机制,如分组格式与处理规则、LSA及管理、邻接机制、泛洪机制、CSPF路由算法等;另一方面又对OSPF-TE协议进行了扩展,如控制域之间互连信息的传送、控制域间的链路带宽管理、用于路由计算的拓扑与资源状态数据库等。
2.DDRP路由协议简介
1)DDRP域
与OSPF协议相类似,DDRP协议也把网络分成多个域,即DDRP域。
与OSPF协议不同的是,DDRP协议是按照G.805的概念来划分域的,即以链路(物理光纤)而不是网络元件作为域的边界。它用32bit来表示每个域的ID,域ID在整个网络中是唯一的,每个DDRP域都可以运行各自的路由协议与信令协议。
(1)边界结点。
每个DDRP域都有一个或几个结点利用外部链路和相邻DDRP域相连接,称其为边界结点。
边界结点既可以是物理结点也可以是逻辑结点,它们都有自己的ID与IP地址。当路由通过DDRP域时,边界结点作为该域的出口或入口结点。
不同的DDRP域边界结点之间通过外部链路相互连接,它们使用LMP协议进行通信。LMP协议具有控制通路管理、链路特性关联、链路连通性检验、链路故障管理等功能。
此外,边界结点还执行相邻控制域的发现、维护邻接关系、传送链路的状态信息等功能。
(2)TE链路。
TE链路连接着DDRP域的两个结点,被连接的两个结点可以位于同一个DDRP域之中,也可以位于不同的DDRP域之中,所以有三种TE链路:
· 域内TE链路连接同一个控制域的两个结点;
· 域内边界TE链路连接同一个控制域的两个边界结点;
· 域间边界TE链路连接不同控制域的两个边界结点。
TE链路主要提供控制域内的路由信息,如链路的交换能力、保护能力、最大带宽等,它们将被汇总并以LSA形式予以通告。
(3)“扬声器”结点。
每个DDRP域一般有一个代表本域的被称之为“扬声器”的逻辑结点,它也有独立的ID与IP地址。“扬声器”结点的产生既可以利用网管系统进行配置,也可以通过运行域内路由协议动态地产生,如同在OSPF协议中产生指定路由器,或在PNNI协议中产生对等组首领PGL那样。
“扬声器”结点的重要作用是汇总代表域的域内拓扑信息和域边界资源信息。汇总的形式是多条TE链路的集合,它包括域内的TE链路和域间TE链路,域间TE链路的信息是从边界结点收集的。
“扬声器”结点代表本域参加DDRP动作,如负责LSA方式通告它所代表的域汇总路由信息,和其他域通信并收集其他域的汇总路由信息等。
“扬声器”结点之间用逻辑控制链路相连接,逻辑控制链路只存在于控制平面中。
(4)逻辑控制链路。
连接两个相邻“扬声器”结点的逻辑控制链路,它的编号链路,两端“扬声器”结点的IP地址就是它的接口IP地址。
逻辑控制链路与OSPF协议中的虚拟链路相类似,不同的是它的两端是逻辑结点,而OSPF协议中的虚拟链路两端是物理结点。
2)数据报文
DDRP使用的数据报文种类、格式以及对数据报文的处理方法等和OSPF协议完全相同。
3)链路状态公告LSA
DDRP使用的LSA格式与OSPF协议相同,但LSA的种类有所改变。
DDRP主要使用路由器LSA和OLSA。
· 路由器LSA的信息可用于域内路由的计算与选择,它通告“扬声器”结点及其ID、连接“扬声器”结点的逻辑控制链路及其ID等。
· OLSA的信息可用于域间路由的计算,它通告一些汇总路由信息,如“扬声器”结点的IP地址,控制域ID及TNA地址,以及TE链路的信息,如链路类型、链路ID、链路两端接口的IP地址、链路带宽、优先级、链路保护类型与SRLG等。
上述信息都以TLV格式表示。
4)拓扑与资源状态数据库
DDRP是支持不同控制域之间的路由协议,而跨控制域的路由计算需要足够的信息,如各控制域的特性、各控制域的连接关系等。为此DDRP创建了拥有这方面信息的拓扑与资源状态数据库,以用于域间的路由计算或其他网络操作。
拓扑与资源状态数据库包括如下方面的路由信息:
(1)“扬声器”结点信息。
因为每个控制域至少有一个“扬声器”结点,它是代表该控制域参加DDRP动作的逻辑实体。它汇总了所代表控制域的信息,如交换能力、保护能力、全部带宽容量、SRLG、点到多点的连接、对穿通连接的支持等。
(2)可达性信息。
即在控制域内可到达的地址信息,这对于确定路由的端点在哪个控制域非常有用。可达性信息包括:“扬声器”结点的IP地址、边界结点的IP地址、编号TE链路的IP地址、用户的传送网分配地址TNA等。
(3)逻辑控制链路信息。
逻辑控制链路连接的是两个相邻的“扬声器”结点。它的信息是不同控制域之间相互连接、对话的信息,并不是域内结点之间的连接信息。
(4)边界结点信息。
边界结点是域内拓扑的一部分,位于控制域的边界。它的信息就是本控制域的边界信息,所在的控制域ID、本边界结点的ID与IP地址等,这些信息将被汇总并以LSA形式予以通告。
(5)TE链路信息。
TE链路信息包括多种连接信息,如两个相邻域边界结点的连接信息,域内两个边界结点的连接信息、域内结点的连接信息等。连接信息包括链路的交换能力、保护能力、最大带宽、可提供带宽、优先级、SRLG等。DDRP将LSA方式通告这些信息。
5)邻居发现与邻接关系
DDRP的邻居发现与邻接机制和OSPF协议相同。“扬声器”结点之间也是通过周期性地发送“Hello”数据包来发现邻居并建立邻接关系,但它只支持点到点的邻接类型。建立了邻接关系的“扬声器”结点,通过相互交换各种类型的数据报文来交换信息。
6)“泛洪”机制
同OSPF一样,DDRP也是利用“链路状态响应”报文与“链路状态确认”报文,通过逐步的扩散操作来实现“泛洪”。利用“泛洪”把变化的LSA或新的LSA在整个网络中进行传播,确保拓扑与资源状态数据库的及时更新,最终实现数据库的同步。
7)路由计算
DDRP并不规定具体的路由算法。在域内可以采用SPF算法产生最短路径树SPT,计算将信赖于路由器LSA与OLSA提供的信息(称为本地路由信息)。跨越控制域的路由计算可以采用带约束条件的最短路径优先路由算法CSPF。通常采用显式路由方式,所需要的信息从DDRP拓扑与资源状态数据库获取。
8)DDRP与其他路由协议的关系
通过以上讨论可以看出,DDRP协议与OSPF-TE协议有着密切关系,它直接采用了OSPF-TE的大部分基本机制,但又进行了扩展,使之能实现跨控制域的路由计算。
DDRP与PNNI协议有一些类似之处,如网络的层次分割、链路聚合(捆绑)等,但在机制上完全不同,没有什么直接关系。
3.8.6 运营商网络间路由协议
一级路由协议是支持不同运营商网络之间的路由协议,由于不同运营商采用的技术可能不一样,所以一级路由协议应该具有协议转换功能。但运营商网络之间的路由协议尚未提到日程上来。
边界网关协议BGP原是数据通信中一种用于自治域AS之间的动态路由协议。BGP运行时分别与自治域内、外的BGP伙伴建立连接,与自治域内伙伴的连接称为IBGP连接,与自治域外伙伴的连接称为EBGP连接。
BGP除了路由发现与路由计算、选择功能之外,还具有以下特点:
(1)协议转换功能。
(2)丰富的路由策略。
如路由聚合(把相近的路由合并,减少路由数量)、路由过滤(内、外部路由都过滤)、多出口处理(最终选择最佳出口)、路由信息含有自治域的路径信息等。
(3)发送路由增量消息。
由于只发送路由增量消息,所以可以减少路由信息量与所占带宽。
(4)面向连接的协议。
它把TCP当作传输协议,保证了传输路由消息的可靠性。
(5)保密性与安全性。
BGP规定不向外部邻居通告内部路由信息,所以保证了不同控制平面间的保密性与安全性。
总之,对EBGP协议进行扩展后,可以作为一级路由协议。