TWAMP Light技术白皮书-6W100

手册下载

TWAMP Light技术白皮书

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Copyright © 2020 新华三技术有限公司 版权所有,保留一切权利。

非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。

除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。

本文档中的信息可能变动,恕不另行通知。



概述

1.1  产生背景

随着网络技术的飞速发展,网络中承载的业务越来越多,语音、视频、游戏等业务对网络丢包和时延要求越来越高。网络管理者需要一种测量工具来及时了解网络的丢包和时延情况,以便根据测试结果进行网络调整和优化,满足业务需求。

TWAMPTwo-Way Active Measurement Protocol,双向主动测量协议)用来测量网络中任意两台设备之间报文的双向时延、时延抖动、丢包率等性能参数,为网络质量分析提供依据。

TWAMP协议定义了两种架构:标准框架和轻量级架构。TWAMP LightTWAMP协议的轻量级架构,简化了建立性能测量会话的控制协议,提高了测试性能,越来越多的厂家青睐并支持TWAMP Light技术。

1.2  技术优点

常见的丢包、时延测量技术包括NQANetwork Quality Analyzer,网络质量分析)和RFC 6374/6375MPLS网络的丢包和时延测量)等。与这些技术相比,TWAMP Light技术具有以下优点:

·     TWAMP LightIPPMIP performance monitoringIP性能监控)工作组定义的IP网络性能统计协议,具有统一的检测模型统一的报文格式,不同厂商的设备之间可以互通。

·     TWAMP Light能够部署在IPMPLSL3VPNLayer 3 Virtual Private Network三层虚拟专用网)等网络,满足不同类型网络的测量需求

·     TWAMP Light测试包含客户端(测试源端)和服务器端(测试目的端),只需在客户端生成和维护性能测量数据,服务器端无需生成和维护性能测量数据,方便网管设备快速获取测量数据。

·     TWAMP标准架构相比,TWAMP Light将服务器端的部分功能移到客户端实现,简化了建立性能测量会话的控制协议,大大降低了对服务器端的能力要求,有助于服务器端的快速部署。

TWAMP Light技术实现

2.1  网络架构

图1 TWAMP Light网络架构示意图

 

1所示,TWAMP Light网络模型中包含了以下角色:

·     TWAMP Light在测试源端设备上定义了两个角色:

¡     TWAMP-light Client:负责配置TWAMP-light测试会话。

¡     TWAMP-light Sender:负责启动、停止TWAMP-light测试会话,是TWAMP-light测试的源端设备。

·     TWAMP Light在测试目的端设备上定义了TWAMP-light Responder

ResponderTWAMP-light测试的目的端设备,负责将会话测试报文反射回去。

2.2  报文格式

TWAMP-light测试定义了Test-requestTest-response两种报文。

1. Test-request报文格式

图2 Test-request报文格式示意图

 

TWAMP-light Sender发送Test-request报文,报文中各字段含义如下:

·     Sequence Number报文发送序列号。

·     Timestamp发送报文的时间戳,支持PTPNTP两种时间戳格式,具体采用哪种格式由Error Estimate字段中Z”区域的取值决定

·     Error Estimate误差估计,单位为。如3所示,误差估计由以下几个部分组成:

¡     S:取值为0,表示没有外接时钟。

¡     Z:时间戳的格式,0表示NTP格式,1表示PTP格式。

¡     Scale取值0x3F

¡     Multiplier取值0xFF

图3 Error Estimate字段结构示意图

 

·     Packet Padding:报文的填充字段,随机填充数据。

2. Test-response报文格式

图4 Test-response报文格式示意图

 

TWAMP-light Responder收到Test-request报文后,回应Test-response报文。报文中各字段含义如下:

·     Sequence Number报文发送序列号,取值Responder实际发送报文的序列号。

·     Timestamp发送报文时的时间戳,支持PTPNTP两种时间戳格式,具体采用哪种格式由Error Estimate字段中Z”区域的取值决定

·     Error Estimate:误差估计,单位为秒,填充方法同Test-request报文。

·     MBZMust be zero,取值必须为0

·     Receive Timestamp:接收报文时的时间戳,支持PTPNTP两种时间戳格式,具体采用哪种格式由Error Estimate字段中Z”区域的取值决定

·     Sender Sequence Number请求报文的序列号,该值拷贝自对应Test-request报文中的Sequence Number字段

·     Sender Timestamp请求报文中的时间戳,该值拷贝自对应Test-request报文中的Timestamp字段

·     Sender Error Estimate请求报文中的误差估计,单位为秒,该值拷贝自对应Test-request报文中的Error Estimate字段。

·     Sender TTL请求报文中的TTL,该值拷贝自对应Test-request报文中的TTL字段。

·     Packet Padding:报文的填充字段,随机填充数据。

2.3  测量机制

2.3.1  TWAMP Light测量机制概述

5所示,TWAMP-light测量机制大致如下:

(1)     Sender使用预先设置好的IP地址、UDP端口号等参数,构造测试报文(Test-request),每隔一段时间进行一次测试,每次测试发送一个Test-request报文Responder

