一、IS-IS协议简单介绍

和OSPF一样,IS-IS也是一种基于链路状态并使用最短路径优先算法进行路由计算的一种IGP协议。IS-IS最初是国际化标准组织ISO为它的无线接网络协议CLNP设计的一种动态路由协议。
由于IS-IS的简便性及扩展性强的特点,目前在大型ISP的网络中被广泛地部署。
IS-IS属于内部网关协议,用于自治系统内部。IS-IS是一种链路状态协议,使用最短路径优先算法进行路由计算
园区网特点:

  1. 应用型网络,主要面向企业网用户。
  2. 路由器数量偏少,动态路由的LSDB库容量相对偏少,三层路由域相对偏少。
  3. 有出口路由的概念,对内部外部路由划分敏感。
  4. 地域性跨度不大,带宽充足,链路状态协议开销对带宽占用比偏少。
  5. 路由策略和策略路由应用频繁多变,需要精细化的路由操作。
  6. OSPF的多路由类型(内部/外部),多区域类型(骨干/普通/特殊),开销规则优良(根据带宽设定),网络类型多样(最多五种类型)的特点在园区网得到了极大的发挥。

骨干网特点:

  1. 服务型网络,由ISP(互联网服务提供商)组建,并为终端用户提供互联服务。
  2. 路由调度占据绝对统治地位,路由器数量庞大。
  3. 架构层面扁平化,要求IGP作为基础路由为上层BGP协议服务。
  4. LSDB规模宏大,对链路收敛极度敏感,线路费用高昂。
  5. 追求简单高效,扩展性高,满足各种客户业务需求(IPV6/IPX)。
  6. IS-IS的快速算法(PRC得到加强),简便报文结构(TLV),快速邻居关系建立,大容量路由传递(基于二层开销低)等一系列特点在骨干网有着天然的优势。

路由计算过程:

1、邻居关系建立
邻居关系建立主要是通过HELLO包交互并协商各种参数,包括电路类型(level-1/level-2),Hold time,网络类型,支持协议,区域号,系统ID,PDU长度,接口IP等。
2、链路信息交换
与OSPF不同,ISIS交互链路状态的基本载体不是LSA(link state advertisement),而是LSP(link state PDU);交互的过程没有OSPF协议那样经历了多个阶段,主要是通过CSNP和PSNP两种协议报文来同步,请求以及确认链路状态信息(承载的是链路状态信息摘要),而链路状态信息的详细拓扑和路由信息是由LSP报文传递。
3、路由计算
SPF计算和OSPF基本一样的,但ISIS算法分离了拓扑结构和IP网段,加快了网络收敛速度。

IS-IS路由器的三种类型

1、Level-1路由器(只能创建level-1的LSDB)
Level-1只能与属于同一区域的Level-1和Level-1-2路由器形成邻居关系,只负责维护Level-1的链路状态数据库,该LSDB包含本区域内的路由信息,到本区域外的报文转发给最近的Level-1-2路由器。Level-1路由器只可能建立Level-1的邻接关系。
2、Level-2路由器(只能创建level-2的LSDB)
Level-2路由器负责区域间的路由,它可以与相同或者不同区域的Level-2路由器或者不同区域的Level-1-2路由器形成邻居关系。Level-2路由器维护一个Level-2的LSDB,该LSDB包含区域间的路由信息。Level-2路由器只可能建立Level-2的邻接关系。
3、Level-1-2路由器(路由器默认的类型,能同时创建level-1和level-2的LSDB)
同时属于Level-1和Level-2的路由器称为Level-1-2路由器。Level-1-2路由器维护两个LSDB,Level-1的LSDB用于区域内路由,Level-2的LSDB用于区域间路由。
Level-1-2路由器可以与同一区域的Level-1形成Level-1邻居关系,也可以与其他区域的Level-2和Level-1-2路由器形成Level-2的邻居关系。
不同区域间,只能建立Level-2的邻接关系.。

