IS-IS协议基本概念、工作原理与扩展应用

AI 概述
本文讲解IS-IS动态路由协议,介绍其分层路由器、网络类型、报文、邻居建立、LSDB同步与SPF路由计算,梳理IPv6、SR-MPLS、SRv6扩展能力,并对比OSPF。依托TLV结构扩展性强,适合大型ISP网络,是主流IGP协议。
目录
文章目录隐藏
  1. 一、什么是 IS-IS?
  2. 二、为什么需要 IS-IS?
  3. 三、IS-IS 基本概念
  4. 四、IS-IS 邻居关系建立
  5. 五、LSDB 同步
  6. 六、路由计算
  7. 七、IS-IS 扩展
  8. 八、IS-IS 与 OSPF 的区别
  9. 总结

一、什么是 IS-IS?

IS-IS(Intermediate System to Intermediate System,中间系统到中间系统)最初是国际标准化组织(ISO)为其无连接网络协议 CLNP(ConnectionLess Network Protocol)设计的一种动态路由协议。随着 TCP/IP 协议的普及,IETF 在相关标准中对 IS-IS 进行了扩充和修改,使其能够同时应用在 TCP/IP 和 OSI 环境中,称为集成 IS-IS(Integrated IS-IS)或双 IS-IS(Dual IS-IS)。

IS-IS 使用最短路径优先 SPF(Shortest Path First)算法进行路由计算,具有收敛速度快、扩展性强的特点。由于运行在数据链路层,IS-IS 具有较好的抗攻击能力,能够实现大规模网络的互通,是大型 ISP 网络中广泛应用的 IGP 协议之一。

二、为什么需要 IS-IS?

在 IS-IS 出现前,RIP(Routing Information Protocol)是广泛使用的内部网关协议。RIP 基于距离矢量算法,存在收敛慢、路由环路和可扩展性差等问题,逐渐被 IS-IS 取代。

IS-IS 的主要优势:

优势 说明
扩展性高 报文中采用 TLV(Type-Length-Value)格式,新增功能无需改变协议基本结构
区域合并灵活 一台路由器最多可配置多个区域地址,可实现多区域的平滑合并
报文结构简洁 邻居交互效率高,协议开销小
不依赖 IP 地址 工作在数据链路层,无需依赖 IP 可达性即可建立邻居
收敛速度快 采用 SPF 算法,路由计算快速高效
大规模网络支持 适用于大型 ISP 等规模较大的网络环境

三、IS-IS 基本概念

IS-IS 路由器分类

IS-IS 在路由域内采用两级分层结构,一个大的 Domain(域)可划分为多个 Areas(区域)。

IS-IS 路由器分类

IS-IS 定义了三种不同级别的路由设备:

路由器类型 功能 邻居范围 LSDB 维护
Level-1 路由器 负责区域内路由 同一区域的 Level-1 和 Level-1-2 路由器 仅维护本区域的 LSDB,目的不在本区域时指向最近的 Level-1-2 路由器
Level-2 路由器 负责区域间路由 Level-2 或其他区域的 Level-1-2 路由器 维护 Level-2 LSDB,包含区域间路由信息,组成骨干网
Level-1-2 路由器 同时属于 Level-1 和 Level-2 同一区域的 Level-1/1-2(Level-1 邻居)及其他区域的 Level-2/1-2(Level-2 邻居) 维护两个 LSDB:Level-1 LSDB 和 Level-2 LSDB

关键说明:

  • 所有 Level-2 级别的路由器组成路由域的骨干网,且必须保持连续性;
  • Level-1 路由器必须通过 Level-1-2 路由器才能连接至其他区域;
  • 骨干区域不仅包括 Level-2 路由器,还包括其他区域的 Level-1-2 路由器。

IS-IS 网络类型

IS-IS 支持两种网络类型:

IS-IS 网络类型

网络类型 支持的链路 特点
广播网络类型(Broadcast) Ethernet、Token-Ring 等 需要选举 DIS(指定中间系统)
P2P 网络类型(Point-to-Point) PPP 等点到点链路 无需选举 DIS

广播链路可配置为广播网络类型或 P2P 网络类型,点到点链路仅支持 P2P 网络类型。

IS-IS 报文类型

IS-IS 报文主要有以下三种类型:

报文类型 全称 主要功能
Hello PDU(IIH) IS-to-IS Hello PDUs 建立和维持邻居关系
LSP Link State PDUs 交换链路状态信息
SNP Sequence Number PDUs 同步各 LSDB,包括 CSNP 和 PSNP

(1)Hello PDU 分类:

类型 适用场景
Level-1 LAN IIH 广播网中的 Level-1 IS-IS
Level-2 LAN IIH 广播网中的 Level-2 IS-IS
P2P IIH 非广播网络(点到点链路)

