通信网络时钟同步方法和装置的制作方法

文档序号:7857677阅读:221来源:国知局
专利名称:通信网络时钟同步方法和装置的制作方法
技术领域
本发明涉及到通信系统技术领域,特别涉及到通信网络时钟同步方法和装置。
背景技术
时钟同步对通信系统至关重要,通信设备的收发设备时钟频率不一致将导致误码、滑码、丢帧等故障。特别是在无线网络中,对高精度同步有严格要求。基于FDD模式的无线系统(如WCDMA)需要各节点之间保持频率同步即可,而基于TDD模式的无线系统(如CDMA2000、TD-SCDMA, WiMAX, LTE)则需要更为严格的时间同步来满足移动业务的漫游和切换。传统解决方案中,有时间需求的基站通常只能从GPS获取时间。但GPS天线安装 需要满足120°的净空要求,工程安装有难度,且GPS成本较高,维护困难。因此运营商和设备商都希望能在分组网络上提供高精度和高稳定度的时间同步解决方案。IEEE 1588全称为“网络测量和控制系统的精密时钟同步协议标准”,简称PTP (Precision Time Protocol,精密时钟同步协议),用于对标准以太网或其他采用多播技术的分布式总线系统中的传感器、执行器以及其他终端设备中的时钟进行亚微秒级同步。在通信网络中运行1588协议不仅可以实现业务传输,还能实现网络时间同步传递,满足移动不同制式无线网络对时间同步的要求,有效地节省系统设备投资,降低工程的安装维护费用。应用了 PTP协议的网络称为PTP域,PTP域中的节点称为时钟节点,PTP协议定义了三种基本的时钟节点OC (Ordinary Clock,普通时钟)同一个PTP域内只有一个PTP端口参与时间同
I K
少;BCCBoundary Clock,边界时钟):同一个PTP域内有多个PTP端口参与时间同步;TC (Transparent Clock,透明时钟):有多个PTP端口转发PTP协议报文并对其进行转发延时校正,不需要进行时间同步。设备上运行了 PTP协议的端口称为PTP端口。PTP端口分为三种主端口(Master Port):发送同步时间的端口 ;从端口(Slave Port):接收同步时间的端口 ;被动端口(Passive Port):既不接收同步时间,也不对外发送同步时间的端口。PTP域中所有的时钟节点按主从层次组织在一起,主时钟周期性发布PTP协议报文(包括通告报文、其他普通消息、事件消息),从时钟接收主时钟发来的PTP协议报文,根据其中的时间信息和本节点的时间信息使用一定的方法计算出主从线路延迟及主从时间差,并利用该时间差调整本地时间,使从设备时间保持与主设备时间一致。主从端口可以通过时钟节点间运行BMC (Best Master Clock,最佳主时钟)算法获得,也可以在时钟节点上手动配置。手动配置方式或者网络拓扑发生变化很容易出现时钟成环的情况,虽然可以通过生成树协议缓解这种情况,但不能从根本上解决问题。举例来说,假设时钟节点A、时钟节点B和时钟节点C两两互联,时钟节点A的Al端口为主端口,时钟节点B的BI端口为从端口,B2端口为主端口,时钟节点C的Cl端口为从端口,C2端口为主端口,时钟节点A的A2端口为从端口。初始时时钟节点A的Al端口发通告报文及其他PTP协议报文;时钟节点B的BI端口收到时钟节点A发出的PTP协议报文后与时钟节点A进行同步,并从B2端口发送通告报文及其他PTP协议报文;时钟节点C的Cl端口收到时钟节点B发出的PTP报文之后与时钟节点B进行同步,并从C2端口发通告报文及其他PTP协议报文;时钟节点A收到时钟节点C发出的PTP报文之后与时钟节点C进行同步,并从Al端口发通告报文及其他PTP协议报文,如此循环,时钟形成了环路。由于时钟成环问题的存在,当网络中某一上游时钟发生偏差时,将会造成整个网络时钟劣化,对数据传输造成极大的影响。

