0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

网络时间协议和精简网络时间协议同步解决方案

贸泽电子设计圈 来源:互联网 作者:佚名 2017-11-09 09:18 次阅读

图1:数字化显示齿轮帮助同步时间

IP网络以太网最初设计时并没有考虑同步问题,但是这在现在非常的有必要。如果你的产品需要时间同步需要在设计上采取哪些措施呢?目前已经有几种解决方案,这里我们与大家讨论四种常见的解决方案:网络时间协议(NTP)、精简的网络时间协议(SNTP)、精确的时间协议(PTP)以及借助导航系统时间同步,比如全球定位系统GPS。幸运的是从架构的角度来看这些不同的实现方案有很多的共同之处。

主时钟源

同步网络通常都会有一个主时钟,它的来源一般都是协调世界时(UTC),UTC是基于地球的自转而确立的公立时间。UTC与国际原子时(TAI)保持着固定的关系,两者之间的固定关系是根据地球自转减慢的速度而周期性的增加到UTC上的闰秒时间而保持的,目前UTC时间比TAI时间快了将近36秒。另一个度量标准是UT1,它是以平子夜作为0时开始的格林格林威治平太阳时加上人工极移校正后的时间标准,UTC与UT1之间的关系保持在9秒以内。

目前有很多个时间服务器,但是在美国最常用的就是来自国家科学技术研究所(NIST)提供的时间,NIST提供的时间是基于UTC、UTC1和网络时间协议(NTP)服务器的,其他网络的计算机和主时钟源都是根据这个服务器来确定的,然而还有很多的辅助服务器存在,而且时间信息也可以来自于导航卫星。

时间研究要素

在网络设计中存在异步和同步的时间模型,所有同步的方法都需要有一个内聚层次的定时解决方案。参考时钟对于网络元素的同步是必须的,网络元素通常需要一个电压控制的晶体振荡器(VCXO)、锁相环(PLL)或者时钟生成器通过调整实现同步状态。目前比较流行的方案包括Abracon公司推出的超低相位噪声的VXCO和IDT公司推出的82P33814-1NLG同步管理单元,支持多种同步模式。

无论选择哪种解决方案,设计系统都需要能够提供适当的抖动衰减和相位噪声剔除,并且与网络中的其他元素保持适当的同步公差。时间设计方面要包括一定的保持特性,即在被通知同步状态之前保持时钟的能力以防止主时钟或参考时钟出现故障。

常用的同步解决方案

网络时间协议(NTP)和精简网络时间协议(SNTP)

最常用的公共网络时间同步方法就是NTP以及其精简版SNTP,公共的NTP子网在所有大陆甚至在海底都设有服务器,为全球互联网上无数的计算机提供时间支持服务。NTP服务器时间是基于UTC的,但是NIST组织架设了一个基于UT1的NTP服务器。

NTP协议使用软件时间戳来实现精确的时间同步,精度范围从100µs 到100ms 或者更大。很多因素会导致差异,但是通常都是由于网络延迟、硬件操作系统、环境温度变化引起的振荡器漂移以及时间更新引起的时间间隔引起的。

当我们确定需要对客户端的本地时间进行调整时,还需要将往返时间延迟考虑在内。NTP和SNTP使用相同的过程来确定校正因子,计算结果是假设往返两方向的延迟都是相同的而确定的,因此在客户端与服务端之间一共发生了四个数据包交换。

NTP和SNTP之间的主要区别是SNTP客户端需要周期性的直接从单个SNTP服务器同步它们的时间,因此,SNTP主要用于不需要太高精度要求的应用程序,NTP则采用基于状态的复杂算法来提升精度。

图2:前三层的同步路径(来源:维基百科)

NTP支持多播/任播、客户端-服务器、点对点模式,而SNTP通常应用于客户端-服务端模式,NTP系统广播时间信息是分层的并建立不同的层级,每个级别被分配给一个对应层级(Stratum)的序号,Stratum 1服务器是最底层,提供全局的时间同步服务,上层的需要根据底层的时间信息来同步。(网络事件结构为进一步研究提供了很好的使用信息来源,并且提供了一个参考实现方案称为NTPd,适用于Unix和Windows操作系统)

IEEE 1588 精确时间协议(PTP)

PTP迅速变成以太网数据包网络首选的时间同步解决方案,尤其适用于工业控制、电信、测试与测量等应用,相比NTP协议它更加的精确、更加的确定。PTP协议与NTP协议有很多相似之处,但是有几个关键的区别。首先客户端的时间戳采用硬件来实现而不是软件,并尽可能的将其放在接近网络接口的地方,从而消除与客户端软件相关的不规则延迟,这样会提升几纳秒的精确性,其次PTP网络主时钟选择过程更具健壮性。

图3:同步机制和延迟计算-便宜校正=ó(来源:维基百科)

在PTP协议中,时间信息会以主从结构的形式分层次的贯通到整个网络中,事件源是基于TAI标准的,“最好主时钟(BMC)”软件算法会从所有可用时钟源中选择最合适的时钟,时间信息会被传递给PTP的所有子网络中。

