这NTPv3 版本描述了五种操作模式:
对称主动 (1):在此模式下运行的主机会定期发送消息,而不管其对等端的可达性状态或层数如何。通过在此模式下运行,主机宣布其愿意同步并被对等端同步。
对称被动 (2):这种类型的关联通常在以对称主动模式运行的对等端收到消息时创建,并且只有在对等端可访问且运行在低于或等于主机的层级时才会持续存在;否则,关联将被解除。但是,关联将一直持续,直到至少有一条消息作为回复发送。通过以这种模式运行,主机宣布其愿意同步并被对等端同步。
客户端 (3):在此模式下运行的主机会定期发送消息,而不管其对等方的可达性状态或层数如何。通过在此模式下运行,主机(通常是 LAN 工作站)宣布其愿意被对等方同步,但不愿意同步对等方。
服务器 (4):这种类型的关联通常在收到客户端请求消息时创建,并且仅用于回复该请求,之后关联解除。通过在此模式下运行,主机(通常是 LAN 时间服务器)宣布其愿意同步,但不希望被对等方同步。
广播 (5):在此模式下运行的主机会定期发送消息,而不管对等体的可达性状态或层级如何。通过在此模式下运行,主机(通常是在高速广播介质上运行的 LAN 时间服务器)宣布其愿意同步所有对等体,但不会由任何对等体同步。
不过,在我看来,除了叶节点之外的任何主机都可能处于几种模式。例如,我可能有一个局域网,其中有三个 NTP 服务器,每个服务器都处于对称主动 (1) 模式。它们也将是众多 NTP 服务器之一的客户端 (3)公共层两台时间服务器最后,它们都将作为服务器(4)为众多本地客户提供服务。
重点是它们在同步期间只处于给定模式一小会儿吗?如果是这样,主机如何知道要切换?我在这里只寻求足够的深度来以有教养的方式讨论这个问题,而不是编写自定义时间服务器。
答案1
操作模式并不描述守护进程的一般运作方式,而是对关联的描述(通常是两台计算机之间的关联)。检查您列出的模式前面的段落:
除广播模式外,NTP 关联是在两个对等体交换消息并且其中一个或两个对等体创建并维护协议机器的实例(称为关联)时形成的。关联可以以五种模式之一运行
有关 ntpv4 中关联模式的信息,请参见: