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协议生成;

相关推荐
ha204289419414 分钟前
Linux操作系统学习之---初识网络
linux·网络·学习
飞凌嵌入式27 分钟前
【玩转多核异构】T153核心板RISC-V核的实时性应用解析
linux·嵌入式硬件·嵌入式·risc-v
陌路2030 分钟前
Linux 34TCP服务器多进程并发
linux·服务器·网络
玉树临风江流儿32 分钟前
Linux驱动开发实战指南-中
linux·驱动开发
爱喝矿泉水的猛男36 分钟前
单周期Risc-V指令拆分与datapath绘制
运维·服务器·risc-v
hakukun42 分钟前
docker避免每次sudo方法
运维·docker·容器
杨凯凡42 分钟前
Docker Compose:多容器应用编排入门与实战
运维·docker·容器
jason.zeng@15022071 小时前
my.cnf详解
运维·数据库·adb
灵神翁1 小时前
自建node云函数服务器
运维·服务器
m0_527653901 小时前
NVIDIA Orin NX使用Jetpack安装CUDA、cuDNN、TensorRT、VPI时的error及解决方法
linux·人工智能·jetpack·nvidia orin nx