惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

U
Unit 42
T
Threatpost
C
CERT Recently Published Vulnerability Notes
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Security Archives - TechRepublic
Security Archives - TechRepublic
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
K
Kaspersky official blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Attack and Defense Labs
Attack and Defense Labs
N
News and Events Feed by Topic
Project Zero
Project Zero
H
Heimdal Security Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Know Your Adversary
Know Your Adversary
Google Online Security Blog
Google Online Security Blog
W
WeLiveSecurity
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Schneier on Security
Schneier on Security
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
N
News | PayPal Newsroom
Hacker News - Newest:
Hacker News - Newest: "LLM"
H
Hacker News: Front Page
L
LINUX DO - 热门话题
Spread Privacy
Spread Privacy
T
Threat Research - Cisco Blogs
Cloudbric
Cloudbric
V
Vulnerabilities – Threatpost
Hacker News: Ask HN
Hacker News: Ask HN
S
Securelist
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
TaoSecurity Blog
TaoSecurity Blog
NISL@THU
NISL@THU
N
News and Events Feed by Topic
S
Security Affairs
The Last Watchdog
The Last Watchdog
T
Tor Project blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
T
The Exploit Database - CXSecurity.com
Simon Willison's Weblog
Simon Willison's Weblog
P
Palo Alto Networks Blog
AWS News Blog
AWS News Blog
P
Proofpoint News Feed
C
Cisco Blogs
C
Cyber Attacks, Cyber Crime and Cyber Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
L
LINUX DO - 最新话题
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Tenable Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
S
Schneier on Security

码云笔记

