CN116865896A - 一种网络授时测试方法和测试设备 - Google Patents

一种网络授时测试方法和测试设备 Download PDF

Info

Publication number
CN116865896A
CN116865896A CN202310986723.2A CN202310986723A CN116865896A CN 116865896 A CN116865896 A CN 116865896A CN 202310986723 A CN202310986723 A CN 202310986723A CN 116865896 A CN116865896 A CN 116865896A
Authority
CN
China
Prior art keywords
ntp
time service
network
time
service testing
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
Application number
CN202310986723.2A
Other languages
English (en)
Inventor
赵陆文
张北江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Younitai Information Technology Co ltd
Original Assignee
Nanjing Younitai Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Younitai Information Technology Co ltd filed Critical Nanjing Younitai Information Technology Co ltd
Priority to CN202310986723.2A priority Critical patent/CN116865896A/zh
Publication of CN116865896A publication Critical patent/CN116865896A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明公开了一种网络授时测试方法,利用网络授时测试设备对NTP服务器的授时精度进行测量,网络授时测试设备向NTP服务器发送用于时间测量的NTP申请帧,NTP服务器收到NTP申请帧后,对应向测试设备返回一个NTP响应帧;网络授时测试设备基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差。还公开了一种上述测试方法使用的网络授时测试设备,这种网络授时测试设备具有高性能、低成本的优点,可以准确测量出NTP服务器的授时精度。使用这种网络授时测试方法,保证了测量的高精度,同时支撑以毫秒为精度的滑动扫描式测量,使测量的结果更加精确和全面。

Description

