LDP的快速收敛---LDP会话保护(高级feature)

Technorati 标签: MPLS,CCIE,LDP,LDP session protection,收敛算法

LDP收敛总结Summary:数据库

若是一个有冗余链路的网络,主链路down了,那么LDP的收敛时间=IGP的收敛时间.(约等于)网络

当主链路恢复之后,LDP的收敛须要等待IGP收敛完了,LDP才能从新创建邻居(TCP/UDP 646,创建LPD绘话和邻居),而后交换标签.session

在中间会出现空档期,IGP的下一跳和LSP不一致,且IGP邻居创建好了,LDP的标签状态是drop状态。LSP不完整,最后走IP进行报文的转发.ide

------LDP会话保护,能够解决主链路恢复之后的空档期的问题.加密

那么问题来了,有没有一种技术,在冗余链路的网络环境中,当IGP的链路一恢复之后,那么LDP就当即恢复呢?--下面是LDP的高级feature,全部细节都会涉及到.spa

LPD的计时器:3d

固然是有技术能保障LDP的收敛,该技术是LDP的高级feature.router

clip_p_w_picpath002

对于平常应用来讲,其实不须要修改LDP的任何计时器.blog

Directed LDP 邻居:(LDP直连邻居,监听组播224.0.0.2)

clip_p_w_picpath004

session hold time=180s, keepalive=60s.----这两个时间是针对TCP链接的时间.

mpls ldp holdtime

Discovery hello: hold time =15s, interval=5s. -------这个是UDP的hello包.当邻居创建以前和邻居创建以后.

须要用UDP的hello进行饱和。来感知邻居的存在.

命令: mpls ldp discovery hello holdtime xxxx

mpls ldp discovery hello interval xxxx

Targeted LDP邻居:

下面的计时器,是用于非直连的LDP邻居之间的创建所用的计时器:

clip_p_w_picpath006

咱们知道,LDP的创建,发送的是224.0.0.2的组播,而后直连路由器监听该组播端口,而后创建LDP邻居.可是若是是非直连的话,只能发送单播进行邻居的创建和饱和。

clip_p_w_picpath008

因此targeted LDP邻居不能自动发现,须要手动定义.

holdtime=90s interval=10s.

命令:

ldp discovery targeted hello holdtime xxx

ldp discovery targeted hello interval xxx

LDP的认证:

LDP的认证采用的是MD5的散列算法进行加密:

mpls ldp neigbhor 22.1.1.1 password Hank

22.1.1.1是邻居的router-id,后面配置密码,采用md5.

clip_p_w_picpath010

直接在全局下面配置的.

注意:

当咱们的LDP邻居已经起来之后,再配置密码,这个时候不论是否邻居是否超过holdtime,都不会down掉.由于邻居已经创建好了,而keepalive也一直都是进行饱和的,只要链路没有问题,那么邻居永远不会down掉,因此配置密码须要在ldp创建邻居之前作认证.

LDP的自动配置(auto config):

该功能运行之后,就不须要再在接口下面打上mpls ip.

例如路由协议是ospf:

router ospf 1

mpls ldp autoconfig area x

network 0.0.0.0 255.255.255.255 a 0

exit

这样的话,就可让该路由器全部处于OSPF的接口自动运行mpls ip,而且运行LDP协议.

创建LDP邻居.

clip_p_w_picpath012

若是在IGP路由进程中配置了mpls ldp autoconfig,就算在接口下面no mpls ip都不行,系统会给一个提示:

clip_p_w_picpath014

这个时候须要在接口下面no mpls ldp igp autoconfig才能将该接口移除了.

LDP会话保护:(LDP收敛的高级feature)

-----LDP快速收敛

R1到R5有两个路径:

主用链路:R1--R2--R4--R5

备用链路:R1--R3--R2--R4--R5

当主用链路R1--R2 down掉了。这个时候IGP会在核心路由表删除R1到R5下一跳的R2路径.当IGP收敛之后,由于LDP数据库中有R3分配过来的标签,因此当主用链路down了,那么IGP的收敛时间约等于LDP的收敛时间.