IS-IS支持的网络类型:
1、点对点网络类型(P2P)。
2、广播多路访问网络类型(Broadcast Multiple Access)。
3、在帧中继等特殊环境下,可以通过创建子接口支持P2P的网络类型。

在P2P链路上,分为两次握手机制和三次握手机制:
两次握手只要路由器收到对端发来的Hello报文,就单方面宣布邻居为up状态,建立邻居关系,不过容易存在单通风险。
通过三次发送P2P的IS-IS Hello PDU最终建立起邻居关系,与广播链路邻居关系的建立情况相同。
在广播链路上,使用LAN IIH报文执行三次握手建立邻居关系:
当收到邻居发送的Hello PDU报文里面没有自己的system ID的时候,状态机进入initialized。
只有收到邻居发过来的Hello PDU有自己的system ID才会up,排除了链路单通的风险。
广播网络中邻居up后会选举DIS(虚节点),DIS的功能类似OSPF的DR(指定路由器)。
ISIS TLV:
TLV的含义是:类型(TYPE),长度(LENGTH),值(VALUE)。实际上是一个数据结构,这个结构包含了这三个字段。
使用TLV结构构建报文的好处是灵活性和扩展性好。采用TLV使得报文的整体结构固定,增加新特点只需要增加新TLV即可。不需要改变整个报文的整体结构。
网络拓扑结构和路由信息用TLV结构表现使得报文的灵活性和扩展性得到了极大的发挥。
LSP PDU(Link State Protocol PDU):

  • LSP类似于OSPF的LSA,承载的是链路状态信息,包含了拓扑结构和网络号。
  • Level-1 LSP由Level-1 路由器传送。
  • Level-2 LSP由Level-2 路由器传送。 Level-1-2 路由器则可传送以上两种LSP。
  • LSP 报文中包含了两个重要字段是ATT字段、IS-Type字段。其中ATT字段用于标识该路由是L1/L2路由器发送的,IS-Type用来指明生成此LSP的IS-IS类型是Level-1还是Level-2IS-IS。
  • LSP的刷新间隔为15分钟;老化时间为20分钟。但是一条LSP的老化除了要等待20分钟外,还要等待60秒的零老化时延;LSP重传时间为5秒。
    SNP PDU(Sequence Number PDU):
  • CSNP(Complete Sequence Number PDU)包括LSDB中所有LSP的摘要信息,从而可以在相邻路由器间保持LSDB的同步。
  • PSNP(Partial Sequence Number PDU)包含部分LSDB中的LSP摘要信息,能够对LSP进行请求和确认。
  • CSNP 类似于OSPF的DD报文传递的是LSDB里所有链路信息摘要。PSNP类似于OSPF的LSR或LSAck报文用于请求和确认部分链路信息。
    IS-IS的计算特点:
  • 在本区域内路由器第一次启动的时候执行的是Full-SPF算法。
  • 后续收到的LSP更新,如果是部分拓扑的变化执行的iSPF计算。
  • 如果只是路由信息的变化,执行的就是PRC计算。
  • 由于采用拓扑与网络分离的算法,路由收敛速度得到了加强。
    ISIS路由计算的开销方式:
    Narrow模式(设备默认模式开销都是10,手工配置接口开销取值范围为1~63)。
    Wide模式(设备默认模式开销都是10,手工配置接口开销取值范围是1~16777215)。

    进程下加入auto-cost enable命令,Narrow模式和Wide模式都会参考接口带宽大小计算开销值,只是参考准则有少许差异。
    IS-IS整体拓扑:
  • 为了支持大规模的路由网络,IS-IS在自治系统内采用骨干区域与非骨干区域两级的分层结构。一般来说,将Level-1路由器部署在非骨干区域,Level-2路由器和Level-1-2路由器部署在骨干区域。每一个非骨干区域都通过Level-1-2路由器与骨干区域相连。
  • 拓扑中为一个运行IS-IS协议的网络,它与OSPF的多区域网络拓扑结构非常相似。整个骨干区域不仅包括Level-2的所有路由器,还包括Level-1-2路由器。
  • Level-1-2级别的路由器可以属于不同的区域,在Level-1区域,维护Level-1的LSDB,在Level-2区域,维护Level-2的LSDB。
    拓扑所体现的IS-IS与OSPF不同点:
    在OSPF中,每个链路只属于一个区域;而在IS-IS中,每个链路可以属于不同的区域;
    在IS-IS中,单个区域没有物理的骨干与非骨干区域的概念;而在OSPF中,Area0被定义为骨干区域;
    在IS-IS中,Level-1和Level-2级别的路由器分别采用SPF算法,分别生成最短路径树SPT;在OSPF中,只有在同一个区域内才使用SPF算法,区域之间的路由需要通过骨干区域来转发。

