对分组在分组交换通信网络中的累计驻留时间的更新.pdf

上传人:xia****o6 文档编号:4723232 上传时间:2018-10-31 格式:PDF 页数:27 大小:665.24KB
返回 下载 相关 举报
摘要
申请专利号:

CN201180020475.1

申请日:

2011.04.14

公开号:

CN102859941A

公开日:

2013.01.02

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):H04L 12/26申请日:20110414|||公开

IPC分类号:

H04L12/26

主分类号:

H04L12/26

申请人:

阿尔卡特朗讯

发明人:

L·龙切蒂; R·吉米利; G·卡扎尼加; C·科斯坦蒂尼

地址:

法国巴黎

优先权:

2010.04.23 EP 10305432.6

专利代理机构:

北京市金杜律师事务所 11256

代理人:

王茂华;赵林琳

PDF下载: PDF下载
内容摘要

本发明公开一种用于更新在分组交换通信网络的节点接收的同步分组的累计驻留时间的方法。累计驻留时间等于分组在设置于已经生成分组的又一节点与该节点之间的节点的驻留时间的累计时间。该节点包括入口电路和出口电路。该方法包括:在出口电路处从入口电路接收分组;在出口电路的时间戳生成器处生成时间戳;在出口电路处基于时间戳和分组将由于在位于时间戳生成器下游的缓冲器中缓冲而经历的估计可变延迟来计算虚拟时间戳;并且在出口电路处、在向再一节点发送分组之前将虚拟时间戳用于更新累计驻留时间。

权利要求书

权利要求书一种用于更新在分组交换通信网络的节点(N,N1)接收的同步分组(SP)的累计驻留时间(CRT)的方法,所述累计驻留时间(CRT)等于所述同步分组(SP)在所述分组交换网络的设置于已经生成所述同步分组(SP)的又一节点与所述节点(N,N1)之间的节点的驻留时间的累计求和,所述节点(N,N1)包括配置成接收所述同步分组(SP)的入口电路(IC)和配置成向所述分组交换通信网络的再一节点(N2)发送所述同步分组(SP)的出口电路(EC,EC1),所述方法包括:a)在所述出口电路(EC,EC1)处从所述入口电路(IC)接收所述同步分组(SP);b)在所述出口电路(EC,EC1)的出口时间戳生成器(TSGeg,TSG1eg)处生成出口时间戳(TS(EG,LOG),TS1(EG,PHY),TS1(EG,LOG));c)在所述出口电路(EC,EC1)处基于所述出口时间戳(TS(EG,LOG),TS1(EG,PHY),TS1(EG,LOG))并且基于估计的可变延迟来计算虚拟时间戳(VIRTUAL_TS(EG,PHY),VIRTUAL_TS2(IN,LOG)),该估计的可变延迟是所述同步分组(SP)将由于在位于所述出口时间戳生成器(TSGeg,TSG1eg)下游的缓冲器(Beg,B1eg,B2in)中进行缓冲而经历的;以及d)在所述出口电路(EC,EC1)处,在向所述再一节点(N2)发送所述同步分组(SP)之前将所述虚拟时间戳(VIRTUAL_TS(EG,PHY),VIRTUAL_TS2(IN,LOG))用于更新所述累计驻留时间(CRT)。根据权利要求1所述的方法,其中所述步骤b)包括生成出口逻辑时间戳(TS(EG,LOG),TS1(EG,LOG))。根据权利要求2所述的方法,其中所述步骤c)包括基于所述出口逻辑时间戳(TS(EG,LOG),TS1(EG,LOG))并且基于估计的可变延迟来计算虚拟出口物理时间戳(VIRTUAL_TS(EG,PHY)),该估计的可变延迟是所述同步分组(SP)将由于在所述出口电路(EC,EC1)中包括的并且位于所述出口时间戳生成器(TSGeg,TSG1eg)下游的出口缓冲器(Beg,B1eg)中进行缓冲而经历的。根据权利要求3所述的方法,其中所述步骤c)还包括基于所述虚拟出口物理时间戳(VIRTUAL_TS(EG,PHY))并且基于估计的可变延迟来计算虚拟入口逻辑时间戳(VIRTUAL_TS2(IN,LOG)),该估计的可变延迟是所述同步分组(SP)将由于在所述再一节点(N2)的又一入口电路(IC2)中包括的入口缓冲器(B2in)中进行缓冲而经历的。根据权利要求1所述的方法,其中所述步骤b)包括生成出口物理时间戳(TS1(EG,PHY))。根据权利要求5所述的方法,其中所述步骤c)包括基于所述出口物理时间戳(TS1(EG,PHY))并且基于估计的可变延迟来计算虚拟入口逻辑时间戳(VIRTUAL_TS2(IN,LOG)),该估计的可变延迟是所述同步分组(SP)将由于在所述再一节点(N2)的又一入口电路(IC2)中包括的入口缓冲器(B2in)中进行缓冲而经历的。根据任一前述权利要求所述的方法,其中它还包括:在所述步骤a)之前在所述入口电路(IC)接收所述同步分组(SP)时在所述入口电路(IC)生成入口时间戳(TS(IN,PHY))。根据权利要求7所述的方法,其中它还包括:在所述步骤a)之前在所述入口电路(IC)处在所述同步分组(SP)中写入所述入口时间戳(TS(IN,PHY))。根据权利要求8所述的方法,其中所述步骤d)包括:从所述同步分组(SP)读取所述入口时间戳(TS(IN,PHY));将驻留时间(RT,RT’,RT”)计算为所述虚拟时间戳(VIRTUAL_TS(EG,PHY),VIRTUAL_TS2(IN,LOG))与所述入口时间戳(TS(IN,PHY))之差;以及通过将所述驻留时间(RT,RT’,RT”)与所述累计驻留时间(CRT)相加来更新所述累计驻留时间(CRT)。根据权利要求7所述的方法,其中它还包括:在所述步骤a)之前在所述入口电路(IC)处从所述累计驻留时间(CRT)减去所述入口时间戳(TS(IN,PHY))。根据权利要求10所述的方法,其中所述步骤d)包括将所述虚拟时间戳(VIRTUAL_TS(EG,PHY),VIRTUAL_TS2(IN,LOG))与所述累计驻留时间(CRT)相加。根据任一前述权利要求的方法,其中所述步骤d)还包括在向所述再一节点(N2)发送所述同步分组(SP)之前在所述同步分组(SP)中写入所述更新的累计驻留时间(CRT)。一种包括计算机可执行指令的计算机程序产品,所述计算机可执行指令用于在所述程序运行于计算机上时执行根据任一前述权利要求所述的方法的步骤。一种用于分组交换通信网络的节点(N,N1),所述节点(N,N1)包括:‑入口电路(IC),配置成接收具有累计驻留时间(CRT)的同步分组(SP),所述累计驻留时间(CRT)等于所述同步分组(SP)在所述分组交换网络的设置于已经生成所述同步分组(SP)的又一节点与所述节点(N,N1)之间的节点的驻留时间的累计求和;以及‑出口电路(EC,EC1),配置成从所述入口电路(IC)接收所述同步分组(SP)并且向所述分组交换通信网络的再一节点(N2)发送所述同步分组(SP),所述出口电路(EC,EC1)包括:‑出口时间戳生成器(TSGeg,TSG1eg),配置成生成出口时间戳(TS(EG,LOG),TS1(EG,PHY),TS1(EG,LOG));以及‑计算模块(CM,CM1),配置成基于所述出口时间戳(TS(EG,LOG),TS 1(EG,PHY),TS1(EG,LOG))以及基于估计的可变延迟来计算虚拟时间戳(VIRTUAL_TS(EG,PHY),VIRTUAL_TS2(IN,LOG)),该估计的可变延迟是所述同步分组(SP)将由于在位于所述出口时间戳生成器(TSGeg,TSG1eg)下游的缓冲器(Beg,B1eg,B2in)中进行缓冲而经历的,其中所述出口电路(EC,EC1)还被配置成将所述虚拟时间戳(VIRTUAL_TS(EG,PHY),VIRTUAL_TS2(IN,LOG))用于更新所述累计驻留时间(CRT)。一种分组交换通信网络,包括根据权利要求14所述的节点(N,N1)。

说明书

