具有故障转移机制的otn多机箱系统中的自动时钟相位同步

文档序号:1220574 发布日期:2020-09-04 浏览:5次 >En<

阅读说明:本技术 具有故障转移机制的otn多机箱系统中的自动时钟相位同步 (Automatic clock phase synchronization in OTN multi-chassis systems with failover mechanism ) 是由 尼沙·阿伊卡拉 皮尤什·杰州 罗希思·斯雷尼瓦桑 锡达林格普拉萨德·古里 巴萨瓦林加·库拉谢 于 2019-01-15 设计创作,主要内容包括:公开了一种用于由网络元件使用的方法,所述网络元件包括用于向一个或多个相邻网络元件传送公共时钟信号的多个端口。所述方法包括:对于多个端口中的至少一个端口:当所述端口处于预定义监听模式时,确定所述端口是否与相邻网络元件连接;以及当所述端口被连接时,计算所述网络元件和所述相邻网络元件之间的相应时钟相位延迟值。所述方法还包括基于从多个预定义角色分配给所述网络元件的角色,向所述端口分配时钟信号同步角色。所述网络元件被配置为使用所述相应时钟相位延迟值和使用所述时钟信号同步角色来传送所述公共时钟信号。(A method is disclosed for use by a network element comprising a plurality of ports for transmitting a common clock signal to one or more adjacent network elements. The method comprises the following steps: for at least one port of the plurality of ports: determining whether the port is connected with a neighboring network element when the port is in a predefined listening mode; and calculating respective clock phase delay values between the network element and the adjacent network element when the port is connected. The method also includes assigning a clock signal synchronization role to the port based on the role assigned to the network element from the plurality of predefined roles. The network element is configured to transmit the common clock signal using the respective clock phase delay values and using the clock signal synchronization role.)

具有故障转移机制的OTN多机箱系统中的自动时钟相位同步

技术领域

本公开中呈现的实施例总体上涉及高速通信系统,并且更具体地涉及通信系统中网络元件之间的自动时钟相位同步的技术。

背景技术

在聚合传输架构中,以太网帧(具体地,第2层或L2以太网帧)使用各种基于光学的传输网络透明地传输,例如同步光网络(SONET)、光传输网络(OTN,或基于光通道数据单元(ODU)的分组(Packet over Optical Channel Data Unit))、密集波分复用(DWDM)等。

聚合传输架构的协议可能需要多个网络元件共用的锁相参考时钟。例如,在基于分组结构的OTN(OTN Over Packet Fabric)协议中,311.04兆赫(MHz)公共参考时钟被锁相到8千赫兹(kHz)的公共时间戳同步脉冲。对于单个网络元件,可以通过控制时钟信号路由延迟偏差来实现保持相位同步。然而,对于具有多个网络元件的通信系统来说,保持相位同步更为复杂,这在某些情况下可能需要纳秒级的准确度。例如,诸如不同网络元件的组件变化和/或温度变化以及连接不同网络元件的布线的属性之类的因素可能影响相位同步脉冲的延迟量。

具体实施方式

概述

本公开呈现的一个实施例是一种用于由网络元件使用的方法,所述网络元件包括用于向一个或多个相邻网络元件传送公共时钟信号的多个端口。所述方法包括,对于多个端口中的至少一个端口:当所述端口处于预定义监听模式时,确定所述端口是否与相邻网络元件连接;以及当所述端口被连接时,计算所述网络元件和所述相邻网络元件之间的相应时钟相位延迟值。所述方法还包括基于从多个预定义角色分配给所述网络元件的角色,向所述端口分配时钟信号同步角色。所述网络元件被配置为使用所述时钟相位延迟值和使用所述时钟信号同步角色来传送所述公共时钟信号。

本公开呈现的另一实施例是一种网络元件,包括:多个端口,用于向一个或多个相邻网络元件传送公共时钟信号;以及一个或多个计算机处理器,与所述多个端口耦合。所述一个或多个计算机处理器被配置为,对于所述多个端口中的至少一个端口:当所述端口处于预定义监听模式时,确定所述端口是否与相邻网络元件连接;以及当所述端口被连接时,计算所述网络元件和所述相邻网络元件之间的相应时钟相位延迟值。所述一个或多个计算机处理器被进一步配置为基于从多个预定义角色分配给所述网络元件的角色,向所述端口分配时钟信号同步角色。所述网络元件被配置为使用所述时钟相位延迟值和使用所述时钟信号同步角色来传送所述公共时钟信号。

本公开呈现的另一实施例是一种非暂时性计算机可读介质,包含有计算机可读程序代码,所述计算机可读程序代码能够由网络元件的一个或多个计算机处理器执行,以执行操作。所述操作包括,对于用于向一个或多个相邻网络元件传送公共时钟信号的多个端口中的至少一个端口:当所述端口处于预定义监听模式时,确定所述端口是否与相邻网络元件连接;以及当所述端口被连接时,计算所述网络元件和所述相邻网络元件之间的相应时钟相位延迟值。所述操作还包括基于从多个预定义角色分配给所述网络元件的角色,向所述端口分配时钟信号同步角色。所述网络元件被配置为使用所述时钟相位延迟值和使用所述时钟信号同步角色来传送所述公共时钟信号。

示例实施例

在本文公开的各种实施例中,网络元件包括用于向一个或多个相邻网络元件传送公共时钟信号的多个端口,以及与所述多个端口耦合的一个或多个计算机处理器。所述一个或多个计算机处理器被配置为,对于所述多个端口中的至少一个端口:当所述端口处于预定义监听模式时,确定所述端口是否与相邻的网络元件连接;并且当所述端口被连接时计算网络元件与相邻网络元件之间的相应时钟相位延迟值。在一些情况下,可以对多个端口中的每个端口执行此操作。所述一个或多个计算机处理器被进一步配置为:基于从多个预定义角色分配给网络元件的角色,将时钟信号同步角色分配给所述端口。在一些情况下,也可以对多个端口中的每个端口执行此操作。

以这种方式,网络元件可以以期望的准确度(例如,以微秒或纳秒级)在多个网络元件之间建立和/或保持时钟相位同步。另外,包括多个网络元件的通信系统在网络元件之间发生一个或多个链路故障的情况下提供冗余。

有益的是,实现本文公开的时钟相位同步技术不需要特殊的分组协议或复杂的软件栈。尽管相对简单,时钟相位同步技术可以获得适当的高准确度,同时只需要在网络元件中包含最小的附加逻辑。不同网络元件之间的冗余可以在不需要用户配置的情况下实现,故障处理可以在不需要用户干预的情况下自动执行。

图1示出了根据本文描述的实施例的示例性网络元件100。尽管网络元件100在本文中被描述为被配置为使用基于分组结构的OTN协议进行通信,但是使用其他协议的网络元件100的操作也是可能的。网络元件100可以具有任何合适的实现方式,例如被配置为提供分组交换和光交换功能两者的多层聚合传输网络元件。

网络元件100通常包括被配置为路由和/或处理网络业务的一个或多个计算机处理器、以及存储器(可以包括易失性和/或非易失性存储器元件)。网络元件100还可以包括与一个或多个计算机处理器耦合的各种输入/输出(I/O)接口,例如电和/或光网络接口、用于显示器或用户输入设备的接口等。

网络元件100的功能可以使用硬件、软件、固件或其组合来实现。例如,网络元件100可以被实现为安装在特定机架和/或机箱上的计算设备。

在基于分组结构的OTN协议的上下文中,网络元件100包括入口OTN功能110、入口分段和重新组装(SAR)功能115、分组结构120、出口SAR功能125和出口OTN功能130。网络元件100被配置为接收第一光信号(OTUk流105)作为输入,以及接收第二光信号(OTUk流135)作为输出。

向入口SAR功能115和出口SAR功能125提供公共时钟信号(140;REFCLK)和同步脉冲信号(145;SYNC)。公共时钟信号140和同步脉冲145可以从公共时序基准(timingreference)导出,并且彼此锁相。如上所述,基于分组结构的OTN协议使用311.04MHz公共时钟信号140和8kHz公共同步脉冲信号145,但是其他信号频率也是可能的。

入口OTN功能110包括OTUk成帧器(framer),其被配置为终止OTUk开销,执行前向纠错(FEC),并输出对应的高阶ODUk流。在一些实施例中,入口OTN功能110还包括一个或多个ODTUjk解复用器级,其从高阶ODUk载波流中提取低阶ODUj/ODUflex客户端。

入口SAR功能115被配置为将高阶和/或低阶流分段成分组或单元,这些分组或单元被转发到分组结构120。分组结构120切换业务,该业务随后由出口SAR功能125重新组装回到由出口OTN功能130处理的ODU数据流中。