PTP协议的所有子网络中的主时钟的选择也采用BMC算法,多播传输是时钟的主要传输方式,但是终端客户端会采用直接通信的方式与主时钟进行同步,以单播的形式定时发送时间同步请求。当然还会存在一个“透明时钟”的可能性,即网络交换机有可能在将PTP消息传递给PTP子网的过程中修改时间戳。这种修改是通过计算本地设备延迟来提升接收子网的时间戳的精确性。

完美的PTP解决方案肯定存在,但是选择还是要归结于收发器的解决方案结合微控制器控制的PTP软件协议栈或者基于微控制器的解决方案和协议栈。网络时间组织提供了一个开源的PTP协议栈实现方案称为PTPd,可以免费下载。最广泛的分布式解决方案是TI公司推出的DP83640,作为通用模块在不同操作模式下都会输出一个从时钟,这个时钟与主时钟在频率和相位都保持同步,然后传递给下级子网络,精度在亚纳秒范围内,当然它也具有NTP协议的时间戳,TI公司提供了详细的应用说明,比如如何进行配置,如何实现较高的精度等。

全球定位系统(GPS)

图4:基于空间的导航系统包含一组环绕地球的卫星,这些系统能够提供非常精确的时间和位置信息

基于空间的导航系统包括一组环绕地球的卫星,这些系统能够提供非常精确的时间和位置信息。美国系统成为“全球定位系统(GPS)”,俄罗斯称之为“全球导航卫星系统(GLONASS)”,中国的“北斗导航卫星系统(BeiDou-2)”,以及印度的“印度区域导航导航卫星系统(IRNSS)”,当然其他国家也都在开发自己的导航系统。

GPS卫星上都具备原子时钟,它们之间互相同步并且定期进行调整与地面时钟同步。时间是根据至少四颗卫星周期性发送来的时间戳来计算出来的,延迟的计算也相对简单,因为信号以光速进行传播,卫星会定期发送其位置信息。

与NTP和PTP协议不同,GPS系统的可变延迟问题则不一样,因为时间信息都直接来自于卫星,唯一限制的因素是接收器必须有一条畅通无阻的通路,大气环境以及卫星相对接收器的位置都会对精度产生影响。因为给每个网络元素都集成一个接收器会很昂贵,因此工程师们会有效的控制成本,不过GPS时代相关产品已经便宜很多了,使得实际的解决方案的同步精度能够达到100ns以内。

GPS系统接收器还有一个好的特性就是它可以应用于封闭网络,即没有互联网连接。它们同样可以为PTP网络提供精确的主时钟源。

总结

除了上文提到的时间同步方法,当然还有其他的方案比如“同步网络(SyncE)”和“范围内仪表组时间编码(IRIG)”,这些都值得我们深入去研究。这些技术都是通过分发信号实现同步但是都需要专用的硬件平台。

“同步网络”已经成为一种标准受到越来越多的欢迎,传统的时间划分多路复用网络演变为基于IP的切换和多路复用实现方案(上文提到的DP83640就是基于SyncE技术实现的)。为了进一步的探索,可以参考国际电信联盟相关标准:ITU-T Rec.G8261,62,64。网络时间同步解决方案也可以通过上文提到的方法组合来实现,比如基于PTP的工业控制网络可以从GPS接收器获取其主时钟源,当然也可以从NTP衍生服务器获取。

许多可行的方法和组合可以一起工作,最终目标是通过网络实现精确的时间同步,但是每种技术都有自己独特的功能特性,而且随着网络和技术的发展逐渐都能够满足现代应用的大部分需求。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NTP
    NTP
    +关注

    关注

    1

    文章

    158

    浏览量

    13886
  • PTP
    PTP
    +关注

    关注

    0

    文章

    50

    浏览量

    8645
  • sntp
    +关注

    关注

    0

    文章

    5

    浏览量

    3700

原文标题:【原创】网络时间同步解决方案

