RFC1769_简单网络时间协议(SNTP).
- 格式:doc
- 大小:32.00 KB
- 文档页数:12
sntp用法-回复SNTP(简单网络时间协议)是一种用于计算机网络中同步时钟的协议。
它是NTP(网络时间协议)的一种简化版本,专门用于使计算机和其他网络设备能够准确地同步时间。
本文将一步一步地解释SNTP的用法和工作原理,并讨论它在现代计算机网络中的重要性。
第一步:了解SNTP的基本概念SNTP是一种网络协议,用于设置和同步计算机和其他网络设备的时间。
它可以告诉计算机当前的时间,并与时间服务器进行通信,以确保时间保持同步。
与其他时间协议相比,它更加简化,但也具有基本的功能和安全特性。
第二步:理解SNTP的工作原理SNTP的工作原理主要涉及两个重要组件:客户端和时间服务器。
客户端是需要同步时间的计算机或设备,而时间服务器是提供时间服务的设备。
当客户端启动时,它会向时间服务器发送一个时间请求,以获取当前的时间信息。
时间服务器接收到请求后,会回复客户端一个带有时间信息的应答。
客户端将时间信息用于校准本地时钟,并定期与服务器进行同步以确保时间的准确性。
第三步:SNTP的主要用途SNTP在现代计算机网络中具有广泛的应用。
以下是一些常见的用途:1. 计算机系统同步:许多操作系统和应用程序依赖于准确的时间信息来执行各种任务。
使用SNTP可以确保这些计算机系统的时钟始终保持准确,并避免因时间不同步而导致的问题。
2. 网络安全:时间戳在网络安全中起着重要的作用。
例如,在进行身份验证或授权时,计算机系统需要确保其生成的时间戳与服务器上的时间一致。
SNTP可以提供准确的时间信息,从而增加网络安全性。
3. 日志和审计:许多系统和网络设备会生成各种日志和审计记录。
使用准确的时间信息可以确保这些日志的时序完整和准确,使其更加有用和可靠。
4. 分布式应用:在分布式应用中,许多计算机和设备需要协调和同步其操作。
SNTP可以提供一个公共的时间参考,以确保这些应用程序之间的协作顺利进行。
第四步:SNTP的优点和局限性使用SNTP进行时间同步具有以下优点:1. 简单易用:SNTP是一种简化的时间协议,易于实现和使用。
SNTP协议的分析协议名称:简单网络时间协议 (SNTP)1. 引言简单网络时间协议(SNTP)是一种用于同步网络中计算机的时间的协议。
它是基于网络时间协议(NTP)的简化版本,旨在提供更简单和更轻量级的时间同步解决方案。
本协议旨在分析SNTP协议的工作原理、功能和特点,并提供相应的标准格式。
2. 协议概述SNTP协议旨在提供一种简单而有效的时间同步机制,以确保网络中的计算机具有准确的时间信息。
它采用客户端-服务器模型,其中客户端向服务器请求时间信息,并根据服务器提供的时间进行本地时间调整。
3. 协议功能3.1 时间请求SNTP客户端向服务器发送时间请求报文,请求服务器提供准确的时间信息。
3.2 时间响应服务器接收到时间请求报文后,会发送时间响应报文,其中包含服务器当前的时间信息。
3.3 时间同步客户端接收到服务器的时间响应报文后,会根据服务器提供的时间信息对本地时间进行调整,以实现时间同步。
3.4 容错处理SNTP协议具有一定的容错处理机制,以应对网络中可能出现的延迟、丢包等问题。
例如,协议可以通过计算报文传输时间的差异来处理网络延迟。
4. 协议工作流程4.1 客户端发起时间请求客户端向服务器发送时间请求报文,报文中包含客户端的时间戳。
4.2 服务器响应时间请求服务器接收到时间请求报文后,会生成时间响应报文,报文中包含服务器的时间戳和客户端的时间戳。
4.3 客户端接收时间响应客户端接收到服务器的时间响应报文后,会计算报文传输时间的差异,并根据服务器提供的时间戳对本地时间进行调整。
4.4 时间同步完成客户端根据服务器提供的时间信息对本地时间进行调整,从而实现时间同步。
5. 报文格式SNTP协议的报文格式如下所示:- 报文头部:包含协议版本、报文类型等信息。
- 时间戳字段:用于传输时间信息。
- 其他字段:用于传输协议相关的控制信息。
6. 协议特点6.1 简单性SNTP协议相对于NTP协议来说更加简单,减少了一些复杂的功能和算法,使得实现和使用更加方便。
这一部分描述简单网络时间协议(SNTP)的特性。
概述SNTP:∙用来同步网络资源∙由网络时间协议(NTP)改编∙提供同步的网络时间戳∙可以用于广播和单播模式∙SNTP客户端使用UDP 123端口进行侦听命令行界面示例以下是使用SNTP特性的命令行示例。
示例#1: show sntp(Netgear Switch Routing) #show sntp ?Press Enter to execute the command. client Display SNTP Client Information. server Display SNTP Server Information.示例#2: show sntp client(Netgear Switch Routing) #show sntp client Client Supported Modes: unicast broadcast SNTP Version: 4Port: 123Client Mode: unicast Unicast Poll Interval: 6Poll Timeout (seconds): 5Poll Retry: 1示例#3: show sntp server(Netgear Switch Routing) #show sntp serverServer IP Address: 81.169.155.234Server Type: ipv4Server Stratum: 3Server Reference Id: NTP Srv: 212.186.110.32 Server Mode: ServerServer Maximum Entries: 3Server Current Entries: 1SNTP Servers------------IP Address: 81.169.155.234 Address Type: IPV4Priority: 1Version: 4Port: 123Last Update Time: MAY 18 04:59:13 2005 Last Attempt Time: MAY 18 11:59:33 2005 Last Update Status: OtherTotal Unicast Requests: 1111Failed Unicast Requests: 361示例#4: Configure SNTPNETGEAR交换机没有内置的实时时钟。
GPS对时仪(对时器)常⽤的时钟同步⽅式NTPGPS对时仪(对时器)常⽤的时钟同步⽅式NTPGPS对时仪(对时器)常⽤的时钟同步⽅式NTP京准电⼦科技官微——ahjzsz摘要:⾸先对时间同步进⾏了背景介绍,然后讨论了不同的时间同步⽹络技术,最后指出了建⽴全球或区域时间同步⽹存在的问题。
⼀、概述 在通信领域,“同步”概念是指频率的同步,即⽹络各个节点的时钟频率和相位同步,其误差应符合标准的规定。
⽬前,在通信⽹中,频率和相位同步问题已经基本解决,⽽时间的同步还没有得到很好的解决。
时间同步是指⽹络各个节点时钟以及通过⽹络连接的各个应⽤界⾯的时钟的时刻和时间间隔与协调世界时(UTC)同步,最起码在全国范围内要和北京时间同步。
时间同步⽹络是保证时间同步的基础,构成时间同步⽹络可以采取有线⽅式,也可以采取⽆线⽅式。
时间的基本单位是秒,它是国际单位制(SI单位制)的七个基本单位之⼀。
1967年以前,秒定义均建⽴在地球的⾃转和公转基础之上。
1967年的国际计量⼤会(CGDM)给出了新的秒定义:“秒是铯133(133Cs)原⼦在0K温度基态的两个超精细能级之间跃迁所对应辐射的9 192 631 770个周期所持续的时间”,即“原⼦秒”(TAI)。
⽬前常⽤的协调世界时实际上是经过闰秒调整的原⼦秒。
⽬前在国际基准和国家基准层⾯所使⽤的主要是铯原⼦钟。
铯原⼦钟已从70年代的磁选态铯原⼦钟发展到后来的光抽运铯原⼦钟以及近期的冷原⼦喷泉铯原⼦钟,原⼦秒的不确定度已经提⾼到2×10-15。
中国计量科学研究院建⽴的冷原⼦喷泉铯原⼦钟于2003年底通过了专家鉴定,其频率复现性为5×10-15,已接近国际先进⽔平。
⽬前商⽤的⼩铯钟的频率复现性已达到或优于5×10-13的⽔平。
其实,在应⽤层⾯上并不需要国家基准这样⾼的时间和频率准确度,不同的应⽤对准确度的要求是不同的。
表1列举了⼀些典型的应⽤对时间准确度的要求(这⾥所谈的时间准确度是应⽤界⾯时间相对于协调世界时的误差)。
SNTP协议的分析协议名称:SNTP协议分析一、介绍SNTP(Simple Network Time Protocol,简单网络时间协议)是一种用于同步网络中计算机时间的协议。
它是NTP(Network Time Protocol,网络时间协议)的简化版本,主要用于那些对时间精度要求不高的应用场景。
二、协议原理SNTP协议基于UDP协议进行通信,使用NTP的一部分功能来实现时间同步。
其原理如下:1. 客户端向服务器发送时间请求报文。
2. 服务器收到请求后,将当前时间添加到报文中,并返回给客户端。
3. 客户端收到服务器返回的报文后,将报文中的时间信息与本地时间进行比较,计算出时间差。
4. 客户端根据时间差调整本地时间,完成时间同步。
三、协议报文格式SNTP协议的报文格式如下:1. 报文头部:- 协议版本:占用3个比特,表示SNTP协议的版本号。
- 协议模式:占用3个比特,表示SNTP协议的工作模式,如客户端模式、服务器模式等。
- 报文类型:占用8个比特,表示SNTP报文的类型,如时间请求报文、时间响应报文等。
- 精度:占用8个比特,表示时间的精度。
- 传输时间戳:占用32个比特,表示报文的发送时间。
- 接收时间戳:占用32个比特,表示报文的接收时间。
- 时间戳:占用32个比特,表示服务器的时间。
2. 报文数据:- 时间戳:占用32个比特,表示服务器的时间。
四、协议工作流程SNTP协议的工作流程如下:1. 客户端向服务器发送时间请求报文。
2. 服务器收到请求后,将当前时间添加到报文中,并返回给客户端。
3. 客户端收到服务器返回的报文后,将报文中的时间信息与本地时间进行比较,计算出时间差。
4. 客户端根据时间差调整本地时间,完成时间同步。
五、协议特点SNTP协议具有以下特点:1. 简化:SNTP是NTP的简化版本,去除了一些对时间精度要求较高的功能,使得协议更加简单。
2. 精度较低:由于简化了部分功能,SNTP的时间精度相对较低,适用于对时间要求不高的应用场景。
SNTP协议的分析协议名称:SNTP协议分析一、介绍SNTP(Simple Network Time Protocol)是一种用于同步网络中计算机时间的协议。
它基于NTP(Network Time Protocol)的简化版本,旨在提供较为简单的时间同步功能。
本文将对SNTP协议进行详细分析,包括协议的工作原理、协议格式、数据传输过程等。
二、工作原理SNTP协议的工作原理如下:1. 客户端向时间服务器发送时间请求。
2. 时间服务器接收时间请求,并返回当前的时间信息。
3. 客户端接收时间信息,并进行时间校准。
三、协议格式SNTP协议的数据包格式如下:1. 协议头部:- 协议版本:占用2位,用于指定SNTP协议的版本号。
- 模式:占用3位,用于指定SNTP协议的工作模式,如客户端模式、服务器模式等。
- 验证标志位:占用1位,用于指定数据包是否需要进行验证。
2. 时间戳:- 发送时间戳:占用32位,用于记录发送数据包的时间。
- 接收时间戳:占用32位,用于记录接收数据包的时间。
- 时间戳:占用32位,用于记录时间服务器的时间。
3. 其他字段:- 源地址:占用32位,用于指定数据包的源地址。
- 目标地址:占用32位,用于指定数据包的目标地址。
四、数据传输过程SNTP协议的数据传输过程如下:1. 客户端向时间服务器发送时间请求:- 客户端构建一个SNTP请求数据包,包括协议头部和时间戳字段。
- 客户端将数据包发送给时间服务器。
2. 时间服务器接收时间请求,并返回当前的时间信息:- 时间服务器接收到客户端的请求数据包。
- 时间服务器构建一个SNTP应答数据包,包括协议头部和时间戳字段。
- 时间服务器将应答数据包发送给客户端。
3. 客户端接收时间信息,并进行时间校准:- 客户端接收到时间服务器的应答数据包。
- 客户端提取时间戳字段中的时间信息,并与本地时间进行比较。
- 客户端根据时间差值进行时间校准,使本地时间与时间服务器的时间同步。
简单网络时间协议 ( SNTP(RFC1769 —— Simple Network Time Protocol本备忘录描述简单网络时间协议 (SNTP,这是网络时间协议 (NTP 的一个改写本, NTP 协议适用于同步因特网上的计算机时钟。
当不须要实现 RFC 1305 所描述的 NTP 完全功能的情况下, 可以使用 SNTP 。
它能用单播方式 (点对点和广播方式(点对多点操作。
它也能在 IP 多播方式下操作 (可提供这种服务的地方。
SNTP 与当前及以前的 NTP 版本并没有大的不同。
但它是更简单, 是一个无状态的远程过程调用 (RPC,其准确和可靠性相似于 UDP/TIME 协议在 RFC868描述中所预期的。
本备忘录淘汰相同的标题的 RFC 1361。
它的目的是解释用广播方式操作的协议模式,提供某些地方的进一步说明并且改正一些印刷上的错误。
在 NTP 版本 3 RFC 1305中说明的工作机理对 SNTP 的实现不是完全需要的。
本备忘录的分发没有限制。
1. 介绍RFC 1305 [MIL92] 指定网络时间协议 (NTP来同步因特网上的计算机时钟。
它提供了全面访问国家时间和频率传播服务的机制,组织时间同步子网并且为参加子网每一个地方时钟调整时间。
在今天的因特网的大多数地方, NTP 提供了 1-50 ms 的精确度,精确度的大小取决于同步源和网络路径等特性。
RFC 1305 指定了 NTP 协议机制中的事件,状态,传输功能和操作,另外,还有可选择的算法,它改进测时质量并且减少了一些同步源中可能存在的错误。
为了获得因特网上主要路径的延时精确到毫秒级,使用一些复杂的算法或者他们的等价算法是必要的。
但是,在许多场合这样的精确度是不要求,或许精确到秒已足够了。
在这样的情况下,更简单的协议例如“时间协议” [POS83 ]已被使用。
这些协议通过基于RPC 交换:客户端请求此刻时间,然后服务器回传从某个已知时间点到现在的秒钟数。
局域网时间同步解决方案目前有多种方法和协议可以实现局域网的时间同步,其中最常用的方法有以下几种:1.NTP(网络时间协议)NTP是目前应用最广泛的时间同步协议。
它通过在局域网中部署一台或多台NTP服务器,其他设备可以通过NTP协议向服务器请求时间同步。
NTP服务器通过与外部时间源同步,获得准确的时间信息,并通过网络广播给其他设备。
NTP协议具有高精度和可靠性,并且支持大规模的设备同步。
2.SNTP(简单网络时间协议)SNTP是NTP的简化版本,它主要用于资源受限的设备,如嵌入式系统或传感器。
SNTP与NTP类似,也是通过请求服务器获得时间同步,但是它忽略了一些复杂的NTP功能,以降低系统资源的占用。
3.PTP(精确时间协议)PTP是一种面向时钟同步的协议,它通过网络互连的设备之间进行时间同步。
PTP使用精确的硬件时钟和协调的数据包来实现微妙级的时间同步,适用于对时间同步要求非常严格的应用场景,如工业控制系统或金融交易。
除了选择合适的时间同步协议外,还需要注意以下几个方面来解决局域网的时间同步问题:1.部署时间服务器局域网中的设备需要通过时间服务器来获取准确的时间信息。
因此,首先需要在局域网中选择一台设备作为时间服务器,并确保该服务器与外部时间源同步。
时间服务器可以是专用的设备,也可以是一台普通的计算机。
2.配置时间同步策略在时间服务器上配置合适的时间同步策略非常重要。
时间同步策略可以根据需求设置为手动同步或自动同步。
在自动同步模式下,时间服务器会定期与外部时间源同步,并将同步结果广播给局域网中的其他设备。
3.配置时间同步客户端局域网中的其他设备需要配置为时间服务器的客户端,以便从服务器获取时间同步。
大多数操作系统都提供了内置的时间同步功能,可以根据需要进行配置。
另外,还可以使用第三方工具或软件来实现时间同步。
4.检查网络延迟网络延迟是导致时间不同步的常见原因之一、因此,要确保时间服务器和客户端之间的网络连接正常,并且网络延迟较低。
SNTP协议的分析协议名称:简单网络时间协议(SNTP)分析协议1. 引言简单网络时间协议(SNTP)是一种用于同步网络中计算机时间的协议。
本协议旨在分析SNTP协议的工作原理、数据结构和通信流程。
2. 协议概述SNTP协议基于网络时间协议(NTP),但是相对于NTP而言,SNTP协议更加简化。
SNTP协议主要用于时钟同步,通过从时间服务器获取准确的时间信息,以确保网络中的设备具有相同的时间标准。
3. 协议工作原理3.1 时间服务器SNTP协议中的时间服务器负责提供准确的时间信息。
时间服务器通常通过GPS、原子钟等可靠的时间源获取时间信息,并通过网络提供给客户端。
3.2 客户端SNTP协议中的客户端是需要同步时间的设备。
客户端通过与时间服务器进行通信,获取准确的时间信息,并根据该信息调整自身的时间。
4. 协议数据结构4.1 SNTP报文格式SNTP报文由报头和时间戳组成。
报头包含协议版本、模式、偏移量等信息,时间戳包含时间信息。
4.2 报头格式报头由32位的整数构成,具体包括:- 协议版本:指定SNTP协议的版本号。
- 模式:指定SNTP协议的工作模式,如客户端模式、服务器模式等。
- 偏移量:指定时间戳的偏移量。
4.3 时间戳格式时间戳由64位的整数构成,分为两部分:- 秒部分:表示自协调世界时(UTC)1970年1月1日00:00:00以来的秒数。
- 分数部分:表示秒数的小数部分。
5. 协议通信流程5.1 客户端请求时间客户端向时间服务器发送时间请求报文。
报文格式:- 报头:协议版本、客户端模式、偏移量为0。
- 时间戳:为空。
5.2 服务器响应时间时间服务器接收到客户端的时间请求后,向客户端发送时间响应报文。
报文格式:- 报头:协议版本、服务器模式、偏移量为0。
- 时间戳:包含服务器当前的时间。
5.3 客户端调整时间客户端接收到服务器的时间响应后,根据时间戳中的时间信息调整自身的时间。
6. 安全性考虑SNTP协议本身并不提供安全性保障,因此在实际应用中需要考虑以下安全问题:- 身份验证:为了防止恶意攻击者伪造时间服务器,可以使用身份验证机制对服务器进行认证。
SNTP协议的分析一、背景介绍SNTP(Simple Network Time Protocol)是一种用于同步网络中计算机时间的协议。
它是NTP(Network Time Protocol)的简化版本,旨在提供更精简和快速的时间同步服务。
SNTP协议通常用于需要对时间要求不高的应用场景,例如智能家居、工业自动化等。
二、协议概述SNTP协议基于UDP(User Datagram Protocol)进行通信,使用端口号123。
它通过客户端与服务器之间的交互来实现时间同步。
SNTP协议中定义了以下几种类型的消息:1. 请求(Request):客户端向服务器发送时间同步请求。
2. 应答(Response):服务器回复客户端的时间同步请求,包含时间信息。
3. 广播(Broadcast):服务器定期广播时间信息。
三、协议流程1. 客户端发起时间同步请求:a. 客户端向服务器发送一个请求消息。
b. 请求消息中包含客户端的时间戳。
c. 客户端等待服务器的应答消息。
2. 服务器回复时间同步请求:a. 服务器接收到客户端的请求消息。
b. 服务器生成一个应答消息,包含服务器的时间戳。
c. 服务器将应答消息发送给客户端。
3. 客户端更新时间:a. 客户端接收到服务器的应答消息。
b. 客户端计算时间差,将服务器的时间与本地时间进行同步。
四、协议消息格式SNTP协议定义了请求消息和应答消息的格式,具体如下:1. 请求消息格式:+-----+------+------+------+------+------+------+------+------+------+ | LI | VN | Mode | Stratum | Poll | Precision | Root Delay |+-----+------+------+------+------+------+------+------+------+------+ | Root Dispersion | Reference ID |+-----+------+------+------+------+------+------+------+------+------+ | Reference Timestamp |+-------------------------------------------------------------------+| Origin Timestamp |+-------------------------------------------------------------------+| Receive Timestamp |+-------------------------------------------------------------------+| Transmit Timestamp |+-------------------------------------------------------------------+- LI(Leap Indicator):指示闰秒的插入或删除。
简单网络时间协议 ( SNTP(RFC1769 —— Simple Network Time Protocol本备忘录描述简单网络时间协议 (SNTP,这是网络时间协议 (NTP 的一个改写本, NTP 协议适用于同步因特网上的计算机时钟。
当不须要实现 RFC 1305 所描述的 NTP 完全功能的情况下, 可以使用 SNTP 。
它能用单播方式 (点对点和广播方式(点对多点操作。
它也能在 IP 多播方式下操作 (可提供这种服务的地方。
SNTP 与当前及以前的 NTP 版本并没有大的不同。
但它是更简单, 是一个无状态的远程过程调用 (RPC,其准确和可靠性相似于 UDP/TIME 协议在 RFC868描述中所预期的。
本备忘录淘汰相同的标题的 RFC 1361。
它的目的是解释用广播方式操作的协议模式,提供某些地方的进一步说明并且改正一些印刷上的错误。
在 NTP 版本 3 RFC 1305中说明的工作机理对 SNTP 的实现不是完全需要的。
本备忘录的分发没有限制。
1. 介绍RFC 1305 [MIL92] 指定网络时间协议 (NTP来同步因特网上的计算机时钟。
它提供了全面访问国家时间和频率传播服务的机制,组织时间同步子网并且为参加子网每一个地方时钟调整时间。
在今天的因特网的大多数地方, NTP 提供了 1-50 ms 的精确度,精确度的大小取决于同步源和网络路径等特性。
RFC 1305 指定了 NTP 协议机制中的事件,状态,传输功能和操作,另外,还有可选择的算法,它改进测时质量并且减少了一些同步源中可能存在的错误。
为了获得因特网上主要路径的延时精确到毫秒级,使用一些复杂的算法或者他们的等价算法是必要的。
但是,在许多场合这样的精确度是不要求,或许精确到秒已足够了。
在这样的情况下,更简单的协议例如“时间协议” [POS83 ]已被使用。
这些协议通过基于RPC 交换:客户端请求此刻时间,然后服务器回传从某个已知时间点到现在的秒钟数。
NTP被设计成了性能差异很大的客户端及服务器均能适用, 且适用于客户端及服务器所在网路有大范围的网络延迟和抖动的情况。
今天的因特网上的 NTP 同步子网的大多数用户使用一个软件包包括了一整套的 NTP 的选择和算法,是一个比较复杂,实时的应用系统。
软件要适用于多种硬件平台:从巨型计算机到个人计算机。
要在这样的范围都适用,它的庞大尺寸和复杂性就不适合于很多应用了。
按照要求,探求一些可供选择的访问策略 ( 使用适合于精确度要求不是很严格的简单软件是有用的。
本备忘录描述简单网络时间协议 (SNTP,它是一个简化了的 NTP 服务器和 NTP 客户端策略。
SNTP 在协议实现上没有什么更改,在最近也不会有什么变动。
访问范例与 UDP/TIME 协议是一致的,实际上, SNTP 应该更容易适用于使用个人计算机的 UDP/TIME 客户。
而且, SNTP 也被设计在一个专门的服务器 ( 包括一台集成的无线电时钟里操作。
由于在系统里的那些各种各样反应机制的设计和控制, 交付调节时间精确到微秒是可能的。
这样的专门设计是切实可行的。
强烈建议 SNTP 仅仅在同步子网的末端被使用。
SNTP 客户端应该仅在子网的叶子 ( 最高的阶层操作并在配置过程中没有依靠其它 NTP 或者 SNTP 客户端来同步。
SNTP 服务器应该仅在子网的根 ( 阶层 1 操作并在配置过程中,除一台可靠的无线电时钟外中没有其它同步源。
只有使用了有冗余的同步源及不同的子网路径及整套 NTP 实现中的 crafted 算法, 主服务器通常期望的可靠性才有可能达到。
这种做法使主同步源在无线电时钟通信失败或者交付了错误时间时,还能用到其它几个无线电时钟和通向其它主要服务器的备份路径。
因此,应该仔细考虑客户端中 SNTP 的使用,而不是在主服务器里的 NTP 的使用。
2. 工作模式与地址分配象 NTP 一样, SNTP 能在单播 (点向点或者广播 (点对多点模式中操作。
单播客户端发送请求到服务器并且期望从那里得到答复,并且(可选的,得到有关服务器的往返传播延迟和本地时钟补偿。
广播服务器周期性地送消息给一指定的 IP 广播地址或者 IP 多播地址,并且通常不期望从客户端得到请求,广播客户端监听地址但通常并不给服务器发请求。
一些广播服务器可能选择对客户端作出反应请求以及发出未经请求广播消息;同时一些广播客户端可能会送请求仅为了确定在服务器和客户端之间的网络传播延迟。
在单播方式下,客户端和服务器的 IP 地址按常规被分配。
在广播方式下,服务器使用一指定的 IP 播送地址或者 IP 多播地址, 以及指明的媒介访问播送地址, 客户端要在这些地址上帧听。
为此, IP 广播地址将限制在一个单独的 IP 子网范围,因为路由器不传播 IP 广播数据报。
就以太网而论,例如,以太网媒介访问广播地址 (主机部分全部为 1 被用于表示 IP 广播地址。
另一方面, IP 多播地址将广播的潜在有效范围扩展到整个因特网。
其真实范围,组会员和路由由因特网组管理协议 (IGMP 确定 [DEE89 ],对于各种路由协议,超出了这份资料的讨论范围。
就以太网而论, 例如, 以太网媒介访问播送地址 (全部为 1 要和分配的 224.0.1.1 的 IP 多播地址合用。
除了 IP 地址规范和 IGMP ,在服务器操作 IP 广播地址或者 IP 多播地址没有什么不同。
广播客户端帧听广播地址, 例如在以太网情况下主机地址全部为 1的。
就广播地址的 IP 而论, 没有更进一步规定的必要了。
在 IP 多组广播情况下,主机可能需要实现 IGMP ,为的是让本地路由器把消息拦截后送到 224.0.1.1 多播组。
这些考虑不属于这份资料的讨论范围。
就当前指定的 SNTP 而论,其真正的弱点是多目广播客户端可能被一些行为不当或者敌对的在因特网别处的 SNTP/NTP 多播服务器攻击而瘫痪,因为目前全部这样服务器使用相同的 IP 多播地址:224.0.1.1 组地址。
所以有必要, 存取控制要基于那些以客户端信任的服务器源地址, 即客户端选择仅仅为自己所知的服务器。
或者, 按照惯列和非正式协议, 全部 NTP 多播服务器现在在每条消息内应包括已用 MD5加密的加密位, 以便客户端确定消息没有在传输中被修改。
SNTP 客户端能实现那些必要加密和密钥分发计划在原则上是可能的,但是这在 SNTP 被设计成的那些简单的系统里不可能被考虑。
考虑到没有一个完整的 SNTP 规范,故 IP 广播地址将使用在 IP 子网和局域网部分 (指有完整功能的 NTP 服务器和 SNTP 客户端在同一子网上的局域网 ,而对于 IP 多播地址来说,将只能用在为达到以上相同目而设计的特例中。
尤其,只有服务器实现了 RFC 1305 描述的 NTP 认证时(包括支持 MD5消息位的算法,在 SNTP 服务器里的 IP 多播地址才被使用。
3. NTP 时间戳格式sntp使用在 RFC 1305 及其以前的版本所描述标准 NTP 时间戳的格式。
与因特网标准标准一致, NTP 数据被指定为整数或定点小数,位以 big-endian 风格从左边 0位或者高位计数。
除非不这样指定, 全部数量都将设成 unsigned 的类型, 并且可能用一个在 bit0前的隐含 0填充全部字段宽度。
因为 SNTP 时间戳是重要的数据和用来描述协议主要产品的,一个专门的时间戳格式已经建立。
NTP用时间戳表示为一 64 bits unsigned 定点数,以秒的形式从1900 年 1月 1 日的 0:0: 0算起。
整数部分在前 32位里, 后 32bits (seconds Fraction 用以表示秒以下的部分。
在 Seconds Fraction 部分, 无意义的低位应该设置为 0。
这种格式把方便的多精度算法和变换用于 UDP/TIME 的表示(单位:秒,但使得转化为 ICMP 的时间戳消息表示法 (单位:毫秒的过程变得复杂了。
它代表的精度是大约是 200 picoseconds,这应该足以满足最高的要求了。
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Seconds |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Seconds Fraction (0-padded |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+注意,从 1968 年起,最高有效位 (整数部分的 0 bit位已经被确定, 64 位比特字段在 2036 年将溢出。
如果 NTP 或者 SNTP 在 2036 年还在使用的话,一些外部方法将有必要用来调整与 1900年及 2036 年有关的时间 (136 年的其它倍数也一样。
用这样的限制使时间戳数据变得很讲究 (要求合适的方法可容易地被找到。
从今以后每 136 年,就会有 200picosecond 的间隔,会被忽略掉, 64 个比特字段将全部置为 0 ,按照惯列它将被解释为一个无效的或者不可获得的时间戳。
4. NTP 报文格式NTP 和 SNTP 是用户数据报协议 ( UDP 的客户端 [POS80 ],而 UDP 自己是网际协议 ( IP [DAR81 ] 的客户端 . IP 和 UDP 报头的结构在被引用的指定资料里描述,这里就不更进一步描述了。
UDP 的端口是 123, UDP 头中的源断口和目的断口都是一样的, 保留的 UDP 头如规范中所述。
以下是 SNTP 报文格式的描述, 它紧跟在 IP 和 UDP 报头之后。
SNTP 的消息格式与 RFC-1305中所描述的 NTP 格式是一致的,不同的地方是:一些 SNTP 的数据域已被风装,也就是说已初始化为一些预定的值。
NTP 消息的格式被显示如下。
1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|LI | VN |Mode | Stratum | Poll | Precision |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 根延迟 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| 根差量 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 参考标识符 |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | || 参考时间戳 (64 || |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | || 原始时间戳 (64 || |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | || 接受时间戳 (64 || |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | || 传送时间戳 (64 || |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| || || 认证符 (可选项 (96 || || |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+如下一部分描述,在 SNTP 里大多数这些字段被预规定的数据给赋初值。