13.3. HW 타임스탬프링이 있는 Chrony


하드웨어 타임스탬프는 일부 NIC(Network Interface Controller)에서 지원되는 기능으로, 수신 및 발신 패킷의 정확한 타임스탬프를 제공합니다. NTP 타임스탬프는 일반적으로 시스템 클럭을 사용하여 커널 및 chronyd 에 의해 생성됩니다. 그러나 HW 타임스탬프ing이 활성화되면 NIC는 자체 클럭을 사용하여 패킷이 링크 계층 또는 물리적 계층을 입력하거나 나가는 경우 타임스탬프를 생성합니다. NTP 와 함께 사용하면 하드웨어 타임스탬프가 동기화의 정확도를 크게 향상시킬 수 있습니다. 최상의 정확도를 위해 NTP 서버와 NTP 클라이언트는 하드웨어 타임스탬프를 사용해야 합니다. 이상적인 조건에서는 마이크로 초의 정확도가 가능할 수 있습니다.

하드웨어 타임스탬프를 사용하는 시간 동기화를 위한 또 다른 프로토콜은 PTP 입니다.

NTP 와 달리PTP 는 네트워크 스위치 및 라우터의 지원에 의존합니다. 동기화의 최상의 정확도에 도달하려면 PTP 지원 기능이 포함된 스위치 및 라우터가 있는 네트워크에서 PTP 를 사용하고 이러한 스위치 및 라우터가 없는 네트워크에서 NTP 를 선호합니다.

다음 섹션에서는 다음 방법을 설명합니다.

  • 하드웨어 타임 스탬프에 대한 지원 확인
  • 하드웨어 타임스탬프 활성화
  • 클라이언트 폴링 간격 구성
  • interleaved 모드 활성화
  • 다수의 클라이언트에 대해 서버 구성
  • 하드웨어 타임스탬프 확인
  • PTP-NTP 브리지 구성

13.3.1. 하드웨어 타임스탬프에 대한 지원 확인

NTP 를 사용한 하드웨어 타임스탬프를 인터페이스에서 확인하려면 ethtool -T 명령을 사용합니다. ethtoolSOF_TIMESTAMPING_TX_HARDWARESOF_TIMESTAMPING_TX_SOFTWARE 기능 및 HWTSTAMP_FILTER_ALL 필터 모드를 나열하는 경우 NTP 를 사용한 하드웨어 타임 스탬프링에 사용할 수 있습니다.

예 13.2. 특정 인터페이스에서 하드웨어 타임스탬프 지원 확인

# ethtool -T eth0

출력:

Timestamping parameters for eth0:
Capabilities:
        hardware-transmit     (SOF_TIMESTAMPING_TX_HARDWARE)
        software-transmit     (SOF_TIMESTAMPING_TX_SOFTWARE)
        hardware-receive      (SOF_TIMESTAMPING_RX_HARDWARE)
        software-receive      (SOF_TIMESTAMPING_RX_SOFTWARE)
        software-system-clock (SOF_TIMESTAMPING_SOFTWARE)
        hardware-raw-clock    (SOF_TIMESTAMPING_RAW_HARDWARE)
PTP Hardware Clock: 0
Hardware Transmit Timestamp Modes:
        off                   (HWTSTAMP_TX_OFF)
        on                    (HWTSTAMP_TX_ON)
Hardware Receive Filter Modes:
        none                  (HWTSTAMP_FILTER_NONE)
        all                   (HWTSTAMP_FILTER_ALL)
        ptpv1-l4-sync         (HWTSTAMP_FILTER_PTP_V1_L4_SYNC)
        ptpv1-l4-delay-req    (HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ)
        ptpv2-l4-sync         (HWTSTAMP_FILTER_PTP_V2_L4_SYNC)
        ptpv2-l4-delay-req    (HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ)
        ptpv2-l2-sync         (HWTSTAMP_FILTER_PTP_V2_L2_SYNC)
        ptpv2-l2-delay-req    (HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ)
        ptpv2-event           (HWTSTAMP_FILTER_PTP_V2_EVENT)
        ptpv2-sync            (HWTSTAMP_FILTER_PTP_V2_SYNC)
        ptpv2-delay-req       (HWTSTAMP_FILTER_PTP_V2_DELAY_REQ)

13.3.2. 하드웨어 타임스탬프 활성화

하드웨어 타임스탬프를 활성화하려면 /etc/chrony.conf 파일에 hwtimestamp 지시문을 사용합니다. 지시문은 단일 인터페이스를 지정하거나 와일드카드 문자를 사용하여 이를 지원하는 모든 인터페이스에서 하드웨어 타임스탬프를 활성화할 수 있습니다. linuxptp 패키지의 ptp4l 과 같은 다른 애플리케이션이 없는 경우 인터페이스에서 하드웨어 타임스탬프를 사용하는 경우 와일드카드 사양을 사용합니다. chrony 구성 파일에서 여러 hwtimestamp 지시문이 허용됩니다.

예 13.3. hwtimestamp 지시문을 사용하여 하드웨어 타임스탬프 활성화

hwtimestamp eth0
hwtimestamp eth1
hwtimestamp *

13.3.3. 클라이언트 폴링 간격 구성