说明书对分组在分组交换通信网络中的累计驻留时间的更新
技术领域
本发明主要地涉及通信网络领域。具体而言,本发明涉及对通过分组交换通信网络发送的分组的累计驻留时间的更新。
背景技术
在分组交换通信网络中,主节点可以向一个或者多个从节点发送根据同步协议格式的同步信息。具体而言,主节点通常生成与它的本地时钟(频率和/或当天时间)有关的同步信息并且在同步分组内向从节点发送这一信息。一旦在从节点接收同步信息,它允许从节点同步它们的时钟的频率和/或当天时间与主节点本地时钟的频率和/或当天时间。
已知同步协议的例子是“网络时间协议(NTP)”或者称为“精确时间协议(PTP)”并且在2008年7月24日的IEEE Instrumentation and Measurement Society的文档“IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurements and Control Systems”中定义的IEEE 1588TM‑2008协议。
根据IEEE 1588TM‑2008协议(参见上文引用的文档的第32‑34页第6章第6.6.3节),主节点向从节点发送Sync分组并且生成第一时间戳t1,该第一时间戳指示主节点发送Sync分组的时间。根据所谓“一步时钟”机制,在Sync分组本身内向从节点发送第一时间戳t1。否则,根据所谓“两步时钟”机制,在主节点在Sync分组之后向从节点发送的Follow_Up分组内向从节点发送第一时间戳t1。从节点继而接收Sync分组并且生成第二时间戳t2,该第二时间戳指示从节点接收Sync分组的时间。从节点然后向主节点发送Delay_Req分组并且生成第三时间戳t3,该第三时间戳指示从节点发送这样的分组的时间。主节点接收Delay_Req分组并且生成第四时间戳t4,该第四时间戳指示它接收这样的分组的时间,并且继而在Delay_Resp分组内向从节点发送第四时间戳t4。
在上文描述的分组交换结束时,四个时间戳t1、t2、t3、t4在从节点可用。通常定期重复上文描述的分组交换。通过使用四个时间戳t1、t2、t3、t4,从节点能够同步它的本地时钟的频率和当天时间与主节点的本地时钟的频率和/或当天时间。
跨分组交换网络、例如在以太网网络上传送的分组一般受依赖于网络业务条件的延迟变化所影响。实际上,分组交换网络节点包括生成预先不可预测的可变延迟的设备。
例如在分组交换网络的节点,每个分组由入口物理接口接收,它然后存储于OSI模型的“媒体访问控制(MAC)”层的入口FIFO缓冲器中。然后在节点内处理分组。接着,分组存储于MAC层的出口FIFO缓冲器中,然后它由出口物理接口发送。FIFO缓冲器无业务优先顺序安排机制。因此,分组在FIFO缓冲器中存储不可预测的时间、然后在节点内经历不可预测的驻留时间。
上述考虑对于数据分组和同步分组而言均有效。只要涉及同步分组,不可预测的延迟变化特别关键,因为它们妨碍从节点以可接受的准确度恢复主节点生成的同步信息、因此妨碍从节点将它们的时钟与主节点的本地时钟同步。
IEEE 1588TM‑2008协议在分组交换网络的每个节点定义“透明时钟”机制(参见上文引用的文档的第6章第6.5.4节)这一机制允许测量同步分组(并且具体为Sync和Delay_Req分组)在节点内的驻留时间。这样,每个从节点能够考虑同步分组在分组交换网络的节点内的驻留时间并且也考虑有关延迟变化来恢复同步。实际上,在接收同步分组时,节点生成入口时间戳,并且在节点发送分组时,它生成出口时间戳。然后计算同步分组在节点内的驻留时间为出口时间戳与入口时间戳之差。根据上文提到的一步时钟机制,IEEE 1588TM‑2008协议提供在节点转发同步分组之前将驻留时间用于更新同步分组本身的纠正字段的内容。否则,根据上文提到的两步时钟机制,IEEE1588TM‑2008协议提供转发同步分组并且将它的驻留时间用于更新向同步分组关联的后续分组(Follow_Up分组或者Delay_resp分组)的校正字段(Correction Field)的内容。
发明内容
驻留时间的计算依赖于确切地在节点的入口物理接口接收同步分组时生成入口时间戳并且确切地在节点的出口物理接口发送同步分组时生成出口时间戳这样的事实。因此要求节点的入口和出口物理接口适合用于与相应时间戳生成器配合。
然而不利的是,当前分组交换网络的多数节点未具有适合用于与时间戳生成器配合的物理接口。
在原理上,可以将同步分组在节点内的驻留时间计算为不是在节点的入口和出口物理接口而是在节点中包括(即位于入口物理接口与出口物理接口之间)的两个其它设备生成的两个时间戳之差。
然而不利的是,这一计算的驻留时间不会考虑可能设置于入口与出口物理接口之间的部件(例如MAC层的入口和出口FIFO缓冲器)以及生成时间戳的设备所引起的延迟。如上文提到的那样,这些延迟根据在节点的业务条件以不可预测的方式可变。因此,在这一情况下,计算的驻留时间不会准确,因为它将不利地受可变并且不可预测的误差影响。
因而发明人已经解决提供一种克服前述缺点的、用于在分组交换通信网络的节点更新接收的分组(具体为但是并非仅为同步分组)的累计驻留时间的方法这一问题。
具体而言,发明人已经解决提供一种用于在分组交换通信网络的节点更新接收的分组(具体为但是并非仅为同步分组)的累计驻留时间并且同时提供准确累计驻留时间的方法这一问题,其中未必在入口和出口物理接口处生成入口和出口时间戳。
在本说明书中和在权利要求书中,表达“入口物理时间戳”和“出口物理时间戳”将表示适合用于与节点的入口/出口物理接口(即在OSI模型的第1层操作的接口)配合的时间戳生成器生成的时间戳。此外,表达“入口逻辑时间戳”和“出口逻辑时间戳”将表示适合用于与节点的在比OSI模型的第1层更高的层(例如第2层)处理分组的设备配合的时间戳生成器生成的时间戳。
另外,表达“虚拟逻辑/物理时间戳”将指示计算模块所计算的逻辑/物理时间戳的估计。
根据第一方面,本发明提出一种用于更新在分组交换通信网络的节点接收的同步分组的累计驻留时间的方法,该累计驻留时间等于分组在设置于已经生成分组的又一节点与该节点之间的节点的驻留时间的累计时间,该节点包括配置成接收同步分组的入口电路和配置成向分组交换通信网络的再一节点发送同步分组的出口电路。该方法包括:
a)在出口电路处从入口电路接收同步分组;
b)在出口电路的时间戳生成器处生成出口时间戳;
c)在出口电路处基于出口时间戳并且基于估计可变延迟来计算虚拟时间戳,该估计的可变延迟是同步分组将由于在位于出口时间戳生成器下游的缓冲器中进行缓冲而经历的;以及
d)在出口电路处,在向再一节点发送同步分组之前将虚拟时间戳用于更新累计驻留时间。
优选地,步骤b)包括生成出口逻辑时间戳。
优选地,步骤c)包括基于出口逻辑时间戳和同步分组将由于在出口电路中包括的并且基于估计的可变延迟来计算虚拟出口物理时间戳,该估计的可变延迟是同步分组将由于位于出口时间戳生成器下游的包括在出口电路中的出口缓冲器中进行缓冲而经历的。
优选地,步骤c)还包括基于虚拟出口物理时间戳并且基于估计的可变延迟来计算虚拟入口逻辑时间戳,该估计的可变延迟是同步分组将由于在再一节点的又一入口电路中包括的入口缓冲器中进行缓冲而经历的。
优选地,步骤b)包括生成出口物理时间戳。
优选地,步骤c)包括基于出口物理时间戳并且基于估计的可变延迟来计算虚拟入口逻辑时间戳,该估计的可变延迟是同步分组将由于在再一节点的又一入口电路中包括的入口缓冲器中进行缓冲而经历的。
优选地,该方法还包括:在步骤a)之前在入口电路接收同步分组时在入口电路生成入口时间戳。
优选地,该方法还包括:在步骤a)之前在入口电路在同步分组中写入入口时间戳。
优选地,步骤d)包括:从同步分组读取入口时间戳;将驻留时间计算为虚拟时间戳与入口时间戳之差;以及通过将驻留时间与累计驻留时间相加来更新累计驻留时间。
优选地,该方法还包括:在步骤a)之前在入口电路从累计驻留时间减去入口时间戳。
优选地,步骤d)包括将虚拟时间戳与累计驻留时间相加。
优选地,步骤d)还包括在向再一节点发送同步分组之前在同步分组中写入更新的累计驻留时间
本发明根据其第二方面提供一种包括计算机可执行指令的计算机程序产品,这些计算机可执行指令用于在程序运行于计算机上时执行如上文阐述的方法的步骤。
本发明根据其第三方面提供一种用于分组交换通信网络的节点,该节点包括:
‑入口电路,配置成接收具有累计驻留时间的同步分组,该累计驻留时间等于同步分组在分组交换网络的设置于已经生成同步分组的又一节点与该节点之间的节点的驻留时间的累计求和;以及
‑出口电路,配置成从入口电路接收同步分组并且向分组交换通信网络的再一节点发送同步分组,该出口电路包括:
‑出口时间戳生成器,配置成生成出口时间戳;以及
‑计算模块,配置成基于出口时间戳并且基于估计的可变延迟来计算虚拟时间戳,该估计的可变延迟是同步分组将由于在位于出口时间戳生成器下游的缓冲器中进行缓冲而经历的,
其中出口电路还被配置成将虚拟时间戳用于更新累计驻留时间。
本发明根据其第四方面提供一种包括如上文阐述的节点的分组交换通信网络。
附图说明
现在将通过阅读将参照以下附图阅读的通过例子而非限制而给出的下文具体实施方式来更好地理解本发明的实施例:
‑图1示出了根据本发明第一实施例的分组交换通信网络的节点的框图;
‑图2a和图2b是流程图,这些流程图描述根据本发明第一实施例的第一和第二变化的、图1的节点的操作;
‑图3a和图3b示意地示出了图1的节点接收的同步分组的格式;
‑图4示出了这些时间图图1的节点的操作的三个时间图;
‑图5示出了根据本发明第二实施例的分组交换通信网络的节点对的框图;
图6a和图6b是这些流程图描述根据本发明第二实施例的第一和第二变化的、图5的节点对的操作的流程图;
‑图7示出了根据本发明第三实施例的分组交换通信网络的节点对的框图;以及
‑图8a和图8b是描述根据本发明第三实施例的第一和第二变化的、图7的节点对的操作的流程图。
具体实施方式
图1示出了根据本发明第一实施例的分组交换通信网络的节点N。优选地,分组交换网络是支持上文提到的IEEE1588TM‑2008同步协议的以太网网络。
节点N优选地包括入口电路IC,该入口电路又包括级联连接的入口物理接口PHYin、入口缓冲器Bin和入口分组处理器PPin。入口物理接口PHYin优选地通过物理链路连接到分组交换通信网络的又一节点(在附图中未示出)。节点N还可以包括在图1中未示出的设置于入口物理接口PHYin与入口分组处理器PPin之间的入口块。另外,节点N优选地包括出口电路EC,该出口电路又包括级联连接的出口分组处理器PPeg、出口缓冲器Beg和出口物理接口PHYeg。出口物理接口PHYeg优选地通过又一物理链路连接到分组交换通信网络的再一节点(在附图中未示出)。节点N还可以包括在图1中未示出的设置于出口分组处理器PPeg与出口物理接口PHYeg之间的出口块。
优选地,节点N还包括设置于入口电路IC与出口电路EC之间的其它硬件和/或软件块。在附图中未示出这些块,因为它们与本说明书无关。
优选地,入口分组处理器PPin和出口分组处理器PPeg实施于一个或者多个FPGA(“现场可编程门阵列”)设备内、例如节点N的网络处理器(在图1中未示出)内。
入口电路IC优选地还包括入口时间戳生成器TSGin,并且出口电路EC优选地还包括出口时间戳生成器TSGeg。根据本发明的第一实施例,如下文将更详细描述的那样,入口时间戳生成器TSGin适合用于与入口物理接口PHYin配合以便生成入口物理时间戳,而出口时间戳生成器TSGeg适合用于与出口分组处理器PPeg配合以便生成出口逻辑时间戳。
优选地,出口电路EC也包括连接到出口分组处理器PPeg和出口时间戳生成器TSGeg的计算模块CM。优选地,计算模块CM实施于FPGA设备内、例如节点N的网络处理器(在图1中未示出)内。
参照图2a、图3a和3b,现在将描述根据本发明第一实施例的第一变化的节点N的操作。
假设节点N经由它的入口物理接口PHYin从与之相邻的上文提到的又一节点接收分组。这些分组可以包括数据分组和/或同步分组。优选地根据同步协议、例如IEEE 1588TM‑2008协议来格式化同步分组。
具体而言,在步骤200,节点N的入口物理接口PHYin接收同步分组SP。优选地如图3a中所示格式化同步分组SP。优选地,同步分组SP包括标头H‑SP和主体B‑SP。
优选地,主体B‑SP包括时间戳(例如IEEE 1588TM‑2008协议提供的时间戳t1)和可能其它信息,在图3a和3b中未示出这些其它信息,因为它们与本说明书无关。
优选地,标头H‑SP包括调整字段AF和其它字段,在图3a和3b中未示出这些,因为它们与本说明书无关。优选地,如果同步分组SP是IEEE 1588TM‑2008协议,则调整字段AF是“校正字段”。当在节点N接收同步分组SP时,调整字段AF优选地包括与同步分组SP在分组交换网络的如下节点的驻留时间的累计求和相等的累计驻留时间CRT,这些节点设置于已经生成同步分组SP的节点与节点N之间。
一旦入口物理接口PHYin接收同步分组SP,入口时间戳生成器TSGin基本上同时生成入口物理时间戳TS(IN,PHY)(步骤201)。然后,入口物理接口PHYin优选地在同步分组SP的字段中写入入口物理时间戳TS(IN,PHY)(步骤201a)。优选地,字段是标头H‑SP的专用字段(在图3a中未示出)。
同步分组SP然后存储于入口缓冲器Bin中(步骤202)。然后优选地向入口分组处理器PPin转发同步分组SP,该入口分组处理器处理它(步骤203)。
同步分组SP然后到达出口分组处理器PPeg,该出口分组处理器处理它(步骤204)。应当注意出口分组处理器PPeg不仅从图1中所示入口分组处理器PPin而且从节点N中包括的其它出口分组处理器(在图1中未示出)接收分组。在步骤204期间,出口分组处理器PPeg优选地向同步分组SP关联序号SN,该序号SN考虑在出口分组处理器PPeg接收分组的顺序。另外,在处理期间,出口分组处理器PPeg优选地从同步分组SP读取入口物理时间戳TS(IN,PHY)(步骤204a)。
然后,出口时间戳生成器TSGeg优选地生成出口逻辑时间戳TS(EG,LOG)(步骤205)。计算模块CM然后优选地计算虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)(步骤206),该时间戳基本上指示同步分组SP将由出口物理接口PHYeg实际发送的时间。计算模块CM然后优选地将驻留时间RT(步骤207)计算为虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)与入口物理时间戳TS(IN,PHY)之差,即:
RT=VIRTUAL_TS(EG,PHY)‑TS(IN,PHY)。[2]
然后,出口分组处理器PPeg优选地使用驻留时间RT以如图3b中所示通过将驻留时间RT与在同步分组SP的标头H‑SP的调整字段AF中包括的累计驻留时间CRT相加来更新该累计驻留时间(步骤208)。
随后,出口分组处理器PPeg向出口缓冲器Beg转发同步分组SP,并且它存储于该出口缓冲器中(步骤209)。然后,向出口物理接口PHYeg转发同步分组SP,该出口物理接口向与节点N相邻的上文提到的再一节点发送它(步骤210)。
下文将详细描述计算模块CM在步骤206执行的虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)的计算。
优选地,计算模块CM知道与出口缓冲器Beg关联的多个参数。这些参数优选地包括以下参数中的一个或者多个参数:
‑写入位速率WR;
‑读取位速率RR;
‑写入粒度WG,即在出口缓冲器Beg中并行写入的位数;
‑读取粒度RG,即从出口缓冲器Beg并行读取的位数;
‑写入开通延时WC,即分组在向出口缓冲器Beg中写入它们时经历的恒定延迟;
‑读取开通延时RC,即分组在从出口缓冲器Beg读取它们时经历的恒定延迟;以及
‑调整因子A,该调整因子考虑写入位速率WR与读取位速率RR之差。具体而言,在其中写入位速率WR和读取位速率RR相等(它们均锁定到相同PLL)的理想情况下,A等于1。然而WR与RR之差通常为+/‑200ppm,因此A高于1。
在步骤206期间,计算模块CM优选地执行以下子步骤:
a)它检测同步分组SP的序号SN和位数L(SN);
b)它借助下式计算将向出口缓冲器Beg中完全写入同步分组SP的时间TT(SN):
TT(SN)=TS(EG,LOG)+WC+WG×ceil(L(SN)/WG)/WR,    [3]
其中ceil(L(SN)/WG)指示不低于L(SN)与WG之比的最小整数;
c)它借助下式、仅考虑读取在开始向出口缓冲器Beg中写入同步分组SP之前已经向出口缓冲器Beg中存储的位的操作而未考虑写入同步分组SP的操作来计算出口缓冲器Beg在时间TT(SN)的填充水平FLb(SN):
FLb(SN)=max{0,[FLa(SN‑1)‑A×RR×(TT(SN)‑TT(SN‑1))]}。  [4]
FLa(SN‑1)是也考虑出口缓冲器Beg的读取开通延时RC、在向出口缓冲器Beg中完全写入在同步分组SP之前的分组(即具有等于SN‑1的序号的分组)时出口缓冲器Beg的填充水平。符号表示max{·}指示填充水平FLb(SN)等于在花括号中包括的值之中的最大值,而TT(SN‑1)是已经向出口缓冲器Beg中完全写入在同步分组SP之前的分组的时间。因此FLb(SN)在填充水平FLa(SN‑1)和读取位速率RR使得在时间间隔TT(SN)‑TT(SN‑1)中出口缓冲器Beg变成全空时等于零;
d)它借助下式计算虚拟出口物理时间戳VIRTUAL_TS(EG,PHY):
VIRTUAL_TS(EG,PHY)=TT(SN)+[RG×ceil(FLb(SN)/RG)/RR]+RC;
[5]
并且
e)它借助下式计算在向出口缓冲器Beg中完全写入同步分组SP时出口缓冲器Beg的填充水平FLa(SN):
FLa(SN)=FLb(SN)+RC×RR+L(SN)。           [6]
根据上式[5]计算的虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)仅考虑同步分组SP在它存储于出口缓冲器Beg内时积累的延迟。式[5]未考虑例如由于可能设置于出口分组处理器PPeg与出口物理接口PHYeg之间的其它块(在图1中未示出)处理同步分组SP所致的其它可能延迟。如果这些其它可能延迟已知、恒定并且在两个方向(TX比对RX)上不同,则可以如IEEE 1588TM‑2008协议预见的那样补偿它们。
优选地针对在节点N接收的每个同步分组重复步骤200‑210(包括上文描述的步骤206的子步骤a)‑e))。在数据分组的情况下,优选地省略步骤206的子步骤d)和步骤207‑208。
有利地,根据本发明第一实施例的第一变化的方法允许在节点N的出口物理接口PHYeg不适合用于与时间戳生成器配合时计算同步分组SP的驻留时间。有利地,可以在出口物理接口PHYeg上游生成出口时间戳,因为虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)考虑设置于出口物理接口PHYeg与生成出口时间戳的设备之间的部件(即出口缓冲器Beg)所引起的延迟。针对每个同步分组计算虚拟出口物理时间戳VIRTUAL_TS(EG,PHY),因此它的值根据在节点N的当前业务条件针对每个同步分组而改变。如将从下文参照图4详细描述的例子清楚的那样,这允许通过考虑同步分组SP具体在MAC层的出口缓冲器内经历的可能延迟变化以准确方式更新同步分组SP的调整字段AF。
图4示出了图示了根据本发明第一实施例第一变化的节点N的操作的三个示例时间图。图4的时间图涉及出口分组处理器PPeg的输入(图1中的(a)所示)、出口缓冲器Beg的输入(图1中的(b)所示)和出口缓冲器Beg的输出(图1中的(c)所示)。举例而言,图4示出了具有位数L(3)的第一同步分组SP3、继而为具有位数L(4)的数据分组DP4和具有位数L(5)的第二同步分组SP5。可以通过入口物理接口PHYin或者通过在图1中未示出的其它入口物理接口在节点N接收分组SP3、DP4和SP5。
当在出口分组处理器PPeg接收分组SP3、DP4和SP5时,出口分组处理器PPeg优选地向相应连续序号,即3、4和5关联它们。
当在出口分组处理器PPeg接收第一同步分组SP3(步骤204)时,出口时间戳生成器TSGeg生成出口逻辑时间戳TS3(EG,LOG)(步骤205)。然后在步骤206期间,计算模块CM:
a)检测第一同步分组SP3的序号SN=3和位数L(3);
b)借助上式[3]计算时间TT(3),即:
TT(3)=TS3(EG,LOG)+WC+WG×ceil(L(3)/WG)/WR;
c)借助上式[4]计算出口缓冲器Beg在时间TT(3)的填充水平FLb(3),即:
FLb(3)=max{0,[FLa(2)‑A×RR×(TT(3)‑TT(2))]},
其中FLa(2)是在向出口缓冲器Beg中完全写入在第一同步分组SP3之前的分组(即具有等于2的序号的分组)时出口缓冲器Beg的填充水平。在下文中,为了简化而假设FLb(3)等于零,即在向出口缓冲器Beg中完全写入第一同步分组SP3时,无其它分组的位存在于出口缓冲器Beg中;
d)借助上式[5]计算虚拟出口物理时间戳VIRTUAL_TS3(EG,PHY),即:
VIRTUAL_TS3(EG,PHY)=TT(3)+[RG×ceil(FLb(3)/RG)/RR]+RC;以及
e)借助上式[6]计算在向出口缓冲器Beg中完全写入第一同步分组SP3时出口缓冲器Beg的填充水平FLa(3),即:
FLa(3)=FLb(3)+RC×RR+L(3)。
如前文假设的那样,在向出口缓冲器Beg中完全写入第一同步分组SP3时,出口缓冲器Beg为空。因此,虚拟出口物理时间戳VIRTUAL_TS3(EG,PHY)仅依赖于写入开通延时WC、读取开通延时RC和WG×ceil(L(3)/WG)/WR,这是为了向出口缓冲器Beg中写入第一同步分组SP3而需要的时间间隔。
在步骤206结束时,计算模块CM根据上式[2]计算驻留时间RT3(步骤207)。驻留时间RT3然后用来更新第一同步分组SP3的调整字段AF的内容(步骤208)。第一同步分组SP3的处理然后根据图2a中所示步骤209‑210继续。
当在出口分组处理器PPeg接收数据分组DP4(步骤204)时,出口时间戳生成器TSGeg生成出口逻辑时间戳TS4(EG,LOG)(步骤205)。然后在步骤206期间,计算模块CM:
a)检测数据分组DP4的序号SN=4和位数L(4);
b)借助上式[3]计算时间TT(4),即:
TT(4)=TS4(EG,LOG)+WC+WG×ceil(L(4)/WG)/WR;
c)借助上式[4]计算出口缓冲器Beg在时间TT(4)的填充水平FLb(4),即:
FLb(4)=max{0,[FLa(3)‑A×RR×(TT(4)‑TT(3))]}。
优选地省略子步骤d);以及
e)借助上式[5]计算在向出口缓冲器Beg中完全写入数据分组DP4时出口缓冲器Beg的填充水平FLa(4),即:
FLa(4)=FLb(4)+RC×RR+L(4)。
在步骤206结束时,计算模块CM省略步骤207。也优选地省略步骤208。数据分组DP4的处理然后根据图2a中所示接下来的步骤209‑210继续。
当在出口分组处理器PPeg接收第二同步分组SP5(步骤204)时,出口时间戳生成器TSGeg生成出口逻辑时间戳TS5(EG,LOG)(步骤205)。然后在步骤206期间,计算模块CM:
a)检测第二同步分组SP5的序号SN=5和位数L(5);
b)借助上式[3]计算时间TT(5),即:
TT(5)=TS5(EG,LOG)+WC+WG×ceil(L(5)/WG)/WR;
c)借助上式[4]计算出口缓冲器Beg在时间TT(5)的填充水平FLb(5),即:
FLb(5)=max{0,[FLa(4)‑A×RR×(TT(5)‑TT(4))]};
d)借助上式[5]计算虚拟出口物理时间戳VIRTUAL_TS5(EG,PHY),即:
VIRTUAL_TS5(EG,PHY)=TT(5)+[RG×ceil(FLb(5)/RG)/RR]+RC;以及
e)借助上式[6]计算在向出口缓冲器Beg中完全写入第二同步分组SP5时出口缓冲器Beg的填充水平FLa(5),即:
FLa(5)=FLb(5)+RC×RR+L(5)。
在这后一种情况下,虚拟出口物理时间戳VIRTUAL_TS5(EG,PHY)依赖于写入开通延时WC、读取开通延时RC、WG×ceil(L(5)/WG)/WR(这是为了向出口缓冲器Beg中写入第二同步分组SP5而需要的时间间隔),并且也依赖于[RG×ceil(FLb(5)/RG)/RR](这是为了完成从出口缓冲器Beg读取整个数据分组DP4而需要的时间间隔)。
在步骤206结束时,计算模块CM根据上式[2]计算驻留时间RT5(步骤207)。驻留时间RT5然后用来更新第二同步分组SP5的调整字段AF的内容(步骤208)。第二同步分组SP5的处理然后根据图2a中所示接下来的步骤209‑210继续。
图2B示出了根据本发明第一实施例的第二变化的节点N的操作。
根据该第二变化,当在步骤201、入口时间戳生成器TSGin生成入口物理时间戳TS(IN,PHY)时,入口物理接口PHYin优选地使用入口物理时间戳TS(IN,PHY)以更新同步分组SP的调整字段AF(步骤201a’),而不是在同步分组SP的专用字段中写入它(步骤201a)。具体而言,入口物理接口PHYin优选地从在调整字段AF中包含的累计驻留时间CRT减去入口物理时间戳TS(IN,PHY)。
然后与第一变化相似地执行步骤202至206。
然后在已经完成虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)的计算(步骤206)之后,虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)由出口分组处理器PPeg直接用来更新同步分组SP的调整字段AF(步骤208’)而不是计算驻留时间RT(步骤207)。具体而言,出口分组处理器PPeg将虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)与累计驻留时间CRT相加。应当注意在第二变化的步骤201a’和208’中执行的操作基本上对应于第一变化的操作207‑208。因此有利地根据这一第二变化,在同步分组SP中无需专用字段用于向出口分组处理器PPeg转发入口物理时间戳TS(IN,PHY)。
图5示出了根据本发明第二实施例的分组交换网络的第一节点N1和第二节点N2的框图。第一节点N1和第二节点N2优选地相邻。第一节点N1和第二节点N2二者与上文描述的节点N相似。
具体而言,第一节点N1优选地包括出口电路EC1,该出口电路又包括级联连接的出口分组处理器PP1eg、出口缓冲器B1eg和出口物理接口PHY1eg。出口电路EC1优选地还包括出口时间戳生成器TSG1eg。根据这一第二实施例,如下文将更详细描述的那样,出口时间戳生成器TSG1eg适合用于与出口物理接口PHY1eg配合以便生成出口物理时间戳。优选地,出口电路EC1也包括连接到出口时间戳生成器TSG1eg和物理出口接口PHY1eg的计算模块CM1。在图5中未示出第一节点N1的其它部件,因为它们与本发明无关。
另一方面,第二节点N2优选地包括入口电路IC2,该入口电路又包括级联连接的入口物理接口PHY2in、入口缓冲器B2in和入口分组处理器PP2in。入口电路IC2优选地还包括入口时间戳生成器TSG2in。根据本发明的这一第二实施例,入口时间戳生成器TSG2in适合用于与入口分组处理器PP2in配合以便生成入口逻辑时间戳。在图5中未示出第二节点N2的其它部件,因为它们与本说明书无关。
参照图6a,现在将描述根据本发明第二实施例的第一变化的第一节点N1的操作。
假设第一节点N1生成分组并且从与之相邻的更多节点(在图5中未示出)接收分组。这些分组可以包括数据分组和/或同步分组。优选地根据同步协议、比如IEEE 1588TM‑2008协议格式化同步分组。
跨第一节点N1的各种部件转发这些分组直至其部分由出口分组处理器PP1eg接收,该出口分组处理器处理它们并且向出口缓冲器B1eg转发它们。出口缓冲器B1eg优选地存储分组并且向出口物理接口PHY1eg转发它们。
具体而言,出口物理接口PHY1eg从出口缓冲器B1eg接收同步分组SP(步骤600)。优选地如图3a中示出并且上文描述的那样格式化同步分组SP。在步骤600期间,出口物理接口PHY1eg优选地向同步分组SP关联序号SN,该序号SN考虑在出口物理接口PHY1eg接收分组的顺序。另外,在步骤600期间,出口物理接口PHY1eg优选地从同步分组SP读取已经在第一节点N1在接收同步分组SP时生成的入口时间戳(步骤600a)。入口时间戳可以是逻辑或者物理的。为了简化,下文假设入口时间戳是入口物理时间戳TS1(IN,PHY)。
然后,出口时间戳生成器TSG1eg优选地生成出口物理时间戳TS1(EG,PHY)(步骤601)。计算模块CM1然后优选地计算虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG),该时间戳基本上指示同步分组SP将由第二节点N2的入口分组处理器PP2in接收的时间(步骤602)。出于这一目的,在步骤602期间,计算模块CM1优选地假设虚拟入口物理时间戳VIRTUAL_TS2(IN,PHY)等于出口物理时间戳TS1(EG,PHY),该虚拟入口物理时间戳基本上指示同步分组SP由入口物理接口PHY2in实际接收的时间(即假设同步分组SP沿着连接第一节点N1和第二节点N2的物理链路的传播时间基本上为零)。
计算模块CM1然后优选地将驻留时间RT’(步骤603)计算为虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)与入口物理时间戳TS 1(IN,PHY)之差,即:
RT’=VIRTUAL_TS2(IN,LOG)‑TS1(IN,PHY)。      [7]
出口物理接口PHY1eg然后优选地通过将根据式[7]计算的驻留时间RT’与在同步分组SP的标头H‑SP的调整字段AF中包括的累计驻留时间CRT相加来更新该累计驻留时间。然后,出口物理接口PHYeg向第二节点N2发送同步分组SP(步骤605)。
下文将详细描述计算节点CM1在步骤602期间执行的虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)的计算。
优选地,计算模块CM1知道与第二节点N2的入口缓冲器B2in关联的多个。这些参数优选地包括以下参数中的一个或者多个参数:
‑写入位速率WR’;
‑读取位速率RR’;
‑写入粒度WG’,即在入口缓冲器B2in中并行写入的位数;
‑读取粒度RG’,即从入口缓冲器B2in并行读取的位数;
‑写入开通延时WC’,即分组在向入口缓冲器B2in中写入它们时经历的恒定延迟;
‑读取开通延时RC’,即分组在从入口缓冲器B2in读取它们时经历的恒定延迟;以及
‑调整因子A’(上文与第一实施例的调整因子A结合阐述的相同考虑也适用于调整因子A’、因此将不加以重复)。
在步骤602期间,计算模块CM1优选地执行以下子步骤:
a)它检测同步分组SP的序号SN和位数L(SN);
b)它借助下式计算将向入口缓冲器B2in中完全写入同步分组SP的时间TT(SN):
TT(SN)=TS1(EG,PHY)+WC’+WG’×ceil(L(SN)/WG’)/WR’;   [8]
其中ceil(L(SN)/WG’)指示不低于L(SN)与WG’之比的最小整数;
c)它借助下式仅考虑读取在开始写入同步分组SP之前已经向入口缓冲器B2in中存储的位的操作而未考虑写入同步分组SP的操作来计算入口缓冲器B2in在时间TT(SN)的填充水平FLb(SN):
FLb(SN)=max{0,[FLa(SN‑1)‑A’×RR’×(TT(SN)‑TT(SN‑I))]}。  [9]
FLa(SN‑1)是也考虑读取开通延时RC’、在向入口缓冲器B2in中完全写入在同步分组SP之前的分组(即具有等于SN‑1的序号的分组)时入口缓冲器B2in的填充水平。符号表示max{·}指示填充水平FLb(SN)等于在花括号中包括的值之中的最大值,而TT(SN‑1)是已经向入口缓冲器B2in中完全写入在同步分组SP之前的分组的时间。因此FLb(SN)在填充水平FLa(SN‑1)和读取位速率RR’使得在时间间隔TT(SN)‑TT(SN‑1)中入口缓冲器B2in变成全空时等于零;
d)它借助下式计算虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG):
VIRTUAL_TS2(IN,LOG)=TT(SN)+[RG’×ceil(FLb(SN)/RG’)/RR’]+RC’;
[10]
以及
e)它借助下式计算在向入口缓冲器B2in中完全写入同步分组SP时入口缓冲器B2in的填充水平FLa(SN):
FLa(SN)=FLb(SN)+RC’×RR’+L(SN)。        [11]
根据上式[10]计算的虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)仅考虑同步分组SP在它存储于入口缓冲器B2in内时积累的延迟。式[10]未考虑例如由于可能设置于入口物理接口PHY2in与入口分组处理器PP2in之间的其它块(在图5中未示出)处理同步分组SP所致的其它可能延迟。如果这些其它可能延迟已知、恒定并且在两个方向(TX比对RX)上不同,则可以如IEEE 1588TM‑2008协议预见的那样补偿它们。
优选地针对在第一节点N1接收并且向第二节点N2转发的每个同步分组重复步骤600‑605(包括上文描述的步骤602的子步骤a)‑e))。在数据分组的情况下,优选地省略步骤602的子步骤d)和步骤603‑604。
图6b示出了根据本发明第二实施例的第二变化的节点N1的操作。
根据该第二变化,在同步分组SP的专用字段中未包括已经在第一节点N1在接收同步分组SP时生成的入口时间戳而是(与第一实施例的第二变化相似)已经从在入口分组处理器PP1eg接收之前在同步分组SP的调整字段AF中包含的累计驻留时间CRT减去该入口时间戳。因此根据这一第二变化,省略步骤600a。
然后与第一变化相似地执行步骤601和602。
然后在已经完成虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)的计算(步骤602)之后,虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)由出口物理接口PHY1eg用来更新同步分组SP的调整字段AF(步骤604’)而不是计算驻留时间RT’(步骤603)。具体而言,出口物理接口PHY1eg将虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)与累计驻留时间CRT直接相加。应当注意在出口分组处理器PP1eg接收之前执行的减法和在第二变化的步骤604’中执行的操作基本上对应于第一变化的操作603‑604。因此有利地根据这一第二变化,在同步分组SP中无需专用字段用于向出口物理接口PHY1eg转发入口时间戳。
图7示出了根据本发明第三实施例的第一节点N1和第二节点N2的又一框图。
具体而言,根据这一第三实施例,如下文将详细描述的那样,出口时间戳生成器TSG1g适合用于与出口分组处理器PP1eg配合以便生成出口逻辑时间戳。
参照图8a,现在将描述根据本发明第三实施例的第一变化的第一节点N1的操作。
假设第一节点N1生成分组并且从与之相邻的更多节点(在图7中未示出)接收分组。这些分组可以包括数据分组和/或同步分组。优选地根据同步协议、比如IEEE 1588TM‑2008协议格式化同步分组。
跨第一节点N1的各种部件转发这些分组直至其部分由出口分组处理器PP1eg接收。
具体而言,出口分组处理器PP1eg接收同步分组SP(步骤800)。优选地如图3a中示出并且上文描述的那样格式化同步分组SP。在步骤800期间,出口分组处理器PP1eg优选地向同步分组SP关联序号SN,该序号SN考虑在出口分组处理器PP1eg接收分组的顺序。另外,在步骤800期间,出口分组处理器PP1eg优选地从同步分组SP读取已经在第一节点N1在接收同步分组SP时生成的入口时间戳(步骤800a)。入口时间戳可以是逻辑或者物理的。为了简化,下文假设入口时间戳是入口物理时间戳TS1(IN,PHY)。
然后,出口时间戳生成器TSG1eg优选地生成出口逻辑时间戳TS1(EG,LOG)(步骤801)。然后,计算模块CM1计算虚拟出口物理时间戳VIRTUAL_TS1(EG,PHY),该时间戳基本上指示同步分组SP将由出口物理接口PHY1eg发送的时间(步骤802)。另外,计算模块CM1优选地计算虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG),该时间戳基本上指示同步分组SP将由入口分组处理器PP2in接收的时间(步骤803)。出于这一目的,在步骤803期间,计算模块CM1优选地假设虚拟入口物理时间戳VIRTUAL_TS2(IN,PHY)等于虚拟出口物理时间戳VIRTUAL_TS1(EG,PHY)(即假设同步分组SP沿着连接第一节点N1和第二节点N2的物理链路的传播时间基本上为零),该虚拟入口物理时间戳基本上指示同步分组SP将由入口物理接口PHY2in实际接收的时间。
计算模块CM1然后优选地将驻留时间RT”(步骤804)计算为虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)与入口物理时间戳TS1(IN,PHY)之差,即:
RT”=VIRTUAL_TS2(IN,LOG)‑TS1(IN,PHY)。    [12]
出口分组处理器PP1g然后优选地使用根据式[12]计算的驻留时间RT”以更新在同步分组SP的标头H‑SP的调整字段AF中包括的累计驻留时间CRT(步骤805)。随后,同步分组SP由出口分组处理器PP1eg向出口缓冲器B1eg转发,并且它存储于该出口缓冲器中(步骤806)。然后向出口物理接口PHY1eg转发同步分组SP,该出口物理接口向第二节点N2转发它(步骤807)。
使用涉及第一节点N1的出口缓冲器B1eg的参数,计算模块CM1在步骤802期间执行的虚拟出口物理时间戳VIRTUAL_TS1(EG,PHY)的计算与根据本发明的第一实施例在步骤206执行的虚拟出口物理时间戳VIRTUAL_TS(EG,PHY)的计算基本上相同。此外,使用涉及第二节点N2的入口缓冲器B2in的参数,计算模块CM1在步骤803期间执行的虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)的计算与根据本发明的第二实施例在步骤602期间执行的虚拟入口逻辑时间戳VIRTUAL_TS(IN,LOG)的计算基本上相同。因此将不重复虚拟出口物理时间戳VIRTUAL_TS1(EG,PHY)和虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)的计算的详细描述。
图8b示出了根据本发明第三实施例的第二变化的节点N1的操作。
根据这一第二变化,在同步分组SP的专用字段中未包括已经在第一节点N1在接收同步分组SP时生成的入口时间戳而是(与第一和第二实施例的第二变化相似)已经从在出口分组处理器PP1eg接收之前在同步分组SP的调整字段AF中包含的累计驻留时间CRT减去该入口时间戳。因此根据这一第二变化,省略步骤800a。
然后与第一变化相似地执行步骤801‑8032。
然后在已经完成虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)的计算(步骤803)之后,虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)由出口分组处理器PP1eg用来更新同步分组SP的调整字段AF(步骤805’)而不是计算驻留时间RT”(步骤804)。具体而言,出口分组处理器PP1eg将虚拟入口逻辑时间戳VIRTUAL_TS2(IN,LOG)与累计驻留时间CRT直接相加。应当注意在出口分组处理器PP1eg接收之前执行的减法和在第二变化的步骤805’中执行的操作基本上对应于第一变化的操作804‑805。因此有利地根据这一第二变化,在同步分组SP中无需专用字段用于向出口分组处理器PP1eg转发入口时间戳。
因此,尽管在第一实施例中(即在节点不能生成入口物理时间戳时)节点本身能够考虑出口缓冲器Beg引入的延迟来计算同步分组SP的驻留时间,但是根据第二和第三实施例(即在节点不能生成入口物理时间戳时),节点本身不能考虑它的入口缓冲器B2in引入的延迟来执行计算。这是因为节点不能知道它的入口缓冲器B2in在已经接收同步分组SP时的填充水平是什么。因此,节点不能计算它的入口缓冲器B2in引入的延迟。
根据这些第二和第三实施例,上游节点(即从其接收分组的节点)执行驻留时间的计算并且使用它以便也考虑下游节点的入口缓冲器B2in引入的延迟来更新同步分组的累计驻留时间。这是有可能的,因为上游节点预先知道下游节点的业务条件并且它然后可以预见下游节点的入口缓冲器引入的延迟。
如果节点既不能生成入口物理时间戳也不能生成出口物理时间戳,则可以组合上文描述的第一和第二/第三实施例。
具体而言,节点的入口缓冲器引入的延迟可以在上游节点中被计算,并且将它与同步分组在上游节点内的驻留时间相加(根据第二或者第三实施例)。另一方面,在节点本身计算出口缓冲器引入的延迟,并且将它与同步分组在节点本身的驻留时间相加。也在这一情况下,然后有利地有可能更新在同步分组的调整字段AF中包括的累计驻留时间CRT以便考虑节点的入口和出口缓冲器引起的延迟。
在本发明第一、第二和第三实施例的上文描述中,已经假设节点N、N1实施上文提到的一步时钟机制,即节点N、N1能够计算同步分组SP的驻留时间并且在向更多节点转发同步分组SP之前将它用于更新同步分组SP本身的调整字段。
然而根据其它有利实施例,节点N、N1可以实施上文提到的两步时钟机制。根据这些有利实施例,节点N、N1如上文描述的那样计算同步分组SP的驻留时间(或者虚拟时间戳)、然后将驻留时间(或者虚拟时间戳)用于更新(节点N、N1可能生成的)后续分组的调整字段。
可以通过使用专用硬件以及能够与适当软件关联执行软件的硬件来提供图1、图5和图7的节点中所示各种单元的功能。当由处理器(即分组处理器)提供时,功能可以由单个专用处理器、由单个共享处理器或者由多个个别处理器提供,这些多个个别处理器中的一些个别处理器可以被共享。另外,术语“处理器”的明确使用不应解释为仅指代能够执行软件的硬件并且可以隐含地包括而不限于数字信号处理器(DSP)硬件、网络处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、用于存储软件的只读存储器(ROM)、随机存取存储器(RAM)和非易失性储存器。也可以包括其它常规和/或定制硬件。

