IS-IS协议

IS-IS协议介绍

IS-IS(Intermediate System to Intermediate System)协议是一种链路状态的内部网关协议(IGP),用于在同一个自治系统(Autonomous System, AS)内部的路由器之间交换路由信息。IS-IS协议是ISO(国际标准化组织)为实现其OSI(开放系统互联)模型而设计的,但它也被广泛用于IP网络中。百度百科:中间系统到中间系统协议

概述

IGP协议:链路状态协议,优先级15,度量值cost(与带宽有关)默认是10,可以修改。

工作在数据链路层

level 1组播MAC:0180-C2000-0014

level2主播MAC:0180-C2000-0015

工作原理

IS-IS的工作原理是基于链路状态协议(Link-State Protocol)与OSPF相似。

1、路由器角色和链路状态数据库(LSDB)

每个路由器在IS-IS中称为“中间系统”(Intermediate System,简称IS)

每个路由器维护一个链路状态数据库(LSDB),其中存储该路由器与其他路由器之间的链路状态信息。LSDB的内容主要包括网络中各路由器的连接状态。

2、Hello协议与邻居发现

1、路由器发送Hello报文来发现邻居路由器。这些Hello报文通过网络中相邻的路由器进行交换,来建立邻居。

每个IS-IS路由器都会定期发送Hello报文,通过这些报文来确认自己与邻居的连接是否正常,以及交换相关的配置参数,比如网络类型,hello时间间隔等等。

3、链路状态信息的传播

1、一旦邻接关系建立,每个路由器与邻居之间的链路信息(包括链路状态、带宽、延迟等)通过链路状态通告(LSA)传递给邻居。LSA是一种包含链路状态的控制报文,路由器通过LSA来通告网络中的其他设备他的接口和状态。

2、LSA是通过网络传播的,一旦LSA到达网络中其他路由器,所有路由器都会更新各自的LSDB。

4、SPF算法(最短路径优先)

1、路由器利用SPF算法来根据LSDB计算到达各个目标的最短路径。每个路由器都会根据自己拥有的LSDB生成一张路由表。

2、SPF算法的基本思想是基于路由器之间的链路信息计算最短路径,计算结果会被用来更新路由表,确定转发数据包的路径。

5、路由更新

当网络拓扑发生变化时,相关的LSA将会传播更新,所有路由器的LSDB将会进行更新,SPF算法将会重新计算路由表。

IS-IS协议网络实体名

介绍

在IS-IS协议中,网络中各个设备的实体通常根据他们在协议中的角色和身份来区分。

Level 1 Intermediate System (L1 IS):

L1 IS仅在单个区域内运行,负责在该区域内传播路由信息。它们不参与区域间的路由计算。
Level 2 Intermediate System (L2 IS):

L2 IS负责在不同区域之间传播路由信息,它们可以跨越多个区域进行路由计算。
Level 1-2 Intermediate System (L1-2 IS):

L1-2 IS同时具备L1和L2的功能,它们在本区域内作为L1路由器,在区域间作为L2路由器。
End System (ES):

在IS-IS协议的上下文中,ES指的是最终设备或主机,它们不是路由器,但可以是路由信息的目的或源。
Area Border Router (ABR):

ABR是连接不同IS-IS区域的路由器。在IS-IS中,ABR可以是L1-2路由器,它们在连接的区域内作为L1路由器,在区域间作为L2路由器。

路由器分类

Level-1 :区域内部路由器,维护本区域的路由信息,建立邻接关系,要求区域号必须一致
Level-2 :骨干路由器,维护自己区域和所有区域的路由信息;建立邻接关系,区域号可以相同,也可以不相同
Level 1-2 :默认类型,与OSPF的ABR类似

邻接关系建立

同一层次:只有同一层次(L1/L1,L2/L2/L1-2)的相邻路由器才有可能成为邻接
同一区域:对于Level-1路由器来说,Area ID必须一致
同一网段:链路两端IS-IS接口的地址必须处于同一网段(默认情况下)
相同的网络类型:链路两端IS-IS接口的网络类型( P2P/broadcast)必须一致
相同的MTU值:默认为1500
认证相同:如果做了认证,则两端的认证必须相同
接口未设置为silent-interface
在 P2P网络中 ,system-id 长度(6个字节)要一致,最大区域地址数(Max Area = 3),要相同

ISIS邻居建立不成功的原因

两台L1路由器,只有它们的Area ID一致才能建立邻居

1L1路由器和1L1/L2路由器,只有它们的Area ID一致才能建立邻居

建立ISI邻居的network-entity地址是否有冲突(类似于OSFProuter-id被设置为一样的)

建立ISIS邻居的认证参数不一致

建立ISIS邻居接口的MTU 值不一致

接口被设置为silent

                ​​​​​​​        ​​​​​​​        ​​​​​​​    p2p HelloTimer 10, DeadTimer 30

Hello时间不一致         广播DIS HelloTimer 3 DeadTimer 10

                                   广播非DIS HelloTimer 10, DeadTimer 30

报文类型

IS-IS报文是直接封装在数据链路层的帧结构中的。PDU可以分为两个部分,报文头和变长字段部分。其中头部又可分为通用头部和专用头部。对于所有PDU来说,通用报头都是相同的,但专用报头根据PDU类型不同而有所差别。

  • Intradomain Routing Protocol Discriminator:域内路由选择协议鉴别符,设置为0x83。
  • Length Indicator:PDU头部的长度(包括通用头部和专用头部),以字节为单位。
  • Version/Protocol ID Extension:版本/协议标识扩展,设置为1(0x01)。
  • ID Length:NSAP地址或NET中System ID区域的长度。值为0时,表示System ID区域的长度为6字节。值为255时,表示System ID区域为空(即长度为0)。
  • R(Reserved):保留,设置为0。
  • PDU Type:PDU的类型。IS-IS PDU共有9种类型,详细信息请参考下表。
  • Version:设置为1(0x01)。
  • Maximum Area Address:支持的最大区域个数。设置为1~254的整数,表示该IS-IS进程实际所允许的最大区域地址数;设置为0,表示该IS-IS进程最大只支持3个区域地址数。

IS-IS命令介绍

启用IS-IS协议
router isis [process-id]  process-id是IS-IS进程的标识符设置路由器ID
net [ISIS-NET]    其中【ISIS-NET】是一个点分十进制的地址,用于定义路由器的网络实体设置密码认证
ip anthentication mode [mode]    其中[mode]可以是md5或者simple
isis password [password] [process-id] 其中【password】是设置的密码设置hello参数
isis hello [muliplier] [interval] [process-id]    其中[multiplier]和[interval]分别为设置hello包的时间间隔和乘数设置metric值
metric [value]    其中[value]是设置的metric值,用于影响路由选择在接口启用IS-IS
ip router isis [process-id]    该命令需要在接口妹子模式下执行设置优先级
priority [value] [process-id]    其中[value]是设置的优先级值,用于决定是否成为区域的DIS

---------------------------------------------------------------------------------------------------------------------------------亲爱的读者朋友们,我在发布的博客中可能存在一些不足之处,如果您发现了任何错误或有改进建议,恳请不吝赐教,您的反馈对我非常重要。谢谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/64371.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

QoS分类和标记

https://zhuanlan.zhihu.com/p/160937314 1111111 分类和标记是识别每个数据包优先级的过程。 这是QoS控制的第一步,应在源主机附近完成。 分组通常通过其分组报头来分类。下图指定的规则仔细检查了数据包头 : 下表列出了分类标准: 普通二…

电机控制杂谈(23)——共模电压与轴电流

