ISIS协议介绍

这篇具有很好参考价值的文章主要介绍了ISIS协议介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ISIS基本概念

ISIS(Intermediate system to intermediate system )中间系统到中间系统,是一个分级的链接状态路由协议。每一台路由器都会生成一个LSP,它包含了该路由器所有使能 IS-IS协议接口的链路状态信息。通过跟相邻设备建立IS-IS 邻接关系,互相更新本地设备的 LSDB,可以使得LSDB 与整个 IS-IS网络的其他设备的LSDB 实现同步。然后根据LSDB 运用 SPF算法计算出 IS-IS 路由。
为了支持大规模的路由网络, IS-IS在自治系统内采用骨干区域与非骨干区域两级的分层结构。
IS-IS是ISO定义的OSI协议栈中无连接网络服务CLNS (Connectionless Network Service)的一部分。

ISIS专业术语

IS(Intermediate System):节点,即路由器。

Area区域:由一组连续的路由器、主机和连接它们的网络链路组成的实体。类似于OSPF的Area。

Domain域:由一组相互连接的Area组成。相当于传统的自治系统。

ISIS协议介绍
DIS(Designated Intermediate System):
在广播网络中, IS-IS 需要在所有的路由器中选举一个路由器作为DIS, 用来创建和更新伪节点(Pseudonodes),并负责生成伪节点的链路状态协议数据单元 LSP(Linkstate Protocol Data Unit),用来描述这个网络上有哪些网络设备。

伪节点:伪节点是用来模拟广播网络的一个虚拟节点,并非真实的路由器。在 IS-IS中,伪节点用 DIS 的SystemID 和一个字节的Circuit ID(非0 值)标识。

ISIS协议介绍

ISIS网络类型

IS-IS 只支持两种类型的网络,根据物理链路不同可分为:

  • 广播链路:如 Ethernet、Token-Ring 等。
  • 点到点链路:如 PPP等。

注意:对于NBMA(Non-BroadcastMulti-Access)网络,如ATM,需对其配置子接口,并注意子接口类型应配置为P2P。
IS-IS不能在点到多点链路P2MP(Pointto MultiPoint)上运行

Level-1 路由器:

负责区域内的路由,它只与属于同一区域的Level-1 和 Level-1-2路由器形成邻居关系,属于不同区域的Level-1 路由器不能形成邻居关系。

Level-2 路由器:

路由器负责区域间的路由,它可以与同一或者不同区域的Level-2 路由器或者其它区域的 Level-1-2路由器形成邻居关系。

Level-1-2 路由器:

同时属于 Level-1 和Level-2 的路由器称为 Level-1-2路由器,它可以与同一区域的 Level-1 和Level-1-2路由器形成Level-1 邻居关系,也可以与其他区域的Level-2 和 Level-1-2路由器形成 Level-2 的邻居关系。Level-1 路由器必须通过 Level-1-2路由器才能连接至其他区域。
Level-1-2 路由器维护两个LSDB, Level-1的 LSDB 用于区域内路由,Level-2 的 LSDB用于区域间路由。

ISIS协议介绍

ISIS地址结构

OSI地址使用NSAP(NetworkService Access Point)形式,NSAP的地址结构如图所示,它由IDP(InitialDomain Part)和DSP(DomainSpecific Part)组成。IDP和DSP的长度都是可变的,NSAP总长最多是20个字节,最少8个字节。

  • IDP 由AFI (Authorityand Format Identifier)与IDI(InitialDomain Identifier)两部分组成。AFI表示地址分配机构和地址格式, IDI 用来标识域。
  • DSP 由 High Order DSP、System ID 和 SEL三个部分组成。High Order DSP用来分割区域, System ID (6bytes)用来区分主机,SEL(NSAP-Selector ,1 byte)用来指示服务类型。

ISIS协议介绍

Area address:

标识路由域,也能够标识路由域中的区域,同一Level-1区域内的所有路由器必须具有相同的区域地址, Level-2区域内的路由器可以具有不同的区域地址。

System ID:

用来在区域内唯一标识主机或路由器,它的长度固定为48bit(6字节),一般使用RouterID与System ID进行对应。

例如:将loopback0的 IP 地址168.10.1.1(Router ID) 的每个十进制数都扩展为3 位,不足 3位的在前面补 0,得到168.010.001.001;将扩展后的地址分为 3 部分,每部分由4 位数字组成,得到 1680.1000.1001,就是System ID。

注意:System ID 的指定可以有不同的方法,但要保证能够唯一标识主机或路由器。

SEL:

SEL的作用类似 IP中的“协议标识符”,不同的传输协议对应不同的SEL。在 IP上 SEL 均为00。

NET(NetworkEntity Title):