文章出处:【微信号:Mouser-Community,微信公众号:贸泽电子设计圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    车载网络中gPTP交换机的应用方案

    随着信息技术的不断发展,网络通信的精确时间同步变得越来越重要。很多应用场景,如金融交易、科学研究、自动驾驶以及工业自动化等,都对时间同步有着
    的头像 发表于 11-12 15:00 314次阅读
    车载<b class='flag-5'>网络</b>中gPTP交换机的应用<b class='flag-5'>方案</b>

    以RK3568为例,ARM核心板如何实现NTP精准时间同步?

    网络时间协议NTP(Network TimeProtocol)是用于互联网中时间同步的标准互联网协议,可以把计算机的时间
    的头像 发表于 11-07 10:20 244次阅读
    以RK3568为例,ARM核心板如何实现NTP精准<b class='flag-5'>时间</b><b class='flag-5'>同步</b>?

    使用NTP,该如何同步时间?一文详解!

    成为了开发者要解决的重要问题。对于Cat.1模块,移动/电信卡,通常会下发基站时间,那么sntp就不是必要的,而联通卡通常不会下发,就需要sntp了。 NTP(NetworkTimeProtocol,网络时间协议) 是用于同步
    的头像 发表于 10-29 13:44 117次阅读
    使用NTP,该如何<b class='flag-5'>同步</b><b class='flag-5'>时间</b>?一文详解!

    网络时间服务器模块:卫星时间同步的管理神器

    网络时间协议和PTP精确时间协议是两种常用的网络时间同步协议
    的头像 发表于 08-20 15:38 236次阅读
    <b class='flag-5'>网络</b><b class='flag-5'>时间</b>服务器模块:卫星<b class='flag-5'>时间</b><b class='flag-5'>同步</b>的管理神器

    网络时间同步系统的校时方式

    时钟的几种校时方式:GPS/北斗、NTP、WiFi、电脑校时软件。 1、NTP网络校时: ①NTP的校时方式是设备主动上传的方式。设备带有标准的NTP协议。 ②NTP校时间方式:所有被授时的设备向NTP
    的头像 发表于 07-25 17:00 438次阅读
    <b class='flag-5'>网络</b><b class='flag-5'>时间</b><b class='flag-5'>同步</b>系统的校时方式

    解读网络时间协议NTP,带你领略NTP的魅力!

      时间是我们日常生活的重要组成部分,而在数字时代,时间同步也在计算机和网络系统中扮演着至关重要的角色。网络时间协议(Network Tim
    的头像 发表于 06-27 16:52 591次阅读
    解读<b class='flag-5'>网络时间协议</b>NTP,带你领略NTP的魅力!

    京准电钟 | NTP网络时间同步协议原理及其应用介绍

    京准电钟 NTP网络时间同步协议原理及其应用介绍
    的头像 发表于 06-12 15:22 481次阅读
    京准电钟 | NTP<b class='flag-5'>网络</b><b class='flag-5'>时间</b><b class='flag-5'>同步</b><b class='flag-5'>协议</b>原理及其应用介绍

    时间同步——NTP网络时间服务器

    NTP即网络时间协议(Network Time Protocol),用于通过数据包交换的可变延迟数据网络在计算机系统之间进行时钟同步。NTP从1985年开始运行,是目前使用的最古老,最稳定
    的头像 发表于 06-06 14:08 429次阅读
    <b class='flag-5'>时间</b><b class='flag-5'>同步</b>——NTP<b class='flag-5'>网络</b><b class='flag-5'>时间</b>服务器

    智慧时间同步解决方案——NTP网络时间服务器

    NTP网络时间服务器是一款先进的智能化高精度北斗校时服务器。校时服务器从 GPS、北斗等导航定位卫星系统上获取标准时间信息,并通过 NTP/SNTP 或其他网络
    的头像 发表于 05-15 14:29 513次阅读
    智慧<b class='flag-5'>时间</b><b class='flag-5'>同步</b><b class='flag-5'>解决方案</b>——NTP<b class='flag-5'>网络</b><b class='flag-5'>时间</b>服务器

    网络时间协议NTP:时间同步

    NTP网络时间协议创建于1988年,该协议标准用于世界上绝大多数计算机和电子设备的超精确时钟同步。除了科学应用之外,在计算中,保持系统时钟一致(特别是在虚拟化环境中)是至关重要的,也是
    的头像 发表于 05-07 14:45 381次阅读
    <b class='flag-5'>网络时间协议</b>NTP:<b class='flag-5'>时间</b><b class='flag-5'>同步</b>

    如何利用PTP协议实现一主多从网络时间同步

    在开发项目中用到了PTP时钟同步协议,遇到一些问题,希望得到帮助: 1,所有设备使用了:XMC_ETH_MAC_InitPTPEx(ETH_LWIP_0.eth_mac,config, txTime
    发表于 03-12 06:53

    网络时钟同步有哪些要求?如何在5G网络中测试时间与时钟同步

    网络时钟同步有哪些要求?要注意哪些问题?如何在5G网络中测试时间与时钟同步网络时钟
    的头像 发表于 01-16 16:03 1303次阅读

    何为网络时间服务器?网络时间服务器如何同步虚拟时间

    何为网络时间服务器?网络时间服务器如何同步虚拟时间网络
    的头像 发表于 01-16 15:10 731次阅读

    docker部署NTP时间服务器chrony

    chrony是网络时间协议 (NTP) 的通用实现。它可以将系统时钟与 NTP 服务器、参考时钟(例如 GPS 接收器)以及使用手表和键盘的手动输入同步
    的头像 发表于 01-10 09:22 825次阅读

    单片机的RTC获取网络时间

    理解网络同步校准RTC的原理需要考虑NTP、SNTP、RTC这三个关键组件的作用和交互。下面详细解释这个过程:1.NTP(NetworkTimeProtocol):协议目的:NTP是用于同步
    的头像 发表于 12-23 08:00 1032次阅读
    单片机的RTC获取<b class='flag-5'>网络</b><b class='flag-5'>时间</b>