MPLS LDP协议

文章目录

LDP标签分发协议

  • 基于FEC自动分配标签构建LSP
  • 用于建立动态LSP
  • LDP报文头部结构
  • 信息类型

工作原理

LDP工作过程

  • 发送Hello消息用于发现邻居;UDP发送
  • LSR_1主动发起并建立TCP连接;TCP进行建立
  • 主动方发初始化消息协商参数
  • 接收参数则发初始化消息和Keepalive消息
  • 接收参数则发送 Keepalive 消息
bash 复制代码
dis mpls ldp adjacency    #查看邻居关系,只能说明邻居关系建立成功,不能说明会话建立成功
dis mpls ldp session    #查看邻居会话关系
dis mpls ldp inter g0/0/0    #查看接口状态,接口Down掉之后邻居和会话肯定都断掉

标签分配过程

标签的分配是下游开始分配到上游的

  • EGress设备分配标签到FEC(路由),向上游通告标签映射(标签与FEC路由的对应关系)
  • Transit 接受标签映射,向上游通告对应FEC(路由)的标签映射
  • InGress接受标签映射
  • 标签映射接受前提:判断标签映射通告者和该FEC的下一跳是否一致
  • 只会对主机路由进行分配标签,互联网段不会分配标签(可以改)

LDP应用

解决BGP路由黑洞问题

MPLS在BGP的IBGP内解决全互联问题,可以直接跨设备建立邻居,直接解决路由黑洞问题,因为MPLS交换的是标签路径,中间的BGP设备是不需要看路由的,看标签进行数据的转发

  • 配置完基本的MPLS和BGP操作之后,只有R2和R5上面有两个私网的路由,中间的设备没有私网路由,这时候默认还是走IP网络,此时是无法通信的,中间走路由肯定不行,虽然R3和R4没路由,但是配置MPLS之后,可以经过标签进行转发,这时候在两台LER上配置----路由迭代,让私网的包走LSP链路

  • 之后直接查看FIB,发现去往另一端的网段是走路由下一跳的,此时不行

    bash 复制代码
    [R2-bgp]dis fib | in 2.0
     
    Destination/Mask   Nexthop         Flag  TimeStamp     Interface      TunnelID
    10.1.2.0/24        23.1.1.3        DGU   t[2527]       GE0/0/1        0x0
  • 但是在BGP路由表中看另一端的网段下一跳是正确的 LSP 路径,需要让本地路由走正确的LSP路径

    bash 复制代码
     Total Number of Routes: 2
          Network            NextHop        MED        LocPrf    PrefVal Path/Ogn
    
     *>   10.1.1.0/24        0.0.0.0         0                     0      i
     *>i  10.1.2.0/24        5.5.5.5         0          100        0      i
  • 配置命令:

    bash 复制代码
    route recursive-lookup tunnel    #路由递归到标签交换隧道中,只能在LER设备上进行配置,两端都需要配置
    dis fib | in 2.0    #之后我们就能看见走路由标签交换了
    dis tunnel-info tunnel-id 0x5    #查看Tunnel隧道信息
  • 之后使用 Tracert -v 10.1.2.253 进行测试时候会发现经过MPLS网络的信息,会直接用 * 代替

    bash 复制代码
    #华为认为,在Tracert路由进入MPLS网络中之后,里面的设备需要一跳一跳的去回复,回复的是ICMP差错报文,当只有一层标签的情况下,ICMP的报错信息会沿着IP路由回来,但是如果要沿着IP路由回来的话,本地上没有路由,所以就出现 * 号
    
    配置:undo ttl expiration pop    #命令是将TTL的报错命令沿着LSP路径继续往后发,也可以记成让 Tracert 回显,在LSR上配置
  • 配置以上命令之后就能在 Tracert 中查看到了

倒数第二跳弹出

倒数第二跳当然也可以不弹出,会对 LER 设备构成困扰

倒数第二跳弹出,主要是用来缓解LER的压力

LER连接的是IP网络,最后一跳依靠 LFIB 来判断是否需要弹标签,如果需要弹标签,还需要查询 IP 路由表,之后查询FIB表再进行转发。

最后一跳查两张表,FIB(转发表)和LFIB(标签转发表)

为了降低LER的压力,在倒数第二的LSR设备上进行标签的弹出,让LER设备直接查询路由进行FIB转发

Author:DC

相关推荐
Michaelwubo1 小时前
Docker dockerfile镜像编码 centos7
运维·docker·容器
远游客07131 小时前
centos stream 8下载安装遇到的坑
linux·服务器·centos
好像是个likun1 小时前
使用docker拉取镜像很慢或者总是超时的问题
运维·docker·容器
fantasy_arch2 小时前
CPU性能优化-磁盘空间和解析时间
网络·性能优化
LIKEYYLL3 小时前
GNU Octave:特性、使用案例、工具箱、环境与界面
服务器·gnu
云云3213 小时前
搭建云手机平台的技术要求?
服务器·线性代数·安全·智能手机·矩阵
云云3214 小时前
云手机有哪些用途?云手机选择推荐
服务器·线性代数·安全·智能手机·矩阵
cominglately4 小时前
centos单机部署seata
linux·运维·centos
CircleMouse4 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos
是Dream呀4 小时前
Python从0到100(七十八):神经网络--从0开始搭建全连接网络和CNN网络
网络·python·神经网络