NTP网络授时系统设计与实现——总体方案设计

合集下载

NTP协议介绍及实现方案(服务器端和客户端)

NTP协议介绍及实现方案(服务器端和客户端)

NTP协议介绍及实现方案1 NTP协议简介 (2)2 NTP协议实现原理 (2)2.1 NTP协议的分层结构 (2)2.2 NTP协议的对时方式 (3)2.3 NTP协议的工作模式 (4)3 NTP报文格式 (4)4 NTP实现方案 (7)4.1 服务器端实现方案 (9)4.2 客户端实现方案 (11)5 遗留问题 (12)6 参考文献 (12)1 NTP协议简介NTP(Network Time Protocol,网络时间协议)是由RFC1305定义的时间同步协议,用来在分布时间服务器和客户端之间进行时钟同步,同时也是一个因特网标准,它采用应用层同步方法将计算机时钟和UTC时间(格林尼治时间)进行同步,因此时间精度不高,一般在10ms到100ms之间。

NTP协议属于应用层协议,定义了协议实现过程中所使用的结构、算法、实体和协议,它是基于IP和UDP的,也可以被其它协议组使用。

NTP协议时OSI参考模型的最高层协议,符合UDP传输协议格式,拥有专用端口123。

NTP协议是OSI参考模型的高层协议,符合UDP传输协议格式,拥有专用端口123,在嵌入式linux系统中,采用Server/Cilent的模式来实现网络通信,客户端主动提出申请,而服务器端被动打开。

又由于使用UDP套接字建立连接的好处在于,只有被该套接字指定为远程地址的计算机端口才能向该套接字发送数据,如果没有建立连接,任何IP地址和端口都能将数据发送到这个UDP套接字上。

所以采用建立连接的UDP套接字来传输时间信息。

2 NTP协议实现原理2.1 NTP协议的分层结构NTP采用分层的方法来定义时钟的准确性,可分为从0~15共16个级别,级别编码越低,精确度和重要性越高。

第0级设备是时间同步网络的基准时间参考源,位于同步子网络的顶端,目前普遍采用全球卫星定位系统,即由GPS播出的UTC时间代码。

级别(n+1)从级别n获取时间。

图1 NTP协议分层结构图子网络中的设备可以扮演多重角色,可以做客户机、服务器,也可以做对等机。

NTP网络授时系统设计与实现——NTP服务器端授时服务软件设计与实现

NTP网络授时系统设计与实现——NTP服务器端授时服务软件设计与实现

第4章NTP服务器端授时服务软件设计与实现NTP服务器端的授时服务软件主要包括三个功能模块:参数设置、时钟检查与校正和NTP服务。

因参数设置部分相对较简单,只是对参数设置文件的简单读写,本章重点介绍μCLinux系统开发平台的建立和另外两个功能模块的设计实现,同时对GPS授时、NTP协议等相关背景知识作简单介绍。

因本系统服务器的硬件开发只停留在电路设计阶段,还没有形成实际的产品,故服务器端软件的开发,在SmartARM 2200开发实验板上完成。

SmartARM 2200开发实验板,是一款采用ARM7TDMI芯片,带有RS232串口、JTAG接口、10M以太网接口,完全支持μCLinux的实验开发设备,可完全模拟本系统所设计服务器的软件和硬件环境。

要完成开发工作,首先要将μCLinux移植到实验开发板上,建立交叉编译环境。

4.1 系统开发平台的建立Linux操作系统下ARM应用程序开发平台的建立,包括μCLinux交叉编译环境的建立、μCLinux内核编译以及μCLinu x环境下的应用程序开发。

4.1.1 μCLinux交叉编译环境的建立[17]由于嵌入式Linux 的开发板资源有限,不可能在开发板上运行开发和调试工具。

通常需要交叉编译调试的方式进行,即“宿主机+目标机(开发板)”的形式。

目标机和宿主机一般采用串口进行连接,也可同时使用以太网口连接。

宿主机是运行Linux 的PC,可以是安装了Linux 操作系统的本地机,亦可以是Linux服务器。

宿主机和目标机的处理器通常情况下都不会相同。

本项目中,宿主机是安装了Redhat EL4 AS的X86架构PC机,而目标机则采用SmartARM 2200型实验开发板,要完成程序开发,宿主机需要建立适合于目标机的交叉编译环境。

程序在宿主机上编译-连接-定位,得到的可执行文件则在目标机运行。

在宿主机上安装Redhat EL4 AS系统,由于目标板平台处理器是ARM,因而需要安装GCC针对ARM的编译器。

NTP网络授时系统设计与实现——NTP网络授时系统服务器硬件设计

NTP网络授时系统设计与实现——NTP网络授时系统服务器硬件设计

第3章NTP网络授时系统服务器硬件设计3.1 服务器端硬件系统结构图NTP服务器的硬件设计,按照最小设计的原则,以保证整个硬件的尺寸符合要求,只提供系统所必须的功能,如串口、以太网口等。

系统结构如图3-1所示:图3-1 NTP服务器硬件实现框图3.2 系统硬件选型3.2.1 芯片选型根据前面的需求分析和硬件总体设计,结合实际应用和实现的需要,选择以下硬件芯片,如表3-1所示。

表3-1 NTP服务器芯片选型3.2.2 S3C4510B简介本系统选择了ARM架构的Samsung的S3C4510B处理器作为整个服务器硬件的核心。

ARM(Advanced RISC Machines)架构是面向低预算市场设计的第一款RISC 微处理器,除了RISC的一些特点外,ARM体系结构还采用了一些特别的技术,在保证提高性能的前提下尽量缩小芯片的面积,并降低功耗。

ARM微处理器具有体积小、低功耗、低成本、高性能的特点,支持Thumb(16位)/ARM(32位)双指令集,大量使用存储器而使指令执行速度更快,寻址方式灵活简单,执行效率高,指令长度固定等优点,主要应用在工业控制、无线通讯、网络应用、消费电子、成像产品、安全产品、存储产品、汽车行业等领域[10]。

S3C4510B是Samsung公司生产的基于以太网应用的高性价比16/32位RISC 微控制器,内含一个由ARM公司设计的16/32位ARM7TDMI RISC处理器核[11]。

另外,S3C4510B的片内外围功能模块主要包括:——2个带缓冲描述符(Buffer Descriptor)的HDLC通道——2个UART通道——2个GDMA通道——2个32位定时器——18个可编程的I/O口S3C4510B的片内逻辑电路包括:——中断控制器——DRAM/SDRAM控制器——系统管理器——ROM/SRAM和FLASH控制器——一个内部32位系统总线仲裁器——一个外部存储器控制器S3C4510B的结构框图如下图所示。

NTP网络时间服务器设计方案

NTP网络时间服务器设计方案

方案简介:为了确保时间同步系统的高可靠性,考虑到备份冗余问题,系统将由两台K801时间服务器(NTP网络时间服务器)组成。

冗余说明:1. NTP网络时间服务器的时间信号接收单元能接收GPS卫星发送的协调世界时(UTC)信号作为外部时间基准信号。

正常情况下,NTP网络时间服务器的时间信号接收单元独立接收GPS卫星发送的时间基准信号。

当某一NTP网络时间服务器的时间信号接收单元发生故障时,该NTP网络时间服务器能自动切换到另一台NTP网络时间服务器的时间信号接收单元接收到的时间基准信号,实现时间基准信号互为备用。

当NTP网络时间服务器的时间信号接收单元恢复正常后,该NTP 网络时间服务器自动切换回正常工作状态,切换时间小于0.5秒,切换时NTP网络时间服务器输出的时间同步信号不会出错。

2.NTP网络时间服务器可输出一路特殊的供NTP网络时间服务器间互联的IRIG-B(DC)码信号,该信号作为互联NTP网络时间服务器的“后备”外部时间基准,当NTP网络时间服务器的“主”外部时间基准故障时,该信号停止输出。

消除当NTP网络时间服务器互联时“主”外部时间基准发生故障所引起的工作状态不确定性。

3. NTP网络时间服务器具有内部守时功能。

当接收到外部时间基准信号时,被外部时间基准信号同步;当接收不到外部时间基准信号时,切换到内部守时,使NTP网络时间服务器输出的时间同步信号仍能保持一定的准确度。

