LDP协议工作的两个阶段
- 邻居发现(neighbor discovery)—— Hello发向224.0.0.2,UDP端口号为646(源和目的端口都是);
- 会话建立(session established)—— 向邻居建立TCP端口号为646的连接(源端口是随机的,目的端口是646)。
LDP邻居关系建立分两种:
- 一个是组播的邻居发现(向224.0.0.2的UDP 646端口发送Hello包);
- 一个是定向的邻居发现(参见:《【实验】MPLS L2VPN下,Point-to-Point的AToM实验》)。
LDP所使用到的两个IP地址
- RID —— Router ID,LDP标识(跟OSPF、BGP等路由协议的router-id一样仅仅只是一个标识);
- Transport IP address —— LDP邻居建立所用到的IP地址(默认情况下使用RID进行LDP的邻居建立)。
修改Transport IP address为本接口:
R2(config-if)#int e0/0.23
R2(config-subif)#mpls ldp discovery transport-address interface
LDP工作目的
在邻居之间通过TCP会话传递标签信息库(只有本地标签才能传递给邻居)。
show mpls ldp binding local —— 查看本地分配的标签信息
show mpls ldp neighbor —— 本地LDP邻居关系(也是本地标签信息的同步对象)
关于“某个前缀在本地的标签数”的统计方式
LDP路由器中关于某个前缀的标签数等于N+1(N代表邻居个数,每个邻居分配一个标签;1代表本地,本地也会分配一个标签)。
show mpls ldp binding —— 查看LDP的标签绑定表
标签过滤方式
Frame-Mode的标签空间是自由保留,所以很多情况下会消耗内存保留一些无用的标签。为此Frame-Mode提供了以下两种标签过滤的方式:
方法一:不发

上述拓扑中,只把R5上关于5.5.5.5、6.6.6.6和56.1.1.0这三条路由的标签发给R4:
R5(config)#access-list 10 permit host 5.5.5.5
R5(config)#access-list 10 permit host 6.6.6.6
R5(config)#access-list 10 permit host 56.1.1.0
R5(config)#access-list 4 permit 4.4.4.4
R5(config)#mpls ldp advertise-labels for 10 to 4 // for 10:access-list为10中过滤了一些标签,只有这些标签才能发送给LDP邻居;to 4:access-list为4中过滤了一些LDP邻居,只有这些LDP邻居才能收到上述过滤好的标签;将“10”中过滤好的标签通告给路由器“4”。
R5(config)#no mpls ldp advertise-labels // 上述命令必须由该命令触发,如果单独用会过滤所有标签
方法二:不收
上述拓扑中, R4只从R5接收5.5.5.5、6.6.6.6和56.1.1.0这三条路由的标签:
R4(config)#ip access-list standard F5
R4(config-std-nacl)#permit host 5.5.5.5
R4(config-std-nacl)#permit host 6.6.6.6
R4(config-std-nacl)#permit host 56.1.1.0
R4(config)#mpls ldp neighbor 5.5.5.5 labels accept F5
发表评论?