科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道大型网络中内部网关路由协议的选择之二

大型网络中内部网关路由协议的选择之二

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

不像是OSPF中那样,IS-IS在网络层使用NSAP(Network Service Access Point)地址标识路由器,建立拓扑数据库,计算最短路径树.

作者:中国IT实验室 2008年4月14日

关键字: 路由协议 EIGRP igrp SNMP CISCO 网络协议

  • 评论
  • 分享微博
  • 分享邮件

  OSPF在这些类型的网络上操作大都不同,例如在广播多路访问的介质中,为了减少每对路由器之间都需要建立邻居关系而带来的路由器资源和带宽资源的耗费,需要选定 指定路由器(DR—Designated Router)和备份的指定路由器(BDR—Backup Designated Router),其他的所有路由器只需要和这些DR和BDR建立邻居关系就可以了(注意,这一点和IS-IS中是不同的,注意下文),从而大大减少了需要建立的邻居关系。

  因为OSPF属于无类别路由协议,所以支持VLSM和CIDR,并且能够进行路由汇总,但是有一定的局限性,就是路由汇总(可以是自动汇总也可以是手动汇总)只能够在区域的边界路由器(ABR—Area Border Router)上和自治系统的边界路由器(Autonomous System Boundary Router)上进行,并不能像EIGRP那样在网络任何地方进行路由汇总。 这样就引出了OSPF的另一个缺点,就是对于网络初始设计时的要求非常高,网络必须是结构化良好的, IP地址规划非常良好才能够正确地在区域边界或自治系统边界进行汇总。所以OSPF相对于其他路由协议而言要更难设计和配置。

  因为所有的区域都必须和骨干区域相连,所以必然存在一定的设计限制,但使用这种体系结构时,必须有一个良好的并且一致的IP地址结构以能够在进入骨干区域时进行汇总,从而减少区域中链路状态变化给其他区域和骨干区域带来波动。

  OSPF还支持对路由更新的认证,通过使用MD5算法,只有经过认证的路由器之间才能共享路由信息,提高了网络的安全性。出于安全性的考虑,建议在大型网络中使用这个特性。

  IS-IS ----Intermediate System-to-Intermediate System

  在网通骨干网和中国电信ChinaNet骨干网中使用的内部网关路由协议就是IS-IS,是用于在骨干网内部起连通骨干、选径、负载均衡和自动迂回的作用,并不承载外部路由,但是通过对BGP路由协议中路由的下一跳属性的选径来控制外部进入骨干网络的数据流。同样我们要对该路由协议进行细致的研究和分析。

  IS-IS是在ISO 10589中定义的,仅支持对CLNP(ConnectionLess Network Protocol, CLNP是OSI网络层协议,用于在无连接的链路上携带上层数据)路由

  集成化的IS-IS是扩展版本的IS-IS协议,用于ISO CLNS和IP混合的环境中。 既可用于单纯为IP路由,又可用于单纯为ISO CLNP路由,还可用于为两者混合路由。 在链路状态数据包LSP(Link State Packet)中使用TLV参数携带信息。 是TLV(Type Length Value)使的IS-IS可以扩展,使的IS-IS可以在LSP中携带不同类型的信息。

  在IETF RFC 1195中定义的集成化IS-IS, 因为IS-IS属于无类路由协议,所以具有现代路由协议的所有特性,包括:

  · 可变长子网掩码VLSM—Variable-Length Subnet Mask

  · 路由重分布

  · 路由汇总

  正是这些原因致使集成化的IS-IS成为了IP网络中除了OSPF路由协议外的另一个可选项。 所以现在提到IS-IS基本上都是指集成化的IS-IS。

  在OSI的术语中,路由器被称为IS(Intermediate System),a Workstation(或任何非路由网络节点)被称为ES(End System)

  注意,记住这些术语很重要,有很多资料中就直接使用他们了,我们在后面也是这样使用的。

  OSI协议族中指定了两个网络层的路由协议:

  ·ES-IS(End System-to-Intermediate System)发现协议: 是当终端系统向需要发送数据时用于定位网关路由器(IS)的协议。 也就是说是用于ES和IS之间的协议,并不属于路由协议非常类似于IP中的ARP协议(Address Resolution Protocol)

  ·IS-IS(Intermediate System-to-Intermediate System)路由协议: 是用于中间系统到中间系统间的路由协议。

  和OSPF一样,IS-IS也是使用组播发布路由更新,并且也是只有当链路状态有变化时才会发路由更新,而不是定时地发送。

  OSPF和IS-IS的收敛速度上是相近的,因为他们使用类似的算法。在使用默认的计时器的情况下(况且IS-IS中有更多的计时器可以调整,通过调整这些计时器也可以明显地减少收敛时间,但是这是在降低稳定性的前提下得到的),IS-IS能比OSPF更快地检测到故障,所以收敛要更迅速一些。 当然,如果有很多邻居,收敛时间仍然要看路由器的处理能力。 在CPU的利用方面和路由更新的处理方面,IS-IS更有效些。不仅需要处理的链路状态数据包要少一些,而且IS-IS安装和收回网络路由的机制要占用更少的资源。

  不像是OSPF中那样,IS-IS在网络层使用NSAP(Network Service Access Point)地址标识路由器,建立拓扑数据库,计算最短路径树。

  为了简化设计和操作,OSI将路由区分成三种:

  · Level-1路由:在同一个区域中的中间系统(路由器)间通信

  · Level-2路由:在区域之间进行路由

  · Level-3路由:在不同Domain之间进行路由(在纯IP环境中,用于此目的的路由协议通常是BGP)

  区域的设计:

  IS-IS中使用到Domain术语,和自治域(Autonomous System)的概念是相同的,同OSPF一样,Domain是个双层分级结构拓扑,由两级体系结构组成的,被划分成多个区域

  在OSPF中:网络中必须有一个骨干区域,其他的所有区域都必须和骨干区域相连

  --区域的边界是在路由器中(ABR),即区域边界路由器的不同端口可以属于不同的区域。

  --每条链路肯定是只属于一个区域

  而对于IS-IS:

  --区域的边界是位于链路上的,也就是说每个中间系统(IS)只能够属于一个区域。

  所以中间系统(IS)可以分成三种类型:

  · 区域内部路由器:OSPF叫内部路由器(Internal Router),ISIS叫L1(Level 1)

  · 执行区域间的路由(主要是骨干区域和其他非骨干区域之间): 而在OSPF中成为区域边界路由器(ABR),在ISIS中叫做L1/L2

  · 还有一类是骨干区域中的路由: 在OSPF中叫做骨干路由器(Backbone Router), 在IS-IS中叫做L2(Level-2)

  所以Level 1区域(非骨干区域)是由L1和L1/L2路由器组成的。Level 2区域(骨干区域)是由L2和L1/L2路由器组成的。

  注意,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建立邻居关系,还和所有其他路由器建立邻居关系,

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章