当外部时间基准信号接收恢复时,自动切换到正常状态工作,切换时间小于0.5S,切换时时钟输出的时间同步信号不会出错。

系统结构:该系统结构由两台NTP网络时间服务器、交换机、网络和客户端组成,每台服务器配置多个物理隔离的NTP网口,分别同步多个子网,其结构图如下(以一个局域网为例)。

两台NTP网络时间服务器互为热备,NTP网络时间服务器1作为“常用”时间服务器,NTP网络时间服务器2作为“备用”时间服务器。

当“常用”时间服务器(NTP网络时间服务器1)的GPS信号接收单元发生故障时,自动切换至“备用”时间服务器(NTP网络时间服务器2)的GPS信号接收单元接收到的时间基准信号,从而保证系统的可靠性。

基于ntp的煤矿井下时钟同步系统的设计与实现

基于ntp的煤矿井下时钟同步系统的设计与实现

基于ntp的煤矿井下时钟同步系统的设计与实现基于NTP的煤矿井下时钟同步系统的设计与实现1. 前言在煤矿井下环境中,精确的时钟同步对于煤矿工作的安全性和效率至关重要。

煤矿井下工作环境通常具有恶劣的条件,如高温、高湿和高湍流等。

传统的时钟同步方法在这种环境下往往难以保证准确性和稳定性。

本文将介绍基于网络时间协议(Network Time Protocol, NTP)的煤矿井下时钟同步系统的设计与实现。

2. NTP简介网络时间协议是一种用于同步计算机网络中各个节点时间的协议。

它借助于时间服务器和客户端之间的交互,将时间信息传递给网络中的各个节点,从而实现时钟同步。

NTP通过精确的算法和校准过程,可以达到微秒级甚至纳秒级的时钟同步精度。

3. 煤矿井下时钟同步需求在煤矿井下工作过程中,各种设备和传感器需要严格的时间同步,以确保工作流程的正常进行。

煤矿井下的监控系统需要准确的时间戳来记录事故事件,而井下传感器和控制设备则需要同步的时间触发各种控制操作。

煤矿井下时钟同步系统需要具备高精度、高稳定性和高可靠性的特点。

4. 基于NTP的煤矿井下时钟同步系统设计与实现4.1 网络架构设计基于NTP的煤矿井下时钟同步系统的网络架构设计是确保时钟同步精度和稳定性的关键。

通常,该系统的网络架构由时间服务器、客户端和设备组成。

时间服务器负责维护和提供高精度的时间源,它可以通过GNSS(全球卫星导航系统)接收器获取GPS时间信号,并结合NTP算法进行时间校准和同步。

客户端设备连接到时间服务器,接收并同步服务器提供的时间信息。

设备与客户端通过以太网或无线网络连接,并根据接收到的时间信号进行时间校准。

4.2 网络安全设计在煤矿井下环境中,网络安全是至关重要的方面。

煤矿井下时钟同步系统应该采取一系列的安全措施,以防止外部攻击和数据篡改。

常见的安全措施包括网络隔离、防火墙、数据加密和访问控制等。

为了确保系统的高可靠性,在网络传输过程中应该设置冗余路径和备份服务器,以应对突发故障和断网情况。

NTP网络授时系统设计与实现——总体方案设计

NTP网络授时系统设计与实现——总体方案设计

第2章总体方案设计2.1系统概述目前军事指挥信息系统的时间同步采用 NTP 体制,全网设立专用时间服务器与外部精确时钟相联获取标准时钟信号,在各级子网中使用带 NTP 服务的路由器充当NTP 服务器或设立专用的NTP 服务器,从上级专用时间服务器或其上级子网路由器校正时间,同时对本子网用户和下级子网路由器提供NTP 服务。

其结构如图2-1所示。

图2-1现行网络授时系统示意图而在遂行作战任务时,根据联合作战的需要,往往对兵力进行重新编组,将原来隶属不同子网的用户分割重组成若干个新的子网。

如图2-1中红色虚线框 线部分所示,将这些作战力量重新编组为一个战斗群。

