ISIS路由协议基础

ISISI路由协议:

ISIS概述

  • 中间系统到中间系统路由协议,基于链路状态算法,属于IGP协议的一种

  • 适用于骨干网、运营商AS内。

  • 运行在数据链路层,使用组播MAC地址进行发送报文,

  • 组播MAC地址:Level-1:01-80-C2-00-00-14,Level-2:01-80-C2-00-00-15

    • MAC第8个比特为0是组播mac,为1是单播mac。

ISIS 网络类型:

  • 广播
  • 点到点

ISIS PDU:

  • ISIS 通用报文(类似OSPF 头部报文):

    • 这里写图片描述
    报文重要字段 作用
    lenght indicator 报文头长度
    id length System ID区域的长度。为0时,表示长度为6字节。为255时,表示为空。
    PDU type 报文类型
    max…… 所支持最大区域数(默认为3)
  • PDU 类型:

    PDU type 值 名称
    15 L1 LAN IIH
    16 L2 LAN IIH
    17 P2P IIH
    18 L1 LSP
    20 L2 LSP
    24 L1 CSNP
    25 L2 CSNP
    26 L1 PSNP
    27 L2 PSNP
  • L1/L2 LAN IIH:

    • 这里写图片描述

      报文重要字段 作用
      circuit type 路由器类型
      Source id 发送该hello报文的system-id
      Holding time 邻居关系保持时间
      pdu lenght 报文总长度
      priority Dis 优先级
      LAN ID dis设备的system-id和伪结点id(1bit)
  • P2P IIH:

    • 这里写图片描述
报文重要字段 作用
local circuit id 本地链路状态id(本地物理接口号)

因为在P2P链路中,没有dis的存在,所以在hello字段中,自然就不存在dis优先级和dis的system-id

  • LSP报文:
    • 这里写图片描述
报文重要字段 作用
Remaining lifetime LSP的生存时间.默认1200s,1200递减
LSP ID 唯一标识一条LSP
seq 序列号
checksum 校验和
P 仅与l2 lsp有关,表示路由器是否支持修复被分割的区域
ATT 由level-1-2路由器产生,当L1-2路由器存在L2的邻居关系时,收到level-2 lsp后,会在将L1 LSP ATT置位1 ,并向lever-1路由器发送,当level-1路由器收到之后,会生成一条指向level-1-2的默认路由。
IS type LSP类型,判断是level-1类型、还是level-2类型
  • ATT置位

ISIS 报文类型:

报文类型 作用
Heelo 建立维护邻居关系(10s/一次)
CSNP 描述LSDB里所有LSP的摘要信息
PSNP 用于请求LSP,和确认LSP
LSP 用来包含链路状态详细信息
  • hello分为三种:
    • level-1邻居使用的 level-1 LAN IIH,
    • level-2 邻居使用的是level-2 LAN IIH
    • P2P网络使用P2P IIH

ISIS邻居关系的建立

  • 广播网络(三次握手建立):
    • 跟OSPF邻居关系建立差不多
  • 点到点网络(三次握手建立):
    • 两端发送IIH,不包含对方的system-id,但是会有一个TLV的变长字段,里面包含自己的电路id,对方收到之后,单向的邻居关系就已经建立完成,对方向我发送的iih机会携带对方的sys-id,还有自己的sys-id,此时,双向邻居关系建立完成。

DIS与DR区别

类别点 DIS DR
优先级 默认为64,为0页参与选举 默认为1,为0 不参与选举
选举时间 20s 40s
备份 无/具有抢占性 BDR/无抢占性
邻居关系建立 与所有路由器建立邻居关系 只与BDR建立邻接关系
作用 减少LSA泛洪

hello时间3/10s

dead时间10s.

优先级+mac地址

  • 伪接节点,cir-id为0说明是dis产生的,

ISIS地址结构:

AFI

IDI

High Order DSP

  • AREA -ID

sys-id

SEL

spf

ISIS路由器类型

路由器type 作用
Level-1 与同区域同类型的路由器建立level-1邻居关系,维护level-1类型的LSDB.
Level-1-2 与不同区域不同类型的路由器建立level-1/level-2的邻居关系,维护level-1/level-2类型的LSDB.
Level-2 与同区域同类型的路由器建立level-2邻居关系,维护level-2类型的LSDB.
System-id 唯一标识一台路由器
Local Circuit ID 链路状态ID(本地接口端口号)
System-id 标识DIS路由器(最后两位非0,就为DIS)

点到点字段添加tlv字段,实现三次握手。

电路id:本地接口端口号

level-1设备会选择离他最近的level1-2

LSDB 同步更新过程:

  • 广播网络:

    • 新加入的设备产生有一个LSP后,会跟所有运行ISIS的接口扩散,网络范围内的所有人都可以收到,发送LSP没有确认机制,但是他可以通过DIS设备周期性的发送CSNP来进行确认,通过查看DIS发送的CSNP报文中是否存在自己的LSP,来确认DIS是否收到,若没有的话,就进行重新发送。

    • DIS设备会每10s周期的发送CSNP报文,里面携带的是LSP的摘要信息,其他路由器通过收到的CSNP报文,与自己本地LSDB做比较,检查不存在的LSP,然后通过发送PSNP请求该LSP

    • DIS设备收到PSNP请求后,会发送所请求的LSP,在发送之前,会在接口上设置一个SRM的标志,待LSP发送完成之后,就会清除该标志。因为MA网络中不需要PSNP确认,

  • P2P网络:

    • 当邻居关系建立之后,设备产生新的LSP之后,A/B两端直接互相发送LSP报文,然后会在发送接口设置一个SRM的标志,只有收到PSNP确认报文后,才会清除该标志
    • A/B两端收到LSP后,会在接收端口设置一个SSN的标志,而会回复一个PSNP确认报文,只有发出PSNP确认报文后,才会清楚该标志
    • 收到PSNP确认后,才会认为对单已经收到了LSP,否则会5S重新发一次,LSP的发送时间间隔是5s
    • 之后A/B双方会发送CSNP报文。

ISIS 泛洪机制:

  • 路由器产生一条LSP后,会跟所有运行ISIS的接口进行扩散,路由器收到LSP后,会将这份LSP跟运行了ISIS接口的所有接口继续扩散,

  • 路由器收到一条LSP后处理流程如下:

    • ISIS路由器接收到一条LSP后,在本地LSDB中进行查找,看该LSP是否存在,若不存在,就将该LSP接受,并加入LSDB中,若存在,则进行比较:
      • 比较seq,越大越新
      • 比较剩余生存时间,
      • 比较校验和,
  • isis所有链路开销默认为10,

  • 组播LSP,目的01-80-C1-00-00-14

NET 地址组成:

  • 区域id-sysid-sel(1字节)
  • 全16进制数。
  • OL置为
  • L1>L2>L1 ud置位。
  • 接口认证:hello
  • 区域认证:l1的报文
  • 路由域认证l2的报文
posted @ 2020-07-05 22:44  皓先生  阅读(2050)  评论(0编辑  收藏  举报