网络实体名称 指的是设备本身的网络层信息,可以看作是一类特殊的NSAP(SEL=00)。在路由器上配置 IS-IS时,只需要考虑 NET即可,NSAP 可不必去关注。

例如:NET为ab.cdef.1234.5678.9abc.00,则其中Area Address 为ab.cdef, SystemID为1234.5678.9abc,SEL 为 00

ISIS工作过程

邻居建立:

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

IS-IS按如下原则建立邻居关系:

  • 只有同一层次的相邻路由器才有可能成为邻居。
  • 对于 Level-1 路由器来说,区域号必须一致。
  • 链路两端 IS-IS 接口的网络类型必须一致。

广播链路邻居关系的建立:

  1. R1广播发送IIH,此报文中无邻居标识。
  2. R2收到此报文后,将自己和R1的邻居状态标识为 Initial。然后,R2再向 R1回复IIH,此报文中标识R1为 R2的邻居。
  3. R1收到此报文后,将自己与R2的邻居状态标识为 Up。然后R1再向R2发送一个标识R2为R1邻居的 IIH。
  4. R2 收到此报文后,将自己与R1的邻居状态标识为 Up。
    ISIS协议介绍

P2P链路邻居关系的建立:

在 P2P 链路上,邻居关系的建立不同于广播链路。分为两次握手机制和三次握手机制。
两次握手机制:只要路由器收到对端发来的 Hello报文,就单方面宣布邻居为 Up 状态,建立邻居关系。

三次握手机制:此方式通过三次发送 P2P 的IS-IS Hello PDU 最终建立起邻居关系,类似广播邻居关系的建立。

两次握手机制存在明显的缺陷。当路由器间存在两条及以上的链路时,如果某条链路上到达对端的单向状态为Down,而另一条链路同方向的状态为 Up,路由器之间还是能建立起邻接关系。SPF 在计算时会使用状态为 UP的链路上的参数,这就导致没有检测到故障的路由器在转发报文时仍然试图通过状态为 Down的链路。

ISIS协议介绍

LSP的产生:

IS-IS 路由域内的所有路由器都会产生LSP,以下事件会触发一个新的 LSP

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

LSP的处理:

  • 将接收的新的 LSP合入到自己的 LSDB 数据库中,并标记为flooding。
  • 发送新的 LSP到除了收到该 LSP 的接口之外的接口。
  • 邻居再扩散到其他邻居

广播链路LSDP同步:

P2P链路LSDP同步:

ISIS协议介绍

ISIS报文种类:

IS-IS路由协议的协议数据单元(PDU)

  • Hello PDU:包括ESH(ES至IS),ISH(IS至ES),IIH(IS之间)三种类型,用于建立和维护毗邻关系。
  • LSP:用于发布链路状态信息。
  • PSNP(Partial sequence number PDU):用于请求和确认链路状态消息。
  • CSNP(Complete sequence number PDU):用于发布路由器的完整链路状态数据库。

PDU报格式文:

  • 前8个1字节大小的字段
  • 各种类型数据包附加包头字段
  • TLV字段
    ISIS协议介绍

路由渗透

路由渗透特性是指Level-1-2 IS-IS将己知的其他Level-1区域以及Level-2区域的路由信息通报给指定的Level-1区域。

通常情况下,区域内的路由通过Level-1的路由器进行管理。所有的Level-2和Level-1-2路由器构成一个连续的骨干区域。Level-1区域必须且只能与骨干区域相连,不同的Level-1区域之间并不相连。

Level-1区域内的路由信息通过Level-1-2路由器通报给Level-2区域的,即Level-1-2路由器将学习到的Level-1路由信息装进Level-2 LSP,再泛洪LSP给其他Level-2和Level-1-2路由器。因此,Level-1-2和Level-2路由器知道整个IS-IS路由域的路由信息。但是,为了有效减小路由表的规模,在缺省情况下,Level-2路由器并不将自己知道的Level-1区域以及骨干区域的路由信息通报给Level-1区域。这样,Level-1路由器将不了解本区域以外的路由信息

路由过载

使用IS-IS过载标记来标识过载状态,对设备设置过载标志位后,其他设备在计算SPF时,不会使用这台设备做转发,只计算该设备上的直连路由。
进入过载状态的方法:

  • 设备异常(内存不足)导致自动进入过载状态
  • 手工使设备进入过载

路由计算

路由器获取了全部链路状态信息之后,以自己为根节点采用SPF算法计算出最小生成树。
ISIS协议介绍

ISIS实验

ISIS协议介绍

  • R1和R2配置直连接口ip地址;
  • R1和R2配置ISIS实例1;
  • R1和R2的直连接口下配置ISIS实例1;
  • R1和R2的环回口配置IP地址和ISIS实例1;

配置

ISIS协议介绍

邻居

形成邻居关系

ISIS协议介绍
ISIS协议介绍

路由表

