CN1933414A - 一种电信领域中网络时间同步的时间调整算法 - Google Patents
一种电信领域中网络时间同步的时间调整算法 Download PDFInfo
- Publication number
- CN1933414A CN1933414A CN 200510029583 CN200510029583A CN1933414A CN 1933414 A CN1933414 A CN 1933414A CN 200510029583 CN200510029583 CN 200510029583 CN 200510029583 A CN200510029583 A CN 200510029583A CN 1933414 A CN1933414 A CN 1933414A
- Authority
- CN
- China
- Prior art keywords
- time
- client
- network
- offset
- algorithm
- 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.)
- Pending
Links
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
- Electric Clocks (AREA)
Abstract
本发明涉及一种基于网络时间同步的时间逼近调节算法,其特征在于,使用网络时间逼近算法,采用时间收敛逼近的方法,使得设备的时间逐步向时间服务器的时间收敛逼近,最后将设备的时间与时间服务器的标准时间之间的偏差控制在一个较小的范围内,本发明的优点是不易受网络传输状况的影响,即使在传输较不稳定的情况下,也有较高的时间同步精度;能够迅速获得一个能够使用的粗略时间,同时,随着时间同步调整次数的增多,时间越来越准确,抗干扰能力也越来越强,使用本发明,客户端C的时间的线性一致性比较好,不会出现明显的时间阶跃现象;本发明对硬件要求不高。
Description
技术领域
本发明涉及一种电信领域中网络时间同步的时间调整算法,特别适用于以太网络或其它传输网络中,用于精确地实现网络内各个设备的时间同步。
背景技术
伴随着20世纪70年代的个人计算机革命,出现了一个巨大的时间和频率的用户群。这些人需要将计算机保持精确时间。但是计算机时钟在保持时间方面不可能特别精确,这是由计算机的时间保持原理所决定的。
自从1984年出现了IBM-AT个人计算机以后,所有的PC兼容机以同样的方式保持时间。不管它们是286、386、486或是奔腾微处理器,每个PC包含两个时钟:软时钟和硬时钟。
软时钟由Intel8254定时器或类似的功能设备产生。定时器每54.936毫秒产生一个中断,每秒大约18.2个中断。计算机的BISO中有一个程序,计算中断请求,产生一个对应于“天”的时钟,该时间可通过其它软件读取或修改。例如,操作系统能够使用该程序产生的时间信息,给文件打上时间戳。
软件时钟的时间保持功能较差,由于受中断请求稳定性的限制,它的时间不可靠,任何中断请求速度上的变化都会影响时钟的快慢,软件时钟也受限于分辨率,软件时钟的最大缺点是,当计算机停止运行后,时钟停止运行,并丢失time-of-day的信息。
硬件时钟基于Motorola146818实时钟芯片或类似设备,当计算机关机后,硬件时钟使用电池供电,当计算机启动后,软件时钟从硬件时钟中获得当前时间,尽管软/硬件时钟在上电的时候同步过,但它们以各自的速率运行,在计算机运行时彼此之间会有所不同。
硬件时钟每秒更新一次,但是不显示一秒的小数部分,时间的可信度由晶振的质量决定,它们对温度等其它因素敏感,精确度不会好于1*10-5,大约一天误差1秒,在实际情况中,硬件时钟每天偏差5-15秒,典型值是每天偏10秒。
目前应用较广的时间同步方式,一种为因特网时间同步:如果计算机与因特网连接,能够通过因特网时间服务器同步计算机的时钟。
因特网时间服务器使用三种主要的协议:时间协议、白天协议、网络时间协议。时间服务器不断地监听同步请求,当服务器接收到一个请求,它会以适当的格式向你的计算机发送时间。
另一种为拨号时间设置服务:如果计算机没有与因特网连接,能够使用标准的电话线和类似的调制解调器,将计算机时间与NIST实现同步。这种服务称为ACTS自动计算机时间服务,开始于1988年,ACTS仅需要一台计算机、一个调制解调器和电话线及一些简单的软件,当一个计算机通过电话与ACTS连接,它接收ASCII时间码,时间码中包含当前时间的信息。
第三种为无线时钟:因特网时间同步和拨号时间设置服务都有一个共同的缺点,那就是需要有电缆线将时间服务器与计算机连接起来。如果通过使用无线时钟,那么可以随时随地获得精确时间,有许多不同类型的无线时钟,可通过无线电接收时间码。
第四种为硬件时钟:通过使用一个更好的时钟代替原来PC上的时钟,能够提高它的时钟保持能力。先前提到,普通的PC使用低成本的晶体振荡器来保持时间。如果选用更好的硬件基础平台,就能获得更好的时间保持能力。精确的时钟板给PC总线提供脉冲,时钟板使用的晶振比PC中的晶振好很多,能有效地代替硬件时钟。
但不管使用哪一种方式,应用于电信领域,都存在一定的局限性。后三种方法,由于需要特殊的硬件支持,无法得到广泛的使用。第一种因特网时间同步方法虽然使用方便,但精度较低,需作某些改进。
发明内容
本发明的目的是发明一种高效、精确的电信领域中网络时间同步的时间调整算法。
为实现以上目的,本发明的技术方案是提供一种基于网络时间同步的时间逼近调节算法,其特征在于,使用网络时间逼近算法,采用时间收敛逼近的方法,使得设备的时间逐步向时间服务器的时间收敛逼近,最后将设备的时间与时间服务器的标准时间之间的偏差控制在一个较小的范围内,该算法为:
第一步.先定义:网络中进行时间同步的服务器端设备定义为S;进行时间同步的客户端设备定义为C;客户端C和服务端S使用NTP协议进行通讯,设定偏差纠正门限为ε,调整幅度为δ,使得δ<ε;
第二步.访问客户端C服务器;
第三步.计算出客户端C同步NTP消息包和服务端S之间的时间偏差Toffset;
第四步.如果客户端C从未初始化过时间,初始化系统当前时间,则将客户端C当前的系统时间Tc加上Toffset设置为客户端C的当前时间;
第五步.如果客户端C已经初始化过时间,则以客户端C的当前系统时间Tc为基准,以Toffset为参考,微调客户端C的时间,进行修正;
第六步.使用网络时间逼近算法,修正后的时间为:
如果Toffset≥+ε,说明使得客户端C的时间比服务器端S的时间快。修正客户端C的时间,即将客户端C的当前时间往回调整δ,使得修正后的时间Tc′等于Tc-δ;
如果Toffset≤-ε,说明使得客户端C的时间比服务器端S的时间慢。修正客户端C的时间,即将客户端C的当前时间往前调整δ,使得修正后的时间Tc′等于Tc+δ;
如果-ε<Toffset<ε,修正客户端C的时间,使得修正后的时间Tc′等于Tc+Toffset,即将客户端C的当前时间调整到服务器端S的时间;
第七步.重复第五步步骤反复修正。
在网络时间同步中,影响时间精确度的关键原因在于由网络延迟的随机性而导致时钟延迟计算不准确,本发明在调整本地客户端的时间时,只有在客户端从未获取过时间的前提下,使用NTP算法得到的时间,执行一次时间初始化的动作,此时,获得的时间并不一定准确。
在随后的过程中,本发明的算法每次只是对客户端C的时间进行微量调整,尽管单个数据包的网络延迟存在随机性,但是从总体上,大量数据包的延迟是有规律的,正偏和负偏的概率是对称的,通过一次次的微调,使得客户端C的时间向正确方向逐步逼近,随着调整次数越来越多,则客户端C的时间越来越逼近时间服务器S的时间。使用该算法,从整个时间同步过程来看,刚开始客户端的时间并不很准确,精确度同使用SNTP算法获得的结果属同样数量级;但随着时间同步次数的不断增加,客户端的时间向标准时间逐步逼近,呈现收敛特性:同步次数足够多时,客户端时间与标准时间之间的偏差收敛到±δ附近,随后便维持在这一水平上,不再发生较大的时间偏差或抖动。
本发明可适用于局域网范围内和广域网范围内各种网络时间同步的客户端设备的时间要求。
本发明的优点是:
1不易受网络传输状况的影响,即使在传输较不稳定的情况下,也有较高的时间同步精度;
2能够迅速获得一个能够使用的粗略时间,同时,随着时间同步调整次数的增多,时间越来越准确,抗干扰能力也越来越强;
3使用本发明,客户端C的时间的线性一致性比较好,不会出现明显的时间阶跃现象;
4.本发明对硬件要求不高。
附图说明
图1为客户端时间同步方案流程图;
图2为未调整前的时间偏差视图;
图3为SNTP算法后的效果图;
图4为网络时间逼近算法流程图;
图5为使用网络时间逼近算法后的效果图。
具体实施方式
以下结合附图和实施例对本发明作进一步说明。
实施例
如图1所示,为客户端时间同步方案流程图,
第一步.在局域网N中,存在一台支持NTP协议的网络时间服务器S,一台客户端的设备C,C也在N网络中,C设备通过网络从S设备处获得时间,需要C提供准确的秒脉冲输出供其它设备使用,同时C设备不具有频率调节的硬件基础平台,在本例中使用SNTP算法和网络时间逼近算法,设置网络时间逼近算法的偏差纠正门限ε和调整幅度δ,使得δ<ε。门限ε设置为100微秒,调整幅度δ设置为30微秒。
第二步.访问客户端C服务器,客户端C服务器时间偏离的情况,如图2所示,可以看出,由于时钟频率的偏差,在没有作时间调整的情况下,C设备的时间呈线性偏离标准时间。
如图3所示,为SNTP算法后的效果图,在使用SNTP算法情况下,C设备的时间偏离被不断纠正回来,但由于网络传输不稳定的影响,C设备的时间存在较大的抖动。
第三步.如图4所示,为网络时间逼近算法流程图;使用网络时间逼近算法,计算出客户端C同步NTP消息包和服务端S之间的时间偏差Toffset;
第四步.如果客户端C从未初始化过时间,初始化系统当前时间,则将客户端C当前的系统时间Tc加上Toffset设置为客户端C的当前时间;
第五步.如果客户端C已经初始化过时间,则以客户端C的当前系统时间Tc为基准,以Toffset为参考,微调客户端C的时间,进行修正;
第六步.修正后的时间为:
如果Toffset≥+ε,说明使得客户端C的时间比服务器端S的时间快。修正客户端C的时间,即将客户端C的当前时间往回调整δ,使得修正后的时间Tc′等于Tc-δ;
如果Toffset≤-ε,说明使得客户端C的时间比服务器端S的时间慢。修正客户端C的时间,即将客户端C的当前时间往前调整δ,使得修正后的时间Tc′等于Tc+δ;
如果-ε<Toffset<ε,修正客户端C的时间,使得修正后的时间Tc′等于Tc+Toffset,即将客户端C的当前时间调整到服务器端S的时间;
第七步.重复第五步步骤反复修正。
在使用网络时间逼近算法情况下,经过一段时间的逼近调整,C设备的时间逐步趋于准确,同时由于调整幅度δ的限制,使得网络传输干扰对C时间的影响减小很多,如图5所示,为使用网络时间逼近算法后的效果图,可以看出,随着时间同步次数的不断增加,客户端的时间向标准时间逐步收敛,当同步次数足够多时,客户端时间与标准时间之间的偏差收敛到±δ附近,此后时间偏差便维持在±δ的水平上。在图中所示的230秒位置以后,该算法将客户端的时间与标准时间偏差控制在±δ左右,即±30微秒。
从两种算法的运行结果可以看出,运行网络时间调整算法,设备C的时间明显比SNTP算法得到的时间精确、稳定。
通过网络实现时间同步,是一种比较方便的途径,也能保证一定的时间精确度,比较目前应用广泛的几种算法,其中NTP算法和SNTP算法最具有典型的代表性,下表对比分析了这两种网络时间同步算法和网络时间逼近算法之间的优缺点:
表一、算法的性能比较
算法名称 | 对系统硬件的要求 | 时间同步的精确度 | 适用范围 | 实现难易程度 |
NTP | 高 | 高 | 广 | 较难实现 |
SNTP | 低 | 低 | 广 | 较易实现 |
网络时间逼近算法 | 低 | 较高 | 广 | 较易实现 |
通过上表可以看出,尽管NTP算法能够达到很高的精确度,但是该算法需要有比较特殊的硬件支持,如可调节频率的时钟晶振以及相位监测电路等,否则无法发挥作用。而网络时间逼近算法不需要特殊硬件的支持,就可以达到较高的精度。
Claims (1)
1.一种基于网络时间同步的时间逼近调节算法,其特征在于,使用网络时间逼近算法,采用时间收敛逼近的方法,使得设备的时间逐步向时间服务器的时间收敛逼近,最后将设备的时间与时间服务器的标准时间之间的偏差控制在一个较小的范围内,该算法为:
第一步.先定义:网络中进行时间同步的服务器端设备定义为S;进行时间同步的客户端设备定义为C;客户端C和服务端S使用NTP协议进行通讯,设定偏差纠正门限为ε,调整幅度为δ,使得δ<ε;
第二步.访问客户端C服务器;
第三步.计算出客户端C同步NTP消息包和服务端S之间的时间偏差Toffset;
第四步.如果客户端C从未初始化过时间,初始化系统当前时间,则将客户端C当前的系统时间Tc加上Toffset设置为客户端C的当前时间;
第五步.如果客户端C已经初始化过时间,则以客户端C的当前系统时间Tc为基准,以Toffset为参考,微调客户端C的时间,进行修正;
第六步.使用网络时间逼近算法,修正后的时间为:
如果Toffset≥+ε,说明使得客户端C的时间比服务器端S的时间快。修正客户端C的时间,即将客户端C的当前时间往回调整δ,使得修正后的时间Tc′等于Tc-δ;
如果Toffset≤-ε,说明使得客户端C的时间比服务器端S的时间慢。修正客户端C的时间,即将客户端C的当前时间往前调整δ,使得修正后的时间Tc′等于Tc+δ;
如果-ε<Toffset<ε,修正客户端C的时间,使得修正后的时间Tc′等于Tc+Toffset,即将客户端C的当前时间调整到服务器端S的时间;
第七步.重复第五步步骤反复修正。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510029583 CN1933414A (zh) | 2005-09-13 | 2005-09-13 | 一种电信领域中网络时间同步的时间调整算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510029583 CN1933414A (zh) | 2005-09-13 | 2005-09-13 | 一种电信领域中网络时间同步的时间调整算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1933414A true CN1933414A (zh) | 2007-03-21 |
Family
ID=37879048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200510029583 Pending CN1933414A (zh) | 2005-09-13 | 2005-09-13 | 一种电信领域中网络时间同步的时间调整算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1933414A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103138863A (zh) * | 2011-12-01 | 2013-06-05 | 中兴通讯股份有限公司 | 时间同步方法及装置 |
CN104092529A (zh) * | 2014-07-24 | 2014-10-08 | 上海寰视网络科技有限公司 | 一种时钟同步调节系统及其调节方法 |
WO2017054554A1 (zh) * | 2015-09-29 | 2017-04-06 | 中兴通讯股份有限公司 | 一种时钟同步方法、装置及通信设备 |
CN107147462A (zh) * | 2017-04-18 | 2017-09-08 | 福建天泉教育科技有限公司 | 一种时钟校准方法及系统 |
CN107230474A (zh) * | 2017-04-18 | 2017-10-03 | 福建天泉教育科技有限公司 | 一种合成音频数据的方法及系统 |
US10069839B2 (en) | 2016-02-11 | 2018-09-04 | Microsoft Technology Licensing, Llc | Determine approximate current time on a client using secure protocol metadata |
CN110618604A (zh) * | 2019-09-20 | 2019-12-27 | 上海东土远景工业科技有限公司 | 一种利用ntp辅助作源提高守时精度的方法及装置 |
-
2005
- 2005-09-13 CN CN 200510029583 patent/CN1933414A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103138863A (zh) * | 2011-12-01 | 2013-06-05 | 中兴通讯股份有限公司 | 时间同步方法及装置 |
WO2013078957A1 (zh) * | 2011-12-01 | 2013-06-06 | 中兴通讯股份有限公司 | 时间同步方法及装置 |
CN104092529A (zh) * | 2014-07-24 | 2014-10-08 | 上海寰视网络科技有限公司 | 一种时钟同步调节系统及其调节方法 |
WO2017054554A1 (zh) * | 2015-09-29 | 2017-04-06 | 中兴通讯股份有限公司 | 一种时钟同步方法、装置及通信设备 |
US10069839B2 (en) | 2016-02-11 | 2018-09-04 | Microsoft Technology Licensing, Llc | Determine approximate current time on a client using secure protocol metadata |
CN107147462A (zh) * | 2017-04-18 | 2017-09-08 | 福建天泉教育科技有限公司 | 一种时钟校准方法及系统 |
CN107230474A (zh) * | 2017-04-18 | 2017-10-03 | 福建天泉教育科技有限公司 | 一种合成音频数据的方法及系统 |
CN107147462B (zh) * | 2017-04-18 | 2019-01-15 | 福建天泉教育科技有限公司 | 一种时钟校准方法及系统 |
CN107230474B (zh) * | 2017-04-18 | 2020-06-09 | 福建天泉教育科技有限公司 | 一种合成音频数据的方法及系统 |
CN110618604A (zh) * | 2019-09-20 | 2019-12-27 | 上海东土远景工业科技有限公司 | 一种利用ntp辅助作源提高守时精度的方法及装置 |
CN110618604B (zh) * | 2019-09-20 | 2022-03-04 | 上海东土远景工业科技有限公司 | 一种利用ntp辅助作源提高守时精度的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1933414A (zh) | 一种电信领域中网络时间同步的时间调整算法 | |
CN101043315A (zh) | 一种网络时钟同步装置、系统及方法 | |
Mills | Precision synchronization of computer network clocks | |
US7916758B2 (en) | Method and system for precise-clock synchronization, and device for precise-clock frequency/time synchronization | |
Cena et al. | Implementation and evaluation of the reference broadcast infrastructure synchronization protocol | |
CN110266420B (zh) | 时钟同步方法、时钟同步装置和计算机可读存储介质 | |
US8698530B2 (en) | High precision synchronisation method and system | |
US7630383B2 (en) | Synchronization of time stamps of peer devices in a communication node | |
CN1926767A (zh) | 同步跟踪装置和同步跟踪方法 | |
CN101068133A (zh) | 时间同步方法、网络通信系统及其设备、时间服务器 | |
CN1929362A (zh) | 用于校准tod时钟的装置和方法 | |
WO2013078957A1 (zh) | 时间同步方法及装置 | |
WO2001050674A1 (en) | Synchronization in packet-switched telecommunications system | |
CN101078763A (zh) | 在ip网络中依靠卫星定位系统校准时钟频率的方法及设备 | |
CN1373949A (zh) | 用于使经电信网耦合的通信系统部件同步的装置 | |
CN103580848A (zh) | 参考时钟校准 | |
CN1842070A (zh) | 具有多级的定时恢复电路 | |
CN212134958U (zh) | 时间服务器装置 | |
CN1731704A (zh) | 时分双工同步码分多址基站间空中帧同步的方法和装置 | |
CN1812319A (zh) | 实现异步数据跨时钟域的装置 | |
CN1268080C (zh) | 用于在电信系统中发送信息的方法 | |
CN112558685B (zh) | 一种配电终端模块间对时同步的方法 | |
CN1860720A (zh) | 用于系统之间的网络同步的时钟传输设备 | |
CN1521976A (zh) | 基于时钟信号的数据接收方法及其装置 | |
CN111092687A (zh) | 一种fc交换网络系统日历时钟同步系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |