NTP (Network Time Protocol)

1. NTP (Network Time Protocol)의 개념 및 특징

개념특징
컴퓨터 시스템 간 시간 동기화를 위해 GPS나 원자 시계를 기준으로 시간을 조정하여 밀리초(1/1000초) 단위까지 시간을 맞추는 네트워크 시간 동기화 프로토콜– NTP 서버 기준 NTP 클라이언트 시간 동기화
– 기준 장비에서 일반 호스트까지 계층 구조
– UDP 123 포트 사용, 1/1000초 단위 동기화
  • 최근 사용하는 NTPv4는 RFC 5905에 정의되어 있으며, Application, Operating System, Database, Network 등 다양한 시스템의 기준으로 사용하는 시간을 네트워크를 통해 동기화

 

2. NTP 계층 구조와 시간 동기화 메커니즘

(1) NTP 계층 구조와 역할

계층역할
Stratum 0GPS, 원자 시계 등 시간의 기준이 되는 장비
Stratum 1Stratum 0와 직접 시간을 동기화하는 서브 장비
Stratum 2, 3Stratum 1의 기능을 트리 구조로 계층화
  • Stratum 2, 3는 Stratum1에 대한 부하 및 병목 현상을 방지하기 위해 계층 구조 사용

(2) NTP 기반 시간 동기화 메커니즘

  • NTP 서버와 클라이언트 간 송/수신 타임스탬프, Delay Time, Offset을 반영하여 시간 동기화
구성요소역할
t0– 클라이언트에서 요청 패킷이 송신된 타임스탬프
t1– 서버에서 요청 패킷이 수신된 타임스탬프
t2– 서버에서 응답 패킷이 송신된 타임스탬프
t3– 클라이언트에서 응답 패킷이 수신된 타임스탬프
Delay Time– NTP 메시지 송수신에 소요된 왕복 지연 시간
– 산출식: δ = (t3 – t0) – (t2 – t1)
Offset– 서버의 측정 시간 대비 클라이언트의 오차 시간
– 산출식: θ = {(t1 – t0) + (t2 – t3)} / 2
  • NTP 클라이언트는 NTP 서버와의 정확한 시간 동기화를 위해 Delay Time과 Offset을 반영하여 점진적 시간 보정

 

3. 주요 NTP 서버 주소 및 NTP 서버 제공 기관

구분NTP 서버 주소NTP 서버 제공 기관
국내time.kriss.re.kr한국표준과학연구원(KRISS)
time.bora.netLG유플러스
ntp.kornet.netKT
해외time.nist.gov미국 국립표준기술연구소(NIST)
time.windows.comMicrosoft
time.google.comGoogle
  • 리눅스 시스템에서 ntpdate, ntpd, chronyd 등의 명령을 통해 상기 NTP 서버와 시간 동기화 가능

 

[참고]

  • HPE, How NTP works

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^