发明内容
本发明的主要目的为提供一种有效防止时钟成环、保证网络中时钟节点间正常同步的通信网络时钟同步方法和装置。
本发明提出一种通信网络时钟同步方法,包括步骤当前时钟节点接收上游时钟节点发送的通告报文和其他PTP协议报文;在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的祖父时钟ID ;在判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。优选地,所述在判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作的步骤具体包括判断当前时钟节点的自身端口是否包括主端口 ;如果是,则在判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;如果否,则在判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。优选地,所述通信网络时钟同步方法,还包括步骤在判定当前时钟节点的自身端口包括主端口,且所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID相同时,确认存在时钟成环风险,不进行时间同步操作。优选地,所述通信网络时钟同步方法,还包括步骤在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的步长;在判定当前时钟节点的自身端口未包括主端口,且所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID相同时,判断所述通告报文中的步长是否小于或等于当前时钟节点记录的步长;在判定所述通告报文中的步长小于或等于当前时钟节点记录的步长时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。优选地,所述判断通告报文中的步长是否小于或等于当前时钟节点记录的步长的步骤之后还包括在判定所述通告报文中的步长大于当前时钟节点记录的步长时,启动超时定时器计时;在判定超时计时器到达超时时间时,判断所述通告报文中的步长是否持续增大;如果否,则根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对 当前时钟节点进行时间同步操作;如果是,则确认上游网络存在时钟环路,不进行时间同步操作。本发明还提出一种通信网络时钟同步装置,包括接收模块,用于接收上游时钟节点发送的通告报文和其他PTP协议报文;提取模块,用于在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的祖父时钟ID ;判断模块,用于判断所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同或判断所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同;同步模块,用于在所述判断模块判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。优选地,所述判断模块具体包括端口判断子模块,用于判断当前时钟节点的自身端口是否包括主端口 ;第一时钟ID判断子模块,用于在所述端口判断子模块判定当前时钟节点的自身端口包括主端口时,判断所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同;第二时钟ID判断子模块,用于在所述端口判断子模块判定自身端口未包括主端口时,判断所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同;所述同步模块具体包括第一同步子模块,用于在所述第一时钟ID判断子模块判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;第二同步子模块,用于在所述第二时钟ID判断子模块判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。优选地,所述通信网络时钟同步装置,还包括第一风险预警模块,用于在所述端口判断子模块判定当前时钟节点的自身端口包括主端口,且所述第一时钟ID判断子模块判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID相同时,确认存在时钟成环风险,不进行时间同步操作。优选地,所述提取模块还用于,在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的步长;所述判断模块具体还包括第一步长判断子模块,用于在所述端口判断子模块判定当前时钟节点的自身端口未包括主端口,且所述第二时钟ID判断子模块判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID相同时,判断所述通告报文中的步长是否小于或等于当前时钟节点记录的步长;
所述第二同步模块具体用于,在所述第一步长判断子模块判定所述通告报文中的步长小于或等于当前时钟节点记录的步长时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。优选地,所述通信网络时钟同步装置,还包括定时器控制模块和第二风险预警模块,所述判断模块具体还包括第二步长判断子模块所述定时器控制模块,用于在所述第一步长判断子模块判定所述通告报文中的步长大于当前时钟节点记录的步长时,启动超时定时器计时;所述第二步长判断子模块,用于在所述定时器控制模块判定超时计时器到达超时时间时,判断所述通告报文中的步长是否持续增大;所述第二同步模块具体还用于,在所述第二步长判断子模块判定所述通告报文中的步长保持稳定时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;所述第二风险预警模块,用于在所述第二步长判断子模块判定所述通告报文中的步长持续增大时,确认上游网络存在时钟环路,不进行时间同步操作。本发明有效防止了时钟成环的发生,保证了网络中时钟节点间正常同步,在上游存在环路时调整自身策略,不与有环路的时钟源进行同步,防止时钟劣化,提高了同步质量。