互相学习到对端环回口ip地址路由

ISIS协议介绍
ISIS协议介绍文章来源地址https://www.toymoban.com/news/detail-483339.html

到了这里,关于ISIS协议介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • openssl3.2/test/certs - 027 - server intermediate ca: sca-cert

    openssl3.2 - 官方demo学习 - test - certs // file my_openssl_linux_log_doc_027.txt // note openssl3.2/test/certs - 027 - server intermediate ca: sca-cert // -------------------------------------------------------------------------------- // 官方脚本 // -------------------------------------------------------------------------------- // openssl3.2/tes

    2024年01月25日
    浏览(37)
  • openssl3.2/test/certs - 025 - client intermediate ca: cca-cert

    openssl3.2 - 官方demo学习 - test - certs // file my_openssl_linux_log_doc_025.txt // note openssl3.2/test/certs - 025 - client intermediate ca: cca-cert // -------------------------------------------------------------------------------- // 官方脚本 // -------------------------------------------------------------------------------- // openssl3.2/tes

    2024年01月24日
    浏览(34)
  • JS报错Uncaught (in promise) TypeError: (intermediate value).format is not a function

    出现“date.format is not a function”错误是因为格式方法未在 JavaScript 中实现。 意思是说Format不是一个方法。去查了一下,发现是javascript已经去掉此方法了,要使用的话,需要添加第三方库。 要解决该错误,需要使用第三方包来格式化我们的日期,例如 moment 或 date-fns。 再或者

    2024年02月17日
    浏览(39)
  • UE4 4.27安卓打包pico插件总是失败 显示“……Intermediate\Android\arm64\gradle\rungradle.bat“ :app:assembleDebug

    问题:使用UE4 4.27.2版本打包apk时,无论我尝试各种安卓环境,总是打包提示以下问题。 二、配置过程: 1.我原先在b站检索学习了安卓环境,是没问题的。(我只学了前三个视频)虚幻4项目打包到安卓_哔哩哔哩_bilibili 2.检索了很多方法,比如改安卓环境,Android Studio的版本

    2024年01月17日
    浏览(26)
  • 详解ISIS动态路由协议

    和OSPF一样,ISIS也是一种基于 无类别链路状态(LS) 并使用 最短路径优先算法(SPF算法) 进行路由计算的一种IGP协议,基于OSI模型开发。ISIS最初是国际化标准组织ISO为它的无连接网络协议CLNP设计的一种动态路由协议。 为了提供对IP的路由支持,IETF在RFC1195中对ISIS进行了扩充

    2024年01月19日
    浏览(22)
  • 《网络协议》01. 基本概念

    title: 《网络协议》01. 基本概念 date: 2022-08-30 09:50:52 updated: 2023-11-05 15:28:52 categories: 学习记录:网络协议 excerpt: 互联网、网络互连模型(OSI,TCP/IP)、计算机通信基础、MAC 地址、ARP ICMP、IP 子网掩码、CIDR 表示方法、子网、超网、路由、网络 互联网 因特网、ISP、网络分类、上

    2024年02月05日
    浏览(34)
  • [SVA知识点二]: System verilog 断言(assert)的基本介绍

    举例介绍序列: 例1 序列seq1检查信号 “b” 在每个时钟上升沿都为高电平。如果信号 “b” 在任何一个时钟上升沿不为高电平,断言将失败。这相当于 “b == 1’b1”。 例2 例3:带参数的sequence 例4:带时序关系的sequence,在SVA 中时钟延时用符号 “##” 来表示,如 “##2” 表示

    2024年02月02日
    浏览(31)
  • [SVA知识点一]: System verilog 断言(assert)的基本介绍

    断言(System Verilog Assertion 简称SVA) 可以被放在RTL设计或验证平台中,方便在仿真时查看异常情况。一般在数字电路设计中都要加入断言,断言占整个设计的比例应不少于30%。断言通常被称为序列监视器或者序列检验器,是对设计应当如何执行特定行为的描述,是一种嵌入设

    2024年02月10日
    浏览(32)
  • HDLC协议的基本概念和帧

    一、HDLC简介 HDLC是一种面向比特的网络节点之间同步传输数据的数据链路层协议。使用点到点链路连接,这个网络中只有你我,中间没有第三个节点,所以在封装HDLC帧的时候,不需封装SD地址。 由于串行通信有着传输距离远、成本低的特点,所以远距离、超远距离的通信中较

    2023年04月09日
    浏览(26)
  • HTTPS协议详解:基本概念与工作原理

    个人主页: insist--个人主页​​​​​​ 本文专栏 :网络基础——带你走进网络世界 本专栏会持续更新网络基础知识,希望大家多多支持,让我们一起探索这个神奇而广阔的网络世界。 目录 一、HTTPS协议的基本概念

    2024年02月10日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包