跟踪路由_延迟诊断命令的制作方法

文档序号:7989179阅读:212来源:国知局
跟踪路由_延迟诊断命令的制作方法
【专利摘要】一种用于至少在网络路径中包括的网络节点中测量探测消息的驻留时间的方法,所述探测消息具有生存时间值,所述方法包括下列步骤:-注册探测消息的接收时间戳;-将接收时间戳写入到接收的探测消息中的指定字段中;-检测探测消息的生存时间值;-如果生存时间值不为空,将生存时间值缩减1。-如果生存时间值等于1,从而:注册探测消息的发送时间戳;通过注册的接收时间戳减去注册的发送时间,计算网络节点中的探测消息的驻留时间;将计算的驻留时间写入到探测消息中的字段中;改变接收的探测消息的标志值,以便保护驻留时间免于被针对探测消息的后续动作所重写。
【专利说明】跟踪路由_延迟诊断命令
【技术领域】
[0001]概括地,本发明涉及网络延迟/等待时间管理的【技术领域】。
【背景技术】
[0002]网络引入的延迟在最重要的网络性能度量中,这是因为它们直接影响多个广域网应用,从诸如VoIP、交互式网络游戏的实时应用到时间关键的财务应用和定位系统。
[0003]因此,监测网络中数据传输延迟的性能必须包括详细了解这些延迟是如何引入的以及在哪里引入的。
[0004]在传统的TDM技术中,通过TDM交换之间的确定的过渡时间(例如,根据系统时钟过渡的数量)可以预测网络延迟。然而,随着带宽要求的极大增加,TDM逐渐被分组交换网络(PSN)所代替,其中分组交换网络中的分组抖动,也被称为分组延迟变量(主要由分组排队引入的随机过程),使得网络节点中的分组驻留(resident)时间(从现在起将其称为网络节点驻留时间)不可预测。
[0005]因此,PSN网络运营商需要更多的工具以监测网络延迟或网络等待时间,以便能够采取合适的动作(例如,网络重新设计/重新配置),其旨在根据网络延迟/等待时间来考虑服务等级协定(SLA)和校正SLA违规。
[0006]为了解决这些问题,网络运营商通常依赖于各种端到端时间延迟测量工具,例如
[0007]-通过互联网控制消息协议(ICMPv4-RFC792和ICMPv6_RFC4443)定义的PING命令,其中PING命令允许对IP网络中从源到目的地主机的端到端往返行程延迟的测量;
[0008]-由RFC2679描述的单向延迟测量方法。该方法可根据网络延迟/等待时间的值、测量所要求的精度和两端的时钟精度来要求时间同步;
[0009]-允许沿着从源到目的地主机的网络路径确定每个网络节点(也就是说,每个网络层设备)地址的跟踪路由(或tracert)命令。跟踪路由还返回分别从网络路径中的源到每个所经过的节点的端到端延迟。
[0010]然而,这些工具返回与网络节点驻留时间(或等待时间)相关的没有任何精度的整个端到端延迟。换句话说,将由这些工具返回的延迟值视为单一的统一部分,已包括与其相关的没有任何精度的网络节点驻留时间。
[0011]可概括地将网络引入的延迟分为:
[0012]-由网络节点处理(处理延迟)分组并准备进行(重新)传输所需要的时间。处理延迟主要根据协议栈复杂度、在每个节点处可利用的计算能力(也就是,可利用的硬件)和卡驱动器(或接口卡逻辑);和
[0013]-排队延迟,也就是网络节点的缓冲器中分组在处理和/或传输前的整个等待时间,其中排队延迟可取决于网络节点切换(或低层切换)的细节
[0014]-传输延迟:发送全部分组(从第一比特到最后一个比特)、或者更基本的从第一网络节点的输出端口到第二网络节点的输入端口发送单一比特所需要的时间。
[0015]因此,通过没有给出与其部分相关的任何细节的单一值中返回整个端到端延迟,最新的端到端延迟测量工具不允许运营商计算出应当应用校正动作以解决等待时间预算超出问题的(多个)网络片段或(多个)网络节点。
[0016]现有技术的另一问题是现有的网络诊断工具不允许确定整个传递等待时间的哪一部分归因于网络节点驻留时间。
[0017]本发明的一个目的是解决相关现有技术的上述和其它问题。
[0018]本发明的另一目的是确定在网络路径中的何处引入主要延迟。
[0019]本发明的另一目的是提供网络引入延迟的精细粒度的组成。
[0020]本发明的另一目的是提出一种允许确定每个节点等待时间的方法。
[0021 ] 本发明的另一目的是提供一种命令,所述命令通过控制探测(probe )消息的内容提供该分组经历的端到端延迟的精细粒度图。
[0022]本发明的另一目的是将端到端延迟分成区分沿着IP网络中从源到目的地路径的节点驻留时间的部分。
[0023]本发明的另一目的是允许运营商根据网络等待时间对SLA违规问题(不考虑所承诺的服务质量)进行快速和精确的诊断。
[0024]本发明的另一目的是提供允许精确地确定互联网应用中重要延迟的源的诊断命令。
[0025]本发明的另一目的是揭示引入大部分等待时间和对延迟退化负责的主要的网络跳。
【专利附图】

