The invention relates to an accurate clock synchronization implementation method based on PTPd2 protocol, which belongs to the field of communication technology and computer network. The invention realizes precise clock synchronization by communicating messages between master and slave clock devices. The PTPd2 protocol can acquire precise time stamps of messages reaching the network driver layer of master and slave clock devices. Compared with the time stamps acquired by NTP protocol in application layer, the interference of protocol stack can be effectively avoided, and the master and slave clock settings can be reached by capturing messages. The time of backup MAC layer and the delay and jitter caused by transmission of messages from network driver layer to MAC layer are compensated in master-slave clock device, which can improve clock synchronization accuracy. The test results show that when the master-slave clock device is connected directly through the network cable, the clock synchronization accuracy can reach 19 UGS by reasonably setting parameters and compensating the boundary time, and it is universal and easy to realize.
【技术实现步骤摘要】
一种基于PTPd2协议的精确时钟同步实现方法
本专利技术涉及通信技术以及计算机网络领域,具体涉及一种基于PTPd2协议的精确时钟同步实现方法。
技术介绍
随着信息技术的迅速发展,时钟同步技术成为分布式测控系统中的关键技术,并且很多场合对时钟同步精度的要求越来越高。传统的NTP(NetworkTimeProtocol)协议在2000公里范围的广域网内同步精度在10毫秒级,局域网内的同步精度在1毫秒级,这种毫秒级的精度已经无法适用于对精度要求更高的场合;GPS虽然同步精度达100ns,但是GPS的接入设备昂贵、难于选址和安装,并且存在政治风险,因此不适合大规模使用。而IEEE1588标准定义了一种精确时间协议(PrecisionTimeProtocol,PTP),可以基于现有网络结构实现时钟同步且同步精度在亚微妙级,因此更能满足需求。PTP协议主要由三种实现方式,分别为:(1)基于支持PTP协议的芯片在物理层获取时间戳的硬件实现方式,如DP83640;(2)基于支持PTP协议的微控制器在媒体独立接口(MediaIndependentInterface,MII)处获取时间戳的硬件实现方式;(3)基于PTPd2(PrecisionTimeProtocoldaemon)协议的软件实现方式。软硬件实现的区别在于获取时间戳的方式不同,硬件实现是在底层获取时间戳,需要硬件辅助,精度较高,但在实际应用中需要改变原有网络中的硬件设备,增加了成本;软件实现则是在协议栈获取时间戳,精度稍低,但是实现简单,节约成本,因此更易被广泛使用。PTPd2协议可在协议栈的网络驱动层获取时间戳 ...
【技术保护点】
1.一种基于PTPd2协议的精确时钟同步实现方法,其特征在于,包括以下步骤:(1)主从时钟设备分别运行PTPd2协议,确定各时钟设备的端口状态,并启动定时器,当定时器超时时,主从时钟设备开始发送通信报文;(2)分别在主从时钟设备中捕获通信报文,提取报文在主从时钟设备中到达MAC层的时间,并提取相应报文字段中记录的报文到达主从时钟设备的网络驱动层的时间,定义出边界时间Δt为报文在主从时钟设备中从网络驱动层传输到MAC层的时间,分别计算主从时钟设备的出边界时间Δt;(3)分别在主从时钟设备中补偿出边界时间Δt,主从时钟设备重新运行PTPd2协议,确定各时钟设备的端口状态并交互报文信息;(4)从时钟设备根据本地时钟同步算法校正本地时钟,与主时钟设备保持同步。
【技术特征摘要】
1.一种基于PTPd2协议的精确时钟同步实现方法,其特征在于,包括以下步骤:(1)主从时钟设备分别运行PTPd2协议,确定各时钟设备的端口状态,并启动定时器,当定时器超时时,主从时钟设备开始发送通信报文;(2)分别在主从时钟设备中捕获通信报文,提取报文在主从时钟设备中到达MAC层的时间,并提取相应报文字段中记录的报文到达主从时钟设备的网络驱动层的时间,定义出边界时间Δt为报文在主从时钟设备中从网络驱动层传输到MAC层的时间,分别计算主从时钟设备的出边界时间Δt;(3)分别在主从时钟设备中补偿出边界时间Δt,主从时钟设备重新运行PTPd2协议,确定各时钟设备的端口状态并交互报文信息;(4)从时钟设备根据本地时钟同步算法校正本地时钟,与主时钟设备保持同步。2.根据权利要求1所述的基于PTPd2协议的精确时钟同步实现方法,其特征在于:所述步骤(2)中,计算主从时钟设备的出边界时间Δt,具体包括以下步骤:(21)主时钟设备首先组播Sync报文Sj,Sync报文Sj到达主时钟设备的MAC层的时间为Tmac_Sj,随后组播Follow_Up报文,Follow_Up报文中记录了Sync报文Sj到达主时钟设备的网络驱动层的精确时间Tip_Sj;(22)在主时钟设备中捕获Sync报文Sj,提取Tmac_Sj;(23)在主时钟设备中捕获跟随Sync报文Sj的Follow_Up报文,提取Tip_Sj;(24)通过以下公式计算主从时钟设备的出边界时间Δt:其中,Δt为主从时钟设备的出边界时间,n为报文数目。3.根据权利要求1所述的基于PTPd2协议的精确时钟同步实现方法,其特征在于:所述步骤(3)中,分别在主从时钟设备中补偿出边界时间Δt′,具体为:主从时钟设备分别处理通信报文k,解析报文信息,若报文k是自身时钟设备发送的报文,则将计算的出边界时间Δt补偿到报文到达其自身时钟设备网络驱动层的精确时间Tip_Ak中即Tip_Ak=Tip_Ak+Δt。4.根据权利要求1所述的基于PTPd2协议的精确时钟同步实现方法,其特征在于:步骤(4)中,所述从时钟设备根据本地时钟同步算法校正本地时钟,与主时钟设备保持同步,具体包括以下步骤:(41)从时钟设备计算主从时钟设备之间的时钟偏差offset以及报文在主从时钟设备之间的链路延迟delay...
【专利技术属性】
技术研发人员:陆阳,陶稳静,卫星,石雷,徐娟,张本宏,贾向利,高健,
申请(专利权)人:合肥工业大学,
类型:发明
国别省市:安徽,34
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。