MPLS工作过程

控制层面:路由协议工作,生成RIB-FIB,流量的方向即为控制流量;

数据层面:设备基于路由表访问目标,产生数据流量;与控制层面方向相反;

控制层面:

  1. 在没有 MPLS 时控制层面仅生成 RIB(路由表)和 FIB(转发信息数据库);FIB 是基于 RIB生成;
  1. MPLS协议会启动 TDP (cisco 私有) 或 LDP(公有),直连设备间将建立邻居关系;

LDP------基于UDP 和 TCP 的646 端口工作;先使用 udp 发送组播hello 包发现邻居,获取邻居 ip地址,再和该直连邻居建立 TCP的会话;邻居关系建立后;为了邻居关系间的稳定,一般使用设备的环回地址来建立 tcp 会话;建议设置环回地址为 mpls 协议的route-id,该id 值将携带在组播收发的 hello 报文中,之后自动进行tcp会话;

总结:MPLS协议需要在直连邻居间使用 router-id 地址来进行TCP 的会话;故前提条件为,route-id 必须为设备真实使用的ip 地址,建议为环回地址------稳定;

组播 hello 包在直连的物理接口上收发来获取对端的router-id;自然也要求router-id 值间路由可达;

因此正常在建立 LDP 的邻居关系前,路由协议已经收敛完成,RIB和FIB表已经生成;

  1. MPLS 在建立邻居关系后,生成邻居表;LDP协议再基于FIB 表中学习到的路由条目生成标签号;

cisco 设备默认基于FIB表中所有学习到的路由条目生成标签号,华为设备默认仅基于FIB 表中 32 位掩码的主机路由生成标签号;原因在于正常 32位主机路由为 ospf 学习的环回接口,正常工程中只有 BGP和 MPLS VPN 才会基于环回通讯,使用标签转发;

其他普通流量还是基于特快包交换来进行;

反观cisco 在启动 mpls 以后,所有流量将基于标签转发,降低了转发效率(前提为默认)

  1. 标签号生成后,将存储于本地的 LIB 表------标签信息数据库;LIB 表将在邻居间共享;

LIB表中装载本地及邻居为每条路由分发的标签号;

  1. 运行MPLS 协议的设备,将LIB和FIB 进行结合,将标签号和最佳路径的关系映射生成 LFIB 表(标签转发信息数据库)

注:控制层面生成的表格

RIB-》FIB---》 LIB---》 LFIB 前两张表为路由协议工作后生成,后两张表为 MPLS 的LDP协议生成;

相关推荐
chlk12320 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑21 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件21 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒1 天前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号1 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪4 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes