8.2.4 IS-IS 路由协议
在 ISO 规范中,一个路由器就是一个 IS( Intermediate System,中间系统),提供 IS 和 IS
(路由器和路由器)之间通信的协议就是路由协议,即 IS-IS 路由协议。 IS-IS 是一种链路状态
协议,使用最短路径优先( Shortest Path First, SPF)算法,与 OSPF 协议有很多相似之处。
IS-IS 属于内部网关协议,用于自治系统内部。
1. IS-IS 路由协议相关概念
IS-IS 路由协议术语
IS( Intermediate System),中间系统。相当于 TCP/IP 中的路由器,是 IS-IS 协议中生
成路由和传播路由信息的基本单元。在下文中 IS 和路由器具有相同的含义。
ES( End System),终端系统。相当于 TCP/IP 中的主机系统。 ES 不参与 IS-IS 路由协
议的处理, ISO 由专门的 ES-IS 协议定义终端系统与中间系统间的通信。
RD( Routing Domain),路由域。在一个路由域中一群 IS 通过相同的路由协议来交换路由信息。
Area,区域,路由域的划分单元。
LSDB( Link State DataBase),链路状态数据库。所有的网络内连接状态组成了链路
状态数据库,在每一个 IS 中都至少有一个 LSDB。 IS 使用 SPF 算法,利用 LSDB 来
生成自己的路由。
LSPDU( Link State Protocol Data Unit),链路状态协议数据单元。在 IS-IS 中,每一
个 IS 都会生成一个 LSP,此 LSP 包含了本 IS 的所有链路状态信息。每个 IS 收集本
区域内所有的 LSP 生成自己的 LSDB。
NPDU( Network Protocol Data Unit),网络协议数据单元。是 ISO 中的网络层协议报
文,相当于 TCP/IP 中的 IP 报文。 DIS( Designated IS),广播网上的指定中间系统。
NSAP( Network Service Access Point),网络服务接入点,即 ISO 中网络层的地址。
用来标识一个抽象的网络层访问服务点,描述 ISO 模型的网络地址结构。
IS-IS 路由协议适用的链路类型
IS-IS 可以运行在点到点链路( Point to Point Links),如 PPP、 HDLC 等,也可以运行在
广播链路( Broadcast Links) ,如 Ethernet、 Token-Ring 等,对于 NBMA( Non-Broadcast
Multi-Access)网络,需对其配置子接口,并将子接口类型配置为 P2P 或广播网络。 IS-IS 不
能在点到多点链路( Point to Multi Point Links)上运行。
2. IS-IS 路由协议结构
为了支持大规模的路由网络, IS-IS 在路由域内采用两级的分层结构。一个大的路由域被
分成一个或多个区域( Areas)。区域内的路由通过 Level-1 路由器管理,区域间的路由通过
Level-2 路由器管理。
Level-1 路由器
Level-1 路由器负责区域内的路由,它与同一区域的 Level-1 路由器或 Level-1-2 路由器形
成邻居关系,维护一个 Level-1 的 LSDB,该 LSDB 包含本区域的路由信息,到区域外的报文
转发给最近的 Level-2 路由器。
只与本区域的路由器形成邻居。
只参与本区域内的路由,只保留本区域的数据库信息。
通过与自己相连的 L1/2 路由器的 ATT bit 寻找与自己最近的 L1/2 路由器。
通过发布指向离自己最近的 L1/2 路由器的缺省路由,访问其他区域。
Level-2 路由器
Level-2 路由器负责区域间的路由,可以与其他区域的 Level-2 路由器或 Level-1-2 路由器
形成邻居关系,维护一个 Level-2 的 LSDB,该 LSDB 包含区域间的路由信息。所有 Level-2
路由器组成路由域的骨干网,负责在不同区域间通信,路由域中的 Level-2 路由器必须是连续
的,以保证骨干网的连续性。
可以与其他区域的 L2 路由器形成邻居。
参与骨干区的路由。
保存整个骨干区的路由信息。
L1/2 路由器同时可以参与 L1 路由。
Level-1-2 路由器
同时属于 Level-1 和 Level-2 的路由器称为 Level-1-2路由器,每个区域至少有一个Level-1-2
路由器,以将区域连在骨干网上。它维护两个 LSDB, Level-1 的 LSDB 用于区域内路由, Level-2
的 LSDB 用于区域间路由。
可以和本区域的任何级别路由器形成邻居关系;可以和其他域相邻的 L2 或 L1/2 路由
器形成邻居关系。
可能有两个级别的链路状态数据库。
L1 用来作为区域内路由, L2 用来作为区域间路由。
完成它所在的区域和骨干之间的路由信息的交换,将 L1 LSDB 中的路由信息转换到
L2 LSDB 中,以在骨干中传播,既承担 L1 的职责,也承担 L2 的职责。
通常位于区域边界上。
3. IS-IS 路由协议的特点
IS-IS 路由协议具有以下特点:
IS-IS 是 ISO 定义的 OSI 协议栈中无连接网络服务( Connectionless Network Service,
CLNS)的一部分。
IS-IS 直接运行于链路层之上。
IS-IS 是链路状态路由协议,维护一个链路状态数据库,并使用 SPF 算法来计算最
佳路径。
用 Hello 包建立和维护邻居关系。
支持灵活的 TLV( type-length-value)编址方式,协议扩展性好。
使用区域来构造两级层次化的拓扑结构。
在区域之间可以使用路由汇总来减少路由器的负担。
支持 VLSM 和 CIDR。
在广播多路访问网络通过选举指定 IS( DIS)来管理和控制网络上的泛洪扩散。
具有认证功能。
IS-IS 采用 Cost 作为度量值。
路由收敛速度快,结构清晰。
适合大型网络。
8.2.5 BGP 路由协议
BGP( Border Gateway Protocol,边界网关协议)是一种自治系统间的动态路由发现协议,
是为 TCP/IP 设计的外部网关协议,用于多个自治域之间。它既不是基于纯粹的链路状态算法,
也不是基于纯粹的距离向量算法。它的主要功能是与其他自治域的 BGP 交换网络可达信息。
各个自治域可以运行不同的内部网关协议。 BGP 更新信息包括网络号/自治域路径的成对信息。
自治域路径包括到达某个特定网络须经过的自治域串,这些更新信息通过 TCP 传送出去,以
保证传输的可靠性。
1. BGP 协议的特点
BGP 是唯一一个用来处理超大规模互联网络的网络协议,也是唯一能够妥善处理好不相
关路由域间的多路连接的协议。当前使用的版本是 BGPv4(请参阅 RFC1771)。 BGPv4 适用
于分布式结构,并支持无类域间路由 CIDR,正迅速成为事实上的 Internet 外部路由协议标
准, BGP 协议经常用于 ISP 之间。利用 BGP 还可以实施用户配置的策略。
BGP 具有以下主要特点:
BGP 是一种外部网关协议( Exterior Gateway Protocol, EGP),与 OSPF、 RIP 等
内部网关协议( Interior Gateway Protocol, IGP)不同,其着眼点不在于发现和计
算路由,而在于控制路由的传播和选择最佳路由。
用属性( Attribute)而不是用度量值来描述路径。
BGP 使用 TCP 作为传输层协议(端口号 179),继承了 TCP 的可靠性和面向连接
的特性,并且可以通过 Keepalive 信息检验 TCP 的连接。
BGP 支持 CIDR 和 VLSM。
路由更新时, BGP 只发送更新的路由,大大减少了 BGP 传播路由所占用的带宽,
适用于在 Internet 上传播大量的路由信息。
拥有自己的 BGP 表, BGP 路由通过携带 AS 路径信息彻底解决路由环路问题。
BGP 提供了丰富的属性特征和路由策略,能够对路由实现灵活的过滤和选择。
BGP 易于扩展,不仅适合在大型网络中使用,而且能够适应网络新的发展。
发送 BGP 消息的路由器称为 BGP 发言者( BGP Speaker),它接收或产生新的路由信
息,并发布( Advertise)给其他 BGP 发言者。当 BGP 发言者收到来自其他自治系统的新
路由时,如果该路由比当前已知路由更优、或者当前还没有该路由,它就把这条路由发布
给自治系统内所有其他 BGP 发言者。
相互交换消息的 BGP 发言者之间互称对等体( Peer),若干相关的对等体可以构成对
等体组( Peer group)。
尽管 BGP 协议是为自治系统间的路由选择而设计,但它也可以用于自治系统内部,是一
类双重路由选择协议。两个可以在自治系统之间进行通信的 BGP 相邻结点必须存在于同一个
物理链路上。位于同一个自治系统内的 BGP 路由器可以互相通信,以确保它们对整个自治系
统的所有信息都相同,而且通过信息交换后,它们将决定自治系统内哪个 BGP 路由器作为连
接点来负责接收来自自治系统外部的信息。
BGP 在路由器上以下列两种方式运行:
IBGP( Internal BGP):当 BGP 运行于同一自治系统内部时,被称为 IBGP。
EBGP( External BGP):当 BGP 运行于不同自治系统之间时,称为 EBGP。
2. BGP 路由选择规则
BGP 选择路由的策略
在目前的实现中, BGP 选择路由时采取如下策略:
首先丢弃下一跳( NEXT_HOP)不可达的路由;
优选 Preferred-value 值最大的路由;
优选本地优先级( LOCAL_PREF)最高的路由;
优选聚合路由;
优选 AS 路径( AS_PATH)最短的路由;
依次选择 ORIGIN 类型为 IGP、 EGP、 Incomplete 的路由;
优选 MED 值最低的路由;
依次选择从 EBGP、联盟、 IBGP 学来的路由;
优选下一跳 Cost 值最低的路由;
优选 CLUSTER_LIST 长度最短的路由;
优选 ORIGINATOR_ID 最小的路由;
优选 Router ID 最小的路由器发布的路由;
优选地址最小的对等体发布的路由。
BGP 负载分担的路由选择
在 BGP 中,由于协议本身的特殊性,它产生的路由的下一跳地址可能不是当前路由器直接相连的邻居。常见的一个原因是 IBGP 之间发布路由信息时不改变下一跳。这种情况下,为了能够将报文正确转发出去,路由器必须先找到一个直接可达的地址(查找 IGP 建立的路由表项),通过这个地址到达路由表中指示的下一跳。在上述过程中,去往直接可达地址的路由被称为依赖路由, BGP 路由依赖于这些路由指导报文转发。根据下一跳地址找到依赖路由的过程就是路由迭代( recursion)。
目前系统支持基于迭代的 BGP 负载分担,即如果依赖路由本身是负载分担的(假设有三个下一跳地址),则 BGP 也会生成相同数量的下一跳地址来指导报文转发。需要说明的是,基于迭代的 BGP 负载分担在系统上始终启用。
在实现方法上, BGP 的负载分担与 IGP 的负载分担有所不同:
IGP 是通过协议定义的路由算法,对到达同一目的地址的不同路由,根据计算结果,将度量值( metric)相等的(如 RIP、 OSPF)路由进行负载分担,选择的标准很明确(按 metric)。
BGP 本身并没有路由计算的算法,它只是一个选路的路由协议,因此,不能根据
一个明确的度量值决定是否对路由进行负载分担,但 BGP 有丰富的选路规则,可以在对路由进行一定的选择后,有条件地进行负载分担,也就是将负载分担加入到 BGP 的选路规则中去。
BGP 发布路由的策略
在目前的实现中, BGP 发布路由时采用如下策略:
存在多条有效路由时, BGP 发言者只将最优路由发布给对等体;
BGP 发言者只把自己使用的路由发布给对等体;
BGP 发言者从 EBGP 获得的路由会向它所有 BGP 对等体发布(包括 EBGP 对等
体和 IBGP 对等体);
BGP 发言者从 IBGP 获得的路由不向它的 IBGP 对等体发布;
BGP 发言者从 IBGP 获得的路由发布给它的 EBGP 对等体(关闭 BGP 与 IGP 同步的情况下, IBGP 路由被直接发布;开启 BGP 与 IGP 同步的情况下,该 IBGP 路由只有在 IGP 也发布了这条路由时才会被同步并发布给 EBGP 对等体);
连接一旦建立, BGP 发言者将把自己所有的 BGP 路由发布给新对等体。
第 9 章 路由器的选择与适用
路由器是构成 IP 网络的核心,其最基本的作用就是连接不同类型的网络,智能选择最佳的信息传送线路。除此以外,路由器还具有访问控制功能。路由器也可以算作是一台专用计算机,而它的价格之所以昂贵,就在于其功能强大的软件——IOS( Internet Operation System,因特网操作系统),可以听懂并翻译各种网络协议,就像一个会讲各种语言的人一样。
9.1 路由器的分类
路由器的主要功能和一般应用虽然没有明显区别,但是为了满足各种应用需求,也出现过各式各样的路由器,无论是在价格还是在产品性能方面都存在着很大的差异。路由器的分类标准也不是唯一的,根据不同的标准,可以对路由器作不同的分类。
9.1.1 按性能划分
从路由性能上,路由器可分高端、中端、低端和 SOHO 路由器。
SOHO 路由器主要适用于 SOHO 网络的 Internet 接入,通常采用固定配置路由器。 Cisco 800/500 系列路由器(如图 9-1 所示)即属于 SOHO 路由器,集成了因特网接入、安全和无线服务。

低端路由器主要适用于中小型网络的 Internet 接入或企业分支机构网络远程接入,端口数量和类型、包处理能力都非常有限。 Cisco 1800/2800 系列、 Cisco 1900/2900 系列属低端路由器, Cisco 3800 系列、 Cisco 3900 系列和 Cisco 4400 系列属中低端路由器。图 9-2 所示为 Cisco 3900 系列路由器。
中端路由器适用于较大规模的网络,拥有较高的包处理能力,具有较丰富的网络接口,适应较为复杂的网络结构。 Cisco 7200/7600 系列属于中高端路由器,作为可扩展的多用途系统,能够为大中型网络应用提供可靠的第二层和第三层服务,可用于构建企业级数据中心互连平台。图 9-3 所示为 Cisco 7609 路由器。

高端路由器主要应用于大型网络的核心路由器,拥有非常高的包处理性能,并且端口密度高、端口类型多,以适应复杂的网络环境。 Cisco ASR 1000/9000 和 XR 12000 系列属高端路由器,多被电信级运营商用于构建超大规模的分布式结构网络。图 9-4 所示为 Cisco ASR 9000系列路由器。

Cisco 1900/2900/3900/4400 系列路由器为 ISR G2 路由器,无论是硬件配置还是功能支持,都比 ISR 路由器有了较大幅度的提升(如表 9-1 所示)。




















暂无评论内容