Time to Live(TTL)とは?| TTL定義

Time to Live(TTL)とは、ルーターによって破棄される前にネットワーク内にパケットが存在するように設定されている時間または「ホップ」のことです。TTLは、CDNキャッシュやDNSキャッシュなどの他のコンテキストでも使用されます。

Share facebook icon linkedin icon twitter icon email icon

Time-to-Live

学習目的

この記事を読み終えると、以下のことができます。

  • Time to Live(TTL)の定義
  • ネットワーキングでのTTLの使用方法を説明
  • TTLを使用する他のいくつかのコンテキストについて

ネットワークのTime to Live(TTL)とは?

Time to Live(TTL)とは、ルーターによって破棄される前にネットワーク内にパケットが存在するように設定されている時間または「ホップ」のことです。TTLは、CDNキャッシュやDNSキャッシュなどの他のコンテキストでも使用されます。

TTLの仕組みとは?

情報のパケットが作成され、インターネットを介して送信される場合、ルーターからルーターへ無期限に通過し続けるリスクがあります。この可能性を軽減するために、有効期限またはホップ制限と呼ばれる有効期限でパケットが設計されています。パケットTTLは、パケットが循環している時間を判断するのにも役立ち、送信者がインターネットを介したパケットのパスに関する情報を受信できるようにします。

それぞれのパケットには、ネットワーク内を移動し続ける時間を決定する数値を格納する場所があります。ルーターは、パケットを受信するたびに、TTLカウントから1を引き、それをネットワーク内の次の場所に渡します。減算後、TTLカウントがゼロに等しい場合、ルーターはパケットを破棄し、 ICMPメッセージを送信元ホストに送り返します。

よく使用されるネットワークコマンドpingとtracerouteは両方ともTTLを使用します。 tracerouteコマンドを使用すると、順次TTLがますます高くなるパケットのストリームがインターネット経由で宛先に送信されます。接続に沿ったそれぞれのステップはいずれかのパケットの最後の終点であるため、それぞれの場所はパケットを破棄した後にICMPメッセージを送信者に返します。 ICMPメッセージが送信者に戻るまでにかかる時間を使用して、ネットワーク上の連続するそれぞれのホップに到達するのにかかる時間を決定します。

ICMP traceroute diagram

TTLは他のどのような状況で使用されますか?

インターネット上でパケットが取るルーティングをトレースすることとは別に、有効期間は、一定期間情報をキャッシュするコンテキストで使用されます。ルーター間のホップで時間を測定する代わりに、それぞれのルーターはさまざまな時間を費やすことができるため、一部のネットワーキングのユースケースはより伝統的な方法で動作します。

CloudflareのCDNなどのCDNは、通常、TTLを使用して、キャッシュされたコンテンツをCDNエッジサーバーから提供する時間を決定し、その後、新しいコピーが配信元サーバーから取得されます。配信元サーバーのプル間隔を適切に設定することにより、CDNは、リクエストが配信元に継続的に伝達することなく、更新されたコンテンツを提供できます。この最適化により、CDNは、配信元から必要な帯域幅を削減しながら、ユーザーにより近いコンテンツを効率的に提供できます。

DNSレコードのコンテキストでは、TTLは、権威DNSサーバーに到達してレコードの新しいコピーを取得する前に、DNSキャッシュサーバーがDNSレコードを提供できる期間を決定する数値です。