Level-1路由器的路由特点:

  • 只拥有Level-1的链路状态数据库。
  • 其链路状态数据库中只有本区域路由器LSP。
  • 其路由表里没有其他区域的路由信息。
  • 其路由表里都有一条默认路由,下一条是指向到Level-1-2路由器。

Level-2路由器的路由特点:

  • Level-2路由器只有Level-2的链路状态数据库。
  • 其LSDB中有骨干区域路由器的LSP,但是没有Level-1路由器产生的LSP。
  • 由表里面有整个网络的路由信息。
    Level-1-2路由器的路由特点:
  • Level-1-2路由器同时拥有Level-2和Level-1的链路状态数据库。
  • Level-1数据库包含本区域的LSP,Level-2数据库包含骨干区域LSP。
  • 在自己产生的Level-1的LSP中设置了ATT比特位为1。
  • 路由表里面有整个网络的路由信息。

    扩展性:
    ISIS协议任何路由信息都使用TLV传递,结构简单,易于扩展,如对IPv6的支持只增加2个TLV就解决了。且ISIS本身对IPX等协议是支持的。OSPF协议本身是为IP特定开发的,支持IPv4和IPv6的OSPF协议是两个独立的版本(OSPFv2和OSPFv3)。
    路由算法:
    ISIS协议区域内某个节点上的网段发生变化时,触发的是PRC算法,收敛比较快,计算路由的报文开销也比较小。OSPF协议由于网络地址参与了拓扑的构建,在区域内当网段地址改变触发的是i-spf算法,相对来说过程繁琐复杂些。
    相比OSPF,IS-IS的优势是什么?
    答:IS-IS报文结构简便,路由承载能力更强,路由算法更优良,扩展性更强。

