7장. PTP 하드웨어 사용
7.1. OpenShift 클러스터 노드의 PTP에 관하여 링크 복사링크가 클립보드에 복사되었습니다!
PTP(Precision Time Protocol)는 네트워크에서 시계를 동기화하는 데 사용됩니다. 하드웨어 지원과 함께 사용할 경우 PTP는 마이크로초 미만의 정확성을 수행할 수 있으며 NTP(Network Time Protocol)보다 더 정확합니다.
PTP가 있는 OpenShift-SDN
클러스터가 하드웨어 타임스탬핑에 UDP(사용자 데이터그램 프로토콜)를 사용하고 OVN-Kubernetes 플러그인으로 마이그레이션하는 경우, 하드웨어 타임스탬핑을 Open vSwitch(OVS) 브리지와 같은 기본 인터페이스 장치에 적용할 수 없습니다. 결과적으로 UDP 버전 4 구성은 br-ex
인터페이스와 함께 작동할 수 없습니다.
OpenShift Container Platform 클러스터 노드에서 linuxptp
서비스를 구성하고 PTP 지원 하드웨어를 사용할 수 있습니다.
PTP Operator를 배포하여 OpenShift Container Platform 웹 콘솔이나 OpenShift CLI( oc
)를 사용하여 PTP를 설치합니다. PTP 운영자는 linuxptp
서비스를 생성하고 관리하며 다음과 같은 기능을 제공합니다.
- 클러스터에서 PTP 가능 장치 검색.
-
linuxptp
서비스 구성 관리. -
PTP Operator
cloud-event-proxy
사이드카를 사용하여 애플리케이션의 성능 및 안정성에 부정적인 영향을 주는 PTP 클록 이벤트 알림
PTP Operator는 베어 메탈 인프라에서만 프로비저닝된 클러스터에서 PTP 가능 장치와 함께 작동합니다.
7.1.1. PTP 도메인의 요소 링크 복사링크가 클립보드에 복사되었습니다!
PTP는 네트워크에 연결된 여러 노드를 각 노드의 클럭과 동기화하는 데 사용됩니다. PTP에 의해 동기화된 시계는 리더-팔로워 계층 구조로 구성됩니다. 계층 구조는 모든 클록에서 실행되는 최적 마스터 클록(BMC) 알고리즘에 의해 자동으로 생성되고 업데이트됩니다. 팔로워 클록은 리더 클록과 동기화되며, 팔로워 클록 자체가 다른 다운스트림 클록의 소스가 될 수 있습니다.
그림 7.1. 네트워크의 PTP 노드
PTP 클록의 세 가지 주요 유형은 아래와 같습니다.
- GRandmaster 클록
- 마스터 클록은 네트워크의 다른 클록에 표준 시간 정보를 제공하며 정확하고 안정적인 동기화를 보장합니다. 타임스탬프를 작성하고 다른 시계의 시간 요청에 응답합니다. 그랜드마스터 시계는 GNSS(Global Navigation Satellite System) 시간 소스와 동기화됩니다. 그랜드마스터 클록은 네트워크에서 시간의 권위 있는 소스이며, 다른 모든 장치에 시간 동기화를 제공하는 역할을 합니다.
- 경계 클록
- 경계 클록에는 두 개 이상의 통신 경로에 포트가 있으며, 동시에 소스와 다른 대상 클록의 대상일 수 있습니다. 경계 클록은 대상 클록으로 작동합니다. 대상 클럭이 타이밍 메시지를 수신하고 지연을 조정한 다음 네트워크를 전달하기 위한 새 소스 시간 신호를 생성합니다. 경계 클록은 소스 클록과 정확하게 동기화되는 새로운 타이밍 패킷을 생성하며 소스 클럭에 직접 보고하는 연결된 장치의 수를 줄일 수 있습니다.
- 일반 클록
- 일반 클록에는 네트워크의 위치에 따라 소스 또는 대상 클록의 역할을 수행할 수 있는 단일 포트가 연결되어 있습니다. 일반 시계는 타임스탬프를 읽고 쓸 수 있습니다.
7.1.1.1. NTP를 통한 PTP의 이점 링크 복사링크가 클립보드에 복사되었습니다!
PTP가 NTP를 능가하는 주요 이점 중 하나는 다양한 NIC(네트워크 인터페이스 컨트롤러) 및 네트워크 스위치에 있는 하드웨어 지원입니다. 특수 하드웨어를 사용하면 PTP가 메시지 전송 지연을 고려하여 시간 동기화의 정확성을 향상시킬 수 있습니다. 최대한의 정확성을 달성하려면 PTP 클록 사이의 모든 네트워킹 구성 요소를 PTP 하드웨어를 사용하도록 설정하는 것이 좋습니다.
하드웨어 기반 PTP는 NIC가 PTP 패킷에 전송 및 수신되는 정확한 순간에 타임스탬프를 찍을 수 있으므로 최적의 정확도를 제공합니다. 이를 운영 체제에서 PTP 패킷을 추가로 처리해야 하는 소프트웨어 기반 PTP와 비교합니다.
PTP를 활성화하기 전에 필수 노드에 대해 NTP가 비활성화되어 있는지 확인합니다. MachineConfig
사용자 정의 리소스를 사용하여 chrony 타임 서비스 (chronyd
)를 비활성화할 수 있습니다. 자세한 내용은 chrony 시간 서비스 비활성화를 참조하세요.
7.1.2. OpenShift Container Platform 노드의 linuxptp 및 gpsd 개요 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform은 고정밀 네트워크 동기화를 위해 linuxptp
및 gpsd
패키지와 함께 PTP Operator를 사용합니다. linuxptp
패키지는 네트워크에서 PTP 타이밍을 위한 도구와 데몬을 제공합니다. GNSS(Global Navigation Satellite System) 지원 NIC가 있는 클러스터 호스트는 gpsd를
사용하여 GNSS 클럭 소스와 인터페이스합니다.
linuxptp
패키지에는 시스템 시계 동기화를 위한 ts2phc
, pmc
, ptp4l
및 phc2sys
프로그램이 포함되어 있습니다.
- ts2phc
ts2phc는
높은 정밀도로 PTP 장치 전체에서 PTP 하드웨어 클록(PHC)을 동기화합니다.ts2phc
는 그랜드마스터 클럭 구성에 사용됩니다. 이는 GNSS(Global Navigation Satellite System)와 같은 고정밀 클럭 소스로부터 정밀 타이밍 신호를 수신합니다. GNSS는 대규모 분산 네트워크에서 사용할 수 있는 정확하고 신뢰할 수 있는 동기화된 시간 소스를 제공합니다. GNSS 시계는 일반적으로 수 나노초 단위의 정밀도로 시간 정보를 제공합니다.ts2phc
시스템 데몬은 그랜드마스터 클럭에서 시간 정보를 읽고 PHC 형식으로 변환하여 네트워크의 다른 PTP 장치로 그랜드마스터 클럭의 타이밍 정보를 전송합니다. PHC 시간은 네트워크의 다른 장치가 자신의 시계를 그랜드마스터 시계와 동기화하는 데 사용됩니다.- pmc
-
pmc는
IEEE 표준 1588.1588에 따라 PTP 관리 클라이언트(pmc
)를 구현합니다.pmc는
ptp4l
시스템 데몬에 대한 기본 관리 액세스를 제공합니다.pmc는
표준 입력에서 읽어서 선택된 전송방식으로 출력을 전송하고, 수신한 응답을 모두 인쇄합니다. - ptp4l
ptp4l은
PTP 경계 클록과 일반 클록을 구현하고 시스템 데몬으로 실행됩니다.ptp4l은
다음을 수행합니다.- 하드웨어 타임 스탬핑을 사용하여 PHC를 소스 클록과 동기화합니다.
- 소프트웨어 타임스탬핑을 사용하여 시스템 클록을 소스 클록과 동기화합니다.
- phc2sys
-
phc2sys는
시스템 시계를 네트워크 인터페이스 컨트롤러(NIC)의 PHC와 동기화합니다.phc2sys
시스템 데몬은 PHC의 타이밍 정보를 지속적으로 모니터링합니다. PHC는 타이밍 오류를 감지하면 시스템 시계를 수정합니다.
gpsd
패키지에는 호스트 시계와 GNSS 시계 동기화를 위한 ubxtool
, gspipe
, gpsd
프로그램이 포함되어 있습니다.
- ubxtool
-
ubxtool
CLI를 사용하면 u-blox GPS 시스템과 통신할 수 있습니다.ubxtool
CLI는 u-blox 바이너리 프로토콜을 사용하여 GPS와 통신합니다. - gpspipe
-
gpspipe는
gpsd
출력에 연결하여stdout
으로 파이프합니다. - gpsd
-
gpsd는
호스트에 연결된 하나 이상의 GPS 또는 AIS 수신기를 모니터링하는 서비스 데몬입니다.
7.1.3. PTP 그랜드마스터 클록의 GNSS 타이밍 개요 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform은 클러스터의 GNSS(Global Navigation Satellite System) 소스와 T-GM(Grandmaster Clock)으로부터 정밀한 PTP 타이밍을 수신하는 것을 지원합니다.
OpenShift Container Platform은 Intel E810 Westport 채널 NIC가 있는 GNSS 소스에서만 PTP 타이밍을 지원합니다.
그림 7.2. GNSS 및 T-GM 동기화 개요
- 글로벌 항법 위성 시스템(GNSS)
GNSS는 전 세계 수신기에 위치, 항법, 시간 정보를 제공하는 데 사용되는 위성 기반 시스템입니다. PTP에서 GNSS 수신기는 종종 정확도와 안정성이 높은 기준 클록 소스로 사용됩니다. 이러한 수신기는 여러 GNSS 위성으로부터 신호를 수신하여 정확한 시간 정보를 계산할 수 있습니다. GNSS에서 얻은 타이밍 정보는 PTP 그랜드마스터 클록의 기준으로 사용됩니다.
PTP 네트워크의 그랜드마스터 클록은 GNSS를 기준으로 사용하여 다른 장치에 매우 정확한 타임스탬프를 제공함으로써 전체 네트워크에서 정밀한 동기화를 구현할 수 있습니다.
- 디지털 위상 잠금 루프(DPLL)
- DPLL은 네트워크 내의 서로 다른 PTP 노드 간에 클록 동기화를 제공합니다. DPLL은 로컬 시스템 클록 신호의 위상을 들어오는 동기화 신호(예: PTP 그랜드마스터 클록에서 오는 PTP 메시지)의 위상과 비교합니다. DPLL은 로컬 클록 주파수와 위상을 지속적으로 조정하여 로컬 클록과 기준 클록 간의 위상 차이를 최소화합니다.
7.1.3.1. GNSS 동기화 PTP 그랜드마스터 시계에서 윤초 이벤트 처리 링크 복사링크가 클립보드에 복사되었습니다!
윤초는 가끔 국제 원자시(TAI)와 동기화를 유지하기 위해 협정 세계시(UTC)에 적용되는 1초 조정입니다. UTC 윤초는 예측할 수 없습니다. 국제적으로 합의된 윤초는 leap-seconds.list 에 나열되어 있습니다. 이 파일은 국제 지구 자전 및 기준계 서비스(IERS)에서 정기적으로 업데이트됩니다. 처리되지 않은 윤초는 원격 RAN 네트워크에 상당한 영향을 미칠 수 있습니다. 이로 인해 원거리 RAN 애플리케이션이 음성 통화 및 데이터 세션을 즉시 끊을 수 있습니다.
7.1.4. PTP 및 클럭 동기화 오류 이벤트 정보 링크 복사링크가 클립보드에 복사되었습니다!
가상 RAN과 같은 클라우드 네이티브 애플리케이션에서는 전체 네트워크의 작동에 중요한 하드웨어 타이밍 이벤트에 대한 알림에 액세스해야 합니다. PTP 클럭 동기화 오류는 낮은 대기 시간 애플리케이션의 성능과 안정성에 부정적인 영향을 줄 수 있습니다(예: 분산 장치(DU)에서 실행되는 vRAN 애플리케이션).
PTP 동기화 손실은 RAN 네트워크에 심각한 오류입니다. 노드에서 동기화가 손실된 경우 라디오가 종료될 수 있으며 네트워크 Over the Air (OTA) 트래픽이 무선 네트워크의 다른 노드로 이동될 수 있습니다. 클러스터 노드에서 PTP 클럭 동기화 상태를 DU에서 실행 중인 vRAN 애플리케이션에 통신할 수 있도록 함으로써 이벤트 알림이 워크로드 오류와 비교하여 완화됩니다.
동일한 DU 노드에서 실행되는 RAN 애플리케이션에서 이벤트 알림을 사용할 수 있습니다. 게시/서브스크립션 REST API는 이벤트 알림을 메시징 버스에 전달합니다. 게시/서브스크립션 메시징 또는 pub/sub 메시징은 주제에 게시된 모든 메시지가 해당 주제에 대한 모든 가입자에 의해 즉시 수신되는 서비스 통신 아키텍처에 대한 비동기식 서비스입니다.
PTP 운영자는 PTP가 가능한 모든 네트워크 인터페이스에 대해 빠른 이벤트 알림을 생성합니다. 소비자 애플리케이션은 PTP 이벤트 REST API v2를 사용하여 PTP 이벤트를 구독할 수 있습니다.
PTP 빠른 이벤트 알림은 PTP 일반 클록, PTP 그랜드마스터 클록 또는 PTP 경계 클록을 사용하도록 구성된 네트워크 인터페이스에서 사용할 수 있습니다.
7.1.5. 2카드 E810 NIC 구성 참조 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform은 그랜드마스터 클록(T-GM) 및 경계 클록(T-BC)의 PTP 타이밍을 위한 단일 및 이중 NIC Intel E810 하드웨어를 지원합니다.
- 듀얼 NIC 그랜드마스터 클럭
듀얼 NIC 하드웨어가 있는 클러스터 호스트를 PTP 그랜드마스터 클록으로 사용할 수 있습니다. 하나의 NIC는 GNSS(전역 항법 위성 시스템)로부터 타이밍 정보를 수신합니다. 두 번째 NIC는 E810 NIC 페이스플레이트의 SMA1 Tx/Rx 연결을 사용하여 첫 번째 NIC로부터 타이밍 정보를 수신합니다. 클러스터 호스트의 시스템 시계는 GNSS 위성에 연결된 NIC에서 동기화됩니다.
듀얼 NIC 그랜드마스터 클록은 원격 무선 장치(RRU)와 기저대역 장치(BBU)가 동일한 무선 셀 사이트에 위치하는 분산 RAN(D-RAN) 구성의 특징입니다. D-RAN은 여러 사이트에 무선 기능을 분산시키고, 백홀 연결을 통해 이를 코어 네트워크에 연결합니다.
그림 7.3. 듀얼 NIC 그랜드마스터 클럭
참고듀얼 NIC T-GM 구성에서는 단일
ts2phc
프로그램이 각 NIC당 하나씩, 두 개의 PTP 하드웨어 클록(PHC)에서 작동합니다.- 듀얼 NIC 경계 클럭
중간 대역 스펙트럼 범위를 제공하는 5G 통신 네트워크의 경우, 각 가상 분산 장치(vDU)는 6개의 무선 장치(RU)에 연결되어야 합니다. 이러한 연결을 하려면 각 vDU 호스트에 경계 클록으로 구성된 2개의 NIC가 필요합니다.
듀얼 NIC 하드웨어를 사용하면 각 NIC를 동일한 업스트림 리더 클록에 연결할 수 있으며, 각 NIC에 대해 별도의
ptp4l
인스턴스를 통해 다운스트림 클록을 공급할 수 있습니다.- 듀얼 NIC 경계 클록을 갖춘 고가용성 시스템 클록
Intel E810-XXVDA4 Salem 채널 듀얼 NIC 하드웨어를 고가용성 시스템 클록에 대한 타이밍을 제공하는 듀얼 PTP 경계 클록으로 구성할 수 있습니다. 이 구성은 서로 다른 NIC에 여러 시간 소스가 있는 경우에 유용합니다. 고가용성은 두 타이밍 소스 중 하나가 손실되거나 연결이 끊어지더라도 노드의 타이밍 동기화가 손실되지 않도록 보장합니다.
각 NIC는 동일한 업스트림 리더 클럭에 연결됩니다. 가용성이 높은 경계 클록은 여러 개의 PTP 도메인을 사용하여 대상 시스템 클록과 동기화합니다. T-BC가 고가용성인 경우, NIC PHC 클럭을 동기화하는 하나 이상의
ptp4l
인스턴스가 실패하더라도 호스트 시스템 클럭은 올바른 오프셋을 유지할 수 있습니다. 단일 SFP 포트나 케이블에 오류가 발생하면 경계 클록은 리더 클록과 동기화 상태를 유지합니다.경계 클록 리더 소스 선택은 A-BMCA 알고리즘을 사용하여 수행됩니다. 자세한 내용은 ITU-T 권장사항 G.8275.1을 참조하세요.
7.1.6. PTP 일반 클록의 중복성을 개선하기 위해 듀얼 포트 NIC 사용 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform은 PTP 타이밍을 위한 일반 클록으로 단일 포트 네트워킹 인터페이스 카드(NIC)를 지원합니다. 중복성을 개선하려면 한 포트를 활성으로, 다른 포트를 대기로 설정하는 듀얼 포트 NIC를 구성할 수 있습니다.
듀얼 포트 NIC 중복성을 갖춘 일반 시계로 linuxptp 서비스를 구성하는 것은 기술 미리 보기 기능에 불과합니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
이 구성에서 듀얼 포트 NIC의 포트는 다음과 같이 작동합니다.
-
활성 포트는
다음
포트 상태에서 일반 클록으로 기능합니다. -
대기 포트는
수신
포트 상태를 유지합니다. - 활성 포트에 장애가 발생하면 대기 포트가 활성으로 전환되어 PTP 타이밍 동기화가 계속됩니다.
-
두 포트 모두에 오류가 발생하면 클록 상태는
HOLDOVER
상태로 전환되고, 홀드오버 타임아웃이 만료되면 리더 클록과 다시 동기화되기 전에FREERUN
상태로 전환됩니다.
듀얼 포트 NIC가 있는 x86
아키텍처 노드에서만 중복성을 추가하여 PTP 일반 클록을 구성할 수 있습니다.
7.1.7. 3카드 Intel E810 PTP 그랜드마스터 클럭 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform은 PTP 그랜드마스터 클록(T-GM)으로 3개의 Intel E810 NIC가 있는 클러스터 호스트를 지원합니다.
- 3카드 그랜드마스터 시계
3개의 NIC가 있는 클러스터 호스트를 PTP 그랜드마스터 클록으로 사용할 수 있습니다. 하나의 NIC는 GNSS(전역 항법 위성 시스템)로부터 타이밍 정보를 수신합니다. 두 번째와 세 번째 NIC는 E810 NIC 페이스플레이트의 SMA1 Tx/Rx 연결을 사용하여 첫 번째 NIC로부터 타이밍 정보를 수신합니다. 클러스터 호스트의 시스템 시계는 GNSS 위성에 연결된 NIC에서 동기화됩니다.
3카드 NIC 그랜드마스터 클록은 프런트 홀 스위치 없이 무선 장치(RU)가 분산 장치(DU)에 직접 연결되는 분산 RAN(D-RAN) 구성에 사용될 수 있습니다. 예를 들어, RU와 DU가 동일한 무선 셀 사이트에 있는 경우가 그렇습니다. D-RAN은 여러 사이트에 무선 기능을 분산시키고, 백홀 연결을 통해 이를 코어 네트워크에 연결합니다.
그림 7.4. 3카드 Intel E810 PTP 그랜드마스터 클럭
참고3장 T-GM 구성에서는 단일
ts2phc
프로세스가 시스템에 3개의ts2phc
인스턴스를 보고합니다.