目录

IS-IS基本信息

IS-IS指的是什么

OSI模型与TCP/IP模型的网络层协议

IS-IS与OSPF

IS-IS工作过程

第一步 建立邻居关系

第二步 同步LSDB数据库

第三步 进行SPF路由计算

邻居状态

二次握手

三次握手

ISIS封装

ISIS静默接口


IS-IS基本信息

IS-IS指的是什么

IS  指的是中间系统(路由器、运行了IS-IS协议的设备)

ES  指的是终端系统(PC、平板、打印机等)

IS-IS指的就是中间系统与中间系统进行路由信息的交换方式

OSI模型与TCP/IP模型的网络层协议

网络层作用:用于网络罗设备的编址以及寻址

OSI模型:     网络层是CLNP协议(无连接网络协议)

TCP/IP模型:  网络层是IP协议

IS-IS最初就是为CLNP协议设计的一种基于链路状态的使用最短路径算的动态路由协议

  • 即IS-IS最先是为OSI模型服务的,不过由于IS-IS扩展性强的原因,通过扩展,能够支持IP协议。
  • 现在IS-IS成为集成IS-IS,是多栈路由协议,它支持CLNP,IPv4、Pv6
  • IS-IS由于节省设备资源、扩展性强,学习难度低,很快再ISP市场得到了很多应用

IS-IS与OSPF

路由计算算法

IS-IS与OSPF都使用SPF算法

为谁工作

IS-IS最初是为CLNP协议工作,现在也可以为IP协议工作

OSPF只是为IP协议工作

所属层次

IS-IS是工作在链路层之上的网络层协议(即IS-IS相对于网络层是独立的一个协议)

OSPF是工作在网络层之上的路由协议(即OSPF是基于网路层封装的,不过不能说是传输层协议,只能说和传输层一个层次。)

应用场景


IS-IS工作过程

第一步 建立邻居关系

IS-IS——图解9种报文_多谢思考的博客-CSDN博客https://blog.csdn.net/m0_49864110/article/details/126069383?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22126069383%22%2C%22source%22%3A%22m0_49864110%22%7D&ctrtid=PgrMN

IS-IS如何标识网络设备

OSPF协议是通过 area id+router id对设备进行标识的

IS-IS协议则通过NET地址(area id+system id+00)来对设备进行标识

NET地址(网络实体标识符)

IP协议是通过IP地址进行网络服务访问的,NSAP协议是通过NSAP地址进行网络访问的

而NET地址就是一类特殊的NASP(即SEL=00的NSAP地址就代表NET地址,用来标识IS-IS设备)

注意:在配置IS-IS过程中,NET最多配置3个,并且它们的System ID都要相同

路由器的分类/角色

IS-IS中路由器分为三类(作用类似于OSPF中的骨干区域和非骨干区域)

L1路由器   相当于OSPF的非骨干区域的IR(所有接口都运行在同一区域)路由器

只维护L1的LSDB(相当于非骨干区域的LSA)

L2路由器   相当于OSPF的骨干区域的IR路由器

只维护L2的LSDB(相当非骨干区域的LSA)

L12路由器  相当于OSPF的ABR路由器

维护L1的LSDB,也维护L2的LSDB

注意:

  • 华为设备默认路由器为L12
  • L1的邻居建立前提,区域ID必须一致
  • L2的邻居对区域ID不做要求(一致、不一致都可以)

IS-IS网络类型

IS-IS只支持2中网路类型,P2P,广播

PPP,HDLC链路默认是P2P链路

发送的所有报文的目的地址都是组播地址09:00:2B:00:00:05

以太网、FDDI链路默认是广播链路

发送的所有报文的目的地址都是组播地址

L1路由器发送的地址为01:80:C2:00:00:14

L2路由器发送的地址为01:80:C2:00:00:15。

邻居建立——Hello报文

Hello报文细分为三种类型

P2P Hello报文   在P2P链路上建立L1/L2邻居关系

L1 Hello报文     在广播链路上建立L1的邻居关系

L2 Hello报文     在广播链路上建立L2的邻居关系

Hello间隔

  • 10s发送一次,邻居失效时间为3倍的发送间隔(30s)
  • 但是当选举DIS后,DIS路由器回10/3s周期性发送Hello报文,非DIS路由器还是10s发送一次
  • 当非DIS路由器在10s没有收到DIS发的Hello报文,则认为DIS失效
  • 当DIS路由器/非DIS路由器在30s没有收到非DIS路由器发送的Hello报文,则认为邻居失效

