CN109997335A - 分组交换通信网络中的性能测量 - Google Patents
分组交换通信网络中的性能测量 Download PDFInfo
- Publication number
- CN109997335A CN109997335A CN201680091173.6A CN201680091173A CN109997335A CN 109997335 A CN109997335 A CN 109997335A CN 201680091173 A CN201680091173 A CN 201680091173A CN 109997335 A CN109997335 A CN 109997335A
- Authority
- CN
- China
- Prior art keywords
- measurement
- sample
- length
- grouping
- timestamp
- 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.)
- Granted
Links
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
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- 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
- H04L43/02—Capturing of monitoring data
- H04L43/022—Capturing of monitoring data by sampling
- H04L43/024—Capturing of monitoring data by sampling by adaptive sampling
-
- 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
- H04L43/02—Capturing of monitoring data
- H04L43/028—Capturing of monitoring data by filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/026—Services making use of location information using location based information parameters using orientation information, e.g. compass
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
公开了一种用于对沿着通过分组交换通信网络的路径传输的分组流执行性能测量的方法。在路径上实现两个或更多个测量点。每个测量点通过将散列函数应用于分组的比特的掩码来计算每个接收到的分组的采样签名。然后,它在接收到的分组当中选择一定数量的测量样本,测量样本被选择为其采样签名包括等于预定采样值HS*的长度S的部分的那些分组。在执行选择时,测量点对所选择的测量样本的数量进行计数并基于这个数量追溯性地调整长度S。然后,测量点提供与所选择的测量样本相关的测量参数。
Description
技术领域
本发明涉及通信网络领域。特别地,本发明涉及用于在分组交换通信网络中执行性能测量的方法。另外,本发明涉及用于通信网络的被配置为实现这种方法的节点和计算机,并且涉及包括这种节点和计算机的计算机网络。
背景技术
在分组交换通信网络中,数据是以分组的形式发送的,这些分组经由可能的中间节点从源节点路由到目的地节点。示例性的分组交换网络是IP(互联网协议)网络、以太网网络和MPLS(多协议标签交换)网络。
分组不是总到达目的地节点,即,它们可能在经由网络传输期间丢失。分组的丢失是由于不同的原因。例如,节点或链路可能发生故障,或者分组可能由于节点的端口拥塞而被节点丢弃。而且,分组还可能由于它们包含比特错误而被节点丢弃。在任何情况下,当通过经由分组交换网络传输数据来提供服务时,在传输期间丢失的分组的比率影响该服务的服务质量(QoS)。
典型地,分组在发送时间被源节点发送并且在接收时间被目的地节点接收。发送时间和接收时间所经过的时间通常被称为“单向延迟”。分组的单向延迟主要取决于分组从源到目的地所跨越的可能的中间节点的数目、分组在每个节点的持久时间以及沿链路的传播时间。由于分组是由每个节点一跳一跳地路由的,因此分组所跨越的可能的中间节点的数量以及分组在每个节点的持久时间是不可预测的。因而,分组的单向延迟几乎是不可预测的。
此外,同一分组流的分组可能具有不同的单向延迟。同一数据流的两个分组的单向延迟之差被称为“到达间隔抖动”(或简称为“抖动”)。
当通过分组交换网络提供通信服务(特别是实时语音或数据服务,诸如呼叫、会议呼叫、视频会议等)时,影响承载该服务的分组流的分组丢失、单向延迟和抖动的测量提供了该服务的最终用户感知到的服务质量(QoS)的指示。此外,分组丢失和高延迟/抖动可能需要重传,于是降低通信网络的效率。因此,测量通信网络中分组流的分组丢失、单向延迟/抖动对网络运营商来说是特别感兴趣的。
WO 2015/042171描述了一种网络监视和分析系统,其为穿过网络的每个分组生成稀疏散列函数值,并将其用作分组的唯一标识符或指纹。当每个分组穿过网络时,分组在每个节点处都可以通过为该分组生成的散列值标识来识别。特别地,系统包括若干个观察点,对于通过其中的每个单个分组,计算并记录稀疏散列函数值并生成分析数据。然后使针对同一分组在不同测量点生成的分析数据相关联,用于追踪每个分组通过网络的轨迹并用于测量其延迟。
发明内容
申请人已经注意到WO 2015/042171描述的系统表现出一些缺点。
特别地,申请人已经注意到,识别穿过网络的每个单个分组、为每个识别出的分组生成分析数据并且搜集每个单个分组的由每个观察点生成的所有分析数据都需要大量数据的生成、传输和处理。因此,在网络中需要显著的计算量和带宽消耗。
另一方面,虽然散列函数应当产生每个单个分组的唯一标识,但在实际中可能会出现歧义。事实上,可能发生分组之间的冲突,即,不同的分组可能具有相同的散列函数值(当用于计算散列函数值的比特在不同的分组中具有相同的值时,或者当这种比特在不同分组中具有不同的值但散列函数提供相同的结果时),这意味着它们在观察点处是不可区分的。如果在两个不可区分的分组之间发生接收顺序错误,那么观察点不能检测到错误,并且将为涉及接收顺序错误的分组提供错误的分析数据。
申请人已经注意到,在原理上,通过对分组中的比特的预定掩码应用散列函数从而在每个测量点处计算每个接收到的分组的采样签名以及通过如果其采样签名等于预定值H*(由于散列函数的冲突,这是对于若干样本统计发生的)就选择该分组作为测量样本,可以实现避免大量数据的生成、传输和处理以及增加对抗接收顺序错误的健壮性。这样,在分组流的路径上实现的每个测量点处,采样签名的值H*将允许在接收到的分组当中选择一定数量的测量样本,这在每个测量点处将是相同的。
有利地,采样率(即,被选择作为测量样本的分组的百分比)在统计上将取决于采样签名的长度。越短的采样签名将导致统计上越高的采样率,而越长的采样签名将导致统计上越低的采样率。
但是,申请人已经注意到,测量样本的数量将取决于采样率和流量轻重程度(即,接收到的分组的数量)这两者,流量轻重程度在许多情况下是不可预测的。因此,虽然适当地定制采样签名的长度将允许在统计上控制采样率,但是测量样本的数量会是主要失控的。这会导致危急情况。例如,在流量重(接收到的分组数量大)的情况下,一定长度的采样签名可能提供过多数量的测量样本,这可能是可用存储和计算资源无法管理的。另外,在流量轻(接收到的分组数量少)的情况下,相同的采样签名长度可能提供的测量样本数量不足(或者甚至根本没有测量样本),这会使测量会话无效。
鉴于以上所述,申请人解决了提供用于对分组交换通信网络中的两个测量点(节点或计算机)之间发送的分组流执行性能测量的方法的问题,该方法克服了上述缺点,即,不需要大量数据的生成、传输和处理,这对接收顺序错误是健壮的并且允许控制测量样本的数量。
在以下说明书和权利要求书中,表述“对分组流执行性能测量”将指定测量以下的操作:
-通过两个测量点之间的传输在所述分组流的分组上引起的单向延迟、双向延迟或抖动;和/或
-通过两个测量点之间的传输在所述分组流的分组上引起的分组丢失。
根据本发明的实施例,通过将每个测量点配置为针对每个接收到的分组计算和存储Smax比特的采样签名(例如,Smax=32)来解决上述缺点。然后,测量点将测量样本识别为其采样签名包括等于某个采样值HS*的S比特(例如,S个最高有效比特)的部分的接收分组。根据本发明,当测量点正在对接收到的分组执行测量样本选择时,它对所选择的测量样本的数量进行计数,并基于这个数量追溯性地(retroactively)调整用于测量样本选择目的的采样签名部分的长度S。
因此,有利地,通过经由动态地且追溯性地调整长度S、以动态的方式调整采样率,测量点可以自动且自主地控制测量样本的数量。例如,这允许测量样本调整采样率,使得独立于流量状况,测量样本的数量不超过负责处理由网络中实现的各种测量点提供的测量参数的管理服务器的存储和计算能力。
例如,在每个测量周期的开始,测量点可以将长度S设置为等于最小值S0,从而开始以取决于S0的最大采样率来选择测量样本。例如,如果S0等于0,那么在测量周期的开始时,选择所有接收到的分组作为测量样本(采样率为100%)。在流量轻的状况下,这种最大采样率无论如何都可以在测量周期内提供不超过最大阈值Nmax的若干个测量样本。但是,如果流量较重且超过Nmax,那么测量点可以通过使用其采样签名的S=S0+1比特用于测量样本选择目的而将已接收的分组和将从那个时刻起接收的分组的采样率都减半。如果在测量周期期间再次超过Nmax,那么采样率可以进一步减半。依此类推,直到测量周期到期或者达到最大长度Smax(与测量点可应用的最小采样率对应)。
这样,通过基于管理服务器处可用的存储和计算资源选择最大阈值Nmax,保证每个测量周期的测量样本的数量总是可被管理服务器管理。
根据第一方面,本发明提供了一种用于对沿着通过分组交换通信网络的路径传输的分组流执行性能测量的方法,该方法包括在路径上实现的至少两个测量点中的每一个测量点处:
a)通过将散列函数应用于分组的比特的掩码来计算分组流的每个分组的采样签名;
b)在接收到的分组当中选择一定数量的测量样本,这些测量样本被选为其采样签名包括等于预定采样值的长度S的部分的那些接收到的分组,对所选择的测量样本的数量进行计数并基于所选择的测量样本的计数数量追溯性地调整长度S;以及
c)提供与测量样本相关的测量参数,
该方法还包括使用与测量样本相关的测量参数来执行分组流的性能测量。
根据优选实施例:
-步骤a)包括为自测量周期的开始起接收到的每个分组计算采样签名,
-步骤b)包括在自测量周期的开始起接收到的分组当中选择测量样本,并且对自测量周期的开始起选择的测量样本的数量进行计数;以及
-步骤c)包括提供与在测量周期期间选择的测量样本相关的测量参数。
优选地,根据这些实施例,在步骤b)处,追溯性地调整包括:
b1)在测量周期的开始时,将长度S设置为等于最小长度S0;以及
b2)每当在测量周期到期之前所选择的测量样本的数量超过最大阈值Nmax时,增加长度S,最大阈值Nmax指示测量周期的最大测量样本数。
优选地,步骤b2)包括,每当长度S从等于或高于最小长度S0的第一长度增加到第二长度时:
b2')考虑通过使用等于第一长度的长度S自测量周期的开始起选择的测量样本;
b2”)通过使用等于第二长度的长度S对那些测量样本执行进一步选择;以及
b2”')继续使用等于第二长度的长度S用于在测量周期期间从那个时刻起接收的分组当中选择进一步的测量样本。
根据优选的变型:
-在步骤b2')处考虑并通过使用等于第一长度的长度S选择的测量样本是其采样签名包括具有等于预定的第一采样值的第一长度的部分的那些接收到的分组;以及
-在步骤b2”)处进一步选择的测量样本和在步骤b2”')处选择的进一步的测量样本是其采样签名包括具有等于预定的第二采样值的第二长度的部分的那些接收到的分组,
其中预定的第二采样值的部分等于预定的第一采样值。
优选地,步骤c)包括为每个选择的测量样本提供时间戳,该时间戳指示在至少两个测量点中的每一个测量点处接收到测量样本的时间。
根据优选实施例,步骤c)包括在测量周期的结束时提供时间戳的有序列表,该时间戳的有序列表指示在同一测量周期期间在步骤b)处选择的测量样本已经在至少两个测量点中的每一个测量点处被接收的时间。
根据一些实施例,执行性能测量包括:
-基于由至少两个测量点中的每一个测量点提供的时间戳的有序列表中包括的多个时间戳,计算在测量周期期间影响分组流的分组丢失;
-如果分组丢失等于0,则基于由至少两个测量点中的每一个测量点提供的时间戳的有序列表执行时间测量,执行时间测量包括:
-基于时间戳的有序列表中包括的时间戳的平均值,执行测量周期的平均时间测量;
-从时间戳的有序列表中移除其相互时间距离低于预定的最小阈值TDmin的连续测量样本的时间戳,相互时间距离被计算为它们的时间戳之间的差值;以及
-对其时间戳尚未从时间戳的有序列表中排除的每个测量样本执行单独的时间测量;以及
-如果分组丢失不为0,则避免对于那个测量周期的任何时间测量。
根据其它实施例,步骤c)还包括在测量周期的结束时为在测量周期期间选择的测量样本提供在步骤a)处计算的采样签名的有序列表。
根据这些实施例的有利变型,提供采样签名的有序列表包括在S比特的全局变量中提供预定的采样值HS*以及提供未使用散列的有序列表,测量样本的未使用散列包括如在步骤a)处计算的并且不用于在步骤b)处选择测量样本的其采样签名的Smax-S比特,Smax是采样签名的长度。
根据这些实施例,优选地,执行性能测量包括:
-检查至少两个测量点是否已经应用相同的长度S用于选择在测量周期的结束时提供的测量样本;
-如果至少两个测量点中的一个测量点已经被应用比由至少两个测量点中的另一个测量点应用的长度S短的长度S,则从这一个测量点时间戳提供的时间戳的有序列表中排除由这一个测量点而不由另一个测量点选择的测量样本的时间戳,要排除的时间戳是基于由这一个测量点提供的采样签名选择的;
-基于时间戳的有序列表中包括的多个时间戳计算在测量周期期间影响分组流的分组丢失;
-如果分组丢失不为0,则从时间戳的有序列表中排除丢失的测量样本的时间戳,丢失的测量样本是基于由至少两个测量点中的每一个测量点提供的采样签名识别的;
-基于时间戳的有序列表执行时间测量,执行时间测量包括:
-基于有序列表中包括的时间戳的平均值,对测量周期执行平均时间测量;以及
-对每个测量样本执行单独的时间测量,每个测量样本是基于由至少两个测量点中的每一个测量点提供的采样签名单独地识别。
有利地,分组流可以是多点分组流。
根据第二方面,本发明提供了一种用于分组交换通信网络的节点,该节点被配置为接收沿着通过分组交换通信网络的路径发送的分组流,该节点被配置为:
a)通过将散列函数应用于分组的比特的掩码,计算分组流的每个接收到的分组的采样签名;
b)在接收到的分组当中选择一定数量的测量样本,测量样本被选择为其采样签名包括等于预定采样值HS*的长度S的部分的那些接收到的分组,对所选择的测量样本的数量进行计数并基于所选择的测量样本的计数数量追溯性地调整长度S;以及
c)提供与测量样本相关的测量参数。
根据第三方面,本发明提供了一种通信网络,至少包括如上所述的第一节点和第二节点。
根据第四方面,本发明提供了一种计算机程序产品,该计算机程序产品可加载在至少一个计算机的存储器中,并且包括用于当产品在至少一个计算机上运行时执行上述方法的步骤的软件代码部分。
附图说明
参考附图阅读下面以示例而非限制的方式给出的详细描述,本发明将变得更清楚,其中:
图1示意性地示出了示例性分组交换网络;
图2示意性地示出了示例性分组报头的结构;
图3是根据本发明实施例的测量点的操作的流程图;
图4示出了由根据本发明的实施例操作的测量点执行的示例性测量样本选择;
图5是根据本发明的实施例的管理服务器的操作的流程图;
图6是根据本发明的另一个实施例的管理服务器的操作的流程图;
图7示意性地示出了支持多点分组流的传输的示例性子网;以及
图8是根据本发明的又一个实施例的管理服务器的操作的流程图。
具体实施方式
图1示意性地示出了其中实现根据本发明的实施例的用于执行性能测量的方法的示例性分组交换通信网络CN。通信网络CN可以是IP网络、以太网网络、MPLS网络或任何其它已知类型的分组交换通信网络。
通信网络CN包括根据任何已知拓扑通过链路相互互连的多个节点。特别地,通信网络CN包括第一节点N1和第二节点N2。
优选地,通信网络CN还设有管理服务器MS。管理服务器MS可以是连接到通信网络CN的任何节点的独立服务器。或者,管理服务器MS可以在通信网络CN的任何节点处实现。
分组流PF优选地可能通过通信网络CN的中间节点(图1中未示出)从第一节点N1传输到第二节点N2。第一节点N1可以是分组流PF的源节点或者是从源节点到目的地节点的路径的中间节点。类似地,第二节点N2可以是分组流PF的目的地节点或者是从源节点到同一相同的源节点生成并寻址同一目的地节点的分组。可替代地,分组流PF可以是包括由不同源节点生成和/或寻址到不同目的地节点的分组的“宏流(macro-flow)”,其仅在第一节点N1和第二节点N2之间共享一段它们的路径。
优选地,分组流PF的每个分组Pki包括报头和有效载荷。有效载荷包括用户数据。优选地,报头包括用于路由分组Pki的信息。报头格式取决于分组Pki被格式化的协议。
以非限制性示例的方式,图2示出了根据IPv4(互联网协议版本4)上已知的TCP(传输控制协议)格式化的分组Pki的报头Hi。报头Hi包括40个字节,被划分成用于IP报头的20个字节和用于TCP报头的20个字节。TCP报头特别地包括以下字段:源端口、目的地端口、序列号、确认编号、数据偏移、RSV(保留)、标记、窗口尺寸、校验和和紧急点。
优选地,至少一个测量点位于分组流PF的路径上。在图1中,以非限制性示例的方式,示出了两个测量点:在第一节点N1处实现的第一测量点MP1和在第二节点N2处实现的第二测量点MP2。特别地,第一测量点MP1优选地在第一节点N1的输出端口处实现,分组流PF通过该输出端口被传输到第二节点N2,而第二测量点MP2优选地在第二节点N2的输入端口处实现,分组流PF通过该输入端口从第一节点N1被接收。
每个测量点MP1、MP2可以嵌入在相应的节点N1、N2内,或者被实现为连接到相应节点N1、N2的独立机器。
根据本发明的实施例,第一测量点MP1和第二测量点MP2都对分组流PF进行采样,即,通过为每个接收到的分组计算Smax比特的采样签名并且通过选择其采样签名包括等于某个值HS*的S比特(例如,S个最高有效比特)的部分的那些分组作为测量样本,它们在分组流PF的接收到的分组中选择一定数量的测量样本,其中S包括在最小值S0和Smax之间。根据本发明,第一测量点MP1和第二测量点MP2两者还优选地被配置为对所选择的测量样本的数量进行计数,并且基于这个数量追溯性地在S0和Smax之间调整用于测量样本选择目的的采样签名部分的长度S。
更特别地,根据本发明的实施例,每个测量点MP1、MP2优选地通过将预定的散列函数应用于分组中(例如在分组报头中)的预定的比特的掩码来对分组流PF的每个分组Pki计算Smax比特的相应采样签名。
优选地,向其应用散列函数的比特的掩码取决于分组格式,即,取决于分组Pki被格式化所依据的协议。一般而言,根据以下准则中的一个或多个选择要经受散列函数的比特的掩码:
(i)它们的值应该是经过分组流PF的路径或者至少经过由设有测量点的节点界定的路径长度而不变的。这样,将散列函数应用于某个分组Pki的比特的掩码的每个测量点将针对那个分组获得相同的采样签名值。因此,优选地避免其值在每个节点处改变的报头字段的比特,诸如例如IP报头的TTL(生存时间)字段和校验和。如果使用NAT(网络地址转换)技术,那么应该避免IP地址的比特;
(ii)它们的值应该在分组流PF内尽可能是熵的,这意味着分组流PF的不同分组Pki的所选掩码的比特具有相同值的概率尽可能低。因此,优选地避免其值总是或经常相同的报头字段的比特,诸如例如其值经常为80的TCP端口字段。出于同样的原因,如果测量点位于携带分组流PF的隧道的中间节点,由于分组流PF的分组Pki具有全部相同的隧道报头,因此应避免隧道报头;以及
(iii)它们应该在分组Pki内可易于访问的。特别地,所选的掩码的比特优选地总是在分组报头内的相同位置上,使得它们可以容易地被测量点检索,而无需解析分组或者执行对分组的其它复杂处理。
例如,如果根据上面提到的IPv4上的TCP协议对分组Pki进行格式化,那么将向其应用散列函数的比特的掩码优选地包括在TCP报头中,排除TCP源端口字段和TCP目的地端口字段,即,从报头Hi的25°字节到40°字节。特别地,TCP报头的校验和字段表现出特别高的熵(即,分组流PF的不同分组Pki具有相同值的校验和字段的概率特别低),并且因而特别适于采样签名的计算。
如果改为根据已知的IPv6上的TCP协议对分组Pki进行格式化,那么上面关于TCP报头的考虑仍然适用。于是,字节45°到60°对于计算采样签名是特别优选的(应该考虑20字节的偏移,因为用于IPv6的IP报头比用于IPv4的IP报头长20个字节)。
如果根据任何层2协议(例如,以太网)或MPLS(多协议标签交换)对分组进行格式化,那么假如考虑适当的偏移,上述考虑仍然适用,因为几乎所有的流量都是IP。
关于向分组Pki中的所选比特的掩码应用的散列函数,可以使用任何已知的散列函数,诸如例如:
·身份函数,其提供掩码的比特的值作为输出。如果掩码的比特表现出高熵,那么这个散列函数是优选的,例如,如果它们的值已经(例如,由源节点)通过应用散列函数(例如,TCP校验和字段,其是从TCP分组和IP报头的一部分计算出的,从而导致高熵值)计算的;
·二进制XOR;
·一的补码和,其通常在例如用于IP校验和的计算节点处使用,并且易于用通用HW实现;
·CRC(循环冗余校验),其通常用于以太网中的错误检测,并且易于在专用HW上实现;
·MD5(消息摘要5),其通常用于低等安全加解密并且可以在通用HW上实现;
·SHA-1(安全散列算法1),其通常用于中等安全加解密并且可以在通用HW上实现。
唯一的要求是散列函数足够简单,以允许它对分组流PF的每个分组Pki进行计算。
参考图3的流程图,将详细描述根据本发明的第一实施例的在每个测量周期期间的测量点MP1、MP2的操作。
当测量周期开始时,每个测量点MP1、MP2优选地把要用于选择测量样本的采样签名部分的长度S设置为等于最小值S0(步骤300)。S0优选地低于Smax。另外,S0优选地等于或高于0。
然后,测量点MP1、MP2开始分别接收由节点N1发送或者由节点N2接收的分组流PF(或其副本)(步骤301)。当测量点MP1、MP2接收每个分组Pki时,它优选地生成其时间戳,该时间戳指示分组被接收的时间(步骤302),并如上所述计算并存储其Smax比特的采样签名(步骤303)。
然后,测量点MP1、MP2优选地在接收到的分组当中选择一定数量的测量样本(步骤304)。特别地,在步骤304处,如果在步骤303处计算的采样签名包括等于预定值HS*的S比特(在测量周期的开始处S=S0)的部分(HS*=HS0*,在测量周期的开始处),那么测量点MP1、MP2选择接收到的分组作为测量样本。例如,出于测量样本选择目的由测量点MP1、MP2考虑的S=S0比特的部分可以是采样签名的S=S0个最高有效比特。
这样,每个测量点MP1、MP2基本上在当前测量周期期间接收的分组流PF的分组中识别出一定数量的测量样本,这些测量样本的采样签名包括等于HS*=HS0*的S=S0比特的部分。
根据有利的变型,在步骤304处,测量点MP1、MP2优选地将值HS*=HS0*本地存储在S=S0比特的全局变量中。
如果在步骤304处测量点MP1、MP2确定接收到的分组不是测量样本,那么它优选地取消其时间戳和采样签名。
相反,如果测量点MP1、MP2在步骤304处确定接收到的分组是测量样本,那么优选地继续存储其时间戳及其采样签名。根据有利的变型,测量点MP1、MP2优选地不存储整个采样签名,而是仅存储其采样签名的不用于选择测量样本的Smax-S=Smax-S0比特(在下文中也称为“未使用散列”)。
由于将由测量点MP1、MP2在分组Pki中应用散列函数的掩码的比特的值是先验未知的,因此不可能预先知道哪些分组Pki将具有等于HS*=HS0*的采样签名部分,因此不可能先验地知道哪些分组将被测量点MP1、MP2选择为测量样本。这意味着测量样本基本上是以随机方式选择的。
但是,假如测量点MP1、MP2选择相同的分组Pki作为测量样本,这种随机性不会损害测量方法,这是通过在所有测量点处使用相同的比特掩码、相同的散列函数、相同的长度值S=S0和相同的采样值HS*=HS0*来保证的(除了涉及N1和N2之间的测量样本的可能的分组丢失或接收顺序错误之外,如下文将描述的)。
而且,应该注意的是,虽然具有上述随机性,但是可以通过适当地定制用于选择测量样本的采样签名部分的长度S=S0来统计地控制平均采样率。如从散列函数理论可知的,采样率(即,找到其采样签名包括等于值HS*的S比特的部分的分组的概率)是2-S,意味着在平均每2S个接收到的分组中找到那个值HS*。例如,S=1提供2-1的采样率=50%,S=2提供2-2的采样率=25%,等等。
再次参考图3的流程图,当测量点MP1、MP2在步骤304处执行测量样本选择时,它优选地计数自当前测量周期的开始起选择的测量样本的数量。
虽然测量样本的数量nsample不超过最大阈值Nmax(步骤305),最大阈值Nmax指示每个测量周期的测量样本的最大数量,但是测量点MP1、MP2优选地继续基于其采样签名的S=S0比特的部分的值在接收到的分组中选择测量样本(步骤301-304)。可以根据管理服务器MS处可用的存储和计算资源来选择Nmax的值。
如果测量周期在测量样本的数量nsample到达最大阈值Nmax之前到期(步骤306),那么测量点MP1、MP2优选地向管理服务器MS发送与在那个测量周期期间选择的测量样本相关的测量参数(步骤307),管理服务器MS将使用该测量参数用于执行与那个测量周期相关的性能测量。此后,将详细描述步骤307和管理服务器MS对性能参数的后续处理。
如果在步骤305处测量点MP1、MP2确定在测量周期到期之前测量样本的数量nsample已经超过最大阈值Nmax,那么测量点MP1、MP2优选地增加当前测量周期期间要用于选择测量样本的采样签名部分的长度S。
特别地,只要当前用于选择测量样本的采样签名部分的长度S低于Smax(步骤308),测量点MP1、MP2就优选地将长度S=S0增加1(步骤310),并且针对出于选择目的使用的采样签名部分,使用增加的长度S=S0+1对自当前测量周期的开始起已经选择的测量样本重复测量样本选择(步骤311)。
特别地,在步骤311处,测量点MP1、MP2考虑自测量周期的开始起所选择的测量样本的被存储的采样签名,并且仅把其采样签名包括等于新的预定值HS0+1*的S=S0+1比特的部分的那些测量样本维持为测量样本。优选地,当旧值HS0*具有S0比特,新值HS0+1*具有S0+1比特时,前S0比特优选地等于HS0*(例如,如果S0=3,那么HS0*可以等于“110”并且HS0+1*可以等于“1101”)。
如上所述,根据有利的变型,在步骤304处,测量点MP1、MP2优选地在S=S0比特的全局变量中本地存储值HS*=HS0*,并且对于每个选择的测量样本存储其时间戳及其未使用的Smax-S=Smax-S0比特的散列。根据这种有利的变型,在步骤310处,测量点MP1、MP2优选地将全局变量扩展一比特,以存储用于重复测量样本的选择的新值HS0+1*。然后,由于新值HS0+1*的前S0比特等于HS0*,因此测量点MP1、MP2优选地通过对于自测量周期的开始起所选择的每个测量样本检查未使用散列的第一比特是否等于新值HS0+1*的最后一比特来执行步骤311的重新选择。在否定的情况下,丢弃该测量样本(即,其存储的时间戳和未使用散列)。在肯定的情况下,维持测量样本。因此,测量点MP1、MP2维持其时间戳和新的未使用散列这两者,其中新的未使用散列现在是Smax-S=Smax-S0-1比特(对于所有维护的测量样本,Smax-S0比特的旧的未使用散列的第一比特现在等于HS0+1*的最后一比特,并被存储在全局变量中)。
然后,测量点MP1、MP2继续使用采样签名部分的增加长度S=S0+1用于在从那个时刻开始在当前测量周期期间接收的分组中选择样本测量(步骤301-304)。
如果在同一测量周期期间再次超过最大阈值Nmax(步骤305),那么可以重复步骤308-311,即,用于在当前测量周期期间选择样本测量的采样签名部分的长度S=S0+1可以进一步增加到S=S0+2。可以重复长度S的增加,直到(步骤308)长度S达到Smax,这与测量点MP1、MP2可应用的最小采样率对应。
如果在S=Smax时再次达到最大阈值Nmax,那么测量点MP1、MP2优选地暂停对选择进一步的测量样本,直到测量周期结束,并将与所选择的测量样本相关的测量参数发送到管理服务器MS(步骤307)。
优选地,选择采样签名的长度Smax和测量周期的持续时间,使得即使在最差的流量状况下,S也可能在测量周期到期之前不会到达Smax,从而留下未使用散列用于每个测量周期结束时所选择的测量样本。
例如,假设分组流PF具有1Gb/s的最大吞吐量,测量周期是1秒,平均分组长度是125字节(1000比特)并且期望每个测量周期大约100个样本。在这种场景中,每个测量周期的最大接收分组数是106,因此,为了每周期提供100个样本,应该每106/100=10000个分组选择一个样本。这可以通过使用等于13的值来粗略地实现(向下舍入),因为213=8192。这将在每个测量周期提供106/8192=122个样本。通过将Smax设置为例如等于32,可以保证S在测量周期到期之前永远不会达到Smax,最小的未使用散列为32-13=19比特。
如果测量周期增加到300秒(5分钟),那么通过将S增加到21,每个测量周期的样本数量可以大致维持在100的数量级,因为221=2097并且300×106/2097=143。同样,当Smax等于32时,即使最小的未使用散列减小为32-21=11比特,也保证S在测量周期到期之前不会达到Smax。
如果在保持测量周期等于5分钟的同时将分组流PF的最大吞吐量增加到1Tb/s,那么通过将S增加到30,每个测量周期的样本数可以大致维持在100的数量级,因为300×109/230=279。再次,当Smax等于32时,即使最小的未使用散列进一步减小为32-30=2比特,也保证S在测量周期到期之前不会到达Smax。
因此,给定一定的最大吞吐量和一定的Nmax,可以选择测量周期的持续时间和Smax,以保证在测量周期到期之前S不可能达到Smax。这保证了测量样本在测量周期内在统计上均匀分布。而且,未使用散列(即,不用于选择测量样本的目的的采样签名的比特)可以用于唯一地识别测量样本的目的,如下文将详细描述的。
现在将参考图4描述示例。
图4示出了在某个测量周期的三个不同时刻由测量点(例如MP1)针对分组流PF的接收到的分组而存储的信息。
图4(a)示出了测量点已经接收到七个分组,它们的时间戳TS1,TS2,......TS7和由测量点计算的Smax比特的采样签名SS1,SS2,......SS7被本地存储。
如上所述,在测量周期的开始处,测量点开始在接收到的分组当中选择其采样签名包括等于预定值HS0*的S=S0比特的部分的那些分组作为测量样本。图4(a)示出了这种情况,其中假设S0等于1。因此,测量点开始选择其采样签名包括等于预定值H1*的某比特(例如,最高有效比特)(其可以是例如“1”)的那些接收到的分组作为测量样本。以这种方式,采样率为50%,这意味着统计上将选择两个分组中的一个作为测量样本。例如,所选择的测量样本可以是图4(a)中箭头所指示的那些,即,(TS1,SS1)、(TS3,SS3)、(TS5,SS5)和(TS7,SS7)。
举例来说,假设最大阈值Nmax=3(意味着在每个测量周期中可以提供不超过3个测量样本),在选择第四测量样本(TS7,SS7)后,测量点意识到已经超过了最大阈值Nmax。
因而,测量点取消图4(a)中所示的测量样本选择,将S=S0=1增加到S=S0+1=2,并重复对前七个接收到的分组的测量样本选择。因此,如图4(b)中所示,测量点现在将测量点选为其采样签名包括等于预定值H2*的2比特的部分(例如,2个最高有效比特)的那些接收到的分组,H2*可能是例如“11”。这样,采样率为25%,这意味着在统计上从四个分组中选择一个作为测量样本。例如,所选择的测量样本可以是图4(b)中箭头所指示的那些,即,(TS1,SS1)和(TS5,SS5)。然后,测量点继续在从那个时刻开始接收的分组当中选择进一步的测量样本。例如,进一步选择的测量样本可以是图4(b)中箭头所指示的那些,即,(TS9,SS9)和(TS13,SS13)。
在选择第四测量样本(TS13,SS13)后,测量点意识到再次超过最大阈值Nmax。
因而,测量点取消图4(b)中所示的测量样本选择,将S=S0+1=2增加到S=S0+2=3并且重复对前十三个接收分组的测量样本选择。因此,如图4(c)中所示,测量点现在将测量点选为其采样签名包括等于预定值H3*的3比特的部分(例如,3个最高有效比特)的那些接收到的分组,H3*可能是例如“110”。这样,采样率为12.5%,这意味着统计上从八个分组中选择一个作为测量样本。例如,所选择的测量样本可以是图4(c)中箭头所指示的那些,即,(TS1,SS1)和(TS9,SS9)。然后,测量点继续识别从那个时刻开始接收的分组中的其它测量样本。例如,进一步选择的测量样本可以是图4(b)中箭头所指示的那些,即,(TS16,SS16)和(TS23,SS23)。
如果所选择的测量样本的数量在测量周期到期之前再次超过最大阈值Nmax,那么测量点可以通过进一步增加用于选择测量样本的采样签名部分的长度S来进一步降低采样率。长度S可以增加到至多与测量点可应用的最小采样率对应的Smax。
因此,有利地,测量点MP1、MP2可以通过动态调整长度S以动态的方式调整采样率来自动且自主地控制测量样本的数量。
特别地,如上面参考图3和4所描述的,测量点可以以最大采样率开始,然后在测量周期期间每次超过每个周期的最大测量样本数量Nmax时逐步减小测量点。这样,测量点可以逐步调整采样率,使得独立于流量状况,测量样本的数量不超过负责处理由各个测量点提供的测量参数的管理服务器MS的存储和计算能力。
还可以认识到的是,有利地,即使在测量时段期间由测量点动态调整采样率,通过对于自测量周期的开始起接收的分组在长度S的每次调整时重复测量样本的选择,由测量点选择的测量样本在测量周期内在统计上均匀分布。
还应该注意的是,由测量点用于选择测量样本的采样签名部分的长度S(以及因此其固有的采样率)不仅影响管理服务器MS处所需的存储和计算努力,而且还影响涉及测量样本的接收顺序错误的风险。一般而言,较高长度S(即,较低采样率)降低了涉及测量样本的接收顺序错误的风险,因为测量样本在统计上在时间上更加间隔开。但是,另一方面,较高的S值使得性能测量结果不太准确,因为它们更粗糙地反映整个分组流PF的实际行为。
因此,随着在测量时段期间长度S增加,性能测量方法对抗接收顺序错误的健壮性增加,而性能测量结果变得不太代表分组流PF的实际行为。
如上所述,在测量周期结束时(图3的流程图中的步骤306),每个测量点MP1、MP2优选地向管理服务器MS发送与所选择的测量样本相关的测量参数(图3的流程图中的步骤307),然后管理服务器MS使用这些测量参数来执行与那个测量周期相关的至少一个性能测量。
特别地,根据实施例,在步骤307处,每个测量点MP1、MP2优选地向管理服务器MS发送时间戳的有序列表,每个时间戳指示测量点MP1、MP2已经接收到测量样本的时间。
因此,参考例如图1的场景,管理服务器MS优选地从MP1接收时间戳的有序列表TSi1(i是从1到n1的索引,n1是由MP1选择的测量样本的数量)并且从MP2接收时间戳的有序列表TSj2(j是从1到n2的索引,n2是由MP2选择的测量样本的数量)。
参考图5的流程图,在从MP1和MP2接收到这样的测量参数后(步骤500),管理服务器MS首先计算在那个测量周期期间影响测量样本的分组丢失PL(步骤501)。为此,管理服务器MS优选地计数从MP1接收的时间戳的数量n1、从MP2接收的时间戳的数量n2,并且将测量样本的分组丢失PL计算为PL=n1-n2。
然后,如果分组丢失PL等于0(意味着n1=n2,即,没有丢失由MP1选择的测量样本)(步骤502),那么管理服务器MS基于接收到的时间戳对测量样本执行时间测量。
特别地,管理服务器MS优选地对测量样本执行平均时间测量(步骤503)。例如,在步骤503处,管理服务器MS可以通过应用以下等式计算从N1到N2的平均单向延迟AOWD:
也可以执行平均单向抖动测量。
可以认识到的是,平均时间测量无论测量样本是否经历接收顺序错误都是有效的。
然后,管理服务器MS优选地从后续的时间测量中排除“太接近的”测量样本,即,可能已经涉及接收顺序错误的测量样本(步骤504)。
为此,管理服务器MS优选地计算在第一测量点MP1处选择的每对连续测量样本的相互时间距离TDi1=TS(i+1)1-TSi1(i=1,2,...n1-1)。然后,管理服务器MS优选地将所有计算的时间距离TDi1与预定的最小阈值TDmin进行比较。例如,可以将最小阈值TDmin设置为等于在步骤503处计算的平均单向延迟AOWD。可替代地,例如,如果认识到测量样本的单向延迟相对于平均值AOWD表现出高方差,可以为TDmin选择高于AOWD的值。后一种评估可以例如在初步测量会话期间完成,其中测量样本如上所述被选择、被划分成子组,并且与每个子组相关的平均单向延迟被计算。在这种情况下,可以把要在测量会话期间使用的TDmin的值设置为等于针对各个子组计算的平均单向延迟当中的最大值。
如果两个连续测量样本之间的时间距离低于最小阈值TDmin,那么管理服务器MS优选地从自MP1和MP2这两者接收的时间戳的有序列表中移除与那些连续测量样本相关的时间戳。例如,如果如上所述计算的TDi1低于TDmin,那么从自MP1接收的列表和自MP2接收的列表这两者中移除第三和第四时间戳。
然后,管理服务器MS优选地对在步骤504处未排除的每个测量样本执行单独的时间测量(步骤505)。例如,在步骤505处,管理服务器MS可以通过应用以下等式计算每个未排除的测量样本的从N1到N2的单向延迟OWDi:
OWDi=TSj2-TSi1, [2]
i=j,范围从1到n1=n2,除了与在步骤504处被排除的测量样本对应的值之外。
还可以执行单向抖动测量。
可以认识到的是,一旦排除了“太接近的”连续测量样本对,管理服务器MS就可以假设剩余的测量样本没有接收顺序错误。因此,管理服务器MS可以仅基于时间戳在由MP1和MP2提供的列表中出现的次序来确定来自MP1的时间戳和来自MP2的时间戳将被用于与相同测量样本相关的计算。
如果在步骤502处管理服务器MS确定分组丢失PL不为0,那么管理服务器MS不能确定由MP1选择的哪些测量样本丢失。这阻止管理服务器MS获得有效时间测量。
根据有利实施例,在图3中的流程图的步骤307处,每个测量点MP1、MP2向管理服务器MS不仅发送所选择的测量样本的时间戳,而且还发送在步骤303处计算并本地存储的相关联的采样签名。
特别地,根据有利的变型,在每个测量周期结束时,每个测量点MP1、MP2优选地向管理服务器MS发送在测量周期结束时存储在其全局变量中的用于选择测量样本的值HS*,以及对于每个选择的测量样本,发送其时间戳和未使用散列值。
因此,再次参考例如图1的场景,管理服务器MS优选地从测量点MP1接收值HS*1和时间戳的有序列表TSi1以及相关联的未使用散列UHi1(i是范围从1到n1的索引,n1是在测量周期期间由MP1选择的测量样本的数量),并且从测量点MP2接收值HS*2和时间戳的有序列表TSj2以及相关联的相应的来自测量点MP2的未使用散列UHj2(j是范围从1到n2的索引,n2是在测量周期期间由MP2选择的测量样本的数量)。
参考图6的流程图,在从MP1和MP2接收到这样的测量参数(步骤600)后,管理服务器MS首先检查由测量点MP1、MP2执行的测量样本的选择是否是用相同的长度S值完成的(步骤601)。根据优选的变型,为了执行步骤601的确定,管理服务器MS优选地检查是否HS*1=HS*2。
实际上,虽然原理上测量点MP1、MP2应当应用相同的S值来选择测量样本(即,HS*1=HS*2),但实际上它们可能使用了不同的值。例如,在由MP1识别出的一个或多个测量样本丢失的情况下,测量点MP2找到比MP1更少数量的测量样本。这会使得测量点MP2应用比MP1所应有的长度短的长度S(即,更高的采样率),使得HS*1等于HS*2加上1或更多比特。
如果在步骤601处管理服务器MS确定MP1和MP2都已经应用了长度S的相同值用于选择测量样本,那么它优选地计算影响测量样本的分组丢失(步骤602),如上面所解释的。
如果分组丢失PL等于0(步骤603),那么管理服务器MS优选地基于接收到的时间戳对测量样本执行时间测量。
特别地,管理服务器MS优选地对测量样本执行平均时间测量(步骤604),如上所述。如以上所讨论的,平均时间测量无论测量样本是否经历接收顺序误差都是有效的。
然后,管理服务器MS优选地对每个测量样本执行单独的时间测量(步骤605),如上所述。
根据这个第二实施例,在步骤605处,为了适当地关联与相同测量样本相关并由不同测量点提供的时间戳,管理服务器MS优选地使用在图3的流程图的步骤307处它从MP1和MP2接收的采样签名。特别地,管理服务器MS优选地通过使用来自MP1的时间戳TSi1和来自MP2的时间戳TSj2(其相关联的采样签名具有相同的值)来执行与某个测量样本相关的单独时间测量(例如,根据上面的等式[2]的单向延迟测量)。
可以认识到的是,为了确定两个采样签名是否具有相同的值,管理服务器MS可以将其自身限制为仅读取和检查这种采样签名的未使用散列值UHi1和UHj2,即,未被测量点MP1、MP2用于选择测量样本的部分。实际上,在选择目的中使用的采样签名部分对于所有选择的样本都等于HS*。因此,这个部分对于唯一地识别每个样本是无用的,并且因此可以被管理服务器MS忽略。
因此,根据这个实施例,管理服务器MS有利地能够唯一地识别与相同测量样本相关并且源自不同测量点MP1、MP2的时间戳。因而,涉及两个或更多个测量样本的可能的接收顺序错误不会损害管理服务器MS适当识别与相同测量样本相关的时间戳并提供不受那些错误影响的有效的单独时间测量的能力。
再次参考图6的流程图,如果在步骤603处管理服务器MS确定分组丢失PL不为0,那么管理服务器MS优选地从后续的时间测量中排除丢失的测量样本,即,已被MP1选择但尚未达到MP2的测量样本(步骤607)。
为此,管理服务器MS优选地把如下样本识别为丢失的测量样本:由MP1接收的该样本的采样签名不存在于从MP2接收的采样签名的列表中。如上面所讨论的,为此,管理服务器MS可以将其自身限制为仅读取和检查从MP1和MP2接收的未使用散列值UHi1和UHj2。
然后,管理服务器MS优选地对在步骤607处未排除的测量样本执行平均时间测量(步骤604)。
然后,管理服务器MS优选地对在步骤607处未排除的测量样本执行单独的时间测量(步骤605)。如上所述,由MP1和MP2为同一测量样本提供的时间戳优选地由管理服务器MS使用采样签名的值(特别是其未使用散列值UHi1和UHj2)来识别。
如果在步骤601处管理服务器MS意识到由测量点MP1、MP2执行的测量样本的选择已经用长度S的不同值完成(如上所述,MP2可能已经应用了低于由MP1应用的值的S的值,使得HS*1等于HS*2附上1比特或更多比特),通过仅维持其采样签名包括具有值HS*1的S比特的部分的测量样本,管理服务器MS优选地对由MP2提供的测量样本应用进一步的选择(步骤606)。重新选择步骤优选地仅基于由MP2选择的测量样本的未使用散列UHj2,如上面结合图3的流程图的步骤311所述。这样,管理服务器MS从后续测量中排除由于不同的采样率而被MP2但不被MP1选择的测量样本。
然后,管理服务器MS优选地如上所述计算分组丢失PL(步骤602),其中对由步骤606提供的重新选择的MP2的测量样本计算n2。
然后,管理服务器MS检查分组丢失PL是否不为0(步骤603)。
如果分组丢失PL等于0,那么管理服务器MS对所有测量样本执行平均时间测量(步骤604)和单独时间测量(步骤605),如上所述。相反,如果分组丢失PL不为0,那么管理服务器MS排除丢失的测量样本(步骤603),然后仅对未丢失的测量样本执行平均时间测量(步骤604)和单独的时间测量(步骤605)。
有利地,由管理服务器MS对应用较高采样率的测量点所选择的测量样本后验地应用进一步的选择允许将性能测量方法也应用于多点分组流。
在本说明书和权利要求书中,表述“多点分组流”将指定包括沿着两个或更多个至少部分不重叠的端到端路径传输的分组的分组流,以便多点分组流的不同分组可以在沿着那些路径实现的不同测量点处被接收。例如,多点分组流可以包括具有不同源节点和/或不同目的地节点的两个或更多个点到点分组流。
图7示意性地示出了支持多点分组流的传输的示例性子网SN,其中实现了根据本发明的实施例的用于执行性能测量的方法。
子网SN包括多个节点N1,N2,…,N7,作为非限制性示例,它们根据树形拓扑相互互连。特别地,节点N1连接到N2、N3和N4,节点N5和N6连接到节点N2,而节点N7连接到节点N3。
子网SN支持多点分组流的传输,该多点分组流包括分别由节点N4、N5、N6、N7发起并寻址到节点N1的四个点到点分组流PF1、PF2、PF3、PF4。因此,所有分组流PF1、PF2、PF3、PF4的分组具有相同的目的地地址,这定义了多点分组流。
为了对多点分组流执行性能测量,优选地在子网SN中实现测量点的监视网络。监视网络可以包括用于子网SN的每个节点的一个或多个测量点。作为非限制性示例,图7中所示的监视网络包括用于子网SN的每个节点N1、N2、......N7的测量点MP1、MP2、......MP7。
所有测量点MP1、MP2、......MP7都优选地能够与管理服务器MS(为简单起见,图7中未示出)协作。
为了在多点分组流PF上提供性能测量,优选地在子网SN的监视网络中识别至少一个测量点集群。集群优选地被定义为监视网络的一组测量点,其表现出如下性质:如果没有发生分组丢失的话,在集群的(一个或多个)输入测量点处接收的分组的集合与在集群的(一个或多个)输出测量点处接收的分组的集合相同。
可以在图7中所示的子网SN的监视网络中识别不同的集群,例如由输入测量点MP2、MP3、MP4和输出测量点MP1形成的集群。
优选地,集群MP1、MP2、MP3、MP4的所有测量点根据图3的流程图操作。
因此,在集群输入侧,在某个测量周期期间,测量点MP2优选地基于具有动态可调长度S2的采样签名部分在PF2和PF3的分组当中选择测量样本,测量点MP3优选地基于具有动态可调长度S3的采样签名部分在PF4的分组当中选择测量样本,测量点MP4基于具有动态可调长度S4的采样签名部分在PF1的分组当中选择测量样本。
在集群输出侧,在同一测量周期期间,测量点MP1优选地基于具有动态可调长度S1的采样签名部分在PF1、PF2、PF3、PF4的分组当中选择测量样本。
如果集群MP1、MP2、MP3、MP4的所有测量点使用相同的长度S值(即,S1=S2=S3=S4)并且如果没有发生分组丢失,那么输入测量点MP2、MP3、MP4选择的测量样本的集合将与输出测量点MP1选择的测量样本的集合相同。这将允许基于由集群的各个输入和输出测量点针对那些测量样本提供的性能参数来提供与该集群相关的性能测量。
但是,由于所有四个分组流PF1、PF2、PF3、PF4都在输出测量点MP1处被接收,因此对于长度S的相同值(即,对于相同的采样率),由MP1选择的测量样本的数量可能高于由MP2、MP3和MP4中的每一个选择的测量样本的数量。因此,输出测量点MP1将可能使用高于S2、S3和S4的值S1作为在选择目的中使用的采样签名部分的长度,以便降低采样率并且不超过每个测量周期的最大测量样本数量Nmax。
根据有利的变型,适当地调整由每个测量点MP1、MP2、MP3和MP4应用的Nmax的值,以便诱导所有测量点MP1、MP2、MP3和MP4应用相同的S值用于选择测量样本。可以根据集群的拓扑来选择各个测量点的Nmax值。例如,在图7的示例性场景中,由于MP1接收最高数量的分组,因此比由MP2、MP2和MP3应用的Nmax值更高的Nmax值可能诱导MP1应用等于(或者至少不太高于)S2、S3和S4的值S1。可替代地,可以在初步测量会话期间选择各个测量点的Nmax值,其中首先将Nmax设置为对于所有测量点相同的值,然后考虑由测量点应用的值S1、S2、S3和S4,并且如果其中一个(假设S1)显著高于其它值,那么由MP1应用的Nmax的值逐渐增加,直到S1变得等于(或者至少不太高于)S2、S3和S4。
为了在这种情况下提供与集群相关的性能测量(与集群的测量点是对Nmax应用相同值还是不同值无关),管理服务器MS优选地被配置为根据图8的流程图操作。
特别地,管理服务器MS优选地从每个测量点MP1、MP2、MP3、MP4接收所选择的测量样本的时间戳和采样签名(优选地以HS*和未使用散列的形式)(步骤800)。
然后,管理服务器MS优选地识别集群的所有逻辑链路(步骤801),即,MP2-MP1、MP3-MP1和MP4-MP1。
然后,对于每条识别出的逻辑链路,管理服务器MS优选地检查发起逻辑链路的输入测量点和终止逻辑链路的输出测量点是否已经应用了长度S的相同值来选择测量样本。
如果管理服务器MS确定逻辑链路的两个测量点都应用了长度S的相同值,那么管理服务器MS优选地识别由两个测量点选择的测量样本(步骤804)。参考例如逻辑链路MP4-MP1,假设MP1和MP4对于长度S应用相同的值(即,S1=S4),那么MP4仅在PF4的分组当中选择测量样本,而MP1也在PF1、PF2和PF3的分组当中选择测量样本。在步骤804处,仅识别PF4的分组当中由MP1和MP4都选择的测量样本。
为了在步骤804处识别测量样本,管理服务器MS优选地使用测量样本的采样签名,特别是其未使用散列,如上所述。
然后,管理服务器MS优选地执行与各条逻辑链路相关的单独的时间测量(步骤805)。对于每条逻辑链路,优选地仅针对在步骤804处为那条逻辑链路识别出的测量样本执行单独的时间测量。同样,为了适当地关联与相同测量样本相关并由逻辑链路的两个测量点(例如MP4和MP1)提供的时间戳,管理服务器MS优选地使用识别出的测量样本的采样签名(特别地,它们的未使用散列),如上所述。
示例性的单独的时间测量是针对每个测量样本通过将上述等式[2]应用于由逻辑链路的两个测量点为那个测量样本提供的时间戳来计算的上述单向延迟。
在子网SN不同步的情况下,步骤805包括针对在步骤804处为逻辑链路识别出的每个测量样本计算双向延迟。
为此,通过实现在上面参考图3描述的算法,每条逻辑链路的测量点监视反向传播的分组流。因此,在每个测量周期结束时管理服务器MS从逻辑链路的测量点还接收与在反向传播的分组流的分组当中选择的测量样本相关的性能参数(即,时间戳和采样签名,优选地以HS*和未使用散列的形式)。管理服务器MS优选地参考图8的流程图处理如上所述的这些性能参数。
特别地,在步骤804处,管理服务器MS优选地在每个传播方向上识别在逻辑链路的两个测量点处都被选择的测量样本。然后,管理服务器MS考虑在一个方向上识别出的测量样本之一,并查找在另一个方向上与其匹配的测量样本。更具体而言,对于在一个方向上的每个测量样本,在相反方向上传播的测量样本的由逻辑链路的一个测量点生成的时间戳当中,在另一个方向上与其匹配的测量样本优选地被选择为其时间戳与为要由同一测量点匹配的测量样本生成的时间戳最接近的测量样本。根据优选的变型,在一个测量点处具有最接近时间戳的两个反向传播测量样本实际上仅在它们的时间戳之间的差不超过预定阈值时才匹配并且用于计算往返延迟。阈值取决于节点的本地时钟的质量。阈值可以是例如几秒。时钟质量越高,可以设置阈值的值越高。还应该注意的是,并非一个方向上的所有测量样本都可以具有在另一方向上匹配的测量样本,因为样本的数量在两个方向上可以非常不同(一个方向上有几个样本,另一个方向上有少量样本)。然后,计算在两个相反方向上匹配的两个测量样本的单向延迟,并求和以提供双向延迟。
可以聚合为逻辑链路的每个识别出的测量样本计算的单独的时间测量(单向或双向),以便提供与那条逻辑链路相关的累积或平均时间测量。
再次参考图8的流程图,如果在步骤802处管理服务器MS确定发起逻辑链路的输入测量点和终止该逻辑链路的输出测量点已经应用了长度S的不同值来选择测量样本(例如,参考逻辑链路MP4-MP1,如上面所讨论的,MP4可能已经应用了低于MP1所应用的值的S值),那么通过仅维持其采样签名包括具有值HS1*的S1比特的部分的测量样本,管理服务器MS优选地将进一步的选择(步骤803)应用于由MP4提供的测量样本,其中S1和HS1*是由MP1应用的值。这样,管理服务器MS从后续的时间测量中排除由于不同的采样率而被MP4选择但不是来自MP1的测量样本。
然后,管理服务器MS优选地执行上述识别步骤804,然后执行上述单独的时间测量805。
在本说明书中引用了“测量周期”。根据本发明的优选实施例,通过向分组流PF的分组(或者点到点或者多点)应用相同申请人名下的WO2010/072251所述的交替标记来定义这种标记周期。
更特别地,参考例如图1的点到点场景,分组流PF的分组被标记(在节点N1处,或者在位于发起分组流PF的节点N1上游的另一个节点处)用于将分组流PF划分为块。例如通过以标记为“1”的分组块在时间上与标记为“0”的分组块交替的这种方式将它们的报头的比特设置为“1”或“0”,分组Pki被标记。块可以具有相同的持续时间Tb,Tb与测量周期(例如,5分钟)对应。除了允许每个测量点识别每个测量周期之外,替代标记还允许测量点提供与在测量周期期间接收的所有分组相关的进一步测量参数(特别是计数器和累积时间戳),如相同申请人名下的WO2010/072251和WO2013/174417所述。
应该注意的是,由于对于所有测量样本而言,采样签名应当包括等于HS*的S比特的部分,与其标记无关,因此为了计算采样签名而对其应用散列函数的比特掩码优选地不包括(一个或多个)标记比特。
Claims (15)
1.一种用于对沿着通过分组交换通信网络(CN)的路径传输的分组流(PF)执行性能测量的方法,所述方法包括在所述路径上实现的至少两个测量点(MP1、MP2)中的每个测量点处:
a)通过向所述分组流(PF)的每个接收到的分组(Pki)的比特的掩码应用散列函数,计算所述分组(Pki)的采样签名(SS);
b)在所述接收到的分组(Pki)当中选择一定数量的测量样本,所述测量样本被选择为其采样签名(SS)包括等于预定采样值(HS*)的长度S的一部分的那些接收到的分组(Pki),对所选择的测量样本的数量(nsample)进行计数,并基于所选择的测量样本的所述计数数量(nsample)追溯性地调整所述长度S;以及
c)提供与所述测量样本相关的测量参数,
所述方法还包括使用与所述测量样本相关的所述测量参数来执行对所述分组流(PF)的所述性能测量。
2.如权利要求1所述的方法,其中:
-步骤a)包括为自测量周期的开始起接收到的每个分组计算所述采样签名(SS),
-步骤b)包括在自所述测量周期的开始起接收到的分组(Pki)当中选择所述测量样本,并且对自所述测量周期的开始起选择的测量样本的所述数量(nsample)进行计数;以及
-步骤c)包括提供与在所述测量周期期间选择的测量样本相关的测量参数。
3.如权利要求2所述的方法,其中在步骤b)处,所述追溯性地调整包括:
b1)在所述测量周期的开始时,将所述长度S设置为等于最小长度(S0);以及
b2)每当在所述测量周期到期之前所选择的测量样本的所述数量(nsample)超过最大阈值Nmax时,增加所述长度S,所述最大阈值(Nmax)指示测量周期的最大测量样本数。
4.如权利要求3所述的方法,其中步骤b2)包括,每当所述长度S从等于或高于所述最小长度(S0)的第一长度增加到第二长度时:
b2')考虑通过使用等于所述第一长度的所述长度S、自所述测量周期的开始起选择的测量样本;
b2”)通过使用等于所述第二长度的所述长度S对所述测量样本执行进一步选择;以及
b2”')继续使用等于所述第二长度的所述长度S,以便在所述测量周期期间从该时刻起接收的分组(Pki)当中选择进一步的测量样本。
5.如权利要求4所述的方法,其中:
-在步骤b2')处考虑并通过使用等于所述第一长度的所述长度S选择的所述测量样本是其采样签名(SS)包括具有等于预定的第一采样值的所述第一长度的部分的那些接收到的分组(Pki);并且
-在步骤b2”)处进一步选择的所述测量样本和在步骤b2”')处选择的所述进一步的测量样本是其采样签名(SS)包括具有等于预定的第二采样值的所述第二长度的部分的那些接收到的分组(Pki),
其中所述预定的第二采样值的一部分等于所述预定的第一采样值。
6.如前述权利要求中任一项所述的方法,其中步骤c)包括为每个选择的测量样本提供时间戳,该时间戳指示在所述至少两个测量点(MP1,MP2)中的所述每个测量点处接收到所述测量样本的时间。
7.如权利要求2至5中任一项所述的方法,其中所述步骤c)包括在所述测量周期的结束时提供时间戳的有序列表(TSi1,TSj2),该时间戳的有序列表指示在所述测量周期期间在步骤b)处选择的所述测量样本已经在所述至少两个测量点(MP1,MP2)中的所述每个测量点处被接收的时间。
8.如权利要求7所述的方法,其中所述执行所述性能测量包括:
-基于由所述至少两个测量点(MP1,MP2)中的每个测量点提供的所述时间戳的有序列表(TSi1,TSj2)中包括的多个时间戳,计算在所述测量周期期间影响所述分组流(PF)的分组丢失;
-如果所述分组丢失等于0,则基于由所述至少两个测量点(MP1、MP2)中的每个测量点提供的时间戳的所述有序列表(TSi1,TSj2)执行时间测量,所述执行时间测量包括:
-基于所述时间戳的有序列表(TSi1,TSj2)中包括的所述时间戳的平均值,执行所述测量周期的平均时间测量;
-从所述时间戳的有序列表(TSi1,TSj2)中移除其相互时间距离低于预定最小阈值TDmin的连续测量样本的时间戳,相互时间距离被计算为它们的时间戳之间的差值;以及
-对其时间戳没有从所述时间戳的有序列表(TSi1,TSj2)中排除的每个测量样本执行单独的时间测量;以及
-如果所述分组丢失不为0,则避免对所述测量周期的任何时间测量。
9.如权利要求7所述的方法,其中步骤c)还包括在所述测量周期的结束时为在所述测量周期期间选择的所述测量样本提供在步骤a)处计算的采样签名(SS)的有序列表。
10.如权利要求9所述的方法,其中提供所述采样签名(SS)的有序列表包括在S个比特的全局变量和未使用散列的有序列表(UHi1,UHj2)中提供所述预定采样值(HS*),测量样本的未使用散列包括在步骤a)处计算的并且不用于在步骤b)处选择测量样本的其采样签名(SS)的Smax-S比特,Smax是所述采样签名(SS)的长度。
11.如权利要求9或10所述的方法,其中所述执行所述性能测量包括:
-检查所述至少两个测量点(MP1,MP2)是否已经应用相同的长度S以选择在所述测量周期结束时提供的所述测量样本;
-如果所述至少两个测量点(MP1,MP2)中的一个测量点(MP2)已经应用比所述至少两个测量点(MP1、MP2)中的另一个测量点(MP1)应用的长度S短的长度S,则从由所述一个测量点(MP2)提供的所述时间戳(TSj2)的有序列表中排除由所述一个测量点(MP2)而非由所述另一个测量点(MP1)选择的测量样本的时间戳,要排除的所述时间戳是基于由所述一个测量点(MP2)提供的所述采样签名(SS)选择的;
-基于所述时间戳的有序列表(TSi1,TSj2)中包括的多个时间戳计算在所述测量周期期间影响所述分组流(PF)的分组丢失;
-如果所述分组丢失不为0,则从所述时间戳的有序列表(TSi1,TSj2)中排除丢失的测量样本的时间戳,所述丢失的测量样本是基于由所述至少两个测量点(MP1,MP2)中的每个测量点提供的所述采样签名(SS)识别的;
-基于所述时间戳的有序列表(TSi1,TSj2)执行时间测量,所述执行时间测量包括:
-基于所述有序列表(TSi1,TSj2)中包括的所述时间戳的平均值,对所述测量周期执行平均时间测量;以及
-对每个测量样本执行单独的时间测量,每个测量样本基于由所述至少两个测量点(MP1、MP2)中的每个测量点提供的所述采样签名(SS)单独地识别。
12.如前述权利要求中任一项所述的方法,其中所述分组流(PF)是多点分组流。
13.一种用于分组交换通信网络(CN)的节点(N1,N2),所述节点被配置为接收沿着通过所述分组交换通信网络(CN)的路径传输的分组流(PF),所述节点(N1,N2)被配置为:
a)通过向所述分组流(PF)的每个接收到的分组(Pki)的比特的掩码应用散列函数,计算所述分组(Pki)采样签名(SS);
b)在所述接收到的分组(Pki)当中选择一定数量的测量样本,所述测量样本被选择为其采样签名(SS)包括等于预定采样值(HS*)的长度S的一部分的那些接收到的分组(Pki),对所选择的测量样本的数量(nsample)进行计数,并基于所选择的测量样本的所述计数数量(nsample)追溯性地调整所述长度S;以及
c)提供与所述测量样本相关的测量参数。
14.一种通信网络(CN),至少包括如权利要求13所述的第一节点(N1)和第二节点(N2)。
15.一种计算机程序产品,其可加载在至少一个计算机的存储器中并且包括软件代码部分,所述软件代码部分用于当所述产品在至少一个计算机上运行时执行如权利要求1至12中任一项所述的方法的步骤。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2016/075169 WO2018072828A1 (en) | 2016-10-20 | 2016-10-20 | Performance measurement in a packet-switched communication network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109997335A true CN109997335A (zh) | 2019-07-09 |
CN109997335B CN109997335B (zh) | 2022-10-18 |
Family
ID=57206234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680091173.6A Active CN109997335B (zh) | 2016-10-20 | 2016-10-20 | 分组交换通信网络中的性能测量 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11165671B2 (zh) |
EP (1) | EP3529952B1 (zh) |
CN (1) | CN109997335B (zh) |
WO (1) | WO2018072828A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102400108B1 (ko) * | 2017-10-18 | 2022-05-23 | 삼성전자주식회사 | 전자 기기를 제어하기 위한 전자 기기 제어 시스템 및 그 전자 기기를 제어하는 방법 |
IT201800010791A1 (it) | 2018-12-04 | 2020-06-04 | Telecom Italia Spa | Misura di prestazioni in una rete di comunicazioni a commutazione di pacchetto |
IT201900010362A1 (it) | 2019-06-28 | 2020-12-28 | Telecom Italia Spa | Abilitazione della misura di perdita di pacchetti round-trip in una rete di comunicazioni a commutazione di pacchetto |
IT201900025405A1 (it) | 2019-12-23 | 2021-06-23 | Telecom Italia Spa | Elaborazione di pacchetti in una rete di comunicazioni a commutazione di pacchetto |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020026438A1 (en) * | 2000-08-28 | 2002-02-28 | Walid Rjaibi | Estimation of column cardinality in a partitioned relational database |
US6738355B1 (en) * | 2000-11-01 | 2004-05-18 | Agilent Technologies, Inc. | Synchronization method for multi-probe communications network monitoring |
US6738349B1 (en) * | 2000-03-01 | 2004-05-18 | Tektronix, Inc. | Non-intrusive measurement of end-to-end network properties |
CN1744532A (zh) * | 2004-06-04 | 2006-03-08 | 朗迅科技公司 | 按流业务量的估计 |
US7403137B1 (en) * | 2007-03-30 | 2008-07-22 | Juniper Networks, Inc. | Memory efficient indexing for disk-based compression |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4659850B2 (ja) * | 2008-04-10 | 2011-03-30 | 富士通株式会社 | ネットワーク監視プログラム、ネットワーク監視方法およびネットワーク監視装置 |
WO2010072251A1 (en) | 2008-12-22 | 2010-07-01 | Telecom Italia S.P.A. | Measurement of data loss in a communication network |
KR101947783B1 (ko) | 2012-05-22 | 2019-02-13 | 텔레콤 이탈리아 소시에떼 퍼 아찌오니 | 패킷-교환 통신 네트워크에서 패킷 흐름 상 타임 측정 |
US20160212021A1 (en) | 2013-09-18 | 2016-07-21 | Jolata, Inc. | Highly probable identification of related messages using sparse hash function sets |
-
2016
- 2016-10-20 EP EP16787380.1A patent/EP3529952B1/en active Active
- 2016-10-20 US US16/342,330 patent/US11165671B2/en active Active
- 2016-10-20 CN CN201680091173.6A patent/CN109997335B/zh active Active
- 2016-10-20 WO PCT/EP2016/075169 patent/WO2018072828A1/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6738349B1 (en) * | 2000-03-01 | 2004-05-18 | Tektronix, Inc. | Non-intrusive measurement of end-to-end network properties |
US20020026438A1 (en) * | 2000-08-28 | 2002-02-28 | Walid Rjaibi | Estimation of column cardinality in a partitioned relational database |
US6738355B1 (en) * | 2000-11-01 | 2004-05-18 | Agilent Technologies, Inc. | Synchronization method for multi-probe communications network monitoring |
CN1744532A (zh) * | 2004-06-04 | 2006-03-08 | 朗迅科技公司 | 按流业务量的估计 |
US7403137B1 (en) * | 2007-03-30 | 2008-07-22 | Juniper Networks, Inc. | Memory efficient indexing for disk-based compression |
Also Published As
Publication number | Publication date |
---|---|
CN109997335B (zh) | 2022-10-18 |
WO2018072828A1 (en) | 2018-04-26 |
EP3529952B1 (en) | 2021-03-10 |
US11165671B2 (en) | 2021-11-02 |
US20190288924A1 (en) | 2019-09-19 |
EP3529952A1 (en) | 2019-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6279741B2 (ja) | パケット交換通信ネットワークにおける時間測定 | |
US7113485B2 (en) | Latency evaluation in a ring network | |
CN111602370B (zh) | 使用有限额外字节的带内遥测 | |
CN109997335A (zh) | 分组交换通信网络中的性能测量 | |
CN105359461A (zh) | 分组交换通信网络的链路的性能测量 | |
EP3369213B1 (en) | Performance measurement in a packet-switched communication network | |
EP3398296B1 (en) | Performance measurement in a packet-switched communication network | |
KR102565915B1 (ko) | 다중포인트 패킷 흐름에 관한 성능 측정 | |
US11121938B2 (en) | Performance measurement in a packet-switched communication network | |
CN107846291B (zh) | 报文处理方法、故障定位方法及网络设备 | |
EP3891916B1 (en) | Performance measurement in a packet-switched communication network | |
WO2023247652A1 (en) | Performance measurement on live traffic transmitted through a packet-switched communication network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | 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 |