clip_p_w_picpath016

当主用链路恢复了,那么首先R1和R2须要创建IGP的邻居.

当R1和R2 IGP邻居创建好之后,R1和R2的LDP才开始创建邻居。这中间IGP和LSP的路径不一致,最后致使的结果是:

当R1和R2的主用链路恢复之后,R1和R2的IGP邻居创建好之后,R3分配给R1的标签会当即将状态切换到Drop.标签是不可用的。这个时候再来报文,R1由于没有MPLS标签,而会直接走IP进行转发.这样其实是没有走MPLS的.

要解决这个问题,有两种方式:

1) LDP的会话保护

2) LDP,IGP同步时间缩短.

LDP链路保护:(targeted LDP)

clip_p_w_picpath018

Session protection

主链路故障,down了:

R1---R2---链路OK, LDP neighbor OK.Targeted LDP.

R1---R2---链路down掉,那么IGP收敛(R1和R2的LDP邻居关系不会down掉,由于是target LDP).

R1到R5,路径为R1-R4-R2-R3-R5.(LDP收敛约等于IGP收敛)

主链路恢复:

R1和R2 IGP收敛.那么R1到R5的下一跳必定会变成R2,这个时候,从LDP binding 表中把R2分配给我关于55.1.1.1/32的标签再次装载到MPLS Forwarding table中去,这样LDP就完成了收敛.

Summary:

用targeted LDP,当主链路恢复的时候,几乎LDP的收敛时间能够等于IGP收敛时间,或者说略长于IGP的收敛时间.由于LDP不用从新创建邻居. 这就是Targeted LDP neighbor的好处.

解决方案:在LDP邻居两端启用target LDP session, 实现跨越多跳来维持session.

配置方法:

1, 在全部支持session保护的路由器上面配置:mpls ldp session protection

2, 在不支持session保护的路由器上面配置: mpls ldp discovery targeted-hello accept

会话保护的意思:主链路恢复之后,IGP收敛完成之后,须要LDP创建邻居,这里会话保护和targeted LDP neighbor技术可不从新创建邻居.这样就大大缩短了LDP收敛时间,由于LDP不须要从新创建邻居,只须要从新装载MPLS Forwarding table的标签.

clip_p_w_picpath020

试验:

clip_p_w_picpath018[1]

在R1和R2上面,全局打上:mpls ldp session protection

这样一来, 其余的配置和以往同样.

如今来观察一下现象.

R1要到R5的55.1.1.1/32,首选的路径是R1-->R2-->R3-->R5

在主用链路正常的状况下,咱们看看R1的表项:

下面能够看到,标签,R2和R4都分配了标签给R1.

在R1上面show mpls ldp nei,能够发现,R2显示的是Targeted hello 11.1.1.1-->22.1.1.1, active.passive

clip_p_w_picpath022

如今将R1和R2的链路shutdown.

clip_p_w_picpath024

这里当R1的e 0/0 shutdown之后,LDP邻居不是down掉,而是hold up.

这个时候再看看R1的标签数据库,咱们惊讶的发现,R1和R2的邻居虽然down了,可是系统仍是保留了R2为55.1.1.1/32分配过来的标签:

clip_p_w_picpath026

并且R1的LDP邻居,11.1.1.1到22.1.1.1仍是继续保留的:\

clip_p_w_picpath028

可是这个时候,在R1的MPLS标签转发表,由于IGP已经切换到R4为下一跳了,因此MPLS标签表也切换到了R4分配的40x的标签:

clip_p_w_picpath030

链路恢复,R1的e 0/0作no shutdown的操做:

clip_p_w_picpath032

这里能够看到,LDP邻居恢复成功.

IGP ospf一旦收敛之后,LDP要作的事情不是创建邻居,由于LDP邻居从头至尾就没有down过.

LDP要作的事情就是将以前保留在LDP数据库中的R2分配过来的标签再次装载进入MPLS 标签转发表中就能达到快速收敛的效果。

clip_p_w_picpath034

相关文章
相关标签/搜索