使用静态CRLSP配置MPLS TE隧道

23475bcb4ae7a1570fc9e24560d96f6b.gif

正文共:1591 字 13 图,预估阅读时间:4 分钟

静态CRLSP(Constraint-based Routed Label Switched Paths,基于约束路由的LSP)是指在报文经过的每一跳设备上(包括Ingress、Transit和Egress)分别手工指定入标签、出标签、流量所需的带宽等信息,建立标签转发表项和资源预留,从而建立的CRLSP。

与静态LSP不同的是,静态CRLSP需要在每一跳设备上为流量预留一定的带宽资源,如果设备上的带宽资源不满足流量需求,则无法建立静态CRLSP。

建立静态CRLSP消耗的资源比较少,但静态建立的CRLSP不能根据网络拓扑变化动态调整。因此,静态CRLSP适用于拓扑结构简单并且稳定的小型网络。

ab81e61314e1a01f94418f27e746eb70.png

组网需求

5e4f85f648040764c0a685ef0bc9264b.png

RT1-3均支持MPLS,在RT1到RT3之间使用静态CRLSP建立一条MPLS TE隧道,使11.1.1.0/24和33.1.1.0/24这两个网段中互访的报文能够通过MPLS进行传输,并且配置隧道最大带宽为20000kbps,隧道沿途链路的最大带宽为80000kbps,最大预留保证带宽为40000kbps。

dfeeb821bc315cb61e143156df6246c1.png

组网图

9edca307a79e2cb594c85b5faa0724f4.png

静态CRLSP配置组网图

fbbe8a98417c5c2aa0d0b94685cc24b5.png

3998837a5f6314943769375818eb65d4.png

实验环境

VMWare ESXi 6.7.0(ProLiant DL360 Gen9,48核心,128G内存)

H3C VSR1000(Version 7.1.064, Release 0621P18,4核心,8G内存)

CentOS Linux release 7.9.2009 (Core,4核心,4G内存)

b6eae48c2586eb4ceeb5b2ca9d350d99.png

配置步骤

b2549b6016903a69870a5e365b5d0d4c.png

首先按照组网图所示配置各接口的IP地址和掩码,设备间配置IS-IS协议发布接口所在网段的路由,包括Loopback接口

IS-IS的配置主要包括配置路由器的Level级别和网络实体名称,并在指定接口(所有接口)上配置使能IS-IS功能,掌握了这两个基本操作,来直接上配置。

47bb10424c4e0708fe9aa624ac3b456c.png

VSR1

#
isis 1
 is-level level-1
 network-entity 10.0000.0000.0001.00
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255
 isis enable 1
#
interface GigabitEthernet2/0
 ip address 11.1.1.1 255.255.255.0
 isis enable 1
#
interface GigabitEthernet3/0
 ip address 12.1.1.1 255.255.255.0
 isis enable 1

b97f114ed5319196999a2e9fc8543eb7.png

VSR2

#
isis 1
 is-level level-1
 network-entity 10.0000.0000.0002.00
#
interface LoopBack0
 ip address 2.2.2.2 255.255.255.255
 isis enable 1
#
interface GigabitEthernet2/0
 ip address 12.1.1.2 255.255.255.0
 isis enable 1
#
interface GigabitEthernet3/0
 ip address 23.1.1.2 255.255.255.0
 isis enable 1

a395cf5f783d3cb51da99714cd6f5998.png

VSR3

#
isis 1
 is-level level-1
 network-entity 10.0000.0000.0003.00
#
interface LoopBack0
 ip address 3.3.3.3 255.255.255.255
 isis enable 1
#
interface GigabitEthernet2/0
 ip address 23.1.1.3 255.255.255.0
 isis enable 1
#
interface GigabitEthernet3/0
 ip address 33.1.1.3 255.255.255.0
 isis enable 1

配置完成之后,检查VSR3的路由学习情况。

2bdce13fc04549437e971662d9e93b2d.png

这里和官网有点不一样,因为官网配置中并没有讲连接业务网络的接口需要开启ISIS,但如果不开启就缺少路由了。

接下来配置MPLS及静态CRLSP。

4873e92d07f3a0e5357d173a93b0ff35.png

VSR1

配置LSR ID、开启MPLS能力和MPLS TE能力

#
mpls lsr-id 1.1.1.1
#
mpls te
#
interface GigabitEthernet3/0
 mpls enable
 mpls te enable

配置TE链路的最大带宽和最大可预留带宽。

#
interface GigabitEthernet3/0
 mpls te max-link-bandwidth 80000
 mpls te max-reservable-bandwidth 40000

配置VSR1为静态CRLSP的Ingress节点,下一跳地址为12.1.1.2,出标签为120,隧道所需的带宽为20000kbps。

#
static-cr-lsp ingress 13 nexthop 12.1.1.2 out-label 120 bandwidth ct0 20000

配置MPLS TE隧道Tunnel13:目的地址为VSR3的LSR ID(3.3.3.3);采用静态CRLSP建立MPLS TE隧道。配置隧道Tunnel13引用名称为static-cr-lsp-1的静态CRLSP。

#
interface Tunnel13 mode mpls-te
 ip address 13.1.1.1 255.255.255.0
 mpls te signaling static
 mpls te static-cr-lsp 13
 destination 3.3.3.3

此时我们可以看到,VSR1上去往PCB的路由是从ISIS学到的,优先级是15。

b10a6e2d64beea40667ef1ff7def0d7a.png

所以需要配置优先级更高的静态路由,使得到达网络33.1.1.0/24的流量通过MPLS TE隧道接口Tunnel13转发。

#
ip route-static 33.1.1.0 24 Tunnel13 preference 1

5f063d2d7d65d6de6f774323e8918838.png

89ddc12247fa8a8d89ed48a990321a21.png

VSR2

配置LSR ID、开启MPLS能力和MPLS TE能力,并配置TE链路的最大带宽和最大可预留带宽。

#
mpls lsr-id 2.2.2.2
#
mpls te
#
interface GigabitEthernet2/0
 mpls enable
 mpls te enable
 mpls te max-link-bandwidth 80000
 mpls te max-reservable-bandwidth 40000
#
interface GigabitEthernet3/0
 mpls enable
 mpls te enable
 mpls te max-link-bandwidth 80000
 mpls te max-reservable-bandwidth 40000

配置VSR2为静态CRLSP的Transit节点,入标签为120,下一跳地址为23.2.1.3,出标签为230,隧道所需的带宽为20000kbps。

#
static-cr-lsp transit 13 in-label 120 nexthop 23.1.1.3 out-label 230 bandwidth ct0 20000

9a3e04b8c996bb4c9d4474cca4b00990.png

VSR3

配置LSR ID、开启MPLS能力和MPLS TE能力,并配置TE链路的最大带宽和最大可预留带宽。

#
mpls lsr-id 3.3.3.3
#
mpls te
#
interface GigabitEthernet2/0
 mpls enable
 mpls te enable
 mpls te max-link-bandwidth 80000
 mpls te max-reservable-bandwidth 40000

配置VSR3为静态CRLSP的Egress节点,入标签为230。

#
static-cr-lsp egress 13 in-label 230

34750c18558687d2317407b136a3382e.png

验证配置

6ce0ec74273ab52dc36e78dea7d23a67.png

如配置过程中所讲,我先后两次测试了从PCA到PCB的带宽情况,第一次是没有配置访问流量通过MPLS TE隧道接口转发的打流,第二次是配置之后的结果。

1107508a86a1dc839427db464af2f55e.png

可以看到,不经隧道转发时,带宽为4.59 Gbps,经隧道转发时,带宽为20.0 Mbps,与配置的20000kbps大体相符。

使用display interface tunnel命令,查看Tunnel接口的状态。

b0ba146ac65961d5b59fa5c6e708c512.png

可以看到,隧道的接口状态为UP,协议为CR_LSP,但是接口的收发包统计为0,估计和隧道源接口未知有关。

使用display mpls te tunnel-interface命令,查看MPLS TE隧道的建立情况。

114fea75aa91446e5611c6de57bf7f3f.png

