4.9 多协议标记交换MPLS

思维导图:

前言:

**4.9 多协议标记交换MPLS笔记**

**1. **定义与背景**:

  • MPLS (多协议标记交换) 是一种由 IETF 开发的新协议。
  • "多协议"意味着 MPLS 的上层可以使用多种协议。
  • 该协议综合了多家公司的技术,如 Cisco 的 TAG Switching 和 Ipsilon 的 IP Switching。
  • 于2001年1月成为互联网建议标准。**

**2. **工作原理**:

  • MPLS 使用面向连接技术,使每个分组带有一个 "标记" (label)。
  • 分组到达交换机 (标记交换路由器) 时,通过标记检索分组转发表,提高了转发效率。**

**3. **与ATM的关系**:

  • MPLS 和 ATM 都采用面向连接的工作方式。
  • 一度人们认为 ATM 会是网络的未来,但高速 IP 路由器由于其价格低廉,占据了主导地位,导致 ATM 未成为主流。
  • MPLS 不是为了取代 IP,而是作为 IP 的增强技术在互联网中被广泛应用。**

**4. **MPLS 的特点**:

  • 支持面向连接的服务质量。
  • 支持流量工程,可以平衡网络负载。
  • 有效支持虚拟专用网 (VPN)。**

**5. **其他说明**:

  • MPLS 中的 "label" 通常被翻译为 "标记",尽管也有其他翻译如 "标签"。**

这些笔记摘要了 MPLS 的关键内容,从定义、发展背景到主要特点和与其他技术的关系,为读者提供了一个清晰的框架来理解该主题。

4.9.1 MPLS的工作原理笔记

**1. **传统IP网络问题**:

  • 分组在每个路由器都需查找路由表,按"最长前缀匹配"确定下一跳。
  • 大型网络路由表查找时间长,可导致缓存溢出、分组丢失和服务质量下降。**

**2. **MPLS解决方案**:

  • 在MPLS域入口,为IP数据报打上固定长度"标记"。
  • 根据标记用硬件转发IP数据报,速度加快。
  • 采用标记交换:不再上升到第三层,直接在第二层用硬件转发。**

**3. **MPLS域和LSR**:

  • MPLS域中所有路由器都支持MPLS技术,称为标记交换路由器LSR。
  • LSR同时具有标记交换和路由选择功能。**

**4. **MPLS基本工作过程**:

  • **标记分配与交换路径**:LSR使用标记分配协议LDP交换报文,确定与标记对应的标记交换路径LSP。例如路径A→B→C→D。
  • **打标记与转发**:IP数据报进入MPLS域时,入口结点打上标记并按转发表转发给下一个LSR。后续LSR都按标记转发。
  • **标记对换**:每个LSR在转发时,将入标记更换为出标记。
  • **标记移除**:IP数据报离开MPLS域时,出口结点移除标记,后续使用常规转发。**

**5. **分类**:

  • 分类指为IP数据报打标记的过程。
  • 三种分类:第三层(仅IP首部),第四层(加入TCP/UDP首部),第五层(考虑有效载荷)。**

**6. **显式路由选择与传统路由选择**:

  • MPLS采用显式路由选择,由入口LSR确定整个MPLS域内的转发路径。
  • 与常见的"每路由器逐跳选择"方式不同。**

这些笔记摘要了MPLS的工作原理,从其与传统IP网络的区别、基本操作流程到重要概念,为读者提供了一个清晰的理解框架。

我的理解:

我们可以用"机场快速通道"来类比MPLS的工作原理。

**1. **标记(Label)的引入**:

  • 想象你进入一个国际机场,首先需要办理托运、安检等一系列手续。如果你是一个特定的VIP旅客,你会被赋予一个特别的徽章或贴纸。这就类似于MPLS中为数据报文加上的标记。**

**2. **硬件转发**:

  • 拥有VIP标记的你不再需要在每个检查点排队并按照常规流程办理,而是可以直接沿着专门为VIP设定的快速通道前进,类似于数据报文在MPLS域中的快速转发。**

