19장. PTP 하드웨어 사용
19.1. OpenShift Container Platform 클러스터 노드의 PTP 정보
PTP(Precision Time Protocol)는 네트워크의 클럭을 동기화하는 데 사용됩니다. 하드웨어 지원과 함께 사용할 경우 PTP는 마이크로초 미만의 정확성을 수행할 수 있으며 NTP(Network Time Protocol)보다 더 정확합니다.
OpenShift Container Platform 클러스터 노드에서 linuxptp
서비스를 구성하고 PTP 가능 하드웨어를 사용할 수 있습니다.
PTP Operator를 배포하여 OpenShift Container Platform 웹 콘솔 또는oc
CLI(OpenShift CLI)를 사용하여 PTP를 설치합니다. PTP Operator는 linuxptp
서비스를 생성 및 관리하고 다음 기능을 제공합니다.
- 클러스터에서 PTP 가능 장치 검색.
-
linuxptp
서비스의 구성 관리. -
PTP Operator
cloud-event-proxy
사이드카를 사용하여 애플리케이션의 성능 및 안정성에 부정적인 영향을 주는 PTP 클록 이벤트 알림
PTP Operator는 베어 메탈 인프라에서만 프로비저닝된 클러스터에서 PTP 가능 장치와 함께 작동합니다.
19.1.1. PTP 도메인의 요소
PTP는 네트워크에 연결된 여러 노드를 각 노드의 클럭과 동기화하는 데 사용됩니다. PTP에 의해 동기화된 클록은 리더 후속 계층 구조로 구성됩니다. 계층 구조는 모든 클럭에서 실행되는 최상의 마스터 클럭(BMC) 알고리즘에 의해 자동으로 생성되고 업데이트됩니다. 후속 클럭은 리더 클록과 동기화되며 후속 클럭은 다른 다운스트림 클록의 소스가 될 수 있습니다.
그림 19.1. 네트워크의 PTP 노드
다음은 3가지 기본 PTP 클록 유형에 대해 설명합니다.
- GRandmaster 클록
- 마스터 클록은 네트워크의 다른 클록에 표준 시간 정보를 제공하며 정확하고 안정적인 동기화를 보장합니다. 타임스탬프를 작성하고 다른 클록의 시간 요청에 응답합니다. Grandmaster 클럭은 GNSS(Global Navigation Satellite System) 시간 소스와 동기화됩니다. Grandmaster 클록은 네트워크에서 신뢰할 수 있는 시간 소스이며 다른 모든 장치에 시간 동기화를 제공할 책임이 있습니다.
- 경계 클록
- 경계 클록에는 두 개 이상의 통신 경로에 포트가 있으며, 동시에 소스와 다른 대상 클록의 대상일 수 있습니다. 경계 클록은 대상 클록으로 작동합니다. 대상 클럭이 타이밍 메시지를 수신하고 지연을 조정한 다음 네트워크를 전달하기 위한 새 소스 시간 신호를 생성합니다. 경계 클록은 소스 클록과 정확하게 동기화되는 새로운 타이밍 패킷을 생성하며 소스 클럭에 직접 보고하는 연결된 장치의 수를 줄일 수 있습니다.
- 일반 클록
- 일반 클록에는 네트워크의 위치에 따라 소스 또는 대상 클록의 역할을 수행할 수 있는 단일 포트가 연결되어 있습니다. 일반 클록은 타임스탬프를 읽고 쓸 수 있습니다.
NTP를 통한 PTP의 이점
PTP가 NTP를 능가하는 주요 이점 중 하나는 다양한 NIC(네트워크 인터페이스 컨트롤러) 및 네트워크 스위치에 있는 하드웨어 지원입니다. 특수 하드웨어를 사용하면 PTP가 메시지 전송 지연을 고려하여 시간 동기화의 정확성을 향상시킬 수 있습니다. 최대한의 정확성을 달성하려면 PTP 클록 사이의 모든 네트워킹 구성 요소를 PTP 하드웨어를 사용하도록 설정하는 것이 좋습니다.
NIC는 전송 및 수신 즉시 PTP 패킷을 타임스탬프할 수 있으므로 하드웨어 기반 PTP는 최적의 정확성을 제공합니다. 이를 운영 체제에서 PTP 패킷을 추가로 처리해야 하는 소프트웨어 기반 PTP와 비교합니다.
PTP를 활성화하기 전에 필수 노드에 대해 NTP가 비활성화되어 있는지 확인합니다. MachineConfig
사용자 정의 리소스를 사용하여 chrony 타임 서비스 (chronyd
)를 비활성화할 수 있습니다. 자세한 내용은 chrony 타임 서비스 비활성화를 참조하십시오.
19.1.2. PTP로 듀얼 Intel E810 NIC 하드웨어 사용
OpenShift Container Platform은 T-GM (T-GM) 및 경계 클럭 (T-BC)에서 정밀한 PTP 타이밍을 위해 단일 및 듀얼 NIC Intel E810 하드웨어를 지원합니다.
- 듀얼 NIC 할드 마스터 클록
듀얼 NIC 하드웨어가 있는 클러스터 호스트를 PTP 할 마스터 클록으로 사용할 수 있습니다. 하나의 NIC는 글로벌 탐색 Satellite 시스템(GNSS)에서 타이밍 정보를 수신합니다. 두 번째 NIC는 E810 NIC faceplate에서 SMA1 Tx/Rx 연결을 사용하여 첫 번째 NIC에서 타이밍 정보를 수신합니다. 클러스터 호스트의 시스템 클럭은 GNSS satellite에 연결된 NIC에서 동기화됩니다.
듀얼 NIC 할 마스터 클록은 RRU(Remote radio Unit) 및 BBU(Baseband Unit)가 동일한 라디오 셀 사이트에 있는 분산 RAN(D-RAN) 구성의 기능입니다. D-RAN은 여러 사이트에 라디오 기능을 배포하고 이를 코어 네트워크에 백홀 연결로 연결합니다.
그림 19.2. 듀얼 NIC 할드 마스터 클록
참고듀얼 NIC T-GM 구성에서 단일
ts2phc
프로세스는 시스템에서 두 개의ts2phc
인스턴스로 보고합니다.- 듀얼 NIC 경계 클록
중반 대역(VDU)을 제공하는 5G 통신 네트워크의 경우 각 가상 분산 장치(vDU)는 6개의 무선 장치(RU)에 대한 연결이 필요합니다. 이러한 연결을 위해 각 vDU 호스트에는 경계 클록으로 구성된 두 개의 NIC가 필요합니다.
듀얼 NIC 하드웨어를 사용하면 각 NIC가 다운스트림 클록에 대해 별도의
ptp4l
인스턴스를 사용하여 각 NIC를 동일한 업스트림 리더 클록에 연결할 수 있습니다.
19.1.3. OpenShift Container Platform 노드에서 linuxptp 및 gpsd 개요
OpenShift Container Platform은 높은 정밀 네트워크 동기화를 위해 linuxptp
및 gpsd
패키지와 함께 PTP Operator를 사용합니다. linuxptp
패키지는 네트워크에서 PTP 타이밍을 위한 툴과 데몬을 제공합니다. GNSS(Global Navigation Satellite System)가 있는 클러스터 호스트는 gpsd
를 사용하여 GNSS 클럭 소스와 상호 작용할 수 있습니다.
linuxptp
패키지에는 시스템 클럭 동기화를 위한 ts2phc
,pmc
,ptp4l
, phc2sys
프로그램이 포함되어 있습니다.
- ts2phc
ts2phc
는 PTP 장치에서 PTP 하드웨어 클럭(PHC)을 높은 수준의 정확성으로 동기화합니다.ts2phc
는 마스터 클록 구성에 사용됩니다. 정확한 타이밍은 GNSS(Global Navigation Satellite System)와 같은 높은 정확도의 클럭 소스를 신호로 수신합니다. GNSS는 대규모 분산 네트워크에서 사용하기 위해 정확하고 신뢰할 수 있는 동기화 시간 소스를 제공합니다. GNSS 클록은 일반적으로 몇 나노초의 정확도로 시간 정보를 제공합니다.ts2phc
시스템 데몬은 할드마스터 클록에서 시간 정보를 읽고 CryostatC 형식으로 변환하여 네트워크의 다른 PTP 장치로 타이밍 정보를 보냅니다. CryostatC 시간은 네트워크의 다른 장치에서 시계를 마스터 클록과 동기화하는 데 사용됩니다.- pmc
-
PMC
는 IEEE 표준 1588.1588에 따라 PTP 관리 클라이언트(pmc
)를 구현합니다.PMC
는ptp4l
시스템 데몬에 대한 기본 관리 액세스를 제공합니다.PMC
는 표준 입력에서 읽고 선택한 전송을 통해 출력을 전송하여 수신하는 응답을 출력합니다. - ptp4l
ptp4l
은 PTP 경계 클록과 일반 클록을 구현하고 시스템 데몬으로 실행됩니다.ptp4l
은 다음을 수행합니다.- 하드웨어 타임스탬프를 사용하여 소스 클록과 synchronizes the source clock with hardware time stamping
- 소프트웨어 타임스탬프를 사용하여 시스템 클록을 소스 클록에 동기화
- phc2sys
-
phc2sys
는 네트워크 인터페이스 컨트롤러(NIC)의 CryostatC에 시스템 시계를 동기화합니다.phc2sys
시스템 데몬은 타이밍 정보를 지속적으로 모니터링합니다. 타이밍 오류를 감지하면 CryostatC가 시스템 시계를 수정합니다.
gpsd
패키지에는 호스트 클럭과 GNSS 클럭 동기화를 위한 ubxtool
,gspipe
,gpsd
프로그램이 포함되어 있습니다.
- ubxtool
-
ubxtool
CLI를 사용하면 u-blox GPS 시스템과 통신할 수 있습니다.ubxtool
CLI는 u-blox 바이너리 프로토콜을 사용하여 GPS와 통신합니다. - gpspipe
-
gpspipe
는gpsd
출력에 연결하여stdout
에 파이프합니다. - gpsd
-
GPS
D는 호스트에 연결된 하나 이상의 GPS 또는 AIS 수신기를 모니터링하는 서비스 데몬입니다.
19.1.4. PTP 할 마스터 클록에 대한 GNSS 타이밍 개요
OpenShift Container Platform은 클러스터에서 GNSS(Global Navigation Satellite System) 소스 및 마스터 클록(T-GM)에서 정확한 PTP 타이밍을 수신할 수 있습니다.
OpenShift Container Platform은 Intel E810 Westport 채널 NIC가 있는 GNSS 소스의 PTP 타이밍만 지원합니다.
그림 19.3. GNSS 및 T-GM과의 동기화 개요
- GNSS(Global navigation Satellite System)
GNSS는 전 세계 수신기에 위치 지정, 탐색 및 타이밍 정보를 제공하는 데 사용되는 Satellite 기반 시스템입니다. PTP에서 GNSS 수신기는 종종 매우 정확하고 안정적인 참조 클록 소스로 사용됩니다. 이러한 수신기는 여러 GNSS Satellite에서 신호를 수신하므로 정확한 시간 정보를 계산할 수 있습니다. GNSS에서 얻은 타이밍 정보는 PTP 할 마스터 클록에 의해 참조로 사용됩니다.
GNSS를 참조로 사용하면 PTP 네트워크의 마스터 클록은 다른 장치에 매우 정확한 타임스탬프를 제공하여 전체 네트워크에서 정확한 동기화를 가능하게 할 수 있습니다.
- Digital Phase-Locked Cryostat (DPLL)
- DPLL은 네트워크의 다양한 PTP 노드 간에 클럭 동기화를 제공합니다. DPLL은 로컬 시스템 클럭 신호의 단계를 들어오는 동기화 신호의 단계와 비교합니다(예: PTP 할 마스터 클록에서 PTP 메시지). DPLL은 로컬 클럭과 참조 클록 사이의 단계 차이를 최소화하기 위해 현지 클록 빈도 및 단계를 지속적으로 조정합니다.
GNSS 동기화 PTP grandmaster 클록에서 윤초 이벤트 처리
윤초는 국제 Atomic Time(TAI)과 동기화된 유지를 위해 UTC(Coordinated Universal Time)에 때때로 적용되는 1초 조정입니다. UTC 윤초는 예측할 수 없습니다. 국제적으로 합의된 윤초는 leap-seconds.list 에 나열됩니다. 이 파일은 IERS(International Earth Rotation and Reference Systems Service)에 의해 정기적으로 업데이트됩니다. 처리되지 않은 윤초는 훨씬 엣지 RAN 네트워크에 상당한 영향을 미칠 수 있습니다. 이를 통해 far edge RAN 애플리케이션이 즉시 음성 통화 및 데이터 세션의 연결을 끊을 수 있습니다.