在整个作战行动中的存在 若干战斗群,这些群之间的网络链路,或因受敌火力打击、或因其它需要,无法空军E 集团军CDMA 网络铯、铷原子钟精确时钟源专用时间服务器广州BH 舰队NH 舰队DH 舰队 提供NTP 服务的路由器或专用NTP 服务器A 集团军空s 师…一_虚—济南'保证持续、长久的连接,形成了若干相互独立的子网,如图2-2所示作战单元作战单兀图2-2 战场实际网络环境示意图由于联合作战的需要,这些相互分离的子网之间,对时间同步仍然有着较高的要求。

但如果长时间网络中断,仅靠子网内设备自身的时钟无法保证时钟的同步精度,必须有统一的外部时钟源来作为参考。

故考虑在各个子网直接配置一个可通过某种方式直接与精确时钟源校对时钟的设备,并向子网内部其它设备和用户提供NTP授时服务,其系统的结构如图2-3所示。

系统可采用多种外部时钟源,包括全球定位系统( GPS )、北斗卫星定位导 航系统或CDMA 网络等作为一级时钟源,直接获取标准时钟信号且不依赖于计 算机网络。

同时NTP服务器接入作战群计算机子网中,为本网其它设备和用户 提供NTP 授时服务。

2.2系统目标NTP 网络授时系统的目标是,在基于IP 协议的多层级局部网络中,实现客 户端与服务器的实时时钟同步,从而保证信息系统应用的有序运行和高精度、高 可靠性。

NTP网络授时系统设计与实现——客户端时钟同步软件设计与实现

NTP网络授时系统设计与实现——客户端时钟同步软件设计与实现

第5章客户端时钟同步软件设计与实现5.1 概述在NTP网络授时系统中,各子网中的路由器可从NTP服务器获取标准时间,并为其它终端用户提供授时服务。

同时,其它终端用户也可以直接从NTP服务器获取标准时间。

NTP网络授时系统的时钟同步软件,即部署在需通过网络获取精确时间的各windows终端上。

时钟同步软件共包括三个功能模块:系统管理、定时器和时钟获取与校正。

系统管理模块,用于设置作为时钟参照的NTP服务器的地址、每次对时发送NTP报文的次数、对时间隔等参数。

定时器模块,用于定时或手工发起时钟同步请求。

在通常状况下,系统按用户设置的对时间隔,自动与NTP服务器进行时间同步。

在需要的时候,也可以由用户进行手工同步时间获取与校正模块:用于根据系统指定的参数,构造NTP消息报文,从NTP服务器获取精确的标准时间。

系统根据时钟同步的方式(手工或定时)本地时间,使系统内部各个节点的时钟保持一致。

任意一个时钟同步客户端发起时钟同步消息,授时服务器返回系统时钟信息,客户端根据时钟信息调整本地时间。

5.2 时钟同步软件静态结构图5.2.1 时钟同步软件整体结构时钟同步软件中,定时同步与手工同步的流程基本相同,系统的整体结构如下图所示:图5-1 时间同步的整体模型结构图5.2.2 时钟同步软件的类图分析时钟同步软件的结构,进一步细化系统中各种对象,以完成对系统中的类进行定义。

图5-2 时钟同步模块的类图5.2.3 系统主要类设计系统主要类的设计说明如下:1. SYSTEMTIME类表5-1 SYSTEMTIME类设计2. SynClient类表5-2 SynClient类设计3. ConstructPacket类表5-3 ConstructPacket类设计4. SynTask类表5-4 SynTask类设计5. SynServer类表5-5 SynServer类设计5.3 时间获取与校正模块动态结构图5.3.1 时钟同步算法时钟同步最主要的问题是解决同步消息传输延迟的计算问题。

一种NTP系统设计与实现

一种NTP系统设计与实现
之 中 其精确度 为数百 毫秒 。稍后出现了首个时 间协议 的规范f c RF 一 7 8, 71 它被命名为 D N T互联网时间服务 , CE 而它提供这种服务还是借 助 于 I e e C n o M s g r oo C 1即互联 网控 制消息协议 n r t ot l es e o cl MP. t r a P t O n 中的时间戳和时间戳应答 消息。 作为 N P T 名称的首次出现是在[ F 一 RC 98 中 . 5] 之 该版本也被称为 N P 0 其开宗明义是为 A P T . v R A网提供 时 间同步 A P R A网建立于 1 6 年 . 国国防部原打算用作军事用途 99 是美 的网络 . 最终成了互联网的雏形是现在英特 网的前身 T 0已完全 N PV 脱离 I M . C P 而作为独立的协议在完成更高要求 的时间 同步 它对于如 本地 时钟 的误 差估 算和精密度等 基本运算 、 参考 时钟的特性 、 网络 上 的分组数据包及其消息格 式进行 了描述 但是不对任何频率误差进行 补偿 . 也没有规定滤波和同步的算法 。 N Pv T I出现 于 18 9 8年 6月 . R C 15 ] 在[F 一 0 9中描述了首个完整 的 N P的规 范和相关算 法 这个版本就已经采用 了 c et e e 模式 以 T l n s vr i /r 及对称操作 。 但是它不支持鉴权 和 N P的控制消息。 9 9 9 T 18 年 月推出 了取代[F 一 5 1 R C 15 1 N Pv[ C 1 11 R C 9 8和[ F 一 0 9的 T 2RF 一 19 几乎同时 . E DC 公 司也 推 出了一个 时 间同步 协议 .数字 时 间同步 服务 . iili e Dgt Tm a S nho i t nS rieD S ) 在 19 y crnz i evc (T S ao 9 2年 3月 .T v [ F 1 o] N P 3R C一 3 5问
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2章总体方案设计
2.1 系统概述
目前军事指挥信息系统的时间同步采用NTP体制,全网设立专用时间服务器与外部精确时钟相联获取标准时钟信号,在各级子网中使用带NTP服务的路由器充当NTP服务器或设立专用的NTP服务器,从上级专用时间服务器或其上级子网路由器校正时间,同时对本子网用户和下级子网路由器提供NTP服务。

其结构如图2-1所示。

DH舰队
图2-1 现行网络授时系统示意图
而在遂行作战任务时,根据联合作战的需要,往往对兵力进行重新编组,将原来隶属不同子网的用户分割重组成若干个新的子网。

如图2-1中红色虚线框线部分所示,将这些作战力量重新编组为一个战斗群。

在整个作战行动中的存在若干战斗群,这些群之间的网络链路,或因受敌火力打击、或因其它需要,无法
保证持续、长久的连接,形成了若干相互独立的子网,如图2-2所示。

作战单元
图2-2 战场实际网络环境示意图
由于联合作战的需要,这些相互分离的子网之间,对时间同步仍然有着较高的要求。

但如果长时间网络中断,仅靠子网内设备自身的时钟无法保证时钟的同步精度,必须有统一的外部时钟源来作为参考。

故考虑在各个子网直接配置一个可通过某种方式直接与精确时钟源校对时钟的设备,并向子网内部其它设备和用户提供NTP授时服务,其系统的结构如图2-3所示。

作战单元
图2-3 NTP网络授时系统示意图
系统可采用多种外部时钟源,包括全球定位系统(GPS)、北斗卫星定位导航系统或CDMA网络等作为一级时钟源,直接获取标准时钟信号且不依赖于计算机网络。

同时NTP服务器接入作战群计算机子网中,为本网其它设备和用户提供NTP授时服务。

2.2 系统目标
NTP网络授时系统的目标是,在基于IP协议的多层级局部网络中,实现客户端与服务器的实时时钟同步,从而保证信息系统应用的有序运行和高精度、高可靠性。

网络授时系统服务器实时从外部时钟源获取精确时钟信号、驯化本地时钟、提供网络授时服务。

网络授时系统客户端自动选择可用服务器,获取精确时钟信号、驯化本地时钟。

对本NTP网络授时系统所部署的各类军事应用系统来说,主要是使原分属
于不同局部网络、参照不同时钟源的客户,在重新组织到一个新的局部网络后,实现时钟同步。

故从理论上讲,其时钟同步系统,可采用一种完全独立于其它时间系统的时间标准。

但是根据现行技术体制的要求,本系统仍然采用世界协调时(UTC)为基准。

系统对可靠性、可维护性、安全性、易用性等性能有较高的要求。

2.3 需求分析
2.3.1 硬件需求
NTP网络授时服务系统的硬件需求,主要是指需进行开发的NTP授时服务器的硬件需求,主要有:
1. CPU有较强的处理能力;
2. 具备串行接口以获取外部时钟信号;
3. 具备以太网接口;
4. 可运行μCLinux嵌入式系统
5. 达到中华人民共和国国家军用标准《时统设备通用规范(GJB 2242-94)》所规定的各项技术指标
2.3.2 软件需求
NTP网络授时服务系统软件的功能性主要需求:
1. 时间服务器能够同步到标准时间,必须提供连续的基于UTC的本地时间。

2. 时间服务机制即使在网络传输路径上有不稳定的延迟变化时,也能够提供准确的时间。

3. 同步子网即使在不稳定的网络环境下,也必须提供可靠性和存活性。

这需要冗余时钟源、冗余的时间服务器、不同的传输路径和动态的可再组织的子网结构。

4. 系统可在现行的操作系统(windows)和网络环境(IP网络)上部署使用,符合现行时统设备的技术体制(NTP),同时对操作系统和现有服务的影响尽可能的小。

5.服务器必须便于设置和使用,特定的客户端软件必须便于安装和配置。

NTP网络授时系统的主要业务流程如下图所示。

图2-4 NTP网络授时系统主要业务流程NTP网络授时系统的用例图如下所示。

图2-5 网络授时系统用例总图
2.4 硬件总体设计
为达到NTP服务器硬件小型化、便于机动携行的目的,其硬件设计可考虑采用两种方案:一种方案是采用单片机作为控制器,外加网上芯片完成数据的接收和转发,这种方法比较经济简单,硬件和软件开发相对容易,但是单片机一般性能有限,工作频率不高、速度较慢,当网络吞吐量大时,处理器很难实时处理,影响时钟同步的准确性。

另一种方案是采用ARM处理器,外加带TCP/IP协议栈的实时操作系统,既可以满足性能的要求,又有效减小了软件开发的工作量。

事实上,ARM处理器以其优越的性能正越来越得到广泛的应用,它在工业控制、通讯、计算机、消费电子等方面正逐步取代单片机,成为人们进行项目开发的首选。

本项目采用第二种方案,即使用ARM处理器外加μCLinux嵌入式操作系统,作为NTP网络授时系统的服务器,其硬件结构框图如图2-6所示。

图2-6 NTP服务器硬件结构框图
其核心是ARM处理器及必要的外围电路:电源电路将外部5V电源通过DC/DC转换器,为系统各部分提供所必需的5V与3.3V电压;晶振电路为系统提供内部时钟信号;JTAG接口电路为系统提供调试接口;RS232驱动器与接口连接外部时钟源以获取标准时钟信号,以太网接口用于连接IP网络以提供NTP 服务。

2.5 软件总体设计
NTP网络授时系统的软件,根据需求和业务流程,可划分为两个部分,即NTP服务器端的授时服务软件和客户端的NTP时钟同步软件。

软件设计的主要目标是:
1. 采用Client/Server架构;
2. 服务器端软件基于μCLinux操作系统,通过外部配置文件保存RS232串口的参数设置,通过RS232串口通信获取外部时钟信号并分离出精确时钟信号,
能够对本地时钟进行校正,通过socket编程,实现对以太网口NTP协议包的接收和应答;
3. 客户端软件基于windows操作系统,有通过图形用户界面可对有关参数进行设置,通过socket编程实现对以太网口NTP协议包的发送和接收,能够对本地时钟进行校正。

NTP网络授时系统软件的主要功能划分如下图所示。

图2-7 网络授时系统功能架构图
从图2-3中可以看出,在整个NTP网络授时系统中,时钟源是统一的,NTP 授时服务器是根据作战群子网划分呈分布式部署的,每一个子网中授时系统的架构是相同的,一个授时服务器对应多个时钟同步客户端。

图2-3也可以看作是整个NTP网络授时系统的网络架构图。

在一个独立的子网内部,为了最大限度地提高时间同步服务的准确性和及时性,一般将NTP服务器部署在最上层交换机的某一端口。

子网中网络授时系统的网络架构如图2-8所示。

图2-8 网络授时系统在子网中的网络架构。

相关文档
最新文档