对分组在分组交换通信网络中的累计驻留时间的更新.pdf_第1页
第1页 / 共27页
对分组在分组交换通信网络中的累计驻留时间的更新.pdf_第2页
第2页 / 共27页
对分组在分组交换通信网络中的累计驻留时间的更新.pdf_第3页
第3页 / 共27页
点击查看更多>>
资源描述

《对分组在分组交换通信网络中的累计驻留时间的更新.pdf》由会员分享,可在线阅读,更多相关《对分组在分组交换通信网络中的累计驻留时间的更新.pdf(27页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102859941 A (43)申请公布日 2013.01.02 CN 102859941 A *CN102859941A* (21)申请号 201180020475.1 (22)申请日 2011.04.14 10305432.6 2010.04.23 EP H04L 12/26(2006.01) (71)申请人 阿尔卡特朗讯 地址 法国巴黎 (72)发明人 L龙切蒂 R吉米利 G卡扎尼加 C科斯坦蒂尼 (74)专利代理机构 北京市金杜律师事务所 11256 代理人 王茂华 赵林琳 (54) 发明名称 对分组在分组交换通信网络中的累计驻留时 间的更新 (57) 摘要 。

2、本发明公开一种用于更新在分组交换通信网 络的节点接收的同步分组的累计驻留时间的方 法。累计驻留时间等于分组在设置于已经生成分 组的又一节点与该节点之间的节点的驻留时间的 累计时间。该节点包括入口电路和出口电路。该 方法包括 : 在出口电路处从入口电路接收分组 ; 在出口电路的时间戳生成器处生成时间戳 ; 在出 口电路处基于时间戳和分组将由于在位于时间戳 生成器下游的缓冲器中缓冲而经历的估计可变延 迟来计算虚拟时间戳 ; 并且在出口电路处、 在向 再一节点发送分组之前将虚拟时间戳用于更新累 计驻留时间。 (30)优先权数据 (85)PCT申请进入国家阶段日 2012.10.22 (86)PCT申。

3、请的申请数据 PCT/EP2011/055904 2011.04.14 (87)PCT申请的公布数据 WO2011/131556 EN 2011.10.27 (51)Int.Cl. 权利要求书 2 页 说明书 13 页 附图 11 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 2 页 说明书 13 页 附图 11 页 1/2 页 2 1. 一种用于更新在分组交换通信网络的节点 (N, N1) 接收的同步分组 (SP) 的累计驻 留时间 (CRT) 的方法, 所述累计驻留时间 (CRT) 等于所述同步分组 (SP) 在所述分组交换网 络的设置于已经生成所述同步分组(。

4、SP)的又一节点与所述节点(N, N1)之间的节点的驻留 时间的累计求和, 所述节点 (N, N1) 包括配置成接收所述同步分组 (SP) 的入口电路 (IC) 和 配置成向所述分组交换通信网络的再一节点(N2)发送所述同步分组(SP)的出口电路(EC, EC1), 所述方法包括 : a) 在所述出口电路 (EC, EC1) 处从所述入口电路 (IC) 接收所述同步分组 (SP) ; b) 在所述出口电路 (EC, EC1) 的出口时间戳生成器 (TSGeg, TSG1eg) 处生成出口时间 戳 (TS(EG, LOG), TS1(EG, PHY), TS1(EG, LOG) ; c) 在所述。