图I为本发明通信网络时钟同步方法的第一实施例的流程图;图2为本发明通信网络时钟同步方法的第二实施例的流程图;图3为本发明通信网络时钟同步方法的第三实施例的流程图;图4为本发明通信网络时钟同步方法的第四实施例的流程图;图5为本发明通信网络时钟同步方法的第五实施例的流程图;图6为本发明通信网络时钟同步装置的第一实施例的结构示意图;图7为本发明通信网络时钟同步装置的第二实施例的结构示意图;图8为本发明通信网络时钟同步装置的第三实施例的结构示意图;图9为本发明通信网络时钟同步装置的第四实施例的结构示意图;图10为本发明通信网络时钟同步装置的第五实施例的结构示意图;图11为本发明通信网络时钟同步装置的第六实施例的结构示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施例方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。如图I所示,图I为本发明通信网络时钟同步方法的第一实施例的流程图,该实施例提到的通信网络时钟同步方法,包括步骤S101,当前时钟节点接收上游时钟节点发送的通告报文和其他PTP协议报文;PTP协议定义了事件消息和普通消息。事件消息是一种时间消息,包含发送端和接收端产生的精确时间戳;普通消息不要求精确时间戳。普通消息中的通告报文携带了时钟优先级、时钟质量等级、时钟精度、时钟ID、步长等信息,用于时钟节点间建立主从同步关系O步骤S102,在判定当前时钟节点需要与上游时钟节点进行同步时,提取通告报文 中的祖父时钟ID ;祖父时钟ID是指位于主从层次顶端的时钟节点的时钟ID。当前时钟节点存在从端口,接收到上游时钟节点发送的通告报文,从中获取所需的时钟信息后,即可与上游时钟节点进行同步。所述时钟信息包括时钟优先级、时钟质量等级、时钟精度、时钟ID等信息。如果获取的祖父时钟的时钟优先级高于当前时钟节点的时钟优先级,或祖父时钟的时钟质量等级高于当前时钟节点的时钟质量等级、或祖父时钟的时钟精度高于当前时钟节点的时钟精度、或者使用其他的算法,判定当前时钟节点需要与上游时钟节点进行同步。此外,也可在从端口接收到通告报文获取所需的时钟信息后,直接默认为当前时钟节点需要与上游时钟节点进行同步。步骤S103,在判定通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。本实施例仅在通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID或记录的时钟ID不同时才进行时间同步操作;当通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID或记录的时钟ID相同时,为了避免同步后发生时钟成环、或者避免与已经存在时钟环路的上游时钟节点同步,暂不对当前时钟节点进行同步操作,有效防止了时钟成环的发生,保证了网络中时钟节点间正常同步,提高了同步质量。本发明不限于有环路的拓扑应用,在没有环路的拓扑中同样适用,而且能避免由于拓扑改变可能引起的时钟成环问题。如图2所示,图2为本发明通信网络时钟同步方法的第二实施例的流程图。步骤S201,当前时钟节点接收上游时钟节点发送的通告报文和其他PTP协议报文;步骤S202,在判定当前时钟节点需要与上游时钟节点进行同步时,提取通告报文中的祖父时钟ID ;步骤S203,判断当前时钟节点的自身端口是否包括主端口 ;如果是,则执行步骤S204 ;如果否,则执行步骤S205 ;当前时钟节点根据自身的端口类别进行不同的处理,其中,端口类别主要包括主端口和从端口,在进行报文发布时,主端口将报文发送至从端口。
步骤S204,在判定通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同时,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;对于当前时钟节点既包括主端口,又包括从端口时,由于包括有主端口的时钟节点会在数据传输时将数据传输到下游时钟节点,同时也会将自身的时间信息也传输到下游时钟节点,供下游时钟节点进行同步操作。为了判断本次接收到的时钟是否会形成环路,将通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID进行比较,当相同时,则说明这个时钟是当前时钟节点自己发布的,经过网络中各时钟节点同步后,又传回到了自身,如果根据本次接收到的时间信息进行时间同步操作,则会形成时钟环路。因此,只有在通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同时才进行时间同步操作。此外,由于当前时钟节点包括了主端口,在进行同步后,当前时钟节点还将发送通告报文和其他PTP协议报文至下游时钟节点,实现通信网络的时间同步。步骤S205,在判定通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同 时,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。对于当前时钟节点只包括从端口时,从端口在每次接收上游时钟节点发送的时间信息后,会根据情况进行时间同步操作,并记录该上游时钟节点发布的通告报文中的祖父时钟ID。为了判断上游网络的时钟是否已经成环,将通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID进行比较,当相同时,为了避免同步后发生时钟成环、或者避免与已经存在时钟环路的上游时钟节点同步,暂不对当前时钟节点进行同步操作。本实施例有效防止了时钟成环的发生,保证了网络中时钟节点间正常同步;同时,在上游存在环路时调整自身策略,不与有环路的时钟源进行同步,防止时钟劣化,提高了同步质量。如图3所示,图3为本发明通信网络时钟同步方法的第三实施例的流程图。步骤S301,当前时钟节点接收上游时钟节点发送的通告报文和其他PTP协议报文;步骤S302,在判定当前时钟节点需要与上游时钟节点进行同步时,提取通告报文中的祖父时钟ID ;步骤S303,判断当前时钟节点的自身端口是否包括主端口 ;如果是,则执行步骤S304 ;如果否,则执行步骤S307 ;步骤S304,判断通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同;如果是,则执行步骤S305 ;如果否,则执行步骤S306 ;步骤S305,确认存在时钟成环风险,不进行时间同步操作;对于当前时钟节点既包括主端口,又包括从端口时,由于包括有主端口的时钟节点会在数据传输时将数据传输到下游时钟节点,同时也会将自身的时间信息也传输到下游时钟节点,供下游时钟节点进行同步操作。为了避免本次接收到的时钟形成环路,将通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID进行比较,当相同时,则说明这个时钟是当前时钟节点自己发布的,经过网络中各时钟节点同步后,又传回到了自身,如果根据本次接收到的时间信息进行时间同步操作,则会造成时钟环路,因此不能进行时间同步操作。步骤S306,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;步骤S307,判断通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同;如果是,则执行步骤S308 ;如果否,则执行步骤S306 ;步骤S308,进入步长判断的流程。对于当前时钟节点只包括从端口时,从端口在每次接收上游时钟节点发送的时间信息后,会根据情况进行时间同步操作,并记录该上游时钟节点发布的通告报文中的祖父时钟ID。为了判断上游网络的时钟是否已经成环,将通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID进行比较,当相同时,为了避免同步后发生时钟成环、或者避免与已经存在时钟环路的上游时钟节点同步,暂不能进行时间同步操作,需要进一步对其步长进行判断,该步长判断的流程在后续实施例中详细介绍。
本实施例有效防止了时钟成环的发生,保证了网络中时钟节点间正常同步;同时,在上游存在环路时调整自身策略,不与有环路的时钟源进行同步,防止时钟劣化,提高了同
步质量。如图4所示,图4为本发明通信网络时钟同步方法的第四实施例的流程图。步骤S401,当前时钟节点接收上游时钟节点发送的通告报文和其他PTP协议报文;步骤S402,在判定当前时钟节点需要与上游时钟节点进行同步时,提取通告报文中的祖父时钟ID和步长;步骤S403,判断当前时钟节点的自身端口是否包括主端口 ;如果是,则执行步骤S404 ;如果否,则执行步骤S407 ;步骤S404,判断通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同;如果是,则执行步骤S405 ;如果否,则执行步骤S406 ;步骤S405,确认存在时钟成环风险,不进行时间同步操作;步骤S406,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;步骤S407,判断通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同;如果是,则执行步骤S408 ;如果否,则执行步骤S406 ;步骤S408,判断通告报文中的步长是否小于或等于当前时钟节点记录的步长;如果是,则执行步骤S406 ;如果否,则执行步骤S409 ;步骤S409,进入步长稳定性判断的流程。本实施例中,在接收到同一源时钟ID发送的时间信息时,对接收到的通告报文中的步长与记录的步长进行比较。如果通告报文中的步长小于或等于当前时钟节点记录的步长,则表明此次步长是正常的,应对其进行同步调整;如果步长增大,则上游网络可能存在环路,暂不能进行同步调整,需要进一步对其进行步长稳定性判断,否则将造成时钟劣化,该步长稳定性判断的流程在后续实施例中详细介绍。本实施例在不依赖生成树或生成树失效的情况下,可及时发现并消除时钟环路,保证网络中时钟节点间正常同步,在上游存在环路时可以调整自身策略,不与有环路的时钟源进行同步,有效防止时钟劣化。如图5所示,图5为本发明通信网络时钟同步方法的第五实施例的流程图。步骤S501,当前时钟节点接收上游时钟节点发送的通告报文和其他PTP协议报文;步骤S502,在判定当前时钟节点需要与上游时钟节点进行同步时,提取通告报文中的祖父时钟ID和步长;步骤S503,判断当前时钟节点的自身端口是否包括主端口 ;如果是,则执行步骤S504 ;如果否,则执行步骤S507 ;步骤S504,判断通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同;如果是,则执行步骤S505 ;如果否,则执行步骤S506 ;步骤S505,确认存在时钟成环风险,不进行时间同步操作;·步骤S506,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;步骤S507,判断通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同;如果是,则执行步骤S508 ;如果否,则执行步骤S506 ;步骤S508,判断通告报文中的步长是否小于或等于当前时钟节点记录的步长;如果是,则执行步骤S506 ;如果否,则执行步骤S509 ;步骤S509,启动超时定时器计时;步骤S510,在判定超时计时器到达超时时间时,判断通告报文中的步长是否持续增大;如果否,则执行步骤S506 ;如果是,则执行步骤S511 ;步骤S511,确认上游网络存在时钟环路,不进行时间同步操作。本实施例中,如果在超时时间内,步长持续增大,则表明上游网络存在环路,不能进行同步调整,否则将造成时钟劣化。本实施例在不依赖生成树或生成树失效的情况下,可及时发现并消除时钟环路,保证网络中时钟节点间正常同步。本实施例在上游存在环路时可以调整自身策略,不与有环路的时钟源进行同步,防止时钟劣化。如图6所示,图6为本发明通信网络时钟同步装置的第一实施例的结构示意图,该实施例提到的通信网络时钟同步装置,包括接收模块10,用于接收上游时钟节点发送的通告报文和其他PTP协议报文;提取模块20,用于在判定当前时钟节点需要与上游时钟节点进行同步时,提取通告报文中的祖父时钟ID ;判断模块30,用于判断通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同或判断通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同;同步模块40,用于在判断模块30判定通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。本实施例中,PTP协议定义了事件消息和普通消息。事件消息是一种时间消息,包含发送端和接收端产生的精确时间戳;普通消息不要求精确时间戳。普通消息中的通告报文携带了时钟优先级、时钟质量等级、时钟精度、时钟ID、步长等信息,用于时钟节点间建立主从同步关系。祖父时钟ID是指位于主从层次顶端的时钟节点的时钟ID。当前时钟节点存在从端口,接收到上游时钟节点发送的通告报文,从中获取所需的时钟信息后,即可与上游时钟节点进行同步。所述时钟信息包括时钟优先级、时钟质量等级、时钟精度、时钟ID等信息。如果获取的祖父时钟的时钟优先级高于当前时钟节点的时钟优先级,或祖父时钟的时钟质量等级高于当前时钟节点的时钟质量等级、或祖父时钟的时钟精度高于当前时钟节点的时钟精度、或者使用其他的算法,判定当前时钟节点需要与上游时钟节点进行同步。此夕卜,也可在从端口接收到通告报文获取所需的时钟信息后,直接默认为当前时钟节点需要与上游时钟节点进行同步。本实施例仅在通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID或记录的时钟ID不同时才进行时间同步操作;当通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID或记录的时钟ID相同时,为了避免同步后可能发生时钟成环,暂不对当前时钟节点进行同步操作,有效防止了时钟成环的发生,保证了网络中时钟节点间正常同步,提高了同步质量。本发明不限于有环路的拓扑应用,在没有环路的拓扑中同样适用,而且能避免由于拓扑改变可能引起的时钟成环问题。如图7所示,图7为本发明通信网络时钟同步装置的第二实施例的结构示意图。判断模块30具体包括 端口判断子模块31,用于判断当前时钟节点的自身端口是否包括主端口 ;第一时钟ID判断子模块32,用于在端口判断子模块31判定当前时钟节点的自身端口包括主端口时,判断通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同;第二时钟ID判断子模块33,用于在端口判断子模块31判定自身端口未包括主端口时,判断通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同;同步模块40具体包括第一同步子模块41,用于在第一时钟ID判断子模块32判定通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同时,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;第二同步子模块42,用于在第二时钟ID判断子模块33判定通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。本实施例中,当前时钟节点根据自身的端口类别进行不同的处理,其中,端口类别主要包括主端口和从端口,在进行报文发布时,主端口将报文发送至从端口。对于当前时钟节点既包括主端口,又包括从端口时,由于包括有主端口的时钟节点会在数据传输时将数据传输到下游时钟节点,同时也会将自身的时间信息也传输到下游时钟节点,供下游时钟节点进行同步操作。为了判断本次接收到的时钟是否会形成环路,将通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID进行比较,当相同时,则说明这个时钟是当前时钟节点自己发布的,经过网络中各时钟节点同步后,又传回到了自身,如果根据本次接收到的时间信息进行时间同步操作,则会形成时钟环路。因此,只有在通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同时才进行时间同步操作。对于当前时钟节点只包括从端口时,从端口在每次接收上游时钟节点发送的时间信息后,会根据情况进行时间同步操作,并记录该上游时钟节点发布的通告报文中的祖父时钟ID。为了判断上游网络的时钟是否已经成环,将通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID进行比较,当相同时,为了避免同步后发生时钟成环、或者避免与已经存在时钟环路的上游时钟节点同步,暂不对当前时钟节点进行同步操作。本实施例有效防止了时钟成环的发生,保证了网络中时钟节点间正常同步;同时,在上游存在环路时调整自身策略,不与有环路的时钟源进行同步,防止时钟劣化,提高了同步质量。如图8所示,图8为本发明通信网络时钟同步装置的第三实施例的结构示意图。通信网络时钟同步装置还包括第一风险预警模块51,用于在端口判断子模块31判定当前时钟节点的自身端口包括主端口,且第一时钟ID判断子模块32判定通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID相同时,确认存在时钟成环风险,不进行时间同步操作。本实施例对于当前时钟节点既包括主端口,又包括从端口时,由于包括有主端口的时钟节点会在数据传输时将数据传输到下游时钟节点,同时也会将自身的时间信息也传输到下游时钟节点,供下游时钟节点进行同步操作。为了避免本次接收到的时钟形成环路,将通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID进行比较,当相同时,则说明这个时钟是当前时钟节点自己发布的,经过网络中各时钟节点同步后,又传回到了自身,如果 根据本次接收到的时间信息进行时间同步操作,则会形成时钟环路,因此不能进行时间同步操作。本实施例有效防止了时钟成环的发生,保证了网络中时钟节点间正常同步。如图9所示,图9为本发明通信网络时钟同步装置的第四实施例的结构示意图。提取模块20还用于,在判定当前时钟节点需要与上游时钟节点进行同步时,提取通告报文中的步长;判断模块30具体还包括第一步长判断子模块34,用于在端口判断子模块31判定当前时钟节点的自身端口未包括主端口,且第二时钟ID判断子模块33判定通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID相同时,判断通告报文中的步长是否小于或等于当前时钟节点记录的步长;第二同步模块42具体用于,在第一步长判断子模块34判定通告报文中的步长小于或等于当前时钟节点记录的步长时,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。本实施例对于当前时钟节点只包括从端口时,从端口在每次接收上游时钟节点发送的时间信息后,会根据情况进行时间同步操作,并记录该上游时钟节点发布的通告报文中的祖父时钟ID。为了判断上游网络的时钟是否已经成环,将通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID进行比较,当相同时,为了避免同步后发生时钟成环、或者避免与已经存在时钟环路的上游时钟节点同步,暂不对当前时钟节点进行同步操作。在接收到同一源时钟ID发送的时间信息时,对接收到的通告报文中的步长与记录的步长进行比较。如果通告报文中的步长小于或等于当前时钟节点记录的步长,则表明此次步长是正常的,应对其进行同步调整;如果步长增大,表明上游网络可能存在环路,暂不能进行同步调整,否则将造成时钟劣化。本实施例在不依赖生成树或生成树失效的情况下,可及时发现并消除时钟环路,保证网络中时钟节点间正常同步,在上游存在环路时可以调整自身策略,不与有环路的时钟源进行同步,有效防止时钟劣化。如图10所示,图10为本发明通信网络时钟同步装置的第五实施例的结构示意图。通信网络时钟同步装置还包括定时器控制模块60和第二风险预警模块52,判断模块30具体还包括第二步长判断子模块35 定时器控制模块60,用于在第一步长判断子模块34判定通告报文中的步长大于当前时钟节点记录的步长时,启动超时定时器计时;第二步长判断子模块35,用于在定时器控制模块60判定超时计时器到达超时时间时,判断通告报文中的步长是否持续增大;第二同步模块42具体还用于,在第二步长判断子模块35判定通告报文中的步长保持稳定时,根据其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作;第二风险预警模块52,用于在第二步长判断子模块35判定通告报文中的步长持续增大时,确认上游网络存在时钟环路,不进行时间同步操作。本实施例如果在超时时间内,步长持续增大,则表明上游网络存在环路,不能进行同步调整,否则将造成时钟劣化。本实施例在不依赖生成树或生成树失效的情况下,可及时发现并消除时钟环路,保证网络中时钟节点间正常同步。本实施例在上游存在环路时,调整 自身策略,不与有环路的时钟源进行同步,防止时钟劣化,提高了同步质量。如图11所示,图11为本发明通信网络时钟同步装置的第六实施例的结构示意图。通信网络时钟同步装置还包括发送模块70,用于在端口判断子模块31判定当前时钟节点的自身端口包括主端口时,将第一同步子模块41进行时间同步操作后的通告报文和其他PTP协议报文发送至下游时钟节点;或在第一风险预警模块51确认不可进行时间同步操作后,发送通告报文和其他PTP协议报文至下游时钟节点。本实施例中,由于当前时钟节点包括了主端口,在进行同步后,当前时钟节点还将发送通告报文和其他PTP协议报文至下游时钟节点,实现通信网络的时间同步。以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
权利要求
1.一种通信网络时钟同步方法,其特征在于,包括步骤 当前时钟节点接收上游时钟节点发送的通告报文和其他PTP协议报文; 在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的祖父时钟ID ; 在判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。
2.根据权利要求I所述的通信网络时钟同步方法,其特征在于,所述在判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作的步骤具体包括 判断当前时钟节点的自身端口是否包括主端口; 如果是,则在判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作; 如果否,则在判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。
3.根据权利要求2所述的通信网络时钟同步方法,其特征在于,还包括步骤 在判定当前时钟节点的自身端口包括主端口,且所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID相同时,确认存在时钟成环风险,不进行时间同步操作。
4.根据权利要求2所述的通信网络时钟同步方法,其特征在于,还包括步骤 在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的步长; 在判定当前时钟节点的自身端口未包括主端口,且所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID相同时,判断所述通告报文中的步长是否小于或等于当前时钟节点记录的步长; 在判定所述通告报文中的步长小于或等于当前时钟节点记录的步长时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。
5.根据权利要求4所述的通信网络时钟同步方法,其特征在于,所述判断通告报文中的步长是否小于或等于当前时钟节点记录的步长的步骤之后还包括 在判定所述通告报文中的步长大于当前时钟节点记录的步长时,启动超时定时器计时; 在判定超时计时器到达超时时间时,判断所述通告报文中的步长是否持续增大;如果否,则根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作; 如果是,则确认上游网络存在时钟环路,不进行时间同步操作。
6.一种通信网络时钟同步装置,其特征在于,包括 接收模块,用于接收上游时钟节点发送的通告报文和其他PTP协议报文;提取模块,用于在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的祖父时钟ID ; 判断模块,用于判断所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同或判断所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同; 同步模块,用于在所述判断模块判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。
7.根据权利要求6所述的通信网络时钟同步装置,其特征在于,所述判断模块具体包括 端口判断子模块,用于判断当前时钟节点的自身端口是否包括主端口 ; 第一时钟ID判断子模块,用于在所述端口判断子模块判定当前时钟节点的自身端口包括主端口时,判断所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID是否相同; 第二时钟ID判断子模块,用于在所述端口判断子模块判定自身端口未包括主端口时,判断所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID是否相同; 所述同步模块具体包括 第一同步子模块,用于在所述第一时钟ID判断子模块判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作; 第二同步子模块,用于在所述第二时钟ID判断子模块判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。
8.根据权利要求7所述的通信网络时钟同步装置,其特征在于,还包括 第一风险预警模块,用于在所述端口判断子模块判定当前时钟节点的自身端口包括主端口,且所述第一时钟ID判断子模块判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID相同时,确认存在时钟成环风险,不进行时间同步操作。
9.根据权利要求7所述的通信网络时钟同步装置,其特征在于,所述提取模块还用于,在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的步长; 所述判断模块具体还包括第一步长判断子模块,用于在所述端口判断子模块判定当前时钟节点的自身端口未包括主端口,且所述第二时钟ID判断子模块判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID相同时,判断所述通告报文中的步长是否小于或等于当前时钟节点记录的步长; 所述第二同步模块具体用于,在所述第一步长判断子模块判定所述通告报文中的步长小于或等于当前时钟节点记录的步长时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。
10.根据权利要求9所述的通信网络时钟同步装置,其特征在于,还包括定时器控制模块和第二风险预警模块,所述判断模块具体还包括第二步长判断子模块 所述定时器控制模块,用于在所述第一步长判断子模块判定所述通告报文中的步长大于当前时钟节点记录的步长时,启动超时定时器计时; 所述第二步长判断子模块,用于在所述定时器控制模块判定超时计时器到达超时时间时,判断所述通告报文中的步长是否持续增大; 所述第二同步模块具体还用于,在所述第二步 长判断子模块判定所述通告报文中的步长保持稳定时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作; 所述第二风险预警模块,用于在所述第二步长判断子模块判定所述通告报文中的步长持续增大时,确认上游网络存在时钟环路,不进行时间同步操作。
全文摘要
本发明公开了一种通信网络时钟同步方法和装置,其方法包括步骤当前时钟节点接收上游时钟节点发送的通告报文和其他PTP协议报文;在判定当前时钟节点需要与所述上游时钟节点进行同步时,提取所述通告报文中的祖父时钟ID;在判定所述通告报文中的祖父时钟ID与当前时钟节点自身的时钟ID不同或判定所述通告报文中的祖父时钟ID与当前时钟节点记录的时钟ID不同时,根据所述其他PTP协议报文的时间信息和当前时钟节点的时间信息对当前时钟节点进行时间同步操作。本发明有效防止了时钟成环的发生,保证了网络中时钟节点间正常同步,在上游存在环路时调整自身策略,不与有环路的时钟源进行同步,防止时钟劣化,提高了同步质量。
文档编号H04J3/06GK102820941SQ20121028224
公开日2012年12月12日 申请日期2012年8月9日 优先权日2012年8月9日
发明者张卫娥 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1