VPP中SRv6的使用

https://docs.fd.io/vpp/20.01/dd/db5/clicmd_src_vnet_srv6.html
https://www.sdnlab.com/23218.html
VPP版本:20.01

0.前言

  VPP(Vector Packet Processing)是思科旗下的一款可拓展的开源框架,提供容易使用的、高质量的交换、路由功能。

  VPP全称Vector Packet Processing(矢量数据包处理),最早是Cisco 于 2002年开发的商用代码。之后在2016年Linux基金会创建FD.io开源项目,Cisco将VPP代码的开源版本加入该项目,目前已成为该项目的核心。现在一般来讲的VPP特指 FD.io VPP,即Linux基金会发起的开源项目。这个项目在通用硬件平台上提供了具有灵活性、可扩展强、组件化等特点的高性能IO服务框架。该框架支持高吞吐量、低延迟、高资源利用率的IO服务,并可适用于多种硬件架构(x86/ARM/PowerPC)以及各种部署环境(裸机/VM/容器)。

  VPP对于SRv6有着非常好的支持,并且提供高性能。关于SRv6原理及Linux SRv6常见功能VPN、流量工程、服务链。如上图所示,VPP原生已经支持了SRv6,包括常见的SRv6操作。在性能方面,VPP同样出色,比Linux 内核原生支持的SRv6吞吐能力要超出很多;成本方面相比智能网卡则有着巨大优势。目前很多开源项目以及商业项目也选用了VPP,其整体的稳定性和性能得到了广泛的验证。

1. SRv6控制命令归纳

  • show sr localsids: 显示所有本地段id号。


  • show sr localsids behaviors: 显示所有本地段id号。


  • show sr policies: 显示所有sr策略。


  • show sr steering-policies: 显示所有steer引流和对应策略bsid。


  • sr localsid: 设置本地段标签,以及终端解析转发的行为

范式:

  创建段路由SG的localSID并绑定一个特殊行为参数:一种格式是localSID IPv6_addr(128b),或者是lSID IPv6 address (fib-table X)。VRF 通过SRv6本地localsid的行为字符串指定行为。
  行为:End -> Endpoint. End.X -> Endpoint,表示解压缩和3层交叉连接;参数:' ' End.DX2 -> Endpoint表示解压缩和二层交叉连接;参数:'' End.DX6 -> Endpoint表示解压缩和IPv6的交叉连接;参数:' ' End.DX4 -> Endpoint表示解压缩和ipv4的交叉连接;参数:' ' End.DT6表示终点解压缩并指定IPv6表查询;参数' End.DT4 -> Endpoint表示解压缩并指定ipv4的表查询;参数: '';


  • sr policy:设置转发策略标签以及每跳标签等
    范式:

举例:
        SR策略的操作。SR策略可能包含多个SID列表。每个SID列表都有一个权重,默认为1,并用于wECMP (uECMP)。段路由SR策略可能有封装类型或;
        一个绑定BindingSID是本地分配的SegmentID。对每个接收的IPv6_DA:BSID包,这种流通信将被引导到SR策略中。add命令将通过第一段列表sl创建一个SR策略;mod命令允许在SR策略中增加、删除或修改已有的段列表标签;del命令允许删除一个SR策略和所有相关的SID列表。


  • sr steer:设置转发策略标签以及每跳标签等
    范式:

举例:


  • set interface ip table:设置ip接口绑定vrf表
    范式:

描述:将指定网口加入支持的IPv4 FIB表中(VRF)。这个FIB表必须已通过ip table add 创建。如需显示当前的IPv4 FIB表,使用命令show ip fib。仅在有路由信息被加入该表中,或是表中网口已绑定IP地址(自动添加路由),才会显示该FIB表信息。通过命令show int address 查看端口和vrf表绑定状态。

注意:
        在网口IP表被加入指定的FIB表后,再设置IP地址时,需要注意。如果表中加入IP地址后再改变table,这将会产生错误。控制台必须先删除这些地址,再改变表。VPP将不会自动将这些地址从旧表移到新表,因为它不知道该变化是否有效。

范例:
如何将网口增加到IPv4的FIB表中(其中2表示表ID号):

  • show ip6 fib :显示fib信息
    范式:

概述:


2.SRv6测试用例

配置SRv6实现访问控制步骤:

赞赏

微信赞赏支付宝赞赏

《VPP中SRv6的使用》有1个想法

  1. sr policy和sr steer看起来像是跟TE有关,SRv6 BE是不是不需要配置sr policy 和 sr steer

发表评论

邮箱地址不会被公开。 必填项已用*标注