KR20180099140A - 클럭 동기화 장치 및 방법 - Google Patents

클럭 동기화 장치 및 방법 Download PDF

Info

Publication number
KR20180099140A
KR20180099140A KR1020170026187A KR20170026187A KR20180099140A KR 20180099140 A KR20180099140 A KR 20180099140A KR 1020170026187 A KR1020170026187 A KR 1020170026187A KR 20170026187 A KR20170026187 A KR 20170026187A KR 20180099140 A KR20180099140 A KR 20180099140A
Authority
KR
South Korea
Prior art keywords
clock
packet delay
estimate
time stamp
value
Prior art date
Application number
KR1020170026187A
Other languages
English (en)
Other versions
KR102614829B1 (ko
Inventor
하영목
김태호
박은지
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020170026187A priority Critical patent/KR102614829B1/ko
Priority to CN201710659956.6A priority patent/CN108075851B/zh
Publication of KR20180099140A publication Critical patent/KR20180099140A/ko
Application granted granted Critical
Publication of KR102614829B1 publication Critical patent/KR102614829B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0682Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/0033Correction by delay

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

클럭 동기화 장치 및 방법이 개시된다. 본 발명의 일실시예에 따른 클럭 동기화 방법은 클럭 동기화 장치를 이용하는 클럭 동기화 방법에 있어서, 시간 동기 프로토콜을 통해 메시지 전송을 수행하여 생성된 타임스탬프 값들을 저장하는 단계; 상기 타임스탬프 값들을 이용하여 패킷 지연 편차(packet delay variation)를 계산하는 단계; 상기 타임스탬프 값들을 이용하여 계산한 클럭 오프셋(clock offset) 추정치와 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하는 단계 및 상기 오차가 제거된 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 이용하여 클럭 동기화를 수행하는 단계를 포함한다.

Description

클럭 동기화 장치 및 방법 {APPARATUS AND METHOD FOR SYNCHORONIZING CLOCK}
본 발명은 네트워크를 통한 시스템 시간 동기화 기술에 관한 것으로, 보다 상세하게는 클럭 오프셋 추정 및 패킷 지연 추정 기술에 관한 것이다.
IEEE 1588 PTP(Precision Time Protocol)는 시스템 시간 동기화 기능을 제공하는 프로토콜이다. 상기 프로토콜은 정밀한 자동화, 제어, 시험 및 측정을 가능하게 하므로, 네트워크 측정 및 제어 시스템에 널리 사용될 수 있다.
그러나, 상기 프로토콜은 동적 환경에서 적절치 못한 문제점이 있으며, 보다 상세하게는 전파 지연 편차(propagation delay variations) 및 노드 지연 편차(nodal delay variations)를 포함한 동적 시간에 따라 변화하는 패킷 지연 편차(packet delay variations, PDVs)를 고려하지 못하는 한계가 있다.
이 때, 상기 한계는 상기 프로토콜의 설계에서 전제된 가정이 실제 구현 환경에서는 만족되지 않기 때문에 발생할 수 있다.
즉, 상기 프로토콜은 패킷 지연이 일정하다는 가정하에 설계되었지만, 실제로 패킷 지연은 시간에 따라 변화할 수 있다. 예를 들어, 전파 지연은 네트워크상의 패킷 트래픽이 시변(time-varying)하고, 패킷의 이동 거리가 동일하지 않고, 마이크로파가 전파하는 공간(예: 전송선 또는 공기)이 균질하지 않을 때 시간에 따라 변할 수 있다.
한편, 한국공개특허 제 10-2011-0056087 호"시간 동기화 방법 및 그 장치"는 마스터-브리지-슬레이브 클럭 간에서 수행되는 시간 동기 프로토콜에서의 패킷의 체류 시간을 기록하는 트랜스패런트 클럭(Transparent Clock, TC)으로 시간 동기화 장치를 동작함에 따라 시간 동기 정립도를 향상시키는 장치 및 방법에 관하여 개시하고 있다.
그러나, 한국공개특허 제 10-2011-0056087 호는 노드 지연 변이를 제외하고 동적 시간에 따라 변하는 PDV로 인한 오류를 처리할 수 없으며, 호환 가능한 장치가 필요하다는 점에서 한계가 있다.
본 발명은 정확한 클럭 오프셋 추정 및 패킷 지연 추정을 제공하는 것을 목적으로 한다.
또한, 본 발명은 정확한 클럭 오프셋 추정과 패킷 지연 추정을 제공하여 네트워크 시스템에서의 동기화 성능을 향상시키는 것을 목적으로 한다.
또한, 본 발명은 클럭 동기화 성능을 별도의 호환 장치 없이 용이하게 향상시키는 것을 목적으로 한다.
상기한 목적을 달성하기 위한 본 발명의 일실시예에 따른 클럭 동기화 방법은 클럭 동기화 장치를 이용하는 클럭 동기화 방법에 있어서, 시간 동기 프로토콜을 통해 메시지 전송을 수행하여 생성된 타임스탬프 값들을 저장하는 단계; 상기 타임스탬프 값들을 이용하여 패킷 지연 편차(packet delay variation)를 계산하는 단계; 상기 타임스탬프 값들을 이용하여 계산한 클럭 오프셋(clock offset) 추정치와 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하는 단계 및 상기 오차가 제거된 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 이용하여 클럭 동기화를 수행하는 단계를 포함한다.
이 때, 상기 타임스탬프 값들을 저장하는 단계는 씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K-1(K는 2 이상의 자연수) 번째 타임스탬프 값들을 저장하는 단계; 씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K 번째 타임스탬프 값들을 저장하는 단계 및 상기 K 번째 타임스탬프 값에서 상기 K-1 번째 타임스탬프 값을 감산한 상기 타임스탬프 변화값을 저장하는 단계를 포함할 수 있다.
이 때, 상기 패킷 지연 편차를 계산하는 단계는 씽크 메시지 송신 시점에서의 제1 타임스탬프 변화값을 씽크 메시지 수신 시점에서의 제2 타임스탬프 변화값에서 감산하고, K-1 번째 씽크 메시지의 패킷 지연 값을 합산하여 K 번째 씽크 메시지의 패킷 지연 값을 계산할 수 있다.
이 때, 상기 패킷 지연 편차를 계산하는 단계는 지연 요청 메시지 송신 시점에서의 제3 타임스탬프 변화값을 지연 요청 메시지 수신 시점에서의 제4 타임스탬프 변화값에서 감산하고, K-1 번째 지연 요청 메시지의 패킷 지연 값을 합산하여 K 번째 지연 요청 메시지의 패킷 지연 값을 계산할 수 있다.
이 때, 상기 패킷 지연 편차를 계산하는 단계는 레퍼런스 클럭과 로컬 클럭 사이의 클럭 비율을 고려하여 상기 패킷 지연 편차를 계산할 수 있다.
이 때, 상기 패킷 지연 편차를 계산하는 단계는 상기 클럭 비율을 고려한 상기 제2 타임스탬프 변화값과 상기 제3 타임스탬프 변화값을 대체하여 상기 패킷 지연 편차를 계산할 수 있다.
이 때, 상기 패킷 지연 편차를 계산하는 단계는 상기 K 번째 지연 요청 메시지의 패킷 지연 값에서 상기 K 번째 씽크 메시지의 패킷 지연 값을 감산하여 상기 패킷 지연 편차를 계산할 수 있다.
이 때, 상기 오차를 제거하는 단계는 상기 타임스탬프 값들을 이용하여 상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치를 계산하는 단계; 상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 계산하는 단계 및 상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하여 최종 추정치를 계산하는 단계를 포함할 수 있다.
이 때, 상기 오차를 계산하는 단계는 상기 타임스탬프 값들, 상기 레퍼런스 클럭, 상기 로컬 클럭 및 상기 패킷 지연 편차 중 적어도 하나를 이용하여 상기 클럭 오프셋 추정치의 제1 오차와 상기 패킷 지연 추정치의 제2 오차를 계산할 수 있다.
이 때, 상기 최종 추정치를 계산하는 단계는 상기 클럭 오프셋 추정치에서 제1 오차를 제거하고, 상기 레퍼런스 클럭과 상기 로컬 클럭의 편차에 상응하는 클럭 노이즈 값을 감산하여 상기 최종 클럭 오프셋 추정치를 계산할 수 있다.
이 때, 상기 최종 추정치를 계산하는 단계는 상기 패킷 지연 추정치에서 제2 오차를 제거하고, 상기 클럭 노이즈 값을 감산한 값에서 상기 클럭 비율을 곱하여 상기 최종 패킷 지연 추정치를 계산할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 일실시예에 따른 클럭 동기화 장치는 시간 동기 프로토콜을 통해 메시지 전송을 수행하는 메시지 전송부; 상기 메시지 전송을 통해 생성된 타임스탬프 값들을 저장하는 타임스탬프 저장부; 상기 타임스탬프 값들을 이용하여 패킷 지연 편차(packet delay variation)를 계산하는 연산부; 상기 타임스탬프 값들을 이용하여 계산한 클럭 오프셋(clock offset) 추정치와 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하는 오차 필터링부 및 상기 오차가 제거된 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 이용하여 클럭 동기화를 수행하는 동기화부를 포함한다.
이 때, 상기 타임스탬프 저장부는 상기 메시지 전송부에서 씽크 메시지 전송과 지연 요청 메시지 전송을 수행한 메시지 전송 시점에 상응하는 K-1(K는 2 이상의 자연수) 번째 타임스탬프 값들을 저장하고, 상기 메시지 전송부에서 씽크 메시지 전송과 지연 요청 메시지 전송을 수행한 메시지 전송 시점에 상응하는 K 번째 타임스탬프 값들을 저장하고, 상기 K 번째 타임스탬프 값에서 상기 K-1 번째 타임스탬프 값을 감산한 상기 타임스탬프 변화값을 저장할 수 있다.
이 때, 상기 타임스탬프 저장부는 씽크 메시지 송신 시점에서의 제1 타임스탬프 변화값을 씽크 메시지 수신 시점에서의 제2 타임스탬프 변화값에서 감산하고, K-1 번째 씽크 메시지의 패킷 지연 값을 합산하여 K 번째 씽크 메시지의 패킷 지연 값을 계산할 수 있다.
이 때, 상기 타임스탬프 저장부는 지연 요청 메시지 송신 시점에서의 제3 타임스탬프 변화값을 지연 요청 메시지 수신 시점에서의 제4 타임스탬프 변화값에서 감산하고, K-1 번째 지연 요청 메시지의 패킷 지연 값을 합산하여 K 번째 지연 요청 메시지의 패킷 지연 값을 계산할 수 있다.
이 때, 연산부는 레퍼런스 클럭과 로컬 클럭 사이의 클럭 비율을 고려하여 상기 패킷 지연 편차를 계산할 수 있다.
이 때, 상기 오차 필터링부는 상기 타임스탬프 값들을 이용하여 상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치를 계산하고, 상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 계산하고, 상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하여 최종 추정치를 계산할 수 있다.
이 때, 상기 오차 필터링부는 상기 타임스탬프 값들, 상기 레퍼런스 클럭, 상기 로컬 클럭 및 상기 패킷 지연 편차 중 적어도 하나를 이용하여 상기 클럭 오프셋 추정치의 제1 오차와 상기 패킷 지연 추정치의 제2 오차를 계산할 수 있다.
이 때, 상기 오차 필터링부는 상기 클럭 오프셋 추정치에서 제1 오차를 제거하고, 상기 레퍼런스 클럭과 상기 로컬 클럭의 편차에 상응하는 클럭 노이즈 값을 감산하여 최종 클럭 오프셋 추정치를 계산할 수 있다.
이 때, 상기 오차 필터링부는 상기 패킷 지연 추정치에서 제2 오차를 제거하고, 상기 클럭 노이즈 값을 감산한 값에서 상기 클럭 비율을 곱하여 최종 패킷 지연 추정치를 계산할 수 있다.
본 발명은 정확한 클럭 오프셋 추정 및 패킷 지연 추정을 제공할 수 있다.
또한, 본 발명은 정확한 클럭 오프셋 추정과 패킷 지연 추정을 제공하여 네트워크 시스템에서의 동기화 성능을 향상시킬 수 있다.
또한, 본 발명은 클럭 동기화 성능을 별도의 호환 장치 없이 용이하게 향상시킬 수 있다.
도 1은 본 발명의 일실시예에 따른 클럭 동기화 시스템을 나타낸 블록도이다.
도 2는 본 발명의 일실시예에 따른 시간 동기 프로토콜을 이용한 클럭 동기화를 나타낸 도면이다.
도 3은 본 발명의 일실시예에 따른 클럭 동기화 장치를 나타낸 블록도이다.
도 4는 본 발명의 일실시예에 따른 클럭 동기화 방법을 나타낸 동작흐름도이다.
도 5는 도 4에 도시된 메시지 전송 단계의 일 예를 세부적으로 나타낸 동작흐름도이다.
도 6은 도 4에 도시된 패킷 지연 편차 관련 오차 제거 단계의 일 예를 세부적으로 나타낸 동작흐름도이다.
도 7는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 클럭 동기화 시스템을 나타낸 블록도이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 클럭 동기화 시스템은 2개의 클럭 동기화 장치가 시간 동기 프로토콜을 통해 메시지 전송을 수행하고 클럭 동기화를 수행하는 것을 알 수 있다.
이 때, 본 발명의 일실시예에 따른 제1 클럭 동기화 장치는 마스터 장치(10)에 상응할 수 있고, 제2 클럭 동기화 장치는 슬레이브 장치(20)에 상응할 수 있다.
제1 클럭 동기화 장치 및 제2 클럭 동기화 장치는 본 발명의 일실시예에 따른 클럭 동기화 장치에 상응할 수 있으며, 클럭 동기화 장치는 설정에 따라 마스터 장치(10) 또는 슬레이브 장치(20) 어느쪽이든 수행할 수 있다.
이 때, 마스터 장치(10)와 슬레이브 장치(20)는 IEEE 1588 표준에서 개시한 마스터 클럭과 슬레이브 클럭에 상응할 수 있다.
도 2는 본 발명의 일실시예에 따른 시간 동기 프로토콜을 이용한 클럭 동기화를 나타낸 도면이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 시간 동기 프로토콜을 이용한 클럭 동기화는 IEEE 1588 표준에서 개시한 시간 동기 프로토콜을 이용한 클럭 동기화에 상응할 수 있다.
도 2에 도시된 바와 같이,
Figure pat00001
Figure pat00002
는 각각 레퍼런스(또는 마스터) 클럭과 로컬(또는 슬레이브) 클럭을 나타낸 것을 알 수 있다.
이 때, 클럭 오프셋
Figure pat00003
은 수학식 1과 같이
Figure pat00004
에서 클럭 들의 차이에 상응할 수 있다.
Figure pat00005
이 때, 초기 클럭 오프셋은
Figure pat00006
로 나타낼 수 있다.
이 때, 로컬 클럭은 수학식 2와 같이 아래 첨자 k(k는 자연수)를 동기화를 수행한 순환 횟수를 나타내는 데 사용될 수 있고, 윗 첨자를 이전 클럭 동기화의 어플리케이션을 나타내는데 사용될 수 있다.
Figure pat00007
이 때,
Figure pat00008
는 k 번째 동기화에 의한 클럭 오프셋 추정치에 상응할 수 있다.
이 때, 클럭 동기화는 먼저 마스터 노드가 2개의 패킷 인 씽크(sync) 메시지와 팔로우 업(follow-up) 메시지를 슬레이브 노드에 전송할 수 있다. 이 때, 마스터 노드는 씽크 메시지를 전송한 시점의 시간을 측정한 레퍼런스 클럭 타임스탬프 값
Figure pat00009
을 팔로우 업 메시지에 포함시켜 슬레이브 노드에 전송할 수 있다.
이 때, 팔로우 업 메시지에는 레퍼런스 클럭, 로컬 클럭에 관한 정보 및 타임스탬프 값 중 적어도 하나를 포함할 수 있다.
슬레이브 노드는 씽크 메시지가 도착한 시점의 시간을 측정한 로컬 타임스탬프 값
Figure pat00010
을 생성하여 저장하고, 수학식 3과 같이 편차
Figure pat00011
를 계산할 수 있다.
Figure pat00012
이 때, 편차
Figure pat00013
는 수학식 4와 같이 클럭 오프셋과 패킷 지연의 합과 같다.
Figure pat00014
이 때, 슬레이브 노드는 연속적으로 2개의 패킷 인 지연 요청(delay-req) 메시지와 팔로우 업(follow-up) 메시지를 마스터 노드에 전송할 수 있다. 이 때, 슬레이브 노드는 지연 요청 메시지를 전송한 시점의 시간을 측정한 로컬 클럭 타임스탬프 값
Figure pat00015
을 생성하여 저장하고, 수학식 5의 값을 팔로우 업 메시지에 포함시켜 마스터 노드에 전송할 수 있다.
Figure pat00016
이 때, 마스터 노드는 지연 요청 메시지를 수신한 시점의 시간을 측정한 타임스탬프 값
Figure pat00017
을 생성하여 저장하고, 수학식 6를 통해 계산한 클럭 오프셋 추정치를 지연 응답(delay-resp) 메시지에 포함시켜 슬레이브 노드에 전송할 수 있다.
Figure pat00018
이 때, 슬레이브 노드는 지연 응답 메시지를 수신하고, 지연 응답 메시지에 포함된 클럭 오프셋 추정치를 이용하여 슬레이브 노드의 클럭을 갱신하는 클럭 동기화를 수행할 수 있다.
이 때, 클럭 오프셋의 추정치를 추정하기 위하여, 수학식 4를 변경하여 수학식 7과 같이 나타낼 수 있다.
Figure pat00019
이 때, 패킷 지연 추정치
Figure pat00020
는 수학식 8과 같이 씽크 메시지의 패킷 지연 값과 지연 요청 메시지의 패킷 지연 값의 평균으로 계산될 수도 있다.
Figure pat00021
그러나, 이러한 클럭 오프셋 추정치와 패킷 지연 추정치는 패킷 지연 편차와 레퍼런스 클럭과 로컬 클럭의 편차를 고려하지 않은 것이므로 본 발명에서는 패킷 지연 편차를 고려하여 더 정확한 클럭 오프셋 추정치와 패킷 지연 추정치를 계산할 수 있다.
즉, 씽크 메시지의 패킷 지연 값
Figure pat00022
과 지연 요청 메시지의 패킷 지연 값
Figure pat00023
사이의 편차인 패킷 지연 편차
Figure pat00024
는 수학식 9와 같이 나타낼 수 있다.
Figure pat00025
따라서, 본 발명에서는 패킷 지연 편차
Figure pat00026
를 고려한 동적 선형 모델(Dynamic Linear Model, DLM)를 생성하고, 동적 선형 모델에 기반한 클럭 동기화를 수행할 수 있다.
이 때, DLM은 시간 경과에 따른 패킷 지연 편차를 나타낼 수 있다.
이에 따라, 패킷 지연 추정치 오차
Figure pat00027
와 클럭 동기화 추정치 오차
Figure pat00028
는 수학식 9를수학식 7과 8에 대입하여 수학식 10과 같이 나타낼 수 있다.
Figure pat00029
이 때, 본 발명은 마스터 노드와 슬레이브 노드 사이에서 반복되는 패킷 교환(메시지 전송)을 통해 패킷 지연 편차 계산할 수 있다.
이 때, 패킷 지연 편차를 계산하는 과정은 본 발명의 일실시예에 따른 클럭 동기화 장치 및 방법의 설명에서 자세히 설명하고자 한다.
도 3은 본 발명의 일실시예에 따른 클럭 동기화 장치를 나타낸 블록도이다.
도 3을 참조하면, 본 발명의 일실시예에 따른 클럭 동기화 장치는 메시지 전송부(110), 타임스탬프 저장부(120), 연산부(130), 오차 필터링부(140) 및 동기화부(150)를 포함한다.
제1 클럭 동기화 장치(10)는 제2 클럭 동기화 장치(20)와 시간 동기 프로토콜을 통해 메시지 전송을 수행하여 클럭 동기화를 수행할 수 있다.
따라서, 클럭 동기화 장치는 마스터 장치(10)가 될 수 있고, 슬레이브 장치(20)도 될 수 있다.
메시지 전송부(110)는 다른 클럭 동기화 장치인 마스터 장치(10) 또는 슬레이브 장치(20)와 시간 동기 프로토콜을 통해 메시지를 전송할 수 있다.
도 2에 도시된 바와 같이, 메시지 전송부(110)는 다른 클럭 동기화 장치(마스터 장치(10) 또는 슬레이브 장치(20))와 씽크 메시지, 지연 요청 메시지 및 지연 응답 메시지를 전송할 수 있다.
이 때, 메시지 전송부(110)는 메시지 전송을 수행하면서 다른 클럭 동기화 장치로부터 수신한 메시지에서 타임스탬프 값을 추출하고, 송신한 메시지로부터 생성된 타임스탬프 값을 타임스탬프 저장부(120)에 전달할 수 있다.
이 때, 메시지 전송부(110)는 K 번의 클럭 동기화를 수행하면서 수행한 메시지 전송을 수행할 수 있고, 메시지 전송에 대한 타임스탬프 값을 타임스탬프 저장부(120)에 전달할 수 있다.
타임스탬프 저장부(120)는 메시지 전송을 통해 생성된 타임스탬프 값들을 저장할 수 있다.
이 때, 타임스탬프 저장부(120)는 씽크 메시지 및 지연 요청 메시지 전송에 따라 생성된 타임스탬프 값들을 저장할 수 있다.
이 때, 타임스탬프 저장부(120)는 씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K-1(K는 2 이상의 자연수) 번째 타임스탬프 값들을 저장 할 수 있다.
이 때, 타임스탬프 저장부(120)는 씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K 번째 타임스탬프 값들을 저장할 수 있다.
이 때, 타임스탬프 저장부(120)는 상기 K 번째 타임스탬프 값에서 상기 K-1 번째 타임스탬프 값을 감산한 타임스탬프 변화값을 저장할 수 있다.
연산부(130)는 타임스탬프 값들을 이용하여 패킷 지연 편차(packet delay variation)를 계산할 수 있다.
패킷 지연 편차는 패킷 지연의 수치적인 차이로부터 나타낼 수 있다.
예를 들어, K 번째 씽크 메시지의 패킷 지연 변화값과 K 번째 지연 요청 메시지의 패킷 지연 변화값은 수학식 11과 같이 나타낼 수 있다.
Figure pat00030
이 때, 연산부(130)는 수학식 12와 같이 K 번째 타임스탬프 값들과 K-1 번째 타임스탬프 값들과의 편차로부터 타임스탬프 변화값을 계산할 수 있다.
Figure pat00031
또한, 패킷 지연은 레퍼런스 클럭의 시간 정보에 의해 나타낼 수 있다.
예를 들어,
Figure pat00032
Figure pat00033
의 차이는 수학식 13과 같이 K 번째 씽크 메시지의 패킷 지연으로 나타낼 수 있다. K-1 번째 씽크 메시지의 패킷 지연도 동일한 방식으로 나타낼 수 있다.
Figure pat00034
나아가,
Figure pat00035
Figure pat00036
의 차이는 수학식 14와 같이 K 번째 지연 요청 메시지의 패킷 지연으로 나타낼 수 있다. K-1 번째 지연 요청 메시지의 패킷 지연도 동일한 방식으로 나타낼 수 있다.
Figure pat00037
결국, 수학식 11에 수학식 13과 14를 대입하면, 수학식 15와 같이 씽크 메시지의 패킷 지연과 지연 요청 메시지의 패킷 지연을 계산할 수 있다.
Figure pat00038
즉, 연산부(130)는 씽크 메시지 송신 시점에서의 제1 타임스탬프 변화값을 씽크 메시지 수신 시점에서의 제2 타임스탬프 변화값에서 감산하고, K-1 번째 씽크 메시지의 패킷 지연 값을 합산하여 K 번째 씽크 메시지의 패킷 지연 값을 계산할 수 있다.
이 때, 연산부(130)는 지연 요청 메시지 송신 시점에서의 제3 타임스탬프 변화값을 지연 요청 메시지 수신 시점에서의 제4 타임스탬프 변화값에서 감산하고, K-1 번째 지연 요청 메시지의 패킷 지연 값을 합산하여 K 번째 지연 요청 메시지 의 패킷 지연 값을 계산할 수 있다.
이 때, 연산부(130)는 수학식 15를 DLM으로 사용할 수 있다.
그러나, 실제로는 슬레이브 노드 기준에서 마스터 노드의 레퍼런스 타임스탬프값
Figure pat00039
Figure pat00040
는 측정이 불가능하다.
따라서, 연산부(130)는 레퍼런스 클럭과 로컬 클럭 사이의 클럭 비율을 고려한 타임스탬프 값
Figure pat00041
Figure pat00042
으로 타임스탬프 값
Figure pat00043
Figure pat00044
을 대체할 수 있다.
즉, 연산부(130)는 수학식 16의 타임스탬프 값
Figure pat00045
Figure pat00046
을 이용하여 타임스탬프 값
Figure pat00047
Figure pat00048
를 대체할 수 있다.
Figure pat00049
수학식 16에서,
Figure pat00050
는 레퍼런스 클럭
Figure pat00051
는 로컬 클럭을 나타낸 것을 알 수 있다.
이 때, 연산부(130)는 수학식 16을 수학식 15에 대입하여 수학식 17과 같이 DLM을 수정할 수 있다.
Figure pat00052
이 때, 연산부(130)는 지연 요청 메시지의 패킷 지연 값
Figure pat00053
에서 씽크 메시지의 패킷 지연 값
Figure pat00054
을 감산하여 패킷 지연 편차를 계산할 수 있다.
즉, 연산부(130)는 클럭 비율을 고려한 제2 타임스탬프 변화값과 제3 타임스탬프 변화값을 이용하여 패킷 지연 편차를 계산할 수 있다.
이 때, 연산부(130)는 수학식 9의 패킷 지연 편차에 수학식 17을 대입하면 수학식 18과 같이 레퍼런스 클럭와 로컬 클럭의 클럭 비율을 고려한 패킷 지연 편차
Figure pat00055
를 계산할 수 있다.
Figure pat00056
이 때, 연산부(130)는 패킷 지연 편차
Figure pat00057
에 상응하는 동적 선형 모델(Dynamic Linear Model, DLM)을 생성할 수 있다.
오차 필터링부(140)는 타임스탬프 값들을 이용하여 계산한 클럭 오프셋(clock offset) 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 제거할 수 있다.
이 때, 오차 필터링부(140)는 타임스탬프 값들을 이용하여 클럭 오프셋 추정치와 패킷 지연 추정치를 계산할 수 있다.
이 때, 오차 필터링부(140)는 수학식 17을 수학식 7과 8에 대입하여 레퍼런스 클럭과 로컬 클럭을 고려한 클럭 오프셋 추정치와 패킷 지연 추정치를 계산할 수 있다.
이 때, 오차 필터링부(140)는 클럭 오프셋 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 계산할 수 있다.
이 때, 오차 필터링부(1400는 상기 타임스탬프 값들, 상기 레퍼런스 클럭, 상기 로컬 클럭 및 상기 패킷 지연 편차 중 적어도 하나를 이용하여 상기 클럭 오프셋 추정치의 제1 오차와 상기 패킷 지연 추정치의 제2 오차를 계산할 수 있다.
이 때, 오차 필터링부(140)는 수학식 7, 8 및 17을 수학식 10에 대입하여 수학식 19와 같이 패킷 지연 편차와 관련된 클럭 오프셋 추정치의 제1 오차
Figure pat00058
와 패킷 지연 추정치의 제2 오차
Figure pat00059
를 계산할 수 있다.
Figure pat00060
이 때, 오차 필터링부(140)는 클럭 오프셋 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 제거하여 최종 추정치를 계산할 수 있다.
이 때 오차 필터링부(140)는 클럭 오프셋 추정치에서 제1 오차를 제거하고, 레퍼런스 클럭과 로컬 클럭의 편차에 상응하는 클럭 노이즈 값을 감산하여 최종 클럭 오프셋 추정치를 계산할 수 있다.
이 때, 오차 필터링부(140)는 패킷 지연 추정치에서 제2 오차를 제거하고, 클럭 노이즈 값을 감산한 값에서 클럭 비율을 곱하여 최종 패킷 지연 추정치를 계산할 수 있다.
클럭 노이즈는 레퍼런스 클럭과 로컬 클럭 사이의 편차에 상응하는 화이트 노이즈에 상응할 수 있다.
이 때, 오차 필터링부(140)는 레퍼런스 클럭과 로컬 클럭 사이의 편차에 통계적으로 기저장된 데이터를 로컬 클럭의 클럭 노이즈 값으로 이용할 수 있다.
이 때, 오차 필터링부(140)는 수학식 20과 같이 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 계산할 수 있다.
Figure pat00061
수학식 20에서, 로컬 클럭의 클럭 노이즈는
Figure pat00062
로 나타낼 수 있다.
동기화부(150)는 오차가 제거된 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 이용하여 클럭 동기화를 수행할 수 있다.
도 4는 본 발명의 일실시예에 따른 클럭 동기화 방법을 나타낸 동작흐름도이다.
도 4를 참조하면, 본 발명의 일실시예에 따른 클럭 동기화 방법은 먼저 시간동기 프로토콜을 통해 메시지를 전송할 수 있다(S210).
즉, 단계(S210)는 제1 클럭 동기화 장치(10)와 제2 클럭 동기화 장치(20)가 시간 동기 프로토콜을 통해 메시지를 전송할 수 있다.
이 때, 단계(S210)는 도 2에 도시된 바와 같이, 제1 클럭 동기화 장치(10)와 제2 클럭 동기화 장치(20)가 씽크 메시지, 지연 요청 메시지 및 지연 응답 메시지를 전송할 수 있다.
이 때, 단계(S210)는 먼저 제1 메시지 전송 수행 및 타임스탬프 값을 저장 할 수 있다(S211).
즉, 단계(S211)는 K-1 번의 클럭 동기화를 수행하면서 수행한 메시지 전송을 수행할 수 있고, 메시지 전송에 대한 타임스탬프 값을 저장할 수 있다.
이 때, 단계(S211)는 씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K-1(K는 2 이상의 자연수) 번째 타임스탬프 값들을 저장할 수 있다.
또한, 단계(S210)는 제2 메시지 전송 수행 및 타임스탬프 값을 저장할 수 있다(S212).
즉, 단계(S212)는 K 번의 클럭 동기화를 수행하면서 수행한 메시지 전송을 수행할 수 있고, 메시지 전송에 대한 타임스탬프 값을 저장할 수 있다.
이 때, 단계(S212)는 씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K 번째 타임스탬프 값들을 저장할 수 있다.
또한, 단계(S210)는 타임스탬프 변화값을 저장할 수 있다(S213).
즉, 단계(S213)는 K 번째 타임스탬프 값에서 상기 K-1 번째 타임스탬프 값을 감산한 타임스탬프 변화값을 저장할 수 있다.
또한, 본 발명의 일실시예에 따른 클럭 동기화 방법은 패킷 지연 편차를 계산할 수 있다(S220).
즉, 단계(S220)는 타임스탬프 값들을 이용하여 패킷 지연 편차(packet delay variation)를 계산할 수 있다.
패킷 지연 편차는 패킷 지연의 수치적인 차이로부터 나타낼 수 있다.
예를 들어, K 번째 씽크 메시지의 패킷 지연 변화값과 K 번째 지연 요청 메시지의 패킷 지연 변화값은 수학식 11과 같이 나타낼 수 있다.
이 때, 단계(S220)는 수학식 12와 같이 K 번째 타임스탬프 값들과 K-1 번째 타임스탬프 값들과의 편차로부터 타임스탬프 변화값을 계산할 수 있다.
또한, 패킷 지연은 레퍼런스 클럭의 시간 정보에 의해 나타낼 수 있다.
예를 들어,
Figure pat00063
Figure pat00064
의 차이는 수학식 13과 같이 K 번째 씽크 메시지의 패킷 지연으로 나타낼 수 있다. K-1 번째 씽크 메시지의 패킷 지연도 동일한 방식으로 나타낼 수 있다.
나아가,
Figure pat00065
Figure pat00066
의 차이는 수학식 14와 같이 K 번째 지연 요청 메시지의 패킷 지연으로 나타낼 수 있다. K-1 번째 지연 요청 메시지의 패킷 지연도 동일한 방식으로 나타낼 수 있다.
결국, 수학식 11에 수학식 13과 14를 대입하면, 수학식 15와 같이 씽크 메시지의 패킷 지연과 지연 요청 메시지의 패킷 지연을 계산할 수 있다.
즉, 단계(S220)는 씽크 메시지 송신 시점에서의 제1 타임스탬프 변화값을 씽크 메시지 수신 시점에서의 제2 타임스탬프 변화값에서 감산하고, K-1 번째 씽크 메시지의 패킷 지연 값을 합산하여 K 번째 씽크 메시지의 패킷 지연 값을 계산할 수 있다.
이 때, 단계(S220)는 지연 요청 메시지 송신 시점에서의 제3 타임스탬프 변화값을 지연 요청 메시지 수신 시점에서의 제4 타임스탬프 변화값에서 감산하고, K-1 번째 지연 요청 메시지의 패킷 지연 값을 합산하여 K 번째 지연 요청 메시지 의 패킷 지연 값을 계산할 수 있다.
이 때, 단계(S220)는 수학식 15를 DLM으로 사용할 수 있다.
그러나, 실제로는 슬레이브 노드 기준에서 마스터 노드의 레퍼런스 타임스탬프값
Figure pat00067
Figure pat00068
는 측정이 불가능하다.
따라서, 단계(S220)는 레퍼런스 클럭과 로컬 클럭 사이의 클럭 비율을 고려한 타임스탬프 값
Figure pat00069
Figure pat00070
으로 타임스탬프 값
Figure pat00071
Figure pat00072
을 대체할 수 있다.
즉, 단계(S220)는 수학식 16의 타임스탬프 값
Figure pat00073
Figure pat00074
을 이용하여 타임스탬프값
Figure pat00075
Figure pat00076
를 대체할 수 있다.
이 때, 단계(S220)는 수학식 16을 수학식 15에 대입하여 수학식 17과 같이 DLM을 수정할 수 있다.
이 때, 단계(S220)는 지연 요청 메시지의 패킷 지연 값
Figure pat00077
에서 씽크 메시지의 패킷 지연 값
Figure pat00078
을 감산하여 패킷 지연 편차를 계산할 수 있다.
즉, 단계(S220)는 클럭 비율을 고려한 제2 타임스탬프 변화값과 제3 타임스탬프 변화값을 이용하여 패킷 지연 편차를 계산할 수 있다.
이 때, 단계(S220)는 수학식 9의 패킷 지연 편차에 수학식 17을 대입하면 수학식 18과 같이 레퍼런스 클럭와 로컬 클럭의 클럭 비율을 고려한 패킷 지연 편차
Figure pat00079
를 계산할 수 있다.
이 때, 단계(S220)는 패킷 지연 편차
Figure pat00080
에 상응하는 동적 선형 모델(Dynamic Linear Model, DLM)을 생성할 수 있다.
또한, 본 발명의 일실시예에 따른 클럭 동기화 방법은 패킷 지연 편차 관련 오차를 제거할 수 있다(S230).
즉, 단계(S230)는 먼저 클럭 오프셋 추정치 및 패킷 지연 추정치를 계산할 수 있다(S231).
이 때, 단계(S231)는 타임스탬프 값들을 이용하여 계산한 클럭 오프셋(clock offset) 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 제거할 수 있다.
이 때, 단계(S231)는 타임스탬프 값들을 이용하여 클럭 오프셋 추정치와 패킷 지연 추정치를 계산할 수 있다.
이 때, 단계(S231)는 수학식 17을 수학식 7과 8에 대입하여 레퍼런스 클럭과 로컬 클럭을 고려한 클럭 오프셋 추정치와 패킷 지연 추정치를 계산할 수 있다.
또한, 단계(S230)는 패킷 지연 편차 관련 오차를 계산할 수 있다(S232).
즉, 단계(S232)는 클럭 오프셋 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 계산할 수 있다.
이 때, 단계(S232)는 상기 타임스탬프 값들, 상기 레퍼런스 클럭, 상기 로컬 클럭 및 상기 패킷 지연 편차 중 적어도 하나를 이용하여 상기 클럭 오프셋 추정치의 제1 오차와 상기 패킷 지연 추정치의 제2 오차를 계산할 수 있다.
이 때, 단계(S232)는 수학식 7, 8 및 17을 수학식 10에 대입하여 수학식 19와 같이 패킷 지연 편차와 관련된 클럭 오프셋 추정치의 제1 오차
Figure pat00081
와 패킷 지연 추정치의 제2 오차
Figure pat00082
를 계산할 수 있다.
또한, 단계(S230)는 최종 추정치를 계산할 수 있다(S233).
즉, 단계(S233)는 클럭 오프셋 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 제거하여 최종 추정치를 계산할 수 있다.
이 때 단계(S233)는 클럭 오프셋 추정치에서 제1 오차를 제거하고, 레퍼런스 클럭과 로컬 클럭의 편차에 상응하는 클럭 노이즈 값을 감산하여 최종 클럭 오프셋 추정치를 계산할 수 있다.
이 때, 단계(S233)는 패킷 지연 추정치에서 제2 오차를 제거하고, 클럭 노이즈 값을 감산한 값에서 클럭 비율을 곱하여 최종 패킷 지연 추정치를 계산할 수 있다.
클럭 노이즈는 레퍼런스 클럭과 로컬 클럭 사이의 편차에 상응하는 화이트 노이즈에 상응할 수 있다.
이 때, 단계(S233)는 레퍼런스 클럭과 로컬 클럭 사이의 편차에 통계적으로 기저장된 데이터를 로컬 클럭의 클럭 노이즈 값으로 이용할 수 있다.
이 때, 단계(S233)는 수학식 20과 같이 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 계산할 수 있다.
또한, 본 발명의 일실시예에 따른 클럭 동기화 방법은 클럭 동기화를 수행할 수 있다(S240).
즉, 단계(S240)는 오차가 제거된 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 이용하여 클럭 동기화를 수행할 수 있다.
도 5는 도 4에 도시된 메시지 전송 단계의 일 예를 세부적으로 나타낸 동작흐름도이다.
도 5를 참조하면, 단계(S210)는 먼저 제1 메시지 전송 수행 및 타임스탬프 값을 저장 할 수 있다(S211).
즉, 단계(S211)는 K-1 번의 클럭 동기화를 수행하면서 수행한 메시지 전송을 수행할 수 있고, 메시지 전송에 대한 타임스탬프 값을 저장할 수 있다.
이 때, 단계(S211)는 씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K-1(K는 2 이상의 자연수) 번째 타임스탬프 값들을 저장할 수 있다.
또한, 단계(S210)는 제2 메시지 전송 수행 및 타임스탬프 값을 저장할 수 있다(S212).
즉, 단계(S212)는 K 번의 클럭 동기화를 수행하면서 수행한 메시지 전송을 수행할 수 있고, 메시지 전송에 대한 타임스탬프 값을 저장할 수 있다.
이 때, 단계(S212)는 씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K 번째 타임스탬프 값들을 저장할 수 있다.
또한, 단계(S210)는 타임스탬프 변화값을 저장할 수 있다(S213).
즉, 단계(S213)는 K 번째 타임스탬프 값에서 상기 K-1 번째 타임스탬프 값을 감산한 타임스탬프 변화값을 저장할 수 있다.
도 6은 도 4에 도시된 패킷 지연 편차 관련 오차 제거 단계의 일 예를 세부적으로 나타낸 동작흐름도이다.
도 6을 참조하면, 단계(S230)는 먼저 클럭 오프셋 추정치 및 패킷 지연 추정치를 계산할 수 있다(S231).
이 때, 단계(S231)는 타임스탬프 값들을 이용하여 계산한 클럭 오프셋(clock offset) 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 제거할 수 있다.
이 때, 단계(S231)는 타임스탬프 값들을 이용하여 클럭 오프셋 추정치와 패킷 지연 추정치를 계산할 수 있다.
이 때, 단계(S231)는 수학식 17을 수학식 7과 8에 대입하여 레퍼런스 클럭과 로컬 클럭을 고려한 클럭 오프셋 추정치와 패킷 지연 추정치를 계산할 수 있다.
또한, 단계(S230)는 패킷 지연 편차 관련 오차를 계산할 수 있다(S232).
즉, 단계(S232)는 클럭 오프셋 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 계산할 수 있다.
이 때, 단계(S232)는 상기 타임스탬프 값들, 상기 레퍼런스 클럭, 상기 로컬 클럭 및 상기 패킷 지연 편차 중 적어도 하나를 이용하여 상기 클럭 오프셋 추정치의 제1 오차와 상기 패킷 지연 추정치의 제2 오차를 계산할 수 있다.
이 때, 단계(S232)는 수학식 7, 8 및 17을 수학식 10에 대입하여 수학식 19와 같이 패킷 지연 편차와 관련된 클럭 오프셋 추정치의 제1 오차
Figure pat00083
와 패킷 지연 추정치의 제2 오차
Figure pat00084
를 계산할 수 있다.
또한, 단계(S230)는 최종 추정치를 계산할 수 있다(S233).
즉, 단계(S233)는 클럭 오프셋 추정치와 패킷 지연 추정치에서 패킷 지연 편차와 관련된 오차를 제거하여 최종 추정치를 계산할 수 있다.
이 때 단계(S233)는 클럭 오프셋 추정치에서 제1 오차를 제거하고, 레퍼런스 클럭과 로컬 클럭의 편차에 상응하는 클럭 노이즈 값을 감산하여 최종 클럭 오프셋 추정치를 계산할 수 있다.
이 때, 단계(S233)는 패킷 지연 추정치에서 제2 오차를 제거하고, 클럭 노이즈 값을 감산한 값에서 클럭 비율을 곱하여 최종 패킷 지연 추정치를 계산할 수 있다.
클럭 노이즈는 레퍼런스 클럭과 로컬 클럭 사이의 편차에 상응하는 화이트 노이즈에 상응할 수 있다.
이 때, 단계(S233)는 레퍼런스 클럭과 로컬 클럭 사이의 편차에 통계적으로 기저장된 데이터를 로컬 클럭의 클럭 노이즈 값으로 이용할 수 있다.
이 때, 단계(S233)는 수학식 20과 같이 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 계산할 수 있다.
도 7은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
도 7을 참조하면, 본 발명의 실시예는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1100)에서 구현될 수 있다. 도 7에 도시된 바와 같이, 컴퓨터 시스템(1100)은 버스(1120)를 통하여 서로 통신하는 하나 이상의 프로세서(1110), 메모리(1130), 사용자 인터페이스 입력 장치(1140), 사용자 인터페이스 출력 장치(1150) 및 스토리지(1160)를 포함할 수 있다. 또한, 컴퓨터 시스템(1100)은 네트워크(1180)에 연결되는 네트워크 인터페이스(1170)를 더 포함할 수 있다. 프로세서(1110)는 중앙 처리 장치 또는 메모리(1130)나 스토리지(1160)에 저장된 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1130) 및 스토리지(1160)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 ROM(1131)이나 RAM(1132)을 포함할 수 있다.
이상에서와 같이 본 발명에 따른 클럭 동기화 장치 및 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
10: 제1 클럭 동기화 장치(마스터 장치)
20: 제2 클럭 동기화 장치(슬레이브 장치)
110: 메시지 전송부 120: 타임스탬프 저장부
130: 연산부 140: 오차 필터링부
150: 동기화부
1100: 컴퓨터 시스템 1110: 프로세서
1120: 버스 1130: 메모리
1131: 롬 1132: 램
1140: 사용자 인터페이스 입력 장치
1150: 사용자 인터페이스 출력 장치
1160: 스토리지 1170: 네트워크 인터페이스
1180: 네트워크