一种网络授时测试方法和测试设备
技术领域
本发明涉及网络授时检测技术领域,尤其涉及一种网络授时测试方法和测试设备。
背景技术
网络时间协议(NTP,NetworkTimeProtocol)是由美国Delaware大学DavidL.Mills教授于1985年提出。NTP授时及其简化版本——简单网络时间协议(SNTP,Simple NTP)授时具有实现简单、网络开销低、授时精度较高等突出优点,已被广泛应用计算机网络、电力系统、物联网、车联网、嵌入式系统等的时间同步。NTP网络时间同步精度受到NTP服务器时钟源准确度和稳定度、网络协议栈延时、操作系统任务调度、网络流量、传输路径等多重因素影响。在实际情况下,在局域网和因特网上NTP的典型精度为分别为1ms和10ms。
随着网络授时的应用越来越广泛,在汽车电子、电力、通信等应用场合,对网络授时精度提出了亚毫秒甚至更高的要求。为此,对NTP服务器授时精度的测量和评估就显得日益重要。
NTP网络时间同步精度受到NTP服务器时钟源准确度和稳定度、网络协议栈延时、操作系统任务调度、网络流量、传输路径等多重因素影响。现有的网络授时测试方法和测试设备存在测量精度不高、实现复杂度高,以及测试设备成本高等不足。
发明内容
本发明主要解决的问题是提供一种网络授时测试方法和测试设备,解决现有的网络授时测试方法和测试设备测量精度不高、实现复杂度高,以及测试设备成本高等问题。
为解决上述技术问题,本发明采用的一个技术方案是提供一种网络授时测试方法,利用网络授时测试设备对NTP服务器的授时精度进行测量,网络授时测试设备向NTP服务器发送用于时间测量的NTP申请帧,NTP服务器收到NTP申请帧后,对应向测试设备返回一个NTP响应帧;网络授时测试设备基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差。
在一些实施例中,网络授时测试设备基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差的方法包括:
NTP申请帧离开网络授时测试设备时,网络授时测试设备对应记录有第一时间戳T1,NTP响应帧到达所述网络授时测试设备时,网络授时测试设备对应记录有第四时间戳T4
NTP响应帧包括所述NTP申请帧到达NTP服务器时,由NTP服务器记录的第二时间戳T2,以及NTP响应帧离开NTP服务器时,由NTP服务器记录的第三时间戳T3
第一传输延迟d1为NTP申请帧由网络授时测试设备到NTP服务器的传输延时,第二传输延迟d2为NTP响应帧由NTP服务器到网络授时测试设备的传输延时,Δt为NTP服务器和网络授时测试设备之间的时间偏差,d为NTP申请帧和所述NTP响应帧的往返传输延时之和,则有:
令所述第一传输延迟d1和所述第二传输延迟d2相等,即d1=d2,则可得时间偏差:
在一些实施例中,网络授时测试设备接收来自GNSS模块实时输出的卫星授时秒脉冲,测出网络授时测试设备自身的钟差平均值Δfavg
在一些实施例中,网络授时测试设备接收来自GNSS模块实时输出的导航电文,从导航电文中获得时间信息,作为网络授时测试设备自身的系统时间。
在一些实施例中,网络授时测试设备得到第一时间戳T1的方法包括:
网络授时测试设备在发送所述NTP申请帧时,读取其内部定时器的当前计数值C1,减去最近一次定时器在响应卫星授时秒脉冲时的计数值C2,得到第一计数差值C1-C2,再除以其内部系统时钟标称频率fMCLK与钟差平均值Δfavg之和,可得到时间值T11
网络授时测试设备基于GNSS模块而获得当前的系统时间值T12,则第一时间戳T1=T11+T12
在一些实施例中,网络授时测试设备得到第四时间戳T4的方法包括:
网络授时测试设备接收到NTP响应帧时,读取其内部定时器的当前计数值C3,减去最近一次定时器在响应卫星授时秒脉冲时的计数值C4,得到第二计数差值C3-C4,再除以其内部系统时钟标称频率fMCLK与钟差平均值Δfavg之和,可得到时间值T41
网络授时测试设备基于GNSS模块而获得当前的系统时间值T42,则第四时间戳T4=T41+T42
在一些实施例中,网络授时测试设备在多个测量时刻分别发送NTP申请帧和接收对应NTP响应帧,计算得到NTP服务器在多个测量时刻的时间偏差;在多个测量时刻中,每相邻的两个测量时刻的时间间隔包括整数秒值和小数秒值,或者,每相邻的两个测量时刻的时间间隔只有小数秒值。
在一些实施例中,整数秒值为1秒,小数秒为0.001秒。
本发明还提供一种网络授时测试设备,包括电路板,在电路板上设置有CPU芯片,以及与CPU芯片电连接的GNSS模块;GNSS模块用于电连接GNSS天线,CPU芯片通过网络接口用于电连接NTP服务器,以及CPU芯片还用于电连接监控计算机;CPU芯片实时接收来自GNSS模块的导航电文和卫星授时秒脉冲,用于更新系统时间和计算钟差平均值;CPU芯片还通过网络接口向NTP服务器发送用于时间测量的NTP申请帧,以及接收对应来自NTP服务器返回的NTP响应帧;CPU芯片基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差。
在一些实施例中,CPU芯片在多个测量时刻分别发送NTP申请帧和接收对应NTP响应帧,计算得到NTP服务器在多个测量时刻的时间偏差;CPU芯片将多个测量时刻的时间偏差均上传至监控计算机,由监控计算机进行统计计算和显示。
本发明的有益效果是:本发明公开了一种网络授时测试方法,利用网络授时测试设备对NTP服务器的授时精度进行测量,网络授时测试设备向NTP服务器发送用于时间测量的NTP申请帧,NTP服务器收到NTP申请帧后,对应向测试设备返回一个NTP响应帧;网络授时测试设备基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差。使用这种测试方法,保证了测量的高精度,同时支撑以毫秒为精度的滑动扫描式测量,使测量的结果更加精确和全面。
本发明还公开了一种上述网络授时测试方法使用的网络授时测试设备,包括电路板,在电路板上设置有CPU芯片,以及与CPU芯片电连接的GNSS模块;GNSS模块用于电连接GNSS天线,CPU芯片通过网络接口用于电连接NTP服务器,以及CPU芯片还用于电连接监控计算机;CPU芯片实时接收来自GNSS模块的导航电文和卫星授时秒脉冲,用于更新系统时间和计算钟差平均值;CPU芯片还通过网络接口向NTP服务器向NTP服务器发送用于时间测量的NTP申请帧,以及接收对应来自NTP服务器返回的NTP响应帧;CPU芯片基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差。这种网络授时测试设备具有高性能、低成本的优点,可以准确测量出NTP服务器的授时精度。
附图说明
图1是本发明中一种网络授时测试设备的示意图;
图2是使用本发明中网络授时测试设备进行测试的测试原理图;
图3是本发明中一种网络授时测试方法的流程示意图;
图4是基于图3的网络授时测试方法中第一步的具体流程示意图;
图5是基于图3的网络授时测试方法中第二步的具体流程示意图;
图6是使用本发明中网络授时测试设备对第一NTP服务器进行定点多次测量的测试结果图;
图7是使用本发明中网络授时测试设备对第二NTP服务器进行定点多次测量的测试结果图;
图8是使用本发明中网络授时测试设备对第一NTP服务器进行滑动多次测量的测试结果图;
图9是使用本发明中网络授时测试设备对第二NTP服务器进行滑动多次测量的测试结果图。
具体实施方式
为了便于理解本发明,下面结合附图和具体实施例,对本发明进行更详细的说明。附图中给出了本发明的较佳的实施例。但是,本发明可以以许多不同的形式来实现,并不限于本说明书所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。
需要说明的是,除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是用于限制本发明。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
如图1所示,显示了本发明的一种网络授时测试设备,包括电路板,电路板上设置有CPU芯片1,以及与CPU芯片1电连接的GNSS(Global Navigation Satellite System,即全球导航卫星系统)模块2、网络接口芯片3、参考源4,还包括GNSS天线5和监控计算机6。GNSS天线5感应接收卫星导航信号,GNSS模块2从卫星导航信号中提取导航电文和精度很高的卫星授时秒脉冲(也称为1PPS信号),用于向CPU芯片1提供卫星授时的时间基准,网络接口芯片3还连接CPU芯片1的网络接口11,用于对网络连接的NTP服务器进行在线测量其时间精度,网络接口芯片3也可以内置于CPU芯片内部。监控计算机6与CPU芯片1通信互联,用于显示测量结果。
在本实施例中,GNSS模块2选用中科微的ATGM332D型号,可以向CPU芯片1提供导航电文和卫星授时秒脉冲等信息,支持精确的卫星授时秒脉冲输出,具有高灵敏度、低功耗、低成本等优势,可以确保网络授时测试设备具有更高的测试精度。网络接口芯片3选用RTL8201型号,通过网络接口11连接CPU芯片1,实现二者的交互,再通过网络接口芯片3连接网络插座,由此可以接入到互联网络。
进一步的,CPU芯片1实时接收来自GNSS模块2的导航电文和卫星授时秒脉冲,用于更新系统时间和计算钟差平均值;CPU芯片1还通过网络接口11向被测NTP服务器发送用于时间测量的NTP申请帧,以及接收对应来自被测NTP服务器返回的NTP响应帧;CPU芯片1基于NTP申请帧和对应的NTP响应帧,计算得到被测NTP服务器的时间偏差,即在线测量被测NTP服务器的时间精度。测量结果通过第二串口14上报给监控计算机6,由监控计算机软件进行分析和显示测量结果。
CPU芯片1在多个测量时刻分别发送NTP申请帧和接收对应NTP响应帧,计算得到被测NTP服务器在多个测量时刻的时间偏差。CPU芯片1将多个测量时刻的时间偏差均上传至监控计算机6,由监控计算机6进行统计计算和显示。
在本实施例中,参考源4是温补晶振。温补晶振(Temperature CompensationCrystal Oscillator,TCXO)通过附加温度补偿电路来减小环境温度变化引起的振荡频率变化。价格相对比较低廉,即便是秒稳为1E-9量级的温补晶振,也具有较低的价格和较高的性能,可以降低本方案的成本。基于温补晶振为参考源的网络授时测试设备,可以通过卫星授时进行钟差测量,从而获得准确度较高的钟差值。
参考源4的时钟偏差、稳定性、漂移等对网络授时测试设备本身的精度影响极为关键。普通石英晶振由于准确度和稳定度都比较差,不适合用作网络授时测试仪的系统时钟。原子钟准确度和稳定度都比较高,但是价格不菲。恒温晶振短期稳定度较高,价格也明显高于温补晶振。
在其他一些实施例中,可以在满足指标要求的情况下,选择价格相对较低的恒温晶振作为参考源4。
进一步的,GNSS模块2通过第一串口12连接CPU芯片1,其中,第一串口12接收来自GNSS模块2的导航电文信息,其中包含有时间信息TOD,用于更新网络授时测试设备的系统时间,确保网络授时测试设备时间准确有效。
在本实施例中,GNSS模块2还连接CPU芯片1上的定时器13,GNSS模块2向CPU芯片1发送卫星授时秒脉冲,用于控制定时器13的中断,确定各阶段定时器13的计数值,以及确定使用温补晶振作为参考源4的内部系统时钟的钟差,进而确保使用该网络授时测试设备进行测试的准确性。
这种网络授时测试设备具有高性能、低成本的优点,可以准确测量出NTP服务器的授时精度。
基于同一构思,基于前述的网络授时测试设备,本发明还提供一种网络授时测试方法,利用网络授时测试设备对NTP服务器的时间精度进行测量,网络授时测试设备向NTP服务器发送用于时间测量的NTP申请帧,NTP服务器收到NTP申请帧后,对应向测试设备返回一个NTP响应帧;网络授时测试设备基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差。
如图2所示,网络授时测试设备首先向NTP服务器发送一个NTP申请帧,向NTP服务器查询其网络时间,其中包含了该NTP申请帧离开网络授时测试设备的第一时间戳T1,当NTP服务器接收到该NTP申请帧后,需要向网络授时测试设备反向返回NTP响应帧,该NTP响应帧需要填入NTP申请帧到达NTP服务器时对应的第二时间戳T2,以及NTP响应帧离开NTP服务器的第三时间戳T3,该第二时间戳T2和第三时间戳T3是基于NTP服务器自身的时间确定的时间戳,因此第二时间戳T2和第三时间戳T3能够反映NTP服务器的时间精度。网络授时测试设备在接收到NTP响应帧时,记录接收到该NTP响应帧的第四时间戳T4。显然,第四时间戳T4是以网络授时测试设备自身的时间进行的时间记录。
网络授时测试设备用上述4个时间戳就能够计算出以下关键参数:往返延迟d,包括传输NTP申请帧和NTP响应帧对应的第一传输延迟d1和第二传输延迟d2,通常认为二者相等,以及网络授时测试设备与NTP服务器之间的时间偏差Δt,网络授时测试设备使用这个时钟偏差Δt来测量NTP服务器的时间精度。
图2中T1为网络授时测试设备发送NTP申请帧对应的第一时间戳(以网络授时测试设备时间为参照),表示NTP申请帧离开网络授时测试设备的时间;T2为NTP服务器收到NTP申请帧对应的第二时间戳(以NTP服务器时间为参照),表示NTP申请帧到达NTP服务器的时间;T3为NTP服务器回复NTP申请帧而发出NTP响应帧对应的第三时间戳(以NTP服务器时间为参照),表示NTP响应帧离开NTP服务器的时间;T4为测试设备收到NTP响应帧对应的第四时间戳(以网络授时测试设备时间为参照),表示NTP响应帧到达网络授时测试设备的时间;第一传输延迟d1为NTP申请帧由网络授时测试设备到NTP服务器的传输延时,第二传输延迟d2为NTP响应帧由NTP服务器到网络授时测试设备的传输延时;Δt为NTP服务器和网络授时测试设备之间的时间偏差,d为NTP申请帧和NTP响应帧的往返传输延时之和。
现已知T1、T2、T3、T4,希望求得Δt以测量NTP服务器的时间精度:
T2=T1+Δt+d1
T4=T3-Δt+d2
d=d1+d2
假设NTP申请帧和NTP响应帧的传输时延相等,即d1=d2,则可得:
d=(T4-T3)+(T2-T1)
可以看出,Δt和d只与T1、T2差值及T3、T4差值相关,而与T2、T3差值无关,即最终的结果与NTP服务器处理NTP申请帧所需的时间无关。因此,网络授时测试设备即可通过T1、T2、T3、T4计算出时差Δt,网络授时测试设备使用Δt来测量NTP服务器的时间精度。
在具体的测量过程中,网络授时测试设备周期性地向被测NTP服务器发送NTP申请帧,并记录发送时对应的第一时间戳T1。NTP服务器将接收NTP申请帧的第二时间戳T2和发送NTP响应帧的第三时间戳T3发送回网络授时测试设备。网络授时测试设备记录接收到NTP响应帧的第四时间戳T4。通过解析NTP响应帧获取第二时间戳T2和第三时间戳T3,利用上述测量原理即可算出被测NTP服务器的时间偏差。通过长时间范围内多次进行这样的测量,即全景的获得NTP服务器的动态变化的时间精度。
进一步的,基于图1的网络授时测试设备和图2测试方法原理,在具体测量的实施过程中,包括的步骤如下说明。
结合图3,第一步:利用GNSS模块输出的秒脉冲,测出网络授时测试设备自身的系统时钟的钟差平均值。也即是,网络授时测试设备接收来自GNSS模块实时输出的卫星授时秒脉冲,测出网络授时测试设备自身的系统时钟的钟差平均值Δfavg。具体而言,如图4所示,包括如下子步骤:
S11:GNSS模块输出1PPS信号至CPU芯片,CPU芯片的定时器捕获1PPS信号,每一次捕获后,定时器记录其当前的计数值Ci
其中,定时器采用捕获方式,一旦1PPS信号到达,该定时器中断,即刻记录当前的定时器的计数值Ci(i表示第i次的1PPS到达)。
S12:当前计数值减去临近的上一个1PPS信号到达时,定时器记录的计数值Ci-1,得到此时的钟差,即第i次测量的钟差为:
Δfi=Ci-Ci-1
其中,每次GNSS模块输出一个1PPS信号至CPU芯片,该1PPS信号作为该CPU芯片的定时器捕获信号,当捕获到该1PPS信号,定时器中断,并记录当前的计数值,定时器的计数值是对定时器的系统时钟周期进行计数,即一个系统时钟周期计数一次,例如系统时钟周期为1us,原则上1000000个系统周期时钟是1秒。钟差是网络授时测试设备与标准卫星时之间的时钟差,通过得到网络授时测试设备自身的钟差,可以得到网络授时测试设备测试时的准确时间戳。
S13:多次测量网络授时测试设备的钟差,再取平均值,得到钟差平均值。
考虑到时钟的不稳定性和测量的不准确性,可以进行多次测量后取平均,避免抖动带来的误差。即钟差平均值为:
其中,N表示测量的次数。
第二步:GNSS模块输出TOD(Time Of Day)信息至CPU芯片,CPU芯片接收TOD信息,更新网络授时测试设备的系统时间。也即是,网络授时测试设备接收来自GNSS模块实时输出的导航电文,从导航电文中获得时间信息,作为网络授时测试设备自身的系统时间。
这一步的主要目的是利用GNSS模块输出的导航电文中的TOD信息,使网络授时测试设备具有有效的系统时间。
如图5所示,具体的步骤如下:
S21:判断第一串口接收是否中断。
其中,若第一串口接收中断,则进入步骤S22。
S22:第一串口接收来自GNSS模块的电文信息。
S23:判断电文信息中是否含有RMC语句。
其中,第一串口接收来自GNSS模块的电文信息,其中包括RMC语句(RecommendedMinimum Specific GNSSData,即推荐定位信息),判断第一串口接收是否中断,在第一串口接收中断时,进入步骤S23,判断接收的电文信息中是否含有RMC语句,若有,则进入步骤S24。
S24:解析RMC语句。
S25:判断RMC语句中的时间是否有效。
S26:若有效,则更新网络授时测试设备的系统时间。
其中,解析RMC语句时,需解析其中包含的时间信息,进一步判断时间信息是否有效。若时间信息有效,则更新网络授时测试设备的系统时间,确保测试设备时间准确有效。
测试设备在测量时,要确保自身的时间戳准确,该时间戳包含秒以上部分和秒以下部分,秒以上部分可以很容易从TOD信息中获得,秒以下时间必须要通过定时器计数来获取。
上述第一步主要通过定时器计数确保秒以下时间的精度,第二步确保秒以上部分的时间与GNSS模块保持一致,从而保证测试设备测量时,可以得到准确的时间戳。
进一步的,第一步和第二步是采用不同的中断程序,二者可以并行进行,可以保证网络授时测试设备测量时所利用的时间戳的准确性。
第三步:网络授时测试设备发送NTP申请帧给NTP服务器,获得网络授时测试设备发送NTP申请帧的第一时间戳。
具体的,包括如下步骤:
网络授时测试设备通过CPU芯片的网络接口向NTP服务器发送NTP申请帧,该网络接口首先向CPU芯片发送中断请求,CPU芯片响应该中断请求。
进一步的,CPU芯片读取当前定时器的计数值C1,用此计数值减去最近一次定时器在响应1PPS信号中断时的计数值C2,得到二者的差值,即第一计数差值,再用此第一计数差值除以系统时钟标称频率与前述的钟差平均值之和,即可得到时间值T11
其中,fMCLK为系统时钟标称频率,该系统时钟标称频率通常是由前述参考源的标称频率,在CPU芯片内部经过设定的倍频值进行倍频以后,得到的系统时钟标称频率。T11的单位为秒,实际测量中由于该值较小,还可以乘以109换算为纳秒时间单位。该时间值T11反映的是第一时间戳T1对应的秒以下部分的时间值,而第一时间戳T1对应的秒以上部分时间值,则是由前述网络授时测试设备基于GNSS模块而获得的当前的系统时间,可以表示为当前的系统时间值T12。因此,在网络授时测量过程中,准确的第一时间戳为T1=T11+T12
第四步:网络授时测试设备接收来自NTP服务器的NTP响应帧,获得网络授时测试设备接收NTP响应帧的第四时间戳。
具体的,包括如下步骤:
网络授时测试设备接收NTP服务器发送的NTP响应帧后,判断网口接收是否发生中断。
若网口发生接收中断,读取当前定时器的计数值C3,用此计数值减去最近一次定时器在响应1PPS信号中断时的计数值C4,得到二者的差值,即第二计数差值,再用此第二计数差值除以系统时钟标称频率与前述的钟差平均值之和,即可得到时间值T41
其中,fMCLK为系统时钟标称频率,T41的单位为秒,实际测量中由于该值较小,还可以乘以109换算为纳秒时间单位。该时间值T41反映的是第四时间戳T4对应的秒以下部分的时间值,而第四时间戳T4对应的秒以上部分时间值,则是由前述网络授时测试设备基于GNSS模块而获得的当前的系统时间,可以表示为当前的系统时间值T42。因此,在网络授时测量过程中,准确的第四时间戳为T4=T41+T42
第五步:解析NTP响应帧,获取NTP服务器接收到NTP申请帧的第二时间戳T2和发送NTP响应帧的第三时间戳T3,计算NTP服务器的时间偏差。
在得到第四时间戳T4后,结合解析NTP响应帧,获取NTP服务器接收到NTP申请帧的第二时间戳T2和发送NTP响应帧的第三时间戳T3,以及根据计算得到的第一时间戳T1,就可以计算NTP服务器的时间偏差:
得到的Δt即NTP服务器的时间偏差。
通过这种测试方法,得到NTP服务器的时间偏差,进而可以准确地测量得到NTP服务器的授时精度。
第六步:重复第三步至第五步,进行多次测量而获得多个测量的时间偏差Δt,将得到的多个时间偏差Δt上报给监控计算机。
需要注意的是,在重复进行第三步至第五步的步骤时,第一步和第二步也在同步进行,这是因为第一步和第二步其作用就是要利用GNSS模块实时的对网络授时测试设备自身的时间进行校正,确保其测量的时间基准是准确的。
另外,重复进行第三步至第五步的步骤,多个测量时刻分别进行多次的时间偏差测量,其目的是为了在更长的测量时间范围内,对NTP服务器的时间偏差有一个更加客观全貌的测量,能够反映出NTP服务器的时间偏差在较长的时间范围内的动态分布情况,这样有利于更加全面的测量观测NTP服务器的时间偏差。
通过长时间多次测量,将测量结果组帧上报给监控计算机,监控计算机对测量结果进行统计分析,即可获得服务器授时精度。
进一步的,网络授时测试设备对NTP服务器进行较长时间范围内多次测量,其中每次测量的时间间隔相同,例如每间隔1秒,网络授时测试设备对NTP服务器测量一次,这种测量方式称之为定点多次测量。
结合图6和图7,这是分别对第一NTP服务器和第二NTP服务器进行定点多次测量,其中图6所示实施例的测量时长是18分钟,测量次数是1126次,测量得到的时间偏差平均值是1797.6ns,标准差312.5ns。图7所示实施例的测量时长是1小时,测量次数是3603次,测量得到的时间偏差的平均值是1612.4ns,标准差1225.9ns。容易得出这两款NTP服务器授时精度性能相差不大,都在1微秒左右(对应标准差分别是0.3125us和1.2259us)。
进一步的,网络授时测试设备对NTP服务器进行较长时间范围内多次测量,其中每次测量的时间间隔不同。例如还是以1秒为一个大的时间间隔,但每次测量时,又在间隔1秒的基础上加上1毫秒作为测量的时刻点,假设开始时是从0秒开始测量,第二次测量时刻则是1.001秒,第三次测量时刻是2.002秒,第四次测量时刻是3.003秒,以此类推,直到999.999秒,完成一次循环,然后以1.001秒为新的开始0秒进行下一轮的循环测量。这种测量方式称之为滑动多次测量或滑动扫描式测量。
结合图8和图9,这是分别对第一NTP服务器和第二NTP服务器进行滑动多次测量。其中图8所示实施例的测量时长是45分钟,测量次数是2705次,测量得到的时间偏差平均值是1643.9ns。图9所示实施例的测量时长是52分钟,测量次数是2853次,测量得到的时间偏差的平均值是44894.1ns。
通过观察滑动多次测量的结果图就可以明显看出,第一NTP服务器在所有时刻点都保持较高的授时精度,而第二NTP服务器授时误差与具体的测量时刻点密切相关,在某些测量时刻点甚至会发生突跳。显然图9比图7更能真实地反应了被测的第二NTP服务器的授时性能。超过1000秒的测量结果表明,第一NTP服务器的授时精度(标准差)约0.3微秒,而第二NTP服务器的授时精度(标准差)约27微秒,二者相差近90倍。
因此,使用滑动多次测量这种测试方法,保证了测量的高精度,同时支撑以毫秒为精度的滑动多次测量,使测量的结果更加精确和全面。
因此,基于前述的滑动多次测量这种测试方法,重复第三步至第五步进行多个测量时刻的时间偏差测量。其中,每相邻的两个测量时刻的时间间隔包括整数秒值和小数秒值,或者,每相邻的两个测量时刻的时间间隔只有小数秒值。
例如,在滑动多次测量时,时间间隔包括整数秒值和小数秒值,如对应前述的测量时刻是:0秒、1.001秒、2.002秒、3.003秒,以此类推。测量时刻也可以是:0秒、1.01秒、2.02秒、3.03秒,以此类推。还可以是:0秒、1.002秒、2.004秒、3.006秒,以此类推;而在下一轮循环时,则是:0秒、1.001秒、2.003秒、3.005秒,以此类推。
当然,测量时刻也可以进行更加密集的测量,每相邻的两个测量时刻的时间间隔只有小数秒值,如测量时刻是:0.01秒、0.02秒、0.03秒、0.04秒,以此类推。或者,测量时刻也可以是:0.001秒、0.005秒、0.010秒、0.015秒,以此类推。
由此可见,本发明公开了一种网络授时测试方法,利用网络授时测试设备对NTP服务器的授时精度进行测量,网络授时测试设备向NTP服务器发送用于时间测量的NTP申请帧,NTP服务器收到NTP申请帧后,对应向测试设备返回一个NTP响应帧;网络授时测试设备基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差。使用这种测试方法,保证了测量的高精度,同时支撑毫秒级分辨率的滑动扫描式测量,使测量的结果更加精确和全面。
本发明还公开了一种上述网络授时测试方法使用的网络授时测试设备,包括电路板,在电路板上设置有CPU芯片,以及与CPU芯片电连接的GNSS模块;GNSS模块用于电连接GNSS天线,CPU芯片通过网络接口用于电连接NTP服务器,以及CPU芯片还用于电连接监控计算机;CPU芯片实时接收来自GNSS模块的导航电文和卫星授时秒脉冲,用于更新系统时间和计算钟差平均值;CPU芯片还通过网络接口向NTP服务器向NTP服务器发送用于时间测量的NTP申请帧,以及接收对应来自NTP服务器返回的NTP响应帧;CPU芯片基于NTP申请帧和对应的NTP响应帧,计算得到NTP服务器的时间偏差。这种网络授时测试设备具有高性能、低成本的优点,可以准确测量出NTP服务器的授时精度。
以上仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构变换,或直接或间接运用在其他相关的技术领域,均包括在本发明的专利保护范围内。