**3. **标记交换(Label Swapping)**:

  • 当你从一个航站楼走到另一个航站楼时,可能需要更换你的VIP徽章或贴纸,因为在不同的航站楼中,标识VIP的方法可能不同。这就像MPLS中数据报文在每个路由器上更换标记。**

**4. **确定路径与LSP**:

  • 在机场内,有明确标示的路线图,指引VIP旅客应该如何快速通过机场各个环节。这与MPLS中预先设定的标记交换路径(LSP)相似。**

**5. **退出MPLS域**:

  • 当你最终到达登机口,准备登机时,你的VIP标记可能会被移除,你将与其他所有旅客一样登机。这与数据报文在离开MPLS域时去除标记的过程相似。**

**6. **显式路由选择**:

  • 这就像机场为VIP旅客提供的专用路线,不同于常规旅客的路径,整个过程都已预先规划好,不需要在每个环节重新决策。**

所以,MPLS就像是网络中的"VIP快速通道",能够更高效地处理数据流,并确保数据报文快速、稳定地到达目的地。

**MPLS转发等价类FEC**

****定义**:

  • **FEC (Forwarding Equivalence Class)**:一组被路由器以相同方式处理的IP数据报集合。这种相同的方式处理可以是:同样的接口转发、相同的下一跳地址、相同的服务类别、相同的丢弃优先级等。**

****FEC的例子**:

  1. 与特定IP地址前缀匹配的目的IP数据报(类似于普通的IP路由器)。
  2. 所有源地址和目的地址都相同的IP数据报。
  3. 满足某种服务质量需求的IP数据报。**

****特性**:

  • FEC的划分非常灵活,完全取决于网络管理员的需求和判断。
  • 一个入口节点不是给每一个IP数据报都分配一个独特的标记,而是给同一FEC的IP数据报分配相同的标记。
  • FEC与标记之间是一对一的关系。**

****FEC在负载平衡中的应用**(参考图4-62):

  • 传统路由选择方法可能导致某条路径过载,如A→B→C。
  • 使用MPLS和FEC,可以通过定义多种FEC来实现负载平衡。
  • 例如,A可以为来自H₁目的地为H₃的数据定义FEC,并选择路径H₁→A→B→C→H₃;
  • 而为来自H₂目的地为H₄的数据定义另一个FEC,并选择路径H₂→A→D→E→C→H₄。
  • 这样的策略使得网络负载更均衡,称为流量工程(Traffic Engineering)或通信量工程。**

****其他**:

  • 『标记对换』与『标记交换』在MPLS上下文中的使用注意。虽然MPLS的LS表示"标记交换",实际功能是"标记对换"。**

**【图4-62解读】:

  • 传统路由可能导致A→B→C路径过载。
  • 通过使用MPLS和自定义FEC,可以使负载更均衡,例如通过路径H₁→A→B→C→H₃和H₂→A→D→E→C→H₄。**

我的理解:

我们可以用一个"火车站调度"的比喻来解释。

---

想象一下,IP数据报是一列列火车,而我们的网络就是一套复杂的铁路系统。每列火车都有自己的起点和目的地,需要在这个铁路系统上找到一条适当的路径。在普通的路由方式中,所有火车都会被调度到最短或最快的路径,比如从A站到C站只经过B站。这就像一个繁忙的火车站,所有的火车都尝试走最快的线路,结果造成了这条线路的拥堵。

而**FEC**就像是火车站的调度员,他们可以为火车分配特定的轨道。比如,从H₁出发去H₃的火车可能被分配到A-B-C这条线路,而从H₂出发去H₄的火车可能被分配到A-D-E-C这条线路。这样,火车的流量就被合理地分散开,使得整个铁路系统运行得更加平稳和高效。

**标记**可以看作火车上挂的标志或者车票,告诉火车应该走哪条线路。同一种FEC的火车都有相同的标志或车票,因此它们都会走相同的路径。

这种方法,也就是为火车(或IP数据报)分配特定的轨道(或路径),使得火车流量更均匀地分布在整个铁路系统上,就叫做"流量工程"或"通信量工程"。

---

笔记:MPLS首部的位置与格式

  1. 邮递标签的需要

    • 通常,我们发送的邮件只需要一个地址标签。但有时,为了特殊处理或更高效的投递,我们可能需要加上一个额外的标签。
    • 同样,IP数据报在传输时需要一种特殊的"标签",即MPLS标记。但是,像IPv4这样的标准邮递方式并没有为这种特殊标签预留空间。因此,我们需要一个方法将其加入。
  2. 标签的位置

    • 假设你的邮件是放在一个信封里的。在你的信和信封之间,你加上了这个特殊的邮递标签。
    • 同样地,MPLS首部就像这个特殊标签,位于数据报和以太网帧之间,确切地说,它位于第二层和第三层之间。
  3. 标签的识别

    • 为了让邮递员知道这是一个特殊的包裹,这个邮递标签有一个特定的标记或颜色。
    • 对于MPLS,当帧携带MPLS标记时,以太网的类型字段会有特定的值,使接收方知道这是一个带有MPLS标记的帧。
  4. 标签的细节

    • 这个邮递标签上有几个重要的字段或部分,如特殊处理要求、优先级和有效期等。
    • MPLS首部有四个字段:标记值、试验、栈S和生存时间TTL。其中,标记值就像一个特定的编号,指明如何处理这个数据报。生存时间TTL像邮递标签上的有效期,确保邮件不会在邮局里不断地被传递,而无法被投递。

多协议标记交换 (MPLS) 总结

**重点:**

1. **标记和标记交换**:MPLS的核心是给数据包打标签并在网络中交换这些标签,以高效地路由数据包。
2. **转发等价类 (FEC)**:相同处理方式的IP数据报的集合。一旦一个数据包被分配到一个FEC,它就被赋予一个标签,此后在MPLS网络中,数据包的路由基于这个标签而非其原始IP头。
3. **性能优化**:MPLS允许流量工程和QoS(服务质量)优化,从而实现更高效和可靠的网络性能。
4. **层次结构**:MPLS操作在第2层(数据链路层)和第3层(网络层)之间,这意味着它可以在多种物理网络上工作。

**难点:**

1. **配置和管理**:由于MPLS提供了高度的灵活性,配置和管理可能会复杂,尤其是在大型网络中。
2. **理解标签堆栈**:在某些情况下,MPLS标签可以堆叠在一起,这需要对MPLS有深入的理解。
3. **流量工程**:虽然MPLS支持流量工程,但要正确和有效地实现它可能需要深入的网络知识和实践经验。

**易错点:**

1. **误解标签操作**:可能会混淆MPLS标签和常规IP路由。重要的是要记住,一旦数据包进入MPLS网络,它是基于其标签而不是IP头进行路由的。
2. **配置错误**:由于MPLS的灵活性,配置错误可能导致数据包路由不当,或网络性能下降。
3. **标签资源管理**:不当地管理和分配MPLS标签可能会浪费网络资源。

通过对MPLS的深入理解和实践,网络工程师可以避免这些常见的误区并充分利用其提供的优势。

相关推荐
蜜獾云12 分钟前
docker 安装雷池WAF防火墙 守护Web服务器
linux·运维·服务器·网络·网络安全·docker·容器
小林熬夜学编程1 小时前
【Linux网络编程】第十四弹---构建功能丰富的HTTP服务器:从状态码处理到服务函数扩展
linux·运维·服务器·c语言·网络·c++·http
Hacker_Fuchen1 小时前
天融信网络架构安全实践
网络·安全·架构
上海运维Q先生1 小时前
面试题整理15----K8s常见的网络插件有哪些
运维·网络·kubernetes
ProtonBase2 小时前
如何从 0 到 1 ,打造全新一代分布式数据架构
java·网络·数据库·数据仓库·分布式·云原生·架构
fantasy_arch11 小时前
CPU性能优化-磁盘空间和解析时间
网络·性能优化
njnu@liyong12 小时前
图解HTTP-HTTP报文
网络协议·计算机网络·http
GISer_Jing13 小时前
2025前端面试热门题目——计算机网络篇
前端·计算机网络·面试
ZachOn1y13 小时前
计算机网络:应用层 —— 应用层概述
计算机网络·http·https·应用层·dns
是Dream呀13 小时前
Python从0到100(七十八):神经网络--从0开始搭建全连接网络和CNN网络
网络·python·神经网络