Wikipedia에서는 NTPv4가 실제로 128비트 타임스탬프를 지원한다고 주장합니다.RFC5905"NTP 날짜 형식"이라는 128비트 형식을 정의합니다.분파. 6. RFC는 말한다
충분한 저장 공간과 단어 크기를 사용할 수 있는 경우 128비트 날짜 형식을 사용하십시오.
그러나 공용 NTP 서버에 128비트 타임스탬프를 보내면 응답이 없습니다. 또한,분파. 7.34개의 타임스탬프 필드를 모두 64비트로 정의합니다. Y2k38 오류를 방지하기 위해 128비트 타임스탬프를 사용하여 NTP를 올바르게 구현하고 싶습니다. 서버가 전체 128비트 타임스탬프로 응답하도록 하려면 어떻게 해야 합니까?
답변1
오래된 질문이지만 여기서도 같은 것을 찾고 있었습니다. RFC5905 페이지 13에서는 확장 v4 형식에 여전히 초에 대한 32비트 값이 포함되어 있지만 에포크에는 부호 있는 32비트 값이 포함되어 있음을 자세히 설명합니다. 128비트 날짜 형식의 초 필드는 연대 내의 오프셋이므로 136년이 훨씬 넘는 날짜를 처리할 수 있습니다. 황금시대(1970) 이후 경과된 시간 = era*(2^32) +era_offset(32비트 초).