IS-IS协议基本原理.doc
IS-IS协议基本原理 IS-IS协议是一种基于链路状态的最短路径优先算法进行路由计算的内部网关协议,ISO为它的无连接网络协议CLNP设计的一种动态路由协议。为了提供对IP的路由支持,IETF对IS-IS进行了修改,使其可以运行在TCP/IP的OSI环境中,成为集成化的IS-IS。 IS-IS协议的基本原理可以分为三步: 1. 邻居关系建立:通过Hello包进行协商各种参数,建立邻居关系。 2. 链路信息的减缓(同步LSDB数据库):IS-IS交互链路状态的基本载体不是LSA,而是LSP,主要通过CNSP和PSNP两种协议来进行同步,请求以及确认链路状态信息,而链路状态信息的详细拓扑和路由信息则是由LSP报文传递。 3. 路由计算地址结构:与OSPF地址结构的不同之处(其中CLNP协议使用的是NSAP地址),其中NSAP地址中:IDP相当于IP地址中的主网络号(AFI标识地址分配机构和地址格式,IDI用来标识域),DSP相当于IP地址中的子网号和主机地址。High Order DSP用来分割区域,System ID用来区分主机,SEL用来指示服务类型(不同的协议对应不同的SEL)。 IS-IS协议中的路由器可以分为三类: 1. Level-1路由器(只能创建level-1的LSDB):只能与同一区域的level-1和level-1-2路由器形成邻居关系,只负责维护level-1的链路状态数据库(该LSDB包含本区域内的路由信息,到本区域外的报文转发给最近的Level-1-2路由器)。 2. Level-2路由器(只能创建level-2的LSDB):类似于level-1:只能与同一区域的level-2和level-1-2路由器形成邻居关系,只负责维护level-2的链路状态数据库(该LSDB包含本区域内的路由信息,到本区域外的报文转发给最近的Level-1-2路由器)。 3. Level-1-2路由器:维护两个LSDB,level-1的LSDB用于区域内路由,level-2的LSDB用于区域间路由。 IS-IS协议中的邻居关系建立是通过Hello报文来实现的,Hello报文的作用是为了邻居发现、协商参数并且建立邻居关系。在P2P链路上,只要路由器收到对端发来的Hello报文,就单方面的宣布邻居为up状态;在广播链路上,当收到邻居发来的Hello PDU中没有自己的system ID的时候,进入initialized状态。只有当收到邻居发过来的Hello PDU中有自己的system ID的时候才会up。 IS-IS协议报文的基本结构基于TLV结构,在这个结构中可以任意的更改TYPE值,可以从TYPE4改为TYPE6,进而实现对不同的网络的适应。协议报文分为Level-1和Level-2两种,在MA网络中所有协议报文的目的MAC都是组地址:level-1:0180-C200-0014,level-2:0180-C200-0015。 链路状态信息的交互是通过CSNP来实现的,CSNP包括LSDB中的所有LSP的摘要信息,从而可以在相邻路由器之间保持LSDB的同步。CSNP类似于OSPF中的DD报文传递。 IS-IS协议是一种基于链路状态的最短路径优先算法进行路由计算的内部网关协议,具有较高的路由计算效率和较好的网络可扩展性。