一、应用场景和技术特点
1.应用场景
运营商ICP
2.技术特点
2.1.扩展性好
- 早期运营商需要支持ipx,ip,clnp等不同网络层协议的略由
- isis可以同时支持各种不同网络质协议的略由,ospf只支持ip协议
- Isis如何做到同时支持各种协议,而且ipv6出来后,也立即可以支持ipv6?因为isis可以以通过tlv字段来扩展,tlv就是类型、长度、值的组合,可以用来承载新的信息。
- tlv部分抓包
2.2.路由承载能力强
- 运营商的网络更庞大,isis以承载的路由条目,比ospf要多
2.3.收敛速度快
虽然都是spf算法,但Isis和ospf相比,当网络发生变化,会采用部分收敛算法,而不是全部拓扑
重新收效,所以速度史快。
2.3.1.收敛算法
- 在本区域内路由器第一次启动的时候执行的是Full-SPF算法。
- 后续收到的LSP更新,如果是部分拓扑的变化执行的iSPF计算。
- 如果只是路由信息的变化,执行的就是PRC计算(PRC就是拓扑不变,只是路由信息进行更新)。
- 由于采用拓扑与网络分离的算法,路由收敛速度得到了加强。
2.4.设计简单
2.4.1.报文种类少
只有iih、snp、lsp三种
2.4.2.LSP类型少
只有level1和level2两种
2.4.3.网络类型少
只有广播型和点到点两种
2.4.4.区域类型少
只有L1和L2,不像pspf,骨干,普通,stub,等
2.4.5.二层封装头部更简单
2.4.6.L1路由器默认不学习L2明细路由,类似默认ospf的完全stub
2.4.7.开销设计简单
所有接口cost默认都是10,不区分
二、ISIS基本概念
1.ISIS对比OSPF
缩略语 | OSI术语 | IETF术语 |
---|---|---|
IS | Intermediate System | Router |
ES | End System | Host |
DIS | Designated Intermediate System | OSPF中的DR |
SysID | SystemID | OSPF中的Router ID |
LSP | Link State PDU | OSPF中的LSA |
IIH | IS-IS Hello PDU | OSPF中的Hello报文 |
PSNP | Partial Sequence Number PDU | OSPF中的LSR或LSAck报 文 |
CSNP | Complete Sequence Number PDU | OSPF中的DD报文 |
2.网络实体名称
说明
2.1.Area id : 类似OSPF的区域号,isis的区域号长
度可变(1-13B)
2.2.System id :类似ospf的router id,isis的id是48位的用16进制表示
2.3.00: 用来代表网络类型,IP网络用00来表示(包括ipv4和ipv6),非IP网络是其他代码
3.ISIS路由器类型
- IS-IS路由器的三种类型,对比下面的拓扑图来看
- Level-1路由器(相当于OSPF非骨干区域的路由器,只能创建level-1的LSDB)
- Level-2路由器(相当于OSPF骨干区域的路由器,只能创建level-2的LSDB)
- Level-1-2路由器(相当于OSPF的ABR,能同时创建level-1和level-2的LSDB)
3.1.典型拓扑
3.2.对比OSPF
3.3.特点
三、ISIS报文类型
1.hello包
相当于ospf的hello。Hello报文用于建立和维持邻居关系,也称为IIH(IS-to-IS HelloPDUs)。
1.1.广播型的IH
-
L1 (注意mac地址)
-
L2(意mac地址)
1.2.点到点的IIH
2.lsp包
相当于ospf的Isu。链路状态报文LSP (Link State PDUs)用于交换链路状态信息。LSP分为两种:Level-1LSP和Level-2LSP。Level-1LSP由Level-1IS-IS传送,Level-2LSP由Level-2IS-IS传送,Level-1-2IS-IS则可传送以上两种LSP。
3.snp包
snp包同时实现了ospf的dbd,lsr,Isack的功能。
3.1.csnp,相当于ospf的dbd,用来发送Isdb的摘要信息
3.2.psnp,相当于ospf的lsr和lsack,同时可以用来请求lsp和确认Isp
3.3.广播型网络,dis(相当于ospf的dr)会周期性发送csnp,所以是不需要对Isp进行确认的,因为就算Isp丢包了,下个周期还会发csnp,还会发现缺少Isp,还会再请求一次。
3.4.点到点网络,csnp只发一次,不会周期性发,所以收到Isp,必须用psnp进行确认,否则重传,以保证可靠性。
3.5报文结构
3.5.1.csnp,只有LSP的摘要信息,没有完整的LSP
3.5.2.psnp
- psnp中的Ispid的序列号非0,是确认功能
- psnp中的Ispid的序列号是0,是请求功能
三、isis工作原理
1.邻居建立过程
1.1.点到点
1.1.1.两次握手
只要收到邻居发来的iih,直接形成邻居关系。可能由于单向网络故障导致邻居错误建立。
1.1.2.三次握手
和ospf一样,收到iih,并且邻居表中有自己才形成邻居关系,更合理
1.1.3.可以手动配置使用三次握手机制。
1.2.广播型
三次握手,建立邻居完后选举dis,类似ospf选dr
2.lsdb同步
2.1.点到点
- 首先发csnp,发出的csnp,必须收到对那面的psnp回应,否则重传。
- 根据csnp中的Isp描述,通过psnp请求缺少的lsp,请求就必须得到Isp回应,否则再请求。
- 通过lsp进行更新,收到lsp报文,使用psnp进行确认。必须得到确认,否则Isp重传。
2.2.广播型
- 首先向dis发lsp,dis可以收集到所有lsp
- dis周期性发csnp,各个设备可以通过csnp判断自己缺少的Isp,然后通过psnp请求,直到同步
3.路由计算过程
3.1.L1和L2分别维护L1和L2自己区域的Isdb
3.1.1.实验拓扑
- router ABCD的system id结尾分别为0001、0002、0003
- 在router A查看lsdb,看不到L2的
- 在router D查看lsdb,看不到L1的
3.2.L1路由器,会把L2区域作为叶子节点,挂在L1/2路由器上。并且,默认情况L1/2并不把L2的明细路由发向L1路由器,而是发送一条默认路由给L1路由器,类似OSPF的完全stub。L1/2发送默认路由的条件是,他发现L2有路由信息,这时就会把LSP的ATT位置位,并发送默认路由。
3.3.L2路由器,也不需要知道L1路由器发的LSP,不需要构建L1的具体拓扑,只需要通过L1/2发来的路由信息学习到去往L1的路由即可。默认情况,L2路由器会学习到L1的明细路由。
3.4.isis计算路由时的cost
3.4.1所有接口默认为10,可以手动修改,也可以让他通过带宽来自动计算。
- Narrow模式(设备默认模式开销都是10,手工配置接图开销取值范围为1~63)。
- Wide模式(设备默认模式开销都是10,手工配置接口开销取值范围是1~16777215)。
3.4.2cost分为窄开销和宽开销,需要各设备统一。
四、关键步骤
1.isis配置及优化
- 配置isis进程
- 配置网络实体名称
- 配置路由器类型
- 接口使能isis
2.优化步骤
- 修改网络类型(以太网接口下,修改为p2p),可以不选dis,加快20s速度
- 路由渗透,让L1学习到L2的明细路由,当有多台L1/2的时候,可以学习到通过哪台L1/2去往目标网段更加合理
- 路由聚合,可以精简L2路由器的路由表,减轻路由器压力,降低路由查表延时
3.lsdb解读
3.1.L1
-
LSPID: 0000.0000.0001代表发送lsp的设备
-
LSPID
-
其他
-
LSP详情
- [RA]dis isis lsdb 0000.0000.0001.00-00verbose
- 内容类似OSPF