问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

什么是生存时间(TTL)? DNS TTL 含义

创作时间:
作者:
@小白创作中心

什么是生存时间(TTL)? DNS TTL 含义

引用
1
来源
1.
https://www.fortinet.com/cn/resources/cyberglossary/what-is-ttl

生存时间(TTL)是网络技术中的一个重要概念,它决定了数据包在网络中的存活时间以及内容在DNS和CDN缓存中的保留时长。本文将深入解析TTL的工作原理及其在DNS和CDN中的具体应用。

什么是 TTL? DNS 和 CDN 的含义

生存时间(TTL)是指数据包在被路由器丢弃之前可能通过网络的时间长度或“跃点”,或者内容或查询在 DNS 和 CDN 缓存中保留多长时间。

当您了解 TTL 的含义时,您必须区分域名系统(DNS) TTL 和内容交付网络(CDN) TTL。DNS TTL 指示DNS 解析器在请求新查询之前缓存查询所需的时间。此信息存储在处理 TTL 的递归或本地解析器的缓存中,直到它必须收集新的详细信息。

CDN TTL的不同之处在于它指的是内容缓存。这包括在 CDN 代理上保留网站上的资源副本,以加快页面加载速度并减少消耗的带宽量。

DNS TTL以时间表示,因为它决定了解析器收集网站详细信息之前的时长。例如,如果 Fortinet.com 的 DNS TTL 设置为 900 秒(15 分钟),解析器将每 15 分钟收集一次有关 Fortinet.com 的详细信息。在这 15 分钟内,每个访问 Fortinet.com 的用户都会看到完全相同的内容。如果 2,000 名用户在中午 12:00 至晚上 12:15 之间访问 Fortinet.com,他们都会看到相同的文本、图像、链接等。

但是,即使更新是在中午 12:10 在网站上进行的,它也不会生效,直到 DNS TTL 在中午 12:15 返回为网站收集更多详细信息。因此,在中午 12:16 访问 Fortinet.com 的用户会看到更新的内容,但中午 12:14 访问的用户会看到中午 12:00 到中午 12:15 之间出现的内容。

点击查看大图

TTL 的工作原理是什么?

TTL 的基本功能是管理与 DNS 请求相关的信息包。当通过互联网创建和传输其中一个数据包时,它有可能永远从路由器持续传输到路由器。为了防止这种情况发生,每个数据包都有特定的 TTL 或跃点限制。还可以检查数据包的 TTL 日志,以获取有关数据包在旅行过程中如何在互联网上移动的信息。

在每个数据包中,都有一个存储 TTL 值的指定位置。这是一个数值,它表示数据包应在互联网上移动多长时间。当路由器收到数据包时,它会从 TTL 计数中夺走一个单元,然后将其发送到网络中的下一个目的地。这种情况会持续发生,直到数据包中的 TTL 计数一直下降到零。

一旦过期,路由器就会清除数据包,并将互联网控制消息协议(ICMP)消息传输到数据包来源的主机。ICMP 是一种协议,允许设备相互通信,并传达有关数据包流的错误。

为了说明 TTL 的工作原理,它有助于了解跟踪路由如何使用它,特别是互联网协议版本 6(IPv6)。IPv6 是指用于识别端点的 128 位字母数字字符串 IP 地址。对于 IPv6,TTL 是指数据包在导致错误通过 ICMP 发回之前被允许跳转的跳转限制或停止次数。

这允许使用 TTL 收集有关数据包如何通过互联网的信息。使用传输控制协议/互联网协议(TCP/IP),数据包通常不会在从源到目的地的过程中以直线传输。它们从一个节点反弹到另一个节点,最终到达指定的端点。

跟踪用于检查数据包通过互联网旅行时从一个地方到另一个地方需要多长时间。在执行路由跟踪命令期间,会沿路径发送数据包流。每个数据包的 TTL 值比其之前的 TTL 值多一个。这意味着它可以更远一步,而不会使用 ICMP 发送错误。通过 ICMP 发送的反馈用于确定每个数据包在到达目的地时跳到网络上每个位置所需的时间。

DNS TTL 的用途是什么?

DNS TTL 对于经常更改其网页内容的网站特别有用。如果 TTL 较低,网站可以更频繁地接收最新更新。例如,如果一家名为 ABC Widgets 的虚构公司拥有一个名为 GetWidgets.com 的网站,并且它的 TTL 值为 3,600 秒(一小时),那么它将每小时收到一次更新。但是,如果 GetWidgets.com 执行频繁更新,它可能会调整 TTL 值,使其更新更频繁。

TTL 管理在优化客户的用户体验时特别有用。在 GetWidgets.com 示例中,公司可能需要持续添加产品,尤其是在产品在繁忙的销售季节崛起时。

例如,他们的员工可能会每天为新小组件上传产品描述、图像和视频。如果他们的 TTL 保持在 3,600 秒,在线购物者将不得不等待一个小时才能看到最新的可用产品。但是,如果他们缩短了 TTL 时间,网站客户将更频繁地更新,从而更准确地查看可用的小组件。

另一方面,如果每个产品页面在获得网站批准之前必须经过仔细的审查流程,ABC Widgets 可能希望调整 TTL,以便留出完成每次审查所需的时间。

DNS TTL 也很有用,因为它为用户提供了网站的缓存版本。如果组织的网站有很多内容,并且需要很长时间才能加载,缓存过程可以使用户更容易访问内容,因为它存储在缓存中。这使得大量用户仍然可以轻松访问大型网站。

由于 DNS TTL 管理网站的缓存,组织还可以根据其使用的服务器的限制,使用它来优化用户体验。缓存通过将网站版本存储在最终用户易于访问的层中来减轻中央服务器的负担。

如果贵公司的服务器扩展到最大值,您可以增加 DNS TTL,使其发送新版本网站的频率降低。这样,服务器只需要经常推出整个站点的更新版本。在这种情况下,DNS TTL 将允许服务器有时间“休息”,然后才能获得网站的新副本。

相反,如果贵组织的网站具有对客户至关重要的交互式应用程序编程接口(API),则您可能需要调整 TTL,以从用户的角度提高网站的性能。在某些情况下,较低的 TTL 值可能会产生更好的结果,因为用户更频繁地获得网站的更新版本。

例如,如果您使用雅虎金融 API,您可能希望用户查看网站上提到的公司的最新财务信息。通过较低的 DNS TTL 设置,用户可以访问最近的公司数据。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号