(2)LSP 分类:

  • Level-1 LSP:由 Level-1 路由器传送,在区域内传播;
  • Level-2 LSP:由 Level-2 路由器传送,在区域间传播;
  • Level-1-2 路由器:可传送以上两种 LSP。

LSP 关键字段:

字段 说明
ATT(Attached) 由 Level-1-2 路由器置位,告知 L1 区域路由器可通过自己到达其他区域,L1 路由器据此生成缺省路由
OL(Overload,过载标志位) 置位后,其他路由器进行 SPF 计算时不会使用该路由器做转发(仅直连路由仍被计算)
IS Type 指明生成 LSP 的路由器类型(01 表示 Level-1,11 表示 Level-2)

(3)SNP 分类:

类型 说明
CSNP(Complete SNP) 包含 LSDB 中所有 LSP 的摘要信息,广播网中由 DIS 周期性发送,P2P 链路中仅在邻居建立时发送
PSNP(Partial SNP) 包含部分 LSP 的摘要信息,用于请求缺失的 LSP 或作为 LSP 的确认应答

四、IS-IS 邻居关系建立

两台运行 IS-IS 的路由设备在交互协议报文实现路由功能之前必须首先建立邻居关系。在不同类型的网络上,IS-IS 的邻居建立方式并不相同。

广播链路邻居关系建立

广播链路邻居关系建立

以 Level-2 路由器为例,广播链路中建立邻居关系的过程如下:

步骤 发送方 报文内容 状态变化
1 DeviceA 广播发送 Level-2 LAN IIH,无邻居标识
2 DeviceB 回复 Level-2 LAN IIH,标识 DeviceA 为邻居 DeviceA 和 DeviceB → Initial
3 DeviceA 发送 Level-2 LAN IIH,标识 DeviceB 为邻居 DeviceA 与 DeviceB → Up
4 DeviceB 收到后确认 DeviceB 与 DeviceA → Up

邻居关系建立后,等待两个 Hello 报文间隔,进行 DIS 选举。

P2P 链路邻居关系建立

在 P2P 链路上,邻居关系的建立不同于广播链路。分为两次握手机制和三次握手机制。

握手机制 说明 可靠性
两次握手 收到对端 Hello 报文即单方面宣布 Up 状态 低(存在单向链路检测缺陷)
三次握手 通过三次 P2P IS-IS Hello PDU 交互建立邻居,确认双方均收到报文后才宣布 Up 高(解决不可靠链路问题)

DIS 选举

在广播网络中,IS-IS 需要选举 DIS(Designated Intermediate System),负责创建和更新伪节点(Pseudo Node)。

选举规则:

(1)优先级优先:优先级数值最大的路由器当选 DIS

(2)MAC 地址决胜:优先级相同时,MAC 地址最大的当选

IS-IS 与 OSPF 的 DIS 选举差异:

对比项 IS-IS OSPF
优先级为 0 的设备 参与选举 不参与选举
新路由器加入 符合条件时可立即成为新 DIS,触发 LSP 泛洪 DR 稳定,新增路由器不会抢占现有 DR

五、LSDB 同步

LSP 产生与泛洪

触发 LSP 产生的事件:

  • 邻居 Up 或 Down;
  • IS-IS 相关接口 Up 或 Down;
  • 引入的 IP 路由发生变化;
  • 区域间的 IP 路由发生变化;
  • 接口被赋予新的 Cost 值;
  • 周期性更新。

LSP 泛洪:当一个路由设备向相邻路由设备通告自己的 LSP 后,相邻路由设备再将该 LSP 传送到除发送者外的其他邻居,逐级传送到整个层次内所有路由设备,保持 LSDB 同步。

LSP 新旧判断依据(按优先级排序):

  • 序列号(越大越新);
  • Remaining Lifetime(越大越新);
  • Checksum(越大越新)。

广播链路 LSDB 同步(新加入设备与 DIS)

步骤 过程
1 新设备 DeviceC 发送 Hello,与 DeviceA、DeviceB 建立邻居关系
2 DeviceC 等待 LSP 刷新定时器超时,将 LSP 发往邻居
3 DIS 收到 LSP 并加入 LSDB,等待 CSNP 定时器超时后发送 CSNP 进行同步
4 DeviceC 对比 CSNP 与本地 LSDB,发送 PSNP 请求缺失的 LSP
5 DIS 响应 PSNP 请求,发送对应 LSP 完成同步

P2P 链路 LSDB 同步

P2P 邻居建立后,双方互发 CSNP。若 LSDB 不同步,则发送 PSNP 请求缺失的 LSP。发送端发送 LSP 时启动重传定时器,收到 PSNP 确认后停止重传。