Claims (20)

  1. 클럭 동기화 장치를 이용하는 클럭 동기화 방법에 있어서,
    시간 동기 프로토콜을 통해 메시지 전송을 수행하여 생성된 타임스탬프 값들을 저장하는 단계;
    상기 타임스탬프 값들을 이용하여 패킷 지연 편차(packet delay variation)를 계산하는 단계;
    상기 타임스탬프 값들을 이용하여 계산한 클럭 오프셋(clock offset) 추정치와 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하는 단계; 및
    상기 오차가 제거된 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 이용하여 클럭 동기화를 수행하는 단계;
    를 포함하는 것을 특징으로 하는 클럭 동기화 방법.
  2. 청구항 1에 있어서,
    상기 타임스탬프 값들을 저장하는 단계는
    씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K-1(K는 2 이상의 자연수) 번째 타임스탬프 값들을 저장하는 단계;
    씽크 메시지 전송과 지연 요청 메시지 전송을 수행하여 메시지 전송 시점에 상응하는 K 번째 타임스탬프 값들을 저장하는 단계; 및
    상기 K 번째 타임스탬프 값에서 상기 K-1 번째 타임스탬프 값을 감산한 상기 타임스탬프 변화값을 저장하는 단계;
    를 포함하는 것을 특징으로 하는 클럭 동기화 방법.
  3. 청구항 2에 있어서,
    상기 패킷 지연 편차를 계산하는 단계는
    씽크 메시지 송신 시점에서의 제1 타임스탬프 변화값을 씽크 메시지 수신 시점에서의 제2 타임스탬프 변화값에서 감산하고, K-1 번째 씽크 메시지의 패킷 지연 값을 합산하여 K 번째 씽크 메시지의 패킷 지연 값을 계산하는 것을 특징으로 하는 클럭 동기화 방법.
  4. 청구항 3에 있어서,
    상기 패킷 지연 편차를 계산하는 단계는
    지연 요청 메시지 송신 시점에서의 제3 타임스탬프 변화값을 지연 요청 메시지 수신 시점에서의 제4 타임스탬프 변화값에서 감산하고, K-1 번째 지연 요청 메시지의 패킷 지연 값을 합산하여 K 번째 지연 요청 메시지의 패킷 지연 값을 계산하는 것을 특징으로 하는 클럭 동기화 방법.
  5. 청구항 4에 있어서,
    상기 패킷 지연 편차를 계산하는 단계는
    레퍼런스 클럭과 로컬 클럭 사이의 클럭 비율을 고려하여 상기 패킷 지연 편차를 계산하는 것을 특징으로 하는 클럭 동기화 방법.
  6. 청구항 5에 있어서,
    상기 패킷 지연 편차를 계산하는 단계는
    상기 클럭 비율을 고려한 상기 제2 타임스탬프 변화값과 상기 제3 타임스탬프 변화값을 이용하여 상기 패킷 지연 편차를 계산하는 것을 특징으로 하는 클럭 동기화 방법.
  7. 청구항 6에 있어서,
    상기 패킷 지연 편차를 계산하는 단계는
    상기 K 번째 지연 요청 메시지의 패킷 지연 값에서 상기 K 번째 씽크 메시지의 패킷 지연 값을 감산하여 상기 패킷 지연 편차를 계산하는 것을 특징으로 하는 클럭 동기화 방법.
  8. 청구항 7에 있어서,
    상기 오차를 제거하는 단계는
    상기 타임스탬프 값들을 이용하여 상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치를 계산하는 단계;
    상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 계산하는 단계; 및
    상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하여 최종 추정치를 계산하는 단계;
    를 포함하는 것을 특징으로 하는 클럭 동기화 방법.
  9. 청구항 8에 있어서,
    상기 오차를 계산하는 단계는
    상기 타임스탬프 값들, 상기 레퍼런스 클럭, 상기 로컬 클럭 및 상기 패킷 지연 편차 중 적어도 하나를 이용하여 상기 클럭 오프셋 추정치의 제1 오차와 상기 패킷 지연 추정치의 제2 오차를 계산하는 것을 특징으로 하는 클럭 동기화 방법.
  10. 청구항 9에 있어서,
    상기 최종 추정치를 계산하는 단계는
    상기 클럭 오프셋 추정치에서 제1 오차를 제거하고, 상기 레퍼런스 클럭과 상기 로컬 클럭의 편차에 상응하는 클럭 노이즈 값을 감산하여 상기 최종 클럭 오프셋 추정치를 계산하는 것을 특징으로 하는 클럭 동기화 방법.
  11. 청구항 10에 있어서,
    상기 최종 추정치를 계산하는 단계는
    상기 패킷 지연 추정치에서 제2 오차를 제거하고, 상기 클럭 노이즈 값을 감산한 값에서 상기 클럭 비율을 곱하여 상기 최종 패킷 지연 추정치를 계산하는 것을 특징으로 하는 클럭 동기화 방법.
  12. 시간 동기 프로토콜을 통해 메시지 전송을 수행하는 메시지 전송부;
    상기 메시지 전송을 통해 생성된 타임스탬프 값들을 저장하는 타임스탬프 저장부;
    상기 타임스탬프 값들을 이용하여 패킷 지연 편차(packet delay variation)를 계산하는 연산부;
    상기 타임스탬프 값들을 이용하여 계산한 클럭 오프셋(clock offset) 추정치와 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하는 오차 필터링부; 및
    상기 오차가 제거된 최종 클럭 오프셋 추정치와 최종 패킷 지연 추정치를 이용하여 클럭 동기화를 수행하는 동기화부;
    를 포함하는 것을 특징으로 하는 클럭 동기화 장치.
  13. 청구항 12에 있어서,
    상기 타임스탬프 저장부는
    상기 메시지 전송부에서 씽크 메시지 전송과 지연 요청 메시지 전송을 수행한 메시지 전송 시점에 상응하는 K-1(K는 2 이상의 자연수) 번째 타임스탬프 값들을 저장하고,
    상기 메시지 전송부에서 씽크 메시지 전송과 지연 요청 메시지 전송을 수행한 메시지 전송 시점에 상응하는 K 번째 타임스탬프 값들을 저장하고,
    상기 K 번째 타임스탬프 값에서 상기 K-1 번째 타임스탬프 값을 감산한 상기 타임스탬프 변화값을 저장하는 것을 특징으로 하는 클럭 동기화 장치.
  14. 청구항 13에 있어서,
    상기 타임스탬프 저장부는
    씽크 메시지 송신 시점에서의 제1 타임스탬프 변화값을 씽크 메시지 수신 시점에서의 제2 타임스탬프 변화값에서 감산하고, K-1 번째 씽크 메시지의 패킷 지연 값을 합산하여 K 번째 씽크 메시지의 패킷 지연 값을 계산하는 것을 특징으로 하는 클럭 동기화 장치.
  15. 청구항 14에 있어서,
    상기 타임스탬프 저장부는
    지연 요청 메시지 송신 시점에서의 제3 타임스탬프 변화값을 지연 요청 메시지 수신 시점에서의 제4 타임스탬프 변화값에서 감산하고, K-1 번째 지연 요청 메시지의 패킷 지연 값을 합산하여 K 번째 지연 요청 메시지의 패킷 지연 값을 계산하는 것을 특징으로 하는 클럭 동기화 장치.
  16. 청구항 15에 있어서,
    연산부는
    레퍼런스 클럭과 로컬 클럭 사이의 클럭 비율을 고려하여 상기 패킷 지연 편차를 계산하는 것을 특징으로 하는 클럭 동기화 장치.
  17. 청구항 16에 있어서,
    상기 오차 필터링부는
    상기 타임스탬프 값들을 이용하여 상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치를 계산하고,
    상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 계산하고,
    상기 클럭 오프셋 추정치와 상기 패킷 지연 추정치에서 상기 패킷 지연 편차와 관련된 오차를 제거하여 최종 추정치를 계산하는 것을 특징으로 하는 클럭 동기화 장치.
  18. 청구항 17에 있어서,
    상기 오차 필터링부는
    상기 타임스탬프 값들, 상기 레퍼런스 클럭, 상기 로컬 클럭 및 상기 패킷 지연 편차 중 적어도 하나를 이용하여 상기 클럭 오프셋 추정치의 제1 오차와 상기 패킷 지연 추정치의 제2 오차를 계산하는 것을 특징으로 하는 클럭 동기화 장치.
  19. 청구항 18에 있어서,
    상기 오차 필터링부는
    상기 클럭 오프셋 추정치에서 제1 오차를 제거하고, 상기 레퍼런스 클럭과 상기 로컬 클럭의 편차에 상응하는 클럭 노이즈 값을 감산하여 최종 클럭 오프셋 추정치를 계산하는 것을 특징으로 하는 클럭 동기화 장치.
  20. 청구항 19에 있어서,
    상기 오차 필터링부는
    상기 패킷 지연 추정치에서 제2 오차를 제거하고, 상기 클럭 노이즈 값을 감산한 값에서 상기 클럭 비율을 곱하여 최종 패킷 지연 추정치를 계산하는 것을 특징으로 하는 클럭 동기화 장치.
