CN105634840B - 一种丢包的测量方法及装置 - Google Patents
一种丢包的测量方法及装置 Download PDFInfo
- Publication number
- CN105634840B CN105634840B CN201410594475.8A CN201410594475A CN105634840B CN 105634840 B CN105634840 B CN 105634840B CN 201410594475 A CN201410594475 A CN 201410594475A CN 105634840 B CN105634840 B CN 105634840B
- Authority
- CN
- China
- Prior art keywords
- node
- test
- counter
- preset test
- received
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
Abstract
本发明提供一种丢包的测量方法及装置,应用于双向主动测量协议TWAMP的测试会话中,测量方法包括:TWAMP的测试会话中的第一节点向第二节点发送记录有预设测试报文的个数的测试报文;第二节点对接收到的测试报文进行收包统计,得到第二节点接收到的预设测试报文的个数;第二节点对第二节点接收到的预设测试报文进行预处理,得到向第一节点反馈的预设测试报文的个数,将第二节点接收到的预设测试报文的个数和向第一节点反馈的预设测试报文的个数加入测试报文中构成应答报文,向第一节点反馈应答报文;第一节点接收对接收到的应答报文进行收包统计,得到第一节点接收到的预设测试报文的个数;第一节点根据预设测试报文的个数,获取TWAMP的测试会话中的丢包量。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种丢包的测量方法及装置。
背景技术
TWAMP协议(Two-Way Active Measurement Protocol)是一种IP性能度量的协议,主要用于IP网络链路时延和丢包率等性能度量。TWAMP协议由两部分协议组成:TWAMP控制协议(TWAMP-Control)和TWAMP测试协议(TWAMP-Test)。TWAMP-Control主要用于初始化、启动和停止测试会话。TWAMP-Test主要用于在测试的端点间交互测试分组,同时进行IP性能的度量。
TWAMP通常有4个逻辑实体组成,简单的体系架构如图1所示:
●Control-Client:TWAMP测试发起端,向Server实体发送建立控制连接请求,协商报文的通信模式、Session-Reflector端接收测试报文的端口号等。Control-Client控制TWAMP-Test会话的开始和终止。
●Server:服务端,接收来自Control-Client端发送的建连请求,与Control-Client协商报文通信模式、Session-Reflector端接收测试报文的端口号等。Server端管理一个或多个TEAMP-Test会话。
●Session-Sender:TWAMP-Test会话中向Session-Reflector发送测试报文的节点,同时接收来自Session-Reflector反射会的测试报文,并收集性能信息,统计测量结果。
●Session-Reflector:TWAMP-Test会话中,接收来自Session-Sender端的测试报文,并发送应答报文。
如图2所示,在测试阶段,首先有Session-Sender向Session-Reflector发送测试报文,该测试报文中包含报文发送的序列号和时间戳。Session-Reflector在收到Session-Sender发来的测试报文后,将测试报文反射回Session-Sender,同时在反射的测试报文中加如自己的收包时间戳、发包时间戳和报文序列号等信息,如图3所示,Session-Sender收到Session-Reflector发射回的测试报文后,收集报文信息,并进行IP性能度量。
假设我们将上述过程中Session-Sender的发包时间戳定义为T1,收包时间戳定义为T4,Session-Reflector的收包时间戳定义为T2,发包时间戳定位T3,那么可以通过以下方法计算链路的时延。
链路时延=(T4-T1)-(T3-T2)。
Reflector处理时延=T3-T2。
前向时延链路=T2-T1(网络时钟同步的情况下有意义,其它情况下无意义)。
反向链路时延=T4-T3(网络时钟同步的情况下有意义,其它情况下无意义)。
假设我们将测试过程中,Session-Sender端发送的报文个数定义为TxC,接收Session-Reflector发射的报文个数定义为RxC,那么我可以通过TxC-RxC来计算整个还回链路的丢包数。这种方式虽然可以计算环回链路的丢包,但存在以下问题:
1、丢包统计粒度比较粗,当链路上存在丢包时,我们无法准确判断在链路的那个方向上有丢包;
2、无法精确统计每个方向上丢包率是多少;
3、虽然在Sender-Test测试报文中和Reflector-Test测试报文中,都携带了发送报文的序列号,但这两个序列号是独立生成的,它的生成依赖于各端的传输规则,因此,我们认为使用序列号来计算每个方向上的丢包统计是不可靠的;
4、TWAMP协议在进行丢包测量时,只能统计TWAMP测试报文,无法统计用户报文(user data)。
发明内容
本发明的目的在于提供一种丢包的测量方法及装置,无需改变现有双向主动测量协议TWAMP的规范和流程,也无需增加新的模式,仅需在测试报文和应答报文中加入各个节点的统计数据,来达到精确度量待测链路上丢包的目的。
为了达到上述目的,本发明实施例提供一种丢包的测量方法,应用于双向主动测量协议TWAMP的测试会话中,包括:
所述TWAMP的测试会话中的第一节点向第二节点发送记录有预设测试报文的个数的测试报文;
所述第二节点对接收到的所述测试报文进行收包统计,得到所述第二节点接收到的所述预设测试报文的个数;
所述第二节点对所述第二节点接收到的所述预设测试报文进行预处理,得到向所述第一节点反馈的预设测试报文的个数,将所述第二节点接收到的预设测试报文的个数和向第一节点反馈的所述预设测试报文的个数加入所述测试报文中构成应答报文,向所述第一节点反馈所述应答报文;
所述第一节点接收对接收到的所述应答报文进行收包统计,得到所述第一节点接收到的所述预设测试报文的个数;
所述第一节点根据所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数,获取所述TWAMP的测试会话中的丢包量。
其中,所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数采用类型-长度-值TLV格式存储;
所述TLV格式包括类型字段、长度字段和内容字段,其中,所述类型字段用于定义所述TLV格式的类型,所述长度字段用于定义所述内容字段的长度,所述内容字段用于存储所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数。
其中,所述内容字段包括用于存储第一节点发送的预设测试报文的个数的第一计数器、用于存储第二节点接收到的预设测试报文的个数的第二计数器、用于存储第二节点向第一节点反馈的预设测试报文的个数的第三计数器以及用于存储第一节点收到的预设测试报文的个数的第四计数器。
其中,所述将所述第二节点接收到的预设测试报文的个数和需向第一节点反馈的所述预设测试报文的个数加入所述测试报文中构成应答报文,向所述第一节点反馈所述应答报文的步骤包括:
所述第二节点将所述测试报文的第一计数器的内容写入所述应答报文的第一计数器中;
所述第二节点将所述第二节点接收到的预设测试报文的个数写入所述应答报文的第二计数器中;
所述第二节点将所述需向第一节点反馈的所述预设测试报文的个数写入所述应答报文的第三计数器中;
所述第二节点将所述应答报文的第四计数器清零,并向所述第一节点反馈所述应答报文。
其中,所述第一节点测量一次丢包量的时间小于或者等于所述第一计数器、第二计数器、第三计数器和第四计数器中最小的翻转时间。
其中,所述测试报文还包括:所述测试报文的序列号、所述测试报文的发送时间以及所述测试报文的填充数据包;
所述应答报文还包括:所述第二节点接收所述测试报文的时间、所述第二节点向所述第一节点反馈应答报文的时间以及所述应答报文的序列号。
其中,所述第一节点向第二节点发送测试报文之前还包括:
设置所述TWAMP的测试会话中的请求会话消息中的填充字段长度大于23个字节。
本发明实施例还包括一种丢包的测量装置,应用于双向主动测量协议TWAMP的测试会话中,包括:
发送模块,用于所述TWAMP的测试会话中的第一节点向第二节点发送记录有预设测试报文的个数的测试报文;
第一接收模块,用于所述第二节点对接收到的所述测试报文进行收包统计,得到所述第二节点接收到的所述预设测试报文的个数;
反馈模块,用于所述第二节点对所述第二节点接收到的所述预设测试报文进行预处理,得到向所述第一节点反馈的预设测试报文的个数,将所述第二节点接收到的预设测试报文的个数和向第一节点反馈的所述预设测试报文的个数加入所述测试报文中构成应答报文,向所述第一节点反馈所述应答报文;
第二接收模块,用于所述第一节点接收对接收到的所述应答报文进行收包统计,得到所述第一节点接收到的所述预设测试报文的个数;
获取模块,用于所述第一节点根据所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数,获取所述TWAMP的测试会话中的丢包量。
其中,所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数采用类型-长度-值TLV格式存储;
所述TLV格式包括类型字段、长度字段和内容字段,其中,所述类型字段用于定义所述TLV格式的类型,所述长度字段用于定义所述内容字段的长度,所述内容字段用于存储所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数。
其中,所述内容字段包括用于存储第一节点发送的预设测试报文的个数的第一计数器、用于存储第二节点接收到的预设测试报文的个数的第二计数器、用于存储第二节点向第一节点反馈的预设测试报文的个数的第三计数器以及用于存储第一节点收到的预设测试报文的个数的第四计数器。
其中,所述反馈模块包括:
第一写入单元,用于所述第二节点将所述测试报文的第一计数器的内容写入所述应答报文的第一计数器中;
第二写入单元,用于所述第二节点将所述第二节点接收到的预设测试报文的个数写入所述应答报文的第二计数器中;
第三写入单元,用于所述第二节点将所述需向第一节点反馈的所述预设测试报文的个数写入所述应答报文的第三计数器中;
反馈单元,用于所述第二节点将所述应答报文的第四计数器清零,并向所述第一节点反馈所述应答报文。
其中,所述第一节点测量一次丢包量的时间小于或者等于所述第一计数器、第二计数器、第三计数器和第四计数器中最小的翻转时间。
其中,所述测试报文还包括:所述测试报文的序列号、所述测试报文的发送时间以及所述测试报文的填充数据包;
所述应答报文还包括:所述第二节点接收所述测试报文的时间、所述第二节点向所述第一节点反馈应答报文的时间以及所述应答报文的序列号。
其中,所述测量装置还包括:
设置模块,用于设置所述TWAMP的测试会话中的请求会话消息中的填充字段长度大于23个字节。
本发明的上述技术方案至少具有如下有益效果:
本发明实施例的丢包的测量方法及装置中,通过在第一节点发送的测试报文和第二节点反馈的应答报文中均加入对应节点处发送及接收的预设测试报文的个数,来达到精确度量待测链路上丢包的目的;该方法无需改变现有TWAMP协议规范和流程,无需增加新的模式,仅需从应答报文中提取相应的预设测试报文的个数,即可得到各个方向上的丢包或丢包率,提高丢包测量的准确性。
附图说明
图1表示表示现有技术中TWAMP协议的简单架构;
图2表示现有技术中非认证模式(Unauthenticated Mode)下测试报文Sender-Test的封装格式;
图3表示现有技术中非认证模式下应答报文Reflector-Test的封装格式;
图4表示本发明实施例的丢包的测量方法的基本步骤示意图;
图5表示本发明实施例中用于丢包测量的TLV格式;
图6表示本发明实施例中应答报文的构成过程示意图;
图7表示本发明实施例的非认证模式下测量TLV的操作简图;
图8表示本发明实施例的非认证模式下使用的测试报文Sender-Test的封装格式;
图9表示本发明实施例的非认证模式下使用的应答报文Reflector-Test的封装格式;
图10表示本发明实施例的非认证模式和对称模式下(Symmetrical Mode)使用的测试报文Sender-Test的封装格式;
图11表示本发明实施例的非认证模式和对称模式下使用的应答报文Reflector-Test的封装格式;
图12表示本发明的第一实施例的基本结构示意图;
图13表示本发明的第二实施例和第三实施例的基本结构示意图;
图14表示本发明实施例的丢包的测量装置的组成结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有技术中丢包统计比较粗,当链路上存在丢包时,无法准确判断在链路的那个方向上有丢包的问题,提供一种丢包的测量方法及装置中,通过在第一节点发送的测试报文和第二节点反馈的应答报文中均加入对应节点处发送及接收的预设测试报文的个数,来达到精确度量待测链路上丢包的目的;该方法无需改变现有TWAMP协议规范和流程,无需增加新的模式,仅需从应答报文中提取相应的预设测试报文的个数,即可得到各个方向上的丢包或丢包率,提高丢包测量的准确性。
如图4所示,本发明实施例提供一种丢包的测量方法,应用于双向主动测量协议TWAMP的测试会话中,包括:
步骤41,所述TWAMP的测试会话中的第一节点向第二节点发送记录有预设测试报文的个数的测试报文;
步骤42,所述第二节点对接收到的所述测试报文进行收包统计,得到所述第二节点接收到的所述预设测试报文的个数;
步骤43,所述第二节点对所述第二节点接收到的所述预设测试报文进行预处理,得到向所述第一节点反馈的预设测试报文的个数,将所述第二节点接收到的预设测试报文的个数和向第一节点反馈的所述预设测试报文的个数加入所述测试报文中构成应答报文,向所述第一节点反馈所述应答报文;
步骤44,所述第一节点接收对接收到的所述应答报文进行收包统计,得到所述第一节点接收到的所述预设测试报文的个数;
步骤45,所述第一节点根据所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数,获取所述TWAMP的测试会话中的丢包量。
本发明的上述实施例具体应用于双向主动测量协议TWAMP的测试会话中,所述第一节点具体为发射节点Session-Sender,所述第二节点具体为反射节点Session-Reflector;该测试报文中还包括:所述测试报文的序列号、所述测试报文的发送时间以及所述测试报文的填充数据包;该应答报文还包括:所述第二节点接收所述测试报文的时间、所述第二节点向所述第一节点反馈应答报文的时间以及所述应答报文的序列号。第一节点收到第二节点发射回的应答报文后,收集该应答报文的信息,并进行IP性能度量;进一步的,由于在测试报文及应答报文中均加入相应预设测试报文的个数,方便用户或系统根据不同节点、不同方向上的预设测试报文的个数,对传输过程中的丢包或丢包率进行统计,该方法能够准确判断在链路的哪个方向上存在丢包,且能准确计算上存在丢包的方向上的丢包量或丢包率。
具体,根据第一节点发送的预设测试报文的个数和第二节点接收的预设测试报文的个数,能够计算出发送方向(第一节点至第二节点)上是否存在丢包及丢包量;根据第二节点接收的预设测试报文的个数和第二节点向第一节点反馈的预设测试报文的个数,能够计算出第二节点的预处理过程中是否存在丢包及丢包量;根据第二节点反馈的预设测试报文的个数和第一节点接收的预设测试报文的个数,能够计算出反馈方向(第二节点至第一节点)上是否存在丢包及丢包量;根据第一节点发送的预设测试报文的个数和第一节点接收的预设测试报文的个数,能够计算出一次测试会话过程中的丢包量。
具体的,如图5所示,本发明的上述实施例中,所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数采用类型-长度-值TLV格式存储;
所述TLV格式包括类型字段、长度字段和内容字段,其中,所述类型字段用于定义所述TLV格式的类型,所述长度字段用于定义所述内容字段的长度,所述内容字段用于存储所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数。
进一步的,所述内容字段包括用于存储第一节点发送的预设测试报文的个数的第一计数器S_TxC、用于存储第二节点接收到的预设测试报文的个数的第二计数器R_RxC、用于存储第二节点向第一节点反馈的预设测试报文的个数的第三计数器R_TxC以及用于存储第一节点收到的预设测试报文的个数的第四计数器S_RxC。
具体的,本发明实施例的实际应用中,若第一节点的收包装置自身具备性能统计的能力,所述内容字段中可不设置第四计数器S_RxC。进一步的,在计算前向丢包和反向丢包时要考虑计数器的翻转,如果某个计算器发生了翻转,将无法正确进行丢包测量。因此在给定发包速率,预设测试报文个数及计数器大小的情况下,必须防止计数器翻转的情况的发生。即所述第一节点测量一次丢包量的时间小于或者等于所述第一计数器、第二计数器、第三计数器和第四计数器中最小的翻转时间。例如,发包速率为100Gbps,测试报文大小为64字节的情况下,一个32的计数器将在22秒内发生翻转,因此,在这种情况下,每次丢包统计的时间间隔不能大于22秒,该时间间隔为该速率下最大测量间隔。
通常在实施TWAMP测量时,测量间隔是事先确定好的(通常的预设配置的,且小于任一计数器的翻转时间),因此可以根据该测试间隔内发送和接收的预设测试报文的个数或报文的字节数来测量待测IP链路的容量。
具体的,本发明上述实施例中,如图6所示,步骤43包括:
步骤431,所述第二节点将所述测试报文的第一计数器的内容写入所述应答报文的第一计数器中;
步骤432,所述第二节点将所述第二节点接收到的预设测试报文的个数写入所述应答报文的第二计数器中;
步骤433,所述第二节点将所述需向第一节点反馈的所述预设测试报文的个数写入所述应答报文的第三计数器中;
步骤434,所述第二节点将所述应答报文的第四计数器清零,并向所述第一节点反馈所述应答报文。
本发明上述实施例中,所述应答报文中第一计数器、第二计数器和第三计数器中均写入相应的预设测试报文的个数后再反馈给第一节点,第一节点在第四计数器中写入收到的预设测试报文的个数,则所述第一节点能够根据第一计数器、第二计数器、第三计数器和第四计数器的内容,计算任一方向上的丢包量。
具体的,本发明的上述实施例中,所述第一节点向第二节点发送测试报文之前还包括:
步骤40,设置所述TWAMP的测试会话中的请求会话消息中的填充字段长度大于23个字节。
下面以图7为例来说明非认证模式下(其他模式下操作步骤相同)对该TLV的操作步骤,NodeA代表第一节点Session-Sender,NodeB代表第二节点Session-Reflector:
步骤1,待测的A、B两端分别配置使能解析该丢包测量TLV的功能,并且在请求会话是request-TW-session消息中填充长度(padding-length)必须大于23字节(测试TVL+测试TLV之前的必须为零MBZ填充字段长度);
步骤2,在T1时刻,节点A向节点B发送测试报文(如图8所示),在测试报文TLV的第一计数器S_TxC计数器携带节点A节点已经发送的预设测试报文的个数A_TxC[n],其它三个计数器置零;
步骤3,在T2时刻,B端收到A发来的测试报文后,进行本段收包统计;
步骤4,在T3时刻,B端将收到测试报文TLV中的S_TxC[n]计数器拷贝到B端应答报文(如图9所示)TLV的S_TxC计数器中,将B端收包统计R_RxC[n]拷贝到应到报文TLV的R_RxC计数器中,将B端反射报文统计R_TxC[n]拷贝到应答报文TLV的R_TxC计数其中,S_RxC计数器清零,之后B向A端发射该应答报文;
步骤5,在T4时刻,A端收到应道报文后进行本端收包统计,同时将统计到的收包统计S_RxC[n]拷贝到应到报文TLV中的S_RxC计数器中(如果A端收包装置自身具备性能统计的能力,可不设置S_RxC计数器);
步骤6,在A端,性能统计模块,可根据应答报文TLV的报文计数器,进行性能测量(包括,前向丢包测量、反向丢包测量、前向丢包率测量、反向丢包率测量和相应丢包率抖动测量,在给定发包速率和测量间隔的前提下亦可进行,前向路径容量测量和反向路径容量测量)。
根据以上步骤可以用以下算法进行丢包和容量测量:
前向丢包:TxLoss[n-1,n]=(A_TxC[n]-A_TxC[n-1])-(B_RxC[n]-B_RxC[n-1]);
反向丢包:RxLoss[n-1,n]=(B_TxC[n]-B_TxC[n-1])-(A_RxC[n]-A_RxC[n-1]);
前向丢包率:TxLossRadio[n-1,n]=A_TxLoss[n-1,n]/(A_TxC[n]-A_TxC[n-1]);
反向丢包率:RxLossRadio[n-1,n]=A_RxLoss[n-1,n]/(B_TxC[n]-B_TxC[n-1])。
需要说明的是,其他模式下,对该TLV的操作步骤与上述非认证模式下的操作步骤相同;例如图10显示非认证模式和对称模式下(Symmetrical Mode)本发明使用的测试报文Sender-Test的封装格式;图11显示非认证模式和对称模式下本发明使用的应答报文Reflector-Test的封装格式。其他模式,如非认证模式、对称模式、反射字节(ReflectOctets)模式下测试报文Sender-Test及应答报文Reflector-Test的封装格式在此不一一列举。
为了更好的描述本发明实施例的测量方法,下面结合具体场景进行详细描述,如图12所示为本发明的第一实施例,是一种使用TWAMP协议,以一种附加统计TLV的形式,进行按需测量IP网络丢包的应用,该实例中TWAMP进行只对控制面板TWAMP测试报文进行统计,不统计用户报文。其中RouterA作为Control-Client和Session-Sender,RouterB作为Server和Session-Reflector。具体的:
步骤11,首先在RouterA和RouterB上使能解析丢包统计TLV能力,并由A发起建立TWAMP-Control连接和该链接上的测试会话;
步骤12,在RouterA上发起测试指令后,RouterA上TWAMP进程已上述实施方式,在控制面向routerA发送测试报文;
步骤13,RouterB也以上述实施方式向A端反射测试报文;
步骤14,RouterA收到RouterB反射回的报文后,进行报文信息统计,并按上述算法进行丢包测量。
如图13所示为本发明的第二实施例,是一种使用TWAMP协议,以一种附加统计TLV的形式,进行主动测量网络丢包的应用。在实施时需要有硬件参与,如FPGA,性能统计装置需要同时统计TWAMP测试报文和用户报文,并且该案例只适用于带内丢包测量。具体包括:
步骤21,与第一实施例相同,RouterA和RouterB需要开启解析统计TLV的能力;
步骤22,当RouterA发起测试指令后,由硬件设备(例如FPGA)在数据面立即按配置的速率和报文大小,向RouterB发送测试报文;
步骤23,RouterB硬件设备收到RouterA发来的测试报文后,进行相应报文统计后,立即向RouterA反射测试报文;
步骤24,RouterA收到RouterB反射回的报文后,进行报文信息统计,并按上述算法进行丢包测量。
如图13所示,第三实施例是一种在第二实施例的基础上,进行实时监控链路丢包的一种应用。具体包括:
步骤31,首先在RouterA上配置一个前向丢包率门限值和一个反向丢包率门限值;
步骤32,在RouterA和RouterB上实施第二实施例的步骤;
步骤33,在RouterA上,实施监控链路上两个方向的丢包率,当相应方向上的丢包率达超过配置的丢包门限时,上报相应的告警,提示用户做相应操作。
为了更好的实现上述目的,如图14所示,本发明实施例还提供一种丢包的测量装置,应用于双向主动测量协议TWAMP的测试会话中,包括:
发送模块71,用于所述TWAMP的测试会话中的第一节点向第二节点发送记录有预设测试报文的个数的测试报文;
第一接收模块72,用于所述第二节点对接收到的所述测试报文进行收包统计,得到所述第二节点接收到的所述预设测试报文的个数;
反馈模块73,用于所述第二节点对所述第二节点接收到的所述预设测试报文进行预处理,得到向所述第一节点反馈的预设测试报文的个数,将所述第二节点接收到的预设测试报文的个数和向第一节点反馈的所述预设测试报文的个数加入所述测试报文中构成应答报文,向所述第一节点反馈所述应答报文;
第二接收模块74,用于所述第一节点接收对接收到的所述应答报文进行收包统计,得到所述第一节点接收到的所述预设测试报文的个数;
获取模块75,用于所述第一节点根据所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数,获取所述TWAMP的测试会话中的丢包量。
具体的本发明上述实施例中,所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数采用类型-长度-值TLV格式存储;
所述TLV格式包括类型字段、长度字段和内容字段,其中,所述类型字段用于定义所述TLV格式的类型,所述长度字段用于定义所述内容字段的长度,所述内容字段用于存储所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数。
具体的本发明上述实施例中,所述内容字段包括用于存储第一节点发送的预设测试报文的个数的第一计数器、用于存储第二节点接收到的预设测试报文的个数的第二计数器、用于存储第二节点向第一节点反馈的预设测试报文的个数的第三计数器以及用于存储第一节点收到的预设测试报文的个数的第四计数器。
具体的本发明上述实施例中,所述反馈模块73包括:
第一写入单元,用于所述第二节点将所述测试报文的第一计数器的内容写入所述应答报文的第一计数器中;
第二写入单元,用于所述第二节点将所述第二节点接收到的预设测试报文的个数写入所述应答报文的第二计数器中;
第三写入单元,用于所述第二节点将所述需向第一节点反馈的所述预设测试报文的个数写入所述应答报文的第三计数器中;
反馈单元,用于所述第二节点将所述应答报文的第四计数器清零,并向所述第一节点反馈所述应答报文。
具体的本发明上述实施例中,所述第一节点测量一次丢包量的时间小于或者等于所述第一计数器、第二计数器、第三计数器和第四计数器中最小的翻转时间。
具体的本发明上述实施例中,所述测试报文还包括:所述测试报文的序列号、所述测试报文的发送时间以及所述测试报文的填充数据包;
所述应答报文还包括:所述第二节点接收所述测试报文的时间、所述第二节点向所述第一节点反馈应答报文的时间以及所述应答报文的序列号。
具体的本发明上述实施例中,所述测量装置还包括:
设置模块,用于设置所述TWAMP的测试会话中的请求会话消息中的填充字段长度大于23个字节。
本发明实施例的丢包的测量方法及装置中,通过在第一节点发送的测试报文和第二节点反馈的应答报文中均加入对应节点处发送及接收的预设测试报文的个数,来达到精确度量待测链路上丢包的目的;该方法无需改变现有TWAMP协议规范和流程,无需增加新的模式,仅需从应答报文中提取相应的预设测试报文的个数,即可得到各个方向上的丢包或丢包率,提高丢包测量的准确性。
需要说明的是,本发明实施例提供的丢包的测量装置是应用上述测量方法的装置,则上述测量方法是所有实施例均适用于该测量装置,且均能达到相同或相似的有益效果。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种丢包的测量方法,应用于双向主动测量协议TWAMP的测试会话中,其特征在于,包括:
所述TWAMP的测试会话中的第一节点向第二节点发送记录有预设测试报文的个数的测试报文;
所述第二节点对接收到的所述测试报文进行收包统计,得到所述第二节点接收到的所述预设测试报文的个数;
所述第二节点对所述第二节点接收到的所述预设测试报文进行预处理,得到向所述第一节点反馈的预设测试报文的个数,将所述第二节点接收到的预设测试报文的个数和向第一节点反馈的所述预设测试报文的个数加入所述测试报文中构成应答报文,向所述第一节点反馈所述应答报文;
所述第一节点对接收到的所述应答报文进行收包统计,得到所述第一节点接收到的所述预设测试报文的个数;
所述第一节点根据所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数,获取所述TWAMP的测试会话中的丢包量。
2.根据权利要求1所述的测量方法,其特征在于,所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数采用类型-长度-值TLV格式存储;
所述TLV格式包括类型字段、长度字段和内容字段,其中,所述类型字段用于定义所述TLV格式的类型,所述长度字段用于定义所述内容字段的长度,所述内容字段用于存储所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数。
3.根据权利要求2所述的测量方法,其特征在于,所述内容字段包括用于存储第一节点发送的预设测试报文的个数的第一计数器、用于存储第二节点接收到的预设测试报文的个数的第二计数器、用于存储第二节点向第一节点反馈的预设测试报文的个数的第三计数器以及用于存储第一节点收到的预设测试报文的个数的第四计数器。
4.根据权利要求3所述的测量方法,其特征在于,所述将所述第二节点接收到的预设测试报文的个数和需向第一节点反馈的所述预设测试报文的个数加入所述测试报文中构成应答报文,向所述第一节点反馈所述应答报文的步骤包括:
所述第二节点将所述测试报文的第一计数器的内容写入所述应答报文的第一计数器中;
所述第二节点将所述第二节点接收到的预设测试报文的个数写入所述应答报文的第二计数器中;
所述第二节点将所述需向第一节点反馈的所述预设测试报文的个数写入所述应答报文的第三计数器中;
所述第二节点将所述应答报文的第四计数器清零,并向所述第一节点反馈所述应答报文。
5.根据权利要求4所述的测量方法,其特征在于,所述第一节点测量一次丢包量的时间小于或者等于所述第一计数器、第二计数器、第三计数器和第四计数器中最小的翻转时间。
6.根据权利要求1所述的测量方法,其特征在于,所述测试报文还包括:所述测试报文的序列号、所述测试报文的发送时间以及所述测试报文的填充数据包;
所述应答报文还包括:所述第二节点接收所述测试报文的时间、所述第二节点向所述第一节点反馈应答报文的时间以及所述应答报文的序列号。
7.根据权利要求1所述的测量方法,其特征在于,所述第一节点向第二节点发送测试报文之前还包括:
设置所述TWAMP的测试会话中的请求会话消息中的填充字段长度大于23个字节。
8.一种丢包的测量装置,应用于双向主动测量协议TWAMP的测试会话中,其特征在于,包括:
发送模块,用于所述TWAMP的测试会话中的第一节点向第二节点发送记录有预设测试报文的个数的测试报文;
第一接收模块,用于所述第二节点对接收到的所述测试报文进行收包统计,得到所述第二节点接收到的所述预设测试报文的个数;
反馈模块,用于所述第二节点对所述第二节点接收到的所述预设测试报文进行预处理,得到向所述第一节点反馈的预设测试报文的个数,将所述第二节点接收到的预设测试报文的个数和向第一节点反馈的所述预设测试报文的个数加入所述测试报文中构成应答报文,向所述第一节点反馈所述应答报文;
第二接收模块,用于所述第一节点对接收到的所述应答报文进行收包统计,得到所述第一节点接收到的所述预设测试报文的个数;
获取模块,用于所述第一节点根据所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数,获取所述TWAMP的测试会话中的丢包量。
9.根据权利要求8所述的测量装置,其特征在于,所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数采用类型-长度-值TLV格式存储;
所述TLV格式包括类型字段、长度字段和内容字段,其中,所述类型字段用于定义所述TLV格式的类型,所述长度字段用于定义所述内容字段的长度,所述内容字段用于存储所述第一节点发送及接收的预设测试报文的个数和所述第二节点接收及反馈的预设测试报文的个数。
10.根据权利要求9所述的测量装置,其特征在于,所述内容字段包括用于存储第一节点发送的预设测试报文的个数的第一计数器、用于存储第二节点接收到的预设测试报文的个数的第二计数器、用于存储第二节点向第一节点反馈的预设测试报文的个数的第三计数器以及用于存储第一节点收到的预设测试报文的个数的第四计数器。
11.根据权利要求10所述的测量装置,其特征在于,所述反馈模块包括:
第一写入单元,用于所述第二节点将所述测试报文的第一计数器的内容写入所述应答报文的第一计数器中;
第二写入单元,用于所述第二节点将所述第二节点接收到的预设测试报文的个数写入所述应答报文的第二计数器中;
第三写入单元,用于所述第二节点将所述需向第一节点反馈的所述预设测试报文的个数写入所述应答报文的第三计数器中;
反馈单元,用于所述第二节点将所述应答报文的第四计数器清零,并向所述第一节点反馈所述应答报文。
12.根据权利要求11所述的测量装置,其特征在于,所述第一节点测量一次丢包量的时间小于或者等于所述第一计数器、第二计数器、第三计数器和第四计数器中最小的翻转时间。
13.根据权利要求8所述的测量装置,其特征在于,所述测试报文还包括:所述测试报文的序列号、所述测试报文的发送时间以及所述测试报文的填充数据包;
所述应答报文还包括:所述第二节点接收所述测试报文的时间、所述第二节点向所述第一节点反馈应答报文的时间以及所述应答报文的序列号。
14.根据权利要求8所述的测量装置,其特征在于,所述测量装置还包括:
设置模块,用于设置所述TWAMP的测试会话中的请求会话消息中的填充字段长度大于23个字节。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410594475.8A CN105634840B (zh) | 2014-10-29 | 2014-10-29 | 一种丢包的测量方法及装置 |
PCT/CN2015/074646 WO2015184890A1 (zh) | 2014-10-29 | 2015-03-19 | 一种丢包的测量方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410594475.8A CN105634840B (zh) | 2014-10-29 | 2014-10-29 | 一种丢包的测量方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105634840A CN105634840A (zh) | 2016-06-01 |
CN105634840B true CN105634840B (zh) | 2020-05-05 |
Family
ID=54766115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410594475.8A Active CN105634840B (zh) | 2014-10-29 | 2014-10-29 | 一种丢包的测量方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105634840B (zh) |
WO (1) | WO2015184890A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105634937B (zh) * | 2015-12-31 | 2019-03-26 | 华为技术有限公司 | 一种报文的处理方法和装置 |
CN107465565B (zh) * | 2016-06-06 | 2019-08-30 | 中兴通讯股份有限公司 | 链路测试方法和装置及系统 |
CN107666671B (zh) * | 2016-07-29 | 2022-08-16 | 中兴通讯股份有限公司 | 基于twamp的错误连接检测的方法及装置 |
CN109104323A (zh) * | 2017-06-20 | 2018-12-28 | 中兴通讯股份有限公司 | 一种丢包参数的测试方法、第一设备和第二设备 |
CN108023787B (zh) * | 2017-11-24 | 2020-08-04 | 烽火通信科技股份有限公司 | 基于fpga的以太网业务测试装置及方法 |
CN108390797A (zh) * | 2018-02-27 | 2018-08-10 | 盛科网络(苏州)有限公司 | 一种基于芯片实现主动测量协议的方法 |
CN111262749B (zh) | 2018-11-30 | 2023-05-23 | 华为技术有限公司 | 一种检测网络可靠性的方法及设备 |
CN110233778A (zh) * | 2019-07-01 | 2019-09-13 | 北京云端智度科技有限公司 | 一种基于丢包率的端到端链路丢包分析方法 |
CN114301811A (zh) * | 2020-09-23 | 2022-04-08 | 中国移动通信有限公司研究院 | 一种信息处理方法、装置及隧道端点网元 |
CN113992551B (zh) * | 2021-09-09 | 2023-07-14 | 新华三信息安全技术有限公司 | 一种信息上报方法及装置 |
CN114221888A (zh) * | 2021-12-16 | 2022-03-22 | 苏州盛科科技有限公司 | 提升twamp检测中报文统计准确性的方法、装置及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100356740C (zh) * | 2005-12-12 | 2007-12-19 | 史文勇 | 一种对时延、丢包进行综合测量及关联分析的系统和方法 |
US7924739B2 (en) * | 2008-12-22 | 2011-04-12 | At&T Intellectual Property I, L.P. | Method and apparatus for one-way passive loss measurements using sampled flow statistics |
CN101854268B (zh) * | 2009-04-04 | 2013-06-05 | 华为技术有限公司 | Ip网络性能测量、服务质量控制的方法、装置和系统 |
CN101605020A (zh) * | 2009-07-07 | 2009-12-16 | 中兴通讯股份有限公司 | 一种丢包率检测方法、系统及装置 |
US9379955B2 (en) * | 2011-01-28 | 2016-06-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for queuing data packets and node |
US8774043B2 (en) * | 2011-06-08 | 2014-07-08 | Citrix Systems, Inc. | Methods and apparatus for using a layered gear to analyze and manage real-time network quality of service transmission for mobile devices on public networks |
CN102904775B (zh) * | 2012-09-29 | 2015-04-29 | 华为技术有限公司 | 网络丢包测量方法、设备和系统 |
-
2014
- 2014-10-29 CN CN201410594475.8A patent/CN105634840B/zh active Active
-
2015
- 2015-03-19 WO PCT/CN2015/074646 patent/WO2015184890A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2015184890A1 (zh) | 2015-12-10 |
CN105634840A (zh) | 2016-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105634840B (zh) | 一种丢包的测量方法及装置 | |
US10848372B2 (en) | Scalability, fault tolerance and fault management for TWAMP with a large number of test sessions | |
Ferreira et al. | An experiment to assess bit error rate in CAN | |
KR101459252B1 (ko) | Traceroute_delay 진단 커맨드 | |
CN109194551B (zh) | 一种实时以太网设备性能测试方法、装置及系统 | |
EP2903213B1 (en) | Throughput test method and apparatus | |
Li et al. | {DETER}: Deterministic {TCP} replay for performance diagnosis | |
WO2020207479A1 (zh) | 一种网络拥塞控制方法和装置 | |
CN1992651B (zh) | 检测以太网多播性能的实现方法 | |
CN103595553A (zh) | 回应端实例的自动建立 | |
CN107579869B (zh) | 网络性能检测方法和网络设备 | |
Chen et al. | Comprehensive understanding of TCP Incast problem | |
US20150023179A1 (en) | Triangle loopback | |
EP3295612B1 (en) | Uplink performance management | |
WO2012167685A1 (zh) | 基于fpga的丢包率监测方法及装置 | |
US20150036510A1 (en) | Method and device for measuring ethernet performance | |
WO2016078312A1 (zh) | 单板测试方法及装置 | |
CN109347598A (zh) | 校验码处理方法、电子设备及存储接介质 | |
CN108683558A (zh) | 铁路安全通信协议一致性测试方法 | |
CN104486243A (zh) | 数据传输方法、设备及系统 | |
CN102857521A (zh) | 设置oam安全认证的方法及装置 | |
WO2020135429A1 (zh) | 流量的分析、检测方法及装置 | |
US20130336129A1 (en) | Multipurpose Use of Delay Measurement Message Buffer for Software Processing of Delay Measurement Response | |
CN107864026B (zh) | 聚合链路帧丢失测量装置及方法 | |
CN105611406B (zh) | 一种接入网服务商监测用户到视频服务器延迟特性方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |