摘要
- 1990 年 6 月的 RFC 1165提出让 NTP 通过 OSI 远程操作服务运行。它把对等端区分为已连接、正在连接、正在接受连接和已断开,让连接状态承担可达性判断。
- 既有 NTP 会记录最近八次交换的响应;八次都没有回音,便把对等端视为不可达。有连接的实验直接观察线路建立、断开或仍在建立,时间数据依然要继续交换。
两个问题,别让一张表都来回答
一台远处的机器能否联系上,和它的时钟报出什么时间,是两件事。没有持久在线路时,NTP 要从最近的报文往来推断第一件事。RFC 1165描述了一本八格记录:最近八次传输各有没有收到答复。若八次都落空,就把对等端判作不可达。这是简洁的办法,像值班室记下八次敲门声,等整页空白才说没人应门。
Crowcroft 和 Onions 想试另一种门。OSI 远程操作服务让应用先建立关联,再定期调用远程操作;X.25 一类服务则提供有连接的承载。作者希望把时间服务带进 OSI 环境,也借此检验 ROS/ASN.1 规范能否自动检查、自动生成实现代码。连接本身还带来一条新线索:它已经建立、已经断开,或正在建立。判断机器此刻能否经这条服务联系上,不必等八格本子填满。
这套方案给对等端列了明确状态。Connected表示已连接且正在交换同步数据;Connecting表示接线动作正在进行;Accepting表示对方已发来连接,传输与会话协商还没做完;Disconnected表示联系失败。远距离连接可能花上几秒,因此接线动作必须异步进行。若时间守护进程抱着一条慢线路发呆,其他对等端的交换也会受影响。钟表可以继续按原来的方法走,接线员则得有自己的值班表。
关联通过A-ASSOCIATE.REQUEST发起,由远端给出相应指示。之后,双方按需要的频率调用携带 NTP 参数的远程操作。协议版本、当地时钟精度等信息,在一条连接的生命周期里通常不会变;建立连接时得知后,后续操作便可少带这些内容。RFC 1165 也讨论了把使用中的认证放在建立连接时完成。NTP 的时间数据字段延续既有定义,守护进程可以保留熟悉的内部状态,再把它们映射为 ROS/ASN.1 的编码。
线路通畅只能回答线路的问题。要比较两个时钟,仍要看报文往返时经历了什么。RFC 1165 提出一个故意惹人侧目的判断:包在路上花费时间的波动,比链路标称速度更能左右同步效果。慢一点却稳定的路径,可能胜过速度高而抖动厉害的路径。作者甚至把这个想法称作“异端”。讽刺的是把带宽当作所有性能问题通用答案的习惯;时钟关心的是每次抵达的差异。
这并非只在纸上画线路。RFC 1165 记下英国若干站点用较早版本的 ROS 规范,让 NTP 经 X.25 运行;至少一处站点既通过这条路径与英国站点对等,也通过 UDP 与美国互联网站点对等。文中称初步经验可喜,但测试范围尚不足以给出具体比较数据。最有力的历史画面是同一个时间服务跨着两种网络:线路的一边交出连接状态,另一边仍凭 UDP 报文往来,NTP 的时间运算没有换主角。
值班的人应当知道判断来自哪里。在数据报环境中,最近八次响应形成一段可达性历史;在有连接环境中,传输层直接提供关联的当前状态,还可以把建立连接时取得的信息留给后续操作。上层于是专注于延迟、偏移等真正与时间有关的样本。RFC 1165 留下一条干净的工程习惯:哪一层握有直接证据,就让那一层把证据交出来。隔着八次敲门去猜,终究不如看见门是否已经打开。
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限战略圈层会员
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance





