计算机网络(第8版)第四章 网络层(4.9.1~4.9.3)
MPLS (MultiProtocol Label Switching):互联网建议标准。多协议:在 MPLS 的上层可以采用多种协议。标签:MPLS 利用面向连接技术,使每个分组携带一个叫做标签 (label) 的小整数。标签交换路由器用标签值检索转发表,实现分组的快速转发。1、MPLS 特点MPLS 并没有取代 IP,而是作为一种 IP 增强技术。特点: 支持面向连接的服务质量;支持流量工程,
4.9 多协议标签交换 MPLS

MPLS (MultiProtocol Label Switching):互联网建议标准。
多协议:在 MPLS 的上层可以采用多种协议。
标签:MPLS 利用面向连接技术,使每个分组携带一个叫做标签 (label) 的小整数。标签交换路由器用标签值检索转发表,实现分组的快速转发。
1、MPLS 特点
MPLS 并没有取代 IP,而是作为一种 IP 增强技术。
特点: 支持面向连接的服务质量; 支持流量工程,平衡网络负载; 有效地支持虚拟专用网 VPN。
4.9.1 MPLS 的工作原理

当网络很大时,查找路由表要花费很多时间。
在出现突发通信时,缓存会溢出,引起分组丢失、传输时延增大和服务质量下降。
1、MPLS 基本工作过程
1)MPLS 特点:
在 MPLS 域的入口处,给每一个 IP 数据报打上固定长度标签。
对打上标签的 IP 数据报在第二层(链路层)用硬件进行转发。
采用硬件技术对打上标签的 IP 数据报进行转发就称为标签交换。
可以使用多种数据链路层协议,如 PPP、以太网、ATM 以及帧中继等。
2)MPLS 协议的基本原理

3)MPLS 域
MPLS 域 (MPLS domain) :指该域中有许多彼此相邻的路由器,并且所有的路由器都是支持 MPLS 技术的标记交换路由器 LSR (Label Switching Router)。
LSR 同时具有标记交换和路由选择这两种功能。标记交换功能是为了快速转发,路由选择功能是为了构造转发表。
4)MPLS 的基本工作过程
(1)找出标签交换路径 LSP。
各 LSR 使用标签分配协议 LDP (Label Distribution Protocol) 交换报文,找出和标签相对应的标签交换路径 LSP (Label Switched Path)。整个标签交换路径就像一条虚连接一样。
(2)打标签,然后转发。
入口节点 (ingress node) 给进入 MPLS 域的 IP 数据报打上标签(实际上是插入一个 MPLS 首部),并按照转发表把它转发给下一个 LSR。以后的所有 LSR 都按照标签进行转发。
给 IP 数据报打标签的过程叫做分类 (classification)。
(3)标签对换。
一个标签仅在两个 LSR 之间才有意义。
LSR 要做两件事:转发,更新标记。
更新标记:把入标记更换成为出标记。称之为标签对换 (label swapping)。

(4)去除标签。
当分组离开 MPLS 域时,MPLS 出口节点 (egress node) 把分组的标签去除。
把 IP 数据报交付给非 MPLS 的主机或路由器。
这种“由入口 LSR 确定进入 MPLS 域以后的转发路径”称为显式路由选择 (explicit routing)。
与互联网中通常使用的“每一个路由器逐跳进行路由选择”有着很大的区别。
2、转发等价类 FEC
1)给 IP 数据报打标签的过程叫做分类 (classification)。
第三层(网络层)分类:只使用 IP 首部中的源和目的 IP 地址等。
大多数运营商实现了第四层(运输层)分类:除了要检查 IP 首部外,运输层还要检查 TCP 或 UDP 端口号。
有些运营商则实现了第五层(应用层)分类:进一步地检查数据报的内部并考虑其有效载荷。
2)转发等价类 FEC (Forwarding Equivalence Class) :路由器按照同样方式对待的分组的集合。
按照同样方式对待含义:从同样接口转发到同样的下一跳地址,并且具有同样服务类别和同样丢弃优先级等。
例如: (1) 目的 IP 地址与某一个特定 IP 地址的前缀匹配的 IP 数据报; (2) 所有源地址与目的地址都相同的 IP 数据报; (3) 具有某种服务质量需求的 IP 数据报。
3)划分 FEC 的方法不受限制,由网络管理员来控制。
入口节点并不是给每一个 IP 数据报指派一个不同的标签,而是将属于同样 FEC 的 IP 数据报都指派同样的标签。
FEC 和标签是一一对应的关系。
3、FEC 用于负载平衡

自定义的 FEC 可以更好地管理网络的资源。这种均衡网络负载的做法也称为流量工程 TE (Traffic Engineering) 或通信量工程。
4.9.2 MPLS 首部的位置与格式
MPLS 不要求下层的网络都使用面向连接的技术。
MPLS 采用封装技术:在把 IP 数据报封装成以太网帧之前,先要插入一个 MPLS 首部。

1、MPLS 首部的格式

给 IP 数据报打上标记就是在以太网帧首部和 IP 数据报首部之间插入一个 4 字节的 MPLS 首部。
(1)标签值(占 20 位),可以同时容纳高达 220 个流(即 1048576 个流)。
(2)试验(占 3 位)。保留用作试验。
(3) 栈S(占 1 位)。在有“标签栈”时使用。
(4)生存时间 TTL(占 8 位),用来防止 MPLS 分组在 MPLS 域中兜圈子。
4.9.3 新一代的 MPLS
MPLS 存在的问题:
控制协议(如 LDP)比较复杂,扩展性差,运行维护较困难。
协议 LDP 无法做到基于时延或带宽等要求的流量调度。
为灵活地选择流量的转发路径,还需要再使用资源预留协议 RSVP。但是: RSVP 的信令非常复杂,每个节点都要维护一个庞大的链路信息数据库。 RSVP 只会选择一条最优路径,不支持等价多路径路由选择 ECMP (Equal-Cost Multipath Routing) 。
1、段路由选择协议 SR
新一代的 MPLS:段路由选择协议 SR (Segment Routing)。
段 (segment):标签,是转发指令的一种标识符。
SR 工作原理: 基于标签交换,但不需要使用协议 LDP。 由源节点为发送的报文指定路径,并将路径转换成有序的段列表 (Segment List),即 MPLS 标签栈,它被封装在分组首部。 网络中的其他节点就执行首部中的指令(即标签)进行转发。
2、控制器
即 SDN 控制器。负责: 收集并掌握全网的拓扑信息和链路状态信息,计算出分组应传送的整个路径。 给分组分配 SR 标签,指明分组从源点到终点的路径。
注:SR 向 IPv6 演进,这就是 SRv6。 SRv6 直接利用 IPv6 字段作为标签寻址 (Locator)。
更多推荐
所有评论(0)