MPLS:多协议标签交换
最初的目的是为了解决TCP/IP路由器转发路由表过慢的问题。

LDP的状态机制:

1:initialized
2:open-received
3:open-sent
4:operational
5:non-existent

初始状态为initalized,若被动方收到可接受的init消息,发送init及keeplive消息,转为opne-recevied状态;若主动方发送init消息,则转为opne-sent状态。;若收到init消息之外的其他LDP消息或者超时则转为non-existent状态。

处于open-received状态时,若收到任何keeplive之外的消息或超时发送NAK消息转为non-existent状态;若收到keeplive消息,则转为operational状态。

处于open-sent状态时,若收到init之外的消息或超时发送NAK消息则转为non-existent状态;若收到可接受的init消息,发送init消息及keeplive消息,则转为open-received状态。

处于operational状态时,若收到shutdown消息或超时发送shutdown消息则转为non-existent状态;若收到其他LDP消息,则状态不变。

处于non-existent状态时,若LDP会话的连接成功建立,则转为initalized状态。

LDP发送hello包使用UDP 646,发送update使用TCP 646,使用组播地址224.0.0.2,router-id与OSPF一样,router-id之间必须要有路由。

标签分发

上游对下游分发标记,及控制层面中的路由通告的方向。LDP分配标签时参考cef表,cef表中所有的路由都分配一个标签,形成一个binding表。

binding表中有路由前缀以及本地分配的标签(local binding),还会把从邻居收到的关于该路由的标签也放置进去(remote binding,其中包含邻居的id及邻居分配给该路由的标签)。

这里的路由前缀一定是严格匹配一致性的。10.1.1.0/24与10.1.1.1完全不一样。
MPLS中路由在传递过程中不能汇总,不能改变其位数(掩码)。如果底层是OSPF,那么OSPF的回环地址最好写成32位的主机地址。

最佳标签:

产生过程:

mpls 静态lsp配置 mpls ldp状态_标签分发

负载均衡的最佳标签

如果出现负载均衡,会产生两个最佳标签,但实际上只会走其中一条。原因是底层存在一种流的算法,算法根据目的地址匹配出一条路径,每一个流只会走其中一条路径,该算法会尽可能将所有的流均衡到两条负载均衡的路上,若其中一条路断开,cef不会自动切换路径,该路径上所有的流将不能传输。