邻居建立过程——IS-IS状态

P2P建立邻居由2种方式:2次握手和三次握手(默认使用3次握手,兼容两次握手)

2次握手只要收到对端的Hello报文,就单方面宣布自己为up状态,容易造成单项邻居,出现路由单通

P2P的三次握手在收到对端Hello包后,需要Hello包中的TLV240字段有自己的接口ID,设备才从Initialized状态进入到up状态

P2P的二次握手不需要TLV240,直接进入up状态

广播链路仅使用3次握手(同P2P的三次握手)

3次握手,当邻居发送的Hello报文中没有自己的System ID,状态进入initialized

当邻居发送的Hello报文中有自己的System ID,状态进入up

MA网络在收到对端Hello包时,如果Hello包的TLV 6字段有自己的MAC,设备才会从Initialized状态进入到up状态

影响邻居建立的因素

ISIS——基本概念2(域间路由、认证、影响邻居建立条件)_静下心来敲木鱼的博客-CSDN博客_域间路由https://blog.csdn.net/m0_49864110/article/details/126069526?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22126069526%22%2C%22source%22%3A%22m0_49864110%22%7D

第二步 同步LSDB数据库

当邻居状态UP后,开始进行LSDB同步,发送以下报文

LSDB同步报文1——CSNP报文(类似OSPF的DD报文)

分为L1 CSNP、L2 CSNP两种类型

主要用于通告链路状态数据库(LSDB)摘要

CSNP发送间隔

在广播网络中,CSNP由DIS周期发送,每10s发送一次

在P2P网络中,CSNP只发送一次,邻居状态UP后发送一次

LSDB同步报文2——PSNP报文(类似OSPF的LSR或者LSACK)

分为L1 PSNP、L2 PSNP两种类型

用于请求和确认链路状态信息

LSDB同步报文3——LSP报文(类似OSPF的LSU)

分为L1 LSP(L1 邻居之间发送)、L2 LSP(L2 邻居之间发送)两种类型

用于邻居之间交换链路状态信息(携带完整信息)

IS-IS同步——DIS(类似于OSPF的DR,不过作用不同)

IS-IS在广播型链路上会进行DIS选举(DIS在邻居建立之后进行)

DIS类似于OSPF的DR,没有BDIS

DIS分类

DIS分为L1 DIS 和 L2 DIS(L1路由器之间选举L1 DIS,L2路由器之间选举L2 DIS)

DIS如何选举

  1. DIS优先级的取值范围为0~127,默认是64,越大越优先为DIS(0可以参与选举)
  2. DIS相同,比较接口的MAC地址,MAC地址大的成为DIS

P2P链路LSDB同步过程

  1. 两台邻居UP后,会互相发送CSNP报文携带自身LSDB的全部LSP摘要给对方
  2. R2收到CSNP后,检查自身LSDB中LSP新旧判断,发送PSNP携带自己想要的LSP摘要以及需要更新的LSP摘要
  3. R1收到PSNP后,根据摘要通过LSP报文发送完整的链路状态信息
  4. 如果RT2没有发送PSNP对LSP做确认
  5. 5s后RT1会对LSP会重新传送
  6. RT2收到后再回复PSNP做确认

为什么华为的流程和标准协议RFC定义的不一样

P2P网路中CSNP只会发送一次,当CSNP丢包,就无法建立邻居了

华为设备上先发送LSP,当LSP丢包后,5s重传,可靠性更高

PSNP的请求和回应消息是怎么区分的

通过LSP ID序列号来判断是请求报文还是确认报文

0表示请求  非0表示确认报文

广播链路LSDB同步过程

在DIS稳定的情况下,新增R3与DIS建立邻居进行LSDB同步的过程(此时RT2已经与RT1建立邻居,LSDB完成同步)  以下讲解的是R3发送LSP的过程

  1. 新增非DIS设备与DIS建立邻居后,互相发送LSP,收到LSP后加入自身数据库(不回复RSNP做确认)
  2. DIS设备周期性10s发一次CSNP,描述自身LSP摘要信息
  3. 非DIS设备收到此CSNP,会了解到自己缺少哪些LSP以及DIS有无自己的LSP等信息,如果当发现自身缺少LSP时,发送RSNP请求(如果发现DIS没有自身的LSP,则发送LSP)
  4. DIS收到RSNP请求后,发送LSP信息
  5. 非DIS收到LSP信息后,不回复RSNP做确认,当收到下一次的CSNP报文时,如果自己还缺少LSP,就再次请求,如果不缺少LSP,就无反应