出口OTN功能130被配置为适应高阶ODUk流并添加OTUk开销和FEC校验和字节以形成OTUk流135。在一些实施例中,出口OTN功能130被配置为将低阶ODUj/ODUflex流多路复用到高阶ODUk流135中。以这种方式,网络元件100被配置为保持从入口到出口的ODU流的时序完整性。

关于使用基于分组结构的OTN协议的网络元件100的功能的附加信息在2011年11月由光因特网论坛(Optical Internetworking Forum)IA#OIF-OFP-01.0发布的“OTN OverPacket Fabric Protocol(OFP)Implementation Agreement”中描述,该文章通过引用并入本文。此外,网络元件100的替代实现方式可以包括用于使用一个或多个替代协议进行操作的合适功能。

图2是示出根据本文描述的实施例的示例性通信系统200的图。通信系统200可以结合本文讨论的其他实施例使用。更具体地,通信系统200包括多个网络元件100-0、100-1、100-2、100-3(统称为网络元件100),这些网络元件中每一个可以包括参考图1描述的网络元件100的功能。

每个网络元件100包括四(4)个定时扩展(TE)端口205,其中每个TE端口205被配置为向一个或多个相邻的网络元件100传送公共时钟信号。如图所示,每个网络元件100的四个TE端口205被布置为两对TE端口205—第一对包括TE端口TE0-E、TE0-W,第二对包括TE端口TE1-E、TE1-W。每个对中的每个TE端口205包括方向(或定向)标识符,其指示用于发送公共时钟信号的方向,从而指示特定TE端口205应如何与相邻网络元件100的TE端口205连接。在一些实施例中,方向标识符选自两个预定义的方向。如图所示,第一对包括具有“东”(E)方向标识符的TE端口TE0-E和具有“西”(W)方向标识符的TE端口TE0-W。

在一些实施例中,多个网络元件100被通信地耦合以形成一个或多个时钟环路210-1、210-2,其中公共时钟信号可以使用时钟环路210-1、210-2中的每一个时钟环路传送到网络元件100中的每一个网络元件。在时钟环路210-1中,网络元件100-0的TE1-E使用链路215-0与网络元件100-1的TE1-W连接,网络元件100-1的TE1-E使用链路215-1与网络元件100-2的TE1-W连接,网络元件100-2的TE1-E使用链路215-2与网络元件100-3的TE1-W连接,网络元件100-3的TE1-E使用链路215-3与网络元件100-0的TE1-W连接。

在时钟环路210-2中,网络元件100-0的TE0-E使用链路220-0与网络元件100-1的TE0-W连接,网络元件100-1的TE0-E使用链路220-1与网络元件100-2的TE0-W连接,网络元件100-2的TE0-E使用链路220-2与网络元件100-3的TE0-W连接,网络元件100-3的TE0-E使用链路220-3与网络元件100-0的TE0-W连接。

链路215-0、215-1、215-2和215-3(统称为链路215)和链路220-0、220-1、220-2和220-3(统称为链路220)可以各自包括一个或多个电导体,其布置适合于在相邻的网络元件100之间承载公共时钟信号。在一个示例中,每个TE端口205包括RJ45连接器(也称为8个位置8个触点(8P8C)连接器),并且每个链路215、220包括6类(双绞线(twisted pair))布线。使用其他类型的连接器和/或布线也是可能的。

在每个时钟环路210-1、210-2中,根据所连接的TE端口205的配置,公共时钟信号可以在特定链路215、220上的任一方向上传送。在一些实施例中,TE端口205中的每一个可以被分配选自多个角色的时钟信号同步角色。时钟信号同步角色的一些非限制性示例包括“主”角色、“后备”主角色、“替代”主角色、“转发”角色和“禁用”角色。

在一些实施例中,响应于各种链路215、220的链路条件,可以动态地配置和/或重新配置网络元件100的TE端口205。配置和/或重新配置可以由(一个或多个)网络元件100自动执行,而不需要用户干预。例如,由链路215、220连接的TE端口205可以使其时钟信号同步角色响应于确定链路215、220被降级或发生故障而调整。以这种方式,可以动态地重新路由公共时钟信号以避免遇到性能问题的一个或多个链路215、220。

虽然图示了四个网络元件100,但是通信系统200的替代实现方式可以包括替代数量的网络元件100。此外,虽然每个网络元件100被示为具有四个TE端口205,但是网络元件100的替代实现方式可以包括替代数量的TE端口205。更进一步地,虽然TE端口205中的每一个包括选自两个预定义方向(即,东或西)的方向标识符,但是网络元件100的替代实现方式可以从两个以上的预定义方将方向标识符分配给TE端口205。更进一步地,虽然图示了两个时钟环路210-1、210-2,并且每个时钟环路210-1、210-2包括网络元件100中的每一个,但是通信系统200的替代实现方式可以包括替代数量的时钟环路和/或不同时钟环路内的网络元件100的不同组成。

图3是图示根据本文描述的实施例的确定两个网络元件之间的延迟计算的图300。图300所示的过程可以结合本文公开的其他实施例使用,例如在图2中所示的通信系统200的相邻网络元件100之间。

网络元件100-0包括逻辑305-0,并且网络元件100-1包括逻辑305-1。逻辑305-0、305-1可以使用硬件、软件、固件或其组合来实现。逻辑305-0、305-1可以以任何合适的形式实现,例如在安装在相应的网络元件100-0、100-1中的控制卡中。

逻辑305-0包括至少第一数字锁相环(DPLL)310-0和现场可编程门阵列(FPGA)315-0,并且逻辑305-1至少包括第一DPLL 310-1和FPGA315-1。尽管没有完全相同地示出,但是逻辑305-0可以包括与逻辑305-1相同或相似的功能。FPGA315-1包括延迟计算模块320-1和延迟补偿模块325-1。

在网络元件100的预定的“监听”模式期间,针对多个TE端口中的每个端口,网络元件100可以确定该端口是否与相邻的网络元件100连接。在监听模式期间,可以使用从相邻网络元件100接收到的时钟存在中断来识别相邻网络元件100及其连接的端口。当确定端口要被连接时,网络元件100使用延迟计算模块320-1来计算链路的时钟相位延迟值。时钟相位延迟值是至少连接网络元件100的布线长度的函数。

在一些实施例中,为了执行时钟相位延迟值计算,在网络元件100-0、100-1中的一个上执行的软件应用将主角色分配给网络元件100-1,并且将从角色分配给网络元件100-0。在一些情况下,将角色分配给不同的网络元件100-1、100-2可以包括向网络元件100-1、100-2中的一者或两者发送控制信号。

在一些实施例中,公共时钟信号335(例如8kHz公共同步脉冲信号145)从网络元件100-1的TE端口TE0-W发送到网络元件100-0的TE端口TE0-E。

网络元件100-1的DPLL 310-1被配置为生成第一参考时钟信号330并将第一参考时钟信号330发送到FPGA315-1。根据DPLL 310-1的参考振荡器,第一参考时钟信号330可以是高度稳定和准确的。基于第一参考时钟信号330,FPGA315-1在内部生成具有比第一参考时钟信号330更高的时钟频率的第二参考时钟信号。

在一个非限制性示例中,并且对应于8kHz同步信号,第一参考时钟信号330具有25MHz的频率,并且第二参考时钟信号具有200MHz的频率。第一参考时钟信号330和/或第二参考时钟信号的其他频率也是可能的。值得注意的是,第二参考时钟信号的更高频率对应于时钟相位延迟计算的提高的准确度。

在一些实施例中,FPGA315-1包括接收第二参考时钟信号的计数器。例如,该计数器可以包括与第二参考时钟信号的200MHz频率相对应的32位时间戳计数器。基于同步信号和/或第二参考时钟信号335的频率,计数器的其它尺寸也是可能的。

在一些实施例中,响应于使用链路220-0开始公共时钟信号335从网络元件100-1的TE0-W到网络元件100-0的TE0-E的传输,FPGA 315-1启动计数器。在FPGA 315-0处,公共时钟信号335被接收为接收的公共时钟信号340。由于网络元件100-0被配置为以从角色操作,所以FPGA 315-0被配置为在链路220-0上将接收的公共时钟信号340作为循环时钟信号350回送(被示为环路345)。当由FPGA 315-1接收到接收的循环时钟信号355时,延迟计算模块320-1采集计数器的值。

延迟计算模块320-1还被配置为使用计数器的平均采集值来计算时钟相位延迟值。在一些实施例中,采集计数器的值作为第一实例发生,并且延迟计算模块320-1还被配置为响应于从网络元件100-0接收回送公共时钟信号而执行采集计数器值的至少第二实例。以这种方式,延迟计算模块320-1可以被配置为采集计数器的预定义数量的值,以计算与链路220-0相对应的时钟相位延迟值。在使用计数器的五个采集值的一个示例中,时钟相位延迟值可以根据以下等式来计算:

其中A0、A1、…A4表示计数器的五个采集值,200MHz表示由FPGA 315-1生成的第二参考时钟信号的频率。路径中包括的各种延迟(例如,FPGA 315-0、315-1中的延迟、底板(backplane)路由延迟、组件传播延迟和布线延迟)可以在该计算的时钟相位延迟值中反映。

通常,相位延迟值测量的准确度取决于计数器工作的频率。在这种情况下,对于200MHz的时钟频率,可以以±5纳秒(ns)的准确度计算相位延迟值。当来自发送路径和接收路径的延迟的贡献相对平衡时,相位延迟值测量的准确度也可以提高。为了实现这一点,逻辑305-0、305-1可以在FPGA 315-0、315-1以及缓冲器和/或RS422收发器中使用相对简单的逻辑元件,这可以有益地避免与分组处理相关联的延迟。

图4是示出根据本文所述的实施例的两个网络元件之间的延迟补偿的图400。图400所示的过程可以结合本文公开的其他实施例使用,例如在图2中所示的通信系统200的相邻网络元件100之间。

在图400中,FPGA 315-0包括延迟计算模块320-0和延迟补偿模块325-0。延迟补偿模块325-0被配置为实现网络元件100-0(即,具有从角色)的(一个或多个)TE端口的(一个或多个)时钟延迟补偿。

FPGA 315-1被配置为使用链路220-0将公共时钟信号405从网络元件100-1的TE端口TE0-W发送到网络元件100-0的TE端口TE0-E。逻辑305-0的第一DPLL 310-0被配置为接收公共时钟信号405作为接收的公共时钟信号410,并且生成与接收的公共时钟信号410频率同步的第一参考时钟信号。

在一个非限制性示例中,第一DPLL 310-0生成具有25MHz频率的第一参考时钟信号。FPGA 315-0还被配置为接收第一参考时钟信号,并且在内部生成频率大于第一参考时钟信号的第二参考时钟信号。在一个非限制性示例中,第二参考时钟信号具有200MHz频率。

在一些实施例中,FPGA 315-0包括接收第二参考时钟信号的两个计数器。例如,两个计数器中的每一个可以包括与第二参考时钟信号的200MHz频率相对应的32位时间戳计数器。基于接收的公共时钟信号410和/或第二参考时钟信号的频率,也可以使用其它尺寸的计数器。

在一些实施例中,FPGA 315-0被配置为用预定义值来设置两个计数器中的每一个,并且响应于接收的公共时钟信号410的不同属性而递减每个计数器。在一个实施例中,预定义值包括与接收的公共时钟信号410的频率相对应的第一周期除以与第二参考时钟信号的频率相对应的第二周期。例如,可以将每个计数器设置为值[0x61A8-0x(相位延迟/5)],其中0x61A8对应于十六进制值(125us/5ns)。125us值是对应于被补偿的8kHZ公共时钟信号的第一周期,5ns值是对应于第二参考时钟信号的200MHz频率的第二周期。

FPGA 315-0被配置为响应于接收的公共时钟信号410的正边缘从预定义值开始递减两个计数器中的第一计数器,并且响应于接收的公共时钟信号410的负边缘从预定义值开始递减两个计数器中的第二计数器。当第一计数器递减到零值时,FPGA 315-0生成相位补偿时钟信号415的正边缘。当第二计数器递减到零值时,FPGA 315-0生成相位补偿时钟信号415的负边缘。响应于递减到零值,FPGA 315-0将两个计数器中的每个计数器复位到预定义值,并且重复递减过程以生成相位补偿时钟信号415的后续转变。相位补偿时钟信号415从FPGA 315-0发送到逻辑305-0的第二DPLL,并且网络元件100-0与相位补偿时钟信号415同步。

有益的是,图400所示的实现方式相对简单,并且不需要寻址分组协议或使用复杂的软件栈。尽管如此简单,该实现方式可以实现高准确度(例如,在10ns内)。该实现方式可以只使用最小的附加硬件逻辑,相对于替代实现方式,这降低了成本和功耗。例如,使用精确时间协议(IEEE 1588)或全球定位系统(GPS)时间来实现具有可比的准确度的时钟同步是相对复杂且昂贵的。