Claims (10)

1.一种网络授时测试方法,其特征在于,利用网络授时测试设备对NTP服务器的时间精度进行测量,所述网络授时测试设备向所述NTP服务器发送用于时间测量的NTP申请帧,所述NTP服务器收到所述NTP申请帧后,对应向所述测试设备返回一个NTP响应帧;
所述网络授时测试设备基于所述NTP申请帧和对应的NTP响应帧,计算得到所述NTP服务器的时间偏差。
2.根据权利要求1所述的网络授时测试方法,其特征在于,所述网络授时测试设备基于所述NTP申请帧和对应的NTP响应帧,计算得到所述NTP服务器的时间偏差的方法包括:
所述NTP申请帧离开所述网络授时测试设备时,所述网络授时测试设备对应记录有第一时间戳T1,所述NTP响应帧到达所述网络授时测试设备时,所述网络授时测试设备对应记录有第四时间戳T4
所述NTP响应帧包括所述NTP申请帧到达所述NTP服务器时,由所述NTP服务器记录的第二时间戳T2,以及所述NTP响应帧离开所述NTP服务器时,由所述NTP服务器记录的第三时间戳T3
第一传输延迟d1为所述NTP申请帧由所述网络授时测试设备到所述NTP服务器的传输延时,第二传输延迟d2为所述NTP响应帧由所述NTP服务器到所述网络授时测试设备的传输延时,Δt为所述NTP服务器和所述网络授时测试设备之间的时间偏差,d为所述NTP申请帧和所述NTP响应帧的往返传输延时之和,则有:
T2=T1+Δt+d1
T4=T3-Δt+d2
d=d1+d2
令所述第一传输延迟d1和所述第二传输延迟d2相等,即d1=d2,则可得时间偏差:
3.根据权利要求2所述的网络授时测试方法,其特征在于,所述网络授时测试设备接收来自GNSS模块实时输出的卫星授时秒脉冲,测出网络授时测试设备自身的钟差平均值Δfavg
4.根据权利要求3所述的网络授时测试方法,其特征在于,所述网络授时测试设备接收来自GNSS模块实时输出的导航电文,从所述导航电文中获得时间信息,作为所述网络授时测试设备自身的系统时间。
5.根据权利要求4所述的网络授时测试方法,其特征在于,所述网络授时测试设备得到第一时间戳T1的方法包括:
所述网络授时测试设备在发送所述NTP申请帧时,读取其内部定时器的当前计数值C1,减去最近一次定时器在响应所述卫星授时秒脉冲时的计数值C2,得到第一计数差值C1-C2,再除以其内部系统时钟标称频率fMCLK与所述钟差平均值Δfavg之和,可得到时间值T11
所述网络授时测试设备基于GNSS模块而获得当前的系统时间值T12,则所述第一时间戳T1=T11+T12
6.根据权利要求4所述的网络授时测试方法,其特征在于,所述网络授时测试设备得到第四时间戳T4的方法包括:
所述网络授时测试设备接收到所述NTP响应帧时,读取其内部定时器的当前计数值C3,减去最近一次定时器在响应所述卫星授时秒脉冲时的计数值C4,得到第二计数差值C3-C4,再除以其内部系统时钟标称频率fMCLK与所述钟差平均值Δfavg之和,可得到时间值T41
所述网络授时测试设备基于GNSS模块而获得当前的系统时间值T42,则所述第四时间戳T4=T41+T42
7.根据权利要求1所述的网络授时测试方法,其特征在于,
所述网络授时测试设备在多个测量时刻分别发送NTP申请帧和接收对应NTP响应帧,计算得到所述NTP服务器在多个所述测量时刻的时间偏差;
在多个所述测量时刻中,每相邻的两个测量时刻的时间间隔包括整数秒值和小数秒值,或者,每相邻的两个测量时刻的时间间隔只有小数秒值。
8.根据权利要求7所述的网络授时测试方法,其特征在于,所述整数秒值为1秒,所述小数秒为0.001秒。
9.一种网络授时测试设备,其特征在于,包括电路板,在所述电路板上设置有CPU芯片,以及与CPU芯片电连接的GNSS模块;所述GNSS模块用于电连接GNSS天线,所述CPU芯片通过网络接口用于电连接NTP服务器,以及所述CPU芯片还用于电连接监控计算机;
所述CPU芯片实时接收来自GNSS模块的导航电文和卫星授时秒脉冲,用于更新系统时间和计算钟差平均值;
所述CPU芯片还通过网络接口向所述NTP服务器发送用于时间测量的NTP申请帧,以及接收对应来自所述NTP服务器返回的NTP响应帧;
所述CPU芯片基于所述NTP申请帧和对应的NTP响应帧,计算得到所述NTP服务器的时间偏差。
10.根据权利要求9所述的网络授时测试设备,其特征在于,
所述CPU芯片在多个测量时刻分别发送NTP申请帧和接收对应NTP响应帧,计算得到所述NTP服务器在多个所述测量时刻的时间偏差;
所述CPU芯片将多个所述测量时刻的时间偏差均上传至监控计算机,由所述监控计算机进行统计计算和显示。
CN202310986723.2A 2023-08-03 2023-08-03 一种网络授时测试方法和测试设备 Pending CN116865896A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310986723.2A CN116865896A (zh) 2023-08-03 2023-08-03 一种网络授时测试方法和测试设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310986723.2A CN116865896A (zh) 2023-08-03 2023-08-03 一种网络授时测试方法和测试设备

