跳到主要内容

2. 标签栈

标签栈 (label stack) 是附加在网络层数据包前的一组标签栈项. 每个栈项长度为 32 bits, 包含标签值、实验用途字段、栈底标志 (Bottom of Stack, S) 和生存时间 (Time to Live, TTL).

标签值用于标识转发等价类 (Forwarding Equivalence Class, FEC) 或特殊处理语义. S 位用于指示当前栈项是否为栈底. 当 S 位为 1 时, 该栈项之后就是原始网络层数据包. TTL 字段用于限制数据包在网络中的转发寿命, 避免转发环路导致数据包无限循环.

当 LSR 转发数据包时, 它可以压入、弹出或替换标签栈项. 接收方必须根据栈底标志和链路层上下文确定被封装的网络层协议.