5、出口电路 (EC, EC1) 处基于所述出口时间戳 (TS(EG, LOG), TS1(EG, PHY), TS1(EG, LOG) 并且基于估计的可变延迟来计算虚拟时间戳 (VIRTUAL_TS(EG, PHY), VIRTUAL_TS2(IN, LOG), 该估计的可变延迟是所述同步分组 (SP) 将由于在位于所述出口 时间戳生成器 (TSGeg, TSG1eg) 下游的缓冲器 (Beg, B1eg, B2in) 中进行缓冲而经历的 ; 以 及 d) 在所述出口电路 (EC, EC1) 处, 在向所述再一节点 (N2) 发送所述同步分组 (SP) 之 前将所述虚拟时间戳 (VIRTUAL_。

6、TS(EG, PHY), VIRTUAL_TS2(IN, LOG) 用于更新所述累计驻 留时间 (CRT)。 2. 根据权利要求 1 所述的方法, 其中所述步骤 b) 包括生成出口逻辑时间戳 (TS(EG, LOG), TS1(EG, LOG)。 3. 根据权利要求 2 所述的方法, 其中所述步骤 c) 包括基于所述出口逻辑时间 戳 (TS(EG, LOG), TS1(EG, LOG) 并且基于估计的可变延迟来计算虚拟出口物理时间戳 (VIRTUAL_TS(EG, PHY), 该估计的可变延迟是所述同步分组 (SP) 将由于在所述出口电路 (EC, EC1) 中包括的并且位于所述出口时间戳生成。

7、器 (TSGeg, TSG1eg) 下游的出口缓冲器 (Beg, B1eg) 中进行缓冲而经历的。 4.根据权利要求3所述的方法, 其中所述步骤c)还包括基于所述虚拟出口物理时间戳 (VIRTUAL_TS(EG, PHY) 并且基于估计的可变延迟来计算虚拟入口逻辑时间戳 (VIRTUAL_ TS2(IN, LOG), 该估计的可变延迟是所述同步分组 (SP) 将由于在所述再一节点 (N2) 的又 一入口电路 (IC2) 中包括的入口缓冲器 (B2in) 中进行缓冲而经历的。 5. 根据权利要求 1 所述的方法, 其中所述步骤 b) 包括生成出口物理时间戳 (TS1(EG, PHY)。 6. 根。

8、据权利要求 5 所述的方法, 其中所述步骤 c) 包括基于所述出口物理时间戳 (TS1(EG, PHY) 并且基于估计的可变延迟来计算虚拟入口逻辑时间戳 (VIRTUAL_TS2(IN, LOG), 该估计的可变延迟是所述同步分组(SP)将由于在所述再一节点(N2)的又一入口电 路 (IC2) 中包括的入口缓冲器 (B2in) 中进行缓冲而经历的。 7. 根据任一前述权利要求所述的方法, 其中它还包括 : 在所述步骤 a) 之前在所述入口 电路(IC)接收所述同步分组(SP)时在所述入口电路(IC)生成入口时间戳(TS(IN, PHY)。 8. 根据权利要求 7 所述的方法, 其中它还包括 :。

9、 在所述步骤 a) 之前在所述入口电路 (IC) 处在所述同步分组 (SP) 中写入所述入口时间戳 (TS(IN, PHY)。 9.根据权利要求8所述的方法, 其中所述步骤d)包括 : 从所述同步分组(SP)读取所述 权 利 要 求 书 CN 102859941 A 2 2/2 页 3 入口时间戳 (TS(IN, PHY) ; 将驻留时间 (RT, RT , RT” ) 计算为所述虚拟时间戳 (VIRTUAL_ TS(EG, PHY), VIRTUAL_TS2(IN, LOG) 与所述入口时间戳 (TS(IN, PHY) 之差 ; 以及通过将 所述驻留时间 (RT, RT , RT” ) 与所。

10、述累计驻留时间 (CRT) 相加来更新所述累计驻留时间 (CRT)。 10. 根据权利要求 7 所述的方法, 其中它还包括 : 在所述步骤 a) 之前在所述入口电路 (IC) 处从所述累计驻留时间 (CRT) 减去所述入口时间戳 (TS(IN, PHY)。 11. 根据权利要求 10 所述的方法, 其中所述步骤 d) 包括将所述虚拟时间戳 (VIRTUAL_ TS(EG, PHY), VIRTUAL_TS2(IN, LOG) 与所述累计驻留时间 (CRT) 相加。 12.根据任一前述权利要求的方法, 其中所述步骤d)还包括在向所述再一节点(N2)发 送所述同步分组 (SP) 之前在所述同步分组。

11、 (SP) 中写入所述更新的累计驻留时间 (CRT)。 13. 一种包括计算机可执行指令的计算机程序产品, 所述计算机可执行指令用于在所 述程序运行于计算机上时执行根据任一前述权利要求所述的方法的步骤。 14. 一种用于分组交换通信网络的节点 (N, N1), 所述节点 (N, N1) 包括 : -入口电路(IC), 配置成接收具有累计驻留时间(CRT)的同步分组(SP), 所述累计驻留 时间 (CRT) 等于所述同步分组 (SP) 在所述分组交换网络的设置于已经生成所述同步分组 (SP) 的又一节点与所述节点 (N, N1) 之间的节点的驻留时间的累计求和 ; 以及 - 出口电路 (EC, 。

12、EC1), 配置成从所述入口电路 (IC) 接收所述同步分组 (SP) 并且向所 述分组交换通信网络的再一节点 (N2) 发送所述同步分组 (SP), 所述出口电路 (EC, EC1) 包 括 : - 出口时间戳生成器 (TSGeg, TSG1eg), 配置成生成出口时间戳 (TS(EG, LOG), TS1(EG, PHY), TS1(EG, LOG) ; 以及 - 计算模块 (CM, CM1), 配置成基于所述出口时间戳 (TS(EG, LOG), TS 1(EG, PHY), TS1(EG, LOG) 以及基于估计的可变延迟来计算虚拟时间戳 (VIRTUAL_TS(EG, PHY), V。

13、IRTUAL_TS2(IN, LOG), 该估计的可变延迟是所述同步分组 (SP) 将由于在位于所述出口 时间戳生成器 (TSGeg, TSG1eg) 下游的缓冲器 (Beg, B1eg, B2in) 中进行缓冲而经历的, 其中所述出口电路 (EC, EC1) 还被配置成将所述虚拟时间戳 (VIRTUAL_TS(EG, PHY), VIRTUAL_TS2(IN, LOG) 用于更新所述累计驻留时间 (CRT)。 15. 一种分组交换通信网络, 包括根据权利要求 14 所述的节点 (N, N1)。 权 利 要 求 书 CN 102859941 A 3 1/13 页 4 对分组在分组交换通信网络中。

14、的累计驻留时间的更新 技术领域 0001 本发明主要地涉及通信网络领域。具体而言, 本发明涉及对通过分组交换通信网 络发送的分组的累计驻留时间的更新。 背景技术 0002 在分组交换通信网络中, 主节点可以向一个或者多个从节点发送根据同步协议格 式的同步信息。 具体而言, 主节点通常生成与它的本地时钟(频率和/或当天时间)有关的 同步信息并且在同步分组内向从节点发送这一信息。一旦在从节点接收同步信息, 它允许 从节点同步它们的时钟的频率和 / 或当天时间与主节点本地时钟的频率和 / 或当天时间。 0003 已知同步协议的例子是 “网络时间协议 (NTP)” 或者称为 “精确时间协议 (PTP)。

15、” 并且在 2008 年 7 月 24 日的 IEEE Instrumentation and Measurement Society 的文档 “IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurements and Control Systems” 中定义的 IEEE 1588TM-2008 协议。 0004 根据 IEEE 1588TM-2008 协议 ( 参见上文引用的文档的第 32-34 页第 6 章第 6.6.3 节 ), 主节点向从节点发送 Sync 分组并且生成第一时间。

16、戳 t1, 该第一时间戳指示主节点发 送 Sync 分组的时间。根据所谓 “一步时钟” 机制, 在 Sync 分组本身内向从节点发送第一 时间戳 t1。否则, 根据所谓 “两步时钟” 机制, 在主节点在 Sync 分组之后向从节点发送的 Follow_Up分组内向从节点发送第一时间戳t1。 从节点继而接收Sync分组并且生成第二时 间戳t2, 该第二时间戳指示从节点接收Sync分组的时间。 从节点然后向主节点发送Delay_ Req 分组并且生成第三时间戳 t3, 该第三时间戳指示从节点发送这样的分组的时间。主节 点接收 Delay_Req 分组并且生成第四时间戳 t4, 该第四时间戳指示它接。

17、收这样的分组的时 间, 并且继而在 Delay_Resp 分组内向从节点发送第四时间戳 t4。 0005 在上文描述的分组交换结束时, 四个时间戳 t1、 t2、 t3、 t4 在从节点可用。通常定 期重复上文描述的分组交换。通过使用四个时间戳 t1、 t2、 t3、 t4, 从节点能够同步它的本 地时钟的频率和当天时间与主节点的本地时钟的频率和 / 或当天时间。 0006 跨分组交换网络、 例如在以太网网络上传送的分组一般受依赖于网络业务条件的 延迟变化所影响。实际上, 分组交换网络节点包括生成预先不可预测的可变延迟的设备。 0007 例如在分组交换网络的节点, 每个分组由入口物理接口接收,。

18、 它然后存储于 OSI 模型的 “媒体访问控制 (MAC)” 层的入口 FIFO 缓冲器中。然后在节点内处理分组。接着, 分 组存储于MAC层的出口FIFO缓冲器中, 然后它由出口物理接口发送。 FIFO缓冲器无业务优 先顺序安排机制。因此, 分组在 FIFO 缓冲器中存储不可预测的时间、 然后在节点内经历不 可预测的驻留时间。 0008 上述考虑对于数据分组和同步分组而言均有效。只要涉及同步分组, 不可预测的 延迟变化特别关键, 因为它们妨碍从节点以可接受的准确度恢复主节点生成的同步信息、 因此妨碍从节点将它们的时钟与主节点的本地时钟同步。 0009 IEEE 1588TM-2008 协议在。

19、分组交换网络的每个节点定义 “透明时钟” 机制 ( 参见 说 明 书 CN 102859941 A 4 2/13 页 5 上文引用的文档的第 6 章第 6.5.4 节 ) 这一机制允许测量同步分组 ( 并且具体为 Sync 和 Delay_Req分组)在节点内的驻留时间。 这样, 每个从节点能够考虑同步分组在分组交换网 络的节点内的驻留时间并且也考虑有关延迟变化来恢复同步。 实际上, 在接收同步分组时, 节点生成入口时间戳, 并且在节点发送分组时, 它生成出口时间戳。然后计算同步分组在 节点内的驻留时间为出口时间戳与入口时间戳之差。根据上文提到的一步时钟机制, IEEE 1588TM-2008。

20、 协议提供在节点转发同步分组之前将驻留时间用于更新同步分组本身的纠正 字段的内容。否则, 根据上文提到的两步时钟机制, IEEE1588TM-2008 协议提供转发同步分 组并且将它的驻留时间用于更新向同步分组关联的后续分组 (Follow_Up 分组或者 Delay_ resp 分组 ) 的校正字段 (Correction Field) 的内容。 发明内容 0010 驻留时间的计算依赖于确切地在节点的入口物理接口接收同步分组时生成入口 时间戳并且确切地在节点的出口物理接口发送同步分组时生成出口时间戳这样的事实。 因 此要求节点的入口和出口物理接口适合用于与相应时间戳生成器配合。 0011 然。

21、而不利的是, 当前分组交换网络的多数节点未具有适合用于与时间戳生成器配 合的物理接口。 0012 在原理上, 可以将同步分组在节点内的驻留时间计算为不是在节点的入口和出口 物理接口而是在节点中包括(即位于入口物理接口与出口物理接口之间)的两个其它设备 生成的两个时间戳之差。 0013 然而不利的是, 这一计算的驻留时间不会考虑可能设置于入口与出口物理接口之 间的部件 ( 例如 MAC 层的入口和出口 FIFO 缓冲器 ) 以及生成时间戳的设备所引起的延迟。 如上文提到的那样, 这些延迟根据在节点的业务条件以不可预测的方式可变。 因此, 在这一 情况下, 计算的驻留时间不会准确, 因为它将不利地。

22、受可变并且不可预测的误差影响。 0014 因而发明人已经解决提供一种克服前述缺点的、 用于在分组交换通信网络的节点 更新接收的分组 ( 具体为但是并非仅为同步分组 ) 的累计驻留时间的方法这一问题。 0015 具体而言, 发明人已经解决提供一种用于在分组交换通信网络的节点更新接收的 分组(具体为但是并非仅为同步分组)的累计驻留时间并且同时提供准确累计驻留时间的 方法这一问题, 其中未必在入口和出口物理接口处生成入口和出口时间戳。 0016 在本说明书中和在权利要求书中, 表达 “入口物理时间戳” 和 “出口物理时间戳” 将 表示适合用于与节点的入口 / 出口物理接口 ( 即在 OSI 模型的第。

23、 1 层操作的接口 ) 配合的 时间戳生成器生成的时间戳。此外, 表达 “入口逻辑时间戳” 和 “出口逻辑时间戳” 将表示 适合用于与节点的在比 OSI 模型的第 1 层更高的层 ( 例如第 2 层 ) 处理分组的设备配合的 时间戳生成器生成的时间戳。 0017 另外, 表达 “虚拟逻辑 / 物理时间戳” 将指示计算模块所计算的逻辑 / 物理时间戳 的估计。 0018 根据第一方面, 本发明提出一种用于更新在分组交换通信网络的节点接收的同步 分组的累计驻留时间的方法, 该累计驻留时间等于分组在设置于已经生成分组的又一节点 与该节点之间的节点的驻留时间的累计时间, 该节点包括配置成接收同步分组的。

24、入口电路 和配置成向分组交换通信网络的再一节点发送同步分组的出口电路。该方法包括 : 说 明 书 CN 102859941 A 5 3/13 页 6 0019 a) 在出口电路处从入口电路接收同步分组 ; 0020 b) 在出口电路的时间戳生成器处生成出口时间戳 ; 0021 c) 在出口电路处基于出口时间戳并且基于估计可变延迟来计算虚拟时间戳, 该估 计的可变延迟是同步分组将由于在位于出口时间戳生成器下游的缓冲器中进行缓冲而经 历的 ; 以及 0022 d) 在出口电路处, 在向再一节点发送同步分组之前将虚拟时间戳用于更新累计驻 留时间。 0023 优选地, 步骤 b) 包括生成出口逻辑时间。

25、戳。 0024 优选地, 步骤 c) 包括基于出口逻辑时间戳和同步分组将由于在出口电路中包括 的并且基于估计的可变延迟来计算虚拟出口物理时间戳, 该估计的可变延迟是同步分组将 由于位于出口时间戳生成器下游的包括在出口电路中的出口缓冲器中进行缓冲而经历的。 0025 优选地, 步骤 c) 还包括基于虚拟出口物理时间戳并且基于估计的可变延迟来计 算虚拟入口逻辑时间戳, 该估计的可变延迟是同步分组将由于在再一节点的又一入口电路 中包括的入口缓冲器中进行缓冲而经历的。 0026 优选地, 步骤 b) 包括生成出口物理时间戳。 0027 优选地, 步骤 c) 包括基于出口物理时间戳并且基于估计的可变延迟。

26、来计算虚拟 入口逻辑时间戳, 该估计的可变延迟是同步分组将由于在再一节点的又一入口电路中包括 的入口缓冲器中进行缓冲而经历的。 0028 优选地, 该方法还包括 : 在步骤 a) 之前在入口电路接收同步分组时在入口电路生 成入口时间戳。 0029 优选地, 该方法还包括 : 在步骤 a) 之前在入口电路在同步分组中写入入口时间 戳。 0030 优选地, 步骤 d) 包括 : 从同步分组读取入口时间戳 ; 将驻留时间计算为虚拟时间 戳与入口时间戳之差 ; 以及通过将驻留时间与累计驻留时间相加来更新累计驻留时间。 0031 优选地, 该方法还包括 : 在步骤 a) 之前在入口电路从累计驻留时间减去。

