Time To Live(TTL)란? | TTL의 정의

Time To live(TTL)는 패킷이 라우터에 의해 폐기될 때까지 네트워크 내부에 존재하도록 설정된 시간 또는 "홉"의 양을 나타냅니다. TTL은 또한 CDN 캐싱과 DNS 캐싱 등 다른 컨텍스트에서도 사용됩니다.

학습 목표

이 글을 읽은 후에 다음을 할 수 있습니다:

  • Time-to-Live(TTL)의 정의
  • 네트워킹에서 TTL이 사용되는 방법 설명
  • TTL을 사용하는 몇 가지 다른 컨텍스트를 알아보기

관련 콘텐츠


계속 알아보시겠어요?

인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!

Cloudflare가 개인 데이터를 수집하고 처리하는 방법은 Cloudflare의 개인정보 취급방침을 참조하세요.

글 링크 복사

Cloudflare CDN을 사용하여 성능 향상

네트워킹에서 Time-to-Live(TTL)란?

Time to live(TTL)는 패킷이 라우터에 의해 폐기될 때까지 네트워크 내부에 존재하도록 설정된 시간 또는 "홉"의 양을 나타냅니다. TTL은 또한 CDN 캐싱과 DNS 캐싱 등 다른 컨텍스트에서도 사용됩니다.

TTL은 어떻게 작동할까요?

정보 패킷이 생성되어 인터넷을 통해 전송되면 라우터에서 라우터로 무한정 전달될 위험이 있습니다. 그럴 가능성을 완화하기 위해 패킷은 Time-to-Live(TTL) 또는 홉 제한에 따라 만료되도록 설계되었습니다. 패킷 TTL은 패킷이 유포되는 기간을 결정하는 데 유용할 수 있으며, 보내는 사람은 인터넷을 통해 패킷 경로에 대한 정보를 받을 수 있습니다.

각 패킷에는 네트워크를 통해 얼마나 더 계속 이동해야 하는지를 결정하는 숫자 값을 저장하는 위치가 있습니다. 라우터는 패킷을 수신할 때마다 TTL 수에서 하나를 빼고 네트워크의 다음 위치로 전달합니다. 뺄셈을 한 후 TTL 수가 0이 되면 라우터는 패킷을 폐기하고 ICMP 메시지를 원래 호스트로 다시 보냅니다.

일반적으로 사용되는 네트워크 명령 ping 및 traceroute는 모두 TTL을 사용합니다. traceroute 명령을 사용하면 점점 더 높은 순차적 TTL을 가진 패킷 스트림이 인터넷을 통해 대상으로 전송됩니다. 연결의 각 단계는 패킷 중 하나의 종점이므로 각 위치에서는 패킷을 폐기한 후 발신자에게 ICMP 메시지를 반환합니다. 그런 다음 ICMP 메시지가 발신자에게 반환되는 데 걸리는 시간이 네트워크를 따라 각 연속 홉에 도달하는 데 걸리는 시간을 결정하는 데 사용됩니다.

ICMP traceroute 다이어그램

TTL이 사용되는 기타 상황은?

패킷이 인터넷을 통해 이동하는 경로를 추적하는 것 외에도 time-to-live(TTL)는 일정 기간 동안 정보를 캐싱하는 컨텍스트에서 사용됩니다. 각각의 시간이 가변적일 수 있는 라우터 간의 홉 시간을 측정하는 대신 일부 네트워킹 사용 사례는 보다 전통적인 방식으로 작동합니다.

Cloudflare의 CDN과 같은 CDN은 일반적으로 TTL을 사용하여 원본 서버에서 새 복사본을 가져오기 전에 캐시된 콘텐츠를 CDN 에지 서버에서 얼마나 오래 제공해야 하는지 결정합니다. 원본 서버 풀 사이의 시간을 적절하게 설정하면 CDN은 요청을 원본으로 계속 전파하지 않고 업데이트된 콘텐츠를 제공할 수 있습니다. 이처럼 최적화하면 CDN은 원본에서 필요한 대역폭을 줄이면서 사용자에게 더 가까운 곳에서 콘텐츠를 효율적으로 제공할 수 있습니다.

DNS 레코드의 컨텍스트에서, TTL은 숫자 값으로, 이 숫자값에 따라 권한 있는 DNS 서버에 연결하고 레코드의 새 복사본을 가져오기 전에 DNS 캐시 서버가 DNS 레코드를 제공할 수 있는 기간이 결정됩니다.