요약

  • 1985년에 세 개의 서로 다른 문서가 네트워크 시각을 다루었습니다. RFC 958은 NTP 메시지를 기술했고, RFC 956은 시계를 선택하는 알고리즘을 논의했으며, RFC 957은 실험을 기록했습니다.
  • 결과는 링크와 조건에 따라 달랐습니다. 밀리초 단위의 정밀도에 도달하려면 많은 샘플이 필요했으며, 이는 인터넷의 모든 시계에 대한 보장이 아니었습니다.

윤초는 '시각'과 '동기화'의 차이를 드러냈다

실험은 구체적인 어려움에서 시작되었습니다. 측정값이 지연 자체를 측정해야 하는 네트워크를 거쳐 컴퓨터에 도착하는 것이었습니다. 윤초를 전후해서 독자는 공식 시각의 변화를 패킷 지연이나 로컬 시계 오류와 혼동해서는 안 되었습니다. NTP 문서들은 이러한 작업을 메시지, 알고리즘, 시험으로 나누었습니다.

1985년 9월에 발표된 RFC 958은 NTP 메시지의 표현과 형식을 정의했습니다. 패킷은 시각 이상의 정보를 실었습니다. 기준 시계를 식별하고 정밀도, 추정 오차, 로컬 시계의 드리프트를 알려주었습니다. 네 개의 타임스탬프가 요청의 전송, 서버 도착, 응답 전송, 클라이언트 반환을 기록했습니다. 이를 통해 피어 간에 오프셋과 왕복 지연을 추정할 수 있었습니다. 그러나 프로토콜은 여러 시계 중에서 선택하거나 관측값을 필터링하는 알고리즘은 명시하지 않았습니다. 그 부분은 이후의 연구로 남겨졌습니다.

실제 시계들은 하드웨어, 소프트웨어, 라디오 수신, 네트워크 지연, 운영상의 결함 등 다양한 이유로 서로 달라졌습니다. RFC 956은 동기화를 통계적 추정 문제로 다루었습니다. 관측값을 비교하고, 이상값을 식별하고, 어느 시각이 가장 신뢰할 만해 보이는지 계산하는 것이었습니다. 단 한 번의 측정으로는 시계를 평가할 수 없었습니다.

링크는 일반 데이터도 함께 실었다

RFC 957은 실험적인 측면을 기록합니다. 이 문서는 DCnet 시계의 설계와 호스트, 시각 기준, 여러 종류의 링크를 대상으로 한 시험을 기술합니다. 일부 시험은 일반 트래픽도 함께 운반하는 경로를 통해 동기화된 시계를 관측했습니다. 관심사는 실험실에서의 고립된 교환을 측정하는 것이 아니라, 시각 메시지와 데이터 사이에서 네트워크를 공유할 때의 영향을 이해하는 것이었습니다.

1985년 6월 말과 7월 초의 일련의 시험은 여섯 대의 호스트, 세 개의 기준 시계, 여러 개의 링크를 대상으로 했습니다. 날짜는 의도적으로 선택되었습니다. 시험은 미국 국립표준국(National Bureau of Standards)의 시각 전송에 포함된 윤초와 겹치도록安排되었습니다. 설계는 상용 전력의 주파수가 기준이 될 수 있는지도 평가했지만, 이를 관측하는 것과 로컬 시계를 조정하는 데 사용하는 것을 구분했습니다.

이 보고서는 그 구성을 인터넷 전체에 대한 보편적인 노트로 바꾸지 않습니다. 결과는 호스트와 링크에 따라 달랐습니다. 결론은 조건부입니다. 시험된 ARPANET 경로에서는 충분한 샘플이 있을 때 동기화가 몇 밀리초 단위에 도달할 수 있었습니다. RFC 956도 자체 시험 데이터에서 수십 밀리초 단위의 결과를 보고하며 많은 샘플의 중요성을 강조합니다. 이는 서비스 약속이 아니라 실험적 결론입니다.

세 개의 문서, 세 가지 유형의 증거

각 문서는 서로 다른 질문에 답합니다. RFC 958은 피어가 무엇을 교환하는지 말하고, RFC 956은 잡음이 많은 관측값을 해석하는 방법을 보여주며, RFC 957은 특정 구현과 시험 구성의 동작을 보고합니다. 이를 혼동하면 패킷 형식을 알고리즘으로, 실험을 보편적 운영 증명으로 바꾸어 버리게 됩니다.

1988년에 RFC 1059는 NTP를 아키텍처, 프로토콜, 알고리즘 집합으로 기술하며 RFC 958 이후 크게 발전했음을 기록했습니다. 이후의 통합은 1985년 문서들이 무엇을 열어 두었는지 파악하는 데 도움이 됩니다. 다만 각 시스템이 다음 버전을 언제 채택했는지는 알려주지 않습니다.

역사적 성취는 완벽한 시계가 아니라 증거의 사슬이었습니다. 메시지는 시각 데이터를 운반했고, 알고리즘은 기준을 비교하고 측정값을 필터링했으며, 실험은 실제 경로에서 결과를 측정했습니다. 오래된 정밀도 측정을 인용할 때는 경로, 기준, 샘플 수, 조건을 함께 유지하십시오. "패킷이 시각을 알려주었다"는 것이 "네트워크가 시계를 동기화했다"와 동치는 아닙니다.

출처