1.共模电压与轴电流的关系和危害 对于电压源换流器,由于功率半导体器件的快速开关和PWM调制方案,将在电机定子绕组的中性点(N)和接地点(O)之间产生高频共模电压(Common-mode voltage&#xff0…

FPGA设计-使用 lspci 和 setpci 调试xilinx的PCIe 问题

目录 简介 lspci lspci-TV lspci-vvv 注意事项 lspci -vs lspci -vvvs 设置pci 识别setpci中的寄存器 setpci -s 00:01.0 d0.b42 简介 lspci 和 setpci 命令在 Linux 发行版中本身可用。该命令具有各种级别的输出,并提供非常有用的时间点查看 PCI 总线…

vue+node+mysql8.0,详细步骤及报错解决方案

1.下载需要安装的插件 下载express npm install express下载cors,用于处理接口跨域问题 npm install cors下载mysql npm install mysql 2.配置服务器 可以在vue项目的src同级创建server文件夹(这里的位置可随意选择) 然后依次创建&#…

并发修改导致MVCC脏写问题

并发修改导致MVCC脏写问题 一、概要 1.1 业务场景 数据库表结构设计: 一个主档数据,通过一个字段,逗号分隔的方式去关联其他明细信息的id。 如主档数据A,有3条明细数据与A关联,其id分别是1,2,3,那么其存…

SSE(Server-Sent Events)主动推送消息

说明 使用Java开发web应用,大多数时候我们提供的接口返回数据都是一次性完整返回。有些时候,我们也需要提供流式接口持续写出数据,以下提供一种简单的方式。 SSE(Server-Sent Events) SSE 是一种允许服务器单向发送事…

Java四大内部类之局部内部类、匿名内部类

目录 一、局部内部类 二、匿名内部类 基于接口的匿名内部类 基于类的匿名内部类 三、匿名内部类的实践 类的五大成员:属性、方法、构造器、代码块、内部类 内部类的分类 定义在外部类局部位置上(比如说方法内): 局部内部类&…

请求go web后端接口 java安卓端播放视频

前端代码 添加gradle依赖 implementation com.squareup.retrofit2:retrofit:2.9.0 implementation com.squareup.retrofit2:converter-gson:2.9.0 添加访问网络权限 <uses-permission android:name"android.permission.INTERNET" />允许http 请求请求 andro…

ARMS 用户体验监控正式发布原生鸿蒙应用 SDK

作者&#xff1a;羿莉 背景 对企业数据进行敏感数据扫描和保护可以提升企业或组织的数据安全。一方面敏感数据可能包括个人身份信息、财务记录、医疗记录等&#xff0c;定期扫描这些数据可以防止未经授权的访问和泄露。 另一方面&#xff0c;许多国家和地区都有关于数据保护的…

CSS学习记录14

CSS不透明度 opacity属性指定元素的不透明度/透明度。opacity属性的取值范围为0.0 ~ 1.0。 值越低&#xff0c;越透明&#xff1a; img {opacity: 0.5; } opacity属性通常与:hover选择器一同使用&#xff0c;这样就可以在鼠标悬停时更改不透明度&#xff1a; img {opacity: 0…

【YashanDB知识库】如何处理yasql输入交互模式下单行字符总量超过限制4000字节

现象 在yasql执行sql语句后报错&#xff1a;YASQL-00021 input line overflow (>4000 byte at line 4) 原因 yasql在交互模式模式下单行字符总量限制4000字节&#xff0c;超出该限制即报错。 交互式模式下&#xff0c;yasql会显示一个提示符&#xff0c;通常是 SQL>…

为何ZLG致远电子要推出LGA嵌入式核心板?

LGA嵌入式核心板究竟有什么好&#xff1f;能让ZLG致远电子陆续推出了5个系列12个型号的LGA嵌入式核心板。 到目前为止&#xff0c;ZLG致远电子一共推出了M1106/M1107、M1126、M6Y2C、 A6Y2C、MR6450等5个系列&#xff0c;共12个型号的LGA形态的嵌入式核心板&#xff0c;涵盖了A…

C++小白实习日记——Pollnet,Efvi,UDP,数据类型转换(下)

内容太多了&#xff0c;这篇记录UDP接收端 一&#xff0c;UDP接收端接收数据 有了pollnet这个开源项目的支持&#xff0c;接收端的步骤为&#xff1a;1&#xff09;初始化硬编码的参数&#xff1a;接口&#xff0c;IP和端口 2&#xff09;创建接收文件.csv 3&#xff09;读…

【ROS2】坐标TF入门

1、简介 1)定义: TF(TransForm)是用于坐标系管理的工具,它提供了快速、高效的坐标变换和时间同步功能。 2)坐标系 坐标系:在机器人系统中,存在多个坐标系,如基坐标系(Base Frame)、世界坐标系(World Frame)、工具坐标系、工件坐标系等。这些坐标系之间的关系在机…

剑指Offer 03比特位计数

只是记录 题目链接 题目链接 自己想出来的 第一种解法 思路简述 遍历[0,n]之间的数字&#xff0c;对于每一个数字按照二进制的方式展开&#xff0c;判断最低位置是否为1&#xff0c;若为1则1&#xff0c;反之不加&#xff0c;直到该数字等于0就停止。 public static int[] …

某j 全局控制输入框不能输入表情符

在FormItem.vue文件中的function handleRules()添加两处表情正则校验&#xff0c;代码如下 效果&#xff1a; function handleRules(): ValidationRule[] {const { rules: defRules [], component, rulesMessageJoinLabel, label, dynamicRules, required } props.schema;if…

java中File类

1、介绍 File类定义了一些与平台无关的方法来操作文件&#xff0c;可以通过调用File类中的方法&#xff0c;实现创建、删除、重命名文件等操作。File类的对象主要用来获取文件本身的一些信息&#xff0c;如文件所在的目录、文件长度、文件读写权限等。数据流可以将数据写入到文…

Linux高性能服务器编程 | 读书笔记 | 10. 高性能I/O框架库Libevent

10. 高性能I/O框架库Libevent Linux服务器程序必须处理三类事件&#xff08;I/O、信号和定时事件&#xff09;&#xff0c;在处理这三类事件时需要考虑以下问题&#xff1a; **统一事件源。**统一处理这三类事件既能使代码简单易懂&#xff0c;又能避免一些潜在的逻辑错误。实…

Javaweb web后端maven介绍作用安装

自动导入到这个项目 src是源代码 main主程序&#xff0c;核心代码 java是Java源代码 resources是项目配置文件 test测试相关的 maven概述 介绍 依赖在本地仓库查找&#xff0c;如果本地仓库有&#xff0c;用本地仓库的依赖&#xff0c;本地没有&#xff0c;连接中央仓库&…

wazuh-modules-sca-scan

sca模块主函数wm_sca_main -> wm_sca_start 检查policy文件中的每一个项目wm_sca_check_policy static int wm_sca_check_policy(const cJSON * const policy, const cJSON * const checks, OSHash *global_check_list) {if(!policy) {return 1;}const cJSON * const id c…