CN102859941A - 对分组在分组交换通信网络中的累计驻留时间的更新 - Google Patents
对分组在分组交换通信网络中的累计驻留时间的更新 Download PDFInfo
- Publication number
- CN102859941A CN102859941A CN2011800204751A CN201180020475A CN102859941A CN 102859941 A CN102859941 A CN 102859941A CN 2011800204751 A CN2011800204751 A CN 2011800204751A CN 201180020475 A CN201180020475 A CN 201180020475A CN 102859941 A CN102859941 A CN 102859941A
- Authority
- CN
- China
- Prior art keywords
- virtual
- node
- grouping
- entrance
- outlet
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/04—Speed or phase control by synchronisation signals
-
- 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/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0685—Clock or time synchronisation in a node; Intranode synchronisation
- H04J3/0697—Synchronisation in a packet node
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/0858—One way delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0682—Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5603—Access techniques
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开一种用于更新在分组交换通信网络的节点接收的同步分组的累计驻留时间的方法。累计驻留时间等于分组在设置于已经生成分组的又一节点与该节点之间的节点的驻留时间的累计时间。该节点包括入口电路和出口电路。该方法包括:在出口电路处从入口电路接收分组;在出口电路的时间戳生成器处生成时间戳;在出口电路处基于时间戳和分组将由于在位于时间戳生成器下游的缓冲器中缓冲而经历的估计可变延迟来计算虚拟时间戳;并且在出口电路处、在向再一节点发送分组之前将虚拟时间戳用于更新累计驻留时间。
Description
技术领域
本发明主要地涉及通信网络领域。具体而言,本发明涉及对通过分组交换通信网络发送的分组的累计驻留时间的更新。
背景技术
在分组交换通信网络中,主节点可以向一个或者多个从节点发送根据同步协议格式的同步信息。具体而言,主节点通常生成与它的本地时钟(频率和/或当天时间)有关的同步信息并且在同步分组内向从节点发送这一信息。一旦在从节点接收同步信息,它允许从节点同步它们的时钟的频率和/或当天时间与主节点本地时钟的频率和/或当天时间。
已知同步协议的例子是“网络时间协议(NTP)”或者称为“精确时间协议(PTP)”并且在2008年7月24日的IEEE Instrumentation andMeasurement Society的文档“IEEE Standard for a Precision ClockSynchronization Protocol for Networked Measurements and ControlSystems”中定义的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)和非易失性储存器。也可以包括其它常规和/或定制硬件。
Claims (15)
1.一种用于更新在分组交换通信网络的节点(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)。
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)中包括的并且位于所述出口时间戳生成器(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.根据权利要求5所述的方法,其中所述步骤c)包括基于所述出口物理时间戳(TS1(EG,PHY))并且基于估计的可变延迟来计算虚拟入口逻辑时间戳(VIRTUAL_TS2(IN,LOG)),该估计的可变延迟是所述同步分组(SP)将由于在所述再一节点(N2)的又一入口电路(IC2)中包括的入口缓冲器(B2in)中进行缓冲而经历的。
7.根据任一前述权利要求所述的方法,其中它还包括:在所述步骤a)之前在所述入口电路(IC)接收所述同步分组(SP)时在所述入口电路(IC)生成入口时间戳(TS(IN,PHY))。
8.根据权利要求7所述的方法,其中它还包括:在所述步骤a)之前在所述入口电路(IC)处在所述同步分组(SP)中写入所述入口时间戳(TS(IN,PHY))。
9.根据权利要求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)。
10.根据权利要求7所述的方法,其中它还包括:在所述步骤a)之前在所述入口电路(IC)处从所述累计驻留时间(CRT)减去所述入口时间戳(TS(IN,PHY))。
11.根据权利要求10所述的方法,其中所述步骤d)包括将所述虚拟时间戳(VIRTUAL_TS(EG,PHY),VIRTUAL_TS2(IN,LOG))与所述累计驻留时间(CRT)相加。
12.根据任一前述权利要求的方法,其中所述步骤d)还包括在向所述再一节点(N2)发送所述同步分组(SP)之前在所述同步分组(SP)中写入所述更新的累计驻留时间(CRT)。
13.一种包括计算机可执行指令的计算机程序产品,所述计算机可执行指令用于在所述程序运行于计算机上时执行根据任一前述权利要求所述的方法的步骤。
14.一种用于分组交换通信网络的节点(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)。
15.一种分组交换通信网络,包括根据权利要求14所述的节点(N,N1)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP10305432A EP2381622B1 (en) | 2010-04-23 | 2010-04-23 | Update of a cumulative residence time of a packet in a packet-switched communication network |
EP10305432.6 | 2010-04-23 | ||
PCT/EP2011/055904 WO2011131556A1 (en) | 2010-04-23 | 2011-04-14 | Update of a cumulative residence time of a packet in a packet-switched communication network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102859941A true CN102859941A (zh) | 2013-01-02 |
CN102859941B CN102859941B (zh) | 2016-07-06 |
Family
ID=42244862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180020475.1A Expired - Fee Related CN102859941B (zh) | 2010-04-23 | 2011-04-14 | 对分组在分组交换通信网络中的累计驻留时间的更新 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9203725B2 (zh) |
EP (1) | EP2381622B1 (zh) |
JP (1) | JP5548305B2 (zh) |
KR (1) | KR101413506B1 (zh) |
CN (1) | CN102859941B (zh) |
WO (1) | WO2011131556A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079400A (zh) * | 2013-03-27 | 2014-10-01 | 美国博通公司 | 为数据包加盖时间戳 |
WO2018099048A1 (zh) * | 2016-12-02 | 2018-06-07 | 深圳市中兴微电子技术有限公司 | 一种时间戳处理方法及设备、存储介质 |
CN111052668A (zh) * | 2017-08-31 | 2020-04-21 | 中兴通讯股份有限公司 | 用于优化网络服务的驻留时间测量 |
CN113132179A (zh) * | 2019-12-30 | 2021-07-16 | 瞻博网络公司 | 测量分组驻留和传播时间 |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8718482B1 (en) * | 2009-11-10 | 2014-05-06 | Calix, Inc. | Transparent clock for precision timing distribution |
JP5682391B2 (ja) * | 2011-03-22 | 2015-03-11 | 富士通株式会社 | データ転送装置、並列計算機システムおよびデータ転送装置の制御方法 |
WO2013070797A1 (en) | 2011-11-07 | 2013-05-16 | Vitesse Semiconductor Corporation | Physical layer processing of timestamps and mac security |
IL217232A0 (en) * | 2011-12-27 | 2012-03-29 | Eci Telecom Ltd | Technique for monitoring and management of data networks |
US8958327B2 (en) * | 2012-08-10 | 2015-02-17 | Cisco Technology, Inc. | Passive network latency monitoring |
EP2712099B1 (en) * | 2012-09-19 | 2015-04-01 | Alcatel Lucent | Method for managing and maintaining an accurate distribution of time in a network when a failure occurs |
US9450846B1 (en) * | 2012-10-17 | 2016-09-20 | Cisco Technology, Inc. | System and method for tracking packets in a network environment |
US8879586B2 (en) * | 2012-12-20 | 2014-11-04 | Broadcom Corporation | Inband timestamping |
JP5850180B2 (ja) * | 2013-01-04 | 2016-02-03 | 日本電気株式会社 | 通信装置及び同期制御方法 |
US10374735B2 (en) | 2013-06-18 | 2019-08-06 | Nec Corporation | Communication system, communication system control method, transmission device, and reception device |
US20160128012A1 (en) * | 2013-06-18 | 2016-05-05 | Nec Corporation | Communication system, communication system control method, transmission device, and reception device |
US9667370B2 (en) * | 2013-09-05 | 2017-05-30 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Communication device with peer-to-peer assist to provide synchronization |
US9306693B2 (en) * | 2013-11-15 | 2016-04-05 | Broadcom Corporation | Time synchronization architecture in a network device |
US9288112B2 (en) * | 2013-11-21 | 2016-03-15 | Rockwell Automation Technologies, Inc. | Automatic network discovery in precision time protocol networks |
EP2919400A1 (en) * | 2014-03-13 | 2015-09-16 | Alcatel Lucent | Method and device for forwarding a clock synchronization message |
WO2016070947A1 (en) * | 2014-11-05 | 2016-05-12 | Telefonaktiebolaget L M Ericsson (Publ) | Transmitting residence time information in a network |
US10015048B2 (en) | 2014-12-27 | 2018-07-03 | Intel Corporation | Programmable protocol parser for NIC classification and queue assignments |
US9825862B2 (en) | 2015-08-26 | 2017-11-21 | Barefoot Networks, Inc. | Packet header field extraction |
US9912774B2 (en) | 2015-12-22 | 2018-03-06 | Intel Corporation | Accelerated network packet processing |
US9929928B1 (en) * | 2015-12-24 | 2018-03-27 | Microsemi Solutions (U.S.), Inc. | Packet transmitter and method for timestamping packets |
US10237587B2 (en) * | 2016-06-10 | 2019-03-19 | Nokia Of America Corporation | Transporting out-of-band signals in distributed cable systems |
US11223520B1 (en) | 2017-01-31 | 2022-01-11 | Intel Corporation | Remote control plane directing data plane configurator |
US10694006B1 (en) | 2017-04-23 | 2020-06-23 | Barefoot Networks, Inc. | Generation of descriptive data for packet fields |
US11503141B1 (en) | 2017-07-23 | 2022-11-15 | Barefoot Networks, Inc. | Stateful processing unit with min/max capability |
US10887211B2 (en) * | 2017-09-18 | 2021-01-05 | Microsemi Storage Solutions, Inc. | Indirect packet classification timestamping system and method |
US11477100B2 (en) | 2017-09-26 | 2022-10-18 | Zte Corporation | Residence time measurement for traffic engineered network |
US10594630B1 (en) | 2017-09-28 | 2020-03-17 | Barefoot Networks, Inc. | Expansion of packet data within processing pipeline |
US11171856B2 (en) * | 2017-12-07 | 2021-11-09 | Intel Corporation | Distributed timestamping in networks |
JP6977668B2 (ja) * | 2018-06-04 | 2021-12-08 | 日本電信電話株式会社 | 測定システム、及び測定方法 |
US10505651B1 (en) * | 2018-08-03 | 2019-12-10 | Whelen Engineering Company, Inc. | Precision time synchronization over standardized networking protocols |
CN111327386B (zh) * | 2018-12-14 | 2023-08-08 | 深圳市中兴微电子技术有限公司 | 一种延时抖动补偿方法、装置及计算机存储介质 |
CN111918380B (zh) * | 2020-07-27 | 2021-08-20 | 深圳大学 | 电子设备与无线网络中的参考节点同步的方法及电子设备 |
US11711283B2 (en) * | 2021-03-11 | 2023-07-25 | Mellanox Technologies, Ltd. | Cable latency measurement |
US12068971B2 (en) * | 2022-02-25 | 2024-08-20 | Google Llc | Robust age-saturation mechanism for age-based arbitration in packet networks |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997037310A1 (en) * | 1996-04-01 | 1997-10-09 | Gte Laboratories Incorporated | Performance monitoring of an atm switch |
US20030091047A1 (en) * | 2001-07-25 | 2003-05-15 | Overture Networks, Inc. | Measurement of packet delay variation |
EP1542398A1 (en) * | 2003-12-12 | 2005-06-15 | Alcatel | Distributed architecture for real-time flow measurement at the network domain level |
US20090164173A1 (en) * | 2007-12-19 | 2009-06-25 | International Business Machines Corporation | Method and Apparatus for Network Performance Management |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6502222B1 (en) * | 2000-09-28 | 2002-12-31 | Lsi Logic Corporation | Method of clock buffer partitioning to minimize clock skew for an integrated circuit design |
US20080175275A1 (en) | 2007-01-22 | 2008-07-24 | Samsung Electronics Co., Ltd. | Time synchronization method between nodes in network and apparatus for implementing the same |
JP5228714B2 (ja) | 2008-09-02 | 2013-07-03 | 富士通株式会社 | 時刻同期方法および中継装置 |
JP2010213101A (ja) | 2009-03-11 | 2010-09-24 | Toshiba Corp | メッセージを中継する中継装置およびプログラム |
-
2010
- 2010-04-23 EP EP10305432A patent/EP2381622B1/en not_active Not-in-force
-
2011
- 2011-04-14 JP JP2013505415A patent/JP5548305B2/ja not_active Expired - Fee Related
- 2011-04-14 KR KR1020127030438A patent/KR101413506B1/ko not_active IP Right Cessation
- 2011-04-14 US US13/637,887 patent/US9203725B2/en not_active Expired - Fee Related
- 2011-04-14 CN CN201180020475.1A patent/CN102859941B/zh not_active Expired - Fee Related
- 2011-04-14 WO PCT/EP2011/055904 patent/WO2011131556A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997037310A1 (en) * | 1996-04-01 | 1997-10-09 | Gte Laboratories Incorporated | Performance monitoring of an atm switch |
US5793976A (en) * | 1996-04-01 | 1998-08-11 | Gte Laboratories Incorporated | Method and apparatus for performance monitoring in electronic communications networks |
US20030091047A1 (en) * | 2001-07-25 | 2003-05-15 | Overture Networks, Inc. | Measurement of packet delay variation |
EP1542398A1 (en) * | 2003-12-12 | 2005-06-15 | Alcatel | Distributed architecture for real-time flow measurement at the network domain level |
US20090164173A1 (en) * | 2007-12-19 | 2009-06-25 | International Business Machines Corporation | Method and Apparatus for Network Performance Management |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079400A (zh) * | 2013-03-27 | 2014-10-01 | 美国博通公司 | 为数据包加盖时间戳 |
WO2018099048A1 (zh) * | 2016-12-02 | 2018-06-07 | 深圳市中兴微电子技术有限公司 | 一种时间戳处理方法及设备、存储介质 |
CN111052668A (zh) * | 2017-08-31 | 2020-04-21 | 中兴通讯股份有限公司 | 用于优化网络服务的驻留时间测量 |
CN111052668B (zh) * | 2017-08-31 | 2021-07-20 | 中兴通讯股份有限公司 | 用于优化网络服务的驻留时间测量 |
CN113132179A (zh) * | 2019-12-30 | 2021-07-16 | 瞻博网络公司 | 测量分组驻留和传播时间 |
Also Published As
Publication number | Publication date |
---|---|
US20130028265A1 (en) | 2013-01-31 |
JP2013526167A (ja) | 2013-06-20 |
CN102859941B (zh) | 2016-07-06 |
KR101413506B1 (ko) | 2014-07-02 |
US9203725B2 (en) | 2015-12-01 |
EP2381622B1 (en) | 2012-06-20 |
JP5548305B2 (ja) | 2014-07-16 |
WO2011131556A1 (en) | 2011-10-27 |
EP2381622A1 (en) | 2011-10-26 |
KR20130018306A (ko) | 2013-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102859941A (zh) | 对分组在分组交换通信网络中的累计驻留时间的更新 | |
KR101506138B1 (ko) | 원격통신 네트워크에서 시간 분배를 위한 방법, 장치 및 시스템 | |
CN102265549B (zh) | 网络时间同步系统 | |
US9571376B2 (en) | Timestamp predictor for packets over a synchronous protocol | |
US10979164B2 (en) | Peer-to-peer transparent clocks and methods of estimating skew in peer-to-peer transparent clocks | |
EP2254267B1 (en) | Multi input timing recovery over packet networks | |
US7664118B2 (en) | System and method for high precision clock recovery over packet networks | |
US7596153B2 (en) | Clock-state correction and/or clock-rate correction using relative drift-rate measurements | |
US8416814B2 (en) | System and method for high precision clock recovery over packet networks | |
CN103888237A (zh) | 一种实现时钟时间同步的方法及装置 | |
KR20100016364A (ko) | 한 네트워크 구성요소의 클록을 다른 네트워크 구성요소의 클록과 동기화시키기 위한 방법 및 이를 위한 네트워크 구성요소 | |
CN109699199A (zh) | 一种报文处理的方法和网络设备 | |
CN102739386A (zh) | 大型网络上克服偏离累积实现精确时钟分配的系统和方法 | |
EP2209239B1 (en) | Method and arrangement for adjustment of a clock signal | |
WO2011074529A1 (ja) | 時刻同期システム、スレーブノード、時刻同期方法及び時刻同期用プログラム | |
JP2001513301A (ja) | Stm伝送システムによるatmにおける同期 | |
US9442511B2 (en) | Method and a device for maintaining a synchronized local timer using a periodic signal | |
WO2020015813A1 (en) | Peer-to-peer transparent clocks and methods of estimating skew in peer-to-peer transparent clocks | |
EP3824574B1 (en) | End-to-end transparent clocks and methods of estimating skew in end-to-end transparent clocks | |
EP3080951B1 (en) | Method and devices for packet selection | |
CN103181104A (zh) | 用于在接入网中将时间准确分配给接收器节点的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160706 Termination date: 20180414 |