KR1020170026187A 2016-11-17 2017-02-28 클럭 동기화 장치 및 방법 KR102614829B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170026187A KR102614829B1 (ko) 2017-02-28 2017-02-28 클럭 동기화 장치 및 방법
CN201710659956.6A CN108075851B (zh) 2016-11-17 2017-08-04 用于同步时钟的设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170026187A KR102614829B1 (ko) 2017-02-28 2017-02-28 클럭 동기화 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20180099140A true KR20180099140A (ko) 2018-09-05
KR102614829B1 KR102614829B1 (ko) 2023-12-20

Family

ID=62159415

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170026187A KR102614829B1 (ko) 2016-11-17 2017-02-28 클럭 동기화 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102614829B1 (ko)
CN (1) CN108075851B (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111212472A (zh) * 2020-01-02 2020-05-29 腾讯科技(深圳)有限公司 一种误差的控制方法、装置及计算机可读存储介质
KR102287793B1 (ko) * 2021-04-14 2021-08-09 세종대학교산학협력단 무인항공비행체 네트워크에 대한 반복적인 시간 동기화 알고리즘 및 시스템
CN113687686A (zh) * 2021-08-10 2021-11-23 北京小米移动软件有限公司 时钟同步方法、装置、电子设备和存储介质
KR20220153158A (ko) * 2021-05-10 2022-11-18 한국전자기술연구원 링 토폴로지 네트워크에서 정밀 시각 동기 프로토콜에 따른 동기화를 수행하기 위한 방법 및 이를 위한 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111459009B (zh) * 2020-04-21 2021-08-17 哈尔滨工业大学 一种多数字电子设备同步的随机误差估计***及其估计方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090032306A (ko) * 2007-09-27 2009-04-01 한국전자통신연구원 네트워크상의 타임 동기화 시스템 및 방법
KR20100034322A (ko) * 2008-09-23 2010-04-01 한국전자통신연구원 고정밀 네트워크 동기를 위한 타임 스탬핑 방법 및 장치
KR20120068582A (ko) * 2010-12-17 2012-06-27 한국전자통신연구원 타임스탬프 예측 장치 및 방법
KR20170105573A (ko) * 2015-01-16 2017-09-19 세인칩스 테크놀로지 컴퍼니 리미티드 Otn 네트워크에서의 시간 동기화 방법, 기기, 시스템 및 저장 매체
KR20190072745A (ko) * 2017-12-18 2019-06-26 전자부품연구원 안정적인 네트워크 기반 시간동기화 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101478358B (zh) * 2008-01-02 2013-01-23 中兴通讯股份有限公司 一种优化时间同步校正的方法和装置
CN101977104B (zh) * 2010-11-13 2013-01-09 上海交通大学 基于ieee1588精确时钟同步协议***及其同步方法
CN103929293B (zh) * 2013-01-15 2017-02-22 电子科技大学 非对称延迟的时间同步方法及***
WO2015049479A1 (en) * 2013-10-02 2015-04-09 Khalifa University of Science, Technology, and Research Method and devices for time and frequency synchronization using a phase locked loop

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090032306A (ko) * 2007-09-27 2009-04-01 한국전자통신연구원 네트워크상의 타임 동기화 시스템 및 방법
KR20100034322A (ko) * 2008-09-23 2010-04-01 한국전자통신연구원 고정밀 네트워크 동기를 위한 타임 스탬핑 방법 및 장치
KR20120068582A (ko) * 2010-12-17 2012-06-27 한국전자통신연구원 타임스탬프 예측 장치 및 방법
KR20170105573A (ko) * 2015-01-16 2017-09-19 세인칩스 테크놀로지 컴퍼니 리미티드 Otn 네트워크에서의 시간 동기화 방법, 기기, 시스템 및 저장 매체
KR20190072745A (ko) * 2017-12-18 2019-06-26 전자부품연구원 안정적인 네트워크 기반 시간동기화 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111212472A (zh) * 2020-01-02 2020-05-29 腾讯科技(深圳)有限公司 一种误差的控制方法、装置及计算机可读存储介质
CN111212472B (zh) * 2020-01-02 2023-09-05 腾讯科技(深圳)有限公司 一种误差的控制方法、装置及计算机可读存储介质
KR102287793B1 (ko) * 2021-04-14 2021-08-09 세종대학교산학협력단 무인항공비행체 네트워크에 대한 반복적인 시간 동기화 알고리즘 및 시스템
KR20220153158A (ko) * 2021-05-10 2022-11-18 한국전자기술연구원 링 토폴로지 네트워크에서 정밀 시각 동기 프로토콜에 따른 동기화를 수행하기 위한 방법 및 이를 위한 장치
CN113687686A (zh) * 2021-08-10 2021-11-23 北京小米移动软件有限公司 时钟同步方法、装置、电子设备和存储介质
CN113687686B (zh) * 2021-08-10 2024-05-14 北京小米移动软件有限公司 时钟同步方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
KR102614829B1 (ko) 2023-12-20
CN108075851A (zh) 2018-05-25
CN108075851B (zh) 2019-11-05

Similar Documents

Publication Publication Date Title
KR102614829B1 (ko) 클럭 동기화 장치 및 방법
EP2434673B1 (en) Network synchronization method and apparatus for performing time synchronization between nodes
JP5548305B2 (ja) パケット交換通信ネットワークにおけるパケットの累積滞留時間の更新
US8700805B2 (en) Method for synchronizing clocks in a communication network
US9374214B2 (en) Communication apparatus, communication system, and communication method
JP4931108B2 (ja) 高精度時刻同期処理装置およびそのプログラム,ならびにネットワーク混雑度警告装置およびそのプログラム
KR20170105573A (ko) Otn 네트워크에서의 시간 동기화 방법, 기기, 시스템 및 저장 매체
JP6351889B1 (ja) 通信システム及びスレーブ装置
US9806876B2 (en) Method and apparatus for compensating synchronization timing in a distributed timing network
JP5815155B2 (ja) 中継装置、中継方法および中継プログラム
EP3231110B1 (en) Method and devices for time transfer using end to end transparent clocks
KR20170135384A (ko) 이더캣 기반의 분산 시계 동기화를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체
US20160359609A1 (en) Communication device, communication system, estimation method, and computer program product
US20170117980A1 (en) Time synchronization for network device
US20160359979A1 (en) Communication device, communication system, and computer program product
US9442511B2 (en) Method and a device for maintaining a synchronized local timer using a periodic signal
JP2012175567A (ja) 同期システムおよび同期システムの同期方法
JP7056570B2 (ja) 無線機器、無線機器の処理方法およびプログラム
CN113411157B (zh) 用于时钟同步的方法、从时钟设备、主时钟设备和***
CN115333660A (zh) 精确时间戳校正
CN113132041B (zh) 一种数据传输延时的计算方法和装置
JP6572136B2 (ja) 通信システム、通信装置、第二装置、通信方法及びコンピュータプログラム
JP6716822B1 (ja) デジタル通信システムの設計装置、およびその設計方法
JP2006157271A (ja) シリアル伝送装置の同期方法
JP2022121763A (ja) 時刻保持回路

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right