27、入口时间 戳。 0032 优选地, 步骤 d) 包括将虚拟时间戳与累计驻留时间相加。 0033 优选地, 步骤 d) 还包括在向再一节点发送同步分组之前在同步分组中写入更新 的累计驻留时间 0034 本发明根据其第二方面提供一种包括计算机可执行指令的计算机程序产品, 这些 计算机可执行指令用于在程序运行于计算机上时执行如上文阐述的方法的步骤。 0035 本发明根据其第三方面提供一种用于分组交换通信网络的节点, 该节点包括 : 0036 - 入口电路, 配置成接收具有累计驻留时间的同步分组, 该累计驻留时间等于同步 分组在分组交换网络的设置于已经生成同步分组的又一节点与该节点之间的节点的驻留 时。

28、间的累计求和 ; 以及 0037 - 出口电路, 配置成从入口电路接收同步分组并且向分组交换通信网络的再一节 点发送同步分组, 该出口电路包括 : 0038 - 出口时间戳生成器, 配置成生成出口时间戳 ; 以及 0039 - 计算模块, 配置成基于出口时间戳并且基于估计的可变延迟来计算虚拟时间戳, 说 明 书 CN 102859941 A 6 4/13 页 7 该估计的可变延迟是同步分组将由于在位于出口时间戳生成器下游的缓冲器中进行缓冲 而经历的, 0040 其中出口电路还被配置成将虚拟时间戳用于更新累计驻留时间。 0041 本发明根据其第四方面提供一种包括如上文阐述的节点的分组交换通信网络。

