2024年1月31日发(作者:闾丘丽泽)
ATT为1的LSP:
由level-1-2路由器生成,同区域level-1收到后,生成指向level-1-2的缺省路由
ATT为1条件:level-1-2和level-2必须处于不同区域
ISIS LSP:实现拓扑路由分离
LSP使用LSP-id唯一标识
LSP-id组成:systeam-id + 伪节点编号 + LSP分片编号
伪节点编号全为0,标识实节点LSP
不为0,标识伪节点LSP
实节点LSP:既有拓扑信息又有路由信息
描述自身连接到哪些路由器和自身有哪些网段
拓扑信息:is-reachability TLV(邻居可达TLV)(窄模式)
路由信息:IP internal reachability TLV(域内路由信息可达TLV)描述域内路由信息(窄模式)
IP external reachability TLV(域外路由可达TLV)(窄模式)
伪节点LSP(DIS):只携带拓扑信息
描述DIS连接到哪些路由器
is-reachability TLV
ISIS产生一个新的LSP并且把他传递给对端路由器计算成路由信息所花费的所有时间
延迟:(ISIS震荡开始到完成收敛所需要的时间)
检查故障需要的时间+生成LSP需要的时间+泛洪LSP的时间+对端SPF算法的时间+对端ISIS路由加表需要的时间+设备从主控板向数据板卡下发路由信息的时间
ISIS高级特性:
ISIS快速收敛:
ISIS收敛步骤:
IGP的收敛可以总体描述为如下状态D+O+F+SPT+RIB+DD:
D状态为从链路出现故障以后到路由器发现链路故障所用的时间
O状态为生成LSP,用来描述新的网络拓扑结构所需要的时间
F状态为从发现链路故障一直到向邻居发布FIB更新的时间
SPT状态为运行SPF算法,计算最短路径树的时间
RIB状态为用主CPU更新RIB表象和FIB表象的时间
DD状态为从主控板向线卡上发布更新路由信息的延迟
RIB状态和DD状态一般与路由器的硬件有关,如主CPU、线卡CPU、内存、网络处理器有关,这两个状态人为无法对收敛时间做出很大的改变。所以本文基本上以讨论前四个状态为主
链路故障检测:ISIS链路故障检测时间:30s
ISIS hello报文:
P2P:首次发送按照接口的MTU发送
邻居关系建立后,hello消息不再填充
MA:永远按照接口MTU发送
华为设备默认MTU1500字节
ISIS small-hello包:通过命令配置让hello包不再填充
接口下:ISIS small-hello //设备不再发送填充到MTU的hello报文
现有的故障检测方法主要包括:
硬件检测:例如通过SDH(同步数字体系)告警检测链路故障。硬件检测的优点是可以很快发现故障,但并不是所有介质都能提供硬件检测
慢Hello机制:通常是指路由协议的Hello机制。这种机制检测到故障所需时间为秒级。对于高速数据传输,例如吉比特速率级,超过1秒的检测时间将导致大量数据丢失;对于时延敏感的业务,例如语音业务,超过1秒的延迟也是不能接受的。并且,这种机制依赖于路由协议。IS-IS协议一般通过IIH报文,用来做邻居发现和失效性检测,这个检测的速度是秒级的
其他检测机制:不同的协议或设备制造商有时会提供专用的检测机制,但在系统间互联互通时,这样的专用检测机制通常难以部署,如BFD
ISIS hello包是秒级收敛,和BFD进行联动实现ISIS毫秒级收敛
BFD:检测到链路故障,把故障通知给ISIS,ISIS中断邻居关系
BFD单臂回声:发送源目IP地址相同的控制消息,用来检测不支持BFD功能的邻居
GR:平滑重启特性,帮助重启的设备快速同步LSDB(ISIS不协商GR)
MT:多拓扑能力,默认所有设备支持多拓扑(ISIS不协商多拓扑)
ISIS邻居建立协商参数:
1.最大区域地址数必须一致
m id不能一致
必须一致
4.如果是level-1,要求area id至少有一个相同
网络必须要检查掩码
6.支持的协议必须有一个相同
生成LSP的间隔时间:
ISIS生成新的LSP后,必须等待2s的间隔才会生成新的LSP(产生LSP的延迟时间过长,则会导致本地路由信息的变化无法及时通告给邻居路由器,使网络的收敛速度变慢)
相同的LSP,在网络震荡时,将会延长LSP生成间隔)
智能定时器:可以根据路由信息的变化频率自动调整延迟时间(ISIS LSP生成定时器:对于LSP-id 作用:加快网络的收敛速度,同时又不影响系统性能(可以对于突发事件(如接口Up/Down)快速响应,加快网络的收敛速度。同时,当网络变化频繁时,智能定时器的间隔时间会自动延长,避免过度占用CPU资源)
配置:timer lsp-generation + 最大生成间隔+首次生成间隔+后续生成间隔
第一次:首生成间隔
第二次及后续:后续生成间隔^2(N-1)一直到最大生成间隔
三次之后回到首次生成间隔
加快泛洪LSP的时间:
ISIS会将小于指定数目的LSO向外发送,剩余LSP等待5s(华为默认发送LSP的间隔)发送
用户可以指定每次扩散的LSP数量,这个数量是针对所有接口的。如果需要发送的LSP的数量大于这个数,则就发送lsp-count个LSP。如果配置了定时器,在路由计算之前如果这个定时器未超时,则立即扩散;否则在该定时器超时时发送
如果命令中没有指定级别,则缺省同时在Level-1和Level-2中使能此功能
加快SPF的计算时间:
SPF智能定时器(Flash flood):收到新的LSP,首次立即计算,后续如果重复收到新的LSP,延长计算间隔
一个正常运行的IS-IS网络是稳定的,发生大量的网络变动的几率很小,IS-IS路由器不会频繁的进行路由计算,所以第一次触发的时间可以设置的非常短(毫秒级)。如果拓扑变化比较频繁,智能定时器会随着计算次数的增加,间隔时间也会逐渐延长,避免占用大量的CPU资源
timer spf 最大间隔 首次间隔 后续间隔
改进SPF的计算方法:
SPT与原来的算法所计算的结果相同,大大降低了CPU的占用率,提高了网络收敛速度
在路由计算中,路由代表叶子,路由器则代表节点
I-SPF:除了第一次计算时需要计算全部节点外,每次只计算影响的节点,而最后生成的最短路径树 如果I-SPF计算后的SPT改变,PRC会只处理那个变化的节点上的所有叶子;如果经过I-SPF计算后的SPT并没有变化,则PRC只处理变化的叶子信息
比如一个IS接口,则整个网络拓扑的SPT是不变的,这时PRC只更新这个节点的接口路由,从而节省CPU占用率
PRC和I-SPF节点使能一个IS-配合使用可以将网络的收敛性能进一步提高,它是原始SPF算法的改进,所以已经代替了原有的算法
默认情况下华为路由器采用I-SPF和PRC进行计算,不需要命令配置
ISIS快收敛配置:
ISIS 管理标记:引入外部路由后,只有宽模式(扩展的TLV)才能携带tag(管理标记),携带在路由信息TLV的子选项中(stub TLVs)
ISIS开销模式:
窄模式(Narrow)(默认):计算的开销范围:(0-63)
使用的TLV:
128号TLV(IP Internal Reachability TLV):用来携带路由域内的IS-IS路由信息
130号TLV(IP External Reachability TLV):用来携带路由域外的IS-IS路由信息
2号TLV(IS Neighbors TLV):用来携带邻居信息
宽模式(Wide):TLV发生改变:Extended(扩展的)
使用的TLV:
135号TLV(Extended IP Reachability TLV):用来替换原有的IP reachability TLV,携带IS-IS路由信息,它扩展了路由开销值的范围,并可以携带sub TLV(不区分内外部路由)
22号TLV(IS Extended Neighbors TLV):用来携带邻居信息
import-route Direct tag 100 //将引入的直连路由打上标记100
import-route level 2 into level 1 tag 100 //只将携带标记100的路由引入到level-1
基本特性:只有宽模式(扩展的TLV)才能携带tag(管理标记)
管理标记特性允许在IS-IS域中通过管理标记对IP地址前缀进行控制,可以达到简化管理。其用途包括控制不同级别和不同区域间的路由引入,以及在同一路由器上运行的IS-IS多实例
管理标记值与某些属性相关联。当cost-sytle为wide、wide-compatible或compatible时,如果发布可达的IP地址前缀具有该属性,IS-IS会将管理标记加入到该前缀的IP可达信息TLV中。这样,管理标记就会随着前缀发布到整个路由域
使能管理标记时,必须使能IS-IS wide metric属性:cost-sytle wide
工作原理:
ISIS LSP分片扩展:使IS-IS路由器生成更多的LSP分片,用来携带更多的IS-IS路由信息
基本概念:
初始系统(Originating System):初始系统是实际运行IS-IS协议的路由器。允许一个单独的IS-IS进程像多个虚拟路由器一样发布LSP,而“Originating System”指的是那个“真正”的IS-IS进程
系统ID(Normal System-ID):初始系统的系统ID
虚拟系统(Virtual System):由附加系统ID标识的系统,用来生成扩展LSP分片。这些分片在其LSP ID中携带附加系统ID
附加系统ID(Additional System-ID):虚拟系统的系统ID,由网络管理器统一分配。每个附加系统ID都允许生成256个扩展的LSP分片
工作原理:(使能分片扩展后,必须重启ISIS进程)
在IS-IS中,每个系统ID都标识一个系统,每个系统都最多可生成256个LSP分片。通过增加附加系统ID,可以最多配置50个虚拟系统,从而使得IS-IS进程最多可生成13056个LSP分片。
使能分片扩展功能之后,如果存在由于报文装满而丢失的信息,系统会提醒重启IS-IS。重启之后,初始系统会尽最大能力装载路由信息,装不下的信息将放入虚拟系统的LSP中发送出去,并通过24号TLV来告知其他路由器此虚拟系统和自己的关系(24号TLV携带真实路由器的系统id)
创建虚拟systerm id(最多50个,虚拟系统id全网唯一),使能LSP分片功能,必须重启ISIS分片功能才能正常运行,分片功能正常运行之后,所有虚拟系统产生的LSP都会携带真实设备的路由信息
工作模式:
Mode-1:
应用场景:网络中的部分路由器不支持LSP分片扩展特性(兼容无法识别LSP分片功能的设备)
工作原理:虚拟系统参与路由SPF计算,初始系统发布的LSP中携带了到每个虚拟系统的链路信息;虚拟系统发布的LSP也包含到初始系统的链路信息。这样,在网络中虚拟系统看起来与初始系统相连的真实路由器是一样的。
每个虚拟系统产生的LSP和真实设备的flag(att level-1-2)完全相同
真实系统到虚拟系统的开销都为0,保证SPF计算,真实系统的下游节点一定是虚拟系统
Mode-2:
应用场景:网络中所有路由器都支持(识别)LSP分片扩展特性
工作原理:虚拟系统不参与路由SPF计算,网络中所有路由器都知道虚拟系统生成的LSP实际属于初始系统。在该模式下工作的IS-IS,可以识别IS Alias ID TLV的内容,并作为计算树和路由的依据。
虚拟系统产生的LSP分片将会携带24号TLV(存放真实系统id),对端设备收到后,首先查看24号TLV,查看虚拟系统属于哪个真实设备,在SPF计算时,虚拟系统不参与SPF计算,虚拟系统携带的路由信息全部都依附于真实设备
说明:无论在哪种方式下,初始系统和虚拟系统的LSP零分片中,都必须包含IS Alias ID
TLV来表示初始系统是谁
配置:ISIS进程下:LSP-fragment-extend mode-1 //使能ISIS mode-1分片功能
virtual-systerm 2222.2222.2222 //配置虚拟系统id
用户视图下:reset ISIS all //重启进程
ISIS 路由过滤:
Filter-policy acl/ip-prefix/route-policy import
从协议路由表加入IP路由表时,执行import策略,但是不会影响LSP的信息
Filter-policy export
部署在引入外部路由的设备上,在外部路由引入ISIS时执行过滤操作,生成的LSP将不会携带外部路由信息
ISIS 路由渗透:
把level-2的路由信息引入level-1中执行路由渗透,目的是为了避免次优路径
ISISv6基本原理与配置:
ISIS 协议扩展:
ISIS的报文采用TLV结构,因此扩展性很好:
为支持新的协议和特性,只需要扩展新的TLV或子TLV
可以轻松扩展支持IPv6,TE,MT等协议和特性
IS-IS对IPv6的支持不需要对协议做大的改动,因此协议的继承性很好;不像OSPF,为支持IPv6需要开发全新的协议OSPFv3
扩展的TLV类型:设计两个新的TLV支持IPv6
6 Reachability TLV [Type 236] [0xEC]:IPv6路由可达TLV;携带在LSP消息中
IPv6 Reachability:类型值为236(0xEC),通过前缀、度量、标记等来描述可达的IPv6前缀/路由信息
在IPv4中有IPv4内部可达性TLV和IPv4外部可达性TLV,在IPv6的扩展当中使用一个“X”bit来区分“内部”和“外部”
U:up/down bit ,标识这个前缀是否是从高level通告下来的(用来防环路)
Up:表明level-2路由引入level-1,U置位,防止路由环路
Down:表明level-1不再引入level-2
X:external original bit ,标识这个前缀/路由是否是从外部路由(其他路由协议)引入过来的
S:subtlv present bit,标识是否携带子TLV位。(可选)(tag标记TLV)
6 Interface Address TLV [Type 232] [0xE8]:IPv6接口地址TLV;携带在Hello消息中
IPv6 Interface Address:类型值为232(0xE8)
它相当于IPv4中的“IP Interface Address” TLV,只不过把原来的32比特的IPv4地址改为128比特的IPv6地址
在hello PDU中,“接口地址TLV”只包含发送hello包的接口的链路本地地址;对于LSP,“接口地址TLV”只包含IS的全球单播地址
这个TLV结构是直接从TLV132映射过来的,因此,原来TLV132最多可以64个IPv4地址(32位),在TLV232中,最多只能有16个IPv6地址(128位)
ISIS ST和MT:
IS-IS ST单拓扑:
IS-IS为所有协议维护相同的SPT (Shortest Path Tree)
IPv4和IPv6的拓扑必须一致
ST单拓扑缺点:
不足之处:
网络可维护性的需求在目前的运营商中越来越被重视,独立拓扑的维护网络,即带内维护网络的需求开始出现
IS-IS为所有协议维护相同的SPT,这意味着IPv4和IPv6的拓扑必须一致
有什么问题?
不适合分离拓扑的网络部署
为维护相同的拓扑,所有接口都必须同时运行IS-IS IPv4和IS-IS IPv6,部署不灵活
不能使用IPv4区域来链接不同的IPv6区域,否则IPv4区域会丢弃IPv6的流量
MT(多拓扑):分离的拓扑:若支持MT,IS-IS可以为IPv4和IPv6维护分离的拓扑,使IS-IS在一个路由域中维护多个拓扑(ISIS支持同时部署IPv4和IPv6,并且可以实现一套物理拓扑,多套不同逻辑拓扑)
(华为设备只支持IPv4和IPv6多拓扑)
ISIS在产生LSP时,每个协议都会产生独立的拓扑信息和独立的路由信息
ISIS路由协议主要可以分为以下几个方面:
邻居的建立
路由可达(Prefix Reachable)与路由器可达(IS Reachable)的发布
SPF计算以及路由计算
为了达到多拓扑的相互隔离,以上几个方面均要求携带MT参数以满足这一要求(SPF计算与路由计算在路由器内识别完成)
新增四种新的TLV分别满足以上过程,实现了通用环境下的ISIS MT的交互过程:
TLV 229 – Multi-Topology Identifier:携带接口地址
TLV 222 – Multi-Topologies Intermediate System:中间系统TLV,携带MT拓扑信息
TLV 235 – Multi-Topologies Reachable IPv4 Prefixes:携带IPv4的路由
TLV 237 – Multi-Topologies Reachable IPv6 Prefixes:携带IPv6的路由
ISISv6配置:
使能ISIS进程多拓扑:[Huawei-isis-1]ipv6 enable topology ipv6
接口上使能ISIS:[Huawei-GigabitEthernetX/Y/Z]isis ipv6 enable
查看ISIS邻居关系:[Huawei]dis isis peer
查看ISIS路由:[Huawei]dis isis route
双栈ISIS应用案例:
Area id:运营商获取
Systerm id:环回接口演绎得到
例:172.16.1.0
172.016.001.000---高位补0,补够3位
1720.1600.1000---四位一组
ISIS默认开销cost:10
快速收敛特性:
智能生成计时器
快速泛洪LSP
SPF智能生成计时器
I-SPF、PRC
Small-hello
ISIS 认证特点:
和OSPFv2比较:
OSPFv2配置认证后,所有报文都会携带认证信息,不灵活还消耗设备资源
ISIS认证比较灵活,接口认证只认证hello消息
区域认证针对level-1的LSP或SNP报文认证
路由域认证针对level-2的LSP或SNP报文认证
区域认证和路由域认证共同的功能:
发LSP 收LSP
发SNP 收SNP
管理员可以针对其中的任意一个设置认证功能,非常灵活
P2P邻居建立:
三次握手机制:
新的TLV:P2P状态判断TLV
本地电路id (电路id:标识一台设备)
对端电路id
对端systerm id
两次握手机制:
只要收到对端的hello消息就UP
ISIS如何支持P2MP:
子接口+P2P
2024年1月31日发(作者:闾丘丽泽)
ATT为1的LSP:
由level-1-2路由器生成,同区域level-1收到后,生成指向level-1-2的缺省路由
ATT为1条件:level-1-2和level-2必须处于不同区域
ISIS LSP:实现拓扑路由分离
LSP使用LSP-id唯一标识
LSP-id组成:systeam-id + 伪节点编号 + LSP分片编号
伪节点编号全为0,标识实节点LSP
不为0,标识伪节点LSP
实节点LSP:既有拓扑信息又有路由信息
描述自身连接到哪些路由器和自身有哪些网段
拓扑信息:is-reachability TLV(邻居可达TLV)(窄模式)
路由信息:IP internal reachability TLV(域内路由信息可达TLV)描述域内路由信息(窄模式)
IP external reachability TLV(域外路由可达TLV)(窄模式)
伪节点LSP(DIS):只携带拓扑信息
描述DIS连接到哪些路由器
is-reachability TLV
ISIS产生一个新的LSP并且把他传递给对端路由器计算成路由信息所花费的所有时间
延迟:(ISIS震荡开始到完成收敛所需要的时间)
检查故障需要的时间+生成LSP需要的时间+泛洪LSP的时间+对端SPF算法的时间+对端ISIS路由加表需要的时间+设备从主控板向数据板卡下发路由信息的时间
ISIS高级特性:
ISIS快速收敛:
ISIS收敛步骤:
IGP的收敛可以总体描述为如下状态D+O+F+SPT+RIB+DD:
D状态为从链路出现故障以后到路由器发现链路故障所用的时间
O状态为生成LSP,用来描述新的网络拓扑结构所需要的时间
F状态为从发现链路故障一直到向邻居发布FIB更新的时间
SPT状态为运行SPF算法,计算最短路径树的时间
RIB状态为用主CPU更新RIB表象和FIB表象的时间
DD状态为从主控板向线卡上发布更新路由信息的延迟
RIB状态和DD状态一般与路由器的硬件有关,如主CPU、线卡CPU、内存、网络处理器有关,这两个状态人为无法对收敛时间做出很大的改变。所以本文基本上以讨论前四个状态为主
链路故障检测:ISIS链路故障检测时间:30s
ISIS hello报文:
P2P:首次发送按照接口的MTU发送
邻居关系建立后,hello消息不再填充
MA:永远按照接口MTU发送
华为设备默认MTU1500字节
ISIS small-hello包:通过命令配置让hello包不再填充
接口下:ISIS small-hello //设备不再发送填充到MTU的hello报文
现有的故障检测方法主要包括:
硬件检测:例如通过SDH(同步数字体系)告警检测链路故障。硬件检测的优点是可以很快发现故障,但并不是所有介质都能提供硬件检测
慢Hello机制:通常是指路由协议的Hello机制。这种机制检测到故障所需时间为秒级。对于高速数据传输,例如吉比特速率级,超过1秒的检测时间将导致大量数据丢失;对于时延敏感的业务,例如语音业务,超过1秒的延迟也是不能接受的。并且,这种机制依赖于路由协议。IS-IS协议一般通过IIH报文,用来做邻居发现和失效性检测,这个检测的速度是秒级的
其他检测机制:不同的协议或设备制造商有时会提供专用的检测机制,但在系统间互联互通时,这样的专用检测机制通常难以部署,如BFD
ISIS hello包是秒级收敛,和BFD进行联动实现ISIS毫秒级收敛
BFD:检测到链路故障,把故障通知给ISIS,ISIS中断邻居关系
BFD单臂回声:发送源目IP地址相同的控制消息,用来检测不支持BFD功能的邻居
GR:平滑重启特性,帮助重启的设备快速同步LSDB(ISIS不协商GR)
MT:多拓扑能力,默认所有设备支持多拓扑(ISIS不协商多拓扑)
ISIS邻居建立协商参数:
1.最大区域地址数必须一致
m id不能一致
必须一致
4.如果是level-1,要求area id至少有一个相同
网络必须要检查掩码
6.支持的协议必须有一个相同
生成LSP的间隔时间:
ISIS生成新的LSP后,必须等待2s的间隔才会生成新的LSP(产生LSP的延迟时间过长,则会导致本地路由信息的变化无法及时通告给邻居路由器,使网络的收敛速度变慢)
相同的LSP,在网络震荡时,将会延长LSP生成间隔)
智能定时器:可以根据路由信息的变化频率自动调整延迟时间(ISIS LSP生成定时器:对于LSP-id 作用:加快网络的收敛速度,同时又不影响系统性能(可以对于突发事件(如接口Up/Down)快速响应,加快网络的收敛速度。同时,当网络变化频繁时,智能定时器的间隔时间会自动延长,避免过度占用CPU资源)
配置:timer lsp-generation + 最大生成间隔+首次生成间隔+后续生成间隔
第一次:首生成间隔
第二次及后续:后续生成间隔^2(N-1)一直到最大生成间隔
三次之后回到首次生成间隔
加快泛洪LSP的时间:
ISIS会将小于指定数目的LSO向外发送,剩余LSP等待5s(华为默认发送LSP的间隔)发送
用户可以指定每次扩散的LSP数量,这个数量是针对所有接口的。如果需要发送的LSP的数量大于这个数,则就发送lsp-count个LSP。如果配置了定时器,在路由计算之前如果这个定时器未超时,则立即扩散;否则在该定时器超时时发送
如果命令中没有指定级别,则缺省同时在Level-1和Level-2中使能此功能
加快SPF的计算时间:
SPF智能定时器(Flash flood):收到新的LSP,首次立即计算,后续如果重复收到新的LSP,延长计算间隔
一个正常运行的IS-IS网络是稳定的,发生大量的网络变动的几率很小,IS-IS路由器不会频繁的进行路由计算,所以第一次触发的时间可以设置的非常短(毫秒级)。如果拓扑变化比较频繁,智能定时器会随着计算次数的增加,间隔时间也会逐渐延长,避免占用大量的CPU资源
timer spf 最大间隔 首次间隔 后续间隔
改进SPF的计算方法:
SPT与原来的算法所计算的结果相同,大大降低了CPU的占用率,提高了网络收敛速度
在路由计算中,路由代表叶子,路由器则代表节点
I-SPF:除了第一次计算时需要计算全部节点外,每次只计算影响的节点,而最后生成的最短路径树 如果I-SPF计算后的SPT改变,PRC会只处理那个变化的节点上的所有叶子;如果经过I-SPF计算后的SPT并没有变化,则PRC只处理变化的叶子信息
比如一个IS接口,则整个网络拓扑的SPT是不变的,这时PRC只更新这个节点的接口路由,从而节省CPU占用率
PRC和I-SPF节点使能一个IS-配合使用可以将网络的收敛性能进一步提高,它是原始SPF算法的改进,所以已经代替了原有的算法
默认情况下华为路由器采用I-SPF和PRC进行计算,不需要命令配置
ISIS快收敛配置:
ISIS 管理标记:引入外部路由后,只有宽模式(扩展的TLV)才能携带tag(管理标记),携带在路由信息TLV的子选项中(stub TLVs)
ISIS开销模式:
窄模式(Narrow)(默认):计算的开销范围:(0-63)
使用的TLV:
128号TLV(IP Internal Reachability TLV):用来携带路由域内的IS-IS路由信息
130号TLV(IP External Reachability TLV):用来携带路由域外的IS-IS路由信息
2号TLV(IS Neighbors TLV):用来携带邻居信息
宽模式(Wide):TLV发生改变:Extended(扩展的)
使用的TLV:
135号TLV(Extended IP Reachability TLV):用来替换原有的IP reachability TLV,携带IS-IS路由信息,它扩展了路由开销值的范围,并可以携带sub TLV(不区分内外部路由)
22号TLV(IS Extended Neighbors TLV):用来携带邻居信息
import-route Direct tag 100 //将引入的直连路由打上标记100
import-route level 2 into level 1 tag 100 //只将携带标记100的路由引入到level-1
基本特性:只有宽模式(扩展的TLV)才能携带tag(管理标记)
管理标记特性允许在IS-IS域中通过管理标记对IP地址前缀进行控制,可以达到简化管理。其用途包括控制不同级别和不同区域间的路由引入,以及在同一路由器上运行的IS-IS多实例
管理标记值与某些属性相关联。当cost-sytle为wide、wide-compatible或compatible时,如果发布可达的IP地址前缀具有该属性,IS-IS会将管理标记加入到该前缀的IP可达信息TLV中。这样,管理标记就会随着前缀发布到整个路由域
使能管理标记时,必须使能IS-IS wide metric属性:cost-sytle wide
工作原理:
ISIS LSP分片扩展:使IS-IS路由器生成更多的LSP分片,用来携带更多的IS-IS路由信息
基本概念:
初始系统(Originating System):初始系统是实际运行IS-IS协议的路由器。允许一个单独的IS-IS进程像多个虚拟路由器一样发布LSP,而“Originating System”指的是那个“真正”的IS-IS进程
系统ID(Normal System-ID):初始系统的系统ID
虚拟系统(Virtual System):由附加系统ID标识的系统,用来生成扩展LSP分片。这些分片在其LSP ID中携带附加系统ID
附加系统ID(Additional System-ID):虚拟系统的系统ID,由网络管理器统一分配。每个附加系统ID都允许生成256个扩展的LSP分片
工作原理:(使能分片扩展后,必须重启ISIS进程)
在IS-IS中,每个系统ID都标识一个系统,每个系统都最多可生成256个LSP分片。通过增加附加系统ID,可以最多配置50个虚拟系统,从而使得IS-IS进程最多可生成13056个LSP分片。
使能分片扩展功能之后,如果存在由于报文装满而丢失的信息,系统会提醒重启IS-IS。重启之后,初始系统会尽最大能力装载路由信息,装不下的信息将放入虚拟系统的LSP中发送出去,并通过24号TLV来告知其他路由器此虚拟系统和自己的关系(24号TLV携带真实路由器的系统id)
创建虚拟systerm id(最多50个,虚拟系统id全网唯一),使能LSP分片功能,必须重启ISIS分片功能才能正常运行,分片功能正常运行之后,所有虚拟系统产生的LSP都会携带真实设备的路由信息
工作模式:
Mode-1:
应用场景:网络中的部分路由器不支持LSP分片扩展特性(兼容无法识别LSP分片功能的设备)
工作原理:虚拟系统参与路由SPF计算,初始系统发布的LSP中携带了到每个虚拟系统的链路信息;虚拟系统发布的LSP也包含到初始系统的链路信息。这样,在网络中虚拟系统看起来与初始系统相连的真实路由器是一样的。
每个虚拟系统产生的LSP和真实设备的flag(att level-1-2)完全相同
真实系统到虚拟系统的开销都为0,保证SPF计算,真实系统的下游节点一定是虚拟系统
Mode-2:
应用场景:网络中所有路由器都支持(识别)LSP分片扩展特性
工作原理:虚拟系统不参与路由SPF计算,网络中所有路由器都知道虚拟系统生成的LSP实际属于初始系统。在该模式下工作的IS-IS,可以识别IS Alias ID TLV的内容,并作为计算树和路由的依据。
虚拟系统产生的LSP分片将会携带24号TLV(存放真实系统id),对端设备收到后,首先查看24号TLV,查看虚拟系统属于哪个真实设备,在SPF计算时,虚拟系统不参与SPF计算,虚拟系统携带的路由信息全部都依附于真实设备
说明:无论在哪种方式下,初始系统和虚拟系统的LSP零分片中,都必须包含IS Alias ID
TLV来表示初始系统是谁
配置:ISIS进程下:LSP-fragment-extend mode-1 //使能ISIS mode-1分片功能
virtual-systerm 2222.2222.2222 //配置虚拟系统id
用户视图下:reset ISIS all //重启进程
ISIS 路由过滤:
Filter-policy acl/ip-prefix/route-policy import
从协议路由表加入IP路由表时,执行import策略,但是不会影响LSP的信息
Filter-policy export
部署在引入外部路由的设备上,在外部路由引入ISIS时执行过滤操作,生成的LSP将不会携带外部路由信息
ISIS 路由渗透:
把level-2的路由信息引入level-1中执行路由渗透,目的是为了避免次优路径
ISISv6基本原理与配置:
ISIS 协议扩展:
ISIS的报文采用TLV结构,因此扩展性很好:
为支持新的协议和特性,只需要扩展新的TLV或子TLV
可以轻松扩展支持IPv6,TE,MT等协议和特性
IS-IS对IPv6的支持不需要对协议做大的改动,因此协议的继承性很好;不像OSPF,为支持IPv6需要开发全新的协议OSPFv3
扩展的TLV类型:设计两个新的TLV支持IPv6
6 Reachability TLV [Type 236] [0xEC]:IPv6路由可达TLV;携带在LSP消息中
IPv6 Reachability:类型值为236(0xEC),通过前缀、度量、标记等来描述可达的IPv6前缀/路由信息
在IPv4中有IPv4内部可达性TLV和IPv4外部可达性TLV,在IPv6的扩展当中使用一个“X”bit来区分“内部”和“外部”
U:up/down bit ,标识这个前缀是否是从高level通告下来的(用来防环路)
Up:表明level-2路由引入level-1,U置位,防止路由环路
Down:表明level-1不再引入level-2
X:external original bit ,标识这个前缀/路由是否是从外部路由(其他路由协议)引入过来的
S:subtlv present bit,标识是否携带子TLV位。(可选)(tag标记TLV)
6 Interface Address TLV [Type 232] [0xE8]:IPv6接口地址TLV;携带在Hello消息中
IPv6 Interface Address:类型值为232(0xE8)
它相当于IPv4中的“IP Interface Address” TLV,只不过把原来的32比特的IPv4地址改为128比特的IPv6地址
在hello PDU中,“接口地址TLV”只包含发送hello包的接口的链路本地地址;对于LSP,“接口地址TLV”只包含IS的全球单播地址
这个TLV结构是直接从TLV132映射过来的,因此,原来TLV132最多可以64个IPv4地址(32位),在TLV232中,最多只能有16个IPv6地址(128位)
ISIS ST和MT:
IS-IS ST单拓扑:
IS-IS为所有协议维护相同的SPT (Shortest Path Tree)
IPv4和IPv6的拓扑必须一致
ST单拓扑缺点:
不足之处:
网络可维护性的需求在目前的运营商中越来越被重视,独立拓扑的维护网络,即带内维护网络的需求开始出现
IS-IS为所有协议维护相同的SPT,这意味着IPv4和IPv6的拓扑必须一致
有什么问题?
不适合分离拓扑的网络部署
为维护相同的拓扑,所有接口都必须同时运行IS-IS IPv4和IS-IS IPv6,部署不灵活
不能使用IPv4区域来链接不同的IPv6区域,否则IPv4区域会丢弃IPv6的流量
MT(多拓扑):分离的拓扑:若支持MT,IS-IS可以为IPv4和IPv6维护分离的拓扑,使IS-IS在一个路由域中维护多个拓扑(ISIS支持同时部署IPv4和IPv6,并且可以实现一套物理拓扑,多套不同逻辑拓扑)
(华为设备只支持IPv4和IPv6多拓扑)
ISIS在产生LSP时,每个协议都会产生独立的拓扑信息和独立的路由信息
ISIS路由协议主要可以分为以下几个方面:
邻居的建立
路由可达(Prefix Reachable)与路由器可达(IS Reachable)的发布
SPF计算以及路由计算
为了达到多拓扑的相互隔离,以上几个方面均要求携带MT参数以满足这一要求(SPF计算与路由计算在路由器内识别完成)
新增四种新的TLV分别满足以上过程,实现了通用环境下的ISIS MT的交互过程:
TLV 229 – Multi-Topology Identifier:携带接口地址
TLV 222 – Multi-Topologies Intermediate System:中间系统TLV,携带MT拓扑信息
TLV 235 – Multi-Topologies Reachable IPv4 Prefixes:携带IPv4的路由
TLV 237 – Multi-Topologies Reachable IPv6 Prefixes:携带IPv6的路由
ISISv6配置:
使能ISIS进程多拓扑:[Huawei-isis-1]ipv6 enable topology ipv6
接口上使能ISIS:[Huawei-GigabitEthernetX/Y/Z]isis ipv6 enable
查看ISIS邻居关系:[Huawei]dis isis peer
查看ISIS路由:[Huawei]dis isis route
双栈ISIS应用案例:
Area id:运营商获取
Systerm id:环回接口演绎得到
例:172.16.1.0
172.016.001.000---高位补0,补够3位
1720.1600.1000---四位一组
ISIS默认开销cost:10
快速收敛特性:
智能生成计时器
快速泛洪LSP
SPF智能生成计时器
I-SPF、PRC
Small-hello
ISIS 认证特点:
和OSPFv2比较:
OSPFv2配置认证后,所有报文都会携带认证信息,不灵活还消耗设备资源
ISIS认证比较灵活,接口认证只认证hello消息
区域认证针对level-1的LSP或SNP报文认证
路由域认证针对level-2的LSP或SNP报文认证
区域认证和路由域认证共同的功能:
发LSP 收LSP
发SNP 收SNP
管理员可以针对其中的任意一个设置认证功能,非常灵活
P2P邻居建立:
三次握手机制:
新的TLV:P2P状态判断TLV
本地电路id (电路id:标识一台设备)
对端电路id
对端systerm id
两次握手机制:
只要收到对端的hello消息就UP
ISIS如何支持P2MP:
子接口+P2P