NTP (network time protocol) ; 네트웍 시각 프로토콜

NTP는 네트웍으로 연결되어 있는 컴퓨터들끼리 클록 시각을 동기화시키는데 사용되는 프로토콜이다. NTP는 미국 델라웨어 대학의 데이빗 밀스에 의해 처음 개발되었으나, 이제는 인터넷 표준이 되었다. NTP는 컴퓨터 클록 시간을 1/1000 초 이하까지 동기화시키기 위해 협정 세계시각(UTC)을 사용한다.

컴퓨터 네트웍 전반에 걸쳐 정확한 시각을 유지하는 것은 여러 가지 이유로 중요한데, 그 이유는 심지어 수십 분의 1초 정도의 차이만으로도 큰 문제가 발생될 수 있기 때문이다. 예를 들어 협정 세계시에 기반을 두면, 지역적으로 분산된 업무처리 환경에서도 작업 순서가 정확히 유지될 수 있다. 보안 메커니즘 역시 네트웍 전체에 걸쳐 협정 세계시에 기반을 두고 있다. 여러 대의 컴퓨터가 하나의 파일 시스템을 수정하는 것 역시 정확히 동기화된 클록 시각에 의존해야 한다. 항공기의 운항 궤적을 그림으로 표시해 주는 항공관제 시스템에도 매우 정확한 시간측정이 요구되는 것은 당연하다.

협정세계 시각은 무선이나 위성 시스템 등, 여러 가지 방법으로 얻어진다. GPS나 정부기관 등과 같은 특수한 수신자들은 보다 높은 수준의 서비스를 이용하는 것이 가능하지만, 모든 컴퓨터에 수신기를 장착하는 것은 비경제적이며, 현실성이 없다. 그 대신에, 시각 서버로 지정된 컴퓨터들에만 수신기를 장착하고, 이 서버들과 네트웍으로 연결되어 있는 컴퓨터들의 클록 시각은 NTP와 같은 프로토콜을 사용하여 동기화하는 것이다.

협정세계시로부터 떨어져 있는 수준을 표시하기 위해 흔히 계층번호를 쓰는데, 0번 계층은 전용 송신기 또는 위성 위치추적 시스템으로부터 수신된 실제 시각인 무선 클록을, 1번 계층은 이 무선 클록과 직접 연결되어 있는 컴퓨터의 클록을, 2번 계층은 1번 계층으로부터 시각을 받은 컴퓨터 등으로 원천 협정 세계시로부터 멀수록 계층 번호가 커져 간다.

NTP라는 용어는, 프로토콜과 컴퓨터상에서 실행되는 클라이언트/서버 프로그램, 둘 모두에 대해 사용된다. 프로그램은 사용자에 의해 NTP 클라이언트, NTP 서버, 또는 둘 모두로 해석될 수 있다. NTP 클라이언트는 시각 서버에 정확한 현재 시각을 교환할 것을 요구한다. 이 교환의 결과를 통해, 클라이언트는 서버의 시각과의 차이를 이용하여 링크 지연시간을 계산할 수 있으며, 자신의 클록을 서버에 있는 클록과 일치하도록 조정할 수 있다. 하나의 규칙으로서, 처음 클록을 맞추기 위해서는 5~10분 동안 모두 6번의 시각 교환이 요구된다. 일단 시각 동기화가 끝나면, 클라이언트는 매 10분마다 메시지 교환을 통해 클록을 수정한다. 클록 동기화의 신뢰도 및 정확도를 높이기 위해, 여러 대의 서로 다른 서버와 다양한 네트웍 경로가 사용된다. 클라이언트/서버 동기화에 아울러, NTP는 브로드캐스트를 통한 컴퓨터 클록 동기화도 지원한다. NTP는 매우 높은 수준의 내고장성과 확장 가능성을 염두에 두고 설계되었다.


작성 : 02-08-15 수정 : 04-08-09
영어판(whatis.com)