为什么 Junos 在 LIB 中为单个标签创建两个条目——一个带有“S=0”,另一个带有隐含的“S=1”?

网络工程 杜松 多路复用器
2022-02-10 22:57:34

在倒数第二个 LSR 中, label 有以下两个条目301040

root@r2> show route table mpls.0 protocol rsvp

mpls.0: 14 destinations, 14 routes (14 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

301040             *[RSVP/7/1] 00:06:53, metric 1
                    > to 172.22.201.14 via ge-0/0/2.0, label-switched-path r1->r4
301040(S=0)        *[RSVP/7/1] 00:06:53, metric 1
                    > to 172.22.201.14 via ge-0/0/2.0, label-switched-path r1->r4

root@r2>

我是否正确,应该将其S=0视为一个条件,即如果S=0(未设置 MPLS 标头中的堆栈位底部)然后做一些事情S=1当(设置 MPLS 标头中的堆栈位底部)时,这可能会有所不同? 例如,如果标签在栈底,LSR 可以将标签301040与标签交换;如果标签不在12345栈底,则将标签弹出。301040

1个回答

S=0 表示标签不在栈底。在某些情况下,一个数据包可能包含多个标签,每个标签都有不同的用途。在这种情况下,我们可以强制路由器以不同于只有一个标签的数据包的方式处理这样的数据包。请参考此(标签堆叠部分): https ://www.juniper.net/documentation/en_US/junos/topics/reference/command-summary/show-route-table.html