IS-IS Multi Topology技术白皮书
摘要:本文介绍IS-IS的多拓扑扩展技术.该技术可提高IS-IS支持多拓扑的能力,能够无冲突地独立处理IPv4和IPv6数据,并兼容老版本,
关键词:MT,IPv6,IS-IS
1 概述
Intermediate System to Intermediate System(IS-IS)协议是一种链路状态的内部网关协议(IGP).在单路由域内,路由器(中间系统)能用其交换路由.IS-IS以OSI模型为基础,描述了模型中网络层的通讯.
目前使用IS-IS协议来支持IPv4和IPv6技术存在的问题是:IPv6和IPv4网络必须是适配的.例如,如果IPv4流量只通过IPv6链路寻路,那么IPv4报文将被丢弃;又如,IPv6报文通过MPLS TE隧道,将会出现错误寻路,因为目前隧道不支持IPv6,同样IPv6报文也会被丢弃.
为了解决这个问题,IPv4和IPv6在多拓扑(Multi-topology)中会被分别处理,并可完全向后兼容.在原有的协议部署转换成新的IS-IS扩展的MT部署之前,MT具有不同的中间模式或阶段,因此原有路由器的工作不会被干扰.IS-IS扩展使用新的TLV(Type Length Value).这会影响以下功能:邻接信息和路由可达信息.
2 原理
本章描述IS-IS受影响的功能,OL(过载位),ATT(区域关联位)及其它的标志位的变化,并介绍三种新的TLV,这些TLV作为IS-IS MT实施实现的一部分.
2.1 IPv6技术的使用
在使用IS-IS实现IPv6扩展时,IPv6路由拓扑信息与IPv4相同,也就是说,IPv6和IPv4使用同样的最短路径,这就要求所有的IPv6和IPv4拓扑信息必须一致.
这种情况也许不会一直有令人满意的效果.在网络中,一些路由器或者链路不支持IPv6,从而引起IPv6和IPv4拓扑的不同,但是,对于支持IPv4和IPv6双协议栈的路由器是感知不到拓扑中有哪些路由器是不支持IPv6的.(由于ISIS路由协议中同时实现IPv4路由和IPv6路由,其邻居TLV中不能区分V4邻居或V6邻居,在多拓扑路由方案提出之前,若一个网络中IPv4和IPv6共存,ISIS可能出现路由计算错误的现象)但IPv6数据流仍会被转发到这些不支持IPv6的路由器或链路,从而被丢弃处理.(这里指H3C,未验证,但是在Cisco上实际是无法与不支持IPv6的路由器建立邻接关系)
IS-IS MT用来解决以上提到的问题,在IPv6的独立的拓扑上运行SPF算法.
下图为相应的示例.图中所有数字为相应链路的开销.Router A,C和D均支持IPv4和IPv6,Router B只支持IPv4.
如果A,C,D不支持IPv6 MT,最短路径为:A-B-C,最小开销值为7.因为B不支持IPv6,所有从A到C的IPv6报文将被
丢弃.
如果A,C和D支持IPv6 MT,IPv6最短路径在IPv6拓扑中将被单独选择:A-D-C,开销为11.所有从A到C的IPv6报文将通过路由器D转发.
2.2 MT邻接关系维护
每个邻居必须在接口上被划分属于某些拓扑的MT,新的TLV(MT TLV)封装进IIH报文,通告接口属于哪个拓扑.如果MT-ID是2(参见2.6.1节),在这个接口上只支持MT.通告这个新TLV是可选的.因此,如果这样的TLV没有出现在IIH,就意味着是标准(IPv4)模式.通过交换各自支持的拓扑,路由器可以在它们的LSP中发布具有相同拓扑的邻接IS TLV.
2.3 邻接形成
2.3.1 点到点接口上的邻接
如果本地系统不支持某MT-ID,就不能在LSP中通告支持该MT-ID的邻居.至少在接口上有一条共同MT,本地路由器才能形成邻接
2.3.2 广播接口的邻接
在局域网(LAN)中,所有部署MT扩展的路由器将在IIH中通告他们支持MT capability TLV.(类型229)如果在LAN接口上至少有一个邻接属于这个MT,支持MT的路由器必须在LSP包括相应MT IS Reachable TLV.此外,如果LAN接口属于这个MT拓扑,它将在LSP中发布MT IS Reachable TLV.(类型235,237)
在LAN中的两个路由器不管是否有共同的MT,他们将始终建立邻接.这样可保证在LAN中的所有路由器可以正确的选择相同的指定中间系统.如果LAN中的邻接不支持MT,那么路由器可忽略这些邻接.MT扩展将不会改变Designated-IS,CSNP及PSNP功能.
2.4 过载位(OL),区域分段位(P)和区域关联位(ATT)
对于每个MT,路由器均可潜在地进行分段,过载及关联.为了避免不必要的复杂性,MT的扩展不支持分段修复.在LSP头中overload,partition和attached位只反映默认拓扑的状态.
不同层的路由渗透仅在相同MT中进行.
2.5 MT SPF计算
每个MT运行自己的计算过程,然而在计算期间,虚拟节点的LSP被所有拓扑使用.每个MT拓扑使用本拓扑的ATT和OL标志,该标志位于本拓扑的MT TLV中.SPF的反向连接检查必须跟随正确的MT路径,以保证双向可达性.
通常情况下,每个计算结果保存在隔离的RIB;否则不同拓扑的重叠地址将引起不必要的路由行为,比如转发环回.转发逻辑和配置需要保证报文从源地址到目的地址穿越相同的MT.
2.6 新增TLV介绍
为了支持MT扩展,增加了三个新的TLV.其中之一是LSP和IIH共用的.
2.6.1 MT TLV
x LENGTH Value字段的总长度,应为MT要素数量的2倍
x VALUE 一个或更多2字节MT要素,结构如上图所示
Bit O 代表MT的OVERLOAD位(在MT ID不等于0时,只在LSP的零分片中有效.发送时置0,接收时忽略).
Bit A 代表MT的ATTACH位(在MT ID不等于0时,只在LSP的零分片中有效.发送时置0,接收时忽略).
Bit R 是预留位,发送时置0,接收时忽略.
MT ID是12位的域,包括被通告的拓扑的ID.各值定义如下:
MT ID#0 标准(默认)拓扑
MT ID#1 IPv4带内管理(in-band management)
MT ID#2 IPv6路由拓扑
MT ID#3 IPv4组播路由拓扑
MT ID#4 IPv6组播路由拓扑
MT ID#5-#3995 IETF,统一预留
MT ID#3996-#4095 保留,用于开发,实验以及专用特性[RFC3692]
以上数值,目前只支持MT ID#0和#2.
2.6.2 MT邻居TLV
这个TLV值为222.除了在TLV头部前面额外的2字节外,它按照扩展的IS可达性TLV(Extended IS reachability TLV,类型为22)排列.
x CODE 222x LENGTH 字段总长度
x VALUE 2字节MT ID加上扩展IS可达性TLV(Extended IS reachablility TLV)的格式,结构如上图所示.
Bit O 代表MT的OVERLOAD位(在MT ID不等于0时,只在LSP的零分片中有效.发送时置0,接收时忽略).
Bit A 代表MT的ATTACH位(在MT ID不等于0时,只在LSP的零分片中有效.发送时置0,接收时忽略).
Bit R 是预留位,发送时置0,接收时忽略.
MT ID 12位域,包括被通告拓扑的非零MT ID.
如果ID为0,TLV必须被忽略.这是为了保证标准单播拓扑的结构一致.
MT邻居TLV与Extended IS reachablility TLV(类型为22)的格式相同.没有子TLV时,在相同MT中,它最多能包含23个邻居.
2.6.3 MT可达的IPv6前缀TLV
此值为237.除了前面2字节外,它按照IPv6的可达性TLV(IPv6 Reachability TLV,类型为236)排列.
x CODE 237x LENGTH 字段总长度
x VALUE MT成员加上IPv6的可达性TLV(IPv6 Reachability TLV)的格式,结构如上图所示.
Bit O 代表MT的OVERLOAD位(在MT ID不等于0时,只在LSP的零分片中有效.发送时置0,接收时忽略).
Bit A 代表MT的ATTACH位(在MT ID不等于0时,只在LSP的零分片中有效.发送时置0,接收时忽略).
Bit R 是预留位,发送时置0,接收时忽略.
MT ID 12位域,包括被通告拓扑的非零MT ID.
如果ID为0,TLV必须被忽略.这是为了保证标准单播拓扑的结构一致.
在2字节的MT-ID后面,IS格式与扩展的IPv6的可达性TLV(Extended IPv6 reachability TLV,类型236)相同.
使用IS-IS的MT扩展路由,可引起系统存在多个RIB.证部署和配置必须保IP报文只穿越定义好的节点和链路.需要一些额外的机制去选择正确的RIB,以保证进入的IP报文选择正确的RIB进行正确的转发.(如流分类技术)
3 应用场景
四种主要方式可填加进IS-IS模式,以进行MT实施.
IPv6标准模式
IPv6兼容模式
IPv6兼容MT-SPF
IPv6 MT模式
3.1 IPv6标准模式
在此拓扑模式,不支持MT.因此系统不能与只支持MT-IPv6拓扑的路由器形成邻接关系.这种拓扑中,没有MT-TLV被通告.适用于网络中所有路由器不支持MT的情况.Normal SPF运行.
3.2 IPv6兼容模式
在这种拓扑模式中,所有MT相关的TLV都被通告.可形成MT邻接,但不支持IPv6 SPF,可兼容所有路由器(支持MT和不支持MT的).(理解无IPv6 RIB)
3.3 IPv6兼容MT-SPF
在这种拓扑模式中,所在MT相关TLV被通告.可与所有其它拓扑形成邻接,执行IPv6 SPF,而且可兼容不支持MT的老路由器.(有IPv6 RIB)
3.4 IPv6 MT模式
这种拓扑只针对MT,通告所有MT TLV,各自运行MT-SPF,但不兼容不支持的MT的老路由器,因此不能与标准模式的系统形成MT邻接.
默认的拓扑模式是标准模式.
4 结论
1.IS-IS MT特性在IS-IS的单域内维护一套独立的拓扑.并且由于每个拓扑结构都会运行各自的SPF,这样,MT的路由选择允许用户在一个通用的网络基础设施上,组建这些路由选择的网络子集.
2.支持基于IS-IS MT的IPv6 IS-IS可从中受益,并