SRv6----指令集

在IETF的SRv6 Network Programming文稿中定义了很多Behavior(行为),它们也被称为指令。每个SID都会与一个指令绑定,用于告知节点在处理SID时需要执行的动作。SRH可以封装一个有序的SID列表,为报文提供转发、封装和解封装等服务。

SRH

首先来了解一下SRH。SRH是IPv6扩展报文头通过携带Segment List等信息显式地指定一条SRv6路径。
SRH的格式如图:
在这里插入图片描述
各字段说明:
在这里插入图片描述

指令集

命名规则

  • End:表示当前指令的终止,开始执行下一个指令。对应的转发动作是将SL值减1,并将SL指向的SID复制到IPv6报文头的目的地址字段。
  • X:指定一个或一组三层接口转发报文。对应的转发行为是按照指定出接口转发报文。
  • T:查询路由转发表并转发报文。
  • D:解封装。移除IPv6报文头和与它相关的扩展报文头。
  • V:根据VLAN(Virtual Local Area Network,虚拟局域网)查表转发。
  • U:根据单播MAC查表转发。
  • M:查询二层转发表,进行组播转发。
  • B6:应用指定的SRv6 Policy。
  • BM:应用指定的SR-MPLS Policy。

常见指令

所有指令都是由上述一个或多个原子组合而成。我们介绍几个常用的指令。

  • End.X全称为Layer-3 cross-connect,End.X将报文从指定的出接口转发,可用于TI-LFA、严格显式路径的TE等场景。
  • End.DT4全称为Decapsulation and specific IPv4 table lookup,支持解封装报文,在指定IPv4路由表查表转发,主要用于L3VPNv4场景,可作为基于VPN实例(per-VPN)的VPN标签使用。
  • End.DT6全称为Decapsulation and specific IPv6 table lookup,支持解封装报文,在指定的IPv6路由表中查表转发,主要用于L3VPNv6场景,可作为基于VPN实例(per-VPN)的VPN标签使用。

以End.DT4为例:
在下面的拓扑图里,R1-R2-R3-R4是SRv6域,R1和R4各拿一个loopback接口放到vpna中,这样我们可以简单模拟一个L3VPNv4场景1.1.1.1到4.4.4.4 经过SRv6域互通的场景,
在这里插入图片描述
这时,在R1的SRv6的Local SID 1001::1:0:0/128 的类型是End.DT4,会查找vpna的路由表。
在这里插入图片描述
从R4上也能看到 vpna路由表中1.1.1.1/32 下一跳1001::1:0:0,
在这里插入图片描述
4.4.4.4 ping 1.1.1.1,在PE1上收到外层IPv6目的是1001::1:0:0的报文,按照指令解封装,到vpna路由表查找路由。
在这里插入图片描述
解封装后内层目的IP是1.1.1.1,在vpna路由表中找到1.1.1.1下一跳送出去。
在这里插入图片描述

Flavor附加行为

PSP:倒数第二个Endpoint节点移除SRH。
USP:最后一个Endpoint节点移除SRH。
USD:最后一个Endpoint节点解封装外层IPv6报文头。

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值