네트워크 시간 프로토콜이란 무엇입니까?
네트워크 시간 프로토콜은 네트워크의 여러 컴퓨터간에 시간을 정확하게 동기화하는 수단입니다. 대부분의 컴퓨터 시계는 매일 최소 1 초의 시간을 잃습니다. 이는 일반 사용자에게는 그다지 중요하지 않습니다. 많은 보안 및 이벤트 로깅 시스템은 인터넷을 포함한 여러 네트워크의 컴퓨터를 추적해야합니다. 이러한 시스템은 네트워크 시간 프로토콜과 연결된 컴퓨터의 클럭 동기화에 의존합니다. 이 프로토콜은 국제 원자 시간 표준을 유지하는 서버에서 클라이언트의 정확한 시간을 자주 업데이트합니다.
NTP의 약어로도 알려진 Network Time Protocol은 1980 년대 후반에 표준으로 처음 설정되었습니다. 인증, 알고리즘, 정밀도 및 외부 동기화를 개선하기 위해 1990 년대 전체에 걸쳐 몇 가지 개정이 이루어졌습니다. 2010 년 NTP 버전 4는 RFC (Request For Comments) 5905의 IETF (Internet Engineering Task Force)에 의해 제안되었습니다. 버전 4에는 공개 키 암호화, 나노초 시간 정밀도 및 시간 서버를 자동으로 찾는 방법이 포함됩니다. 또한 새로운 하드웨어 참조 클록 및 운영 체제에 대한 지원뿐만 아니라 개선 된 알고리즘 및 정확도도 포함합니다.
소규모 로컬 네트워크의 사용자는 전자 메일 또는 파일 수정 타임 스탬프가 고장난 경우에만 약간의 성가심을 느낄 수 있습니다. 그러나 인터넷에 많은 사용자와 공유 리소스가있는 네트워크는 이로 인해 크게 영향을받습니다. 금융 거래 데이터베이스, 산업 제어 애플리케이션 및 네트워크 모니터링 소프트웨어의 경우, 거래를 기록하는 시스템뿐만 아니라 데이터를보고하는 모든 컴퓨터에서 하루 24 시간 정확한 시간이 일반적으로 중요합니다. 네트워크 시간 프로토콜 및이를 지원하는 국제 시간 서버는 이러한 요구를 해결할 수 있습니다.
네트워크 관리자는 시간 서버에서 수동으로 각 클라이언트의 시간을 매일 업데이트 할 수 있습니다. 시스템을 다시 부팅 할 때마다 시간을 다시로드하도록 구성 할 수도 있습니다. 그러나 온도 및 운영 체제 문제를 비롯한 많은 요인으로 인해 시간마다 시간이 이동하는 것이 중요합니다. 가장 좋은 해결책은 일반적으로 네트워크 시간 프로토콜을 사용하여 하루에 여러 번 매우 작은 단위로 각 시계를 자동으로 재설정하는 것입니다. 이 방법을 사용하면 시스템과 사용자는 상대적으로 크고 갑작스런 앞뒤로 도약하여 "놀랐습니다".
네트워크 시간 프로토콜을 사용하는 클라이언트는 인터넷 기반 서버 또는 유선 외부 시간 소스에서 정확한 시간을 얻을 수 있습니다. 궁극적으로 두 소스 모두 국제 시간 서버에서 UTC (협정 세계시)를 얻습니다. 유선 소스는 특수한 무선 신호를 통해 직접 또는 간접적으로 수신 할 수 있습니다. 네트워크 소스는 일반적으로 NTP 소프트웨어를 실행하는 여러 계층의 서버를 통해 간접적으로 얻습니다. 서버가 원자 시계에 직접 연결된 시간은 거의 없지만 전 세계 수만 대의 서버가 시간을 로컬 시스템에 전달합니다.
각 NTP 클라이언트에서 실행되는 네트워크 시간 관련 소프트웨어는 시계를 매우 정확하고 규칙적으로 업데이트합니다. 클라이언트가 인터넷에 연결되어 있지 않으면 NTP 알고리즘은 과거 성능을 기준으로 현재 시간을 추정합니다. NTP의 모든 기능이 필요하지 않은 시스템은 SNMP (Simple Network Time Protocol)라고하는 제거 된 버전을 사용할 수 있습니다.