一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

分组交换通信网络中的分组丢失测量的制作方法

2022-10-27 00:00:32 来源:中国专利 TAG:


1.本发明涉及通信网络领域。特别地,本发明涉及一种用于在分组交换通信网络中交换分组的方法、一种用于执行分组丢失测量的方法以及一种被配置为实现此类方法的分组交换网络。


背景技术:

2.在分组交换通信网络中,分组流通过可能的中间节点从源节点传输到目的地节点。分组交换网络的示例是ip(互联网协议)网络、以太网和mpls(多协议标签交换)网络。
3.分组不是总到达其目的地节点,即,它们可能在通过网络传输期间丢失。分组丢失是由于不同的原因。例如,节点或链路会发生故障,或者分组会被节点由于其端口拥塞而丢弃。而且,分组还会由于它们包含位(bit)错误而被节点丢弃。
4.当通信服务(特别地,实时语音或数据服务,诸如呼叫、会议呼叫、视频会议等)借助于分组交换网络提供时,关于携带该服务的分组流的分组丢失的性能测量提供对由该服务的最终用户察觉到的服务质量(qos)的指示。此外,分组丢失可能需要重传,于是降低了通信网络的效率。因此,测量通信网络中分组流的分组丢失对网络运营商来说是特别感兴趣的。
5.如已知的,quic(快速udp互联网连接)是一种传输层(层4)网络协议,其被设计为通过用户数据报协议(udp)支持两个端点(客户端和服务器)之间的多路复用的连接。为了使端点能够检测到可能的分组丢失,quic协议在每次端点接收到来自另一个端点的分组时都针对传输提供确认。当分组被传输并且在预定义的时间阈值内没有接收到确认时,所传输的分组被宣布丢失。
6.还提出了使得能够通过位于两个端点之间的中间观察器进行分组丢失测量的技术。
7.m.cociglio等人:internet draft"new spin bit enabled measurements with one or two more bits draft-cfb-ippm-spinbit-new-measurements-01",2019年7月1日,描述了一种往返分组丢失测量,由此客户端生成一系列标记的分组,分组具有设置为1的专用报头位(也称为丢失位)。服务器反映所述一系列标记的分组,所述一系列标记的分组然后由客户端再次反映,然后由服务器反映。因此,所述一系列标记的分组在客户端和服务器之间来回行进两次。位于客户端和服务器之间的观察器检测到在同一方向传输的所述一系列标记的分组两次,并基于所述一系列标记的分组每次通过的标记的分组的数量来计算往返分组丢失。
8.a.ferrieux等人:internet draft"packet loss signaling for encrypted protocols draft-ferrieuxhamchaoui-quic-lossbits-03",2020年1月16日,描述了quic协议的扩展,在分组报头中引入了两个位,即,q位(平方信号位)和l位(丢失事件位)。每个端点设置每个传出分组中q位的值。每n个传出分组(n通常为64)切换q位的值。每个端点还实现了未报告的丢失计数器,每次使用quic现有的丢失检测机制声明分组丢失时,该计数
器增加1。如果计数器为正,那么传出分组的l位设置为1,否则设置为0。每次传输l位等于1的分组时,计数器递减。位于两个端点之间的观察器对q位等于1或0和/或l位等于1或0的分组进行计数,并基于这些数字提供不同类型的单向分组丢失测量,包括端到端测量(即,从传输端点到接收端点的分组丢失)、上游测量(即,从传输端点到观察器的分组丢失)和下游测量(即,从观察器到接收端点的分组丢失)。


技术实现要素:

