简介
本文档介绍主动测量协议以及同步位(S位)在延迟测量中的应用。它描述了IOS-XR平台中S位的支持。
先决条件
要求
Cisco 建议您具有以下主题的基础知识:
使用的组件
本文档中的信息基于 Cisco ASR9000设备 — IOS-XR 5.3.4版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
问题:TWAMP S位设置不正确
您可以使用TWAMP来测量两个支持TWAMP的设备之间的单向和往返性能。 当您在第三方探测功能与在IOS-XR 5.3.4上运行的CRS/ASR9000设备之间测试基于TWAMP的Internet协议服务级别协议(IP SLA)时,TWAMP服务器将S位设置为False。因此,探针设备不会计算单向延迟。
TWAMP基础
RFC4656中指定的单向活动测量协议(OWAMP)提供用于测量网络设备之间单向度量的通用协议。OWAMP可用于双向测量两个网络元素之间双向的单向指标。但是,它不支持往返或双向测量。
RFC5357中描述的双向主动测量协议(TWAMP)是基于标准的高效性能监控流程,它扩展了RFC-4656中定义的单向主动测量协议(OWAMP)规范,并增加了基于IP的网络的往返和双向度量的性能测量。TWAMP是一种供应商无关的方法,可准确测量两个支持TWAMP的终端之间的单向和往返性能。
根据RFC4656(单向活动测量协议),如果生成时间戳的一方具有通过外部源同步到UTC的时钟,则必须设置第一位S。
例如,如果出现以下情况,则必须设置S位:
- 使用全球定位系统(GPS)硬件来表示已经获取了当前位置和时间。
- 网络时间协议(NTP)用于表示已将其同步到外部源(包括第0层源等)。
- 时间源没有外部同步的概念,不应设置S位。
The Error Estimate specifies the estimate of the error and
synchronization. It has the following format:
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|S|Z| Scale | Multiplier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TWAMP实体:
TWAMP系统包括4个逻辑实体:
·服务器 — 管理一个或多个TWAMP会话,并在终端配置每个会话端口
·会话反射器 — 在收到TWAMP测试数据包后立即反射测量数据包
·控制客户端 — 启动TWAMP测试会话的开始和停止
· session-sender — 实例化发送到会话反射器的TWAMP测试数据包
TWAMP协议:
TWAMP协议包括三个不同的消息交换类别,包括:
消息在控制客户端和服务器之间建立会话连接。首先,通过挑战响应机制建立通信对等体的身份。服务器发送随机生成的质询,然后,控制客户端使用从共享密钥派生的密钥对质询进行加密来发送响应。一旦标识建立,下一步将协商为后续TWAMP-Control命令和TWAMP-Test流数据包绑定的安全模式。
注意:服务器可以接受来自多个控制客户端的连接请求。
TWAMP-Control协议在TCP上运行,用于实例化和控制测量会话。命令序列如下,但与连接设置交换不同的是,TWAMP-Control命令可以多次发送。但是,消息不能顺序错开,尽管可以在执行session-start命令之前发送多个request-session命令。
◦请求会话
◦开始会话
◦ Stop-Session
TWAMP-Test通过UDP运行,并在会话发送方和会话反射方之间交换TWAMP-Test数据包。这些数据包包括时间戳字段,其中包含数据包出口和入口的即时信息。此外,每个数据包都包含错误估计值,指示发送方(会话发送方或会话反射方)与外部时间源(例如GPS或NTP)的同步偏差。数据包还包含序列号。
TWAMP-Control和TWAMP-test流具有三种安全模式:未经身份验证、经过身份验证和加密。
故障排除
某些平台可能依赖特定配置或部署来提供硬件时间戳。特别是,Cisco ASR9000系列路由器需要精确时间协议(PTP)同步作为时钟源。 此解决方案并非在所有用户场景中均可用。为了允许使用其他时间戳源(NTP时钟源,通过RouteProcessor(RP)上运行的守护程序),引入了ipsla hw-timestamp disable的新配置,以忽略其他平台相关层提供的时间戳值,并恢复到平台独立的时间戳。
如果启用并激活NTP时钟同步,请在IP SLA配置中使用hw-timestamp disable命令以禁用硬件时间戳。
ipsla
hw-timestamp disable
responder
twamp
timeout 100
!
!
server twamp
timer inactivity 100
Cisco ASR 9000系列聚合服务路由器版本6.0.1发行版本注释引入了新的TWAMP准确度增强功能。
TWAMP准确度增强在TWAMP测量中提供微秒粒度。此增强功能允许尽可能接近线缆收集入口和出口时间戳,以实现更高的准确性。
您可以将IOS XR版本升级到6.1.X及更高版本,以便能够使用TWAMP精确度增强功能,并验证实现所需行为。
您可以执行这些步骤来排查问题以及数据包捕获
- 为twamp服务器和响应器(例如120s)配置较高的超时值,这样信息在收集之前不会过快过期。
- 由于需要启用调试,请确保将设备配置为将调试日志消息发送到日志记录缓冲区。日志记录缓冲区的大小需要配置得足够大,以防止在测试期间回滚调试消息。
- 确保捕获在设备和探测功能之间交换的所有数据包(不仅包括UDP探测数据包,还包括用于建立会话的TCP)
- 从ASR9000或CRS设备收集列出的命令,具体取决于测试完成的位置:
步骤1:从探测开始测试之前,收集:
- terminal length 0
- show install active sum
- admin show platform
- admin show hw-module fpd location all
- show run
- ipsla twamp标准
- vshow ipsla twamp status
- show ntp status
- show ntp associations detail
第2步:启用设备上的所有Twamp调试,然后清除日志。
- 开始数据包捕获
- 从探测开始测试
注:如果这是探针上运行的唯一二amp测试,则不会产生过多输出。
步骤3.测试完成后收集这些命令
- show log
- show ipsla twamp connection detail
- show ipsla twamp connection requests
- show ipsla twamp session
- show ipsla trace twamp all verbose
- show ipsla trace twamp initialization verbose
解决方案:S位从未在IOS-XR中实现
根据RFC 4656,如果时间源没有外部同步的概念,则不应设置位。因此,S位未在IOS-XR平台中实现。