图5是根据本文描述的实施例的用于配置包括多个网络元件的通信系统的示例性方法500。方法500可以结合本文公开的其他实施例使用,例如在图2中所示的通信系统200的相邻网络元件100之间。用于执行方法500的逻辑可以在一个或多个网络元件和/或与一个或多个网络元件通信地耦合的单独计算设备中实现。

方法500在方框505开始,其中逻辑接收复位信号。在一些实施例中,响应于复位信号,多个网络元件中的每一个网络元件被转换成初始化模式。

在方框515,逻辑确定在通信系统中是否检测到多于一个的网络元件。如果只检测到一个网络元件(“否”),则方法500返回到方框515。如果检测到多于一个的网络元件(“是”),则方法500继续进行到方框525,并且逻辑将所检测的网络元件转换为预定义的监听模式。在一些实施例中,每个网络元件的每个端口被转换成预定义的监听模式,在该模式中,接收的公共时钟信号被回送。

在方框535,第一网络元件学习一个或多个相邻网络元件,并且计算一个或多个相邻网络元件中的每一个的相位延迟值。在一些实施例中,第一网络元件转换成预定义的学习模式,而其他网络元件保持在监听模式。在一些实施例中,方框535可以结合图3执行。在方框545,第一网络元件在完成对第一网络元件的多个端口的学习之后返回到监听模式。方框535和545可以针对每个剩余的网络元件重复。

在方框555,逻辑确定一个或多个相邻的网络元件是否完成了学习。在方框565,逻辑将角色分配给每个网络元件。在一些实施例中,网络元件中的一个被分配为时钟主设备,剩余的网络元件被分配为时钟从设备或被隔离。

在一些实施例中,使用一个或多个预定义标准来分配每个网络元件的角色。在一个实施例中,比较由每个网络元件生成的时钟信号的质量值。具有最大质量值的网络元件可以被分配时钟主角色。在另一实施例中,首先启动的第一网络元件被分配时钟主角色。在一些情况下,当未确定质量值或当质量值没有充分区分不同的网络元件时,可以选择首先启动的网络元件。其他预定义的标准也是可能的。

在方框575,逻辑为每个网络元件的每个端口分配角色。角色的一些非限制性示例包括“主”角色、“后备”主角色、“替代”主角色、“转发”角色和“禁用”角色。方法500在完成方框575之后结束。

图6是根据本文描述的实施例的用于在通信系统内配置网络元件的示例性方法600。方法600可以结合其他实施例使用,例如,作为图5的方法500的一部分来配置图1的网络元件100。在一些实施例中,网络元件包括多个端口。

方法600在方框605开始,其中网络元件将多个端口转换为预定义的监听模式。在方框615,网络元件确定第一端口是否可以学习相邻的网络元件。在一些实施例中,网络元件将第一端口转换为预定义的学习模式,而剩余端口保持在监听模式中。如果第一端口无法学习相邻的网络元件(“否”),则在方框625该网络元件将第一端口设置为禁用模式。如果第一端口确实学习到相邻网络元件(“是”),则方法600继续进行到方框635,并且网络元件计算与相邻网络元件相关联的相位延迟值。方框615、625和/或635可以针对网络元件的每个剩余端口重复。

在方框645,网络元件将多个端口转换为监听模式。在方框655,网络元件基于分配给网络元件的角色向每个端口分配角色。在一个非限制性示例中,针对分配时钟主角色的网络元件,每个非禁用端口可以被分配“转发”角色,以使公共时钟信号能够从网络元件的端口发送。端口角色的分配将针对图7-10进一步讨论。方法600在完成方框655之后结束。

图7是示出根据本文描述的实施例的通信系统的同步状态的图700。图700中所示的实现方式可以结合其他实施例使用,例如,使用图2中所示的通信系统200。在一些实施例中,根据方法500(图5)和/或方法600(图6),在由多个网络元件完成学习过程之后确定同步状态。

在图700中,网络元件100-0被分配了时钟主角色,网络元件100-1、100-2和100-3被分配了时钟从角色。在一些实施例中,当分配时钟主角色时,网络元件100-0将其每个TE端口转换为“转发”角色(F),以发送公共时钟信号。