29、。 附图说明 0042 现在将通过阅读将参照以下附图阅读的通过例子而非限制而给出的下文具体实 施方式来更好地理解本发明的实施例 : 0043 - 图 1 示出了根据本发明第一实施例的分组交换通信网络的节点的框图 ; 0044 -图2a和图2b是流程图, 这些流程图描述根据本发明第一实施例的第一和第二变 化的、 图 1 的节点的操作 ; 0045 - 图 3a 和图 3b 示意地示出了图 1 的节点接收的同步分组的格式 ; 0046 - 图 4 示出了这些时间图图 1 的节点的操作的三个时间图 ; 0047 - 图 5 示出了根据本发明第二实施例的分组交换通信网络的节点对的框图 ; 0048 图。

30、 6a 和图 6b 是这些流程图描述根据本发明第二实施例的第一和第二变化的、 图 5 的节点对的操作的流程图 ; 0049 - 图 7 示出了根据本发明第三实施例的分组交换通信网络的节点对的框图 ; 以及 0050 -图8a和图8b是描述根据本发明第三实施例的第一和第二变化的、 图7的节点对 的操作的流程图。 具体实施方式 0051 图1示出了根据本发明第一实施例的分组交换通信网络的节点N。 优选地, 分组交 换网络是支持上文提到的 IEEE1588TM-2008 同步协议的以太网网络。 0052 节点 N 优选地包括入口电路 IC, 该入口电路又包括级联连接的入口物理接口 PHYin、 入口。

