대기 시간이란? | 대기 시간 문제를 수정하는 방법

네트워크 대기 시간은 데이터 패킷이 한 위치에서 다른 위치로 이동하는 데 걸리는 시간입니다. 대기 시간을 줄이는 것은 좋은 사용자 환경을 구축하는 데 있어 중요한 부분입니다.

학습 목표

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

  • 대기 시간이 무엇이며 그 원인이 무엇인지 이해하기
  • 네트워크 대기 시간, 대역폭, 처리량의 차이점 설명
  • 대기 시간을 줄이는 방법 알아보기

관련 콘텐츠


계속 알아보시겠어요?

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

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

글 링크 복사

대기 시간이란 무엇인가요?

대기 시간은 데이터가 네트워크의 한 지점에서 다른 지점으로 전달되는 데 걸리는 시간입니다. 뉴욕의 서버 A에서 런던의 서버 B로 데이터 패킷을 보낸다고 가정해 보겠습니다. 서버 A는 04:38:00.000 GMT에 패킷을 보내고 서버 B는 04:38:00.145 GMT에 패킷을 수신합니다. 이 경로의 대기 시간은 0.145초 또는 145밀리초의 두 시간 간의 차이입니다.

대부분의 경우 대기 시간은 사용자의 장치("클라이언트" 장치)와 데이터 센터 간에 측정됩니다.이 측정을 하면 개발자가 웹 페이지나 애플리케이션이 사용자에게 로드되는 속도를 이해하는 데 도움이 됩니다.

인터넷상의 데이터는 빛의 속도로 이동하지만, 인터넷 인프라 장비로 인한 거리와 지연의 영향으로 인해 대기 시간을 완전히 제거할 수는 없습니다. 그러나 대기 시간은 최소화할 수 있고 최소화해야 합니다. 대기 시간이 길면 웹 사이트 성능이 저하되고 SEO에 부정적인 영향을 미치며 사용자가 사이트나 애플리케이션을 완전히 떠나도록 만들 수 있습니다.

보안 개선
“상위 10가지” 공격 기법 방어

인터넷 대기 시간의 원인은?

네트워크 대기 시간의 주요 원인 중 하나는 거리, 특히 요청을 하는 클라이언트 장치와 해당 요청에 응답하는 서버 간의 거리입니다. 웹 사이트가 오하이오주 콜럼버스의 데이터 센터에서 호스팅되는 경우, 웹 사이트에서는 신시내티(약 100마일 거리)의 사용자로부터 5~10밀리초 이내에 요청을 상당히 빠르게 받게 됩니다. 반면에 로스 앤젤레스(약 2,200마일 거리)에서의 사용자의 요청은 도착하는 데 40~50밀리초에 가까운 시간이 걸립니다.

몇 밀리초의 증가는 많지 않은 것처럼 보일 수 있지만, 클라이언트와 서버가 연결을 설정하는 데 필요한 모든 앞뒤 통신, 페이지의 총 크기 및 로드 시간, 데이터가 통과하는 네트워크 장비 등의 문제로 인해 더욱 복잡해집니다. 클라이언트 요청 후 응답이 클라이언트 장치에 도달하는 데 걸리는 시간을 왕복 시간(RTT)이라고 합니다. RTT는 데이터가 양방향으로 이동해야 하므로 대기 시간의 두 배가 됩니다.

인터넷을 통과하는 데이터는 일반적으로 하나가 아니라 여러 네트워크를 통과해야 합니다.HTTP 응답이 통과해야 하는 네트워크가 많을수록 지연될 가능성이 높아집니다.예를 들어, 데이터 패킷은 네트워크 간에 교차할 때 인터넷 익스체인지 포인트(IXP)를 통과합니다.여기에서 라우터는 데이터 패킷을 처리하고 라우팅해야 하고, 때때로 라우터는 이를 더 작은 패킷으로 분할해야 할 수 있으며, 이 모든 것 때문에 RTT에 몇 밀리초가 추가됩니다.

네트워크 대기 시간, 처리량, 대역폭

대기 시간, 대역폭, 처리량은 모두 상호 연관되어 있지만, 모두 다른 대상을 측정합니다. 대역폭은 지정된 시간에 네트워크를 통과할 수 있는 최대 데이터 양입니다. 처리량은 지정된 기간 동안 실제로 통과하는 평균 데이터 양입니다. 처리량은 대기 시간 및 기타 요인의 영향을 받으므로 반드시 대역폭과 동일하지는 않습니다. 대기 시간은 시간 경과에 따라 다운로드되는 데이터의 양이 아니라 시간의 측정값입니다.

백서
웹 성능 부하 분산 최적화 모범 사례

대기 시간은 어떻게 줄일 수 있을까요?

콘텐츠 전송 네트워크(CDN)를 사용하는 것은 대기 시간을 줄이기 위한 주요 단계입니다. CDN은 정적 콘텐츠를 캐시하여 사용자에게 제공합니다. (Cloudflare CDN을 사용하면 Cloudflare Workers와 함께 동적 콘텐츠도 캐시할 수 있습니다.) CDN 서버는 여러 위치에 분산되어 있으므로 콘텐츠가 최종 사용자에게 더 가깝게 저장되고 최종 사용자에게 도달하기 위해 멀리 이동할 필요가 없습니다. 즉, 웹 페이지를 로드하는 데 시간이 덜 걸리므로 웹 사이트 속도와 성능이 향상됩니다.

대기 시간 이외의 다른 요인 때문에도 성능이 저하될 수 있습니다.웹 개발자는 렌더링 차단 리소스의 수를 최소화하고(예: JavaScript를 마지막으로 로드), 더 빠른 로딩을 위해 이미지를 최적화하고, 가능한 한 파일 크기를 줄일 수 있습니다.코드 최소화는 JavaScript 및 CSS 파일의 크기를 줄이는 한 가지 방법입니다.

특정 자산을 전략적으로 먼저 로드하여 인지된 페이지 성능을 향상할 수 있습니다. 사용자가 페이지 로드가 완료되기 전에도 페이지와 상호 작용을 시작할 수 있도록 페이지를 스크롤하지 않고 볼 수 있는 영역을 먼저 로드하도록 웹 페이지를 구성할 수 있습니다(스크롤하지 않고 볼 수 있는 부분은 사용자가 아래로 스크롤하기 전에 브라우저 창에 표시되는 내용을 나타냄). 웹 페이지는 지연 로딩이라는 기술을 사용하여 필요한 경우에만 자산을 로드할 수도 있습니다. 이러한 접근 방식은 실제로 네트워크 대기 시간을 개선하지는 않지만, 페이지 속도에 대한 사용자의 인식을 개선합니다.

사용자는 자체 대기 시간을 어떻게 해결할 수 있을까요?

때때로 네트워크 "대기 시간"(느린 네트워크 성능)은 서버 측이 아닌 사용자 측의 문제로 인해 발생합니다. 대역폭이 웹 사이트 성능을 보장하지는 않지만, 느린 네트워크 성능이 지속해서 발생하는 경우 소비자는 언제든 더 많은 대역폭을 구매할 수 있습니다. WiFi 대신 이더넷으로 전환하면 인터넷 연결이 더 일관되고 일반적으로 인터넷 속도가 향상됩니다. 또한 사용자는 펌웨어 업데이트를 정기적으로 적용하고 필요에 따라 장비를 완전히 교체하여 인터넷 장비가 최신 상태인지 확인해야 합니다.