폴링 간격(64-1024초)의 기본 범위는 인터넷 서버에 권장됩니다. 로컬 서버 및 하드웨어 타임스탬프의 경우 시스템 클럭의 오프셋을 최소화하기 위해 더 짧은 폴링 간격을 구성해야 합니다.

/etc/chrony.conf 의 다음 지시문은 1초 폴링 간격을 사용하여 로컬 NTP 서버를 지정합니다.

server ntp.local minpoll 0 maxpoll 0

13.3.4. interleaved 모드 활성화

하드웨어 NTP 어플라이언스가 아니라 일반적인 용도의 컴퓨터에서 chrony 와 같은 소프트웨어 NTP 구현을 실행하는 NTP 서버는 패킷을 보낸 후에만 하드웨어 전송 타임스탬프를 가져옵니다. 이 동작은 서버가 해당하는 패킷에 타임스탬프를 저장하지 않도록 합니다. 전송 후 생성된 전송 타임스탬프를 수신하는 NTP 클라이언트가 /etc/chrony.conf 의 server 지시문에 xleave 옵션을 추가하여 NTP 인터리빙 모드를 사용하도록 클라이언트를 구성합니다.

server ntp.local minpoll 0 maxpoll 0 xleave

13.3.5. 다수의 클라이언트에 대한 서버 구성

기본 서버 구성을 사용하면 대부분 수천 개의 클라이언트가 동시에 interleaved 모드를 사용할 수 있습니다. 더 많은 수의 클라이언트에 대해 서버를 구성하려면 /etc/chrony.conf 에서 clientloglimit 지시문을 늘립니다. 이 지시문은 서버에 클라이언트 액세스 로깅을 위해 할당된 최대 메모리 크기를 지정합니다.

clientloglimit 100000000

13.3.6. 하드웨어 타임스탬프 확인

인터페이스에서 하드웨어 타임스탬프가 성공적으로 활성화되었는지 확인하려면 시스템 로그를 확인합니다. 로그에 성공적으로 활성화된 하드웨어 타임스탬프가 있는 각 인터페이스에 대해 chronyd 의 메시지가 포함되어야 합니다.

예 13.4. 하드웨어 타임스탬프가 활성화된 인터페이스에 대한 로그 메시지

chronyd[4081]: Enabled HW timestamping on eth0
chronyd[4081]: Enabled HW timestamping on eth1

chronydNTP 클라이언트 또는 피어로 구성된 경우 chronyc ntpdata 명령을 통해 각 NTP 소스에 대해 보고된 전송 및 타임스탬프 지정 모드와 시간 초과 모드를 사용할 수 있습니다.

예 13.5. 각 NTP 소스에 대한 전송, 타임스탬프 지정 및 인터리빙 모드를 보고합니다.

# chronyc ntpdata

출력:

Remote address  : 203.0.113.15 (CB00710F)
Remote port     : 123
Local address   : 203.0.113.74 (CB00714A)
Leap status     : Normal
Version         : 4
Mode            : Server
Stratum         : 1
Poll interval   : 0 (1 seconds)
Precision       : -24 (0.000000060 seconds)
Root delay      : 0.000015 seconds
Root dispersion : 0.000015 seconds
Reference ID    : 47505300 (GPS)
Reference time  : Wed May 03 13:47:45 2017
Offset          : -0.000000134 seconds
Peer delay      : 0.000005396 seconds
Peer dispersion : 0.000002329 seconds
Response time   : 0.000152073 seconds
Jitter asymmetry: +0.00
NTP tests       : 111 111 1111
Interleaved     : Yes
Authenticated   : No
TX timestamping : Hardware
RX timestamping : Hardware
Total TX        : 27
Total RX        : 27
Total valid RX  : 27

예 13.6. NTP 측정의 안정성 보고

# chronyc sourcestats

하드웨어 타임스탬프를 활성화하면 NTP 측정의 안정성이 정상적인 부하에 따라 수십 또는 수백 나노초 내에 있어야 합니다. 이 안정성은 chronyc sourcestats 명령 출력의 Std Dev 열에 보고됩니다.

출력:

210 Number of sources = 1
Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev
ntp.local                  12   7    11     +0.000      0.019     +0ns    49ns

13.3.7. PTP-NTP 브리지 구성

PTP(Precision Time Protocol) 기본 timeserver를 PTP를 지원하는 스위치 또는 라우터가 없는 네트워크에서 사용할 수 있는 경우 컴퓨터는 PTP 클라이언트 및 stratum-1 NTP 서버로만 작동할 수 있습니다. 이러한 컴퓨터에는 두 개 이상의 네트워크 인터페이스가 있어야 하며 기본 시간 서버에 가 있거나 직접 연결할 수 있어야 합니다. 이렇게 하면 네트워크에서 매우 정확한 동기화가 수행됩니다.

linuxptp 패키지에서 ptp4lphc2sys 프로그램을 구성하여 PTP 를 사용하여 시스템 클럭을 동기화하도록 하나의 인터페이스를 사용합니다.

다른 인터페이스를 사용하여 시스템 시간을 제공하도록 chronyd 를 구성합니다.

예 13.7. 다른 인터페이스를 사용하여 시스템 시간을 제공하도록 chronyd 구성

bindaddress 203.0.113.74
hwtimestamp eth1
local stratum 1
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.