NTP
"Network Time Protocol"의 약자입니다. NTP는 여러 시스템에서 컴퓨터 시계를 동기화하는 데 사용되는 프로토콜입니다. 근거리 통신망과 인터넷을 통한 동기화를 지원합니다.
두 개 이상의 시스템의 타임스탬프를 일치시키는 일은 간단해 보일 수 있지만, 여러 단계가 필요합니다. 모든 네트워크에는 어느 정도의 지연 시간이 있으므로 요청과 응답 사이의 지연을 고려해야 합니다. NTP는 클라이언트-서버 모델을 사용하며 다음 네 가지 값을 이용해 왕복 지연 시간을 계산합니다.
위의 1과 2 사이의 시간을 3과 4 사이의 시간에 더하면 전체 왕복 지연 시간이 계산됩니다. 이 지연 시간의 절반을 빼면 원격 서버의 정확한 시간을 추정할 수 있으며, 일반적으로 몇 밀리초 이내의 오차가 발생합니다.
네트워크 상태는 NTP 패킷을 전송하거나 수신하는 데 걸리는 시간에 영향을 줄 수 있으므로, 한 번의 요청만으로는 정확한 결과를 얻지 못할 수 있습니다. 따라서 여러 NTP 요청을 보내고 지연 시간을 평균 내 더 정확한 타임스탬프를 만드는 것이 일반적입니다. 여러 컴퓨터에서 타임스탬프를 평균 내 네트워크의 모든 컴퓨터에 일관된 시간을 적용할 수도 있습니다. 여러 시계를 한 번에 동기화할 때 NTP는 각 시스템이 시간 소스가 되는 피어 투 피어 프로토콜로 사용됩니다.
NTP 예
네트워크 시간 프로토콜은 여러 시간 동기화 유틸리티에서 사용되며, 여기에는 Windows와 macOS에 기본으로 포함된 도구도 있습니다. Windows에서는 날짜 및 시간 제어판에 "인터넷 시간" 기능이 있으며, 이 기능은 NTP를 사용해 시간 서버에서 현재 시간을 가져옵니다. macOS에서는 "날짜 및 시간 자동으로 설정"이 선택되어 있을 때 날짜 및 시간 시스템 환경설정에서 NTP를 사용해 현재 시간을 가져옵니다. Windows와 macOS는 모두 Simple Network Time Protocol(SNTP)이라는 간소화된 버전의 NTP를 사용합니다.
지식 테스트하기