好像跟LSP不太一样,这里显示了隧道的Ingress LSR和Egress LSR信息,一般来讲Egress LSR是看不到的。

在VSR1上执行display mpls lsp和display mpls static-cr-lsp命令,查看静态CRLSP的建立情况

a765017b295f1a2683f6236e519028d8.png

bandwidth指定静态CRLSP流量所属的服务类型和所需的带宽。官网介绍:如果配置时不指定bandwidth,则静态CRLSP流量所需的带宽为0。Class Type是指静态CRLSP流量所属的服务类型,取值包括CT0、CT1、CT2和CT3,如果指定了bandwidth,但没有指定任何CT,则缺省为CT0。

通过配置我们发现,bandwidth只能在Ingress节点和Transit节点配置,那如果我们在Transit节点不配置带宽会怎么样呢?

725ea1a26e34d83dedba704d4228cde2.png

注意,调整时需要先删除之前的配置,再配置新的。

fbb0d44226d58999bfea94fcc13a755d.png

可以看到Transit节点不配置带宽,带宽以Ingress节点配置为准,那我们把Ingress节点的带宽配置也移除掉。

18862031ca70471dd32a6006a608fda7.png

带宽为3.68Gbps,看来官网说的静态CRLSP流量所需的带宽为0实际上就是不限速了。

现在在Ingress节点上不配置带宽,恢复配置Transit节点带宽为20000kbps试一下。

18d3be68cf14863be4c3580829d8b60b.png

说明带宽以沿途经过的LSR上配置的小的为限制,如果未配置,则没有限制。而且配置的链路最大带宽竟然没有生效,我们在VSR1上把它设置为10000kbps试一下。

#
interface GigabitEthernet3/0
 ip address 12.1.1.1 255.255.255.0
 isis enable 1
 mpls enable
 mpls te enable
 mpls te max-link-bandwidth 10000
 mpls te max-reservable-bandwidth 1000

336b6962c611323a8edd7a5142973049.png

官网介绍该命令用来配置用于转发MPLS TE流量的链路最大带宽,设备在发布的IGP路由中携带本命令配置的链路最大带宽值,以便隧道的Ingress节点获取到该信息,并根据该信息进行CSPF计算,选择符合隧道带宽要求的路径。

看来好像用处不大啊!

ad89a448951e3c03c0f2688fb50cc6e8.gif

长按二维码
关注我们吧

62620f29a0a76a1878d4fb66c2b51e62.jpeg

91dee782858744c1a69e6461b20b14e2.png

在 MPLS 隧道上执行标签交换路径 Ping (LSP Ping) 的机制

IP内的IP封装

Windows 11 可能影响工作效率的几个问题

你晓得不,VPN实例间路由还能通过路由协议动态引入呢

震惊!VRF路由泄露了!

有没有开源的虚拟路由器?有,VPP了解一下

相关推荐

  1. [Ubuntu 20.04] 使用Netplan配置网络静态IP

    2024-02-21 06:34:02       37 阅读
  2. spring boot使用配置文件对静态变量进行赋值

    2024-02-21 06:34:02       44 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-21 06:34:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-21 06:34:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-21 06:34:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-21 06:34:02       20 阅读

热门阅读

  1. ELK搭建

    ELK搭建

    2024-02-21 06:34:02      25 阅读
  2. C陷阱和缺陷--第一章 “词法陷阱”

    2024-02-21 06:34:02       26 阅读
  3. 【后端】springboot项目

    2024-02-21 06:34:02       29 阅读
  4. 2.Swift Tabbar的使用

    2024-02-21 06:34:02       26 阅读
  5. vue前端docx库生成word表格 并合并单元格的例子

    2024-02-21 06:34:02       28 阅读
  6. Regular Paper, Short Paper, Demo Paper 和Poster的区别

    2024-02-21 06:34:02       32 阅读
  7. 算法-位运算

    2024-02-21 06:34:02       27 阅读
  8. 【Pytorch】各种维度变换函数总结

    2024-02-21 06:34:02       27 阅读
  9. 如何解决无法npm下载electron依赖的

    2024-02-21 06:34:02       28 阅读