9.申请人已经意识到需要提供一种改进的技术以使中间观察器能够提供分组丢失测量,包括单向测量,诸如端到端测量、上游测量和下游测量之类。
10.根据a.ferrieux等人描述的技术,确实,每个端点在传出分组中设置的l位的值取决于quic机制,由此端点本身声明所传输的分组丢失,这进而取决于是否端点在预定义的时间阈值内从另一个端点接收到确认。
11.但是,没有接收到确认并不一定意味着所传输的分组实际上丢失。例如,确认本身可以丢失,或者由于拥塞,它可以在时间阈值到期之后在端点处被接收。在所有这些情况下,传输了分组的端点声明分组丢失,增加未报告的丢失计数器,然后将传出分组的l位设置为1。l位等于1的传出分组的数量可以不指示实际丢失的所传输分组的数量。因此,基于中间观察器检测到的l位等于1或0的分组计数的分组丢失测量可能不准确。
12.而且,如果端点和观察器由不同的实体管理,那么管理观察器的实体基本上无法控制端点声明分组丢失的机制。如果这种机制被管理端点的实体移除或修改,那么用于设置l位的机制可能不再起作用,并且基于l位的所有类型的分组丢失测量将变得不可行。
13.鉴于上述情况,申请人已经解决了提供用于交换分组的方法以及对分组交换通信网络的两个节点之间交换的分组执行分组丢失测量的方法的问题,从而克服了上述缺陷。
14.特别地,申请人已经解决了提供用于交换分组的方法以及对分组交换通信网络的两个节点之间交换的分组执行分组丢失测量的问题(例如—但不排他地—基于quic的连接的两个端点),它允许放置在两个节点之间的观察器提供准确的分组丢失测量,包括单向测量,诸如端到端测量、上游测量和下游测量之类。
15.根据本发明的实施例,这个问题通过一种方法解决,其中由两个节点交换的分组包括第一字段(本文也称为“标记字段”)和第二字段(本文也称为“反射的标记字段”)。两个节点中的每一个都设置其输出分组的标记字段的值,该值每n个传出分组在第一和第二值(例如,1和0)之间交替切换,n是预定义的整数。除此之外,至少其中一个节点根据从另一个节点接收的传入分组的标记字段的值来设置其传出分组的反射的标记字段的值。
16.两个节点的这种行为导致分组的以下交换。
17.第一节点(例如,基于quic的连接的客户端)每例如n=64个分组切换第一节点的要传输到第二节点(例如,基于quic的连接的服务器)的传出分组中的标记字段的值。因此,由第一节点传输的传出分组的流是n=64个分组的连续块的序列的形式,该序列包括标记字段等于1的分组的块,这些分组的块在时间上与标记字段等于0的分组的各块交替。
18.由于第二节点的行为方式相同,因此第一节点还从第二节点接收传入分组的连续块的序列,该序列包括标记字段等于1的分组的块,这些块在时间上与标记字段等于0的分组的各块交替。如果对于一个块没有分组丢失,那么由第一节点接收到的那个块中的传入
分组的数量等于n,否则小于n。
19.当第一节点接收到传入分组的这种流时,它根据从另一个节点接收到的传入分组的标记字段的值来设置其传出分组的反射的标记字段的值。例如,如果两个方向上的分组速率基本相同,那么第一节点可以将每个传入分组的标记字段的值复制到相应传出分组的反射的标记字段中。
20.放置在两个节点之间的观察器然后可以检测和计数从第一节点传输到第二节点的分组,它们的标记字段和反射的标记字段如上所述设置为0或1。先验地知道n的值,观察器可以使用此类分组计数来提供不同类型的分组丢失测量,包括单向测量,诸如端到端测量、上游测量或下游测量之类。
21.例如,通过计数标记字段等于1或0的分组的数量(例如,借助于两个单独的计数器),观察器可以为每个块提供从第一节点到观察器的分组丢失测量。
22.此外,观察器还可以对反射的标记字段等于1或0的分组的数量进行计数(例如,借助于两个单独的计数器)。由于从第一节点传出的这些分组中的反射的标记字段的值与从第二节点在第一节点处传入的分组中的标记字段的值相关,因此这个数字考虑了在从第二节点到第一节点的传输期间发生的可能分组丢失和在从第一节点到观察器的传输期间发生的可能分组丢失。然后观察器可以为每个块提供从第二节点到第一节点并进一步到观察器的分组丢失测量。
23.以上测量可以组合(如果观察器是双向的,那么可能与在相反方向提供的类似测量组合)以提供另外类型的测量,诸如端到端测量和/或下游测量之类。如果可以在两个节点之间实现多个观察器,那么可以提供其它类型的测量。
24.可以认识到的是,这些分组丢失测量—特别是那些基于或涉及反射的标记字段的测量—有利地是非常准确的。
25.由于如上面所讨论的第一节点根据从第二节点传入的分组中的标记字段的值来设置其传出分组中的反射的标记字段的值,因此如观察器检测到的反射的标记字段等于1或0的分组的数量指示由第二节点传输的实际上丢失了的分组的数量,意思是它们没有被第一节点接收。其它导致节点声明分组丢失的事件(诸如来自其它节点的确认的丢失或在时间阈值过去后接收到确认)对传出分组中反射的标记字段位的值没有影响。
26.而且,反射的标记字段的值独立于节点声明分组丢失的机制,或出于使观察器能够执行根据本发明的测量之外而提供的节点的任何其它内部机制。因此,有利地,执行分组丢失测量的实体对分组丢失测量实施方式具有更高的控制,因为它仅依赖于在节点处实现的专用机制(即,交替标记和反射),用于支持此类测量的特定目的。
27.根据第一方面,本发明提供了一种用于在分组交换通信网络的两个节点之间交换分组的方法,每个分组包括标记字段和反射的标记字段,所述方法包括:
28.a)由所述两个节点中的每个节点,设置要传输到另一个节点的传出分组中的所述标记字段的值,所述值每n个传出分组在第一标记值和第二标记值之间交替切换,n是预定义的整数;
29.以及
30.b)由所述两个节点中的至少一个节点,在从另一个节点接收到传入分组的同时,根据所述传入分组的标记字段的值设置所述传出分组的所述反射的标记字段的值。
31.所述传入分组携带由所述传入分组中所述标记字段的值的序列构成的标记信号,并且所述传出分组携带由所述传出分组中所述反射的标记字段的值的序列构成的反射的标记信号,并且步骤b)优选地包括响应于所述标记信号的至少一个周期的接收而传输所述反射的标记信号的至少一个周期。
32.优选地,步骤b)包括根据所述标记信号的周期的宽度来设置所述反射的标记信号的周期的宽度,所述宽度被表达为每个周期的分组的数量。
33.根据实施例,在步骤b)处,传输所述反射的标记信号的周期包括:
34.b1)当发起所述反射的标记信号的所述周期的传输时,将所述反射的标记信号的所述周期的宽度设置为等于其接收已完成的所述标记信号的最后一个周期的宽度;以及
35.b2)如果在所述反射的标记信号的所述周期的传输终止之前完成了所述标记信号的至少一个另外的周期的接收,那么基于所述标记信号的所述至少一个另外的周期的宽度来更新所述反射的标记信号的所述周期的宽度。
36.优选地,在步骤b2)处更新诉讼湖反射的标记信号的所述周期的宽度包括将所述反射的标记信号的所述周期的宽度设置为等于所述标记信号的所述至少一个另外的周期的平均宽度。
37.优选地,步骤b)包括响应于所述标记信号的一个周期的接收而传输所述反射的标记信号的r个周期,r是近似于所述传出分组的传输速率与所述传入分组的接收速率之间的比率的整数。
38.在这种情况下,所述反射的标记信号的所述r个周期中的每个周期的宽度等于所述标记信号的所述一个周期的宽度,所述宽度被表达为每个周期的分组的数量。
39.可替代地,步骤b)包括响应于所述标记信号的r个周期的接收而传输所述反射的标记信号的一个周期,r是近似于所述传入分组的接收速率与所述传出分组的传输速率之间的比率的整数。
40.在这种情况下,所述反射的标记信号的所述一个周期的宽度等于所述标记信号的所述r个周期的宽度的平均值,所述宽度被表达为每个周期的分组的数量。
41.根据第二方面,本发明提供一种用于对在分组交换通信网络的两个节点之间交换的分组执行分组丢失测量的方法,每个分组包括标记字段和反射的标记字段,所述方法包括如上阐述的方法的步骤以及:
42.c)由观察器设备,检测所述传出分组,基于所检测到的传出分组中的所述标记字段的值提供第一参数,并基于所检测到的传出分组中的所述反射的标记字段的值提供第二参数,并基于所述数n结合所述第一参数和/或所述第二参数执行所述分组丢失测量。
43.根据第三方面,本发明提供了一种分组交换通信网络,包括用于交换分组的两个节点,每个分组包括标记字段和反射的标记字段,其中:
[0044]-所述两个节点中的每个节点被配置为设置要传输到另一个节点的传出分组中的所述标记字段的值,所述值每n个传出分组在第一标记值和第二标记值之间交替切换,n是预定义的整数;以及
[0045]-所述两个节点中的至少一个节点被进一步配置为在从另一个节点接收到传入分组的同时,根据所述传入分组的标记字段的值设置所述传出分组的所述反射的标记字段的值。
[0046]
优选地,分组交换通信网络还包括观察器设备,所述观察器设备被配置为检测所述传出分组,基于所检测到的传出分组中的所述标记字段的值提供第一参数,并基于所检测到的传出分组中的所述反射的标记字段的值提供第二参数,并基于所述数n结合所述第一参数和/或所述第二参数执行所述分组丢失测量。
附图说明
[0047]
通过以下以示例而非限制的方式给出的详细描述,本发明将变得更加清楚,该详细描述将参考附图进行阅读,其中:
[0048]-图1示意性地示出了根据本发明的实施例的被配置为交换分组以便使得能够进行往返分组丢失测量的分组交换通信网络;
[0049]-图2示意性地示出了根据本发明实施例的在图1的通信网络中交换的分组的结构;
[0050]-图3示出了由从根据本发明实施例操作的节点传出的分组流携带的示例性标记信号和反射的标记信号;
[0051]-图4示意性地示出了由根据本发明实施例操作的两个节点交换的示例性标记信号和反射的标记信号;
[0052]-图5示出了可以由放置在图4的两个节点之间的中间观察器执行的示例性测量;
[0053]-图6是由根据本发明有利实施例的每个节点执行的反射机制的流程图;以及
[0054]-图7(a)和7(b)示出了由根据图6的流程图操作的节点提供的示例性传入标记信号和传出标记信号。
具体实施方式
[0055]
本发明优选实施例的详细描述
[0056]
图1示意性地示出了根据本发明的实施例的被配置为交换分组以便使得能够进行分组丢失测量的分组交换通信网络100。
[0057]
通信网络100包括根据任何已知拓扑通过物理链路相互互连的多个节点,包括图1中所示的两个节点1和2。节点1和2可以通过单个物理链路或通过若干物理链路和中间节点(图中未示出)的级联连接。通信网络100可以是例如ip网络。
[0058]
节点1被配置为向节点2传输分组pk,而节点2被配置为向节点1传输分组pk'。分组pk可以属于同一个分组流(即,它们都可以具有相同的源地址和相同的目的地地址),或者可以属于其路径在节点1和2之间重叠的不同分组流。类似地,分组pk'可以属于同一个分组流或属于其路径在节点2和1之间重叠的不同分组流。
[0059]
分组pk、pk'根据特定的网络协议被格式化。作为非限制性示例,网络协议可以是上面提到的quic协议或tcp(传输控制协议)。
[0060]
如图2中示意性描绘的,每个分组pk、pk'包括有效载荷pl和报头h(或属于不同网络层的更多报头,例如ip报头和quic报头)。有效载荷pl包括用户数据。报头h包括分组转发信息(图2中未示出),即,允许网络100的节点适当地处置分组pk、pk'以便它们到达其目的地节点的信息。
[0061]
根据本发明的实施例,每个分组pk、pk'优选地包括第一字段(本文也称为“标记字
段”)mf和第二字段(本文也称为“反射的标记字段”)rmf。标记字段mf和反射的标记字段rmf可以是包括分组转发信息的相同报头h的一部分,如图2中所示。根据其它实施例,标记字段mf和反射的标记字段rmf可以位于分组pk',pk'的其它部分中。例如,如果分组pk、pk'包括除了报头h之外的其它报头,那么标记字段mf和反射的标记字段rmf可以被包括在任何此类另外的报头中。例如假设分组pk、pk'包括ip报头h—包括分组转发信息—和quic报头,标记字段mf和反射的标记字段rmf可以被包括在quic报头中。
[0062]
每个字段mf、rmf包括一个或多个位。每个字段mf、rmf可以被设置为第一标记值va(例如,在一位字段mf、rmf的情况下为0)和第二标记值vb(例如,在一位字段mf、rmf的情况下为1)中的任何一个。
[0063]
根据本发明的实施例,每个节点1、2优选地设置要传输到另一个节点2、1的每个传出分组pk、pk'的标记字段mf的值,以实现交替标记技术。特别地,每个节点1、2优选地每n个传出分组pk、pk'在第一和第二标记值va、vb之间切换标记字段mf的值。优选地,数n是预定义的整数。更优选地,数n是2的幂,例如26=64。数n可以是固定的或可以是可变的。特别地,根据变体,节点1、2可以改变离散整数集合中的数n,该集合的每个整数是2的幂。
[0064]
由两个节点1和2实现的交替标记机制不一定相互同步,即,每个节点1、2独立于其它节点2、1的行为、仅基于其传出分组的数量自主决定何时应切换适用于其传出分组pk、pk'的标记值。
[0065]
于是,由每个节点1、2传输的传出分组pk、pk'的流是n个分组的连续块的序列的形式,该序列包括标记字段mf等于va的n个分组pk、pk'的块,其与标记字段mf等于vb的n个分组块pk、pk'在时间上交替。
[0066]
由于两个节点1、2的行为方式相同,因此每个节点1、2还从另一个节点2、1接收分组pk'、pk的连续块的序列的形式的传入分组pk'、pk的流,该序列包括具有标记字段mf等于va的分组pk'、pk的块,其与标记字段mf等于vb的分组pk'、pk的块在时间上交替。如果对于一个块没有分组丢失,那么那个块中传入分组pk',pk的数量等于n,否则小于n。
[0067]
虽然节点1、2在其传出分组pk、pk'上实现上述交替标记并从另一个节点2、1接收传入分组pk'、pk的流,但它还优选地实现反射机制,由此它根据传入分组pk,pk'的标记字段mf的值设置其传出分组pk,pk'的反射的标记字段rmf的值。假设两个方向上的分组传输速率相同,由每个节点1、2执行的反射可以提供例如将每个传入分组pk'、pk的标记字段mf的值va或vb复制到相应传出分组pk、pk'的反射的标记字段rmf中。
[0068]
如上面所提到的,这种反射优选地与节点1、2对传出分组pk、pk'执行的标记字段mf的连续交替设置并行执行。因此,每个传出分组pk、pk'中的标记字段mf和反射的标记字段rmf的值是不相关的,第一者单独由交替标记机制规定,而第二者代替地单独由反射机制规定。
[0069]
因此,由每个节点1、2传输的传出分组pk、pk'的流基本上携带两个不相关的信号,即,由其标记字段mf的值的序列组成的标记信号ms和由其反射的标记字段rmf的值的序列组成的反射的标记信号rms。这两个信号二者都呈在va和vb之间切换的方波的形式。
[0070]
图3是示出由节点1、2传输的传出分组pk、pk'的流携带的示例性标记信号和反射的标记信号的图。
[0071]
由于节点1、2每n个传出分组切换标记字段mf的值,标记信号ms是周期性方波,其
中每个周期的宽度等于n,该宽度被表达为每个周期的分组数量。因此,标记信号ms的周期为2n,占空比为50%。
[0072]
代替地,由于反射的标记字段rmf是根据传入分组pk'、pk的标记字段mf设置的,因此其特征取决于此类分组pk'、pk在从另一个节点2、1到节点1、2传输期间所经历的分组丢失。一般而言,反射的标记信号rms不是周期性的(periodic)并且每个周期(cycle)的宽度(表达为每个周期的分组数量)取决于如从另一个节点2,1传输的在与那个周期对应的块中丢失的分组数量pk'、pk。举例来说,图3示出了其中一些周期的宽度等于n(意味着没有分组pk',pk在对应的块中丢失)而其它一些循环的宽度低于n的情况(意味着一个或多个分组pk',pk在对应的块中丢失)。
[0073]
图4示出了由每个节点1和2传输的(即,由其传输的分组流携带的)示例性标记信号和反射的标记信号。
[0074]
如图4中所描绘的,节点1传输方波标记信号ms1,其周期为2n,占空比为50%。由于分组pk在从节点1到节点2的传输期间发生分组丢失,标记信号ms1可能失去其周期性,使得节点2接收到的标记信号ms1'看起来失真。节点2将这种标记信号ms1'反射成具有相同形状的反射的标记信号rms2(假设两个方向上的分组速率相等),然后将其传输到节点1。
[0075]
同时,节点2也向节点1传输周期为2n且占空比为50%的方波标记信号ms2。由于分组pk'在从节点2到节点1的传输期间发生分组丢失,因此标记信号ms2可能失去其周期性,使得节点1接收到的标记信号ms2'看起来失真。节点1将这种标记信号ms2'反射成具有相同形状的反射的标记信号rms1(假设两个方向上的分组速率相等),然后将其传输到节点2。
[0076]
放置在节点1和2之间的观察器10然后可以检测从节点1传输到节点2的分组pk的流和/或从节点2传输到节点1的分组pk'的流,并且基于此类流携带的标记信号ms和反射的标记信号rms提供不同类型的分组丢失测量,包括单向测量,诸如端到端测量、上游测量或下游测量之类。
[0077]
图5示出了三个示例性情况,其中使用三种不同类型的观察器。
[0078]
图5(a)示出了观察器10能够仅检测从节点1传输到节点2的分组pk的流,然后仅检测标记信号ms1和反射的标记信号rms1的情况。因而,观察器10可以仅基于这种信号提供分组丢失测量。
[0079]
例如,观察器10可以实现两对计数器,即,分别对标记字段mf等于va和vb的分组pk的数量进行计数的第一对计数器cam、cbm;以及对反射的标记字段rmf分别等于va和vb的分组pk的数量进行计数的第二对计数器ca
rm
、cb
rm

[0080]
通过先验地知道n的值并使用第一对计数器cam、cbm,观察器10可以提供从传输节点1到观察器10的分组丢失测量pl(1

10),例如以同一申请人的名义的wo 2010/072251所述的。
[0081]
另外,通过先验地知道n的值并使用第二对计数器ca
rm
、cb
rm
,观察器10可以提供从节点2到节点1并进一步到观察器10的分组丢失测量pl(2
→1→
10)。由于传出分组pk中的反射的标记字段rmf通过在节点1处反射从节点2传入的分组pk'中的标记字段mf获得,计数器ca
rm
、cb
rm
实际上考虑了在从节点2到节点1的传输期间发生的关于分组pk'的可能的分组丢失以及在分组pk从节点1到观察器10的传输期间发生的可能分组丢失。而且在这种情况下,可以根据同一申请人名下的wo 2010/072251执行测量。
[0082]
图5(b)示出了观察器10能够仅检测从节点2传输到节点1的分组pk'的流,然后仅检测标记信号ms2和反射的标记信号rms2的情况。因而,观察器10可以仅基于这样的信号提供分组丢失测量。
[0083]
操作可以与上面描述的相同,即,观察器10可以实现两对计数器(第一对计数器对标记字段mf分别等于va和vb的分组pk'的数量进行计数;并且第二对计数器对反射的标记字段rmf分别等于va和vb的分组的数量pk'进行计数),并使用此类计数器的值,例如,如同一申请人名下的wo 2010/072251所述,以提供从传输节点2到观察器10的分组丢失测量pl(2

10)和/或从节点1到节点2并进一步到观察器10的分组丢失测量pl(1
→2→
10)。
[0084]
图5(c)示出了观察器10能够检测分组pk的流和分组pk'的流两者的情况。观察器10可以相应地提供以上结合图5(a)和5(b)描述的所有分组丢失测量。可以组合此类测量以提供进一步的分组丢失测量。
[0085]
例如,观察器10两侧的半往返测量(即,从观察器10到节点1或2再返回到观察器10)可以由观察器10计算为:
[0086]-pl(10
→1→
10)=pl(2
→1→
10)-pl(2

10);以及
[0087]-pl(10
→2→
10)=pl(1
→2→
10)-pl(1

10)。
[0088]
此外,端到端测量(即,从节点1到节点2,反之亦然)可以由观察器10计算为:
[0089]-pl(2

1)=pl(2
→1→
10)-pl(1

10);以及
[0090]-pl(1

2)=pl(1
→2→
10)-pl(2

10)。
[0091]
此外,下游测量(即,从观察器10到接收节点1或2)可以由观察器10计算为:
[0092]-pl(10

2)=pl(1

2)-pl(1

10);以及
[0093]-pl(10

1)=pl(2

1)-pl(2

10)。
[0094]
可以认识到的是,观察器10可以在节点1或节点2处实现。在这种情况下,以上仅基于标记字段mf的分组丢失测量是端到端测量,而仅基于反射的标记字段rmf的分组丢失测量是往返测量。
[0095]
在任何情况下,可以认识到的是,这些分组丢失测量—特别是基于或涉及分组pk和/或pk'中的反射的标记字段rmf的值的那些—有利地是非常准确的。
[0096]
由于如上面所讨论的在每个节点1、2处传出分组pk、pk'中的反射的标记字段rmf的值是根据从另一个节点2、1传入的分组pk'、pk中的标记字段mf的值设置的,因此由观察器10检测到的具有等于va或vb的反射的标记字段rmf的分组pk、pk'的数量指示由另一个节点2、1传输的实际上丢失了的分组pk'、pk的数量。导致节点1和节点2声明分组丢失的其它事件(诸如来自另一个节点的确认的丢失或超过时间阈值之后接收到确认)对传出分组pk,pk'中反射的标记字段rmf的值没有影响。
[0097]
而且,反射的标记字段rmf的值独立于节点1和2声明分组pk或pk'丢失的任何机制(例如,上述由quic协议提供的机制)或出于使观察器10能够执行上述测量之外的目的而提供的节点1和2的任何其它内部机制。因此,有利地,执行分组丢失测量的实体对测量实施方式具有更高的控制,因为它仅依赖于在节点1、2处实现的专用机制(即,交替标记和反射),用于支持此类测量的特定目的。
[0098]
在以上描述中,假设两个方向上的分组传输速率基本相同。这允许例如通过将每个传入分组pk'、pk的标记字段mf的值复制到对应传出分组pk'、pk'的反射的标记字段rmf
中来实现反射机制。
[0099]
但是,一般而言,两个方向上的分组传输速率可以彼此非常不同。例如,在基于quic的连接上,服务器的分组传输速率可以远高于客户端的分组传输速率(例如,从2:1到10:1)。在这种情况下,两个节点处的反射机制就变得至关重要。实际上,在分组传输速率较低的节点处,要被反射的传入分组将无限期地累积。除此之外,在分组传输速率较高的节点处,反射机制将是不连续的。在任何情况下,反射机制都无法正常操作并且也无法执行分组丢失测量。
[0100]
申请人已经意识到可以通过根据图6中所示的流程图在每个节点1、2处实现反射步骤来解决上述缺点。
[0101]
如图6中所描绘的,当分组丢失测量开始时,节点1、2最初将传出分组pk、pk'中的反射的标记字段rmf的值设置为初始值(例如,va)(步骤600)。
[0102]
当测量会话开始时,节点1和2都开始根据交替标记技术设置它们的传出分组pk、pk'的标记字段mf,如上所述。因此,每个节点1、2开始接收来自另一个节点的传入分组pk'、pk'的流,其携带标记信号ms'。
[0103]
当节点1、2完成标记信号ms'的第一周期的接收(步骤601)时,它优选地将平均周期宽度av(宽度表达为每个周期的分组数量)设置为等于其接收已经完成的标记信号ms'的最后一个周期的宽度(宽度表达为每个周期的分组数量)(即,在第一次迭代处,第一周期的宽度n0)(步骤602)。
[0104]
随着在开始测量会话之后传入分组pk'、pk的标记字段mf中的值的第一改变,节点1、2可以在步骤601处确定标记信号ms'的第一周期的接收的完成。下文将提供关于步骤601的实施方式的进一步细节。
[0105]
节点1、2然后切换适用于将须从该时刻开始传输的传出分组pk、pk'上的反射的标记字段rmf的标记值(步骤603)。
[0106]
然后,对于要被传输的每个传出分组pk、pk'(步骤604),节点1、2优选地将其反射的标记字段rmf设置为在步骤603处确定的当前适用的标记值(步骤605)。只要自上次切换步骤603以来反射的标记字段rmf已被设置为等于适用的标记值的传出分组pk、pk'的数量低于平均周期宽度av(步骤606),节点1、2就优选地继续使用当前适用的标记值,从而传输反射的标记信号rms的周期。
[0107]
代替地,当节点1、2确定这种数量已经变得等于平均周期宽度av时,节点1、2优选地终止反射的标记信号rms的当前周期并开始新周期。开始反射的标记信号rms的新周期包括返回到步骤602和603,即,将平均周期宽度av的值设置为等于其接收已完成的标记信号ms'的最后一个周期的宽度并再次切换适用的标记值。节点1、2然后重复循环604-605-606以传输反射的标记信号rms的新周期。
[0108]
以上步骤循环重复,直到测量会话的结束(步骤609)。
[0109]
在执行以上步骤的同时,节点1、2继续从另一个节点2、1接收标记信号ms'。在循环604-605-606的每次迭代期间,节点1、2优选地更新相应地在检查606处使用的平均周期宽度av的值。
[0110]
特别地,如上所述,在步骤602的每次迭代发起反射的标记信号rms的新周期时,节点1、2最初将av的值设置为等于其接收已完成的标记信号ms'的最后一个周期的宽度。如果
在循环604-605-606的对应迭代期间节点1、2完成了标记信号ms'的另外的循环的接收(步骤607),那么节点1、2优选地基于该另外的周期的宽度更新平均周期宽度av的值(步骤608)。
[0111]
随着传入分组pk'、pk的标记字段mf中的值的改变,节点1、2可以在步骤607处确定标记信号ms'的周期的接收的完成。下文将提供关于步骤607的实施方式的进一步细节。
[0112]
步骤608优选地包括通过将在步骤602处设置的其初始值与另外的接收到的周期的宽度求平均来更新平均周期宽度av的值。每次在循环604-605-606的迭代结束之前完成标记信号ms'的另外的周期的接收时,优选地递归重复这种求平均。
[0113]
因此,如果在步骤602处平均周期宽度av最初被设置为其接收已完成的标记信号ms'的最后一个周期的宽度n0,并且在循环604-605-606的对应迭代期间,节点1、2完成对宽度为n1的第一另外的周期的接收(步骤607),那么将av更新为av=(n0 n1)/2(步骤608)。如果在循环604-605-606的同一迭代期间,节点1、2完成了宽度为n2的第二另外的周期的接收(步骤607),那么av被更新为av=(n0 n1 n2)/3(步骤608)。依此类推,直到循环604-605-606的迭代终止(步骤606的检查是否定的)并且节点1、2返回到步骤602,从而为av设置新值。
[0114]
这种用于在循环604-605-606的每次迭代开始时设置av并在同一迭代期间更新其值的机制有利地允许提供反射机制,该反射机制在两个方向上的分组传输速率不同时也可以正确操作。
[0115]
图7(a)和7(b)示出了在两种不同的场景中作为执行图6的流程图的结果,在节点1、2处接收到的示例性标记信号ms'和由节点1、2提供的反射的标记信号rms。横坐标轴指示时间。
[0116]
图7(a)图示了节点1、2的分组传输速率低于其它节点2、1的分组传输速率的情况。例如,假设节点1、2的分组传输速率是另一个节点2、1的分组传输速率的一半。因此,在节点1、2处传入的分组pk'、pk的速率是从节点1、2传出的分组pk、pk'的速率的两倍。传入分组pk'、pk携带标记信号ms'。标记信号ms'的周期的宽度(以传入分组的数量表达)被指示为n0、n1、n2、n3等。
[0117]
当测量会话开始时,节点1、2最初将传出分组pk、pk'中的反射的标记字段rmf的值设置为初始值va或vb(步骤600)。当节点1、2完成标记信号ms'的第一周期的接收时(步骤601),它设置平均周期宽度av等于其宽度n0(步骤602)并切换适用的标记值(步骤603)。
[0118]
然后,节点1、2开始将反射的标记字段rmf设置为当前适用的标记值(循环604-605-606)。由于传入分组速率高于传出分组速率,因此在反射的标记字段rmf已设置为等于当前适用的标记值的传出分组的数量达到av=n0之前就已完成宽度为n1的标记信号ms'的第二周期的接收(步骤607)。因此,节点将av的值更新为av=(n0 n1)/2(步骤608)。
[0119]
当反射的标记字段rmf已被设置为等于当前适用的标记值的传出分组的数量达到av=(n0 n1)/2时,节点1、2终止反射的标记信号rms的第一周期并开始第二周期,通过将平均周期宽度av设置为等于其接收已完成的标记信号ms'的最后一个周期的宽度n2(步骤602)并切换适用的标记值(步骤603)。
[0120]
然后,节点1、2开始将反射的标记字段rmf设置为当前适用的标记值(循环604-605-606)。由于传入分组速率再次高于传出分组速率,因此在反射的标记字段rmf已被设置
为等于当前适用的标记值的传出分组的数量达到av=n2之前就已完成宽度为n3的标记信号ms'的第四周期的接收(步骤607)。因此,节点将av的值更新为av=(n2 n3)/2(步骤608)。
[0121]
当反射的标记字段rmf已被设置为等于当前适用的标记值的传出分组的数量达到av=(n2 n3)/2时,节点1、2如上所述终止反射的标记信号rms的第二周期。依此类推。
[0122]
因此,节点1、2基本上将接收到的标记信号ms'的r个连续周期“合并”为反射的标记信号rms的单个周期,其宽度是r个合并的周期的宽度的平均值。合并的周期的数量r基本上是整数,近似于两个方向上的分组速率之间的比率(在图7(a)的示例性情况下r=2)。因此,反射的标记信号rms的周期的持续时间基本上等于接收到的标记信号ms'的r个合并的周期的累积持续时间。这有利地允许避免在要在节点1、2处反射的传入分组pk'、pk中的反射的标记字段rmf的值的无限累积,该无限累积会使节点1、2处的反射机制拥塞并阻止分组丢失测量正常操作。
[0123]
图7(b)图示了节点1、2的分组传输速率高于其它节点2、1的分组传输速率的情况。例如,假设节点1、2的分组传输速率是另一个节点2、1的分组传输速率的两倍。因此,在节点1、2处传入的分组pk'、pk的速率是从节点1、2传出的分组pk、pk'速率的一半。传入分组pk',pk携带标记信号ms'。标记信号ms'的周期的宽度(以传入分组的数量表达)被指示为n0、n1、n2、n3等。
[0124]
当测量会话开始时,节点1、2最初将传出分组pk、pk'中的反射的标记字段rmf的值设置为初始值va或vb(步骤600)。当节点1、2完成标记信号ms'的第一周期的接收时(步骤601),它设置平均周期宽度av等于其宽度n0(步骤602)并切换适用的标记值(步骤603)。
[0125]
然后,节点1、2开始将反射的标记字段rmf设置为当前适用的标记值(循环604-605-606)。由于传入分组速率低于传出分组速率,因此在反射的标记字段rmf已设置为等于当前适用的标记值的传出分组的数量达到av=n0之前,节点1、2尚未完成标记信号ms'的任何周期的接收。因此,节点1、2在反射的标记信号rms的第一周期的传输期间不执行对av=n0的值的任何更新。
[0126]
当反射的标记字段rmf已设置为等于当前适用的标记值的传出分组的数量达到av=n0时,节点1、2终止反射的标记信号rms的第一周期,并通过设置平均周期的宽度av等于其接收已完成的标记信号ms'的最后一个周期的宽度来开始第二周期,该平均周期宽度av仍然是n0(步骤602),并且切换适用的标记值(步骤603)。
[0127]
然后,节点1、2开始将反射的标记字段rmf设置为当前适用的标记值(循环604-605-606)。再次,在反射的标记字段rmf已被设置为等于当前适用的标记值的传出分组的数量达到av=n0之前,节点1、2尚未完成标记信号ms'的任何周期的接收。因此,节点1、2在反射的标记信号rms的第二周期的传输期间也不执行av=n0的值的任何更新。
[0128]
然后节点1、2终止反射的标记信号rms的第二周期,并通过将平均周期宽度av设置为等于其接收已完成的标记信号ms'的最后一个周期的宽度n1来开始第三周期(步骤602)并切换适用的标记值(步骤603)。
[0129]
同样在第三周期期间,在反射的标记字段rmf已被设置为等于当前适用的标记值的传出分组的数量达到av=n1之前,节点1、2尚未完成标记信号ms'的任何周期的接收。因此,节点1、2在反射的标记信号rms的第三周期的传输期间也不执行av=n1的值的任何更新。
[0130]
然后节点1、2终止反射的标记信号rms的第三周期,并通过将平均周期宽度av设置为等于其接收已完成的标记信号ms'的最后一个周期的宽度来开始第四周期,该平均周期宽度av再次是n1(步骤602),并切换适用的标记值(步骤603)。
[0131]
同样在第四周期期间,在反射的标记字段rmf已被设置为等于当前适用的标记值的传出分组的数量达到av=n1之前,节点1、2尚未完成标记信号ms'的任何周期的接收。因此,节点1、2在反射的标记信号rms的第四周期的传输期间也不执行av=n1的值的任何更新。
[0132]
节点1、2然后如上所述终止反射的标记信号rms的第四周期(步骤602、603)。依此类推。
[0133]
因此,节点1、2基本上将标记信号ms'的每个周期“复制”成反射的标记信号rms的r个周期,其宽度(就分组的数量而言)全都等于接收到的周期的宽度。重复的周期的数量r基本上是个整数,近似于两个方向上的分组速率之间的比率(在图7(b)的示例情况下的r=2)。因此,反射的标记信号rms的r个重复周期的累积持续时间基本上等于接收到的标记信号ms'的对应周期的持续时间。这有利地允许避免反射机制中的中断,该中断会阻止分组丢失测量正确操作。
[0134]
而且,当根据图6的算法实现反射时,观测器10可以基于在任一方向上(参见图5(a)和5(b))或在两个方向上(参见图5(c))传输的标记信号ms和反射的标记信号rms来执行分组丢失测量。由于两个方向上的分组传输速率不同,因此为了组合从按照相反方向传输的信号导出的分组丢失测量,观察器10优选地在组合它们之前计算它们的平均值。这保证组合的分组丢失测量是一致的,但是两个方向上的分组传输速率不同。
[0135]
还应该注意的是,基于反射的标记字段rmf的值的分组丢失测量相对于基于标记字段mf的值的分组丢失测量表现出延迟,这是由于反射机制本身引入的延迟,该延迟仅在标记信号rm'的第一周期的接收完成之后开始。在使用这两个信号获得的分组丢失测量的情况下,这种延迟引入与第一测量时段相关的测量结果的不准确。因此,这种测量优选地被丢弃。
[0136]
在步骤601和607处,节点1、2完成标记信号ms'的周期的接收。在这两个步骤中,当节点1、2检测到包括在传入分组pk'、pk的标记字段mf中的标记值的改变时,节点1、2可以断定标记信号ms'的周期的接收完成。
[0137]
但是,涉及在标记信号ms的两个周期之间的边界处的传入分组pk'、pk的接收序列错误可以发生。
[0138]
为了管理此类错误,节点1、2可以等待接收到具有下一个标记值的预定义数量的传入分组pk'、pk(例如,5个传入分组),然后断定前一个周期的接收完成。
[0139]
否则,节点1、2可以在接收到具有下一个标记值的第一传入分组pk'、pk时断定标记信号ms'的周期的接收完成。这允许避免在反射机制中引入延迟。但是,另一方面,具有先前标记值的迟到的传入分组pk'、pk将被计为标记信号ms'的下一个周期的一部分,然后其宽度将增加并且也可以高于n。如果n不是固定的(例如,它可以在包括2的不同幂的离散范围内变化),那么观察器10优选地设有阈值机制,从而允许它确定-对于其宽度高于n的反射的标记信号rms的每个周期-是否包括迟到的分组pk'、pk的反射,或者数量n是否已增加,例如,增加到2的更高次幂。
[0140]
根据图6中的算法的第一变体,在步骤606处的检查提供将反射的标记字段rmf已设置为等于适用的标记值的传出分组的数量与四舍五入为最接近整数的av值进行比较。由于av的值的更新(步骤607-608),在步骤608处执行的标记信号ms'的相关周期的宽度的平均值实际上可以提供非整数。
[0141]
另外,由于对av的值进行四舍五入可能引入误差,因此根据另一个变体,这种误差可以如下被最小化。
[0142]
变量re被初始化为0,并且在循环604-605-606的每次迭代结束时,它被更新为re=round(av re)-av。然后,re的这个值将用于循环604-605-606的下一次迭代的检查606,在那里反射的标记字段rmf已设置为等于适用的标记值的传出分组的数量将与av的四舍五入值加上re的值进行比较。
[0143]
根据又一个变体,每次完成标记信号ms'的周期的接收时更新平均周期宽度av的值的步骤608优选地提供了从平均计算中排除在反射的标记信号rms的最后一个周期的传输期间其接收已完成的标记信号ms'的最后一个周期的宽度,如果那个宽度已经用于在反射的标记信号rms的最后一个周期的传输期间更新av的值的话。这优选地对循环604-605-606的每次迭代执行,第一次除外。
[0144]
同样根据上述变体,基于或涉及传出分组pk、pk'中的反射的标记字段rmf的值的分组丢失测量有利地是非常准确的。
[0145]
同样根据这些变体,实际上,在每个节点1、2处,传出分组pk、pk'中的反射的标记字段rmf的值是根据从其它节点2、1传入的分组pk'、pk中的标记字段mf的值来设置的。因此,由观察器10检测到的具有等于va或vb的反射的标记字段rmf的分组pk、pk'的数量指示由另一个节点2、1传输的实际上丢失了的分组pk'、pk的数量。导致节点1和2声明分组丢失的其它事件(诸如来自另一个节点的确认的丢失或超过时间阈值后接收到确认)对传出分组pk,pk'中的反射的标记字段rmf的值没有影响。
[0146]
而且,反射的标记字段rmf的值与节点1和2声明分组pk或pk'丢失的任何机制(例如,上述由quic协议提供的机制)或节点1和2的在其管理实体的独占控制下的任何其它内部机制无关。因此,有利地,管理观察器10的实体具有对分组丢失测量实施方式的完全控制。
[0147]
申请人估计所描述的方法提供了准确的分组丢失测量,尤其是当分组丢失率在两个方向上都不超过20-25%时。由于在大多数类型的连接中(特别是在基于quic的连接中),当分组丢失率超过30%时会停止分组的传输,因此所描述的方法能够在分组丢失测量可行且有意义的所有环境中正确操作。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献