CN106506107A - 一种基于硬件时间戳的ntp服务器授时实现方法 - Google Patents
一种基于硬件时间戳的ntp服务器授时实现方法 Download PDFInfo
- Publication number
- CN106506107A CN106506107A CN201611054170.3A CN201611054170A CN106506107A CN 106506107 A CN106506107 A CN 106506107A CN 201611054170 A CN201611054170 A CN 201611054170A CN 106506107 A CN106506107 A CN 106506107A
- Authority
- CN
- China
- Prior art keywords
- module
- ntp
- messages
- timestamp information
- mac
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开了一种基于硬件时间戳的NTP服务器授时实现方法,MAC模块接收来自以太网接口的以太网数据帧,MAC模块从时间标签模块获取接收时间戳信息并生成解析后的以太网数据帧,CPU模块将解析后的以太网数据帧和相应的接收时间戳信息封装成NTP报文,MAC模块将已封装好的NTP报文并对外发送,并从时间标签模块获取发送时间戳信息,CPU模块将发送时间戳信息封装为UDP报文通过MAC模块将UDP报文对外发送,NTP客户端将UDP报文中的发送时间戳信息填充到对应的NTP报文中。本发明在介质访问控制层给接收或发送的NTP报文标记硬件时间戳,显著提高了NTP报文的时间戳精度。
Description
技术领域
本发明涉及时间与频率同步系统中的NTP授时技术领域,具体涉及一种基于硬件时间戳的NTP服务器授时实现方法。
背景技术
随着信息技术的快速发展,在通信系统与电力系统等要求实时性强的应用场合,必须保证系统内的各终端具有统一的时间。互联网的大规模普及,给统一授时提供了极大的方便。NTP(Network Time Protocol,网络时间协议)就是在此种应用环境下诞生的。
NTP协议最早是由美国Delaware大学Mills教授设计实现的,它是用来使计算机时间同步化的一种协议,可以使计算机通过网络与高精度时间服务器进行时间同步。NTP协议目前已发展到第四版。它使用UTC(Coordinated Universal Time,协调世界时)时间作为标准,是基于无连接的IP (Internet Protocol,网际协议)协议和UDP(User DatagramProtocol,用户数据报协议)协议的应用层协议,端口为123,使用层次式时间分布模型。通常情况下,其同步精度在广域网中能达到几十毫秒,在局域网中则优于10毫秒。
在传统的NTP授时中,应用层在解析出NTP报文后才标记时间戳,其精度受限于软件执行的时延和不确定性。而采用在介质访问控制层对NTP报文进行硬件时间戳的标记,可以克服上述缺点,从而显著提高NTP报文的时间戳精度。
发明内容
本发明的目的在于解决现有技术中存在的上述问题,提供一种基于硬件时间戳的NTP服务器授时实现方法。使NTP服务器的报文时间戳精度显著提高,从而提高NTP的授时精度,可以满足局域网内各客户端对时间同步的精度要求。
本发明目的通过下述技术方案来实现:
一种基于硬件时间戳的NTP服务器授时实现方法,包括以下步骤:
步骤1、MAC模块接收来自以太网接口的以太网数据帧,
步骤2、MAC模块通过第二中断信号通知时间标签模块生成时间戳信息,时间标签模块生成时间戳信息后通过第一中断信号通知MAC模块,MAC模块接收时间标签模块生成的时间戳信息作为接收时间戳信息,MAC模块对以太网数据帧进行解析生成解析后的以太网数据帧,
步骤3、MAC模块通过第三中断信号通知CPU模块接收解析后的以太网数据帧和相应的接收时间戳信息,
步骤4、CPU模块将解析后的以太网数据帧和相应的接收时间戳信息封装成NTP报文,
步骤5、CPU模块封装NTP报文完成后通过第四中断信号通知MAC模块发送NTP报文,
步骤6、MAC模块响应来自CPU模块的第四中断信号,获取来自CPU模块已封装好的NTP报文并对外发送,MAC模块在发送NTP报文时通过第二中断信号通知时间标签模块产生时间戳信息,时间标签模块产生时间戳信息后产生第一中断信号4通知MAC模块读取时间戳信息作为发送时间戳信息,
步骤7、MAC模块通过产生第三中断信号通知CPU模块将发送时间戳信息封装为UDP报文,
步骤8、CPU模块通过第四中断信号通知MAC模块将UDP报文对外发送,
步骤9、NTP客户端接收NTP报文以及对应的UDP报文,将UDP报文中的发送时间戳信息填充到对应的NTP报文中。
本发明相对于现有技术具有以下优点:
传统NTP授时是在应用层解析出NTP报文后才标记时间戳,该软件时间戳由于软件执行的不确定性而导致精度存在较大的误差;而本发明是在介质访问控制层给接收或发送的NTP报文标记硬件时间戳,显著提高了NTP报文的时间戳精度。
附图说明
图1为本发明的系统框图;
图中:1-第一时钟信号;2-第二时钟信号;3-第三时钟信号;4-第一中断信号;5-第二中断信号;6-第三中断信号;7-第四中断信号;10-CPU模块;11-PLL模块;12-时间标签模块;13- MAC模块。
具体实施方式
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制。
图1为实施例的系统框图,其中包括CPU模块10、PLL模块11、时间标签模块12(Timestamp)和MAC模块13。
CPU模块10,运行TCP/IP协议栈,管理整个系统的运行,并对MAC模块13产生第四中断信号7,通知MAC模块13将CPU模块10处理完的NTP报文或UDP报文对外发送出去;同时响应来自MAC模块13的第二中断信号6,及时处理MAC模块13传输过来的接收时间戳信息、发送时间戳信息、解析后的以太网数据帧。
PLL模块11,对来自时间服务器的第一时钟信号1进行倍频,将倍频后的第二时钟信号2送至时间标签模块12,作为时间标签模块12的主时钟;将倍频后的第三时钟信号3送至CPU模块10,作为CPU模块10的主时钟。
时间标签模块12,是系统标记NTP报文硬件时间戳的核心模块。时间标签模块12维持一个可追溯至时间服务器的精确的本地时间,通过响应来自MAC模块13的第二中断信号5来对MAC模块13接收到的以太网数据帧或即将发送的NTP报文数据帧进行时间戳的标记,时间标签模块12响应来自MAC模块13的第二中断信号5后读取本地时间作为时间戳信息,并产生第一中断信号4通知MAC模块13读取时间戳信息。
MAC模块13,是接收和发送以太网数据帧的核心模块。MAC模块13接收来自以太网接口的所有以太网数据帧;MAC模块13通过第二中断信号5通知时间标签模块12生成时间戳信息,时间标签模块12生成时间戳信息后通过第一中断信号4通知MAC模块13,MAC模块13接收时间标签模块12生成的时间戳信息做为接收时间戳信息,MAC模块13对以太网数据帧进行解析生成解析后的以太网数据帧;MAC模块13通过第三中断信号6来通知CPU模块10接收解析后的以太网数据帧和相应的接收时间戳信息;CPU模块10将解析后的以太网数据帧和相应的接收时间戳信息封装成NTP报文;CPU模块10封装NTP报文完成后通过第四中断信号7通知MAC模块13发送NTP报文;MAC模块13响应来自CPU模块10的第四中断信号7,获取来自CPU模块10已封装好的NTP报文并对外发送出去,MAC模块13在发送NTP报文时通过第二中断信号5通知时间标签模块12产生时间戳信息,时间标签模块12产生时间戳信息后产生第一中断信号4通知MAC模块13读取时间戳信息作为发送时间戳信息;MAC模块13通过产生第三中断信号6通知CPU模块10将发送时间戳信息封装为UDP报文;CPU模块10通过第四中断信号7通知MAC模块13将UDP报文对外发送。
一种基于硬件时间戳的NTP服务器授时实现方法,包括以下步骤:
步骤1、MAC模块13接收来自以太网接口的以太网数据帧。
步骤2、MAC模块13通过第二中断信号5通知时间标签模块12生成时间戳信息,时间标签模块12生成时间戳信息后通过第一中断信号4通知MAC模块13,MAC模块13接收时间标签模块12生成的时间戳信息作为接收时间戳信息,MAC模块13对以太网数据帧进行解析生成解析后的以太网数据帧。
步骤3、MAC模块13通过第三中断信号6来通知CPU模块10接收解析后的以太网数据帧和相应的接收时间戳信息。
步骤4、CPU模块10将解析后的以太网数据帧和相应的接收时间戳信息封装成NTP报文。
步骤5、CPU模块10封装NTP报文完成后通过第四中断信号7通知MAC模块13发送NTP报文。
步骤6、MAC模块13响应来自CPU模块10的第四中断信号7,获取来自CPU模块10已封装好的NTP报文并对外发送出去,MAC模块13在发送NTP报文时通过第二中断信号5通知时间标签模块12产生时间戳信息,时间标签模块12产生时间戳信息后产生第一中断信号4通知MAC模块13读取时间戳信息作为发送时间戳信息。
步骤7、MAC模块13通过产生第三中断信号6通知CPU模块10将发送时间戳信息封装为UDP报文。
步骤8、CPU模块10通过第四中断信号7通知MAC模块13将UDP报文对外发送。
步骤9、NTP客户端接收NTP报文以及对应的UDP报文,将UDP报文中的发送时间戳信息填充到对应的NTP报文中。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。
Claims (1)
1.一种基于硬件时间戳的NTP服务器授时实现方法,其特征在于,包括以下步骤:
步骤1、MAC模块(13)接收来自以太网接口的以太网数据帧,
步骤2、MAC模块(13)通过第二中断信号(5)通知时间标签模块(12)生成时间戳信息,时间标签模块(12)生成时间戳信息后通过第一中断信号(4)通知MAC模块(13),MAC模块(13)接收时间标签模块(12)生成的时间戳信息作为接收时间戳信息,MAC模块(13)对以太网数据帧进行解析生成解析后的以太网数据帧,
步骤3、MAC模块(13)通过第三中断信号(6)通知CPU模块(10)接收解析后的以太网数据帧和相应的接收时间戳信息,
步骤4、CPU模块(10)将解析后的以太网数据帧和相应的接收时间戳信息封装成NTP报文,
步骤5、CPU模块(10)封装NTP报文完成后通过第四中断信号(7)通知MAC模块(13)发送NTP报文,
步骤6、MAC模块(13)响应来自CPU模块(10)的第四中断信号(7),获取来自CPU模块(10)已封装好的NTP报文并对外发送,MAC模块(13)在发送NTP报文时通过第二中断信号(5)通知时间标签模块(12)产生时间戳信息,时间标签模块(12)产生时间戳信息后产生第一中断信号4通知MAC模块(13)读取时间戳信息作为发送时间戳信息,
步骤7、MAC模块(13)通过产生第三中断信号(6)通知CPU模块(10)将发送时间戳信息封装为UDP报文,
步骤8、CPU模块(10)通过第四中断信号(7)通知MAC模块(13)将UDP报文对外发送,
步骤9、NTP客户端接收NTP报文以及对应的UDP报文,将UDP报文中的发送时间戳信息填充到对应的NTP报文中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611054170.3A CN106506107B (zh) | 2016-11-25 | 2016-11-25 | 一种基于硬件时间戳的ntp服务器授时实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611054170.3A CN106506107B (zh) | 2016-11-25 | 2016-11-25 | 一种基于硬件时间戳的ntp服务器授时实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106506107A true CN106506107A (zh) | 2017-03-15 |
CN106506107B CN106506107B (zh) | 2019-03-12 |
Family
ID=58328566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611054170.3A Active CN106506107B (zh) | 2016-11-25 | 2016-11-25 | 一种基于硬件时间戳的ntp服务器授时实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106506107B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109379160A (zh) * | 2018-12-30 | 2019-02-22 | 广东大普通信技术有限公司 | 一种时钟校准服务器及方法 |
CN110244635A (zh) * | 2019-06-24 | 2019-09-17 | 中国航空无线电电子研究所 | 具有计算转发时间功能的远程数据集中器 |
CN110995496A (zh) * | 2019-12-15 | 2020-04-10 | 苏州浪潮智能科技有限公司 | 一种批量同步白盒交换机时间的方法和装置 |
CN111682920A (zh) * | 2020-07-23 | 2020-09-18 | 中国电子科技集团公司第五十四研究所 | 一种用于ntp授时的协议转换装置 |
CN112134750A (zh) * | 2020-09-02 | 2020-12-25 | 中国信息通信研究院 | 网络时间协议压力测试方法和装置 |
CN112910591A (zh) * | 2021-02-01 | 2021-06-04 | 芯河半导体科技(无锡)有限公司 | 一种以太网接口时戳处理方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040167990A1 (en) * | 2003-02-21 | 2004-08-26 | Peer Francis Wayne | Methods and apparatus for network time synchronization |
WO2009076908A1 (zh) * | 2007-12-13 | 2009-06-25 | Huawei Technologies Co., Ltd. | 一种网络时钟同步的方法、装置及系统 |
CN101977104A (zh) * | 2010-11-13 | 2011-02-16 | 上海交通大学 | 基于ieee1588精确时钟同步协议系统及其同步方法 |
CN102571252A (zh) * | 2012-01-12 | 2012-07-11 | 孙得膑 | 高精度ntp授时系统及其授时方法 |
CN104144088A (zh) * | 2014-07-24 | 2014-11-12 | 重庆邮电大学 | 一种提高时延测量精度的网络时延测量方法 |
CN105281885A (zh) * | 2014-07-25 | 2016-01-27 | 中兴通讯股份有限公司 | 用于网络设备的时间同步方法、装置及时间同步服务器 |
-
2016
- 2016-11-25 CN CN201611054170.3A patent/CN106506107B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040167990A1 (en) * | 2003-02-21 | 2004-08-26 | Peer Francis Wayne | Methods and apparatus for network time synchronization |
WO2009076908A1 (zh) * | 2007-12-13 | 2009-06-25 | Huawei Technologies Co., Ltd. | 一种网络时钟同步的方法、装置及系统 |
CN101977104A (zh) * | 2010-11-13 | 2011-02-16 | 上海交通大学 | 基于ieee1588精确时钟同步协议系统及其同步方法 |
CN102571252A (zh) * | 2012-01-12 | 2012-07-11 | 孙得膑 | 高精度ntp授时系统及其授时方法 |
CN104144088A (zh) * | 2014-07-24 | 2014-11-12 | 重庆邮电大学 | 一种提高时延测量精度的网络时延测量方法 |
CN105281885A (zh) * | 2014-07-25 | 2016-01-27 | 中兴通讯股份有限公司 | 用于网络设备的时间同步方法、装置及时间同步服务器 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109379160A (zh) * | 2018-12-30 | 2019-02-22 | 广东大普通信技术有限公司 | 一种时钟校准服务器及方法 |
CN110244635A (zh) * | 2019-06-24 | 2019-09-17 | 中国航空无线电电子研究所 | 具有计算转发时间功能的远程数据集中器 |
CN110995496A (zh) * | 2019-12-15 | 2020-04-10 | 苏州浪潮智能科技有限公司 | 一种批量同步白盒交换机时间的方法和装置 |
CN110995496B (zh) * | 2019-12-15 | 2022-05-13 | 苏州浪潮智能科技有限公司 | 一种批量同步白盒交换机时间的方法和装置 |
CN111682920A (zh) * | 2020-07-23 | 2020-09-18 | 中国电子科技集团公司第五十四研究所 | 一种用于ntp授时的协议转换装置 |
CN111682920B (zh) * | 2020-07-23 | 2022-04-12 | 中国电子科技集团公司第五十四研究所 | 一种用于ntp授时的协议转换装置 |
CN112134750A (zh) * | 2020-09-02 | 2020-12-25 | 中国信息通信研究院 | 网络时间协议压力测试方法和装置 |
CN112910591A (zh) * | 2021-02-01 | 2021-06-04 | 芯河半导体科技(无锡)有限公司 | 一种以太网接口时戳处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106506107B (zh) | 2019-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106506107A (zh) | 一种基于硬件时间戳的ntp服务器授时实现方法 | |
CN103929293B (zh) | 非对称延迟的时间同步方法及系统 | |
CN102710410B (zh) | 一种ntp网络和ptp网络之间时钟同步的方法 | |
CN102244603B (zh) | 传输承载时间的报文的方法、设备及系统 | |
US7577169B1 (en) | Time stamping | |
CN101582733A (zh) | 一种在sdh设备之间实现高精度时间同步的方法和系统 | |
CN103067112B (zh) | 时钟同步方法、装置及网络设备 | |
CN103138887B (zh) | 一种1588事件报文的处理方法及系统 | |
CN101645869B (zh) | 具有亚微秒级时钟的交换机及其交换处理方法 | |
CN104602141A (zh) | 一种otn网络中实现时间同步的方法、设备和系统 | |
CN207939521U (zh) | 一种面向数字化变电站调试的时钟同步装置 | |
EP3174237B1 (en) | Time synchronization method and apparatus for network devices and time synchronization server | |
CN110572230A (zh) | 一种用于实现时间同步的修正方法及装置 | |
CN116566533A (zh) | 一种纳秒级ntp网络时间同步方法及系统 | |
CN105391509A (zh) | 基于fpga的网口高精度时间标定方法 | |
CN103546273B (zh) | 基于ptp帧的频率同步装置及方法 | |
CN101355531A (zh) | 一种消息发送、接收的方法、装置和设备 | |
CN101951300B (zh) | 一种实现以太网精确对时的方法 | |
CN108429596B (zh) | 一种用于IEEE 1588v2协议的以太网MAC模块实现装置及实现方法 | |
CN107528655A (zh) | 时间同步方法和时间同步系统 | |
CN106161121B (zh) | 一种报文转发时延的测量方法、装置及系统 | |
WO2013078873A1 (zh) | 识别应答报文的方法及设备 | |
CN108155965A (zh) | Sdh传输iec61588方法 | |
CN105991586B (zh) | 一种异构网络下的多媒体时钟协调同步方法 | |
CN102340365B (zh) | 一种基于时戳的时钟恢复方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20181207 Address after: 430071 No. 34 Xiaohongshan Road, Wuchang District, Wuhan City, Hubei Province Applicant after: Wuhan Zhongke Kunde Technology Co., Ltd. Address before: 430071 small Hongshan, Wuchang District, Hubei, Wuhan Applicant before: Wuhan Inst. of Physics and Mathematics, Chinese Academy of Sciences |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |