进行负载承担处理的PTP时钟和方法
文献发布时间:2023-06-19 09:51:02
技术领域
本发明涉及通信技术领域,尤其涉及一种进行负载承担处理的PTP时钟和方法。
背景技术
IEEE 1588-2008标准定义了普通时钟(ordinary clock)、边缘时钟(boundaryclock)、端到端透明时钟(end-to-end transparent clock)和对等透明时钟(peer-to-peer transparent clock)四种基本类型的PTP时钟,以下条款简要介绍了PTP的工作原理(以下原理介绍摘自IEEE 1588-2008):
1.为了在域内建立PTP(Precision Time Protocol,精确时间协议)主从层次结构(master-slave hierarchy),普通时钟或边缘时钟的每个PTP端口执行一个独立的PTP状态机(PTP state machine)副本。每个PTP端口检查接收到的所有Announce报文的内容。利用最佳主时钟算法(best master clock algorithm),通过分析Announce报文的内容和与普通时钟或边缘时钟相对应的数据集(data sets)的内容来确定时钟各PTP端口的状态。PTP状态机定义了允许的端口状态和各个状态之间的转换规则。MASTER、SLAVE、PASSIVE是决定PTP主从层次结构的3种状态。MASTER状态的端口是端口所服务路径上的时间源。SLAVE状态的端口同步到PTP路径上端口为MASTER状态的设备。PASSIVE状态的端口不是PTP路径上的主端口,也不与主端口同步。
2.在PTP端口进入SLAVE状态之前,存在一个称为UNCALIBRATED状态的暂态。在UNCALIBRATED状态下,域中检测到一个或多个处于MASTER状态的端口;选择处于MASTER状态的适当端口,并且本地(local)端口正准备与选定的处于MASTER状态的端口同步。
3.边缘时钟在一个域中有多个端口。它也可以是主时钟(master clock)和/或从时钟(slave clock)。
4.普通时钟在一个域中只有一个端口。它可以是主时钟或从时钟。它也可以配置为仅主时钟(master only clock)或仅从时钟(slave only clock)。
5.边缘时钟和普通时钟维护其时钟和每个PTP端口数据集。
6.在域中,使用PTP协议的、对于时钟同步而言是终极源头的时钟被定义为最高级主时钟(grandmaster clock)。
7.为了使从时钟与主时钟同步,主时钟和从时钟协同执行延迟请求响应机制(delay request-response mechanism)。主时钟向从时钟发送带有t1时间戳的同步(Sync)报文。从主时钟收到Sync报文后,从时钟生成t2时间戳。从时钟向主时钟发送延迟请求(Delay_Req)报文,并保存相应的t3时间戳。收到延迟请求报文后,主时钟生成t4时间戳。为了响应延迟请求报文,主时钟向从时钟发送包含t4时间戳的延迟响应(Delay_Resp)报文。从时钟获取t1、t2、t3、t4时间戳,计算主时钟和其自身之间的平均路径延迟和时间偏移。
8.端到端透明时钟支持在从时钟和主时钟之间使用端到端延迟测量机制。它校正了PTP事件报文(PTP event message)的驻留时间和路径不对称性,并转发所有PTP报文。
9.对等透明时钟,除了对PTP事件报文的驻留时间和路径不对称进行校正外,还对连接到接收PTP事件报文的端口的链路的传播延迟进行校正。在存在对等透明时钟的情况下,使用对等延迟测量机制执行从时钟和主时钟之间的延迟测量。对等透明时钟转发Announce报文、Sync报文、Follow_Up报文、Management报文和Signaling报文。
10.透明时钟维护其时钟和每个PTP端口数据集。
根据IEEE 1588-2008标准中规定的延迟请求响应机制(delay request-responsemechanism),从时钟发送的延迟请求报文可以被视作PTP负载,由主PTP时钟响应。在存在端到端透明时钟的情况下,主PTP时钟可能暴露于指数级增加的从PTP时钟。各从PTP时钟的PTP负载被端到端透明时钟汇聚后,可能会超过主PTP时钟响应从时钟PTP负载的能力。在这种情况下,从PTP时钟的过量PTP负载将成为主PTP时钟无法承受的负担。
在存在端到端透明时钟的同步网络中增加部署更多的主时钟,如最高级主时钟(grandmaster clock)和边缘时钟,可能有助于解决上述问题。端到端透明时钟不主动参与整个PTP主从层次结构的建立,需要注意的因素包括:相对于端到端透明时钟的位置如何部署增加的主时钟以及如何配置增加的主时钟等。在实际部署前需充分考虑上述因素,使得同步网络规划成为一项较困难的任务。部署具有足够响应从时钟PTP负载的能力的主时钟也可以解决上述问题。但这对已经部署在现场的主时钟没有帮助。并且,在确定主时钟响应从时钟PTP负载的能力之前,很难估计从时钟的PTP负载。
发明内容
本发明的目的是提供一种进行负载承担处理的PTP时钟和方法。
根据本发明的一个方面,提供了一种用于进行负载承担处理的PTP时钟,其中,所述PTP时钟具有多个PTP端口,所述PTP时钟包括:
状态获取单元,用于获取各个PTP端口当前的状态;其中,PTP端口状态被分类为面向上游主时钟的端口和面向下游从时钟的端口;
测量单元,用于对上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载进行测量,以得到相应的测量信息;
负载承担处理单元,用于基于所述测量信息,替上游主时钟承担过量的下游从时钟的PTP负载,其中,负载承担处理单元的行为对于被其承担PTP负载的下游从时钟是不可见的。
根据本发明的一个方面,提供了一种在PTP时钟中进行负载承担处理的方法,其中,所述PTP时钟具有多个PTP端口,所述方法包括以下步骤:
获取各个PTP端口当前的状态;其中,PTP端口状态被分类为面向上游主时钟的端口和面向下游从时钟的端口;
对上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载进行测量,以得到相应的测量信息;
基于所述测量信息,替上游主时钟承担过量的下游从时钟的PTP负载,其中,该承担PTP负载的行为对于被其承担PTP负载的下游从时钟是不可见的。
与现有技术相比,本发明具有以下优点:通过对上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载进行测量,并基于所述测量信息,替上游主时钟承担过量的下游从时钟的PTP负载,从而能够减轻上游主时钟的负担。并且,根据本发明的方案可根据测量的上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载,自适应地改变PTP时钟的类型,以在适合的情况下选择执行承担过量的下游从时钟的PTP负载的功能等多种时钟功能。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示意出了根据本发明的一个实施例的用于进行负载承担处理的PTP时钟的结构示意图;
图2示出了根据本发明的一个示例性的PTP时钟的结构示意图;
图3a示出了根据本发明的一个示例性的测量单元的结构示意图;
图3b示出了根据本发明的一个示例性的PTP负载测量单元的结构示意图;
图3c示出了根据本发明的一个示例性的主时钟能力测量单元的结构示意图;
图4a示出了根据本发明的一个示例性的类型自适应PTP时钟及其所处同步网络的示意图;
图4b示出了根据本发明的一个示例性的类型自适应PTP时钟所支持的时钟类型的示意图;
图4c示出了根据本发明的一个示例性的基于图4a的执行延迟请求响应机制的主从时钟对(clock pair)关系的示意图。
图5示出了根据本发明的一个示例性的自适应PTP时钟进行级联的示意图;
图6示出了根据本发明的一个实施例的在PTP时钟中进行负载承担处理的方法流程图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
除非特别说明,本文中出现的端口等同于PTP端口,时钟等同于PTP时钟。
图1示出了根据本发明的实施例的PTP时钟的结构示意图。
参照图1,根据本实施例的PTP时钟1具有多个PTP端口,所述PTP时钟1包括状态获取单元101、测量单元102和负载承担处理单元103。
需要说明的是,本领域技术人员应熟知,除了状态获取单元101、测量单元102和负载承担处理单元103,PTP时钟1还包括端口模块、转发单元和控制器单元等包含于PTP时钟的常规的模块或单元。
其中,根据本发明的PTP时钟1适用于IEEE 1588-2008标准以及该标准演进后的版本。
状态获取单元101用于获取各个PTP端口当前的状态。
其中,PTP端口状态是PTP端口的属性之一,所述属性可包括如PTP端口在PTP时钟1所在的PTP主从层次结构拓扑中的角色、状况(status)、位置等。
其中,PTP端口状态被分类为面向上游主时钟的端口和面向下游从时钟的端口。
所述状态获取单元101可通过自身监测PTP端口的状态,来获取各个PTP端口当前的状态。
或者,状态获取单元101可通过与其他用于监测PTP端口的状态的单元的交互,来获取各个PTP端口的状态。
测量单元102用于对上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载进行测量,以得到相应的测量信息。
根据本发明的一个优选实施例,所述测量单元102进一步包括负载仿真单元、主时钟能力测量单元和负载测量单元。
其中,负载仿真单元用于通过向上游主时钟发送延迟请求报文来仿真部分或所有从时钟的PTP负载。
其中,主时钟能力测量单元用于测量上游主时钟响应下游从时钟的PTP负载能力。
主时钟能力测量单元的测量结果可以基于不同的度量,例如,针对每个从时钟的响应能力、针对每个从时钟的响应率、总响应能力、总响应率等。上游主时钟用延迟响应报文来响应收到的从时钟发送的延迟请求报文。
其中,负载测量单元用于测量下游从时钟的PTP负载。
负载测量单元得到的测量结果可以基于不同的度量,例如,每个PTP端口的PTP负载、每个从时钟的PTP负载、总PTP负载等。在下游从时钟的PTP负载中,延迟请求报文(Delay_Req messages)是主要的。
负载承担处理单元103用于基于所述测量信息,替上游主时钟承担过量的下游从时钟的PTP负载,其中,负载承担处理单元的行为对于被其承担PTP负载的下游从时钟是不可见的。
其中,所述负载承担处理单元103在承担负载的面向下游从时钟的端口向下游从时钟发送同步(Sync)报文或延迟响应(Delay_Resp)报文时,采用上游主时钟的某些属性,使得其负载承担处理行为对于被其承担PTP负载的下游从时钟不可见。负载承担处理单元103在承担负载的面向下游从时钟的端口,与下游从时钟执行延迟请求响应机制时,用本地时钟(如图2中的本地时钟207)产生t1和t4时戳。
其中,PTP时钟1的任意单个面向下游从时钟的端口上可存在一个或多个下游从时钟的负载。负载承担处理单元103承担PTP负载的最小颗粒度是按端口来计的。即负载承担处理单元103在承担负载的面向下游从时钟的端口上承担所述端口上的相应所有下游从时钟的PTP负载。
根据本发明的一个优选实施方案,PTP时钟1基于该PTP时钟1实现的功能对PTP时钟进行分类,所述PTP时钟还包括类型控制单元(图未示)。
所述类型控制单元用于根据来自测量单元的测量信息自适应地改变PTP时钟的类型。所述PTP时钟1根据PTP时钟的类型,确定是否需要替上游主时钟承担下游从时钟的PTP负载。
优选地,该类型控制单元可包含于PTP时钟1的控制器单元。
优选地,根据本发明的PTP时钟定义了一种PTP时钟的类型,该类型的PTP时钟不仅实现其上游主时钟和某些下游从时钟之间的端到端透明时钟功能,而且还实现替上游主时钟承担某些过量的下游从时钟的PTP负载的功能。
优选地,所述类型控制单元基于预定的分类标准来控制和改变PTP时钟的类型,所述分类标准基于以下信息中的一项或多项而制定:
-测量的上游主时钟响应下游从时钟的PTP负载的能力;
-测量的下游从时钟的PTP负载;
-各个PTP端口的分配带宽;
-PTP时钟自身的负载承担处理能力。
其中,PTP时钟所支持的时钟类型和类型控制单元基于预定的分类标准来控制和改变PTP时钟的类型示例将在后文结合图4a图4b进行描述。
需要说明的是,上述分类标准包含的信息仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何可作为分类标准的信息实现方式,均应包含在本发明的范围内。
图2示出了根据本发明的一个示例性的PTP时钟的结构示意图。
参照图2,根据本示例的PTP时钟2包括端口模块201、测量单元202、负载承担处理单元203、状态监控单元204、转发单元205、控制器单元206和本地时钟207。其中,根据本发明的状态获取单元由状态监控单元204实现。
端口模块201容纳PTP时钟2的所有PTP端口(端口1至端口m)。端口模块201通过内部消息通道与测量单元202、负载承担处理单元203、状态监控单元204、转发单元205和控制器单元206连接。端口模块201通过入口和出口时间戳产生器(在图2中端口模块201里用TS来表示)对接收和发送的PTP事件报文(event message)加盖时间戳(timestamp),并与转发单元205一起参与对PTP事件报文的驻留时间进行校正。PTP报文由端口模块201的PTP端口接收或发送。端口模块201在内部消息通道上除了提供接收到的PTP报文本身,还提供对应的源端口信息(用于指示从哪个入PTP端口收到PTP报文)。
本地时钟207可给端口模块201入口和出口时间戳产生器提供本地时间1和本地时钟信号1。本地时钟207可以由状态监控单元204和/或控制器单元206来控制和调整。
测量单元202用于对上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载进行测量,以得到相应的测量信息。
负载承担处理单元203用于基于所述测量信息,替上游主时钟承担过量的下游从时钟的PTP负载。
具体地,负载承担处理单元203在承担负载的面向下游从时钟的端口向下游从时钟发送同步(Sync)报文或延迟响应(Delay_Resp)报文时,采用上游主时钟的某些属性,例如,上游主时钟的源端口标识(sourcePortIdentity)等,使得其负载承担处理行为对于被其承担PTP负载的下游从时钟不可见。负载承担处理单元203在承担负载的面向下游从时钟的端口,与下游从时钟执行延迟请求响应机制时,用本地时钟207产生t1和t4时戳。
状态监控单元204监测所处同步网络的状态,并在同步网络的状态发生变化时自适应地更新PTP端口的状态。有效的PTP端口状态被分类为面向上游主时钟的端口和面向下游从时钟的端口。面向上游主时钟的端口可以是一个或多个,当为多个时,面向上游主时钟的根端口为工作端口,面向上游主时钟的备选端口为保护端口。状态监控单元204基于以下规则来确定PTP端口的状态是无效端口或不稳定端口,并通知给转发单元205和控制器单元206:将既非面向上游主时钟的端口又非面向下游从时钟的端口作为无效端口;尚处在PTP主从层次结构建立过程中的PTP端口状态可以认为是不稳定的;如果面向下游从时钟的端口接收到Announce报文时,则认为该端口的状态是不稳定;如果面向上游主时钟的根端口接收到Announce报文而该报文不是由当前上游主时钟发送时,则认为该PTP端口的状态不稳定;如果面向上游主时钟的根端口在超过特定超时阈值的时间内没有收到当前上游主时钟发送的Announce报文,则认为该PTP端口的状态不稳定。
状态监控单元204采用适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能,适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能使用PTP时钟2的PTP端口作为其PTP端口,自适应地更新其PTP端口的状态以响应同步网络的动态变化。PTP时钟2的PTP端口的状态源于适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能的PTP端口的状态。PTP时钟2的有效的PTP端口状态被分类为面向上游主时钟的端口和面向下游从时钟的端口。
转发单元205能够在端口模块201发送PTP报文之前修改所述PTP报文的某些字段。例如,可以将PTP报文的源MAC地址替换为PTP时钟2的相应出口PTP端口的MAC地址等。
转发单元205主要用于复制和/或转发和/或修改PTP报文等。端到端透明时钟功能、适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能、负载承担处理功能需要利用转发单元205。
控制器单元206具有来自端口模块201、状态监控单元204、转发单元205的状态输入,以及来自测量单元202的测量结果。控制器单元206还能够控制端口模块201、状态监控单元204、转发单元205、负载承担处理单元203和测量单元202的行为,控制调整本地时钟207。控制器单元206向转发单元205、状态监控单元204和负载承担处理单元203提供时钟类型信息。
图3a至图3c分别示出了根据本发明的示例性的测量单元、主时钟能力测量单元和负载测量单元的结构示意图。
参照图3a,测量单元202包括PTP负载测量单元301、PTP负载仿真器302、和主时钟能力测量单元303。
PTP负载测量单元301测量来自下游从时钟的PTP负载。其测量结果可以基于不同的度量,例如,每个PTP端口的PTP负载、每个从时钟的PTP负载、总PTP负载等。在下游从时钟的PTP负载中,延迟请求报文(Delay_Req messages)是主要的。
图3b示出了示例性的PTP负载测量单元301的结构示意图。参照图3b,负载测量单元301包括报文分析器(Message Analyzer)、报文计数器(Message Counter)和PTP负载计算单元(PTP Load Calculation Unit)。
如果启用了PTP负载测量单元,则其报文分析器接收由转发单元复制(如有必要)和转发的来自下游从时钟发送的延迟请求报文。报文分析器从报文对应的源端口信息中获取延迟请求报文的入端口信息,并从延迟请求报文本身识别从时钟信息,例如,从时钟的源端口标识(sourcePortIdentity)等。报文分析器将延迟请求报文和其相应的源端口信息以及从时钟信息一起递送至报文计数器。报文计数器统计在一定的测量间隔(例如:1秒等)内从下游从时钟(按每个端口、每个从时钟、总共等)收到的延迟请求报文个数,该测量间隔可与主时钟能力测量单元的测量间隔同步。报文计数器将报文计数(报文个数)连同相应的源端口信息、从时钟信息和测量间隔递送给PTP负载计算单元。PTP负载(或PTP负载水平)由PTP负载计算单元按单位测量间隔内从下游从时钟接收的延迟请求报文个数(按每个端口、每个从时钟、总共等)来计算。每个端口、每个从时钟和总共PTP负载的测量结果以及相应的源端口信息和从时钟信息被上报给控制器单元,并提供给主时钟能力测量单元。
其中,PTP负载仿真器(Load Simulator)302用于生成延迟请求报文并将其发送至上游主时钟。通过这种方式来对一个或多个下游从时钟的PTP负载进行仿真,就如仿真生成的延迟请求报文是由所述一个或多个下游从时钟生成的一样。
在控制器单元的控制下,每个仿真的从时钟可以独立地被启用或禁用;每个仿真的从时钟的属性,例如,从时钟的源端口标识(sourcePortIdentity)等,和负载水平都可以被独立地设置;仿真的从时钟的数量和仿真的从时钟的总负载水平均也可以被设置。PTP负载水平的设置范围为零到PTP负载仿真器302可支持的最大负载。生成仿真的PTP负载的时间间隔可以与主时钟能力测量单元的测量间隔同步。PTP负载仿真器302向主时钟能力测量单元303提供仿真的从时钟及相应负载水平的信息。
主时钟能力测量单元303测量上游主时钟响应下游从时钟的PTP负载能力。其测量结果可以基于不同的度量,例如,针对每个从时钟的响应能力、针对每个从时钟的响应率、总响应能力、总响应率等。上游主时钟用延迟响应报文来响应收到的从时钟发送的延迟请求报文。
图3c示出了示例性的主时钟能力测量单元303的结构示意图。参照图3c,主时钟能力测量单元303包括报文分析器(Message Analyzer)、报文计数器(Message Counter)和主时钟能力计算单元(Master Clock Capability Calculation Unit)。
如果主时钟能力测量单元被启用,其报文分析器接收由转发单元复制(如有必要)和转发的来自上游主时钟发送的延迟响应报文。报文分析器从延迟响应报文本身识别相应的从时钟信息,例如,通过请求端口标识(requestingPortIdentity)等。报文分析器将延迟响应报文和其相应的从时钟信息一起递送至报文计数器(Message Counter)。报文计数器具有来自PTP负载仿真器的仿真的从时钟的信息,和来自PTP负载测量单元的从时钟信息。报文计数器统计在一定的测量间隔内(例如:1秒等)来自上游主时钟的用于响应下游从时钟和/或仿真的从时钟的延迟响应报文个数。报文计数器将报文计数(报文个数)连同相应的从时钟信息和测量间隔递送给主时钟能力计算单元。
主时钟对从时钟的响应能力可由主时钟能力计算单元按单位测量间隔(Measurement Interval)内从上游主时钟接收的已被识别相应从时钟信息的延迟响应报文个数(针对每个从时钟、总共等)来计算。主时钟能力测量单元接收来自PTP负载测量单元的具有相应从时钟信息的PTP负载测量结果,并接收来自PTP负载仿真器的仿真的从时钟相应负载水平的信息。主时钟对从时钟的响应率可以按单位测量间隔内从上游主时钟接收的已被识别相应从时钟信息的延迟响应报文的个数与对应的从下游从时钟接收的延迟请求报文个数和/或由仿真的从时钟生成的延迟请求报文个数的比值来计算。主时钟能力测量单元的测量间隔可用于同步PTP负载测量单元的测量间隔和PTP负载仿真器生成仿真PTP负载的时间间隔。在控制器单元的控制下,在测量上游主时钟响应下游从时钟的PTP负载能力时,PTP负载可以全部由PTP负载仿真器仿真,或者其一部分PTP负载来自下游从时钟,一部分由PTP负载仿真器仿真。
图4a示出了根据本发明的一个示例性的类型自适应PTP时钟及其所处同步网络的示意图。图4b示出了图4a所示的类型自适应PTP时钟支持的三种时钟类型的示意图。
其中,所述类型自适应PTP时钟是根据本发明的PTP时钟的一种优选实施方案。所述类型自适应PTP时钟可支持多种时钟类型,并根据测量信息自适应地改变PTP时钟的类型。
参照图4a,所示的主时钟可以是最高级主时钟,也可以是时间可追溯到最高级主时钟的边缘时钟;从时钟1至从时钟6是仅从时钟(slave only clock)。其中,根据本示例的类型自适应的PTP时钟的结构如图2所示。
基于图4a所示的同步网络,图4b描述了类型自适应PTP时钟支持的示例性的三种时钟类型,从左至右依次为时钟类型A、类型B和类型C。其中,时钟类型B可以是时钟类型C的先决时钟类型。
并且,类型自适应PTP时钟中定义了用于控制和改变时钟类型的标准A和标准B。其中,标准A为:当控制器单元和测量单元检测到下游从时钟的PTP负载小于上游主时钟响应下游从时钟的PTP负载的能力且留有一定裕量(margin)时。标准B为:当检测到下游从时钟的PTP负载大于上游主时钟响应下游从时钟的PTP负载的能力时。
需要说明的是,除了标准A和B外,还可考虑PTP端口的分配带宽和类型自适应PTP时钟本身的负载承担处理能力等,本领域技术人员可基于实际需求选择合适的参数来制定用于控制和改变时钟类型的标准。PTP端口与物理端口绑定(如:100Base-FX以太网端口等),PTP端口的分配带宽必须小于或等于物理端口的带宽。在任何情况下,汇聚后并发送到上游主时钟的PTP负载的等效带宽不得超过面向上游主时钟的根端口的分配带宽。由类型自适应PTP时钟承担的PTP负载应控制在类型自适应PTP时钟本身的负载承担处理能力范围内,并留有一定的裕量。
类型自适应PTP时钟采用端到端透明时钟功能、适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能以及负载承担处理功能。端到端透明时钟功能主要利用转发单元、端口模块、本地时钟和控制器单元。适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能主要利用状态监控单元、转发单元、端口模块、本地时钟和控制器单元。负载承担处理功能主要利用负载承担处理单元、转发单元、端口模块、本地时钟和控制器单元。
类型自适应PTP时钟的状态监控单元采用适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能,适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能使用类型自适应PTP时钟的PTP端口作为其PTP端口,自适应地更新其PTP端口的状态以响应同步网络的动态变化。类型自适应PTP时钟的PTP端口的状态源于适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能的PTP端口的状态。
类型自适应PTP时钟基于标准A和标准B控制和改变类型自适应PTP时钟的时钟类型的规则如下:
如果始终满足标准A,可以将类型自适应PTP时钟的时钟类型设置为时钟类型A(图4b左侧)。在该时钟类型下,类型自适应PTP时钟在PTP端口1至7仅实现端到端透明时钟功能。而适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能、以及负载承担处理功能均不在此时钟类型下执行。
如果满足标准A,可以将类型自适应PTP时钟的时钟类型自适应地设置为时钟类型B。在该时钟类型下,类型自适应PTP时钟在端口1至7实现了PTP的端到端透明时钟功能(PTP端口1至7与端到端透明时钟功能相关联)。同时,类型自适应PTP时钟执行状态监控单元和控制器单元支持的适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能。适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能根据同步网络的动态变化自适应地更新其PTP端口的状态。如图4b中间所示,端口1为类型自适应PTP时钟的面向上游主时钟的根端口,端口2至7为类型自适应PTP时钟的面向下游从时钟的端口。适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能可以在端口1上与主时钟(见图4a)执行延迟请求响应机制,控制和调整本地时钟,使类型自适应PTP时钟与主时钟同步。端口2至7上从时钟1至6(见图4a)的所有PTP负载都由主时钟经由端口1来响应。主时钟和从时钟1至6之间执行延时请求响应机制。在时钟类型B下,类型自适应PTP时钟不执行负载承担处理功能。
如果满足标准B,可以将类型自适应PTP时钟的时钟类型自适应地设置为时钟类型C(图4b右侧)。在该时钟类型下,类型自适应PTP时钟不仅可以在端口1、4至7之间实现端到端透明时钟功能(PTP端口1、4至7隶属于端到端透明时钟功能),还可以承担与端口2和端口3分别相连的从时钟1和从时钟2的过量PTP负载(假设[与端口2至7分别相连的从时钟1至6的PTP负载总和]-[与端口2和3分别相连的从时钟1和2的PTP负载总和]<主时钟响应从时钟的PTP负载的能力且留有一定裕量,并且,与端口2和3分别相连的从时钟1和2的PTP负载总和<类型自适应PTP时钟自身的负载承担处理能力且留有一定裕量。同时,在状态监控单元和控制器单元控制下执行适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能。适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能根据同步网络的动态变化自适应地更新其PTP端口的状态。类型自适应PTP时钟的PTP端口的状态源于适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能的PTP端口的状态。类型自适应PTP时钟的有效的PTP端口状态被分类为面向上游主时钟的端口和面向下游从时钟的端口。
如4b右侧所示,端口1仍然是类型自适应PTP时钟的面向上游主时钟的根端口,端口2至7仍然是类型自适应PTP时钟的面向下游从时钟的端口。与端口2和3分别相连的从时钟1和2的PTP负载由负载承担处理单元支持的负载承担处理功能来承担,而与端口4至7分别相连的从时钟3至6的PTP负载仍由主时钟经由端口1来响应。
图4c示出了根据本发明的一个示例性的基于图4a的执行延迟请求响应机制的主从时钟对关系的示意图。。
参照图4c,如主从时钟对1(pair 1)所示,适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能与主时钟协同执行延迟请求响应机制,并控制和调整本地时钟,使类型自适应PTP时钟与主时钟同步。如主从时钟对2(pair 2)所示,负载承担处理功能在端口2和3上分别与从时钟1和2执行延迟请求响应机制,承担与端口2和3分别相连的从时钟1和2的PTP负载。负载承担处理功能协同端口模块根据本地时钟为Sync报文生成t1时间戳,为接收到的Delay-Req报文生成t4时间戳。负载承担处理功能生成Sync报文和Delay-Resp报文,但报文中包含主时钟(而不是类型自适应PTP时钟相应地适配的边缘时钟功能和/或采用其他可供选择的协议或算法的时钟功能)的某些属性,并发送至从时钟1和2。这使得类型自适应PTP时钟能够替主时钟承担过量的下游从时钟1和2的负载这一功能对于从时钟1和2来说是不可见的。如主从时钟对3(Pair 3)图示的,主时钟和从时钟3至6协同执行延迟请求响应机制,来自从时钟3至6的PTP负载由主时钟来承担。
优选地,基于本示例的类型自适应PTP时钟在类型B或类型C下针对不同的PTP报文,设定相应的转发规则:
如果PTP端口状态无效或不稳定,则禁用或部分禁用将PTP报文从入口端转发到出口端的功能。
1)如果接收到的PTP报文为Announce报文,当PTP端口状态稳定和有效时,转发规则如下:
面向上游主时钟的根PTP端口(如图4a或4b的中间和右侧的端口1)接收到的当前上游主时钟发送的(如图4a中的主时钟)的Announce报文被复制并转发到状态监控单元和面向下游从时钟的PTP端口(如图4a或4b的中间和右侧的端口2至端口7)。其他接收的Announce报文仅被转发到状态监控单元。状态监控单元可根据接收到的Announce报文和相关的源端口信息(用于指示从哪个入PTP端口收到PTP报文)进一步判断所处同步网络状态是否发生变化和/或PTP端口状态是否不稳定或无效。
当PTP端口状态不稳定或无效时,所有接收到的Announce报文被转发到状态监控单元。
2)如果接收到的PTP报文为Sync报文,当PTP端口状态稳定和有效时,其转发规则如下:由面向上游主时钟的根端口(如图4a或4b的中间和右侧的端口1)收到的当前上游主时钟(如图4a中的主时钟)发送的Sync报文,被复制(如有必要),并转发到隶属于端到端透明时钟功能的面向下游从时钟的PTP端口(如图4b的中间的端口2至端口7,图4b的右侧的端口4至端口7)和状态监控单元。转发单元会丢弃任何其他接收到的Sync报文。如果透明时钟支持两步时钟(two-step clock)机制,则可以采用与Sync报文相同的转发规则来转发Follow_Up报文。
3)如果接收到的PTP报文为延迟请求(Delay_Req)报文,当PTP端口状态稳定和有效时,其转发规则如下:
i)端到端透明时钟功能对应的转发规则:只有在隶属于端到端透明时钟功能的面向下游从时钟的端口上接收到的延迟请求报文才被转发到面向上游主时钟的根端口。转发单元将丢弃任何其他接收到的延迟请求报文;
ii)负载承担处理功能对应的转发规则:负载承担处理功能在承担负载的端口上收到的延迟请求报文转发到负载承担处理单元;
iii)如果需要同时测量下游从时钟的负载,所有面向下游从时钟的端口上收到的延迟请求报文同时转发测量单元。
4)如果接收到的PTP报文为延迟响应(Delay_Resp)报文,当PTP端口状态稳定和有效时,其转发规则如下:
i)端到端透明时钟功能对应的转发规则:在面向上游主时钟的根端口收到的、当前上游主时钟响应类型自适应PTP时钟下游从时钟发送的延迟请求报文而发送的延迟响应报文被转发到相应隶属于端到端透明时钟功能的面向下游从时钟的端口。这样,每个下游从时钟都不会接收到它没有请求的延迟响应报文。在面向上游主时钟的根端口收到的、当前上游主时钟响应类型自适应PTP时钟发送的延迟请求报文而发送的延迟响应报文被转发到状态监控单元(见图4c主从时钟对1间执行的延迟请求响应机制)。转发单元将丢弃任何其他接收到的延迟响应报文;
ii)负载承担处理功能对应的转发规则:负载承担处理功能在承担负载的端口上发送延迟响应报文以响应收到的延迟请求报文;
iii)如果需要同时测量上游主时钟响应下游从时钟负载的能力,所有面向上游主时钟的根端口上收到的延迟响应报文同时转发测量单元。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何其他转发PTP报文的实现方式,均应包含在本发明的范围内。
根据本发明的一个优选实施方案,根据本发明的PTP时钟可级联。当PTP时钟级联时,上游主时钟的PTP负载不仅可以由与其邻接的PTP时钟承担,也可由与所述PTP时钟级联的下游PTP时钟来承担。
图5示出了根据本发明的一个示例性的自适应PTP时钟进行级联的示意图。
参照图5,其中两个类型自适应PTP时钟是级联的。主时钟是类型自适应PTP时钟1的上游主时钟,其可以是最高级主时钟或时间可追溯到最高级主时钟的边缘时钟。从时钟1至8为仅从时钟。从时钟1和2在类型自适应PTP时钟1的端口2和4上与类型自适应PTP时钟1相连。类型自适应PTP时钟1的端口3通过级联PTP路径与类型自适应PTP时钟2的端口1相连。类型自适应PTP时钟1的端口3和类型自适应PTP时钟2的端口1是级联PTP端口。类型自适应PTP时钟1是类型自适应PTP时钟2的上游类型自适应PTP时钟。类型自适应PTP时钟2是类型自适应PTP时钟1的下游类型自适应PTP时钟。从时钟3至8与类型自适应PTP时钟2的端口2至7分别相连。如果类型自适应PTP时钟1检测到从时钟1到8的PTP负载大于主时钟响应从时钟PTP负载的能力,则其首先替主时钟承担端口2和/或端口4(而不是其级联PTP端口:端口3)上的过量PTP负载(从时钟1和/或2)。类型自适应PTP时钟2可以检测从时钟3至8的PTP负载是否仍大于主时钟的响应从时钟PTP负载的能力和类型自适应PTP时钟1的负载承担处理能力之和。主时钟和类型自适应PTP时钟1可视为类型自适应PTP时钟2的“等效上游主时钟”,因而主时钟响应从时钟PTP负载的能力和类型自适应PTP时钟1的负载承担处理能力可通过类型自适应PTP时钟2的主时钟能力测量单元来测量。如果类型自适应PTP时钟2检测到从时钟3至8的PTP负载仍然大于主时钟响应从时钟PTP负载的能力和类型自适应PTP时钟1的负载承担处理能力之和,则自适应PTP时钟2可替上游主时钟(和类型自适应PTP时钟1)承担某些过量的PTP负载(例如:源自其端口2至7上的从时钟3至8产生的PTP负载)。
需要说明的是,上述举例仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何类型自适应PTP时钟进行级联的实现方式,均应包含在本发明的范围内。
根据本发明的方案,通过对上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载进行测量,并基于所述测量信息,替上游主时钟承担过量的下游从时钟的PTP负载,从而能够减轻上游主时钟的负担。并且,根据本发明的方案可根据测量的上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载,自适应地改变PTP时钟的类型,以在适合的情况下选择执行承担过量的下游从时钟的PTP负载的功能等多种时钟功能。
图6示出了根据本发明的一个实施例的在PTP时钟中进行负载承担的方法流程图。所述方法包括步骤S1、步骤S2和步骤S3。
参照图6,在步骤S1中,PTP时钟获取各个PTP端口当前的状态。
其中,PTP端口状态是PTP端口的属性之一,所述属性可包括如PTP端口在PTP时钟所在的PTP主从层次结构拓扑中的角色、状况(status)、位置等。
其中,PTP端口状态被分类为面向上游主时钟的端口和面向下游从时钟的端口。
在步骤S2中,PTP时钟对上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载进行测量,以得到相应的测量信息。
根据本发明的一个优选实施例,所述步骤S2进一步包括步骤S21(图未示)、步骤S22(图未示)和步骤S23(图未示)。
在步骤S21中,PTP时钟通过向上游主时钟发送延迟请求报文来仿真部分或所有从时钟的PTP负载。
在步骤S22中,PTP时钟测量上游主时钟响应下游从时钟的PTP负载能力。
步骤S22得到的测量结果可以基于不同的度量,例如,针对每个从时钟的响应能力、针对每个从时钟的响应率、总响应能力、总响应率等。上游主时钟用延迟响应报文来响应收到的从时钟发送的延迟请求报文。
在步骤S23中,PTP时钟测量下游从时钟的PTP负载。
步骤S23得到的测量结果可以基于不同的度量,例如,每个PTP端口的PTP负载、每个从时钟的PTP负载、总PTP负载等。在下游从时钟的PTP负载中,延迟请求报文(Delay_Reqmessages)是主要的。
继续参照图6,在步骤S3中,PTP时钟基于所述测量信息,替上游主时钟承担过量的下游从时钟的PTP负载,其中,PTP时钟负载承担处理行为对于被其承担PTP负载的下游从时钟是不可见的。
其中,PTP时钟在承担负载的端口向下游从时钟发送同步(Sync)报文或延迟响应(Delay_Resp)报文时,采用上游主时钟的某些属性,使得其负载承担处理行为对于被其承担PTP负载的下游从时钟不可见。PTP时钟在承担负载的端口,与下游从时钟执行延迟请求响应机制时,用本地时钟产生t1和t4时戳。
其中,PTP时钟的任意单个面向下游从时钟的端口上可存在一个或多个下游从时钟的负载。PTP时钟承担PTP负载的最小颗粒度是按端口来计的。即PTP时钟在承担负载的面向下游从时钟的端口上承担所述端口上的相应所有下游从时钟的PTP负载。
根据本发明的一个优选实施方案,PTP时钟基于PTP时钟实现的功能对PTP时钟进行分类,所述PTP时钟还包括步骤S4(图未示)。
在步骤S4中,PTP时钟根据所述测量信息自适应地改变PTP时钟的类型。
所述PTP时钟根据PTP时钟的类型,确定是否需要替上游主时钟承担下游从时钟的PTP负载。
优选地,根据本发明的PTP时钟定义了一种PTP时钟的类型,该类型的PTP时钟不仅实现其上游主时钟和某些下游从时钟之间的端到端透明时钟功能,而且还实现替上游主时钟承担某些过量的下游从时钟的PTP负载的功能。
优选地,PTP时钟基于预定的分类标准来控制和改变PTP时钟的类型,所述分类标准基于以下信息中的一项或多项而制定:
-测量的上游主时钟响应下游从时钟的PTP负载的能力;
-测量的下游从时钟的PTP负载;
-各个PTP端口的分配带宽;
-PTP时钟自身的负载承担处理能力。
需要说明的是,上述分类标准包含的信息仅为更好地说明本发明的技术方案,而非对本发明的限制,本领域技术人员应该理解,任何可作为分类标准的信息实现方式,均应包含在本发明的范围内。
根据本发明的方法,通过对上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载进行测量,并基于所述测量信息,替上游主时钟承担过量的下游从时钟的PTP负载,从而能够减轻上游主时钟的负担。并且,根据本发明的方案可根据测量的上游主时钟响应下游从时钟的PTP负载的能力和下游从时钟的PTP负载,自适应地改变PTP时钟的类型,以在适合的情况下选择执行承担过量的下游从时钟的PTP负载的功能等多种时钟功能。
本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个功能或步骤的电路。
另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
- 进行负载承担处理的PTP时钟和方法
- 一种PTP时钟单播组播混合时钟系统及时钟同步方法