Publications (1)

Publication Number Publication Date
CN116865896A true CN116865896A (zh) 2023-10-10

Family

ID=88225137

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310986723.2A Pending CN116865896A (zh) 2023-08-03 2023-08-03 一种网络授时测试方法和测试设备

Country Status (1)

Country Link
CN (1) CN116865896A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117938300A (zh) * 2024-03-21 2024-04-26 中大智能科技股份有限公司 一种传感器网络高精度授时方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117938300A (zh) * 2024-03-21 2024-04-26 中大智能科技股份有限公司 一种传感器网络高精度授时方法
CN117938300B (zh) * 2024-03-21 2024-06-04 中大智能科技股份有限公司 一种传感器网络高精度授时方法

Similar Documents

Publication Publication Date Title
CN100461721C (zh) 一种测试远程帧时延的系统及方法及装置
CN100583730C (zh) 用于校准tod时钟的装置和方法
US6741952B2 (en) Instrument timing using synchronized clocks
CN106707736A (zh) 一种汽车仪表时钟精度测量方法和装置
CN112543078B (zh) 一种基于卫星共视的网络时间服务器校准方法与装置
CN112564840B (zh) 一种用于交通监测网络的时间可信校准系统及其操作方法
GB2428799A (en) Compensating the drift of a local clock in a data acquisition apparatus
US20100293243A1 (en) method and apparatus for measuring directionally differentiated (one-way) network latency
CN116865896A (zh) 一种网络授时测试方法和测试设备
US8224606B2 (en) Measuring clock jitter
WO2009066114A1 (en) Oscillator calibration
CN108318053A (zh) 一种空间光学遥感相机成像时刻标定精度测量方法及系统
CN112702231B (zh) 一种网络延时的测量方法及系统
CN112187560A (zh) Ntp网络授时评估系统、方法和授时评估装置
US8843615B2 (en) Method and device for measuring the temporal drift of an item of electronic equipment connected to a network
CN112213541B (zh) 一种应用于暂态录波型故障指示器的守时方法
JPH096464A (ja) 時刻設定装置
Castello et al. Automated test system to assess reporting latency in PMUs
Bauer et al. Characterization of GPS disciplined oscillators using a laboratory GNSS simulation testbed
Castello et al. Synchronization Solutions for Power Quality Functionalities in Low Cost Smart Meters
Bauer et al. Characterizing gps disciplined oscillators for distributed vehicle-to-x measurement applications
CN114070762B (zh) 网络监测探针组件、同步方法、数据采集分析装置
Charbonneau et al. An Analysis of Performance Statistics Reported by the NTPv4 Reference Implementation and Their Effect on Calibration Uncertainty
CN117792541B (zh) 用于电流差动保护业务5g授时终端性能的监测评估方法
CN220570541U (zh) 一种基于gps/bd通讯的双模核心时间校正器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination