今天继续给大家介绍IS-IS相关内容。本文主要内容是IS-IS分片扩展相关内容。
阅读本文,您需要有一定的IS-IS基础,如果您对此存在困惑,欢迎查阅我博客的其他内容,相信您一定会有所收获。
推荐阅读:
IS-IS详解(一)——IS-IS基础
IS-IS详解(二)——IS-IS邻居建立
IS-IS详解(三)——IS-IS 报文结构与功能
IS-IS详解(四)——IS-IS Hello报文详解
IS-IS详解(五)——IS-IS 三次握手与两次握手
IS-IS详解(六)——IS-IS LSP机制详解
IS-IS详解(七)——IS-IS LSP报文详解
IS-IS详解(八)——深入探究IS-IS DIS选举机制
IS-IS详解(九)——IS-IS 骨干区域与非骨干区域访问基础
IS-IS详解(十)——IS-IS 骨干区域与非骨干区域访问进阶
IS-IS详解(十一)——IS-IS 区域间防路由环路和次优路径
IS-IS详解(十二)——IS-IS 路由过载、管理标记和主机名映射
IS-IS详解(十三)——IS-IS 路由开销类型
IS-IS详解(十四)——IS-IS路由开销计算与外部路由引入
IS-IS详解(十五)——IS-IS 认证

一、IS-IS 分片扩展相关概念

当IS-IS要发布的链路状态协议数据报文(PDU,Protoccol Data Unit)中的信息量太大时,IS-IS路由器将会生成多个LSP分片,用来携带更多的IS-IS信息。IS-IS LSP分片由LSP ID中的LSP Number字段来进行标识。该字段长度为1Byte,因此,一个IS-IS进程最多可以产生256个LSP分片,携带的信息量有限。在RFC3786中规定,IS-IS可以配置虚拟System ID,并生成虚拟IS-IS的LSP报文来携带路由信息。

二、IS-IS分片扩展基本概念

1、初始系统(Originating System)

初始系统是实际运行IS-IS协议的路由器。在引入分片扩展机制后,允许一个单独的IS-IS进程模拟虚拟路由器一样发布LSP,而初始系统指的是真正的IS-IS路由器进程。

2、系统ID(Normal System ID)

初始系统的系统ID。

3、附加系统ID(Additionnal System ID)

虚拟系统的系统ID,由网络管理器统一分配,每个附件系统ID都允许生成256个扩展的LSP分片。

4、虚拟系统(Virtual System)

由附加系统ID标识的系统,用来生成LSP分片,这些分片在其LSP ID中携带附加系统ID。

三、IS-IS分片扩展工作原理

简单的说,IS-IS分片扩展其实就是当一台IS-IS路由器无法使用自己的LSP分片标识自身的路由时,“虚拟”出其他的虚拟IS-IS路由器,并为这些虚拟路由器分配系统ID,将一部分路由信息放在这些虚拟出来的IS-IS路由器的系统ID标识的LSP报文中,以此实现了LSP的容量扩展。在IS-IS分片扩展机制中,使用24号TLV(IS-Alias-ID),用来标识初始系统和虚拟系统的关系。
IS-IS协议允许一个初始系统最多虚拟出50个虚拟系统,而每个虚拟系统和初始系统自身都最多可以携带256个LSP分片,因此,通过分片扩展,一台IS-IS路由器最多可以产生13056个LSP分片。
在IS-IS路由器使能分片扩展功能后,如果存在由于LSP装满而丢失信息的情景下,系统会提醒重置IS-IS。重启IS-IS后,初始系统会尽最大能力装载路由信息,装不下的路由信息将放入虚拟系统的LSP中发送出去,并通过24号TLV来告知其他路由器此虚拟系统和初始系统之间的关系。

四、IS-IS分片扩展工作模式

IS-IS可以在两种模式下进行LSP分片。

模式一

如果网络中部分路由器型号比较老,不支持LSP分片扩展特性,可以使用这种模式。
在这种模式下,虚拟系统参与路由SPF计算,初始系统发布的LSP中携带了到每个虚拟系统的链路信息。相应的,虚拟系统发布的LSP中也包好初始系统的链路信息。这样,在网络中虚拟系统看起来与初始系统相连的真实路由器是一样的。
假设有如下所示的网络拓扑:

如果路由器A开启了分片扩展功能,则在路由器B看来,整个的网络拓扑是这样的:

在上图中A1、A2和A3都是A的虚拟系统。此时,路由器A将一部分路由信息放到A1、A2和A3中向外发送。B认为有三台独立的路由器,并进行正常的路由计算。此时,A到各个虚拟系统的开销为0,因此B到A和A的各个虚拟系统之间的开销值相等。
这种方式是为了兼容不支持分片扩展的老版本所做的一个过滤模式,在老版本的路由器中,可能不能识别IS-Alias ID TLV,因此虚拟系统的LSP必须类似一个真实的IS-IS路由器发出的实际报文。
如果配置这种模式,一定要注意虚拟系统的LSP中包含和原LSP中相同的区域地址和过载标志位。如果还有其他特性的TLV,也保持一致。虚拟系统携带的邻居信息指向初始系统,metric为最大值减1,

模式二

此模式用于网络中所有路由器都支持LSP分片扩展的情况,所有的IS-IS路由器都可以识别IS-Alias-ID TLV的内容,并作为计算SPF生成树和路由的依据。
在此模式下虚拟系统不参与路由计算,网络中所有路由器都可以区分虚拟系统和初始系统,也可以借助IS-Alias-ID TLV识别虚拟系统和初始系统之间的关系。其他路由器在计算路由时,将虚拟系统的路由信息当作初始系统的路由信息来看待。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200/article/details/120070619

