[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(1/2:OAM)

概述

本文主要介绍SRv6 OAM和数据平面Telemetry关键技术(随路网络测量
OAM:基于已有的IPv6 OAM机制进行简单扩展,实现故障管理和性能测量
随路网络测量:基于IFIT(In-situ Flow Information Telemetry)框架实现,不引入额外的测量报文,提升了检测的准确度;支持多种随路网络测量技术的数据平面封装,可大规模部署在IP网络中

第一部分: SRv6 OAM

1.1. SRv6故障管理

由于SRv6的转发基于IPv6,所以传统的IP OAM工具都可用于SRv6

1.1.1. 经典IP Ping

当前ICMPv6 Ping支持报文按照最短转发路径转发到目的地址,实现目的地址的可达性检测
如果希望ICMPv6 Echo报文按照指定的转发路径转发到对应的IPv6目的地址,完成对指定路径的Ping,则可以通过在IPv6报文头中增加SRH携带指定的路径

1.1.2. Ping SRv6 SID

SRv6 SID无法直接通过ICMPv6 Ping实现检测,需要使用SRv6的OAM扩展才能实现
原因:如果直接进行Ping SID操作的话,Ping封装后的报文的Next Header将是ICMPv6,该报文将因为Next Header值不匹配而被丢弃
解决方案:在SRH中引入O-bit(OAM bit),用于标识一个报文是否为OAM报文;同时还引入了两个新的SRv6 Function(End.OP和End.OTP),来标识是否需要对报文进行OAM处理

O-bit位于SRH的Flags字段内,起到了对OAM功能使能去使能的作用
对于两个新的SRv6 Function,根据对时间戳的需要与否,分为以下两种:
End.OP:OAM Endpoint with Punt,End的一种变种功能,指示将报文上送到控制平面进行OAM处理
End.OTP:OAM Endpoint with Timestamp and Punt,除了End.OP的功能外还要在上送控制平面之前打上时间戳
为了防止重复报文处理,控制平面停止响应IPv6上层的协议,比如ICMP Ping

R4节点对于Ping SID的处理,其中B:4::100是End.OP SID:
控制平面程序检测SRH中的下一个SID是否为本地初始化的SID,若是,则返回ICMPv6成功报文
[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(1/2:OAM)_第1张图片

1.1.3. 经典Traceroute

与ICMPv6相同,SRv6也支持普通的IPv6地址的Traceroute
还可以利用SRH进行指定路径的Traceroute

1.1.4. SRv6 SID Traceroute

同样也需要通过插入End.OP/End.OTP
其原理与普通的IPv6地址的Traceroute没有太大差异,仅在对最后的SRv6节点或最后的SID发布节点的处理上有所不同
[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(1/2:OAM)_第2张图片

1.2. SRv6性能测量

性能测量主要分为两类
一类是以TWAMP为代表的主动测量,该技术可用于SR-MPLS,SRv6和IP/MPLS等各种场景下
一类是以基于染色为代表的混合测量

1.2.1. TWAMP测量的基础原理

当前SRv6使用的测量方案主要采用TWAMP的Light架构,即轻量级TWAMP
TWAMP是一种主动性能测量方法,基于五元组(源目的IP,源目的端口,DSCP)构建测试流,根据收到的UDP应答报文,测量IP链路的性能和状态

TWAMP有四种逻辑实体

  • Control Client :控制平面角色
  • Server:控制平面角色
  • Session-Sender:数据平面角色
  • Sessioin Reflector:数据平面角色

根据四种逻辑实体的部署位置,可分为Full架构和Light架构

TWAMP Full架构:
[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(1/2:OAM)_第3张图片
TWAMP Light架构:
[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(1/2:OAM)_第4张图片
Light架构下关键信息通过界面配置直接下发给Controller,不需要控制平面TCP报文的协商过程

1.2.2. 基于TWAMP的主动SRv6性能测量–主动测量

由于TWAMP Light架构的控制层面是基于TCP的,数据平面Test报文基于UDP,二者都可以基于IPv6的网络层进行传输,所以不需要任何改动就可以直接应用在SRv6网络上,实现性能测量。
什么是主动测量?
简单的解释就是通过在链路上发送OAM报文,通过对OAM报文模拟业务报文,并以此推算网络的性能,不够准确。

1.2.3. 基于染色的混合SRv6性能测量–混合测量

上一节提到了主动测量,这一节让我们首先澄清一下被动测量和混合测量的概念:
被动测量:直接观测真实流量
混合测量:对真实流量进行修改后直接观测
被动检测可以选择IPFIX(IP Flow Informatica Export)将报文上送给分析器
混合测量可以选择基于染色的IPFPM,或者IFIT(下面章节将详细介绍)

着重介绍一下基于染色的IPFPM的工作原理
[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(1/2:OAM)_第5张图片
数据流区分Block并进行染色
Block的区分方法:以固定报文数目进行区分;以固定时长进行区分
染色位置:IPv6的Flow Label即可作为一个染色位置;可以基于SRv6的Path Segment进行染色
[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(1/2:OAM)_第6张图片
SRv6 Path Segment仅用于表示路径和服务,不用于路由。P-Flag用于指示是否携带了Path Segment
Path Segment存在的意义:由于Segment List长度可变且长度较长,不利于作为染色标识位,因此推出了Path Segment来指代这组Segment List

第二部分 随路网络测量

《SRv6网络编程》SRv6 OAM与随路网络测量(2/2:IFIT)
[SRv6]《SRv6网络编程》SRv6 OAM与随路网络测量(1/2:OAM)_第7张图片

你可能感兴趣的:(数据通信,SRv6,OAM,TWAMP,运维)