[发明专利]一种时间同步的方法和时钟设备有效
申请号: | 201010116596.3 | 申请日: | 2010-03-01 |
公开(公告)号: | CN102195766A | 公开(公告)日: | 2011-09-21 |
发明(设计)人: | 徐鹏飞 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | H04L7/00 | 分类号: | H04L7/00 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 310053 浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 时间 同步 方法 时钟 设备 | ||
技术领域
本发明涉及网络通信技术领域,特别涉及一种时间同步的方法和时钟设备。
背景技术
IEEE1588协议是以太网中一种较为精确的时钟同步解决方案,其基本功能是使分布式网络内的其它时钟与最精确时钟保持同步。IEEE1588协议中定义了一种精确时间协议(PTP,Precision Time Protocol),用于对标准以太网或其它采用多播技术的分布式总线系统中的网络节点的时钟进行精确同步,其精度可以达到纳秒级。
在网络中通常会为各时钟设备设置时钟优先级,各时钟设备通过在网络中发送携带自身时钟优先级的通告(Announce)报文来选举出时钟优先级最高的时钟设备,该时钟优先级最高的时钟设备通常称为源时钟(GM),并进行端口角色的计算从而形成同步生成树。然后GM设备沿同步生成树周期性地发送携带时钟信息的PTP同步报文,非GM设备按照接收到的PTP同步报文中携带的时钟信息对本地的时钟进行修正,将并继续转发携带修正后时钟信息的PTP同步报文,以便后续非GM设备能够按照修正后时钟信息进行本地时钟修正。
时钟同步有时是与避免网络成环的协议并存的,例如快速生成树协议(RSTP)、快速环网保护协议(RRPP)、灵活链路技术(SMLK)等。在这些协议的运行中,会将网络节点的某些端口进行阻塞。这些阻塞的端口不仅对数据报文进行丢弃,在PTP协议中对PTP同步报文也会进行丢弃,这常常会造成非GM节点接收到的PTP同步报文并不是从最优链路接收到的。
如图1所示,网络节点C1、C2、C3和C4构成的组网中,由于运行了RSTP协议,阻塞了C3上的端口P1、C4上的端口P2,RSTP的根节点为C1。但是,通常PTP形成的同步生成树与RSTP形成的生成树并不重合,即根节点并不相同,假设PTP形成的同步生成树的根节点即GM为C2,那么其时间同步的路径为图1中箭头所示。对于C3来说,时间同步路径为C2到C1,再从C1到C3,需要经过两次时间修正,对于更优的路径C2到C3由于阻塞端口P1的限制则不能使用。由于随着时间同步路径上节点跳数的增加,误差会进行累积,精度也会随之降低,现有技术中的时钟同步方式显然并不能获得最后的精度。
发明内容
有鉴于此,本发明提供了一种时间同步的方法和装置,以便于提高时间同步的精度。
一种时间同步的方法,时钟设备通过slave端口或阻塞端口接收到PTP同步报文后,执行以下步骤:
A、从所述PTP同步报文中获取距离PTP同步生成树根节点的跳数;
B、将步骤A获取的跳数与本地记录的跳数进行比较,如果获取的跳数小于或等于记录的跳数,执行步骤C;否则执行步骤E;
C、确定所述slave端口或阻塞端口对应的路径为当前最优路径,利用所述PTP同步报文中携带的时钟信息对本地时钟进行修正,如果所述获取的跳数小于记录的跳数,进一步利用步骤A获取的跳数更新本地记录的跳数;
D、如果所述PTP同步报文是通过slave端口接收到的,且所述时钟设备存在master端口,则利用当前的本地时钟信息对所述PTP同步报文中携带的时钟信息进行修正,并更新PTP同步报文中携带的距离PTP同步生成树节点的跳数后,通过master端口转发该PTP同步报文,结束流程;否则丢弃所述PTP同步报文,结束流程;
E、如果所述PTP同步报文是通过slave端口接收到的,且所述时钟设备存在主master端口,则利用当前的本地时钟信息对所述PTP报文中携带的时钟信息进行修正并更新PTP同步报文中携带的距离PTP同步生成树节点的跳数后,通过master端口转发该PTP同步报文;否则丢弃所述PTP同步报文。
一种时钟设备,该时钟设备包括:报文收发单元和跳数获取单元、路径比较单元、第一修正单元和第二修正单元;
所述报文收发单元,用于通过slave端口或阻塞端口接收到PTP同步报文后,将该PTP同步报文提供给所述跳数获取单元;通过master端口转发所述第一修正单元或者第二修正单元提供的PTP同步报文;
所述跳数获取单元,用于从所述PTP同步报文中获取所述时钟设备距离PTP同步生成树根节点的跳数;
所述路径比较单元,用于将所述跳数获取单元获取的跳数与本地记录的跳数进行比较,如果获取的跳数小于或等于记录的跳数,则确定所述slave端口或阻塞端口对应的路径为当前最优路径,向所述第一修正单元发送修正通知;否则向所述第二修正单元发送修正通知;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010116596.3/2.html,转载请声明来源钻瓜专利网。