PSNP 在 P2P 链路上的双重作用:

  • 作为 Ack 应答,确认收到的 LSP;
  • 用来请求所需的 LSP。

六、路由计算

IS-IS 采用 SPF(Shortest Path First)算法计算路由,可达到快速收敛的目的。

计算流程:

(1)构建有向图:将 LSDB 转换为带权有向图,各路由器得到的有向图完全相同

(2)生成最短路径树:每台路由器以自己为根,计算到各节点的最短路径树

(3)得出路由:根据最短路径树得出到各目的地的路由

SPF 计算触发条件:LSDB 发生改变时重新计算。缺省情况下 SPF 时间间隔为 5 秒,可通过调节间隔抑制频繁变化带来的资源占用。

七、IS-IS 扩展

IS-IS for IPv6

IETF 通过新增 TLV 和 NLPID 使 IS-IS 支持 IPv6:

扩展元素 说明
IPv6 Reachability TLV(类型值 236) 定义路由信息前缀、度量值,说明网络可达性
IPv6 Interface Address TLV(类型值 232) 相当于 IPv4 中的“IP Interface Address”TLV,但地址长度为 128 比特
NLPID(Network Layer Protocol Identifier,值 142) 标识 IPv6 网络层协议,支持 IPv6 时必须携带

IS-IS for SR-MPLS

SR-MPLS(Segment Routing MPLS)基于 MPLS 转发平面。IS-IS 为支持 SR-MPLS 扩展了以下子 TLV:

子 TLV 功能
Prefix-SID Sub-TLV 通告 SR-MPLS 的 Prefix SID
Adj-SID Sub-TLV P2P 网络中通告 Adjacency SID
LAN-Adj-SID Sub-TLV LAN 网络中通告 Adjacency SID
SID/Label Sub-TLV 通告 SR-MPLS 的 SID 或 MPLS Label
SID/Label Binding TLV 通告前缀到 SID 的映射
SR-Capabilities Sub-TLV 通告自身的 SR-MPLS 能力
SR Local Block Sub-TLV 通告为本地 SID 预留的标签范围

IS-IS for SRv6

SRv6(Segment Routing IPv6)基于 IPv6 转发平面,通过在 IPv6 报文中插入 SRH(Segment Routing Header)实现源路由。IS-IS 为支持 SRv6 扩展了以下 TLV:

TLV/子 TLV 功能
SRv6 Locator TLV 通告 SRv6 的 Locator 及相关 End SID
SRv6 Capabilities sub-TLV 通告 SRv6 能力
SRv6 End SID sub-TLV 通告 SRv6 的 SID
SRv6 End.X SID sub-TLV P2P 网络中通告 SRv6 SID
SRv6 LAN End.X SID sub-TLV LAN 网络中通告 SRv6 SID
Node MSD sub-TLV 通告设备能接受的最大 SID 栈深度(MSD)

八、IS-IS 与 OSPF 的区别

对比维度 IS-IS OSPF
协议层 链路层协议(直接封装在数据链路帧中) IP 层协议(封装在 IP 报文中,协议号 89)
扩展性 强(TLV 结构,新增功能只需扩展 TLV) 一般(需扩展 LSA type,如 IPv6 需要 OSPFv3)
适用范围 大规模网络(如大型 ISP) 规模适中的网络(中小型企业网络,几百台设备)
路由算法 SPF 算法,分别在 Level-1 和 Level-2 数据库中独立运行 SPF 算法,基于 LSA 描述网络拓扑生成 SPT
收敛速度 快(小于 1 秒) 快(小于 1 秒)
区域划分 基于路由器划分 基于接口划分
DIS/DR 选举 优先级为 0 的设备参与选举;新设备可抢占 优先级为 0 的设备不参与选举;DR 稳定,新设备不抢占

总结

IS-IS 作为源于 ISO 标准的链路层路由协议,通过 IETF 的扩展成功融入 TCP/IP 网络环境,成为与 OSPF 并驾齐驱的顶级 IGP 协议。其独特的 TLV 报文结构赋予了 IS-IS 超强的可扩展性,使其能够平滑支持 IPv6、SR-MPLS、SRv6 等前沿网络技术。相比 OSPF,IS-IS 在大规模网络部署、协议扩展灵活性方面更具优势,因此被广泛应用于大型 ISP 和数据中心网络中。无论是传统 IP 网络还是新一代 Segment Routing 网络,IS-IS 都扮演着关键的路由基础设施角色。

以上关于IS-IS协议基本概念、工作原理与扩展应用的文章就介绍到这了,更多相关内容请搜索码云笔记以前的文章或继续浏览下面的相关文章,希望大家以后多多支持码云笔记。

「点点赞赏,手留余香」

12

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » IS-IS协议基本概念、工作原理与扩展应用

发表回复