IS-IS详解(十六)——IS-IS 分片扩展相关推荐

  1. element布局容器大小_Flutter完整开发实战详解(十六、详解自定义布局实战)

    本篇将解析 Flutter 中自定义布局的原理,并带你深入实战自定义布局的流程,利用两种自定义布局的实现方式,完成如下图所示的界面效果,看完这一篇你将可以更轻松的对 Flutter 为所欲为. 文章汇 ...

  2. linux 命令详解 十六

    十七. xargs命令: 该命令的主要功能是从输入中构建和执行shell命令.            在使用find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给e ...

  3. 数字音频总线A2B开发详解十六(A2B-一主一从:ADAU1701作为全新Slave板的DSP)

    作者的话 继续A2B的开发,我做了一块以ADAU1701为DSP的Slave板,这颗DSP可以做2进4出,也就是说,输入这块,这个Slave不仅能播Master过来的音乐,还可以自己进2路输入,输出则 ...

  4. IgH详解十六、双主站

    IgH支持双主站,只需要在配置文件中,配置双主站的MAC地址即可. 启动主站后,可以看到两个主站. IgH分别创建了EtherCAT0和EtherCAT1两个设备,分别对应双主站. 根据主站个数初始化 ...

  5. TypeScript详解十六:类型声明(declare)

    目录 前言 一.类型声明的作用? 1.1 declare 关键字 1.2 示例 二.常见的几种类型声明 2.1 普通类型声明 2.2 外部枚举 2.3 命名空间 三.类型声明文件 3.1 模拟类型声明 ...

  6. 基于easyui开发Web版Activiti流程定制器详解(六)——Draw2d的扩展(一)

     题外话: 最近在忙公司的云项目空闲时间不是很多,所以很久没来更新,今天补上一篇! 回顾: 前几篇介绍了一下设计器的界面和Draw2d基础知识,这篇讲解一下本设计器如何扩展Draw2d. 进入主题 ...

  7. 基于easyui开发Web版Activiti流程定制器详解(六)——Draw2d的扩展(三)

    题外话: 最近在忙公司的云项目空闲时间不是很多,所以很久没来更新,今天补上一篇! 回顾: 前几篇介绍了一下设计器的界面和Draw2d基础知识,这篇讲解一下本设计器如何扩展Draw2d. 进入主题: 先 ...

  8. 元宇宙技术普及读本重磅问世 详解十大技术 把脉数字经济 前瞻产业布局

    转自 元宇宙共识圈 王恩东.倪光南.沈昌祥.郑纬民--四位中国工程院院士联袂力荐 倪健中.姚前.李正茂.朱嘉明.肖风.敖然等权威专家一致推荐 汇聚元宇宙技术专家及产业一线佼佼者倾力撰写 元宇宙技术普及 ...

  9. Windows 网络服务架构系列课程详解(六) ---利用NLB群集实现WEB服务器的可靠性...

    Windows 网络服务架构系列课程详解(六) -----利用NLB群集实现WEB服务器的可靠性   实验背景: 在大型网络环境中存在这样一种情景,公司内部的FTP服务器出现故障或脱机了,而且不能快速 ...

  10. PayPal 开发详解(六):下载paypal立即付款SDK 并编译打包

    PayPal 开发详解(六):下载paypal立即付款SDK 并编译打包 1.下载PayPal REST SDKs,地址:https://developer.paypal.com/docs/api/r ...

最新文章

  1. cv2.error: OpenCV(4.0.0): dst.data == (uchar*)dst_ptr in function 'cvShowImage'
  2. 进制转换Visual Basic—进制转换规则
  3. VSCODE更改文件时,提示:EACCES: permission denied的解决办法(ubuntu16.04虚拟机)
  4. centos7 安装rabbitMq
  5. python下的所有文件_python批量复制文件夹下所有文件大小
  6. php thumbs.db,window_Win8系统删除thumbs.db文件的方法,  最近有Win8系统用户反映, - phpStudy...
  7. 运行第一个 docker image 并在浏览器中查看
  8. 通过uwsgi+nginx启动flask的python web程序
  9. android菜单详解四:子菜单
  10. JPA getValidationMode()
  11. mini车f和r的区别_雪铁龙也造出了“老头乐”,外观复古时尚,叫板宏光MINI?...
  12. 我们的年代《音乐天堂》经典回顾
  13. Android+按键精灵代码,安卓按键精灵怎么编写脚本 编写脚本教程
  14. VBA函数 find
  15. 跟着杨中科学习asp.net之html
  16. JAVA——斐波那契数列(递归)
  17. 使用Kotlin语言两年后,我有话要说
  18. Infer的安装及基本使用
  19. 香港一卡通攻略:取款省4倍手续费
  20. Android studio 设置豆绿色

热门文章

  1. NLP学习—14.Pointer Generator Network(指针)及代码实现
  2. 深度学习TF—1.TensorFlow2基本操作
  3. Prezi 7 大图形设计技巧,让视觉思维落地生根
  4. jupyter notebook 内核挂掉
  5. python学生信息管理
  6. Scikit-learn:分类模型评估Model evaluation
  7. pandas小记:pandas汇总统计函数
  8. python的作用域分别有几种_Python中作用域的深入讲解
  9. docker没有下载完全_一个时代的结束:苹果正式关闭iTunes,但歌曲下载并没有完全消失...
  10. 7-14 到底是不是太胖了 (10 分)