31、缓冲器 Bin 和入口分组处理器 PPin。入口物理接口 PHYin 优选地通过物理链 路连接到分组交换通信网络的又一节点 ( 在附图中未示出 )。节点 N 还可以包括在图 1 中 未示出的设置于入口物理接口 PHYin 与入口分组处理器 PPin 之间的入口块。另外, 节点 N 优选地包括出口电路 EC, 该出口电路又包括级联连接的出口分组处理器 PPeg、 出口缓冲器 Beg 和出口物理接口 PHYeg。出口物理接口 PHYeg 优选地通过又一物理链路连接到分组交 换通信网络的再一节点 ( 在附图中未示出 )。节点 N 还可以包括在图 1 中未示出的设置于 出口分组处理器 PPeg 与出口。

32、物理接口 PHYeg 之间的出口块。 0053 优选地, 节点 N 还包括设置于入口电路 IC 与出口电路 EC 之间的其它硬件和 / 或 软件块。在附图中未示出这些块, 因为它们与本说明书无关。 0054 优选地, 入口分组处理器 PPin 和出口分组处理器 PPeg 实施于一个或者多个 FPGA(“现场可编程门阵列” ) 设备内、 例如节点 N 的网络处理器 ( 在图 1 中未示出 ) 内。 0055 入口电路IC优选地还包括入口时间戳生成器TSGin, 并且出口电路EC优选地还包 括出口时间戳生成器 TSGeg。根据本发明的第一实施例, 如下文将更详细描述的那样, 入口 时间戳生成器 T。

33、SGin 适合用于与入口物理接口 PHYin 配合以便生成入口物理时间戳, 而出 口时间戳生成器 TSGeg 适合用于与出口分组处理器 PPeg 配合以便生成出口逻辑时间戳。 说 明 书 CN 102859941 A 7 5/13 页 8 0056 优选地, 出口电路 EC 也包括连接到出口分组处理器 PPeg 和出口时间戳生成器 TSGeg 的计算模块 CM。优选地, 计算模块 CM 实施于 FPGA 设备内、 例如节点 N 的网络处理器 ( 在图 1 中未示出 ) 内。 0057 参照图 2a、 图 3a 和 3b, 现在将描述根据本发明第一实施例的第一变化的节点 N 的 操作。 0058。

34、 假设节点 N 经由它的入口物理接口 PHYin 从与之相邻的上文提到的又一节点接 收分组。这些分组可以包括数据分组和 / 或同步分组。优选地根据同步协议、 例如 IEEE 1588TM-2008 协议来格式化同步分组。 0059 具体而言, 在步骤 200, 节点 N 的入口物理接口 PHYin 接收同步分组 SP。优选地如 图 3a 中所示格式化同步分组 SP。优选地, 同步分组 SP 包括标头 H-SP 和主体 B-SP。 0060 优选地, 主体 B-SP 包括时间戳 ( 例如 IEEE 1588TM-2008 协议提供的时间戳 t1) 和 可能其它信息, 在图 3a 和 3b 中未示。

