大型网络中内部网关路由协议的选择
添加时间: 2008-2-23 15:51:24 作者: Cisco指导 阅读次数:71 来源: http://www.d9soft.com
即使在纯ip网络的环境中,也需要clns数据,例如,is-is的邻居关系就是建立在osi上,而不是ip上的。 所以clns邻居关系的两端实际上可以拥有不同子网的ip地址,对于is-is的操作并没有任何影响(只不过ip 下一跳解析可能是个问题)。
和ospf相比,is-is还有一些有用的特性,即如果它的内存不足或者不能继续记录完全的链路状态数据库,它会发出信号通知别的路由器,,告诉它们自己可能无法做出正确的路由决定,因为链路状态数据库还没有完成。这种内存超载的情况也许是因为区域过大的结果。
is-is的缺点:
1. 即使在为纯ip路由的环境中,仍然需要配置clns参数(每个is-is路由器需要有iso地址,spf算法需要使用所配置的net地址来标识路由器),路由器仍然需要建立clns邻居关系(即需要使用osi协议才能在路由器之间建立邻居关系)并使用clns数据包。
2. isis使用一个仅仅有6比特的度量值,严重限制了能与它进行转换的信息;而且链接状态也只有8 比特长,路由器能通告的记录只有256个。但现在的wide-metric使这个范围变成24位的扩展解决了这个问题。
3. 一个非技术问题是isis受osi约束,使得以前与ospf相比它的发展比较缓慢。但现在的isis在非osi即ietf rfc方面(集成化的isis)有了很多的扩展使得他的发展比ospf更容易实现对新的要求的支持如ipv6或者流量工程而且更简单易实现。
is-is路由协议在网通骨干网络上的应用
作为骨干网络的内部网关路由协议,is-is并不是为了承载外部路由,而是为了在骨干网内部进行路径选择、负载均衡等等。
骨干网内部所有路由器都配置成l2,也就是说整个骨干网形成唯一的一个骨干区域,并不设置其他区域。这是通过全局配置命令”is-type level-2-only”指明本路由器只作为骨干区域中内部路由器(l2),和端口配置命令: ”isis circuit-type level-2-only” 指明了近建立l2邻居关系,不建立l1邻居关系。
能否正确高效地实现数据流控制策略在骨干网上非常重要。在网通骨干网络中是通过对is-is的链路开销进行手动配置(在端口配置状态下使用命令” isis metric 开销值 level-2”)实现的控制数据流,使得网络上不同类型的流量按照流量分担的原则和地理位置等因素更有效的在网络上传送。 加上一些新的技术的应用(例如: 部分路由计算prc、最短路径树incremental spf等等) 使得is-is整个网络在一两秒钟内就可以完成收敛。
骨干网对于is-is的收敛速度也提出了很高的要求,实际应用中,可以通过调整各种计数器达到加快网络收敛速度的目的。但是收敛时间和网络稳定两个方面又有一个取舍关系,不能一味地追求快速收敛,因为当各种计数器值很小时,网络稳定性肯定受到影响,况且消耗的网络带宽会加大。所以应该根据网络实际情况进行调整。
因为骨干网络上路由设备非常多,由都位于同一个区域中,这就对is-is路由协议提出了严峻的考验,经过长时间的试验及网络实际运行,可以看出网络还是非常稳定高效的,is-is路由协议是非常适用于在大型网络上应用的。
总之,作为新的业务增长点,下一步网通网络中必然会部署mpls vpn,然而mpls中,标记交换路由器(lsr—label switching router)的路由表需要由内部网关路由协议来计算,则如果要部署mpls流量工程,必须使用链路状态路由协议,例如ospf或is-is。 因此,研究这两个路由协议非常有利于下一步顺利地开展业务。
大型网络对于由协议的要求非常高,在选择内部网关路由协议时,需要考虑的因素包括,网络收敛速度是否足够快, 网络是否稳定等等诸多方面的因素。
经过以上对各个内部网关路由协议的分析和比较, 其实并不能够简单地说哪个路由协议比哪个路由协议好,因为在实际网络环境中,情况不同,路由协议运行的效率也是不同的,网络收敛快慢不仅取决于网络的大小(包括链路数目、节点数目、路由数目),还取决于内部网关路由协议的选择和配置。而且网络结构规划设计及配置对路由协议运行的效率影响也是非常大的,所以深入理解各个路由协议的 原理 ,操作及它们之间的区别是非常有用的。
注意,is-is并不是必须使用ospf中区域0作为 网络 骨干区域,可以使用一链level 2路由器将一系列不同的区域连接起来。这样就使is-is比ospf有更好的可扩展性(scalable)。 is-is可以使用更灵活的方法来扩展骨干,只需加入更多的level-2 路由器就可以,这比ospf就要简单多了.
为了更好地理解is-is的分级体系结构拓扑,可以参考下图:
图二
注意,虽然在解释is-is中中间系统分类时是和ospf中路由器类型比较的,但是因为is-is和ospf划分区域的边界就不同,所以他们的术语含义也是稍稍不同的。
默认时, cisco ios将在is-is路由器上同时开启level 1和level 2。
对于只运行在骨干区域中的路由器,只需要使用命令”is-type level-2-only”
同ospf一样,is-is也是用hello协议发现并维持邻居关系,因为is-is使用两个级别的体系结构,所以l1路由器仅仅和l1路由器及l1/l2路由器形成邻居关系, l2路由器仅仅和l2及l1/l2路由器形成邻居关系, 而l1/l2路由器和l1及l2路由器都形成邻居关系。 并且两个级别的链路状态信息是分开存在的(和ospf一样,也是建立链路状态数据库),分别使用level 1链路状态数据包和level 2链路状态数据包进行维护。
这样,l1/l2路由器工作起来就像是两个路由器分别运行着level 1路由进程和level 2路由进程。 l1/l2路由器就会维护两个链路状态数据库,而与ospf中的区域边界路由器不同的是,l1/l2路由器不通告l2的路由给l1,因此所有的l1路由器永远不会知道区域外的路由,这种情况和ospf的totally stubby area是非常像的,如果l1内的路由目的地是在自已的区域以外,这个l1路由将被转发到一个l1/l2路由器上。 当区域之内的拓扑数据库同步后,spf算法(或decnet phasev 路由算法)就根据拓扑数据库计算最短路径树(对于l1/l2路由器需要计算两次,对于每个级别计算一次,并且每个级别有单独的最短路径树)。 原则是: 到达目的地的最短路径是各个路径中开销最小的。 计算出来的最佳路径放在clns路由表(osi l1和l2转发表)中。
is-is计算某条路径的开销时
必须使用的参数是: default: cisco路由器仅支持这种开销
可选的的参数还有 delay、 expense、 error(类似于igrp中的reliability) 但是这些参数都不被cisco路由器所支持.
注意,is-is并不考虑链路速率或带宽作为其链路开销。
骨干网上通过手动指定链路的开销实现了对骨干网络的流量分层。是通过在端口状态下使用 “isis metric 开销值 level-1 |level-2” 可以在同一个端口上对于不同级别有不同的开销值。
在网通集团骨干网络和中国电信chinanet骨干网络中,就是通过手动设置链路的开销值,从而将骨干网络在逻辑上分成两个层次,每个层次完成不同的功能,很好地控制了数据流向。
is-is仅支持两种类型的物理链路:
· broadcast for lans: 是带有广播特性的多路访问(multiaccess)的介质类型
· point-to-point for all other topologies:
注意,并不像ospf那样,is-is中没有nbma(non-broadcast multiaccess)网络的概念。建议是在nbma网络上使用point-to-point类型的链路。(nbma是指例如frame relay, x.25或native atm—不是atm lane)
这样is-is支持的网络类型就比ospf要少,使得is-is没有那么灵活,但是配置上要容易得多。
就像ospf广播类型的网络中需要使用指定路由器(dr—designated router)一样,is-is中也需要选择一个虚拟路由器(pseudonode)– dis(designated intermediate system). 网络中的所有其他路由器并不是仅仅和dis建立邻居关系,还和所有其他路由器建立邻居关系,
大型网络中内部网关路由协议的选择(2) 第 [1] [2] 下一页
上一篇文章: 思科高级检测和防御安全服务模块 下一篇文章: 路由器能支持的接口种类
相关文章:

