Home Article Practice 3

3

2023-09-28 14:47  views:562  source:戒色和尚    

三、MPLS LDP与RSPV TE、SR
1、MPLS LDP 与RSVP TE在实际部署会存在一些问题,
请问相较于SR、MPLS LDP与RSVP TE在部署时会出现什么问题?
答:相比与SR部署MPLS LDP时会出现如下问题:
1、MPLS LDP需要IGP的支持以在动态生成LSP的过程中实现基于目的前缀的FEC分类和FEC标签的发布
以及标签信息的管理和维护,设备在控制层面需要运行IGP和LDP,并实现IGP和LDP的交互,导致设备
控制层面较为复杂,增加维护成本。一条链路上需要分配多个标签,标签资源占用多,标签转发表维护工作量大。
2、LDP和IGP的同步问题。IGP收敛较快,网络故障后切换路径,新路径上LDP可能还未建立会话,
导致MPLS VPN业务中断,为解决LDP和IGP同步问题,增加了运维难度。
3、IGP和LDP的LSP都是基于最短路径转发报文,网络易出现链路利用率不均的问题,拥塞控制能力差,
通过修改链路开销无法满足所有业务的选路需求。
4、设备为中心的网络模型中,每个网元独立计算拓扑,路径只能实现以自身为根的局部最优,无全局路径视角,
采用最短路径的路由机制无法实现源节点规划路径的源路由机制,进而无法实现路径规划和流量工程。
5、每个网元都要发送协议报文独立建立和维护IGP、LDP的邻居和会话关系,同时维护LSP的状态,
均会在一定程度上消耗链路带宽资源和设备资源。
相比于SR,部署RSVP TE时会存在一下问题:
1、RSVP TE的实现机制复杂,控制层面需要运行IGP、LDP、RSVP协议,
并且IGP协议需要处理RSVP-TE的泛洪及其链路状态信息,通过约束信息配置、传递、收集,
最后基于约束的CSPF算法计算拓扑,根据算路结果,通过RSVP TE协议建立LSP,检查和预留资源,
设备信令开些非常大,拓扑变更时泛洪的信息较多。
2、RSVP-TE仍采用分布式架构,虽实现了源节点路径规划功能,但需要RSVP协议进行预留确认,
RSVP TE类似于SDH管道,不支持ECMP,故实现网络的负载均衡需建立多个隧道增加了复杂度。
正常业务调整还是故障场景下被动路径调整,都需要逐节点下发配置。
3、RSVP TE配置和维护复杂,通过隧道引流来引导流量进行转发,N个节点互联需要N*(N-1)个隧道配置。
中间的P节点需要维护所有经过他的隧道状态,对设备性能压力较大,无法大量部署。
2、在部署FRR功能时需要使用LFA、RLFA、Ti-LFA功能,确保FRR不会发生环路,
请问为什么FRR会有潜在的环路?
答:当IGP网络在拓扑变化时会向其它网络节点发送拓扑变更的信息,
网络节点收到变更信息之后会独立进行计算拓扑及更新转发表。在这段时间内,每个网络节点收到拓扑的变更信息,
以及进行拓扑计算并更新转发表的时间是不一致的。网络中可能会存在诸多的因素影响着每个节点的
路由同步与转发表的更新速度。
比如:
1、在网络中拓扑变化引入了时延,拓扑变化通知到节点的时间取决于拓扑变化处到该节点的距离。
2、每个节点更新转发表中前缀的顺序不能保证是相同的。
3、控制平面和数据平面的更新速度有差异,与CPU、平台架构等相关。
上述情况会导致数据包在转发时出现A 根据最新收敛的路由信息将数据包转发给了B,而B设备此时路由尚未收敛完成,
认为去往目的地的下一跳仍为A设备,从而导致临时环路产生,这种环路存在时间较短,故称之为微环。
在FRR中,不论是采用LFA、RLFA、还是TI-LFA,都会有可能存在上述微环的风险存在。
LFA的工作机制:
LFA的原理是找到一个非主下一跳(非最短转发路径上的下一跳)的邻居节点,
如果这个邻居节点到目的节点的最短路径不经过源节点,则这个邻居节点为无环备份下一跳。
LFA分为链路保护与节点保护两种场景。
LFA链路保护公式:
Distance_opt(N,D)<Distance_opt(N,S)+Distance_opt(S,D)
公式意思为:从邻居节点N到目的节点D的距离比从邻居节点N到S然后到节点D的距离短,
这样才能保护源节点S到目的节点D之间的最短链路故障之后,切换到邻居节点N转发数据时,
邻居节点不会将流量重新发回S节点的情况。
当发生节点故障时,流量需要从最短路径上S的下一跳节点绕行,所以如果邻居节点同时满足下述公式,
则该邻居节点满足保护条件。
LFA节点保护场景公式:
Distance_opt(N,D)>Distance_opt(N。S)+Distance_opt(S,D)
Distance_opt(N,D)>Distance_opt(N,E)+Distance_opt(E,D)
以上公式意思为:从邻居节点N到达目的节点D的距离比先到主下一跳节点E然后在从E到目的节点D的距离短,
也即从邻居节点N到目的节点D的最短路径不会经过故障节点E,这种情况下,
邻居节点N可以作为节点故障时的LFA节点。邻居节点满足上述两个公式,则可以作为对应设备的保护节点。
但LFA的问题在于它不能覆盖所有场景,在有些拓扑下,LFA无法计算备份下一跳,
如整张网络拓扑的开销无法满足上述任何保护公式的情况下,则会导致无法通过LFA计算出备份路径,
从而只能靠路由协议进行收敛,导致最初的微环问题发生。
R-LFA工作原理:R-LFA是对LFA机制进一步优化的体现,它将LFA节点的计算扩大到了远端节点,
而不仅限于邻居节点,从而提高了LFA计算的成功概率。但实质上还是存在LFA中遗留的问题,
就是可能存在拓扑开销无法满足保护公式时从而造成R-LFA失效的情况。
在RLFA中,也存在着两个保护公式:
RLFA的链路保护公式:
Distance_opt(N,P)<Distance_opt(N,S)+Distance_opt(S,P)
Distance_opt(Q,D)<Distance_opt(Q,S)+Distance_opt(S,D)
RLFA的节点保护机制:
Distance_opt(N,P)<Distance_opt(N,E)+Distance_opt(E,P)
Distance_opt(Q,D)<Distance_opt(Q,E)+Distance_opt(E,D)
以上公式中,N为源节点的邻居节点,D为源节点的目的节点,P为源节点的扩展空间,
Q为末端节点的扩展空间。通过以上公式计算出属于P与Q空间的设备,PQ空间中重叠的设备即为PQ节点设备,
该设备为一个去往源和目的均不会产生环路的设备。PQ节点通过与源节点建立一条隧道,
这条隧道将作为虚拟的RLFA备份路径添加到FIB表中,当源节点的下一跳故障之后,
将快速切换到这条RLFA备份路径上进行转发流量。
因为RLFA本质上还是依靠开销去选出PQ节点,所以还是会存在开销不符合公式的情况下时,
造成RLFA失效的情况。同时建立RLFA隧道的设备还需要维护隧道的状态,故在一定程度上增加了设备的压力。
TI-LFA的原理:
在SR路由协议基础上,TI-LFA可以有效的解决RLFA中存在的问题。虽然也继承了RLFA的算法,
但TI-LFA为避免出现无法计算出PQ节点从而造成TI-LFA失效的情况不仅会计算出扩展P空间、Q空间,
还会去计算主节点故障收敛后的最短路径树、备份出接口与repair-list。TI-LFA继承RLFA算法,
虽然还是会根据RLFA去计算出P空间与Q空间的设备,但不再依靠开销计算的路由去转发数据包,
而是通过repair-list对数据包进行转发。通过Repair-List进行数据包的封装,
设备在转发报文时就不需要去查找路由表,只需要按照报文中的标签信息进行转发即可,
故避免了设备因为路由收敛速度不一致导致环路的问题。华为设备在计算TI-LFA备份路径时,也默认计算扩展P空间。
但TI-LFA仍然存在由于主设备收敛完成导致repair-list失效,
进而重新携带正确主用路径的标签转发信息,
由于收敛时间的不一致导致的本地及远端正切微环和回切微环问题。
综上所述,在使用FRR时, LFA、RLFA、TI-LFA均可能产生微环路。
在Ti-LFA中当设备感知到其他设备还未完成收敛时,
本设备继续使用repair-list内的标签信息进行数据包的封装及转发,
只有当设备感知到其他设备收敛完成之后,才会将repair-list内的标签信息清除掉,
恢复成正常的转发标签信息,以此避免正切微环、本地回切防微环和远端微环的产生。



Disclaimer: The above articles are added by users themselves and are only for typing and communication purposes. They do not represent the views of this website, and this website does not assume any legal responsibility. This statement is hereby made! If there is any infringement of your rights, please contact us promptly to delete it.

字符:    改为:
去打字就可以设置个性皮肤啦!(O ^ ~ ^ O)