35、出这些其它信息, 因为它们与本说明书无关。 0061 优选地, 标头 H-SP 包括调整字段 AF 和其它字段, 在图 3a 和 3b 中未示出这些, 因 为它们与本说明书无关。优选地, 如果同步分组 SP 是 IEEE 1588TM-2008 协议, 则调整字段 AF 是 “校正字段” 。当在节点 N 接收同步分组 SP 时, 调整字段 AF 优选地包括与同步分组 SP 在分组交换网络的如下节点的驻留时间的累计求和相等的累计驻留时间 CRT, 这些节点设 置于已经生成同步分组 SP 的节点与节点 N 之间。 0062 一旦入口物理接口 PHYin 接收同步分组 SP, 入口时间戳生成器 TS。

36、Gin 基本上同时 生成入口物理时间戳 TS(IN, PHY)( 步骤 201)。然后, 入口物理接口 PHYin 优选地在同步分 组 SP 的字段中写入入口物理时间戳 TS(IN, PHY)( 步骤 201a)。优选地, 字段是标头 H-SP 的 专用字段 ( 在图 3a 中未示出 )。 0063 同步分组 SP 然后存储于入口缓冲器 Bin 中 ( 步骤 202)。然后优选地向入口分组 处理器 PPin 转发同步分组 SP, 该入口分组处理器处理它 ( 步骤 203)。 0064 同步分组 SP 然后到达出口分组处理器 PPeg, 该出口分组处理器处理它 ( 步骤 204)。应当注意出口分。

37、组处理器 PPeg 不仅从图 1 中所示入口分组处理器 PPin 而且从节点 N 中包括的其它出口分组处理器 ( 在图 1 中未示出 ) 接收分组。在步骤 204 期间, 出口分组 处理器 PPeg 优选地向同步分组 SP 关联序号 SN, 该序号 SN 考虑在出口分组处理器 PPeg 接 收分组的顺序。另外, 在处理期间, 出口分组处理器 PPeg 优选地从同步分组 SP 读取入口物 理时间戳 TS(IN, PHY)( 步骤 204a)。 0065 然后, 出口时间戳生成器 TSGeg 优选地生成出口逻辑时间戳 TS(EG, LOG)( 步骤 205)。 计算模块CM然后优选地计算虚拟出口物。

38、理时间戳VIRTUAL_TS(EG, PHY)(步骤206), 该时间戳基本上指示同步分组 SP 将由出口物理接口 PHYeg 实际发送的时间。计算模块 CM 然后优选地将驻留时间 RT( 步骤 207) 计算为虚拟出口物理时间戳 VIRTUAL_TS(EG, PHY) 与 入口物理时间戳 TS(IN, PHY) 之差, 即 : 0066 RT VIRTUAL_TS(EG, PHY)-TS(IN, PHY)。2 0067 然后, 出口分组处理器 PPeg 优选地使用驻留时间 RT 以如图 3b 中所示通过将驻留 时间 RT 与在同步分组 SP 的标头 H-SP 的调整字段 AF 中包括的累计驻。

39、留时间 CRT 相加来更 新该累计驻留时间 ( 步骤 208)。 0068 随后, 出口分组处理器 PPeg 向出口缓冲器 Beg 转发同步分组 SP, 并且它存储于该 说 明 书 CN 102859941 A 8 6/13 页 9 出口缓冲器中 ( 步骤 209)。然后, 向出口物理接口 PHYeg 转发同步分组 SP, 该出口物理接 口向与节点 N 相邻的上文提到的再一节点发送它 ( 步骤 210)。 0069 下文将详细描述计算模块 CM 在步骤 206 执行的虚拟出口物理时间戳 VIRTUAL_ TS(EG, PHY) 的计算。 0070 优选地, 计算模块 CM 知道与出口缓冲器 B。

40、eg 关联的多个参数。这些参数优选地包 括以下参数中的一个或者多个参数 : 0071 - 写入位速率 WR ; 0072 - 读取位速率 RR ; 0073 - 写入粒度 WG, 即在出口缓冲器 Beg 中并行写入的位数 ; 0074 - 读取粒度 RG, 即从出口缓冲器 Beg 并行读取的位数 ; 0075 - 写入开通延时 WC, 即分组在向出口缓冲器 Beg 中写入它们时经历的恒定延迟 ; 0076 -读取开通延时RC, 即分组在从出口缓冲器Beg读取它们时经历的恒定延迟 ; 以及 0077 - 调整因子 A, 该调整因子考虑写入位速率 WR 与读取位速率 RR 之差。具体而言, 在其中。

41、写入位速率 WR 和读取位速率 RR 相等 ( 它们均锁定到相同 PLL) 的理想情况下, A 等 于 1。然而 WR 与 RR 之差通常为 +/-200ppm, 因此 A 高于 1。 0078 在步骤 206 期间, 计算模块 CM 优选地执行以下子步骤 : 0079 a) 它检测同步分组 SP 的序号 SN 和位数 L(SN) ; 0080 b) 它借助下式计算将向出口缓冲器 Beg 中完全写入同步分组 SP 的时间 TT(SN) : 0081 TT(SN) TS(EG, LOG)+WC+WGceil(L(SN)/WG)/WR, 3 0082 其中 ceil(L(SN)/WG) 指示不低于。

42、 L(SN) 与 WG 之比的最小整数 ; 0083 c)它借助下式、 仅考虑读取在开始向出口缓冲器Beg中写入同步分组SP之前已经 向出口缓冲器 Beg 中存储的位的操作而未考虑写入同步分组 SP 的操作来计算出口缓冲器 Beg 在时间 TT(SN) 的填充水平 FLb(SN) : 0084 FLb(SN) max0, FLa(SN-1)-ARR(TT(SN)-TT(SN-1)。 4 0085 FLa(SN-1) 是也考虑出口缓冲器 Beg 的读取开通延时 RC、 在向出口缓冲器 Beg 中 完全写入在同步分组 SP 之前的分组 ( 即具有等于 SN-1 的序号的分组 ) 时出口缓冲器 Be。

43、g 的填充水平。符号表示 max 指示填充水平 FLb(SN) 等于在花括号中包括的值之中的最 大值, 而 TT(SN-1) 是已经向出口缓冲器 Beg 中完全写入在同步分组 SP 之前的分组的时间。 因此 FLb(SN) 在填充水平 FLa(SN-1) 和读取位速率 RR 使得在时间间隔 TT(SN)-TT(SN-1) 中出口缓冲器 Beg 变成全空时等于零 ; 0086 d) 它借助下式计算虚拟出口物理时间戳 VIRTUAL_TS(EG, PHY) : 0087 VIRTUAL_TS(EG, PHY) TT(SN)+RGceil(FLb(SN)/RG)/RR+RC ; 0088 5 008。

44、9 并且 0090 e) 它借助下式计算在向出口缓冲器 Beg 中完全写入同步分组 SP 时出口缓冲器 Beg 的填充水平 FLa(SN) : 0091 FLa(SN) FLb(SN)+RCRR+L(SN)。 6 0092 根据上式 5 计算的虚拟出口物理时间戳 VIRTUAL_TS(EG, PHY) 仅考虑同步分组 SP在它存储于出口缓冲器Beg内时积累的延迟。 式5未考虑例如由于可能设置于出口分 说 明 书 CN 102859941 A 9 7/13 页 10 组处理器 PPeg 与出口物理接口 PHYeg 之间的其它块 ( 在图 1 中未示出 ) 处理同步分组 SP 所致的其它可能延迟。。

45、如果这些其它可能延迟已知、 恒定并且在两个方向 (TX 比对 RX) 上 不同, 则可以如 IEEE 1588TM-2008 协议预见的那样补偿它们。 0093 优选地针对在节点 N 接收的每个同步分组重复步骤 200-210( 包括上文描述的步 骤 206 的子步骤 a)-e)。在数据分组的情况下, 优选地省略步骤 206 的子步骤 d) 和步骤 207-208。 0094 有利地, 根据本发明第一实施例的第一变化的方法允许在节点 N 的出口物理接口 PHYeg 不适合用于与时间戳生成器配合时计算同步分组 SP 的驻留时间。有利地, 可以在出 口物理接口PHYeg上游生成出口时间戳, 因为虚。

46、拟出口物理时间戳VIRTUAL_TS(EG, PHY)考 虑设置于出口物理接口 PHYeg 与生成出口时间戳的设备之间的部件 ( 即出口缓冲器 Beg) 所引起的延迟。针对每个同步分组计算虚拟出口物理时间戳 VIRTUAL_TS(EG, PHY), 因此它 的值根据在节点 N 的当前业务条件针对每个同步分组而改变。如将从下文参照图 4 详细描 述的例子清楚的那样, 这允许通过考虑同步分组SP具体在MAC层的出口缓冲器内经历的可 能延迟变化以准确方式更新同步分组 SP 的调整字段 AF。 0095 图 4 示出了图示了根据本发明第一实施例第一变化的节点 N 的操作的三个示例 时间图。图 4 的时。

47、间图涉及出口分组处理器 PPeg 的输入 ( 图 1 中的 (a) 所示 )、 出口缓冲 器 Beg 的输入 ( 图 1 中的 (b) 所示 ) 和出口缓冲器 Beg 的输出 ( 图 1 中的 (c) 所示 )。举 例而言, 图 4 示出了具有位数 L(3) 的第一同步分组 SP3、 继而为具有位数 L(4) 的数据分组 DP4 和具有位数 L(5) 的第二同步分组 SP5。可以通过入口物理接口 PHYin 或者通过在图 1 中未示出的其它入口物理接口在节点 N 接收分组 SP3、 DP4 和 SP5。 0096 当在出口分组处理器 PPeg 接收分组 SP3、 DP4 和 SP5 时, 出口。

48、分组处理器 PPeg 优 选地向相应连续序号, 即 3、 4 和 5 关联它们。 0097 当在出口分组处理器 PPeg 接收第一同步分组 SP3( 步骤 204) 时, 出口时间戳生成 器 TSGeg 生成出口逻辑时间戳 TS3(EG, LOG)( 步骤 205)。然后在步骤 206 期间, 计算模块 CM : 0098 a) 检测第一同步分组 SP3 的序号 SN 3 和位数 L(3) ; 0099 b) 借助上式 3 计算时间 TT(3), 即 : 0100 TT(3) TS3(EG, LOG)+WC+WGceil(L(3)/WG)/WR ; 0101 c) 借助上式 4 计算出口缓冲器 Beg 在时间 TT(3) 的填充水平 FLb(3), 即 : 0102 FLb(3) max0, FLa(2)-ARR(TT(3)-TT(2), 0103 其中 FLa(2) 是在向出口缓冲器 Beg 中完全写入在第一同步分组 SP3 之前的分组 ( 即具有等于 2 的序号的分组 ) 时出口缓冲器 Beg 的填充水平。在下文中, 为了简化而假 设 FLb(3) 等于零, 即在向出口缓冲器 Beg 中完全写入第一同步分组 SP3 时, 无其它分组的 位存在于出口缓冲器 Beg 中 ; 0104 d) 借助上式 5 计算虚拟出口物理时间戳 VIRTUAL_TS3(EG, PHY), 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1