跳到主要内容

1. 简介

本文档规定了"MPLS 标签栈编码"(MPLS Label Stack Encoding)。MPLS 网络层数据包是以将一个或多个标签(label)置于网络层数据包之前, 从而将普通网络层数据包转换为带标签的数据包(labeled packet)的方式来生成的。进行标签交换的路由器称为"标签交换路由器"(Label Switching Router, LSR)。

本文档规定了当带标签的数据包在数据链路上传输时, 其标签栈(label stack)中各字段所使用的编码方式。本文档特别规定了在 PPP 数据链路以及 LAN 介质(如 ethernet)上传输带标签的数据包时使用的编码方式。然而, 本文档的规定足够通用, 只要对数据链路或"数据链路封装"略作修改, 就可以适用于大多数数据链路。

本文档不规定标签分发协议; 标签分发协议在其它文档中另行规定。然而, 本文档确实规定了标签栈的"生存时间"(Time to Live, TTL)字段的处理规则, 这些规则必须与标签分发协议协同工作。本文档还规定了"实验用途位"(experimental use bits)的处理规则, 这些位可能由标签分发协议使用。

本文档还规定了用于通过 PPP 传输带标签数据包的"网络控制协议"(Network Control Protocol)。

本文档规定了用于在 LAN 介质上传输带标签数据包的 Ethertype 值。

在本文档中, 标签栈中的标签值 0-15 被赋予特殊含义。其中某些值(值 0-3)已在本文档中指定; 其余的值(4-15)保留给 IANA 在 IETF 共识(IETF Consensus)基础上进行分配。

需要注意的是, 在某些数据链路上, 对栈顶标签的编码可能与本文档中规定的通用编码不同。在这些数据链路上, 本文档中规定的编码仍然用于标签栈中其余(非栈顶)的标签。本文档不规定任何特定的数据链路在传输栈顶标签时使用何种编码; 这类编码在描述特定数据链路技术的文档中另行规定。

本文档中出现的"MUST"、"MUST NOT"、"REQUIRED"、"SHALL"、"SHALL NOT"、"SHOULD"、"SHOULD NOT"、"RECOMMENDED"、"MAY"和"OPTIONAL"等关键词, 应按照 RFC 2119 [2] 中的描述进行解释。