写点什么

华为 MPLS 的数据转发流程

用户头像
艺博东
关注
发布于: 2021 年 02 月 15 日

哈喽,大家好!我是艺博东 ,是一个思科出身、专注于华为的网工;好了,话不多说,我们直接进入正题。


>爱对了人,每天都过情人节。



一、拓扑


需求:4.4.4.4/32 访问 1.1.1.1/32 的 MPLS 的数据转发流程


二、底层配置


R1

[R1]int g0/0/0[R1-GigabitEthernet0/0/0]ip address 10.1.12.1 24[R1-GigabitEthernet0/0/0]q[R1]int LoopBack0[R1-LoopBack0]ip address 1.1.1.1 32[R1-LoopBack0]q[R1]int g0/0/1[R1-GigabitEthernet0/0/1]ip address 192.168.1.2 24[R1-GigabitEthernet0/0/1]q[R1]ospf 1 router-id 1.1.1.1[R1-ospf-1]a 0[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0[R1-ospf-1-area-0.0.0.0]network 10.1.12.1 0.0.0.0[R1-ospf-1-area-0.0.0.0]q[R1]mpls lsr-id 1.1.1.1[R1]mpls[R1-mpls]mpls ldp[R1-mpls]q[R1]int g0/0/0[R1-GigabitEthernet0/0/0]mpls[R1-GigabitEthernet0/0/0]mpls ldp[R1-GigabitEthernet0/0/0]q[R1]rip[R1-rip-1]network 192.168.0.0 [R1-rip-1]v 2[R1-rip-1]import-route ospf [R1-rip-1]ospf [R1-ospf-1]import-route rip [R1-ospf-1]q
复制代码

R4


[R4]int g0/0/0[R4-GigabitEthernet0/0/0]ip address 10.1.34.4 24[R4-GigabitEthernet0/0/0]q[R4]int LoopBack0[R4-LoopBack0]ip address 4.4.4.4 32[R4-LoopBack0]q[R4]int g0/0/1[R4-GigabitEthernet0/0/1]ip address 192.168.2.2 24[R4-GigabitEthernet0/0/1]q[R4]ospf 1 router-id 4.4.4.4[R4-ospf-1]a 0[R4-ospf-1-area-0.0.0.0]network 4.4.4.4 0.0.0.0[R4-ospf-1-area-0.0.0.0]network 10.1.34.4 0.0.0.0[R4-ospf-1-area-0.0.0.0]q[R4]mpls lsr-id 4.4.4.4[R4]mpls[R4-mpls]mpls ldp[R4-mpls]q[R4]int g0/0/0[R4-GigabitEthernet0/0/0]mpls[R4-GigabitEthernet0/0/0]mpls ldp[R4-GigabitEthernet0/0/0]q[R4]rip[R4-rip-1]network 192.168.0.0 [R4-rip-1]v 2[R4-rip-1]import-route ospf [R4-rip-1]ospf [R4-ospf-1]import-route rip [R4-ospf-1]q
复制代码


R2


[R2]int g0/0/0[R2-GigabitEthernet0/0/0]ip address 10.1.12.2 24[R2-GigabitEthernet0/0/0]int g0/0/1[R2-GigabitEthernet0/0/1]ip address 10.1.23.2 24[R2-GigabitEthernet0/0/1]q[R2]int LoopBack0[R2-LoopBack0]ip address 2.2.2.2 32[R2-LoopBack0]q[R1]ospf 1 router-id 2.2.2.2[R1-ospf-1]a 0[R1-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0[R1-ospf-1-area-0.0.0.0]network 10.1.12.2 0.0.0.0[R1-ospf-1-area-0.0.0.0]network 10.1.23.2 0.0.0.0[R1-ospf-1-area-0.0.0.0]q[R4-ospf-1]q[R2]mpls lsr-id 2.2.2.2[R2]mpls[R2-mpls]mpls ldp[R2-mpls]q[R2-GigabitEthernet0/0/0]mpls[R2-GigabitEthernet0/0/0]mpls ldp[R2-GigabitEthernet0/0/0]int g0/0/1[R2-GigabitEthernet0/0/1]mpls[R2-GigabitEthernet0/0/1]mpls ldp
复制代码


<font color="FF0000">R2 和 R3 的配置类似</font>


AR1


[Huawei]sysname AR1[AR1]int g0/0/1[AR1-GigabitEthernet0/0/1]ip address 192.168.1.1 24[AR1-GigabitEthernet0/0/1]q[AR1]rip[AR1-rip-1]net 192.168.1.0[AR1-rip-1]v 2[AR1-rip-1]q
复制代码


<font color="FF0000">AR1 和 AR2 的配置类似</font>


[R4]display mpls lsp


三、测试


[R4]display fib

1.1.1.1/32 的 Tunnel ID 为 0x13


[R4-diagnose]display mpls nhlfe

根据 fib 表的 Tunnel ID 是 0x13,找到对应的 nhlfe 下一跳标签转发表项,从而得到了出接口是 G0/0/0,下一跳是 10.1.34.3,做压入标签动作,出标签是 1026。


[R3-diagnose]display mpls ilm

查看 ilm 表项,根据如标签为 1026,tunnel ID 为 0x18。


[R3-diagnose]display mpls nhlfe

根据 tunnel ID 为 0x18,找到对应的 nhlfc,可以知道出接口是 G0/0/1,下一跳是 10.1.23.2,做转换标签动作,出标签是 1026。


[R2-diagnose]display mpls ilm

查看 ilm 表项,根据如标签为 1026,tunnel ID 为 0x6。


[R2-diagnose]display mpls nhlfe


根据 tunnel ID 为 0x6,找到对应的 nhlfc,可以知道出接口是 G0/0/0,下一跳是 10.1.12.1,做转换标签动作,出标签是 3。


[R1]display ip routing-table

[R1]display fib

反过来的数据转发流程也是一样的原理,1.1.1.1/32 访问 4.4.4.4/32 的 MPLS 的数据转发流程。


四、概述


4.1 首先根据 FIB 表查找相应的转发条目,转发条目中包含 tunnel id 字段


(1)如果 tunnel id 为 0X0,则进行 IP 转发;

(2)如果 tunnel id 为非 0X0,则进入 MPLS 转发流程。


4.2 Ingress 的处理,通过查询 fib 表和下一跳标签转发表项指导报文的转发


(1)首先查看 fib 表,根据目的 IP 地址找到对应的 Tunnel ID;

(2)根据 fib 表的 Tunnel ID 找到对应的 nhlfe,将 fib 和 nhlfe 表现关联起来,FTN

(3)查看 nhlfe 表项,可以知道出接口,下一跳,出标签,标签的操作类型

(4)在 ip 报文中压入出标签,同时处理 TTL,然后将封装好的 MPLS 报文发送给下一跳。


4.3 Transit 的处理,通过查询 ilm 入标签映射表和下一跳标签转发表项指导 mpls 报文的转发


(1)根据 mpls 的标签查看对用的 ilm,可以得到 Tunnel ID

(2)根据 ilm 的 Tunnel ID 找到 nhlfc

(3)查看 nhlfc,可以知道出接口,下一跳,出标签和标签的操作类型

(4)Mpls 报文的处理方式根据不同的 label 而不同

1)如果 label 大于等于 16 的话,则用新的标签替换 MPLS 报文的旧标签,同是处理 TTL,然后将替换完的标签的 mpls 报文发送给下一跳。

2)如果 label 等于 3,则直接弹出标签,同时处理 TTL,然后进行 ip 转发或下一层标签转发。


4.4 Egreess 处理,通过查询 ilm 指导 mpls 报文转发,或者查询路由表指导 ip 报文的转发


(1)如果 egree 收到 ip 报文,则查看路由表,进行 ip 转发。


(2)如果 egree 收到 mpls 报文,则查看 ilm 知道标签的操作类型,同时处理 TTL

1)如果标签中的栈底标识 S=1,表明该标签是栈底标签,之间进行 IP 转发

2)如果标签中的栈底标识 S=0,表明还有下一层标签,继续进行下一层标签转发。


>以前的课堂作业


OK


>名言:

>做人要有屡败屡战的精神和勇气。


-------------------------------------------------------------------------------------------


好了这期就到这里了,如果你喜欢这篇文章的话,请点赞评论分享收藏,如果你还能点击关注,那真的是对我最大的鼓励。谢谢大家,下期见!


发布于: 2021 年 02 月 15 日阅读数: 22
用户头像

艺博东

关注

CSDN博客专家 | CSDN博客之星 2021.01.26 加入

华为HCIE互联网专家 | 网络工程师 | 网络管理员 微信公众号:艺博东 关注后,回复关键字“简历”,即可领取简历模板大全;更多干货等你来领取。

评论

发布
暂无评论
华为 MPLS的数据转发流程