【技术实现步骤摘要】
一种PTP系统时间同步方法以及装置
本专利技术涉及通信
,尤其涉及一种PTP(PrecisionTimeProtocol,精确时间协议)系统同步方法以及装置。
技术介绍
PTP用于实现设备之间的高精度时间同步,也可用于设备之间的频率同步。在PTP系统中,由上游设备向下游设备发布同步时间,发布同步时间的上游设备可以称为主时钟,而接收同步时间的下游设备则称为从时钟。在实现PTP系统的时间同步时,由从时钟记录主、从时钟之间交互的时间同步消息的时戳,通过将该时戳上报至中央处理器CPU,由CPU计算时间同步消息往返的时间差,以及根据该往返的时间差计算主、从时钟之间的往返总延时。如果网络是对称的,则往返总延时的一半就是单向延时,并根据这个单向延时计算出主、从时钟之间的时钟偏差值。CPU可以通过控制从时钟按照该时钟偏差值来调整本地时间,从而实现从时钟与主时钟之间的同步。然而,通常CPU从计算主、从时钟之间的时钟偏差值到控制从时钟按照该时钟偏差值来调整本地时间的过程较长,如果从时钟在一个时间周期中可调整本地时间的时间范围外接收到主时钟发送的时间同步消息,那么,CPU则会在下个时间周期控制从时钟调整本地时间,从而导致后续的主、从时钟之间时间出现较大偏差,且偏差不固定的问题。
技术实现思路
有鉴于此,本专利技术提供了一种PTP系统时间同步方法以及装置来解决现有技术中的问题。本专利技术提供一种PTP系统时间同步方法,其中该方法包括:根据与上游设备交互的时间同步消息的时戳获取与上游设备表征时间的偏差值;根据所述与上游设备表征时间的偏差值更新向下游设备发送的同步信息。本专利技术还 ...
【技术保护点】
一种精确时间协议PTP系统时间同步方法,其特征在于,所述方法包括:根据与上游设备交互的时间同步消息的时戳获取与上游设备表征时间的偏差值;根据所述与上游设备表征时间的偏差值更新向下游设备发送的同步信息。
【技术特征摘要】
1.一种精确时间协议PTP系统时间同步方法,其特征在于,所述方法包括:根据与上游设备交互的时间同步消息的时戳获取与上游设备表征时间的偏差值;根据所述与上游设备表征时间的偏差值更新向下游设备发送的同步信息;其中,所述同步信息包括同步Sync报文,所述根据与上游设备表征时间的偏差值更新向下游设备发送的同步信息具体包括:若向下游设备发送同步信息的端口的发送模式是单步模式,则判断所述与上游设备表征时间的偏差值是否小于1秒,若是,将所述与上游设备表征时间的偏差值添加至所述Sync报文中,发送至下游设备。2.如权利要求1所述的方法,其特征在于,所述同步信息包括Sync报文和跟随Follow_Up报文,所述根据与上游设备表征时间的偏差值更新向下游设备发送的同步信息具体包括:若向下游设备发送同步信息的端口的发送模式是双步模式,在发送Sync报文之后,获取发送所述Sync报文的第五时戳;若判断所述与上游设备表征时间的偏差值为正数,将所述第五时戳的纳秒值与所述与上游设备表征时间的偏差值的纳秒值相加,并判断相加后的数值是否需要向所述第五时戳的秒值进位,若是,则将所述进位后得到的余数作为更新后的第五时戳的纳秒值,将进位后的第五时戳的秒值作为更新后的第五时戳的秒值,否则,将所述相加后的数值作为所述更新后的第五时戳的纳秒值,将所述第五时戳的秒值作为更新后的第五时戳的秒值;若判断所述与上游设备表征时间的偏差值为负数,在所述第五时戳的纳秒值大于或等于所述与上游设备表征时间的偏差值的纳秒值的绝对值时,使用所述第五时戳的纳秒值减去所述与上游设备表征时间的偏差值的纳秒值的绝对值作为所述更新后的第五时戳的纳秒值,将所述第五时戳的秒值作为更新后的第五时戳的秒值;在所述第五时戳的纳秒值小于所述与上游设备表征时间的偏差值的纳秒值的绝对值时,将所述第五时戳的纳秒值加上1秒再减去所述与上游设备表征时间的偏差值的纳秒值的绝对值得到更新后的第五时戳的纳秒值,并将所述第五时戳的秒值减去1秒得到所述更新后的第五时戳的秒值;将所述更新后的第五时戳的纳秒值以及秒值添加至所述Follow_Up报文中,发送至下游设备。3.如权利要求2所述的方法,其特征在于,所述同步信息还包括延时回应Delay_Resp报文,所述根据与上游设备表征时间的偏差值更新向下游设备发送的同步信息具体包括:在向下游设备发送Sync报文或Follow_Up报文后,若接收到下游设备发送的延时请求Delay_Req报文,将接收Delay_Req报文时,与清零阈值寄存器对应的计数器当前的计数时间作为第六时戳t6的纳秒值,将当前系统内部保存的TOD时间作为第六时戳t6的秒值;若检查所述与上游设备表征时间的偏差值是正数,将所述第六时戳的纳秒值与所述Offset的纳秒值相加,并判断相加后的数值是否需要进位,若是,将进位后得到的余数作为更新后的第六时戳的纳秒值,将进位后的秒值作为更新后的第六时戳的秒值;否则,将所述相加后的数值作为所述更新后的第六时戳的纳秒值,将所述第六时戳的秒值作为更新后的第六时戳的秒值;若判断所述与上游设备表征时间的偏差值为负数,在所述第六时戳的纳秒值大于或等于所述与上游设备表征时间的偏差值的纳秒值的绝对值时,使用所述第六时戳的纳秒值减去所述与上游设备表征时间的偏差值的纳秒值的绝对值作为所述更新后的第六时戳的纳秒值,将所述第六时戳的秒值作为更新后的第六时戳的秒值;在所述第六时戳的纳秒值小于所述与上游设备表征时间的偏差值的纳秒值的绝对值时,将所述第六时戳的纳秒值加上1秒再减去所述与上游设备表征时间的偏差值的纳秒值的绝对值得到更新后的第六时戳的纳秒值,并将所述第六时戳的秒值减去1秒得到所述更新后的第六时戳的秒值;将所述更新后的第六时戳的纳秒值以及秒值添加至所述Delay_Resp报文中,发送至下游设备。4.如权利要求1所述的方法,其特征在于,所述同步信息包括秒脉冲信号和TOD信息,所述根据与上游设备表征时间的偏差值更新向下游设备发送的同步信息具体包括:在接收到秒脉冲信号时,开启计数器;若所述与上游设备表征时间的偏差值为正数,在所述计数器的计数时间到达所述与上游设备表征时间的偏差值的纳秒值时,向下游设备发送秒脉冲信号,并且将接收到秒脉冲信号的时间的秒值组装为TOD信息,在到达预设时间后,将组装后的TOD信息通过TOD接口输出至下游设备;若所述表征时间的偏差值为负数,在所述计数器的计数时间到达由1秒减去所述与上游设备表征时间的偏差值的绝对值时,向下游设备发送秒脉冲信号,并且将接收到秒脉冲信号的时间的秒值加上1秒作为当前时间的秒值组装为TOD信息,在到达预设时间后,将组装后的TOD信息通过TOD接口输出至下游设备。5.如权利要求1所述的方法,其特征在于,所述与上游设备交互的时间同步消息包括由上游设备发送的Sync报文,所述方法还包括:接收上游设备发送的Sync报文;若所述上游设备发送所述Sync报文的端口为单步模式,获取所述Sync报文中携带的初始第一时戳;检查所述Sync报文中的指定字段是否为默认值,若是,将所述初始第一时戳作为第一时戳t1;若否,将初始第一时戳t1结合指定字段的数值进行修正,并得到第一时戳t1。6.如权利要求5所述的方法,其特征在于,在接收上游设备发送的Sync报文后,若所述上游设备发送所述Sync报文的端口为双步模式,在接收到上游设备发送的Follow_Up报文时,获取所述Follow_Up报文中携带的第一时戳t1。7.如权利要求5或6所述的方法,其特征在于,所述与上游设备交互的时间同步消息包括向上游设备发送的Delay_Req报文以及由上游设备发送的Delay_Resp报文,所述方法还包括:将接收所述Sync报文的端口对应的清零阈值寄存器的数值设置为固定数值,用于在与所述清零阈值寄存器对应的计数器的计数时长到达所述固定数值时,将所述计数器的计数清零并重新计数;接收到所述Sync报文时,将所述计数器当前的计数时间作为第二时戳t2的纳秒值,将内部保存的当前的日时间TOD时间作为所述第二时戳t2的秒值;向上游设备发送Delay_Req报文,将发送Delay_Req报文时所述计数器的计数时间作为第三时戳t3的纳秒值,将内部保存的TOD时间作为第三时戳t3的秒值;接收上游设备发送的Delay_Resp报文,获取上游设备接收到所述Delay_Req报文的第四时戳t4;所述根据与上游设备交互的时间同步消息的时戳获取与上游设备的表征时间的偏差值具体包括通过如下公式计算与上游设备的表征时间的偏差...
【专利技术属性】
技术研发人员:刘靖,
申请(专利权)人:杭州华三通信技术有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。