对于时钟从分配的网络元件100-1、100-2、100-3中的每一个,在其中检测到公共时钟信号的第一TE端口被分配“主”(M)角色,并且在第一TE端口上启用时钟恢复。如图所示,网络元件100-1的TE端口TE0-W和网络元件100-3的TE端口TE0-E被转换为主角色。

在时钟从分配的网络元件100-1、100-2、100-3上,当第一TE端口被分配了主角色之后第二TE端口接收到公共时钟信号时,第二TE端口被分配“后备主”(B)角色。如图所示,网络元件100-1的TE端口TE1-W和网络元件100-3的TE端口TE1-E被转换为后备主角色。

在时钟从分配的网络元件100-1、100-2、100-3上,与第一个TE端口(分配主角色)相对的两个TE端口被分配了“转发”角色。如图所示,网络元件100-1的TE端口TE0-E和TE1-E被转换为转发角色。对于网络元件100-2,TE端口TE0-W从链路220-1上的网络元件100-1的(转发)TE端口TE0-E接收公共时钟信号,并且网络元件100-2的TE0-W被转换为主角色。网络元件100-2的TE端口TE1-W被转换为后备角色。

由于网络元件100-2的TE端口TE0-E和TE1-E,以及网络元件100-3的TE0-W和TE1-W的位置与网络元件100-2、100-3的主角色TE端口相对,所以它们通常会被分配转发角色。然而,除了转发公共时钟信号外,这些TE端口中的每一个还接收公共时钟信号,并且这些TE端口中的每一个都被分配“替代主”(A)角色。

图8-10各自示出了根据本文描述的实施例的通信系统的更新的同步状态。在这些图中的每一个图中,更新的同步状态可以响应于链路降级或故障反映通信系统的动态重新配置。

图8是单链路220-1发生故障(由中断805指示)的图800。网络元件100-2的TE端口TE0-W(先前分配了主角色)和网络元件100-1的TE端口TE0-E(先前分配了转发角色)都被分配了“禁用”(D)角色。随着TE端口TE0-W作为网络元件100-2的主角色而丢失,网络元件100-2的TE端口TE1-W从后备主角色转换到主角色,从而在TE端口TE1-W上启用同步和延迟补偿。

图9是多个链路215-1、220-1出现故障(由相应的中断905、910表示)的图900。网络元件100-2的TE端口TE0-W、TE1-W和网络元件100-1的TE端口TE0-E、TE1-E各自被分配禁用角色。

由于网络元件100-2的主角色和后备主角色两者都随着多个链路故障而丢失,具有替代主角色的TE端口TE0-E、TE1-E被转换为主角色和后备主角色。如图所示,TE端口TE0-E被分配了主角色,TE端口TE1-E被分配了后备主角色。此外,由于网络元件100-3的TE端口TE0-W、TE1-W不再从网络元件100-2接收公共时钟信号,因此TE端口TE0-W、TE1-W从后备主角色转换到转发角色。

图10是多个链路215-0、220-0出现故障(由相应的中断1005、1010表示)的图1000。网络元件100-1的TE端口TE0-W、TE1-W和网络元件100-0的TE端口TE0-E、TE1-E被分配禁用角色。

网络元件100-3的TE端口TE0-W、TE1-W从替代主角色转换为转发角色。网络元件100-2的TE端口TE0-E、TE1-E分别从替代主角色转换为主角色和后备主角色。与分配的主角色和后备主角色相对设置的网络元件100-2的TE端口TE0-W、TE1-W被转换为转发角色。网络元件100-1的TE端口TE0-E、TE1-E从转发角色转换到主角色和后备主角色。

虽然未示出,如果连接到特定网络元件100的具有主角色和后备主角色的TE端口的链路发生故障,并且通信系统内没有为TE端口分配替代主角色,由于网络元件100没有接收到用于转发到相邻网络元件的公共时钟信号,所以为网络元件100的任何转发端口分配了“等待”角色。一旦公共时钟信号再次被网络元件100接收,则等待角色中的TE端口可以转换为转发角色。

在前文中,参考了本公开中呈现的实施例。然而,本公开的范围不限于具体描述的实施例。替代地,所描述的特征和元件的任何组合无论是否与不同的实施例有关,都被设想为实现并实践设想的实施例。此外,尽管本文公开的实施例可以实现优于其他可能的解决方案或优于现有技术的优点,但是特定优点是否由给定实施例实现不限制本公开的范围。因此,除了在权利要求中显式地叙述,前面的方面、特征、实施例和优点仅仅是说明性的,而不应被认为是所附权利要求的要素或限制。

如本领域的技术人员将领会的,可以将本文公开的实施例体现为系统、方法或计算机程序产品。因此,各方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或组合软件和硬件方面的实施例的形式,这些软件和硬件方面在本文中可以全部通常被称为“电路”、“模块”或“系统”。此外,各方面可以采取体现在上面体现有计算机可读程序代码的一个或多个计算机可读介质中的计算机程序产品的形式。

可以利用一种或多种计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于电子、磁性、光、电磁、红外或半导体系统、装置或设备、或前述的任何合适的组合。计算机可读存储介质的更具体示例(非详尽列表)将包括下列的:具有一根或多根电线的电连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪速存储器)、光纤、便携式紧致盘只读存储器(CD-ROM)、光存储设备、磁存储设备或前述的任何合适的组合。在本文献的上下文中,计算机可读存储介质是可包含或存储供由指令执行系统、设备或装置使用或者与指令执行系统、装置或设备相结合地使用的程序的任何有形介质。

计算机可读信号介质可以包括传播数据信号,其中计算机可读程序代码被体现在其中,例如,在基带中或作为载波的一部分。这样的传播信号可以采取各种形式中的任一种,包括但不限于电磁、光或它们的任何合适的组合。计算机可读信号介质可以为不是计算机可读存储介质并且可传送、传播或输送供由指令执行系统、装置或设备使用或者与指令执行系统、装置或设备相结合地使用的程序的任何计算机可读介质。

可以使用任何适当的介质来发送计算机可读介质上体现的程序代码,所述介质包括但不限于无线、有线线路、光纤电缆、RF等或前述的任何合适的组合。

用于对于本公开的各方面执行操作的计算机程序代码可以用一种或多种编程语言的任何组合加以编写,这些编程语言包括诸如Java、Smalltalk、C++的面向对象编程语言以及诸如“C”编程语言或类似编程语言的常规过程编程语言。程序代码可以完全地在用户的计算机上、部分地在用户的计算机上、作为独立软件包、部分地在用户的计算机上且部分地在远程计算机上或完全地在远程计算机或服务器上执行。在后者情况下,远程计算机可以通过包括局域网(LAN)或广域网(WAN)的任何类型的网络连接到用户计算机,或者可以做出到外部计算机的连接(例如,使用因特网服务提供商通过因特网)。

在以下参考根据本公开中呈现的实施例的方法、装置(系统)和计算机程序产品的流程图图示和/或框图描述了本公开的各方面。应理解的是,可通过计算机程序指令来实现流程图图示和/或框图的每个框以及流程图图示和/或框图中的各框的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现一个或多个流程图和/或框图框中指定的功能/行为的手段。

也可以将这些计算机程序指令存储在计算机可读介质中,该计算机可读介质可指导计算机、其他可编程数据处理装置或其他设备以特定方式起作用,使得存储在计算机可读介质中的指令产生包括实现一个或多个流程图和/或框图框中指定的功能/行为的指令的制品。

也可以将计算机程序指令加载到计算机、其他可编程数据处理装置或其他设备上,以使得在该计算机、其他可编程装置或其他设备上执行一系列操作步骤以产生计算机实现的过程,使得在该计算机或其他可编程装置上执行的指令提供用于实现一个或多个流程图和/或框图框中指定的功能/行为的过程。

各图中的流程图和框图图示根据各种实施例的系统、方法和计算机程序产品的可能的实施方案的架构、功能性和操作。在这方面,流程图或框图中的每个框可以表示代码的模块、分段或部分,其包括用于实现所指定的逻辑功能的一个或多个可执行指令。也应该注意的是,在一些替代实施方案中,框中指出的功能可以不按图中指出的次序发生。例如,取决于所涉及的功能性,实际上可以基本上同时执行相继示出的两个框,或者有时可以以相反的次序执行这些框。也应注意的是,框图和/或流程图图示的每个框以及框图和/或流程图图示中的各框的组合可由执行所指定的功能或行为的基于专用硬件的系统或专用硬件和计算机指令的组合来实现。

鉴于前文,本公开的范围由所附权利要求确定。

25页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:耦合链的编码和解码

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!