0

我已经使用 JmDNS 有一段时间了。我可以将它用于我的应用程序。每件事对我来说都很好(我有“播音员”机器和“监听”机器,后一种机器可以看到其他设备并发现它们的信息)。

确实,我已经设法使用了 JmDNS jar 文件,但我没有完全理解这个文件中发生了什么。现在我想知道使用 JmDNS 对网络流量的影响。我查阅了文档,但无法发现常量的含义,例如QUERY_WAIT_INTERVAL,PROBE_THROTTLE_COUNT等。

我想知道播音员机器发送服务公告的默认频率。

我还注意到 DNS_TTL 的描述如下:“标准的默认 TTL 设置为 1 小时,因此一条记录将在任何侦听机器的缓存中保留一个小时,而无需再次 ping 服务器”。

我知道现在是服务的生存时间留在 DNS 缓存中,但我无法理解“清除服务器”的意图。这是否意味着当 DNS_TTL 过期时,听众必须向播音员询问服务?如果是这样,为什么需要让播音员每 1 秒(ANNOUNCE_WAIT_INTERVAL= 1000 毫秒)宣布其服务?

我感到很困惑。

4

1 回答 1

0

域名系统的工作方式基本上非常简单。从根本上说,它是一个树状系统,从根名称服务器开始。然后这些将名称空间委托给下一个级别。该级别依次代表下一个级别,依此类推。例如.是根,它委托给.com.,然后可以委托出去example.com.。(是的,该尾随.实际上是域名的一部分,尽管您几乎不必使用或查看它。

当您加载网页时,通常会加载数百个元素。这是每个图像、每个JS文件、每个CSS文件等。让您的计算机多次请求同一域到 IP 解析一个页面会使加载时间难以忍受,并且还会在名称服务器上产生大量不必要的流量。因此DNS缓存。这TTL是它缓存的时间。如果它设置为 24 小时,那么当您获得该解决方案的答案时,这就是您在提出另一个请求之前可以坚持多长时间。

您所说的宣布是名称服务器基本上宣布它负责这些域。您希望它不断声明,以便其他名称服务器知道去哪里获取正确(权威)数据。

节流是许多领域和应用程序中使用的术语,意味着您正在限制您的流量,使其不会超载。

DNS一旦你掌握了基础知识,实际上很容易理解。

这里有一些链接可以帮助您更好地掌握这一切:

于 2012-10-16T20:31:25.057 回答