사용자 도구

사이트 도구


컴퓨터:network:ntp

NTP

Network Time Protocol

1. 정의

NTP는 패킷 교환, 가변 지연 데이터 네트워크를 통해 컴퓨터 시스템 간의 시간 동기화를 위한 네트워크 프로토콜입니다. 1985년 이전에 시작된 이 프로토콜은 현재까지 사용되는 가장 오래된 인터넷 프로토콜 중 하나입니다.

2. NTP가 왜 중요한가?

디지털 환경에서 '정확한 시간'은 단순한 시계 이상의 의미를 가집니다.

  • 로그 파일의 무결성: 여러 장비에서 발생하는 로그의 발생 순서를 정확히 파악하여 시스템 오류나 보안 침입을 분석할 수 있습니다.
  • 보안 및 인증: 많은 인증 프로토콜(예: Kerberos, SSL/TLS 인증서, OTP)은 클라이언트와 서버 간의 시간 오차가 일정 범위(보통 5분) 이내여야 정상 작동합니다.
  • 파일 시스템 동기화: 네트워크 공유 파일(NFS, SMB)이나 분산 데이터베이스에서 데이터의 선후 관계를 결정하는 척도가 됩니다.

3. 계층 구조: Stratum

NTP는 계층적인 구조를 사용하여 시간의 정확도를 관리하며, 이를 Stratum이라고 부릅니다.

  • Stratum 0: 원자시계, GPS, 라디오 시계 등 시간을 직접 생성하는 장치입니다. 네트워크에 직접 연결되지 않습니다.
  • Stratum 1: Stratum 0 장치와 직접 연결된 서버로, 네트워크 시간의 원천 역할을 합니다.
  • Stratum 2: Stratum 1 서버로부터 동기화하며, 일반적인 네트워크 장비들이 주로 참조하는 계층입니다.
  • Stratum 15: 동기화가 가능한 마지막 계층이며, Stratum 16동기화되지 않은 상태를 의미합니다.

4. 작동 원리 (Offset & Jitter)

NTP는 단순히 시간을 복사해오는 것이 아니라, 복잡한 알고리즘을 통해 최적의 시간을 계산합니다.

  • Round-trip Delay: 신호가 오가는 시간을 계산하여 네트워크 지연만큼의 오차를 보정합니다.
  • Clock Offset: 서버와 클라이언트 간의 실제 시간 차이를 측정합니다.
  • Jitter: 네트워크 지연의 변동 폭을 분석하여 동기화의 안정성을 확보합니다.

5. 기술적 특성

  • 포트(Port): UDP 포트 123번을 사용합니다.
  • 방식: 일반적으로 클라이언트/서버 모델을 사용하지만, 대규모 네트워크에서는 멀티캐스트나 브로드캐스트 방식을 사용하기도 합니다.
  • 정확도: 공용 인터넷상에서는 수십 밀리초(ms) 이내, 쾌적한 로컬 네트워크(LAN) 환경에서는 1밀리초 미만의 정밀도를 유지할 수 있습니다.
로그인하면 댓글을 남길 수 있습니다.

[공지]회원 가입 방법
[공지]글 작성 및 수정 방법

컴퓨터/network/ntp.txt · 마지막으로 수정됨: 저자 정승환