Pinia v4 发布:Vue 状态管理进入新时代 Linux LVM:故障排查与数据恢复指南 Java中wait()与sleep()方法的不同点是什么? Bonsai27B 重磅落地!27B 大模型实现手机本地运行 ES2026 第 17 版新增的 5 个新特性 高德重磅上线 ABot‑World Studio,消费级显卡就能搭建专属 3D 虚拟世界 Java中final、finally和finalize的区别是什么? 怎么修改Ollama及其模型的默认路径?Ollama路径修改、迁移与重启的操作教程 iOS27 公开测试版正式上线!AI Siri 与液态玻璃成最大看点 Yuku正式发布!比 Vite+ 快 5.4 倍的前端工具链 Linux lsof 命令详解:进程与文件监控实战 Claude Code CLI命令手册 代码审查重构Bug修复场景化工作流 OpenClaw中连接并使用本地Ollama模型的操作教程 GPT-5.6 今天正式上线:OpenAI 掏出”太阳系”全家桶,Sol / Terra / Luna 齐发,打的却是一张”效率牌” Nacos MySQL持久化部署完整教程 GPT-5.6系列正式上线:OpenAI以效能与性价比重塑AI行业竞争格局 Java中序列化与反序列化的概念是什么? 如何在HTML中实现字体颜色根据背景自动变化? JDK动态代理与CGLIB动态代理的区别是什么? OpenClaw数据加密敏感信息保护的完整教程 砸超亿美元算力!亚马逊秘密启动Moonraker项目,Alexa迎来颠覆性升级 PHP 最轻量、结构化 .docx 到 Markdown 转换器 Elephant TypeScript 7.0 正式发布 蚂蚁灵波开源全球首款 MoE 具身视频大模型 LingBot-Video,为机器人世界模型搭建新底座 SpaceX AI联合Cursor推出Grok 4.5 搅动专业AI赛道格局 英伟达Vera CPU落地商用,改写AI代理时代算力竞争规则 什么是端点检测与响应(EDR)以及它的工作原理介绍 Anime.js 已经 10 岁了!作者查出脑瘤,V5 将开始收费! 星链开启全面升级!SpaceX申请十万颗卫星,构建AI时代全球天基基建 PHP 通用表达式语言 CEL-PHP 2.0.0 正式发布! WordPress 7.0 下载,支持AI建站 Docker Desktop(windows)版本下载 详解 Linux 端口监听检查工具:ss、netstat、lsof 京东 JoyAI 上线 UGC 数字人功能,普通人一键打造专属虚拟分身 Java中Integer缓存池的作用是什么? 应对劳动力短缺 日本加码布局AI机器人产业,2040年拟千万台机器人落地各行各业 Java中深拷贝与浅拷贝的区别是什么? Claude旗舰模型收费规则大变:订阅权益取消,转为按量计费 MySQL中的分布式架构和复制策略 如何在 MySQL 中处理 BLOB 和 CLOB 数据类型? 如何在 MySQL 中处理和优化长时间运行的查询? git提交信息分别用什么icon好? Composer安装与配置教程 35岁华为员工偷偷面试,被面试官嘲讽:你是被淘汰的吧?他的回怼让面试官当场闭嘴 谷歌Nano Banana 2 Lite正式上线:4秒极速出图,大幅降低AI生图成本 锐捷交换机运维配置完全参考手册 Vue 3.5:Effect Scope 与响应式污染隔离机制 美团LongCat-2.0重磅开源!国产万亿参数大模型解锁超长上下文新能力 LangChain4j 和 LangGraph4j 区别是什么?哪个更好? Claude Code 的聊天和配置可以一键搬进 Codex 了 码云笔记详解Markdown格式兼容性、图片显示失效与同步冲突解决 python实现自动爬取某论坛帖子并导出到Word文档的实战教程 高德低调内测 AI 零代码工具“袋马”,切入小微商家轻量化应用开发赛道 一文看懂OSPF:基础概念、工作原理和应用场景 PHP (Yii2) 接入企业级 SSO 单点登录实战教程 Google终于支持修改Gmail邮箱了?实测告诉你哪些能改,哪些不能改!(附详细教程+FAQ) UCloud 4.6 元 / 月服务器是真的吗? 2026 云服务器完整选购攻略 Webiny:无服务器应用程序框架 Fyrox:现代化的 Rust 游戏引擎 千问发布全球首个原生语言世界模型Qwen-AgentWorld,AI智能体迈入全环境实操新时代 火山引擎上新豆包音频生成模型1.0,AI音频生成实现一键全流程创作 使用Claude Code经常遇到的10个问题 如何批量清理wordpress所有文章和标签,保留设置,保留分类? 谷歌 NotebookLM 内测文献综述矩阵工具,Gemini3.5 赋能 AI 学术结构化研究 京东开源JoyAI-VL-Interaction模型 解锁AI实时视频视觉交互新形态 破解中小商家海报设计难题!MeiGen-AI开源闭环AI设计方案落地 详解Bash set 命令:set -e、set -x 和 set -u 完全指南 Node Plus ?比 pnpm 快 24 倍! Plan-Execute-Replan 和 ReAct 的区别是什么? Anthropic最新报告揭秘:AI编程人机协作成开发者主流工作模式 详解PostgreSQL 18 逻辑复制冲突检测与解决方法 JDK动态代理与CGLIB动态代理的区别是什么? 详解 Linux 中 localhost、127.0.0.1 与 Loopback(回环地址) OpenAI Codex新手入门教程 安装配置AGENTS.md与MCP全流程详解 程序员必备AGENTS.md配置指南 规避AI编码修改乱象 使用 Codex 必装的 12 个插件,你值得拥有! macOS AI CLI工具安装与避坑指南 OpenClaw Gemini Claude报错全套解决方案 智谱AI正式开源GLM-5. 2 模型:主打1M无损上下文与长程代码任务 小米 MiMo Claw 正式版上线 轻量化 Agent 打通金山办公生态 如何定义 Vue 的动态路由?如何获取传过来的动态参数? 记录Claude Code Router 接入过程遇到问题及解决方法 千问AI眼镜凭硬核实力领跑2026智能穿戴赛道 程序员特有的习惯你占了几条! 郝景芳新作半数内容由AI创作,文坛郝景芳AI写作争议再起 使用 iftop、nload、bmon、vnstat 监控 Linux 网络带宽 现代富文本编辑器为什么最终都会抛弃 DOM? Vue 的 v-cloak 和 v-pre 指令有什么作用? 去哪里买抖音号?抖音小号在线购买-抖音小号出售批发 实名闲鱼小号出售|闲鱼账号批发|咸鱼发布账号|出售闲鱼发布账号 zfb号购买-支付宝小号购买-实名支付宝购买号-企业支付宝购买-支付宝小号批发 个人支付宝实名账号出售|v2/v3支付宝账号出售|实名支付宝小号购买 闲鱼账号哪里有卖-闲鱼实名账号购买的途径 Java注解的实现原理是什么? Agentation MemPalace 《置身钉内》之好词好句好段摘抄 AI有声书革命!万象有声全自动生产线,7元/万字颠覆网文有声化行业 详解CentOS 7跨版本迁移Rocky Linux9 生产环境安全升级教程 Java中序列化与反序列化的含义是什么? 18. Python 标准库之 Json 模块
IS-IS协议基本概念、工作原理与扩展应用
洛夫斯基 普通 · 2026-06-30 · via 码云笔记

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(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协议基本概念、工作原理与扩展应用