(2)     Responder收到探测报文后,构造反射报文(Test-response,填充时间戳和TTL等信息,将报文反射回Sender

(3)     Sender根据收到Test-response报文的个数,以及接收Test-response的时间,计算Test-request报文的丢失率、往返时延和时延抖动,从而判断源端到目的端、目的端到源端链路质量的好坏。

图5 TWAMP Light测量机制示意图

 

2.3.2  丢包测量机制

6所示,TWAMP Light丢包测量过程如下:

(1)     t0时刻:Sender开始第一个发包统计周期的发包(以指定的发包间隔持续发送测试报文Test-request)和计数,并开始第一个收包统计周期的收包(接收Responder反射回来的Test-response报文)和计数。

(2)     t1时刻:Sender收到Responder反射回来的首个Test-response报文

(3)     t2时刻:第一个发包统计周期(t0t2)结束,Sender统计第一个发包周期内发送Test-request报文的个数。同时开始第二个发包统计周期的发包和计数,以及第二个收包统计周期的收包和计数。

(4)     t3时刻:第一个收包统计周期(t0t3)结束,Sender统计第一个收包周期内收到Test-response报文的个数,并计算第一个发包周期的丢包率。

丢包率计算公式为:

丢包率 = (n个周期内发送报文数 n个周期内接收报文数) / n个周期内发送报文数

(5)     t4时刻:第二个发包统计周期(t2t4)结束,Sender统计第二个发包周期内发送Test-request报文的个数。同时开始下一个发包统计周期的发包和计数,以及下一个收包统计周期的收包和计数。

(6)     t5时刻:第二个收包统计周期(t2t5)结束,Sender统计第二个收包周期内收到Test-response报文的个数,并计算第二个发包周期的丢包率。

如此反复,计算每一个周期的丢包率,直到测量结束。

图6 TWAMP Light丢包测量机制示意图

 

TWAMP Light通过以下两个重要技术使得测量结果更加准确:

·     适当放宽收包统计周期,即收包统计周期比发包统计周期长一点,这样可以最大程度地避免由于网络延时与传输乱序对统计结果的不良影响。

6中的第10号报文,它在第一个发包统计周期结束后、第一个收包统计周期结束前到达,Sender仍会将其统计到第一个收包统计周期中。

·     通过序列号(Sequence Number)来识别该报文所属的发送统计周期。

¡     Sender会自动为Test-request报文分配序列号;

¡     Responder构造Test-response报文时,会将Test-request报文的序列号拷贝到Test-response报文Sender Sequence Number字段;

¡     Sender收到Test-response报文后,根据报文中的Sender Sequence Number字段,判断Test-response所属的周期。

6中,第一个收包统计周期只统计序列号为110的报文,不会统计第11号报文;第二个收包统计周期只统计序列号为1120的报文,不会统计其他序列号的报文,从而保证了统计的准确性。

2.3.3  时延、时延抖动测量机制

7所示,TWAMP Light按周期发送测试报文,并在测试报文中携带时间戳,基于相邻两个报文的时间戳来计算时延和时延抖动。测量过程如下:

(1)     Sender发送一个Test-request报文给Responder,并在报文中携带报文离开时间STxTime

(2)     Test-request报文到达ResponderResponder记录接收Test-request报文的时间DRxTime

(3)     Responder根据Test-request报文中的字段构造Test-response报文并将时间戳STxTimeDRxTime以及预估的Test-response报文离开时间DTxTime信息记录在Test-response报文中反射回Sender

(4)     Test-response报文到达SenderSender记录接收Test-response报文的时间SRxTime,并根据STxTimeDRxTimeDTxTimeSRxTime四个时间戳,计算出SenderResponder之间的双向链路时Delay1

Sender以固定周期发送多个探测报文,重复上述过程,从而计算出SenderResponder之间的双向链路时延Delay2Delay3,以及源端到目的端的时延抖动SD-jitter、目的端到源端的时延抖动DS-jitter

图7 TWAMP Light时延、时延抖动测量机制示意图

 

典型组网应用

3.1  使用TWAMP Light测试IP网络性能

8所示,Video phone 1Video phone 2在进行视频通话时发现语音有卡顿、视频有马赛克现象,需要测试IP承载网络的性能,确认语音和视频流量在穿越IP承载网络时,是否存在严重丢包和延时现象。在Device 1Device 2上使用TWAMP Light功能,可以测试业务流在穿越IP承载网络时,Interface 1Interface 2的双向路径时延、抖动及丢包率参数,协助用户定位网络问题。

图8 使用TWAMP Light测试IP网络性能组网图

 

3.2  使用TWAMP Light测试VPN网络性能

9所示,某企业的两个分支机构分别在A地和B地办公,使用VPN通道连接两地网络。Video phone 1Video phone 2在进行视频通话时发现语音有卡顿、视频有马赛克现象,需要测试VPN网络的性能,确认哪部分网络丢包和延时比较严重。使用TWAMP Light功能,可以测试业务流在穿越VPN网络时,路径的双向路径时延、抖动及丢包率参数,协助用户定位网络问题:

·     PE 1PE 2上部署TWAMP Light功能,测试整个运营商网络Interface 1Interface 6的性能。如果存在严重时延和丢包,可以继续执行下面测试定位问题网络。

·     PE 1PE-agg 1上部署TWAMP Light功能,可以测试MPLS L2VPN网络Interface 1Interface 2的性能。

·     PE-agg 1PE-agg 2上部署TWAMP Light功能,可以测试MPLS L3VPN网络Interface 3Interface 4的性能。

·     PE 1PE-agg 2上部署TWAMP Light功能,可以测试MPLS L2VPN接入MPLS L3VPN网络Interface 1Interface 5的性能。

图9 使用TWAMP Light测试VPN网络性能组网图

 

 

联系我们