【附图说明】
[0026]通过下面的说明书和权利要求,本发明的目的、优点和其它特征会变得更加明显。给出的优选实施方式的下列非限制性描述仅是关于附图的示例,其中
[0027]-图1是描述根据现有技术的探测报头格式的框图;
[0028]-图2是描述根据第一实施方式的探测报头格式的框图;
[0029]-图3是描述现有技术的诊断命令tracerouteO的实施方式的框图;
[0030]-图4是描述诊断命令的功能性实施方式的框图;
[0031]-图5是描述根据第二实施方式的探测报头格式的框图。

【发明内容】

[0032]本发明旨在解决上面提出的一个或多个问题的影响。下面给出了本发明的简单概述,以便提供对本发明一些方面的基本了解。这种概述不是对本发明穷尽式的概括。不是意在标识本发明的关键元素或描绘本发明的范围。其唯一的目的是以简化的形式给出一些概念,以作为下面更详细描述的前序。
[0033]本发明涉及一种用于在网络路径中包括的至少网络节点中测量探测消息的驻留(resident)时间的方法,所述探测消息具有生存时间值,所述方法包括下列步骤:
[0034]-注册探测消息的接收时间戳;
[0035]-将接收时间戳写入到接收的探测消息中的专用字段中;
[0036]-检查探测消息的生存时间值;
[0037]-如果生存时间值不为空,则将生存时间值缩减I;[0038]-如果生存时间值等于1,那么:
[0039]〇注册探测消息的发送时间戳;
[0040]〇通过将注册的接收时间戳减去注册的发送时间戳,计算网络节点中的探测消息驻留时间;[0041]〇将计算的驻留时间写入到探测消息的字段中;
[0042]〇改变接收的探测消息的标志的值,以便保护驻留时间免于被针对探测消息的后
续动作所重写。
[0043]根据一个宽泛的方面,所引用的上述方法进一步包括下列步骤:
[0044]-如果生存时间值为空,则在缩减后,于是
[0045]〇创建探测答复消息,所述探测答复消息中具有从探测消息复制的计算的驻留时间,探测答复消息的相关的标志值和探测消息标识符;
[0046]〇将创建的探测答复消息传送回探测消息的发起方。
[0047]根据一个宽泛的方面,探测消息是经修改的互联网控制消息协议(ICMP)消息。
[0048]根据另一个宽泛的方面,探测消息是经修改的操作管理维护(OAM)消息,例如MPLS-TP/MPLS OAM消息或以太网OAM消息。
[0049]优选地,网络节点中探测消息的计算的驻留时间等于其在主协议层/栈中的驻留时间,其中主协议层/栈负责探测消息处理(也就是,编码/解码)。因此,在不同协议层使用探测消息允许分析不同协议层在每个节点延迟预算上的影响。
[0050]本发明进一步涉及一种网络节点,包括:
[0051]-用于注册探测消息的接收时间戳的设备;
[0052]-用于将接收时间戳写入所接收的探测消息中的指定字段的设备;
[0053]-用于检查探测消息的生存时间值的设备;
[0054]-用于注册探测消息的发送时间戳的设备;
[0055]-用于计算探测消息驻留时间、并且随后将探测消息驻留时间写入探测消息的字段中的设备,其中探测消息驻留时间是注册的发送时间戳和所写入的接收时间戳之间的差;
[0056]-用于改变探测消息中的标志的值以便保护所计算的驻留时间值免于被其它节点或当前节点自身针对探测消息的后续动作所重写;
[0057]-用于缩减并比较探测消息的生存时间值的设备。
[0058]本发明进一步涉及适于执行上述方法的计算机程序产品。
[0059]虽然本发明易于进行各种修改和采用可替换的形式,但其特定实施方式通过实施例在附图中给出。然而,可以理解的是,这里特定实施方式的描述不意在将本发明限定到所公开的特定形式。
[0060]当然可以理解的是,在任何实际的实施方式的开发中,为实现开发者的特定目标可进行特定实现方式的决定,例如与系统相关和商业相关的限制相兼容。可以理解的是,这样的开发努力会是耗时的,但是对于那些从本申请受益的普通技术人员来说是可以理解的例程。
【具体实施方式】[0061]提供下面表示为traceroute_delay O的诊断命令。该名称仅用于命名的目的,相当于通常涉及传统的traceroute O命令(例如,RFC1393)和延迟测量问题。显然,可以起任何其它的名字。
[0062]通过控制探测消息报头,traceroute_delayO命令除了收集所经过的节点的地址,还收集所经过的节点的驻留时间和最终所经过的链路的传播延迟。
[0063]在一个实施方式中,探测消息是经修改的ICMP消息。事实上,traceroute_delay O命令利用ICMP时间戳、和与对它们的期望所不同的ICMP时间戳答复消息(RFC972 )的一些字段(给这些现有的字段提供新的语义)。
[0064]参照图1和图2,根据traceroute_delay O命令,可分别将传统的ICMP时间戳和时间戳答复消息(RFC972)(图1)的字段“源时间戳”、“接收时间戳”和“发送时间戳”替换为“出站(outbound)驻留时间”、“接收时间戳”和“返回驻留时间”字段。此外,标志“L”与“出站驻留时间”和“返回驻留时间”字段中的每一个相关联。
[0065]因此,根据traceroute_delay O命令,探测报头包括
[0066]-具有ICMP时间戳和时间戳答复消息的公共字段,例如字段“类型”、“代码”、“校验和”、“标识符”和“序列号”(图1和图2)根据这些字段各自的现有技术所识别的功能来使用这些字段(也就是说,它们标准的解释,例如“校验和”确定数据块的损坏,或者“标识符”字段允许标识消息);
[0067]-“出站驻留时间”字段:该字段是网络节点在出站方向中的分组驻留时间(微秒);
[0068]-“接收时间戳”字段:该字段是将分组接收时间戳记录在每个所经过的节点的占位符(placeholder)。这允许节点通过将该时间戳减去发送时间戳来计算发送时的分组驻留时间;
[0069]-“返回驻留时间”字段:该字段是路由器在返回方向上的分组驻留时间(微秒)
[0070]- “L”比特:锁定相应字段(出站/返回驻留时间)并防止所述字段被其它节点或当前节点自身进行的分组后续处理所改写。
[0071]需要说明的是,使用经修改的ICMP时间戳或时间戳答复消息仅是为了利用这些已有标准的优点,而不是未使用的消息,这样导致快速实现和配置。
[0072]可替换地,可以定义上述探测格式,而不对ICMP时间戳和/或时间戳答复消息进行任何考虑。从而,可设想探测报头包括“出站驻留时间”、“接收时间戳”、“返回驻留时间”字段,和与“出站驻留时间”和“返回驻留时间”字段中的每一个相关联的保护标志“L”。可为上述任务对这些字段进行编程。
[0073]traceroute_delay O命令具有下列语法:
[0074]traceroute_delay (目的地址,[QoS,模式])
[0075]其中
[0076]-“目的地址”是目的地网络节点的地址;
[0077]- “QoS”指定服务质量(QoS)或服务级别(CoS)值,以标记在其发起点处传输traceroute_delayO命令的相关协议探测消息。默认的或在缺少由运营商指定的值时,将“QoS”值设置为“最大努力”值;
[0078]-“模式”指示命令的操作模式,意味着单向(也就是,值0)或双向(也就是,值I)模式。默认的或在缺少由运营商指定的值时,将值设置为I。[0079]“目的地地址”的格式取决于用于传输traceroute_delay()命令的技术和协议。例如,其可以是
[0080]-1P地址(或主机名称),如果该命令通过ICMP的扩展(RFC4884&5837)进行发送的话;或
[0081]-NSAP (网络服务接入点)地址,如果该命令通过非IP网络中的多协议标签交换传输简档(MPLS-TP) OAM协议(操作和维护,也被称为操作管理和维护)(RFC5860)发送的话。
[0082]输入“QoS”是可被设置为下列内容的值:
[0083]-如果使用诸如ICMP的基于IP的协议,则是用于IP报头中的差分服务代码点(DSCP);
[0084]-如果使用MPLSOAM或伪线(PW)0ΑΜ,则是用于通用多协议标签交换(MPLS)标签中实验使用(experimental use)的3比特保留字段;或
[0085]-如果以太网OAM用于传输不同的traceroute_delayO消息,则为用于由IEEE802.1p涉及的3比特优先级别代码点(PCP)。
[0086]实际上,根据在每个所经过节点上应用的差分服务处理,数据分组延迟通常取决于其被分配的“QoS”(在发起/离开点),并且数据分组延迟通常取决于所配置的相关调度。
[0087]对于“模式”输入,根据分组抖动幅度在每个通信方向(出站方向和返回方向)上不同,分组驻留时间通常因每个方向而不同。因此,提供两个模式,即单向模式和双向模式。“标识符”字段最重要的比特允许在单向(值为O)和往返行程延迟(值为I)测量模式之间进行隔离。
[0088]更一般地,还可考虑其它输入参数以定义traceroute_delay O命令的调用,例如:
[0089]-“协议”,涉及诸如UDP (默认)、ICMP或TCP的探测分组协议;
[0090]- “p”,指示每个网络节点的探测分组的数量。
[0091]为了介绍traceroute_delay O命令的行为,在图3中描述了传统traceroute命令的基本算法的简要提示。
[0092]关于ICMPv4,传统的traceroute O命令通过促使沿着对节点进行链接(从I到η)的网络路径的每个节点(从2到η)返回ICMP错误消息进行工作。探测通过逐跳地、从源离开到一系列往返行程11-13中的目的地i(i=2,...,n)来进行。生存时间或跳数从I开始,并在每个往返行程11-13后增加,直到到达目的地节点η为止,或者直到应用另一停止条件为止。
[0093]实际上,传统的tracerouteO传送其分组的第一组,其中TTL=1(生存时间)。沿着路径的第一路由器(节点2)从而丢弃分组(它们的TTL缩减到0),并返回ICMP “TTL超出”错误消息(往返行程11)。因此,tracerouteO可注册第一路由器(节点2)的地址。然后,可传送具有TTL=2 (往返行程12)、并且接下来TTL=3等(往返行程13)的分组,导致沿着路径的每个路由器返回错误,为tracerouteO命令(位于源路由器或主机)进行标识。最终,或者到达最后的目的地(节点n),或者到达最大的TTL值(默认值为30),并且traceroute O结束。在最后的目的地,返回不同的错误。
[0094]一些实现方式可通过将UDP数据报传送给一些随机的高编号的端口(端口不监听任何数据)来实现。一些其它实现方式使用ICMP回声分组(echo packet)。[0095]现在参照图4,与传统的tracerouteO命令相似,traceroute_delay ()连续地将具有TTL=I (往返行程11)、TTL=2 (往返行程12)等(往返行程13)的ICMP时间戳消息传送给目的地网关(节点η)。将这种朝向节点η的方向称为出站方向。将相反的方向称为返回方向。
[0096]对于出站方向,每个所经过的节点i ( i=2,...,η)实现下列操作:
[0097]-(图4 的步骤 21):
[0098]〇一旦负责的协议检测到分组的存在,对时间戳分组接收时间进行注册(例如,在使用硬件时间戳的输入端口)(其标记由网络节点中相关协议栈(例如,IP协议、以太网协议等)接收的该分组的时刻),并将时间戳值写入到分组“接收时间戳”字段(步骤21);
[0099]〇将TTL缩减I ;
[0100]-(图4的步骤22):如果TTL=I,从而在分组发送过程(例如,在输出端口),
[0101]〇注册分组发送时间戳,标记该分组离开相关协议栈进行传送的时刻(例如,对于IP栈,这是IP栈把ICMP分组转移到传输层的时刻,例如用于传送的以太网层);
[0102]〇根据节点上测量的分组传送时间戳和接收时间戳之间的差别,计算节点i中的分组驻留时间;
[0103]〇将所计算的 驻留时间值写入分组“出站驻留时间”字段;
[0104]〇将该字段的L比特设为1,以便保护其不会被后续动作所重写(如果L比特已经被设置,则会由错误情况:或者之前的节点忘记缩减TTL值,或者其错误地设置L比特;从而动作不会转发分组,而是返回具有设置为O的“出站驻留时间”字段和被设置为I的相关L比特的“时间戳答复”消息);
[0105]或者如果目的地已经到达,或者TTL=O (图4中的步骤31)
[0106]〇利用其“出站驻留时间”字段和从“时间戳”消息复制/拷贝的相关L比特创建“时间戳答复”消息。对于“标识符”字段也是如此。将“时间戳答复”消息返回给“时间戳消息”的发起方;
[0107]〇如果TTL=O并且没有到达目的地,将ICMP “TTL超过”错误消息返回给发起方。
[0108]对于返回方向,每个节点实现下列操作:
[0109]-(步骤4的步骤23):
[0110]〇一旦其检测到分组(例如,在其输入端口),注册时间戳答复分组接收时间戳;和
[0111]〇将接收时间戳值写入到分组“接收时间戳”字段;
[0112]_(步骤4的步骤24),如果设置“标识符”字段的最重要的比特(双向模式,也就是,值为1),并且然后在其输出端口没有设置“返回驻留时间”相关的L比特,
[0113]〇根据接收时间戳:发送时间戳和接收时间戳之间的差别,计算分组驻留时间;和
[0114]〇将所计算的值写入分组“返回驻留时间”字段;
[0115]〇将相关的L比特设置为1,以便保护“返回驻留时间”字段以免被后续动作所重与。
[0116]在图4中示出了上述算法应用的具有TTL=2的示例性实施例(往返行程12)。在该实施例中:
[0117]-一旦其检测到来自输入端口的分组,节点2将接收时间戳值写入到接收探测消息的字段“接收时间戳字段”中(图4的步骤21);
[0118]-节点2将TTL缩减I。当TTL=I时,节点2于是计算驻留时间,并将其写入“出站驻留时间戳”中,并将L比特设置为1,以保护该字段免于被重写(图4的步骤22);
[0119]-节点3将TTL缩减到O。在丢弃“出站驻留时间戳”前,节点3将合适的字段复制到新近创建的时间戳答复消息中的相关字段中。节点3将后一消息返回到源路由器或源主机(图4的步骤31);
[0120]-节点2注册分组接收时间戳,并将后者写入到“接收时间戳”字段中
[0121]-如果将“标识符”字段的最重要比特设置为双向模式,则在其输出端口,节点2计算返回驻留时间,并更新时间戳答复消息的字段“返回驻留时间”。从而,将与该后一字段相关的L比特设置为1,以便保护其免于被重写(图4的步骤24)。
[0122]更一般地,在TTL=i (1=1,...,11-1)中的每个往返行程11-13,在单向模式和/或双向模式中,对节点i中的驻留时间进行测量,然后将其存储在探测消息报头中。因此,可在汇总表中为运营商显示每个节点的不同单向驻留时间(或单向等待时间)。
[0123]为此,网络节点i (i=2,...,n)包括
[0124]-用于一旦其检测到探测分组(也就是,由相关协议栈检测的)对来自其输入端口的探测分组的接收时间戳进行注册的设备;
[0125]-用于将接收时间戳写入到探测分组的字段中的设备;
[0126]-用于检查并比较探测分组的生存时间的值的设备;
[0127]-用于注册探测分组的发送时间戳(也就是,在分组离开相关协议栈进行发送的时亥IJ)的设备;
[0128]-用于计算并将分组单向驻留时间(注册的发送时间戳和接收时间戳之间的差别)写入到探测分组中的字段的设备;
[0129]-用于改变探测分组中标志的值以便保护计算的驻留时间值免于被针对探测消息的后续动作(被其它网络节点或所述节点自身)重写的设备;
[0130]-用于减小并比较探测分组的生存时间值的设备。
[0131]需要说明的是,如果节点接收到具有TTL在缩减I后严格地大于I的探测分组,则在无需驻留时间测量步骤情况下转发探测分组。
[0132]除了上述算法,关于MPLS-TP OAM的另一实施方式利用IETF文档“在环回模式(loopback mode)中操作 MPLS 传输简档 LSP”, 2010 年 3 月。
[0133]通过传送具有将TTL从I开始增加的源维持端点(MEP)直到到达远程/目的地MEP为止,执行不同的OAM环回。
[0134]为此目的定义MPLS-TP OAM嵌入的traceroute_delay (跟踪路由_延迟)消息。其格式(MPLS-TP traceroute_delay)如图4所示,并且其中:
[0135]-“出站/返回”指明消息方向:出站(值为0x00-等效于之前的“时间戳”消息)方向或返回方向(值为0x01-等效于之前的“时间戳答复”消息);
[0136]- “L比特”具有与之前在ICMP实施方式中描述相同的语义;
[0137]-“出站驻留时间”具有与之前在ICMP实施方式中描述相同的语义;
[0138]-“接收时间戳”具有与之前在ICMP实施方式中描述相同的目的;
[0139]-“返回驻留时间”具有与之前在ICMP实施方式中描述相同的语义;[0140]-“发起方发送时间戳”指示在源/发起方(根据发起方本地时钟)发送分组时的分组时间戳;
[0141]-“单向接收时间戳”指示在目的地节点(根据目的地节点本地时钟)接收分组时的分组时间戳。
[0142]最后两个字段允许traCer0Ute_delay()命令计算端到端的单向延迟(也就是,“单向接收时间戳“发起方发送时间戳”)。这假设目的地节点的时钟与发起方的时钟同步,其中精度符合测量要求。
[0143]“发起方发送时间戳”允许发起方在接收到返回消息时计算往返行程延迟。这强制地将“出站”消息(该消息等效于之前实施方式中的“时间戳”消息)的“发起方发送时间戳”字段拷贝到“返回”消息(该消息等效于之前实施方式中的“时间戳答复”消息)的“发起方发送时间戳”字段。
[0144]需要说明的是,在之前的ICMP实施方式中,发起方甚至在缺少“发起方发送时间戳”的情况下仍可测量往返行程延迟。例如,其可为每个消息标识符(也就是,“标识符”字段)值在本地(也就是,在其本地的上下文存储器中)记录相关的发送时间戳,并记录具有相同标识符的“时间戳答复”消息的接收时间戳。
[0145]需要说明的是,测量的连续往返行程时间允许traceroute_delay O命令通过从往返行程时间减去节点驻留时间(假设链路延迟是对称的)来计算全部链路延迟。
[0146]在每个协议层,独立于其它层地监测网络节点驻留时间。例如,在IP/以太网络中:
[0147]-1CMP/IP协议层记录分组接收时间(接收时间戳),以作为其可检测(从IP协议栈的角度)来自进入以太网MAC接口的进入分组的时刻;并且其记录分组发送时间(发送时间戳),以作为其将分组提交给外出以太网MAC接口的时刻;
[0148]-以太网OAM层记录分组接收时间(接收时间戳),以作为其可检测来自进入物理接口的进入分组的帧开始的时刻;并且其记录分组发送时间(发送时间戳),以作为当将分组提交给外出物理接口的时刻。
[0149]因此,对于指定的网络节点,在ICMP/IP层报告的平均驻留时间小于由以太网OAM层报告的平均驻留时间。对于后者(协议栈中最低的协议),可实现硬件时间戳记录。这种方式允许在指定节点内,分析对网络节点等待时间影响最大的协议层。在节点中每个层上的驻留时间测量方法是具体的实现,并且不在本发明的范围内。
[0150]需要说明的是,“时间戳答复”消息IP源地址不会给traceroute_delay O提供节点的IP地址(其中在该节点处测量外出和返回驻留时间),而提供出站路径上的下一节点的IP地址。为了获得节点IP地址,命令应当涉及之前的“时间戳答复”消息。
[0151]traceroute_delayO可使用传送探测消息的不同方法,例如
[0152]-逐个分组的:作为传统的跟踪路由(traceroute),也就是,传送探测消息,等待回答或超时,传送后续探测消息,等等;
[0153]-逐个节点的:为指定的节点传送多于一个的探测消息,其中在两个探测消息之间具有可配置的延迟(由运营商输入或由默认值指定),等待回答或超时,并且为下一节点重复相同的过程。
[0154]需要说明的是,命令可以是为诊断目的按要求执行,但也可在主动的方式中以定期的时间间隔自动执行,以便在客户检测到问题前快速反应。
[0155]traceroute_delay O命令还可包括在操作系统中,或封装到网络工具(诸如NetTools)中ο
[0156]需要说明的是,由于其涉及网络节点驻留时间测量,因此当驻留时间较小时,意味着小于几个ms的数量级,实际上没有需要进行节点时钟的同步。传统的低成本的IOOppm(百万分率)精度时钟(例如,以太网接口时钟)在自由运行时在IOms的驻留时间上带来I μ s的测量误差(100Χ10_6Χ10Χ10_3)(并且对于典型的10个节点的级联,分别是最大测量误差低于10 μ S)。
[0157]优选地,网络路径中节点驻留时间的知识允许识别不能提供可接受的延迟界限的节点。此外,其允许确定的和精确的将引入的延迟分配给网络链路或节点。
[0158]优选地,上述方法允许将端到端时间延迟分为2部分:网络片段(或链路)上的发送延迟和节点驻留时间。因此,当端到端单向(分别为双向)延迟超过SLA门限时,traceroute_delay O命令提供对允许指出(多个)网络片段或(多个)网络节点重新工作/重新设计的端到端单向(分别为双向)延迟的详细视图和分配。
【权利要求】
1.一种用于至少在网络路径内包括的网络节点中测量探测消息的驻留时间的方法,所述探测消息具有生存时间值,所述方法包括下列步骤: -注册探测消息的接收时间戳; -将接收时间戳写入到接收的探测消息内的专用字段; -检查探测消息的生存时间值; -如果生存时间值不为空,则将生存时间值缩减I ; -如果生存时间值等于1,那么: 〇注册探测消息的发送时间戳; 〇通过将注册的接收时间戳减去注册的发送时间戳,计算网络节点中的探测消息驻留时间; O将计算的驻留时间写入探测消息内的字段中; O改变接收的探测消息内的标志值,以便保护驻留时间免于被针对探测消息的后续动作所重写。
2.根据权利要求1所述的方法,进一步包括下列步骤: -如果生存时间值为空,则在缩减后 〇创建探测答复消息,在所述`探测答复消息中具有从探测消息复制的计算的驻留时间,其相关的标志值和探测消息标识符; 〇将创建的探测答复消息传送回探测消息的发起方。
3.根据权利要求1或2所述的方法,其中探测消息包括: -第一字段,用于携带在第一通信方向上所经过的网络节点中的探测消息驻留时间; -占位符,记录来自网络节点的输入端口的探测消息接收时间戳; -第一标志,防止针对探测消息的任何后续动作对第一字段的重写。
4.根据权利要求3所述的方法,其中探测消息进一步包括 -第二字段,用于携带其在与第一通信方向相对的第二通信方向上所经过的网络节点内的驻留时间; -第二标志,防止针对探测消息的任何后续动作对第二字段的重写。
5.根据权利要求3或4所述的方法,其中至少由探测消息中传递的字段来指示与通信方向相关的用于所经过的网络节点的信息。
6.根据权利要求1-5中任一项所述的方法,其中探测消息是经修改的互联网控制消息协议的消息。
7.根据权利要求1-5中任一项所述的方法,其中探测消息是经修改的操作管理维护消肩、O
8.一种网络节点,包括: -用于注册探测消息的接收时间戳的设备; -用于将接收时间戳写入接收的探测消息内的专用字段的设备; -用于检查探测消息的生存时间值的设备; -用于注册探测消息的发送时间戳的设备; -用于计算、随后将探测消息驻留时间写入探测消息内的字段中的设备,其中探测消息驻留时间是注册的发送时间戳和所写入的接收时间戳之间的差;-用于改变探测消息内的标志值以便保护所计算的驻留时间值免于被其它节点或当前节点自身针对探测消息的后续动作所重写; -用于缩减并比较探测消息的生存时间值的设备。
9.根据权利要求8所述的网络节点,进一步包括用于创建探测答复消息的设备,其中在探测答复消息中是从探测消息复制的信息。
10.根据权利要求9所述的网络节点,其中复制的信息包括所计算的驻留时间和探测消息的标识符。
11.一种包括存储在计算机和/或专用系统的存储器中的指令的计算机程序,其中所述计算机程序适于执行前述权利要求1-7所要求的方法。
12.根据权利要求11所述的计算机程序,其中输入包括网络节点的目的地地址。
13.根据权利要求11或12所述的计算机程序,其中输入包括服务质量或用于传输探测消息和相关的探测答复消息的服务规定类别。
14.根据权利要求11-13中任一项所述的计算机程序,其中输入包括单向模式或双向模式的指示。
15.根据权利要求11-14中任一项所述的计算机程序,进行编程以显示至少在网络路径内的、由权利要求1-7所要求的探测消息和相关的探测答复消息所经过的网络节点中的(多个)单向或双向驻留时间。
【文档编号】H04L12/26GK103563307SQ201280012788
【公开日】2014年2月5日 申请日期:2012年1月3日 优先权日:2011年1月12日
【发明者】D·T·布伊, M·勒帕莱克 申请人:阿尔卡特朗讯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1