注意:

  • 新增路由器和DIS一旦建立邻居,会互相发送自身LSDB的LSP
  • 非DIS路由器会和新增路由器建立邻居关系,但不会向新增的路由器发自身LSDB中的LSP,避免重复发送LSP
  • 广播网络中的RSNP只有请求作用,无确认作用
  • 广播网络中对LSP的确认是通过CSNP隐式确认的

第三步 进行SPF路由计算

路由开销计算

ISIS的接口开销分为窄带和宽带

窄带:开销取值范围为 1~63  默认为窄带类型,开销为10  环回口为0

宽带:开销取值范围为 1~2^24  当改为宽带后,开销默认也为10  环回口为0

Isisi视图下:cost-type-wide 将开销类型改为宽带

ISIS可以配置自动计算接口开销

Isis视图下:

bandwidth-reference [100Mbt/s]  配置参考带宽

Auto-cost enable               使能自动计算接口的开销值

计算所需TLV

TLV 132   携带携带接口的IPv4地址,用于计算下一跳

窄带

TLV 2   携带拓扑信息

TLV 128 携带内部路由信息

TLV 130 携带外部路由信息

宽带

TLV 22    携带拓扑信息

TLV 135 携带路由信息

SPF计算过程

  1. 单区域LSDB同步完成
  2. 生成全网拓扑结构图
  3. 以本节点为根生成最短路径树

邻居状态

二次握手

Down——初始状态

UP——   收到对方发来的Hello包(无论邻居列表是否有自己的System id)

三次握手

Down——初始状态

Init  —— 收到Hello包,但邻居列表无自己的System id

Up  —— 收到Hello包,邻居列表有自己的System id


ISIS封装

ISIS封装在数据链路层

广播——被封装在802.3帧中

P2P——被封装在PPP链路中(PPP链路无MAC地址)

数据链路层两种封装格式

以太网II帧(常见的)

IEEE 802.3帧(BPDU、ISIS就封装在802.3帧中)


ISIS静默接口

作用同OSPF的静默接口

ISIS接口配置为静默接口后,此接口会禁止发送和接收协议报文

当用户希望本地ISIS的路由信息不被其他网络中的设备获得,并且本地设备不接受其他设备发布的路由信息时,可以禁止ISIS接口发送与接收协议报文

注意事项

接口静默之后,接口的直连路由可以发布出去

但是Hello报文被阻塞,无法建立邻居关系

配置命令

int g1/0/0   配置静默接口的前提是此接口加入到ISIS中

isis enable 1

isis silent

ISIS——基本概念2(域间路由、认证、影响邻居建立条件)_静下心来敲木鱼的博客-CSDN博客_isis 跨域https://blog.csdn.net/m0_49864110/article/details/126069526?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166651963016782388039939%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=166651963016782388039939&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-3-126069526-null-null.nonecase&utm_term=ISIS&spm=1018.2226.3001.4450ISIS——LSP讲解_静下心来敲木鱼的博客-CSDN博客_isis 伪节点https://blog.csdn.net/m0_49864110/article/details/126069486?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166651963016782388039939%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=166651963016782388039939&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-126069486-null-null.nonecase&utm_term=ISIS&spm=1018.2226.3001.4450ISIS——图解9种报文_静下心来敲木鱼的博客-CSDN博客_isis几种报文https://blog.csdn.net/m0_49864110/article/details/126069383?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166651963016782388039939%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=166651963016782388039939&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-5-126069383-null-null.nonecase&utm_term=ISIS&spm=1018.2226.3001.4450

ISIS——基本概念1(邻居建立、路由计算、报文封装)相关推荐

  1. bgp 建立邻居发送的报文_bgp邻居建立过程及报文详解.doc

    bgp邻居建立过程及报文详解.doc 还剩 4页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: 前缀长度和网络号8.当路由失效时,也发送 update ...

  2. BGP邻居建立及特点

    BGP邻居建立及特点 BGP特点: 有认证和GTSM机制,保障安全 有丰富的路由属性,更加灵活的选路 通过路由聚合,路由衰减防止震荡 增量式,触发式更新,路由条目太多了 基于TCP协议,179号端口, ...

  3. 深入理解IGP-ISIS——ISIS邻居建立过程,影响ISIS邻居建立因素,ISIS报文

    一.邻居关系建立过程(2-way,3-way) 一.邻居关系建立过程(2-way,3-way) (1)p2p网络 (TLV240,对端的system-id) 当收到对方发来的HELLO包中有自己的sy ...

  4. BGP——基本概念1(自治系统、邻居建立)

    目录 基本概念 自治系统 BGP对等体概述 名词解释 基本概念 对等体类型 建立对等体关系的条件 对等体信息参数讲解 BGP邻居建立过程 基本概念 1.BGP 是路径矢量协议,是自治系统间的路由协议 ...

  5. ISIS的邻居建立详解

    ISIS邻居建立详细   建立邻居的条件:同一区域:L1等级要求,L2不要求                  同一等级                  同一网段:同一网段不要求主IP地址在同一网段 ...

  6. OSPF域内LSA与路由计算

    LSA头部 上部分OSPF基础中学习完OSPF如何建立邻居与邻接关系,OSPF在建立邻接关系后已经搭建完成自己的LSDB数据库了,这时候就该进行路由计算来选出最优的路径. 在学习OSPF路由计算之前, ...

  7. eigrp ospf 邻居建立过程比较

    EIGRP邻居建立过程 1.路由器A启动,然后在链路上发送hello包 2.路由器B接收到A发来的hello包,然后做出应答,发回update包给A,告诉A它自己的路由表的信息.但是这个时候 邻居关系 ...

  8. 【LAB4-Cisco】OSPF邻居建立过程与LSDB分析

    实验需求 1.根据拓扑提示,对各路由启用OSPF路由协议并划分相应区域,并验证邻居关系以及数据库信息,从而保证内网全网互通.其中,要求R7上的回环口条目作为外部条目引进来. 2.新加入公司网络的Are ...

  9. OSPF协议之邻居建立

    OSPF协议之邻居建立 OSPF的工作过程 1.建立邻居关系 2.同步链路状态数据库 3.计算最优路由 OSPF路由器之间在交换链路状态信息之前,首先需要彼此建立邻居关系,通过Hello报文实现. 1 ...

最新文章

  1. Linux系统mongdb还原数据库,linux下mongodb数据库备份与还原
  2. 清华首批7门标杆课程,到底有多牛?
  3. LInux初始学习篇:基本命令使用
  4. 根据IP地址,子网掩码计算主机所在网络的网络地址和广播地址
  5. maven排除依赖冲突问题
  6. 【C/C++】与const有关的指针类型赋值
  7. linux memcache端口占用,Linux: memcache的安装和启动、停止、重启, 检查memcache server是否开启...
  8. 拓端tecdat|R语言基于树的方法:决策树,随机森林,Bagging,增强树
  9. 无约而来WIN8 PRO WMC X64 201306
  10. 达梦数据库SQL语法
  11. FEC介绍(二)-详解RS编码
  12. 高等数学(同济大学)
  13. 在TCGA中查找mutation突变
  14. 多种语言画玫瑰,总有一款适合你表白
  15. 寄语十周年:“我与CCF BDCI”大赛十周年寄语火热征集中
  16. ss3ex集成Beet记录日志
  17. 别人学到失眠,而你看书就犯困?这样提神让你赶走疲惫!
  18. UnityShader---光照(衰减和阴影))(内置渲染管线)---10
  19. 铁甲雄心机器人冠军_机器人格斗元老亮相《铁甲雄心》虽败犹荣
  20. gmail邮箱中显示的名字如何修改?

热门文章

  1. android开发中磁场传感器,Android开发获取传感器数据的方法示例【加速度传感器,磁场传感器,光线传感器,方向传感器】...
  2. 面向过程与面向对象的区别
  3. 【方法】如何在PPT文稿中插入Word表格?
  4. 只做了delete操作,为啥 ORACLE-01466表定义已更改
  5. python绘制一个圆当按下键盘的上下边缘会变大和变小_元贝驾考 模拟考
  6. 分析app(课堂练习)
  7. MFC真的过时了吗?C++是否真的适合做GUI界面?
  8. 计蒜客--蒜头君的新游戏
  9. Java Annotation 应用 -- 导出Excel表格
  10. 在网页地图图片上加注企业和“圳品”数量信息