ISIS(中间系统到中间系统)——基础
ISIS是一项通用的动态路由协议,其隶属于链路状态路由协议,最初运行与OSI七层的网络层,采用组播地址224.0.0.14和224.0.0.15两个组波段,由于其较高的拓展性与高速收敛,被大多数运营商网络所使用
起源
ISIS最初是由国际标准化组织(ISO)为CLNP网络设计的动态路由协议,也就是最早运行于OSI七层模型,它的设计目标是在大型网络中提供高效的路由选择和快速收敛。
1989年,IETF发布了RFC 1195,将ISIS扩展到支持TCP/IP网络,形成了集成ISIS(Integrated ISIS),这使得ISIS能够在IP网络中提供路由服务,与OSPF等协议竞争,其独特的设计也确定其通常被运用于运营商网络当中
NSAP与NET
NSAP(网络服务访问点)用于资源定位,而NET(网络实体名称)用于标识设备,两者组成成分大致相同,区别就在于其NET的SEL段为00,两者长度上都是可变的,长度范围在8B到20B
NSAP组成部分如下图,我们可以大致分为两部分,IDP和DSP

IDP(Initial Domain Part)相当于IP地址的主网络号
AFI:用于标识分配机构与地址格式
IDI:用于标识区域
DSP(Domain Specific Part)相当于IP地址的子网号和主机地址
HODSP:用于分割区域
SystemID:用于区分主机,全局只能有一个
SEL:服务类型
对于NET来说,其组成成分大致,将IDP和HODSP合起来组成Area Address,用于标识路由域和路由域中的区域,其重作用相当于OSPF中的区域编号,值得注意的是在ISIS中,最多可以配置3个不同的区域地址
IP地址与SystemID
没错IP地址与SystemID可以转换,IP是4B,SystemID是6B,于是将IP地址的十进制化每一个位置为3位,不够的在前面补零,在重新排列4个数字一起最后划分结果即为十进制的SystemID
比如192.168.1.1,经过变化后为192.168.001.001,然后重新规划,SystemID为1921.6800.1001
路由器等级与角色
L1
一级路由器,该路由器只具有一级路由器区域的路由,只会与同区域的L1或者L1/2路由器建立邻居,共同组成ISIS的普通区域
L1/L2
一二级路由器,该路由器具有整个ISIS域的路由,会和L1/2,同区域的L1和L2路由器建立连接
L2
二级路由器,该路由器具有二级路由器区域的路由,会和L2,L1/2路由器建立邻居关系,共同组成ISIS的骨干区域
DIS
指定路由器,与OSPF的DR有点像,其用于创建伪节点并负责LSP的生成,但其优先级为0时仍然参加选举,选举规则如下
1.比较接口优先级,高为优先
2.SNPA最大的优先(LAN网络为MAC,FM网络为DLCI)
3.SystemID大者最优
并且DIS具有抢占性,并且DIS具有更短的Hello间隔和更短的超时时间,是普通路由器的1/3
值得注意的是,由于ISIS中所有路由器建立的都是邻接关系,LSP定期泛洪到整个ISIS区域,而且有10s的检测机制,DIS的故障并不会影响整体网DIS提供伪节点,可将网络拓扑化简,减缓网络信息内容传递,节约设备性能
如图为伪节点的工作原理

网络类型
ISIS支持广播和P2P两种网络类型,对于不同网络类型,ISIS制订了不同的报文来进行其信息传递,而且P2P网络与广播类型网络中传输报文并不相同,邻居的建立也不尽相同
报文
将另外详解,本篇仅为提及
IIH(Hello)
按照网络类型分为点到点IIH和LAN IIH
而IIH又分为L1 IIH,L2 IIH,顾名思义,L1 IIH服务于L1路由器之间的邻居建立,L2 IIH服务于L2路由器之间的邻居建立,而P2P IIH服务于P2P网络中路由器之间的邻居建立
LSP
用于构建链路数据库,同样分为L1 LSP和L2 LSP,两类LSP具有相同结构
SNP
序列号报文,分为CSNP(完整序列号报文)和PSNP(部分序列号报文),依照路由器等级又可以细分为L1 CSNP,L2 CSNP,L1 PSNP,L2 PSNP
计时器
最大生存时间:1200s(timer lsp-max-age),可取2-65535s,但不建议修改,因为这个值要一致才有效果
LSP刷新时间:900s(timer lsp-refresh)
LSP连续生成间隔:5s(timer lsp-generation)
LSP传输间隔:50ms
CSNP发送间隔:10s(isis timer csnp)
总结
作为路由协议,其在华为设备的优先级是15,其与ospf相似但侧重点不同,被运营商广泛运用
本文介绍其对路由器标识使用的NET以及路由器的等级划分,简单提及了其报文和计时器,对于详细通讯过程没有太多介绍
相关文章:
ISIS(中间系统到中间系统)——基础
ISIS是一项通用的动态路由协议,其隶属于链路状态路由协议,最初运行与OSI七层的网络层,采用组播地址224.0.0.14和224.0.0.15两个组波段,由于其较高的拓展性与高速收敛,被大多数运营商网络所使用 起源 ISIS最初是由国际…...
DeepSeek 开源狂欢周(二)DeepEP深度技术解析 | 解锁 MoE 模型并行加速
在大模型时代,Mixture-of-Experts (MoE) 模型凭借其强大的容量和高效的计算能力,成为研究和应用的热点。然而,MoE 模型的训练和推理面临着巨大的专家并行通信挑战。近日,DeepSeek 开源了 DeepEP 项目,为解决这一难题提…...
Linux网络之传输层协议(UDP,TCP协议)
目录 重新认识端口号 端口号划分 netstat pidof UDP协议 UDP的特点 面向数据报 UDP的缓冲区 全双工和半双工 TCP协议 TCP的特点 TCP报头分析 源端口,目标端口,数据偏移(报文首部长度) 序号 确认号 窗口 6个标志位 ACK SYN …...
HTML第二节
一.列表 1.列表的简介 2.无序列表 注:1.ul里面只能放li,不能放标题和段落标签 2.li里面可以放标题和段落等内容 3.有序列表 4.定义列表 注:要实现上图的效果需要CSS 二.表格 1.表格介绍 注:1.th有额外的效果,可以…...
坐标变换及视图变换和透视变换(相机透视模型)
文章目录 2D transformationScaleReflectionShear(切变)Rotation around originTranslationReverse变换顺序复杂变换的分解 齐次坐标(Homogenous Coordinates)3D transformationScale&TranslationRotation Viewing / Camera t…...
Vue 表单优化:下拉框值改变前的确认提示与还原逻辑实现
在开发表单类功能时,我们经常需要对用户的重要操作进行确认提示,以避免误操作导致的数据丢失或错误。本文将通过一个实际案例,介绍如何在 Vue 中实现下拉框值改变前的确认提示,并在用户取消操作时还原原始值。 场景描述 在项目中…...
使用mermaid查看cursor程序生成的流程图
一、得到cursor生成的流程图文本 cursor写的程序正常运行后,在对话框输入框中输入诸如“请生成扫雷的代码流程图”,然后cursor就把流程图给生成了,但是看到的还是文本的样子,保留这部分内容待用 二、注册一个Mermaid绘图账号 …...
Flask 应用结构与模块化管理详细笔记
1. 代码结构优化:StructureA 最初的 Flask 项目结构适用于小型应用,但不适用于大型应用。为了改进代码结构,我们将 URL 管理应用拆分为多个模块。 1.1 StructureA 目录结构 StructureA |-- .flaskenv |-- app.py |-- views.py |-- templat…...
(八)趣学设计模式 之 装饰器模式!
目录 一、 啥是装饰器模式?二、 为什么要用装饰器模式?三、 装饰器模式的实现方式四、 装饰器模式的优缺点五、 装饰器模式的应用场景六、 装饰器模式 vs 代理模式七、 总结 🌟我的其他文章也讲解的比较有趣😁,如果喜欢…...
JVM线程分析详解
java线程状态: 初始(NEW):新创建了一个线程对象,但还没有调用start()方法。运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。 线程对象创建…...
毕业项目推荐:基于yolov8/yolo11的野生菌菇检测识别系统(python+卷积神经网络)
文章目录 概要一、整体资源介绍技术要点功能展示:功能1 支持单张图片识别功能2 支持遍历文件夹识别功能3 支持识别视频文件功能4 支持摄像头识别功能5 支持结果文件导出(xls格式)功能6 支持切换检测到的目标查看 二、数据集三、算法介绍1. YO…...
DeepSeek 助力 Vue3 开发:打造丝滑的页眉(Header)
前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…...
常用空间数据结构对比
空间数据结构是用来组织和查询多维空间数据的算法结构。它们在地理信息系统 (GIS)、计算机图形学、机器人导航、机器学习等领域非常重要。以下是几种常见空间数据结构的对比: 1. 四叉树(Quadtree) 适用场景:二维空间数据&#x…...
PHP应用程序设计:一个实际的例子(3)
使应用程序适用于网络 如果你正好计划用P H P开发你自己的服务程序(或者其他一些相似的东西),请重新思考一下。你可能已经对这些思想有些迷惑了:实现一个聊天服务程序意味着实现一个网络服务程序。这是我们实际上介绍给大家的东西…...
RabbitMQ 的介绍与使用
一. 简介 1> 什么是MQ 消息队列(Message Queue,简称MQ),从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已。 其主要用途:不同进程Process/线程T…...
spring boot 连接FTP实现文件上传
spring boot 连接FTP实现文件上传 maven: <!--ftp--><dependency><groupId>commons-net</groupId><artifactId>commons-net</artifactId><version>3.8.0</version></dependency>接口示例: ApiO…...
OpenCV给图像添加噪声
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 如果你已经有了一张干净的图像,并希望通过编程方式向其添加噪声,可以使用 OpenCV 来实现这一点。以下是一个简单的例子&a…...
Elasticsearch:使用阿里云 AI 服务进行嵌入和重新排名
作者:来自 Elastic Toms Mura 将阿里云 AI 服务功能与 Elastic 结合使用。 更多阅读,请参阅 “Elasticsearch:使用阿里 infererence API 及 semantic text 进行向量搜索”。 在本文中,我们将介绍如何将阿里云 AI 功能与 Elastics…...
管理后台环境配置
后端配置及启动 a. 软件安装 1. Java sdk 1.8 2. maven 3.6 3. intellij IDEA 2024 4. Visual C Redistributable 5. mongodb 7.0 6. mysql 8.0 双击安装:mysql-installer-community-8.0.41.0.msi 版本选择:Full,包括服务器和客户端 …...
数字IC低功耗后端设计实现之power gating和isolation技术
考虑低功耗设计需求,下图中间那个功能模块是需要做power domain的,即这个模块需要插MTCMOS。需要开启时,外面的VDD会和这个模块的LOCAL VDD形成通路,否则就是断开即power off状态。 这些低功耗设计实现经验,你真的懂了…...
【网络编程】几个常用命令:ping / netstat / xargs / pidof / watch
ping:检测网络联通 1. ping 的基本功能2. ping 的工作原理3. ping 的常见用法4. ping 的输出解释5. ping 的应用场景6. 注意事项 netstat:查看网络状态 1. netstat 的基本功能2. 常见用法3. 示例4. 输出字段解释5. netstat 的替代工具6. 注意事项 xargs&…...
sqlilab 46 关(布尔、时间盲注)
sqlilabs 46关(布尔、时间盲注) 46关有变化了,需要我们输入sort,那我们就从sort1开始 递增测试: 发现测试到sort4就出现报错: 我们查看源码: 从图中可看出:用户输入的sort值被用于查…...
视觉应用工程师(面试)
视觉应用工程师(面试) 1.自我介绍、会的技能、项目 2.相机和机械手调试过程 检查硬件,看软件驱动是否链接,调节相机和镜头保证能够识别这个物料,看接口和通讯是否正常,如:波特率,数…...
redis restore 命令的用法
Redis 的 RESTORE 命令用于将序列化后的数据(通常由 DUMP 命令生成)恢复为 Redis 的键值。它在数据迁移、备份恢复和跨实例同步等场景中非常有用。以下是详细说明: 作用 数据恢复 将 DUMP 命令生成的序列化数据重新加载到 Redis 中ÿ…...
当AI重构认知:技术狂潮下的教育沉思录
备注:文章未Deepseek R1模型辅助生成,如有不妥请谅解。 以下使原文: 我有三个娃,各间隔4到5岁,经历过搜索引擎,短视频,短剧,本身曾经也是教育专业出生,任何事务都有两面性…...
《Effective Objective-C》阅读笔记(下)
目录 内存管理 理解引用计数 引用计数工作原理 自动释放池 保留环 以ARC简化引用计数 使用ARC时必须遵循的方法命名规则 变量的内存管理语义 ARC如何清理实例变量 在dealloc方法中只释放引用并解除监听 编写“异常安全代码”时留意内存管理问题 以弱引用避免保留环 …...
穷举vs暴搜vs深搜vs回溯vs剪枝(典型算法思想)—— OJ例题算法解析思路
回溯算法的模版 void backtrack(vector<int>& path, vector<int>& choice, ...) {// 满⾜结束条件if (/* 满⾜结束条件 */) {// 将路径添加到结果集中res.push_back(path);return;}// 遍历所有选择for (int i 0; i < choices.size(); i) {// 做出选择…...
【Java项目】基于Spring Boot的校园博客系统
【Java项目】基于Spring Boot的校园博客系统 技术简介:采用Java技术、Spring Boot框架、MySQL数据库等实现。 系统简介:校园博客系统是一个典型的管理系统,主要功能包括管理员:首页、个人中心、博主管理、文章分类管理、文章信息…...
计算机毕业设计SpringBoot+Vue.js图书进销存管理系统(源码+文档+PPT+讲解)
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
算法-数据结构(图)-迪杰斯特拉最短逻辑算法( Dijkstra)
迪杰斯特拉算法(Dijkstras Algorithm) 是一种用于计算单源最短路径的经典算法,由荷兰计算机科学家 艾兹赫尔迪杰斯特拉(Edsger W. Dijkstra) 于1956年提出。它的主要目标是找到从图中的某个源节点到所有其他节点的最短…...
