[go: up one dir, main page]

KR101322841B1 - 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기방법을 수행하는 기기 - Google Patents

네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기방법을 수행하는 기기 Download PDF

Info

Publication number
KR101322841B1
KR101322841B1 KR1020070026336A KR20070026336A KR101322841B1 KR 101322841 B1 KR101322841 B1 KR 101322841B1 KR 1020070026336 A KR1020070026336 A KR 1020070026336A KR 20070026336 A KR20070026336 A KR 20070026336A KR 101322841 B1 KR101322841 B1 KR 101322841B1
Authority
KR
South Korea
Prior art keywords
time
message
offset
calculating
node
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020070026336A
Other languages
English (en)
Other versions
KR20080069106A (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 US11/846,031 priority Critical patent/US20080175275A1/en
Priority to JP2007315997A priority patent/JP4819781B2/ja
Publication of KR20080069106A publication Critical patent/KR20080069106A/ko
Application granted granted Critical
Publication of KR101322841B1 publication Critical patent/KR101322841B1/ko
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • 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
    • H04L7/10Arrangements for initial synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기 방법을 수행하는 기기에 관한 것이다. 본 발명에 따른 네트워크의 노드간에 시간 동기화를 수행하는 방법은, 슬래이브 노드에서 타임 스탬프(time stamp)를 이용하여 마스터 노드까지의 전파 시간(propagation)에 대한 측정값(measured value)을 기선정된 시간 단위마다 계산하는 단계, 상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우(sliding window)를 이용하여 실제 전파 시간(actual propagation time)의 추정값(estimate)을 계산하는 단계 및 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계를 포함한다.
시간 동기화, 전파 시간(propagation time), DCO(Digital Controlled Oscillator), PLL(Phase Locked Loop), 타임 스탬프(time stamp)

Description

네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기 방법을 수행하는 기기{METHOD FOR EXECUTING TIME SYNCHRONIZATION BETWEEN NODES OF NETWORK AND APPARTUS FOR EXECUTING THE METHOD}
도 1은 종래기술에 있어서, 노드간 동기화 방법을 설명하기 위한 일례이다.
도 2는 전파 시간을 계산하는 방법의 일례이다.
도 3은 슬래이브 노드와 마스터 노드 사이에 중계 장치가 존재하는 경우, 전파 시간을 측정하는 방법의 일례이다.
도 4는 피어-투-피어 트랜스패어런트 클락을 이용한 오프셋 계산 방법의 일례이다.
도 5는 본 발명의 제1 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.
도 6은 본 발명의 제1 실시예에 있어서, 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 방법을 도시한 흐름도이다.
도 7은 본 발명의 제2 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다.
도 8은 본 발명의 제3 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.
도 9는 본 발명의 제3 실시예에 있어서, 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 방법을 도시한 흐름도이다.
도 10은 본 발명의 제4 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다.
도 11은 시간 동기화를 위한 양방향 방법을 설명하기 위한 일례이다.
도 12는 본 발명의 제5 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.
도 13은 본 발명의 제6 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다.
도 14는 시간 동기화를 위한 단방향 방법을 설명하기 위한 일례이다.
<도면의 주요 부분에 대한 부호의 설명>
710: 측정값 계산부
720: 추정값 계산부
721: 측정값 유지부
722: 제2 추정값 계산부
730: 오프셋 계산부
본 발명은 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기 방법 을 수행하는 기기에 관한 것으로 보다 자세하게는, 타임 스탬프에 기반하여 네트워크의 노드간의 시간 동기화를 수행함에 있어서 지터(Jitter), 원더(Wander) 및 시간 동기화 성능을 향상시킬 수 있는 방법 및 기기에 관한 것이다.
현재 IEEE 1588 프로토콜 및 네트워크 타임 프로토콜(NTP: Network Time Protocol)과 같이 타임 스탬프(time stamps)를 이용하여 타이밍(timing)을 전달하기 위한 많은 수의 스킴(schemes)이 존재한다.
이와 같은 모든 스킴에서 네트워크를 구성하는 각각의 노드들은 상기 노드들 중 하나의 노드와 동기화를 시도한다. 이때, 하나의 노드는 마스터라 불리는 노드 즉, 마스터 노드에 소속되어 있다. 또한, 이러한 방법에서 타이밍은 그랜드마스터라 불리는 하나의 노드 즉, 그래드마스터 노드에서 추적 가능(traceable)하다.
마스터 노드는 마스터 노드의 마스터 노드를 제외하고, 마스터 노드에게 부착된 모든 노드에게 타임 스탬프를 포함하는 메시지를 전송한다. 이때, 타임 스탬프는 메시지가 전송되는 순간의 시각을 의미할 수 있다. 각각의 슬래이브 노드는 이러한 타임 스탬프를 수신하고, 슬래이브 노드와 마스터 노드간의 전파 시간(propagation time)을 타임 스탬프에 더한다. 즉, 슬래이브 노드는 메시지를 수신한 시각에서 전파 시간이 더해진 타임 스탬프 즉, 전파 시간 더해진 마스터 노드에서의 전송 시각을 비교함으로써, 마스터 노드와의 차이인 오프셋(offset)을 계산하여 동기화를 수행할 수 있다.
도 1은 종래기술에 있어서, 노드간 동기화 방법을 설명하기 위한 일례이다.
마스터 노드(101)는 슬래이브 노드(102)로 메시지를 전송한다. 이때, 상기 메시지를 전송하는 순간(103)의 시각인 타임 스탬프 T1이 메시지에 기록된다. 또한, 슬래이브 노드는 메시지를 수신하는 경우, 메시지를 수신하는 순간(104)의 시각인 수신 시각 T2를 확인한다. 만약 슬래이브 노드(102)가 마스터 노드(101)로부터의 전파 시간 D1을 알고 있다면 슬래이브 노드(102)는 마스터 노드(101)와의 차이인 오프셋을 "오프셋 = T2 - T1 - D1"와 같이 계산할 수 있고, 오프셋을 이용하여 마스터 노드(101)와의 동기화를 수행할 수 있다.
그러나, 위에서의 가정에서와 같이 오프셋을 계산하기 위해서는 마스터 노드(101)로부터의 전파 시간 D1을 슬래이브 노드(102)가 알고 있어야 한다. 즉, 슬래이브 노드(102)는 전파 시간 D1을 계산해야 한다.
이러한 전파 시간을 계산하는 방법 및 오프셋을 계산하는 또 다른 방법에 대해서는 본 발명의 배경으로서 [발명의 구성]에서 자세히 설명한다.
위에서 설명한 그리고 이후 설명될 스킴들은 슬래이브 노드에서 이용되는 오프셋을 어떻게 계산하는가에 대해 상세히 명기(specify)하지 않는다. 슬래이브 노드에서 직접 조정할 수 있지만, 이는 종종 과도한 지터(Jitter), 원더(Wander) 및 시간 동기화의 부정확이란 결과를 발생시키는 문제점이 있다. 많은 경우, 슬래이브 노드에서 오프셋들의 시퀀스는 DCO(Digital Controlled Oscillator)를 이용하여 여과되고(is filtered), 더 낮은 지터 및 원더를 원하는 경우, 아날로그 PLL(Phase Locked Loop)를 이용하여 여과된다. 그러나 이와 같은 DCO 및 PLL을 슬래이브 노드에서 이용하는 스킴은 더 비싼 비용을 요구하기 때문에 더 엄격한(stringent) 어플리케이션에서만 이용되는 실정이다.
시간 부정확의 하나의 메인 근원은 타임 스탬프 측정의 한정된 입도(granularity)에 기인한다. 예를 들어, 표준 이더넷(Ethernet) 브릿지(bridges)와 종단 장치는 25MHz 발진기(oscillator)를 요구한다. 이러한 장치에 있어서, 타임 스탬프 측정의 입도는 40나노초이다. 이는 전파 시간 측정에 있어서, 80나노초 만큼의 에러(error)를 발생시킬 수 있음을 의미한다.
이러한 에러는 피어-투-피어(peer-to-peer) 트랜스패어런트 클락(transparent clock)을 사용하는 스킴에서 전파 시간에 누적된다. N-홉의 경우 즉, 마스터 노드와 슬래이브 노드 사이에 N-1 개의 피어-투 피어 트랜스패어런트 클락이 존재하는 경우, 가능한 에러는 80N나노초이다. 많은 수의 홉의 경우에 이러한 에러는 빠르게 증가하여 수백 나노초 또는 1마이크로초를 넘어서는 문제점이 있다. 이러한 경우, 위에서 설명한 PLL 필터링을 이용하여 에러를 줄일 수 있지만 이러한 필터링은 비용이 많이 들고, 또한, 타이밍 신호를 위한 각각의 저장 장소를 필요로 한다. 이는 비용이 더 증가됨을 의미한다. 따라서, 값비싼 PLL 필터링을 이용하지 않으면서도 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있는 새로운 시간 동기화 방법이 절실히 요구된다.
본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위해, 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기 방법을 수행하는 기기에 관한 새로운 기술을 제안한다.
본 발명은 슬래이브 노드에서 기선정된(predetermined) 시간 단위마다 타임 스탬프에 기반하여 전파 시간(propagation)의 측정값(measured value)들을 계산하고, 상기 측정값들의 평균 및 슬라이딩 윈도우를 이용하여 마스터 노드로부터의 오프셋(offset)을 계산함으로써 지터(Jitter), 원더(Wander) 및 시간 동기화의 성능을 향상시키는 것을 목적으로 한다.
본 발명의 다른 목적은 슬래이브 노드에서 기선정된 시간 단위마다 상기 타임 스탬프에 기반하여 전파 시간의 측정값들을 계산하고, 상기 측정값들의 평균 및 일반적인 선형 디지털 필터(liner digital filter)를 이용하여 마스터 노드로부터의 오프셋을 계산함으로써 지터, 원더 및 시간 동기화의 성능을 향상시키는 것이다.
본 발명의 또 다른 목적은 단방향으로 전파 시간을 측정하는 시스템에서 기선정된 시간 단위마다 마스터 노드로부터의 제1 오프셋을 계산하고, 상기 제1 오프셋 및 이전 시간 단위에 계산된 오프셋들을 입력값으로 하는 선형 디지털 필터를 통해 현재 시간 단위의 오프셋인 제2 오프셋을 계산함으로써, 중계 장치에서의 체류 시간(residence time)을 고려함과 동시에 지터, 원더 및 시간 동기화의 성능을 향상시키는 것이다.
상기의 목적을 달성하고, 상술한 종래기술의 문제점을 해결하기 위하여, 본 발명의 일실시예에 따른 네트워크의 노드간에 시간 동기화를 수행하는 방법은, 슬래이브 노드에서 타임 스탬프(time stamp)를 이용하여 마스터 노드까지의 전파 시간(propagation)에 대한 측정값(measured value)을 기선정된 시간 단위마다 계산하 는 단계, 상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우(sliding window)를 이용하여 실제 전파 시간(actual propagation time)의 추정값(estimate)을 계산하는 단계 및 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계를 포함한다.
본 발명의 일측에 따르면, 상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 상기 단계는, 상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지하는 단계 및 상기 유지된 측정값들의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 계산하는 단계를 포함할 수 있다.
본 발명의 다른 측면에 따르면, 상기 유지된 측정값들의 평균을 계산하고, 상기 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 계산하는 상기 단계는, 하기 수학식 1과 같이 상기 제2 추정값을 계산할 수 있다.
Figure 112007021509738-pat00001
Figure 112007021509738-pat00002
여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 상기 Dk의 계차방정식(difference equation)의 이송 함수(transfer function)를 각각 의미할 수 있다
본 발명의 다른 실시예에 따르면, 네트워크의 노드간에 시간 동기화를 수행하는 방법은, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 단계, 상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터(linear digital filter)를 이용하여 실제 전파 시간의 추정값을 계산하는 단계 및 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계를 포함한다. 이때, 상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 상기 단계는, 기선정된 제1 수만큼 상기 측정값을 유지하는 단계, 기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지하는 단계 및 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산하는 단계를 포함할 수 있고, 상기 선형 디지털 필터는 복수의 필터 계수(filter coefficients)를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산할 수 있다.
본 발명의 또 다른 실시예에 따르면, 네트워크의 노드간에 시간 동기화를 수 행하는 방법은, 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산하는 단계 및 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산하는 단계를 포함한다.
이하 첨부된 도면을 참조하여 본 발명에 따른 다양한 실시예를 상세히 설명하기로 한다.
1. 배경(background).
도 2는 전파 시간을 계산하는 방법의 일례이다.
두 개의 노드 즉, 마스터 노드(201) 및 슬래이브 노드(202)에 각각 부착된 클락(attached clock)간의 전파 시간은 타임 스탬프를 교환하는 상기 클락들에 의해 측정된다. 상기 클락들 중 하나인 리퀘스터(requester)는 상기 리퀘스터가 제1 메시지를 다른 클락으로 전송할 때 상기 제1 메시지에 상기 제1 메시지의 전송 시각 T1(203)을 기록한다. 상기 다른 클락인 리스폰더(responder)는 상기 제1 메시지의 수신 시각 T2(204)를 기록한다.
이후, 상기 리스폰더에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 리퀘스터로 전송하다. 이때, 상기 리퀘스터는 상기 제2 메시지에 상기 제2 메시지의 전송 시각 T3(205)을 기록하여 전송한다. 마지막으로 상기 리퀘스터는 상기 제2 메시지의 수신시각 T4(206)를 확인한다.
상기 리퀘스터는 이와 같이 확인된 상기 T1(203) 내지 상기 T4(206)를 이용 하여 다음 수학식 2와 같이 표현되는 상기 전파 시간을 계산할 수 있다.
전파 시간 = ((T2 - T1) + (T4 - T3)) / 2
여기서, 상기 전파 시간을 측정한 방법은 다음 (1) 내지 (4)의 조건을 만족한다고 가정한다.
(1) 상기 전파 시간이 대칭적이다. 즉, 양방향 모두에서 동일하다.
(2) 상기 전파 시간은 안정적이다(is stable). 즉, 4개의 타임 스탬프인 상기 T1 내지 상기 T4를 얻기 위한 시간 비율(timescale)이 일정하다.
(3) 마스터 노드와 슬래이브 노드 사이에 주파수의 차이가 작다.
(4) 상기 타임 스탬프의 값은 정확하다.
그러나, 상기 (1) 및 상기 (2)의 가정은 상기 리퀘스터와 상기 리스폰더간에 변하기 쉬운 지연(variable delay)의 근원(source)이 존재할 수 없음을 의미한다. 다시 말해, 상기 마스터 노드 및 상기 슬래이브 노드간에 네트워크 스위치, 네트워크 브릿지 등의 중계 장치가 존재할 수 없음을 의미한다. 이러한 어떠한 장치의 존재는 지터(Jitter), 원더(Wander) 및 시간 동기화의 부정확(inaccuracy)을 야기할 수 있다.
이와 같은 상기 마스터 노드와 상기 슬래이브 노드간에 상기 네트워크 스위치 또는 상기 네트워크 브릿지가 존재함으로써 전파 시간의 변화 및 비대칭성이 발생하고, 이를 다루기 위한 다른 접근법(approach)로서 상기 네트워크 스위치 또는 상기 네트워크 브릿지와 같은 중계 장치에서 각각의 메시지의 수신 시각 및 전송 시각을 상기 메시지에 기록하는 방법이 있다. 이러한 상기 방법은, 상기 중계 장치에서 트랜스패어런트 클락(Transparent Clock)이라 불리는 클락과 시간을 기록하는 하드웨어(a clock and time stamping hardware)를 포함할 것을 요구한다.
상기 트랜스패어런트 클락은 상기 메시지의 수신 시각 및 상기 메시지의 전송 시각간의 차이를 계산한다. 이때, 이러한 상기 차이를 체류 시간(residence time)이라 한다. 상기 체류 시간은 상기 메시지의 필드에 누적되고, 누적된 값은 상기 전파 시간의 변화된 부분을 의미한다. 즉, 상기 값은 상기 슬래이브 노드에서 상기 중계 장치로 인해 변화된 상기 전파 시간의 변화량을 의미할 수 있다.
도 3은 슬래이브 노드와 마스터 노드 사이에 중계 장치가 존재하는 경우, 전파 시간을 측정하는 방법의 일례이다.
슬래이브 노드(301)는 제1 메시지를 마스터 노드(302)로 전송하고, 마스터 노드(302)는 상기 제1 메시지에 대응하는 제2 메시지를 슬래이브 노드(301)로 전송함으로써 위에서 설명한 도 2에서와 같이 상기 T1 내지 상기 T4를 측정한다. 이때, 상기 제1 메시지 및 상기 제2 메시지는 중계 노드(303)를 거치게 되고, 중계 노드(303)는 중계 노드(303)가 포함하는 트랜스패어런트 클락을 이용하여 중계 노드(303)에서의 체류 시간을 측정한다.
즉, 중계 노드(303)는 상기 제1 메시지의 수신 시각(304) 및 전송 시각(305)의 차이 R1을 계산하고, 상기 제2 메시지의 수신 시각(306) 및 전송 시각(307)의 차이 R2를 계산하여 상기 제1 메시지 및 상기 제2 메시지에 각각 기록함으로써 슬래이브 노드(301)는 중계 노드(303)에 의해 발생하는 상기 전파 시간의 변화량을 알 수 있다.
이때, 상기 전파 시간은 슬래이브 노드(301)에서 다음 수학식 3과 같이 계산될 수 있다.
전파 시간 = ((T2 - T1 - R1) + (T4 - T3 - R2)) / 2
이와 같이 상기 트랜스패어런트 클락을 이용한 접근법은 슬래이브 노드와 마스터 노드간의 전파 시간이 네트워크 재구성 후에 다시 측정되어야 한다. 이는 위와 같은 메커니즘이 상기 트랜스패어런트 클락의 모든 쌍간에 상기 전파 시간의 측정을 제공하는 것이 아니라 오직 각각의 슬래이브 노드와 상기 슬래이브 노드의 마스터 노드간에서만 상기 전파 시간의 측정을 제공하기 때문이다. 이러한 상기 메커니즘은 네트워크가 재구성될 때 동기화의 손실을 야기할 수 있다.
또 다른 접근법으로서, 상기 트랜스패어런트 클락이 스스로 상기 트랜스패어런트 클락간의 전파 시간을 측정하기 위해 메시지를 교환하는 방법이 있다. 즉, 이러한 상기 메시지의 교환은 상기 트랜스패어런트 클락의 이웃한 모든 쌍간에 양방향으로 이루어진다. 상기 트랜스패어런트 클락들은 피어-투-피어 트랜스패어런트 클락이라 불리는 특성을 갖는다. 즉, 마스터 노드와 슬래이브 노드가 상기 피어-투-피어 트랜스패어런트 클락 사이에서 연결될 때, 상기 마스터 노드가 전송 시각이 기록된 메시지를 상기 슬래이브 노드로 전송하고, 각각의 상기 피어-투-피어 트랜스패어런트 클락은 체류 시간을 상기 메시지에 누적한다. 또한, 상기 피어-투-피어 트랜스패어런트 클락간에 측정된 전파 시간을 또한 상기 메시지에 누적한다. 즉, 상기 메시지가 도착한 링크의 상기 전파 시간을 상기 메시지에 누적한다.
이때, 상기 메시지를 수신한 상기 슬래이브 노드는 상기 메시지에 기록된 상기 마스터 노드에서의 전송 시각, 상기 누적된 체류 시간, 상기 누적된 전파 시간 및 상기 메시지의 수신 시각을 이용하여 바로 상기 마스터 노드로부터의 오프셋을 계산할 수 있다.
도 4는 피어-투-피어 트랜스패어런트 클락을 이용한 오프셋 계산 방법의 일례이다.
마스터 노드(401)는 슬래이브 노드(402)로 메시지를 전송한다. 이때, 상기 메시지는 상기 메시지의 전송 시각 T1(403)을 포함한다. 상기 메시지가 중계 노드(404)를 거치는 경우, 중계 노드(404)는 중계 노드(404)에서의 체류 시간(405)과 상기 메시지를 수신한 링크의 전파 시간(406)을 계산하여 상기 메시지에 기록하여 슬래이브 노드(402)로 전송한다.
슬래이브 노드(402)는 상기 메시지의 수신 시각 T2(407) 및 마지막 중계 노드와 슬래이브 노드(402)간의 링크에 대한 전파 시간 D1(408)을 측정한다. 슬래이브 노드(402)는 상기 메시지의 전송 시각 T1(403), 체류 시간(405)과 상기 메시지를 수신한 링크의 전파 시간(406), 전파 시간 D1(408) 및 상기 메시지의 수신 시각 T2(407)을 이용하여 마스터 노드(401)로부터의 오프셋을 계산할 수 있다.
이때, 슬래이브 노드(402)는 다음 수학식 4와 같이 마스터 노드(401)로부터의 오프셋을 계산할 수 있다.
오프셋 = T2 - T1 - R1 - D1
여기서, 상기 R1은 체류 시간(405)과 상기 메시지를 수신한 링크의 전파 시간(406)의 누적된 값을 의미할 수 있다.
도 2 및 도 3에서 설명한 전파 시간 측정 방법은 마스터 노드와 슬래이브 노드간에 메시지를 교환하면서 전파 시간을 측정함으로써 오프셋을 측정하는 양방향 방법이고, 도 4에서 설명한 오프셋 측정 방법은 마스터 노드에서 슬래이브 노드로 단 한번의 메시지 전송으로 오프셋을 계산할 수 있는 단방향 방법이다.
2. 본 발명에 따른 시간 동기화 방법.
본 발명에 따른 시간 동기화 방법은 다음 (1) 내지 (3)의 경우에 이용될 수 있다.
(1) 각각의 슬래이브 노드가 마스터 노드와의 사이에 존재하는 트랜스패어런트 클락 없이 상기 마스터 노드와의 지연 시간을 측정한다.
(2) 각각의 슬래이브 노드가 마스터 노드와의 지연 시간을 측정하고 이때, 상기 슬래이브 노드와 상기 마스터 노드간에 하나 또는 그 이상의 단 대 단(end-to-end) 트랜스패어런트 클락이 존재한다.
(3) 슬래이브 노드와 마스터 노드간에 하나 또는 그 이상의 피어-투-피어 트랜스패어런트 클락이 존재하고, 각각의 전파 시간이 이웃한 피어-투-피어 트랜스패어런트 클락 쌍에서 개별적으로 측정된다. 상기 마스터 노드와 첫 번째 피어-투- 피어 트랜스패어런트 클락과의 전파 시간 및 상기 슬래이브 노드와 마지막 피어-투-피어 트랜스패어런트 클락과의 전파 시간 또한 개별적으로 측정된다.
여기서, 위상 측정 입도가 제한된 클락을 이용하여 안정적인 전파 시간을 측정할 때, 상기 전파 시간의 측정값(measured values)은 두 값 사이에서 오르내리는 경향이 있다. 즉, 상기 측정값은 전파 시간보다 작은 클락 입도(clock granularity)의 최대 정수배(greatest integer multiple)와 상기 전파 시간보다 큰 클릭 입도의 최소 정수배 사이의 값을 갖는다.
이와 같은 상기 두 값 사이의 전파 시간은 연속적인 측정값의 평균을 통해 실제 전파 시간(actual propagation time)을 측정할 수 있고, 상기 평균을 계산하기 위해 다음 두 가지 방법을 이용할 수 있다.
첫 번째는 M 길이의 슬라이딩 윈도우(sliding window of length M)를 이용하는 방법이고, 두 번째는 일반적인 선형 디지털 필터(general linear digital filter)를 이용하는 방법이다.
도 5는 본 발명의 제1 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.
단계(S510)에서 슬래이브 노드는 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산한다. 이때, 상기 슬래이브 노드는 상기 시간 단위마다 계산된 상기 측정값을 기선정된 수만큼 저장 및 유지할 수 있다. 현재 시간 단위에서 상기 측정값을 계산하기 위해 상기 슬래이브 노드는 단계(S510)에 단계(S511) 내지 단계(S514)를 포함하여 수행할 수 있다.
단계(S511)에서 상기 슬래이브 노드는 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송한다. 즉, 상기 슬래이브 노드는 전파 시간에 대한 상기 측정값을 계산하기 위해 위에서 설명한 바와 같이 4개의 시각을 필요로 하고, 이를 위해 상기 제1 메시지를 상기 마스터 노드로 전송한다. 이때, 상기 제1 타임 스탬프는 상기 수학식 2의 T1에 해당한다.
단계(S512)에서 상기 마스터 노드는 상기 제1 메시지의 수신 시각인 제2 타임 스탬프를 확인한다. 이때, 상기 제2 타임 스탬프는 상기 수학식 2의 T2에 해당한다.
단계(S513)에서 상기 마스터 노드는 상기 제1 타임 스탬프, 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 상기 슬래이브 노드로 전송한다. 여기서 상기 제3 타임 스탬프는 상기 수학식 2의 T3에 해당하고, 상기 제2 메시지를 상기 슬래이브 노드로 전송함으로써 상기 제1 타임 스탬프 내지 상기 제3 타임 스탬프를 전송한다.
단계(S514)에서 상기 슬래이브 노드는 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인하고, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산한다. 이때, 상기 제4 타임 스탬프는 상기 수학식 2의 T4에 해당한다. 즉, 상기 슬래이브 노드는 다음 수학식 5와 같이 상기 측정값을 계산할 수 있다.
Figure 112007021509738-pat00003
여기서, 상기 dk는 상기 측정값을, 상기 T1,k는 상기 제1 타임 스탬프를, 상기 T2,k는 상기 제2 타임 스탬프를 상기 T3,k는 상기 제3 스탬프를, 상기 T4,k는 상기 제4 타임 스탬프를, 상기 k는 상기 제1 타임 스탬프 내지 상기 제4 타임 스탬프가 k-번째 시간 단위에 측정되었음을 각각 의미한다.
단계(S520)에서 상기 슬래이브 노드는 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산한다. 길이 M의 슬라이딩 윈도우는 M개의 상기 측정값을 저장할 수 있는 버퍼를 포함할 수 있다. 이때, 상기 슬라이딩 윈도우는 가장 최근의 측정값 M개를 상기 버퍼에 유지할 수 있고, 상기 M개의 측정값을 통해 상기 실제 전파 시간의 추정값을 계산할 수 있다. 이와 같이 상기 슬라이딩 윈도우를 통해 상기 실제 전파 시간의 추정값을 계산하는 단계(S520)에 대해서는 도 6을 통해 더욱 자세히 설명한다.
단계(S530)에서 상기 슬래이브 노드는 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산한다. 이때, 상기 슬래이브 노드는 상기 오프셋을 계산하기 위해 다음 수학식 6을 이용할 수 있다.
오프셋 = T2 - T1 - D1
여기서, 상기 T2는 상기 메시지 수신 시각을, 상기 T1은 상기 메시지 전송 시각을, 상기 D1은 상기 추정값을 각각 의미한다.
즉, 상기 슬래이브 노드에서의 상기 메시지 수신 시각에서 상기 마스터 노드에서의 상기 메시지 전송 시각을 빼면, 상기 메시지가 상기 슬래이브 노드에 도달하기까지의 시간이 남는다. 여기서 다시 상기 슬라이딩 윈도우를 이용하여 계산된 상기 전파 시간의 측정값을 제외하면 상기 슬래이브 노드와 상기 마스터 노드간의 타이밍 차이를 알 수 있고, 이를 이용하여 상기 슬래이브 노드와 상기 마스터 노드간의 시간 동기화를 수행할 수 있다.
도 6은 본 발명의 제1 실시예에 있어서, 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 방법을 도시한 흐름도이다. 도 6에 도시된 바와 같이 상기 슬라이딩 윈도우를 이용하여 상기 추정값을 계산하기 위해 단계(S601) 및 단계(S602)는 도 5에서 설명한 단계(S520)에 포함되어 수행될 수 있다.
단계(S601)에서 상기 슬래이브 노드는 상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지한다. 위에서 설명한 바와 같이 M 길이의 상기 슬라이딩 윈도우는 상기 M개의 상기 측정값을 유지할 수 있는 버퍼를 포함할 수 있고, 상기 버퍼를 통해 상기 M개의 측정값을 유지할 수 있다.
단계(S602)에서 상기 슬래이브 노드는 상기 유지된 측정값들의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 상기 추정값으로서 계산한다. 이때, 상기 슬래이브 노드는 상기 수학식 1을 이용 하여 상기 제2 추정값을 계산할 수 있다.
즉, M 길이의 슬라이딩 윈도우를 이용하여 상기 연속적인 측정값에 대한 평균을 구하고, 상기 평균과 전파 시간의 측정값 중에서 현재의 측정값 및 가장 최근의 M-1개의 측정값들에 대한 평균을 이용하여 상기 수학식 1과 같이 상기 제2 추정값을 상기 추정값으로서 계산할 수 있다.
상기 수학식 1을 다시 살펴보면, 상기 dk는 전파 시간의 k-번째의 측정값 즉, 시간 단위 k에서의 측정값을 의미하고, 상기 Dk는 실제 전파 시간의 k-번째 추정값(estimate) 즉, 상기 시간 단위 k에서의 추정값이다. 즉, 여기서 현재 시간 단위의 추정값은 상기 제2 추정값을 의미하고, 이전 시간 단위의 추정값은 상기 제1 추정값을 의미한다.
또한, 상기 M은 상기 슬라이딩 윈도우의 기선정된(predetermined) 길이이다.
이때, 상기 dk는 제한된 위상 측정 입도(phase measurement granularity)를 갖는 클락(clock)의 사용함에 따라 에러가 발생하기 때문에 상기 dk와 dk-M의 차이를 계산하여 상기 차이의 상기 M에 대한 비율 즉, 가장 최근의 M개의 측정값에 대한 평균 및 (k-1)-번째의 추정값인 상기 Dk-1을 이용하여 상기 추정값 Dk를 계산할 수 있다.
상기 H(z)는 상기 추정값 Dk를 위한 계차방정식(difference equation)에 대한 이송 함수(transfer function)를 나타낸다.
여기서, 상기 슬라이드 윈도우의 길이 M은 상기 dk를 변화시키는 샘플들의 수에 비해 큰 값으로 선택되어야 한다. 실제 실험에 따르면, 상기 M이 32 또는 32보다 더 큰 수로 선택되었을 때 좋은 결과를 갖는다.
도 7은 본 발명의 제2 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다. 도 7에 도시된 바와 같이 기기(700)는 측정값 계산부(710), 추정값 계산부(720) 및 오프셋 계산부(730)를 포함한다.
측정값 계산부(710)는 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산한다. 현재 시간 단위의 측정값을 계산하기 위해 측정값 계산부(710)는 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송할 수 있다.
이때, 상기 마스터 노드는 상기 제1 타임 스탬프, 상기 제1 메시지의 수신 시각인 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 슬래이브 노드를 구성하는 기기(700)로 전송할 수 있고, 측정값 계산부(710)는 기기(700)에서 수신한 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인한다.
이제 측정값 계산부(710)는 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산할 수 있다.
추정값 계산부(720)는 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산한다. 이때, 상기 추정값을 계산하기 위해 추정값 계산 부(720)는 측정값 유지부(721) 및 제2 추정값 계산부(722)를 포함할 수 있다.
측정값 유지부(721)는 상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지한다. 위에서 설명한 바와 같이 M 길이의 상기 슬라이딩 윈도우는 상기 M개의 상기 측정값을 유지할 수 있는 버퍼를 포함할 수 있고, 상기 버퍼를 통해 상기 M개의 측정값을 유지할 수 있다.
제2 추정값 계산부(722)는 상기 유지된 측정값들의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 상기 추정값으로서 계산한다. 즉, M 길이의 슬라이딩 윈도우를 이용하여 상기 연속적인 측정값에 대한 평균을 구하고, 상기 평균과 전파 시간의 측정값 중에서 현재의 측정값 및 가장 최근의 M-1개의 측정값들에 대한 평균을 이용하여 상기 수학식 1과 같이 상기 제2 추정값을 상기 추정값으로서 계산할 수 있다.
상기 수학식 1을 다시 살펴보면, 상기 dk는 전파 시간의 k-번째의 측정값 즉, 시간 단위 k에서의 측정값을 의미하고, 상기 Dk는 실제 전파 시간의 k-번째 추정값(estimate) 즉, 상기 시간 단위 k에서의 추정값이다. 즉, 여기서 현재 시간 단위의 추정값은 상기 제2 추정값을 의미하고, 이전 시간 단위의 추정값은 상기 제1 추정값을 의미한다.
또한, 상기 M은 상기 슬라이딩 윈도우의 기선정된(predetermined) 길이이다.
이때, 상기 dk는 제한된 위상 측정 입도(phase measurement granularity)를 갖는 클락(clock)의 사용함에 따라 에러가 발생하기 때문에 상기 dk와 dk-M의 차이를 계산하여 상기 차이의 상기 M에 대한 비율 즉, 가장 최근의 M개의 측정값에 대한 평균 및 (k-1)-번째의 추정값인 상기 Dk-1을 이용하여 상기 추정값 Dk를 계산할 수 있다.
상기 H(z)는 상기 추정값 Dk를 위한 계차방정식(difference equation)에 대한 이송 함수(transfer function)를 나타낸다.
여기서, 상기 슬라이드 윈도우의 길이 M은 상기 dk를 변화시키는 샘플들의 수에 비해 큰 값으로 선택되어야 한다. 실제 실험에 따르면, 상기 M이 32 또는 32보다 더 큰 수로 선택되었을 때 좋은 결과를 갖는다.
오프셋 계산부(730)는 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산한다.
이와 같이 본 발명에 따른 시간 동기화 방법 및 슬래이브 노드를 구성하는 기기를 이용하면 상기 슬래이브 노드에서 기선정된 시간 단위마다 타임 스탬프에 기반하여 전파 시간의 측정값들을 계산하고, 상기 측정값들의 평균 및 슬라이딩 윈도우를 이용하여 마스터 노드로부터의 오프셋을 계산함으로써 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.
도 8은 본 발명의 제3 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.
단계(S810)에서 슬래이브 노드는 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산한다. 이때, 현재 시간 단위에서 상기 측정값을 계산하기 위해 상기 슬래이브 노드는 단계(S810)에 단계(S811) 내지 단계(S814)를 포함하여 수행할 수 있다.
단계(S811)에서 상기 슬래이브 노드는 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송한다. 즉, 상기 슬래이브 노드는 전파 시간에 대한 상기 측정값을 계산하기 위해 위에서 설명한 바와 같이 4개의 시각을 필요로 하고, 이를 위해 상기 제1 메시지를 상기 마스터 노드로 전송한다. 이때, 상기 제1 타임 스탬프는 상기 수학식 5의 T1,k에 해당한다.
단계(S812)에서 상기 마스터 노드는 상기 제1 메시지의 수신 시각인 제2 타임 스탬프를 확인한다. 이때, 상기 제2 타임 스탬프는 상기 수학식 5의 T2,k에 해당한다.
단계(S813)에서 상기 마스터 노드는 상기 제1 타임 스탬프, 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 상기 슬래이브 노드로 전송한다. 이때, 상기 제3 타임 스탬프는 상기 수학식 5의 T3,k에 해당한다.
단계(S814)에서 상기 슬래이브 노드는 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인하고, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산한다. 이때, 상기 제4 타임 스탬프는 상기 수학식 5의 T4,k에 해당하고 따라서, 상기 슬래이브 노드는 상기 수학식 5와 같이 시간 단위 k에서의 전파 시간에 대한 상기 측정값을 계산할 수 있다.
단계(S820)에서 상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터(linear digital filter)를 이용하여 실제 전파 시간의 추정값을 계산한다. 이와 같이 상기 선형 디지털 필터를 통해 상기 실제 전파 시간의 추정값을 계산하는 단계(S820)에 대해서는 도 9를 통해 더욱 자세히 설명한다.
단계(S830)에서 상기 슬래이브 노드는 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산한다. 이때, 상기 슬래이브 노드는 상기 오프셋을 계산하기 위해 상기 수학식 9를 이용할 수 있다.
즉, 상기 슬래이브 노드에서의 상기 메시지 수신 시각에서 상기 마스터 노드에서의 상기 메시지 전송 시각을 빼면, 상기 메시지가 상기 슬래이브 노드에 도달하기까지의 시간이 남는다. 여기서 다시 상기 선형 디지털 필터를 이용하여 계산된 상기 전파 시간의 측정값을 제외하면 상기 슬래이브 노드와 상기 마스터 노드간의 타이밍 차이를 알 수 있고, 이를 이용하여 상기 슬래이브 노드와 상기 마스터 노드간의 시간 동기화를 수행할 수 있다.
도 9는 본 발명의 제3 실시예에 있어서, 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 방법을 도시한 흐름도이다. 도 9에 도시된 바와 같이 단계(S901) 내지 단계(S903)은 도 8에서 설명한 단계(S820)에 포함되어 수행될 수 있다.
단계(S901)에서 상기 슬래이브 노드는 기선정된 제1 수만큼 상기 측정값을 유지한다. 여기서, 상기 제1 수는 유지하고자 하는 상기 측정값의 수에 따라 변형 이 가능하다.
단계(S902)에서 상기 슬래이브 노드는 기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지한다. 여기서, 상기 제2 수는 유지하고자 하는 상기 제1 추정값의 수에 따라 변형이 가능하다.
단계(S903)에서 상기 슬래이브 노드는 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산한다. 이때, 상기 선형 디지털 필터는 복수의 필터 계수(filter coefficients)를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산할 수 있다.
일반적인 선형 디지털 필터를 이용하여 상기 전파 시간의 연속적으로 유지된 측정값에 대한 평균을 구하기 위해 상기 측정값들의 시퀀스는 다음 수학식 7과 같이 표현되는 상기 일반적인 선형 디지털 필터로 입력되고, 그 결과를 통해 상기 제2 추정값 Dk를 계산할 수 있다..
Figure 112007021509738-pat00004
Figure 112007021509738-pat00005
여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 제2 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 필터 이송 함수(filter transfer function)를, 상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 복수의 필터 계수를 각각 의미한다. 또한, 여기서 상기 n은 상기 제1 수를, 상기 m은 상기 제2 수를 각각 의미한다.
뿐만 아니라, 상기 수학식 7에서 상기 선형 디지털 필터의 출력(output)이 상기 실제 전파 시간에 수렴하기 위해 상기 필터 계수는 다음 수학식 8의 조건을 만족해야 한다.
Figure 112007021509738-pat00006
여기서, 상기 선형 디지털 필터의 밴드위스(bandwidth)는 상기 dk의 변화량(variation)의 이산 주파수(discrete frequency)에 비해 작아야 한다.
도 10은 본 발명의 제4 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다. 도 10에 도시된 바와 같이 기기(1000)는 측정값 계산부(1010), 추정값 계산부(1020) 및 오프셋 계산부(1030)를 포함한다.
측정값 계산부(1010)는 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산한다. 현재 시간 단위의 측정값을 계산하기 위해 측정값 계산부(1010)는 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송할 수 있다.
이때, 상기 마스터 노드는 상기 제1 타임 스탬프, 상기 제1 메시지의 수신 시각인 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 슬래이브 노드를 구성하는 기기(1000)로 전송할 수 있고, 측정값 계산부(1010)는 기기(1000)에서 수신한 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인한다.
이제 측정값 계산부(1010)는 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산할 수 있다.
추정값 계산부(1020)는 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산한다. 이때, 상기 추정값을 계산하기 위해 추정값 계산부(1020)는 측정값 유지부(1021), 제1 추정값 유지부(1022) 및 제2 추정값 계산부(1023)를 포함할 수 있다.
측정값 유지부(1021)는 기선정된 제1 수만큼 상기 측정값을 유지한다. 여기서, 상기 제1 수는 유지하고자 하는 상기 측정값의 수에 따라 변형이 가능하다.
제1 추정값 유지부(1022)는 기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지한다. 여기서, 상기 제2 수는 유지하고자 하는 상기 제1 추정값의 수에 따라 변형이 가능하다.
제2 추정값 계산부(1023)는 상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산한다. 이때, 상기 선형 디지털 필터는 복수의 필터 계수를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산할 수 있다. 즉, 제2 추정값 계산부(1023)는 상기 수학식 7과 같이 상기 제2 추정값을 계산할 수 있다.
오프셋 계산부(1030)는 상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산한다. 이때, 오프셋 계산부(1030)는 상기 수학식 6과 같이 표현되는 상기 오프셋을 계산할 수 있다.
즉, 상기 메시지의 수신 시각에서 상기 메시지의 전송 시각을 제외함으로써 상기 메시지가 상기 마스터 노드에서 상기 슬래이브 노드까지 도달하는데 걸린 시간을 계산할 수 있고, 상기 시간에서 상기 선형 디지털 필터를 이용하여 계산된 상기 전파 시간의 추정값을 제외함으로써 상기 마스터 노드와 상기 슬래이브 노드간의 타이밍 차이를 확인할 수 있고, 이를 통해 상기 마스터 노드와 상기 슬래이브 노드간의 시간 동기화를 수행할 수 있다.
이와 같이 본 발명에 따른 시간 동기화 수행 방법 및 기기를 이용하면 슬래이브 노드에서 기선정된 시간 단위마다 상기 타임 스탬프에 기반하여 전파 시간의 측정값들을 계산하고, 상기 측정값들의 평균 및 일반적인 선형 디지털 필터(liner digital filter)를 이용하여 마스터 노드로부터의 오프셋을 계산함으로써 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.
도 11은 시간 동기화를 위한 양방향 방법을 설명하기 위한 일례이다.
마스터 노드(1101)는 시간 동기화를 위해 마스터 노드(1101)의 마스터 노드를 제외한 모든 슬래이브 노드에게 제1 메시지의 전송 시각 T1을 포함하는 상기 제1 메시지를 전송한다. 상기 모든 슬래이브 노드는 상기 제1 메시지를 수신하면 상기 제1 메시지의 수신 시각 T2를 확인한다. 이때, 상기 모든 슬래이브 노드에서 마스터 노드(1101)와의 전파 시간을 알고 있다면 상기 수학식 6을 통해 설명한 바와 같이 상기 모든 슬래이브 노드와 마스터 노드(1101)간의 오프셋을 각각 계산할 수 있고, 이를 통해 상기 시간 동기화를 수행할 수 있다.
상기 모든 슬래이브 노드 중 하나의 슬래이브 노드(1102)는 상기 전파 시간을 측정하기 위해 시간 단위 k에 마스터 노드(1101)로 제2 메시지를 전송한다. 이때, 상기 제2 메시지는 상기 제2 메시지가 전송되는 순간의 타임 스탬프 즉, 전송 시각 T1k(1103)를 포함하여 전송될 수 있다.
마스터 노드(1101)는 상기 제2 메시지를 수신하는 경우, 상기 제2 메시지가 수신된 순간의 타임 스탬프 즉, 수신 시각 T2k(1104)를 확인하고, 상기 제2 메시지에 대한 응답 메시지인 제3 메시지를 슬래이브 노드(1102)로 전송한다. 이때, 상기 제3 메시지는 전송 시각 T1k(1103), 수신 시각 T2k(1104) 및 상기 제3 메시지가 전송되는 순간의 타임 스탬프 즉, 전송 시각 T3k(1105)를 포함할 수 있다.
상기 제3 메시지를 수신한 슬래이브 노드(1102)는 상기 제3 메시지를 수신한 순간의 타임 스탬프 즉, 수신 시각 T4k(1106)를 확인하고, 상기 제3 메시지가 포함하는 전송 시각 T1k(1103), 수신 시각 T2k(1104) 및 전송 시각 T3k(1105)를 확인할 수 있다.
이와 같이 슬래이브 노드(1102)는 상기 시간 단위 k 동안 전송 시각 T1k(1103), 수신 시각 T2k(1104), 전송 시각 T3k(1105) 및 수신 시각 T4k(1106)를 얻 게 되고, 상기 수학식 6을 통해 상기 시간 단위 k에서의 전파 지연의 측정값 dk를 계산할 수 있다.
이후, M 길이의 슬라이딩 윈도우 또는 선형 디지털 필터를 이용하여 복수의 측정값을 통해 실제 전파 지연의 추정값 Dk를 얻을 수 있다. 즉, 상기 M 길이의 슬라이딩 윈도우를 이용하는 경우, 슬래이브 노드(1102)는 상기 M 개의 측정값들의 평균과 이전 시간 단계의 추정값 Dk-1을 통해 상기 수학식 1과 같이 상기 추정값 Dk를 계산할 수 있다. 또한, 상기 선형 디지털 필터를 이용하는 경우, 슬래이브 노드(1102)는 m 개의 측정값들과 n 개의 가장 최근의 추정값 그리고, 필터 계수를 통해 상기 추정값 Dk를 계산할 수 있다.
뿐만 아니라, 상기 추정값 Dk를 통해 상기 시간 단위 k에서의 상기 오프셋을 계산할 수 있게 되고, 위에서 설명한 바와 같이 마스터 노드(1101)와 슬래이브 노드(1102)간의 시간 동기화를 수행할 수 있게 된다. 이와 같은 과정이 상기 시간 단위마다 반복되어, 네트워크에 지속적인 시간 동기화가 수행된다.
지금까지 도 5 내지 도 11을 통해서는 슬라이딩 윈도우 또는 선형 디지털 필터를 이용한 양방향 시간 동기화 방법을 설명하였다. 이후 도 12 내지 도 14에서는 한번의 메시지 전송으로 마스터 노드와 슬래이브 노드간의 오프셋을 계산할 수 있는 단방향 시간 동기화 방법에 대해서 설명한다.
도 12는 본 발명의 제5 실시예에 있어서, 네트워크의 노드간 시간 동기화를 수행하는 방법을 도시한 흐름도이다.
단계(S1210)에서 상기 슬래이브 노드는 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산한다. 이때, 도 12에 도시된 바와 같이 상기 슬래이브 노드는 단계(S1210)에 단계(S1211) 내지 단계(S1214)를 포함하여 수행할 수 있다.
단계(S1211)에서 상기 마스터 노드는 메시지의 전송 시각인 제1 타임 스탬프를 상기 메시지에 기록하여 슬래이브 노드로 전송한다.
단계(S1212)에서 중계 노드는 상기 메시지를 수신한 링크의 제1 전파 시간 및 상기 중계 노드에서의 체류 시간이 누적된 값을 상기 메시지에 기록한다.
단계(S1213)에서 상기 슬래이브 노드는 상기 메시지의 수신 시각인 제2 타임 스탬프 및 마지막 중계 노드 사이에 존재하는 링크의 제2 전파 시간을 확인한다.
단계(S1214)에서 상기 슬래이브 노드는 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산한다. 이때, 상기 슬래이브 노드는 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하기 위해 다음 수학식 9를 이용할 수 있다.
제1 오프셋 = T2 - T1 - R1 - D1
여기서, 상기 T2는 상기 제2 타임 스탬프를, 상기 T1은 상기 제1 타임 스탬프를, 상기 R1은 상기 누적된 값을, 상기 D1은 상기 제2 전파 시간을 각각 의미할 수 있다.
단계(S1220)에서 상기 슬래이브 노드는 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산한다. 이때, 상기 슬래이브 노드는 상기 제2 오프셋을 계산하기 위해 상기 제1 오프셋 및 이전 시간 단위에 측정된 기선정된 수의 오프셋을 이용하여 하기 수학식 10과 같이 상기 제2 오프셋을 계산할 수 있다.
Figure 112007021509738-pat00007
Figure 112007021509738-pat00008
여기서, uk는 상기 제1 오프셋을, yk는 상기 제2 오프셋을, ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 선형 디지털 필터의 필터 계수를, 상기 H(z)는 필터 이송 함수를 각각 의미할 수 있다.
도 13은 본 발명의 제6 실시예에 있어서, 슬래이브 노드를 구성하는 기기의 내부 구성을 설명하기 위한 블록도이다. 도 13에 도시된 바와 같이 기기(1300)는 제1 오프셋 계산부(1310) 및 제2 오프셋 계산부(1320)를 포함한다.
제1 오프셋 계산부(1310)는 슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산한다. 상기 제1 오프셋을 계산하기 위해 제1 오프셋 계산부(1310)는 도 13에 도시된 바와 같이 마스터 노드에서의 메시지를 수신하여 상기 메시지의 전송 시각인 제1 타임 스탬프를 확인 하는 제1 타임 스탬프 확인부(1311), 제1 전파 시간 및 체류 시간의 누적된 값을 상기 메시지에서 확인하는 누적값 확인부(1312), 상기 메시지의 수신 시각인 제2 타임 스탬프를 확인하는 수신 시각 확인부(1313), 마지막 중계 노드간에 존재하는 링크의 제2 전파 시간을 확인하는 제2 전파 시간 확인부(1314) 및 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하는 계산부(1315)를 포함할 수 있다.
이때, 상기 제1 전파 시간은 중계 노드에서 상기 메시지를 수신한 링크의 전파 시간일 수 있고, 상기 체류 시간은 상기 중계 노드에서의 상기 메시지의 체류 시간일 수 있다. 또한, 계산부(1315)는 상기 수학식 9와 같이 상기 제1 오프셋을 계산할 수 있다.
제2 오프셋 계산부(1320)는 상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산한다. 이때, 제2 오프셋 계산부(1320)는 상기 제1 오프셋 및 이전 시간 단위에 측정된 기선정된 수의 오프셋을 이용하여 상기 수학식 10과 같이 상기 제2 오프셋을 계산할 수 있다.
이와 같이 본 발명에 따른 시간 동기화 방법 및 기기를 이용하면, 단방향으로 전파 시간을 측정하는 시스템에서 기선정된 시간 단위마다 마스터 노드로부터의 제1 오프셋을 계산하고, 상기 제1 오프셋 및 이전 시간 단위에 계산된 오프셋들을 입력값으로 하는 선형 디지털 필터를 통해 현재 시간 단위의 오프셋인 제2 오프셋을 계산함으로써, 중계 장치에서의 체류 시간을 고려함과 동시에 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.
도 14는 시간 동기화를 위한 단방향 방법을 설명하기 위한 일례이다.
마스터 노드(1401)는 시간 단위 k에 시간 동기화를 수행하기 위해 제1 슬래이브 노드(1402) 및 제2 슬래이브 노드(1403)를 통해 제3 슬래이브 노드(1404)로 메시지의 전송 시각 T1k(1405)를 포함하는 상기 메시지를 전송한다. 이때, 제1 슬래이브 노드(1402)는 상기 메시지를 수신한 링크의 전파 시간(1406) 및 제1 슬래이브 노드(1402)에서의 체류 시간(1407)을 확인하여 상기 메시지에 누적시키고, 상기 메시지를 다음 노드로 전송한다. 상기 다음 노드인 제2 슬래이브 노드(1403) 역시 제2 슬래이브 노드(1403)에서의 체류 시간(1408) 및 상기 메시지를 수신한 링크의 전파 시간(1409)를 확인하여 상기 메시지에 누적시키고 다음 노드로 전송한다. 이때, 상기 메시지는 전파 시간(1406), 체류 시간(1407), 체류 시간(1408) 및 전파 시간(1409)이 누적된 누적값 R1k를 포함하고 있다.
상기 다음 노드이자 목적지인 제3 슬래이브 노드(1404)는 마지막 중계 노드인 제2 슬래이브 노드(1403)와의 링크에 대한 전파 시간 D1k(1410)을 확인하고, 상기 메시지를 수신한 수신 시각 T2k(1411)를 확인한다.
이때, 제3 슬래이브 노드(1404)는 제1 오프셋 uk를 계산하기 위한 상기 수학식 9의 파라미터를 모두 만족한다. 즉, 제3 슬래이브 노드(1404)는 상기 제1 오프셋 uk를 계산할 수 있다. 이와 같이 제3 슬래이브 노드(1404)는 상기 시간 단위 k 동안 계산된 상기 제1 오프셋 uk를 가장 최근에 계산된 순서로 m개를 유지하고, 이 전 시간 단위에 계산되었던 제2 오프셋 또한 n개를 유지한다.
즉, 제3 슬래이브 노드(1404)는 상기 수학식 10을 통해 상기 시간 단위 k에서의 오프셋인 제2 오프셋을 계산할 수 있고, 상기 제2 오프셋을 통해 마스터 노드(1401)와 제3 슬래이브 노드(1404)간의 시간 동기화가 수행된다. 다른 모든 슬래이브 노드와도 동일한 과정을 통해 시간 동기화를 수행할 수 있고, 이를 통해 네트워크의 시간 동기화가 수행된다.
본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
본 발명에 따르면, 슬래이브 노드에서 기선정된(predetermined) 시간 단위마다 타임 스탬프에 기반하여 전파 시간(propagation)의 측정값(measured value)들을 계산하고, 상기 측정값들의 평균 및 슬라이딩 윈도우를 이용하여 마스터 노드로부터의 오프셋(offset)을 계산함으로써 지터(Jitter), 원더(Wander) 및 시간 동기화의 성능을 향상시킬 수 있다.
본 발명에 따르면, 슬래이브 노드에서 기선정된 시간 단위마다 상기 타임 스탬프에 기반하여 전파 시간의 측정값들을 계산하고, 상기 측정값들의 평균 및 일반적인 선형 디지털 필터(liner digital filter)를 이용하여 마스터 노드로부터의 오프셋을 계산함으로써 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.
본 발명에 따르면, 단방향으로 전파 시간을 측정하는 시스템에서 기선정된 시간 단위마다 마스터 노드로부터의 제1 오프셋을 계산하고, 상기 제1 오프셋 및 이전 시간 단위에 계산된 오프셋들을 입력값으로 하는 선형 디지털 필터를 통해 현재 시간 단위의 오프셋인 제2 오프셋을 계산함으로써, 중계 장치에서의 체류 시간(residence time)을 고려함과 동시에 지터, 원더 및 시간 동기화의 성능을 향상시킬 수 있다.

Claims (26)

  1. 네트워크의 노드간에 시간 동기화를 수행하는 방법에 있어서,
    슬래이브 노드에서 타임 스탬프(time stamp)를 이용하여 마스터 노드까지의 전파 시간(propagation)에 대한 측정값(measured value)을 기선정된 시간 단위마다 계산하는 단계;
    상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우(sliding window)를 이용하여 실제 전파 시간(actual propagation time)의 추정값(estimate)을 계산하는 단계; 및
    상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계
    를 포함하고,
    슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 상기 단계는,
    상기 슬래이브 노드에서 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송하는 단계; 및
    상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 단계
    를 포함하는 시간 동기화 방법.
  2. 제1항에 있어서,
    상기 슬래이브 노드에서 상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 상기 단계는,
    상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지하는 단계; 및
    상기 유지된 측정값의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 상기 추정값으로서 계산하는 단계
    를 포함하는 시간 동기화 방법.
  3. 제2항에 있어서,
    상기 유지된 측정값의 평균을 계산하고, 상기 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 계산하는 상기 단계는,
    하기 수학식 11과 같이 상기 제2 추정값을 계산하는 시간 동기화 방법.
    Figure 112007021509738-pat00009
    Figure 112007021509738-pat00010
    여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 상기 Dk의 계차방정식(difference equation)의 이송 함수(transfer function)를 각각 의미함.
  4. 네트워크의 노드간에 시간 동기화를 수행하는 방법에 있어서,
    슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 단계;
    상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터(linear digital filter)를 이용하여 실제 전파 시간의 추정값을 계산하는 단계; 및
    상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 단계
    를 포함하고,
    슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 상기 단계는,
    상기 슬래이브 노드에서 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송하는 단계; 및
    상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 단계
    를 포함하는 시간 동기화 방법.
  5. 제4항에 있어서,
    상기 슬래이브 노드에서 상기 측정값 및 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 상기 단계는,
    기선정된 제1 수만큼 상기 측정값을 유지하는 단계;
    기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지하는 단계; 및
    상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산하는 단계
    를 포함하고,
    상기 선형 디지털 필터는 복수의 필터 계수(filter coefficients)를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산하는 시간 동기화 방법.
  6. 제5항에 있어서,
    상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산하는 상기 단계는,
    하기 수학식 12와 같이 상기 제2 추정값을 계산하는 시간 동기화 방법.
    Figure 112007021509738-pat00011
    Figure 112007021509738-pat00012
    여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 제2 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 필터 이송 함수(filter transfer function)를, 상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 복수의 필터 계수를, 상기 n은 상기 제1 수를, 상기 m은 상기 제2 수를 각각 의미함.
  7. 제6항에 있어서,
    상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 하기 수학식 13을 만족하는 시간 동기화 방법.
    Figure 112007021509738-pat00013
  8. 제1항 또는 제4항에 있어서,
    상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 상기 단계는,
    상기 마스터 노드에서 상기 제1 메시지의 수신 시각인 제2 타임 스탬프를 확인하는 단계;
    상기 마스터 노드에서 상기 제1 타임 스탬프, 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 상기 슬래이브 노드로 전송하는 단계; 및
    상기 슬래이브 노드에서 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인하고, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산하는 단계
    를 포함하는 시간 동기화 방법.
  9. 제8항에 있어서,
    상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산하는 상기 단계는,
    하기 수학식 14와 같이 상기 측정값을 계산하는 시간 동기화 방법.
    Figure 112007021509738-pat00014
    여기서, 상기 dk는 상기 측정값을, 상기 T1,k는 상기 제1 타임 스탬프를, 상기 T2,k는 상기 제2 타임 스탬프를 상기 T3,k는 상기 제3 스탬프를, 상기 T4,k는 상기 제4 타임 스탬프를, 상기 k는 상기 제1 타임 스탬프 내지 상기 제4 타임 스탬프가 k-번째 시간 단위에 측정되었음을 각각 의미함.
  10. 제1항 또는 제4항에 있어서,
    상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 상기 단계는,
    다음 수학식 15와 같이 상기 오프셋을 계산하는 시간 동기화 방법.
    오프셋 = T2 - T1 - D1
    여기서, 상기 T2는 상기 메시지 수신 시각을, 상기 T1은 상기 메시지 전송 시각을, 상기 D1은 상기 추정값을 각각 의미함.
  11. 네트워크의 노드간에 시간 동기화를 수행하는 방법에 있어서,
    슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산하는 단계; 및
    상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산하는 단계
    를 포함하고,
    슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산하는 상기 단계는,
    마스터 노드에서 메시지의 전송 시각인 제1 타임 스탬프를 상기 메시지에 기록하여 슬래이브 노드로 전송하는 단계; 및
    중계 노드에서 상기 메시지를 수신한 링크의 제1 전파 시간, 상기 중계 노드에서의 체류 시간 및 마지막 중계 노드 사이에 존재하는 링크의 제2 전파 시간을 이용하여 상기 슬레이브 노드에서 상기 제1 오프셋을 계산하는 단계
    를 포함하는 시간 동기화 방법.
  12. 제11항에 있어서,
    중계 노드에서 상기 메시지를 수신한 링크의 제1 전파 시간, 상기 중계 노드에서의 체류 시간 및 마지막 중계 노드 사이에 존재하는 링크의 제2 전파 시간을 이용하여 상기 슬레이브 노드에서 상기 제1 오프셋을 계산하는 상기 단계는,
    상기 중계 노드에서 상기 메시지를 수신한 링크의 상기 제1 전파 시간 및 상기 중계 노드에서의 상기 체류 시간이 누적된 값을 상기 메시지에 기록하는 단계;
    상기 슬래이브 노드에서 상기 메시지의 수신 시각인 제2 타임 스탬프 및 상기 마지막 중계 노드 사이에 존재하는 링크의 상기 제2 전파 시간을 확인하는 단계; 및
    상기 슬래이브 노드에서 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하는 단계
    를 포함하는 시간 동기화 방법.
  13. 제12항에 있어서,
    상기 슬래이브 노드에서 상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하는 상기 단계는,
    하기 수학식 16과 같이 상기 제1 오프셋을 계산하는 시간 동기화 방법.
    제1 오프셋 = T2 - T1 - R1 - D1
    여기서, 상기 T2는 상기 제2 타임 스탬프를, 상기 T1은 상기 제1 타임 스탬프를, 상기 R1은 상기 누적된 값을, 상기 D1은 상기 제2 전파 시간을 각각 의미함.
  14. 제11항에 있어서,
    상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산하는 상기 단계는,
    상기 제1 오프셋 및 이전 시간 단위에 측정된 기선정된 수의 오프셋을 이용하여 하기 수학식 17과 같이 상기 제2 오프셋을 계산하는 시간 동기화 방법.
    Figure 112007021509738-pat00015
    Figure 112007021509738-pat00016
    여기서, uk는 상기 제1 오프셋을, yk는 상기 제2 오프셋을, ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 선형 디지털 필터의 필터 계수를, 상기 H(z)는 필터 이송 함수를 각각 의미함.
  15. 제11항 내지 제14항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
  16. 네트워크의 노드간에 시간 동기화를 수행하는 슬래이브 노드를 구성하는 기기에 있어서,
    타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 측정값 계산부;
    상기 측정값 및 슬라이딩 윈도우를 이용하여 실제 전파 시간의 추정값을 계산하는 추정값 계산부; 및
    상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 오프셋 계산부
    를 포함하고,
    상기 측정값 계산부는,
    상기 슬래이브 노드에서 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송하는 제1 메시지 전송부; 및
    상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 제1 계산부
    를 포함하는 기기.
  17. 제16항에 있어서,
    상기 추정값 계산부는,
    상기 슬라이딩 윈도우의 길이에 해당하는 수만큼 가장 최근에 계산된 상기 측정값을 유지하는 측정값 유지부; 및
    상기 유지된 측정값의 평균 및 이전 시간 단위에 계산된 제1 추정값을 이용하여 상기 실제 전파 시간의 제2 추정값을 상기 추정값으로서 계산하는 제2 추정값 계산부
    를 포함하는 기기.
  18. 제17항에 있어서,
    상기 제2 추정값 계산부는,
    하기 수학식 18과 같이 상기 제2 추정값을 계산하는 기기.
    Figure 112007021509738-pat00017
    Figure 112007021509738-pat00018
    여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 상기 Dk의 계차방정식(difference equation)의 이송 함수(transfer function)를 각각 의미함.
  19. 네트워크의 노드간에 시간 동기화를 수행하는 슬래이브 노드를 구성하는 기기에 있어서,
    타임 스탬프를 이용하여 마스터 노드까지의 전파 시간에 대한 측정값을 기선정된 시간 단위마다 계산하는 측정값 계산부;
    상기 측정값 및 선형 디지털 필터를 이용하여 실제 전파 시간의 추정값을 계산하는 추정값 계산부; 및
    상기 마스터 노드에서의 메시지 전송 시각, 상기 슬래이브 노드에서의 메시지 수신 시각 및 상기 추정값을 이용하여 오프셋을 계산하는 오프셋 계산부
    를 포함하고,
    상기 측정값 계산부는,
    상기 슬래이브 노드에서 제1 메시지의 전송 시각인 제1 타임 스탬프를 상기 제1 메시지에 기록하여 상기 마스터 노드로 전송하는 제1 메시지 전송부; 및
    상기 슬래이브 노드에서 상기 제1 메시지에 대응하는 제2 메시지를 상기 마스터 노드로부터 수신하여 상기 전파 시간에 대한 측정값을 계산하는 제1 계산부
    를 포함하는 기기.
  20. 제19항에 있어서,
    상기 추정값 계산부는,
    기선정된 제1 수만큼 상기 측정값을 유지하는 측정값 유지부;
    기선정된 제2 수만큼 이전 시간 단위에 측정된 제1 추정값을 유지하는 제1 추정값 유지부; 및
    상기 유지된 측정값, 상기 제1 추정값 및 상기 선형 디지털 필터를 이용하여 상기 실제 전파 시간의 추정값인 제2 추정값을 계산하는 제2 추정값 계산부
    를 포함하고,
    상기 선형 디지털 필터는 복수의 필터 계수(filter coefficients)를 상기 유지된 측정값 및 상기 제1 추정값에 부여하고 그 합계를 상기 제2 추정값으로서 계산하는 기기.
  21. 제20항에 있어서,
    상기 제2 추정값 계산부는,
    하기 수학식 19와 같이 상기 제2 추정값을 계산하는 기기.
    Figure 112007021509738-pat00019
    Figure 112007021509738-pat00020
    여기서, 상기 dk는 k-번째 시간 단위의 상기 측정값을, 상기 Dk는 k-번째 시간 단위의 상기 제2 추정값을, 상기 M은 상기 슬라이딩 윈도우의 길이를, 상기 H(z)는 필터 이송 함수(filter transfer function)를, 상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 복수의 필터 계수를, 상기 n은 상기 제1 수를, 상기 m은 상기 제2 수를 각각 의미함.
  22. 제21항에 있어서,
    상기 ai(1 < i < n) 및 상기 bj(0 < j < m)는 하기 수학식 20을 만족하는 기기.
    Figure 112007021509738-pat00021
  23. 제16항 또는 제19항에 있어서,
    상기 제1 계산부는,
    상기 마스터 노드에서 상기 제1 메시지의 수신 시각인 제2 타임 스탬프를 확인하는 제2 타임 스탬프 확인부;
    상기 마스터 노드에서 상기 제1 타임 스탬프, 상기 제2 타임 스탬프 및 상기 제1 메시지에 대응하는 상기 제2 메시지의 전송 시각인 제3 타임 스탬프를 상기 제2 메시지에 기록하여 상기 슬래이브 노드로 전송하는 제2 메시지 전송부; 및
    상기 슬래이브 노드에서 상기 제2 메시지의 수신 시각인 제4 타임 스탬프를 확인하고, 상기 제1 타임 스탬프 및 상기 제4 타임 스탬프를 이용하여 상기 전파 시간에 대한 측정값을 계산하는 제2 계산부
    를 포함하는 기기.
  24. 네트워크의 노드간에 시간 동기화를 수행하는 슬래이브 노드를 구성하는 기기에 있어서,
    슬래이브 노드에서 타임 스탬프를 이용하여 마스터 노드로부터의 제1 오프셋을 기선정된 시간 단위마다 계산하는 제1 오프셋 계산부; 및
    상기 제1 오프셋 및 선형 디지털 필터를 이용하여 제2 오프셋을 계산하는 제2 오프셋 계산부
    를 포함하고,
    상기 제1 오프셋 계산부는,
    마스터 노드에서 메시지의 전송 시각인 제1 타임 스탬프를 상기 메시지에 기록하여 슬래이브 노드로 전송하는 제1 타임 스탬프 확인부; 및
    중계 노드에서 상기 메시지를 수신한 링크의 제1 전파 시간, 상기 중계 노드에서의 체류 시간 및 마지막 중계 노드 사이에 존재하는 링크의 제2 전파 시간을 이용하여 상기 슬레이브 노드에서 상기 제1 오프셋을 계산하는 제1 계산부
    를 포함하는 기기.
  25. 제24항에 있어서,
    상기 제1 계산부는,
    상기 제1 전파 시간 및 상기 체류 시간의 누적된 값을 상기 메시지에서 확인하는 누적값 확인부;
    상기 메시지의 수신 시각인 제2 타임 스탬프를 확인하는 수신 시각 확인부;
    상기 마지막 중계 노드간에 존재하는 링크의 상기 제2 전파 시간을 확인하는 제2 전파 시간 확인부; 및
    상기 제1 타임 스탬프, 상기 제2 타임 스탬프, 상기 누적된 값 및 상기 제2 전파 시간을 이용하여 상기 제1 오프셋을 계산하는 제2 계산부
    를 포함하고,
    상기 제1 전파 시간은 중계 노드에서 상기 메시지를 수신한 링크의 전파 시간이고,
    상기 체류 시간은 상기 중계 노드에서의 상기 메시지의 체류 시간인 기기.
  26. 제24항에 있어서,
    상기 제2 오프셋 계산부는,
    상기 제1 오프셋 및 이전 시간 단위에 측정된 기선정된 수의 오프셋을 이용하여 하기 수학식 21과 같이 상기 제2 오프셋을 계산하는 기기.
    Figure 112013083435090-pat00022
    Figure 112013083435090-pat00023
    여기서, uk는 상기 제1 오프셋을, yk는 상기 제2 오프셋을, ai(1 < i < n) 및 상기 bj(0 < j < m)는 상기 선형 디지털 필터의 필터 계수를, 상기 H(z)는 필터 이송 함수를 각각 의미함.
KR1020070026336A 2007-01-22 2007-03-16 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기방법을 수행하는 기기 Expired - Fee Related KR101322841B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/846,031 US20080175275A1 (en) 2007-01-22 2007-08-28 Time synchronization method between nodes in network and apparatus for implementing the same
JP2007315997A JP4819781B2 (ja) 2007-01-22 2007-12-06 ネットワークのノード間に時間同期化を実行する方法およびこの方法を実行する機器

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US88152007P 2007-01-22 2007-01-22
US60/881,520 2007-01-22

Publications (2)

Publication Number Publication Date
KR20080069106A KR20080069106A (ko) 2008-07-25
KR101322841B1 true KR101322841B1 (ko) 2013-10-25

Family

ID=39822525

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070026336A Expired - Fee Related KR101322841B1 (ko) 2007-01-22 2007-03-16 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기방법을 수행하는 기기

Country Status (1)

Country Link
KR (1) KR101322841B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11985416B2 (en) 2021-12-28 2024-05-14 Samsung Electronics Co., Ltd. Electronic device and method with independent time point management

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100994128B1 (ko) 2008-09-23 2010-11-15 한국전자통신연구원 고정밀 네트워크 동기를 위한 타임 스탬핑 방법 및 장치
KR101705592B1 (ko) 2009-05-18 2017-02-10 삼성전자주식회사 노드 간의 시간 동기화를 수행하는 네트워크 동기화 방법 및 장치
KR100949120B1 (ko) * 2009-10-14 2010-03-24 한국과학기술원 아이피-유에스엔의 다중 홉 글로벌 시각 동기화 방법 및 시스템 및 그 기록 매체

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08256161A (ja) * 1995-03-15 1996-10-01 Nec Corp ネットワークの時刻情報同期方式
KR20010087284A (ko) * 2000-03-01 2001-09-15 루센트 테크놀러지스 인크 무선 네트워크 제어기 동기화 필터링 기능을 위한 기지국송수신기
US20060013263A1 (en) * 2004-07-19 2006-01-19 Fellman Ronald D System and method for clock synchronization over packet-switched networks
JP2006174001A (ja) 2004-12-15 2006-06-29 Nakamura Kazunori データ伝送におけるクロック同期方式およびデータ伝送システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08256161A (ja) * 1995-03-15 1996-10-01 Nec Corp ネットワークの時刻情報同期方式
KR20010087284A (ko) * 2000-03-01 2001-09-15 루센트 테크놀러지스 인크 무선 네트워크 제어기 동기화 필터링 기능을 위한 기지국송수신기
US20060013263A1 (en) * 2004-07-19 2006-01-19 Fellman Ronald D System and method for clock synchronization over packet-switched networks
JP2006174001A (ja) 2004-12-15 2006-06-29 Nakamura Kazunori データ伝送におけるクロック同期方式およびデータ伝送システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11985416B2 (en) 2021-12-28 2024-05-14 Samsung Electronics Co., Ltd. Electronic device and method with independent time point management

Also Published As

Publication number Publication date
KR20080069106A (ko) 2008-07-25

Similar Documents

Publication Publication Date Title
JP4819781B2 (ja) ネットワークのノード間に時間同期化を実行する方法およびこの方法を実行する機器
US10979164B2 (en) Peer-to-peer transparent clocks and methods of estimating skew in peer-to-peer transparent clocks
KR101705592B1 (ko) 노드 간의 시간 동기화를 수행하는 네트워크 동기화 방법 및 장치
US9665121B2 (en) Method and devices for time transfer using peer-to-peer transparent clocks
US9671822B2 (en) Method and devices for time transfer using end-to-end transparent clocks
US8416812B2 (en) Network timing synchronization systems
US8964790B2 (en) Communication apparatus
US11018789B2 (en) End-to-end transparent clocks and methods of estimating skew in end-to-end transparent clocks
US10216220B1 (en) Accurate time capture and transfer between clock domains
CN100499526C (zh) 一种端到端排队时延测量方法
CN105612704A (zh) 利用锁相环用于时间和频率同步的方法和装置
KR101322841B1 (ko) 네트워크의 노드간에 시간 동기화를 수행하는 방법 및 상기방법을 수행하는 기기
JP6227888B2 (ja) 通信システム、同期システム、通信方法
EP3231110B1 (en) Method and devices for time transfer using end to end transparent clocks
Ferrari et al. Synchronization of the probes of a distributed instrument for real-time Ethernet networks
CN117097427B (zh) 一种光时隙交换网络中的时间同步方法和系统
EP3231112B1 (en) Method and devices for time transfer using peer to peer transparent clocks
EP3824573B1 (en) Peer-to-peer transparent clocks and methods of estimating skew in peer-to-peer transparent clocks
EP3824574B1 (en) End-to-end transparent clocks and methods of estimating skew in end-to-end transparent clocks
Lundqvist Timing and synchronization over ethernet
Newton et al. Considerations for Deploying IEEE 1588 V2 in Network-Centric Data Acquisition and Telemetry Systems

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20070316

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20120316

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20070316

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20130712

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20130930

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20131017

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20131018

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20170727