HCNP学习笔记-路由交换网络(2)-IS-IS协议原理及配置相关推荐

  1. HCNP学习笔记-路由交换网络(一)

    一.链路状态路由协议OSPF基础技术 RIP是基于距离矢量算法的路由协议,应用在大型网络中存在收敛速度慢.度量值不科学.可扩展性差等问题. 大型网络发生的变化: 网络规模较大 网络可靠性要求提高 网络 ...

  2. HCNP学习笔记之OSPF邻接关系的建立和LSDB同步

    HCNP学习笔记之OSPF协议原理及配置4-邻接关系的建立和LSDB同步 本文转自:https://blog.51cto.com/4625416/1678913 进入ExStart状态后,广播和NBM ...

  3. C语言学习笔记---001C语言的介绍,编译过程原理,工具等

    C语言学习笔记---001C语言的介绍,编译过程原理,工具等 创梦技术交流平台:资源下载,技术交流,网络赚钱: 交流qq群:1群:248318056 2群:251572072 技术交流平台:cre.i ...

  4. 计算机网络学习笔记(2. 什么是网络协议)

    计算机网络学习笔记(2. 什么是网络协议) 1. 协议是计算机网络有序运行的重要保证 硬件(主机,路由器,通信链路等)是计算机网络的基础 计算机网络中的数据交换必须遵守事先约定好的规则 如同交通系统 ...

  5. 国产达梦数据库学习笔记(一):NeoKylin7.0安装及配置与常用基础命令

    国产达梦数据库学习笔记(一):NeoKylin7.0安装及配置与常用基础命令 以VMware Workstation Pro 15环境下的NeoKylin7.0与DM8为例 中标麒麟系统NeoKyli ...

  6. 华为路由与交换 MPLS 协议原理与配置

    本次博客主要介绍MPLS协议原理与配置 MPLS(英语:Multi-Protocol Label Switching,缩写为MPLS)  多协议标签交换 90年代初,互联网流量快速增长,而由于当时硬件 ...

  7. HCNP学习笔记之OSPF协议原理及配置1-基础知识

    7.25日在济南博赛参加了HCNP的培训,感觉和HCDA不同,内容偏重理论,多而杂,现整理一下,和大家分享,也希望得到高手的指点. 先说下学习的感想和给初学者的建议: 学习的过程本身对自己就一种锻炼, ...

  8. 多人网络游戏服务器开发基础学习笔记 II: 帧同步 | 游戏客户端预测原理分析 | FPS 游戏状态同步

    这篇是对书本 网络多人游戏架构与编程 的学习第二篇(第一篇:多人网络游戏服务器开发基础学习笔记 I:基本知识 | 游戏设计模式 | 网游服务器层次结构 | 游戏对象序列化 | 游戏 RPC 框架 | ...

  9. Orleans[NET Core 3.1] 学习笔记(三)( 3 )服务端配置

    服务端配置 Silo通过SiloHostBuilder和许多补充选项类以编程方式进行配置. Silo配置有几个关键方面: Orleans集群信息 集群提供程序(不知道咋翻译) Silo到Silo和Cl ...

最新文章

  1. ARM:钒和铁替代固氮酶的前世今生
  2. 基础排序算法(冒泡排序,选择排序,插入排序)
  3. c语言fsetpos是什么,fsetpos - [ C语言中文开发手册 ] - 在线原生手册 - php中文网
  4. [云炬创业基础笔记]第二章创业者测试12
  5. sqoop 1.4.5 增量导入hive 0.12.0
  6. php代码上线,实现版本切换
  7. Chapter7-12_Controllable Chatbot
  8. AI算法连载01:数学基础之线性代数
  9. 聚集表(clustered table)data page中的数据行可以无序
  10. Netty-1-一个简单的服务器实例
  11. pytorch dropout代码解读
  12. 一般将来时语法课教案_初中英语笔试教案模板
  13. 《Java程序员职场全功略:从小工到专家》连载六:亚洲企业工作模式
  14. java 中使用_java中运算符的使用方法
  15. 汉高软件服务器安装系统,如何安装了如指掌眼镜管理系统的服务器和客户端,还需要安装什么软件的?...
  16. 系统集成方案(一).NET集成方案
  17. for循环中控制事务单个提交问题
  18. 自定义Unity调色板
  19. “挖坑填坑”理解快速排序
  20. 联想计算机怎么设置硬盘,计算机设置硬盘启动的具体方法_如何在联想计算机上设置硬盘启动...

热门文章

  1. HTML+CSS基础知识5
  2. 诚实的人与说谎的人(Java)
  3. linux 扫描网络打印机,在Debian上设置USB网络打印机和扫描仪服务器
  4. python群发QQ邮件研究
  5. Springboot 自定义mybatis 拦截器,实现我们要的扩展
  6. c语言 扑克牌大小,C语言实现简易扑克牌游戏
  7. 新版标准日本语初级_第二十一课
  8. SCAU_Linux实验5
  9. 843c语言真题,浙江工业大学 843 数据结构(c语言版)2008真题回忆 +考试技巧
  10. 知乎爬虫(scrapy默认配置下单机1小时可爬取60多万条数据)