KR102174089B1 - 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법 - Google Patents

가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법 Download PDF

Info

Publication number
KR102174089B1
KR102174089B1 KR1020190049780A KR20190049780A KR102174089B1 KR 102174089 B1 KR102174089 B1 KR 102174089B1 KR 1020190049780 A KR1020190049780 A KR 1020190049780A KR 20190049780 A KR20190049780 A KR 20190049780A KR 102174089 B1 KR102174089 B1 KR 102174089B1
Authority
KR
South Korea
Prior art keywords
time synchronization
hop neighbor
neighbor node
average
virtual link
Prior art date
Application number
KR1020190049780A
Other languages
English (en)
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 KR1020190049780A priority Critical patent/KR102174089B1/ko
Application granted granted Critical
Publication of KR102174089B1 publication Critical patent/KR102174089B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • 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

Landscapes

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

Abstract

가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법이 개시된다. 물리적으로 연결된 1홉(hop) 이웃 노드(node)로부터 1홉 이웃 노드 및 2홉 이웃 노드와의 시간 동기화를 위한 시간 동기 정보를 포함하는 타이밍 메시지(timing message)를 수신하는 타이밍 메시지 수신 모듈; 상기 2홉 이웃 노드와 가상 링크를 설정하는 가상 링크 설정 모듈; 상기 1홉 이웃 노드의 시간 동기 정보 및 상기 가상 링크 설정 모듈에서 가상 링크가 설정된 2홉 이웃 노드의 시간 동기 정보를 이용하여 1 홉 이웃 노드 및 2 홉 이웃 노드의 평균 클록 속도(average clock rate)를 계산하는 클록 속도 평균 계산 모듈; 상기 클록 속도 평균 계산 모듈에서 계산된 평균 클록을 이용하여 시간 동기화에 적용하는 시간 동기화 적용 모듈을 구성한다. 상술한 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법에 의하면, 동기식의 평균 컨센서스 알고리즘인 GTSP에서 1홉 이웃 노드의 시간 동기 정보뿐만 아니라 2홉 이웃 노드의 시간 동기 정보까지 모두 이용하여 시간 동기화를 하도록 구성됨으로써, 기존 GTSP에 비하여 동기화 속도를 월등히 높일 수 있는 효과가 있다.

Description

가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법{APPARATUS AND METHOD FOR IMPROVING AVERAGE CONSENSUS BASED TIME SYNCHRONIZATION PROTOCOL WITH VIRTUAL LINKS}
본 발명은 시간 동기화 프로토콜의 성능 개선 장치 및 방법에 관한 것으로서, 구체적으로는 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법에 관한 것이며, 좀 더 구체적으로는 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법에 관한 것이다.
TDMA 방식의 다중 접속 프로토콜을 활용하기 위해서는 통신 노드(node)들 사이의 시간을 동기화하는 시간 동기 프로토콜(time synchronization protocol)이 필수적으로 요구된다.
현재까지 TDMA를 이용하는 무선 애드혹 네트워크(Ad-hoc network)의 시간 동기화를 위하여 다양한 컨센서스(consensus) 기반 분산 프로토콜이 개발되었다.
널리 사용되는 두 가지 컨센서스 기반의 분산 프로토콜은 각 노드의 시간 정보를 평균하는 평균 컨센서스 알고리즘과 각 노드 중 최대(최소) 시간값에 동기화하는 최대(최소) 컨센서스 알고리즘이 있다.
최대 컨센서스 알고리즘은 평균 컨센서스 알고리즘보다 간단하고 빠르게 동작할 수 있다는 장점이 있으나, 특정 노드에 결함이 발생하거나 악성 노드가 포함될 경우 해당 노드로 인하여 비정상적으로 높거나 낮은 시간값을 요구하게 되어 동기화 자체가 제대로 이루어지지 않게 되는 단점이 있다.
이러한 이유로 인해 비교적 느린 동기화 속도에도 불구하고 안정성을 기하기 위해 최대 컨센서스 알고리즘 보다는 평균 컨센서스 알고리즘이 더 선호되고 있는 실정이다. 또한, 평균 컨센서스 알고리즘은 최대 컨센서스 알고리즘보다 높은 정확도를 제공할 수 있다는 장점이 있다.
평균 기반 컨센서스 분산 알고리즘은 동기식 알고리즘과 비동기식 알고리즘의 두 가지 범주로 분류할 수 있다. 동기식 알고리즘으로서는 GTSP(Gradient Time Synchronization Protocol)가 있고, 비동기식 알고리즘으로서는 ATSP(Average Time Synchronization Protocol)가 있다.
여기서, 동기식 알고리즘은 GTSP에서는 각 노드가 먼저 자신의 가까운 이웃들로부터 타이밍 메시지(timing message)를 수집하고, 타이밍 메시지들을 동시에 사용하여 자신의 로컬 클록(local clock)을 조정하도록 구성된다.
반면, 비동기식 알고리즘인 ATSP에서는 각 노드가 타이밍 메시지를 수신할 때마다 클록을 순차적으로 업데이트하도록 구성된다.
10-0699510 10-2015-0038127
본 발명의 목적은 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치를 제공하는 데 있다.
본 발명의 다른 목적은 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 방법을 제공하는 데 있다.
상술한 본 발명의 목적에 따른 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치는, 물리적으로 연결된 1홉(hop) 이웃 노드(node)로부터 1홉 이웃 노드 및 2홉 이웃 노드와의 시간 동기화를 위한 시간 동기 정보를 포함하는 타이밍 메시지(timing message)를 수신하는 타이밍 메시지 수신 모듈; 상기 2홉 이웃 노드와 가상 링크를 설정하는 가상 링크 설정 모듈; 상기 1홉 이웃 노드의 시간 동기 정보 및 상기 가상 링크 설정 모듈에서 가상 링크가 설정된 2홉 이웃 노드의 시간 동기 정보를 이용하여 1 홉 이웃 노드 및 2 홉 이웃 노드의 평균 클록 속도(average clock rate)를 계산하는 클록 속도 평균 계산 모듈; 상기 클록 속도 평균 계산 모듈에서 계산된 평균 클록을 이용하여 시간 동기화에 적용하는 시간 동기화 적용 모듈을 포함하도록 구성될 수 있다.
여기서, 상기 타이밍 메시지에 포함된 시간 동기 정보는, 상기 1홉 이웃 노드의 하드웨어 클록값 및 로지컬 클록값, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드의 개수, 각 아이디(ID), 상기 1홉 이웃 노드를 기준으로 하는 2홉 이웃 노드의 상대 속도를 포함하도록 구성될 수 있다.
그리고 상기 시간 동기화 적용 모듈은, 상기 1홉 이웃 노드와의 시간 동기화를 수행하고, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드와의 시간 동기화를 수행하도록 구성될 수 있다.
상술한 본 발명의 다른 목적에 따른 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 방법은, 타이밍 메시지 수신 모듈이 물리적으로 연결된 1홉(hop) 이웃 노드(node)로부터 1홉 이웃 노드 및 2홉 이웃 노드와의 시간 동기화를 위한 시간 동기 정보를 포함하는 타이밍 메시지(timing message)를 수신하는 단계; 가상 링크 설정 모듈이 상기 2홉 이웃 노드와 가상 링크를 설정하는 단계; 클록 속도 평균 계산 모듈이 상기 1홉 이웃 노드의 시간 동기 정보 및 상기 가상 링크 설정 모듈에서 가상 링크가 설정된 2홉 이웃 노드의 시간 동기 정보를 이용하여 1 홉 이웃 노드 및 2 홉 이웃 노드의 평균 클록 속도(average clock rate)를 계산하는 단계; 시간 동기화 적용 모듈이 상기 클록 속도 평균 계산 모듈에서 계산된 평균 클록을 이용하여 시간 동기화에 적용하는 단계를 포함하도록 구성될 수 있다.
여기서, 상기 타이밍 메시지에 포함된 시간 동기 정보는, 상기 1홉 이웃 노드의 하드웨어 클록값 및 로지컬 클록값, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드의 개수, 각 아이디(ID), 상기 1홉 이웃 노드를 기준으로 하는 2홉 이웃 노드의 상대 속도를 포함하도록 구성될 수 있다.
그리고 상기 시간 동기화 적용 모듈이 상기 클록 속도 평균 계산 모듈에서 계산된 평균 클록을 이용하여 시간 동기화에 적용하는 단계는, 상기 1홉 이웃 노드와의 시간 동기화를 수행하고, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드와의 시간 동기화를 수행하도록 구성하도록 구성될 수 있다.
상술한 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법에 의하면, 동기식의 평균 컨센서스 알고리즘인 GTSP에서 1홉 이웃 노드의 시간 동기 정보뿐만 아니라 2홉 이웃 노드의 시간 동기 정보까지 모두 이용하여 시간 동기화를 하도록 구성됨으로써, 기존 GTSP에 비하여 동기화 속도를 월등히 높일 수 있는 효과가 있다.
한편, 이웃 노드가 많은 노드만 시간 동기화의 계산 과정에 참여하도록 구성됨으로써, 이웃 노드가 적은 노드의 동기화가 천천히 진행되어 다른 노드의 동기화 상태에 영향을 미치게 되는 문제를 해결하는 효과가 있다.
아울러 1홉 이웃 노드나 2홉 이웃 노드 중에서 엣지 노드에 대하여는 시간 동기화의 평균화에 참여하는 것을 배제하도록 구성됨으로써, 엣지 노드에 의하여 시간 동기가 지연되는 문제를 해결하는 효과가 있다.
도 1은 전송 범위(transmission range)에 대한 라운드(round) 수 및 이웃 노드의 수와의 관계를 나타내는 그래프이다.
도 2는 본 발명의 일 실시예에 따른 물리 링크 노드와 가상 링크 노드의 네트워크를 나타내는 모식도이다.
도 3은 본 발명의 일 실시예에 따른 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치의 블록 구성도이다.
도 4는 본 발명에 따른 시간 동기 오차와 종래 기술에 따른 시간 동기 오차를 나타내는 그래프이다.
도 5는 본 발명에 따른 시간 동기 완료 시간과 종래 기술에 따른 시간 동기 완료 시간을 나타내는 그래프이다.
도 6은 본 발명의 일 실시예에 따른 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 방법의 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 발명을 실시하기 위한 구체적인 내용에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 전송 범위(transmission range)에 대한 라운드(round) 수 및 이웃 노드의 수와의 관계를 나타내는 그래프이다.
일반적으로 컨센서스 알고리즘의 평균 동기화 속도는 네트워크 조건에 따라 달라진다. 그 중 하나가 네트워크 연결 조건인데, 노드 사이의 링크(link)가 많아 네트워크 연결성이 강할수록 시간 동기 속도가 빨라진다는 것이 이미 입증되어 있다.
도 1의 (A)는 전송 범위에 대해 링크의 수와 라운드의 수를 나타낸다. 전송 범위를 증가시켜 이웃 노드의 수가 많아지면, 즉, 네트워크 연결성이 강해질수록 링크의 숫자는 커지면서 동기화에 필요한 라운드의 수는 줄어든다.
즉, 시간 동기화의 완료에 걸리는 시간이 점점 줄어든다.
도 1의 (B)에서와 같이 이웃 노드의 수를 늘리면 시간 동기화 속도를 높일 수 있겠지만, 물리 링크(physical link)에 연결된 이웃 노드의 수를 늘리는 것은 현실적으로 어렵고, 노드의 에너지 소모량 증가하며 나머지 프로토콜에 악영향을 미치는 점을 간과할 수 없다.
이에, 본 발명에서는 단순히 물리 연결이 된 이웃 노드의 수를 늘려 전송 범위를 증가시키는 것이 아니라, 실제로 물리 링크로 연결되지 않은 노드에 대해 가상 링크(virtual link)를 설정하여 네트워크의 시간 동기화의 평균화에 참여하는 노드의 수를 늘리도록 구성된다.
실제로는 전송 범위를 증가시키지 않지만 네트워크의 전송 범위를 증가시켜 동기화의 효율을 증가시키는 효과를 얻을 수 있으며, 실질적인 전송 범위가 늘어나는 것이 아니기 때문에 물리적 하드웨어에 의한 제한, 전력 소비량의 증가의 문제로부터도 자유로울 수 있다.
도 2는 본 발명의 일 실시예에 따른 물리 링크 노드와 가상 링크 노드의 네트워크를 나타내는 모식도이다.
도 2를 참조하면, 가상 링크의 설정에 의해 네트워크의 전송 범위를 늘리는 방안이 구체화되어 있다.
특정 노드 i를 기준으로 볼 때, 1홉 이웃 노드 j1, j2, j3와 1홉 이웃 노드에 직접 물리적으로 연결된 2홉 이웃 노드 k1, k2, k3 등이 도시되어 있다.
기존의 GTSP에서는 시간 동기화 평균화 계산 과정에 1홉 이웃 노드만 참여하였지만, 본 발명에서는 1홉 이웃 노드에 물리 링크로 연결된 2홉 이웃 노드에 가상 링크를 설정하여 시간 동기화 평균화 계산 과정에 참여하도록 구성된다.
이에, 전송 범위는 늘어나지만, 실제로 물리 링크의 수가 늘어나지는 않는다.
시간 동기화의 계산 과정이 줄어들고 네트워크의 부담은 증가하지 않는다.
여기서, 엣지 노드(edge node)가 1홉 이웃 노드나 2홉 이웃 노드에 해당되는 경우라 하더라도 시간 동기화의 평균화에 참여하는 것을 배제하도록 구성될 수 있다.
엣지 노드는 그 특성상 물리 링크로 연결된 이웃 노드의 수가 적어 시간 동기화 평균화 계산 과정에 지연 요소로 작용하게 되기 때문이다.
도 3은 본 발명의 일 실시예에 따른 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치의 블록 구성도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치(100)는 타이밍 메시지 수신 모듈(110), 가상 링크 설정 모듈(120), 클록 속도 평균 계산 모듈(130), 시간 동기화 적용 모듈(140), 시간 동기 평균화 참여 노드 실시간 설정 모듈(150), 엣지 노드 평균화 참여 실시간 설정 모듈(160)을 포함하도록 구성될 수 있다.
가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치(100)는 동기식 알고리즘으로서는 기존의 GTSP(Gradient Time Synchronization Protoocl)에 기반하여 시간 동기화 성능을 개선하는 장치이다.
이하, 세부적인 구성에 대하여 설명한다.
타이밍 메시지 수신 모듈(110)은 이웃 노드들로부터 타이밍 메시지(timing message)를 수신하도록 구성될 수 있다.
타이밍 메시지 수신 모듈(110)은 물리적으로 연결된 1홉(hop) 이웃 노드(node)로부터 1홉 이웃 노드 및 2홉 이웃 노드와의 시간 동기화를 위한 시간 동기 정보를 포함하는 타이밍 메시지(timing message)를 수신하도록 구성될 수 있다.
여기서, 타이밍 메시지에 포함된 시간 동기 정보는 1홉 이웃 노드의 하드웨어 클록값 및 로지컬 클록값, 1홉 이웃 노드에 연결된 2홉 이웃 노드의 개수, 각 아이디(ID), 1홉 이웃 노드를 기준으로 하는 2홉 이웃 노드의 상대 속도를 포함하도록 구성될 수 있다.
가상 링크 설정 모듈(120)은 2홉 이웃 노드에 대해 가상 링크(virtual link)를 설정하도록 구성될 수 있다.
클록 속도 평균 계산 모듈(130)은 타이밍 메시지에 포함된 1홉 이웃 노드의 시간 동기 정보 및 가상 링크 설정 모듈(120)에서 가상 링크가 설정된 2홉 이웃 노드의 시간 동기 정보를 이용하여 1 홉 이웃 노드 및 2 홉 이웃 노드의 평균 클록 속도(average clock rate)를 계산하도록 구성될 수 있다. 즉, 시간 동기화 평균 계산을 수행할 수 있다.
클록 속도 평균 계산 모듈(130)은 각각의 1홉 이웃 노드의 하드웨어 클록값 및 로지컬 클록값과, 1홉 이웃 노드에 연결된 2홉 이웃 노드의 하드웨어 클록값 및 로지컬 클록의 상대 속도를 이용하여 평균 클록 속도를 계산할 수 있다
즉, 특정 노드는 2홉 이웃 노드와 직접적인 물리 링크로 연결되어 있지 않아도 2홉 이웃 노드와 연결된 것과 같은 효과를 얻을 수 있다.
위 시간 동기화 평균화 계산 과정을 좀 더 구체적으로 설명하면 다음과 같다.
각 노드에는 하드웨어 클록(hardware clock)과 소프트웨어 클록(software clock)이 있다고 가정할 수 있다.
하드웨어 클록은 외부에서 크리스탈 오실레이터(crystal oscillator)로 카운트한 시간을 나타내며, 하드웨어 및 주변 환경에 따라 하드웨어 클록의 증가 속도가 달라지게 된다. 노드 i의 하드웨어 클록의 값
Figure 112019043944727-pat00001
는 다음과 같이 계산될 수 있다.
Figure 112019043944727-pat00002
여기서
Figure 112019043944727-pat00003
는 하드웨어 클록의 속도이고
Figure 112019043944727-pat00004
는 하드웨어 클록 오프셋이다.
하드웨어 클록은 연속적으로 실행되고 수정할 수 없기 때문에 로컬 클록(local clock)으로 기준으로 시간을 표현하고 동기화하도록 정의할 수 있다.
노드 i의 로컬 클록(local clock) 값
Figure 112019043944727-pat00005
는 다음과 같이 계산될 수 있다.
Figure 112019043944727-pat00006
여기서,
Figure 112019043944727-pat00007
는 로지컬 클록(logical clock) 속도이고
Figure 112019043944727-pat00008
는 로지컬 클록 오프셋(logical clock offset)이다. 시간 동기화 프로토콜의 목표는 각 노드의 로지컬 클록(logical clock)
Figure 112019043944727-pat00009
가 동일해지도록
Figure 112019043944727-pat00010
Figure 112019043944727-pat00011
를 추정하는 것이다.
GTSP로 대표되는 평균 컨센서스 기반의 시간 동기화 프로토콜에서 각 노드는 인접 노드의 상대적인 속도에 따라 로지컬 클록(logical clock) 속도를 조정한다. 서로 이웃해 있는 노드 i와 j의 상대적인 속도는 다음과 같은 두 개의 식으로 계산될 수 있다.
Figure 112019043944727-pat00012
각각의 반복적인 상황에서 새로운 클록 속도는 다음과 같이 계산될 수 있다.
Figure 112019043944727-pat00013
여기서,
Figure 112019043944727-pat00014
는 노드 i의 1홉 이웃 노드들의 집합이다. 클록 오프셋 값도 수학식 3과 같이 계산될 수 있으며, 클록 속도와는 독립적으로 계산될 수 있다. 동기화 완료 시간의 대부분은 클록 속도를 조정하는 데 사용될 수 있다.
따라서 동기화 완료를 빠르게 하기 위해서는 이 시간을 단축시킬 필요가 있다.
위의 식을 이용하여 각 노드가 상대적인 속도를 아는 노드들이 많아질수록 클록 속도를 보상 또는 조정하는 데 필요한 반복 횟수가 감소한다는 것을 알 수 있다.
본 발명에서는 각 노드들은 직접적인 타이밍 메시지를 교환하지 않고도 1홉 거리의 이웃 노드뿐만 아니라 2홉 거리의 이웃 노드와의 상대적인 속도를 계산할 수 있다.
예를 들어 노드 j를 통해 연결되는 2홉 거리의 이웃 노드 i와 k에 대하여 다음과 같이 상대 속도를 계산할 수 있다.
Figure 112019043944727-pat00015
즉, 위 수학식 5를 실행하기 위해서는 도 2에 도시된 바와 같이 노드 j는 자신의 1홉 이웃 노드 k와의 상대속도
Figure 112019043944727-pat00016
를 계산하고 타이밍 메시지에 추가한다.
이때, 노드 i가 노드 j로부터 타이밍 메시지를 수신하면, 기존 GTSP의 동작과 동일하게 클록 값의 비교를 통하여
Figure 112019043944727-pat00017
를 계산할 수 있다.
다음으로, 노드 i는 위 수학식 5를 이용하여 노드 j를 통한 2홉 이웃 노드와의 상대적인 속도인
Figure 112019043944727-pat00018
를 계산할 수 있다.
마지막으로 노드 i는 모든 이웃의 상대적인 평균 속도에 따라 로지컬 클록 속도를 조정할 수 있다. 위
Figure 112019043944727-pat00019
를 구하는 식은 아래의 수학식 6으로 확장될 수 있다.
Figure 112019043944727-pat00020
여기서
Figure 112019043944727-pat00021
는 노드 i의 2홉 거리 이웃 노드들의 집합이다. 위 수학식 6은 도 2에서 보는 바와 같이 각 노드와 그 2홉 이웃 노드 사이에 가상 링크가 존재한다고 가정할 때의 계산방식으로 해석할 수 있다.
시간 동기화 적용 모듈(140)은 클록 속도 평균 계산 모듈(130)에서 계산된 평균 클록을 이용하여 시간 동기화에 적용하도록 구성될 수 있다.
시간 동기화 적용 모듈(140)은 1홉 이웃 노드 및 2홉 이웃 노드와의 클록 오프셋(clock offset)을 조정하여 적용하고, 1홉 이웃 노드 및 2홉 이웃 노드의 클록 드리프트(clock drift)를 조정하여 적용하도록 구성될 수 있다. 즉, 시간 동기화는 오프셋 조정과 클록 드리프트의 조정을 의미한다.
여기서, 오프셋 조정은 두 노드 간의 시간 차이를 맞추는 것을 의미한다. 예를 들어, 어느 노드가 12시이고 다른 노드가 12시 10분이라고 하면 10분의 차이를 맞추어 일치시키는 것이다.
그리고 클록 드리프트 조정은 시간이 변화하는 속도의 차이를 맞추는 것을 의미한다. 예를 들어, 어느 노드가 1시간 흐르는 동안 다른 노드는 50분 흐른다고 할 때, 각 노드의 클록 속도를 조정하는 것을 의미한다.
시간 동기 평균화 참여 노드 실시간 설정 모듈(150)은 여러 노드들 중에서 물리 링크로 연결된 1홉 이웃 노드와 가상 링크가 설정된 2홉 이웃 노드의 수가 적은 노드에 대해서는 시간 동기 평균화 계산 과정에 참여하는 것을 배제하도록 구성될 수 있다. 이웃 노드의 수가 적으면 시간 동기화에 지연을 가져오는 문제점이 있기 때문에 배제를 하도록 구성될 수 있다.
엣지 노드 평균화 참여 실시간 설정 모듈(160)는 엣지 노드(edge node)에 대해 시간 동기 평균화 계산 과정에 참여하는 것을 배제하도록 구성될 수 있다.
엣지 노드의 경우 중앙에 있는 노드에 비해 이웃 노드의 수가 적은 경우가 많으므로, 위와 같은 배제에 의해 시간 동기화에 지연을 가져오는 문제점을 회피하기 위해서이다.
여기서, 엣지 노드는 타이밍 메시지에 담겨 있는 이웃 노드들의 수를 기준으로 구별될 수 있다. 따라서 엣지 노드는 그들의 클록을 일반 노드의 평균적인 속도에 따르도록 업데이트하도록 할 수 있다.
도 4는 본 발명에 따른 시간 동기 오차와 종래 기술에 따른 시간 동기 오차를 나타내는 그래프이다.
본 발명의 알고리즘은 OPNET 시뮬레이션을 통하여 검증하였으며, 도 3에서는 GTSP와 본 발명의 알고리즘 간의 시간에 따른 시간 동기 오차의 변화를 나타내고 있다.
GTSP 대비 본 발명의 알고리즘에서 시간 동기 오차를 특정 임계값까지 줄이는 데까지 걸리는 시간이 획기적으로 줄어들었음을 알 수 있다.
도 5는 본 발명에 따른 시간 동기 완료 시간과 종래 기술에 따른 시간 동기 완료 시간을 나타내는 그래프이다.
도 5에서는 전송 범위의 설정에 따른 시간 동기 완료 시간을 비교하여 나타내고 있으며, 본 발명의 알고리즘이 기존의 GTSP에 비해 최대 400% 향상된 성능을 가졌다는 것을 알 수 있다.
도 6은 본 발명의 일 실시예에 따른 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 방법의 흐름도이다.
도 6을 참조하면, 타이밍 메시지 수신 모듈(110)이 물리적으로 연결된 1홉(hop) 이웃 노드(node)로부터 1홉 이웃 노드 및 2홉 이웃 노드와의 시간 동기화를 위한 시간 동기 정보를 포함하는 타이밍 메시지(timing message)를 수신한다(S101).
여기서, 상기 1홉 이웃 노드의 하드웨어 클록값 및 로지컬 클록값, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드의 개수, 각 아이디(ID), 상기 1홉 이웃 노드를 기준으로 하는 2홉 이웃 노드의 상대 속도를 포함하도록 구성될 수 있다.
다음으로, 가상 링크 설정 모듈(120)이 2홉 이웃 노드와 가상 링크를 설정한다(S102).
다음으로, 클록 속도 평균 계산 모듈(130)이 1홉 이웃 노드의 시간 동기 정보 및 가상 링크 설정 모듈(120)에서 가상 링크가 설정된 2홉 이웃 노드의 시간 동기 정보를 이용하여 1 홉 이웃 노드 및 2 홉 이웃 노드의 평균 클록 속도(average clock rate)를 계산한다(S103).
다음으로, 시간 동기화 적용 모듈(140)이 클록 속도 평균 계산 모듈(130)에서 계산된 평균 클록을 이용하여 시간 동기화에 적용한다(S104).
여기서, 시간 동기화 적용 모듈(140)은 1홉 이웃 노드와의 시간 동기화를 수행하고, 1홉 이웃 노드에 연결된 2홉 이웃 노드와의 시간 동기화를 수행하도록 구성될 수 있다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
110: 타이밍 메시지 수신 모듈
120: 가상 링크 설정 모듈
130: 클록 속도 평균 계산 모듈
140: 시간 동기화 적용 모듈
150: 시간 동기 평균화 참여 노드 실시간 설정 모듈
160: 엣지 노드 평균화 참여 실시간 설정 모듈

Claims (6)

  1. 물리적으로 연결된 1홉(hop) 이웃 노드(node)로부터 1홉 이웃 노드 및 2홉 이웃 노드와의 시간 동기화를 위한 시간 동기 정보를 포함하는 타이밍 메시지(timing message)를 수신하는 타이밍 메시지 수신 모듈;
    상기 2홉 이웃 노드와 가상 링크를 설정하는 가상 링크 설정 모듈;
    상기 1홉 이웃 노드의 시간 동기 정보 및 상기 가상 링크 설정 모듈에서 가상 링크가 설정된 2홉 이웃 노드의 시간 동기 정보를 이용하여 1 홉 이웃 노드 및 2 홉 이웃 노드의 평균 클록 속도(average clock rate)를 계산하는 클록 속도 평균 계산 모듈; 및
    상기 클록 속도 평균 계산 모듈에서 계산된 평균 클록을 이용하여 시간 동기화에 적용하는 시간 동기화 적용 모듈을 포함하고,
    상기 타이밍 메시지에 포함된 시간 동기 정보는,
    상기 1홉 이웃 노드의 하드웨어 클록값 및 로지컬 클록값, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드의 개수, 각 아이디(ID), 상기 1홉 이웃 노드를 기준으로 하는 2홉 이웃 노드의 상대 속도를 포함하도록 구성되는 것을 특징으로 하는 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치.
  2. 삭제
  3. 제1항에 있어서, 상기 시간 동기화 적용 모듈은,
    상기 1홉 이웃 노드와의 시간 동기화를 수행하고, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드와의 시간 동기화를 수행하도록 구성되는 것을 특징으로 하는 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치.
  4. 타이밍 메시지 수신 모듈이 물리적으로 연결된 1홉(hop) 이웃 노드(node)로부터 1홉 이웃 노드 및 2홉 이웃 노드와의 시간 동기화를 위한 시간 동기 정보를 포함하는 타이밍 메시지(timing message)를 수신하는 단계;
    가상 링크 설정 모듈이 상기 2홉 이웃 노드와 가상 링크를 설정하는 단계;
    클록 속도 평균 계산 모듈이 상기 1홉 이웃 노드의 시간 동기 정보 및 상기 가상 링크 설정 모듈에서 가상 링크가 설정된 2홉 이웃 노드의 시간 동기 정보를 이용하여 1 홉 이웃 노드 및 2 홉 이웃 노드의 평균 클록 속도(average clock rate)를 계산하는 단계; 및
    시간 동기화 적용 모듈이 상기 클록 속도 평균 계산 모듈에서 계산된 평균 클록을 이용하여 시간 동기화에 적용하는 단계를 포함하고,
    상기 타이밍 메시지에 포함된 시간 동기 정보는,
    상기 1홉 이웃 노드의 하드웨어 클록값 및 로지컬 클록값, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드의 개수, 각 아이디(ID), 상기 1홉 이웃 노드를 기준으로 하는 2홉 이웃 노드의 상대 속도를 포함하도록 구성되는 것을 특징으로 하는 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 방법.
  5. 삭제
  6. 제4항에 있어서, 상기 시간 동기화 적용 모듈이 상기 클록 속도 평균 계산 모듈에서 계산된 평균 클록을 이용하여 시간 동기화에 적용하는 단계는,
    상기 1홉 이웃 노드와의 시간 동기화를 수행하고, 상기 1홉 이웃 노드에 연결된 2홉 이웃 노드와의 시간 동기화를 수행하도록 구성되는 것을 특징으로 하는 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 방법.
KR1020190049780A 2019-04-29 2019-04-29 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법 KR102174089B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190049780A KR102174089B1 (ko) 2019-04-29 2019-04-29 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190049780A KR102174089B1 (ko) 2019-04-29 2019-04-29 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102174089B1 true KR102174089B1 (ko) 2020-11-04

Family

ID=73571157

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190049780A KR102174089B1 (ko) 2019-04-29 2019-04-29 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102174089B1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100699510B1 (ko) 2005-08-31 2007-03-23 강릉대학교산학협력단 무선 센서 네트워크를 위한 정확한 시간 동기화 프로토콜
KR20070106645A (ko) * 2005-03-01 2007-11-02 아트멜 코포레이숀 다중위상 재정렬된 전압-제어형 발진기 및 이를 포함하는위상-고정 루프
KR20080023194A (ko) * 2006-09-08 2008-03-12 주식회사 콤텍시스템 패킷망을 매개로 하는 시분할 다중화 서비스에서의 클록복원 방법
KR20110003327A (ko) * 2008-03-17 2011-01-11 와이-랜, 인코포레이티드 통신 디바이스들에 클록을 분배하기 위한 시스템들 및 방법들
US20140140269A1 (en) * 2012-11-16 2014-05-22 Qualcomm Incorporated Methods and apparatus for enabling distributed frequency synchronization
KR20150038127A (ko) 2012-08-22 2015-04-08 알까뗄 루슨트 원격통신 네트워크에서 정밀 시간 프로토콜에 의해 분산된 클록들을 동기화하는 방법
KR20190001252A (ko) * 2017-06-27 2019-01-04 인천대학교 산학협력단 로라 광역 네트워크에서 복수의 엔드 디바이스로 다운링크 방송 메시지를 송신하는 방법 및 로라 광역 네트워크 시스템

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070106645A (ko) * 2005-03-01 2007-11-02 아트멜 코포레이숀 다중위상 재정렬된 전압-제어형 발진기 및 이를 포함하는위상-고정 루프
KR100699510B1 (ko) 2005-08-31 2007-03-23 강릉대학교산학협력단 무선 센서 네트워크를 위한 정확한 시간 동기화 프로토콜
KR20080023194A (ko) * 2006-09-08 2008-03-12 주식회사 콤텍시스템 패킷망을 매개로 하는 시분할 다중화 서비스에서의 클록복원 방법
KR20110003327A (ko) * 2008-03-17 2011-01-11 와이-랜, 인코포레이티드 통신 디바이스들에 클록을 분배하기 위한 시스템들 및 방법들
KR20150038127A (ko) 2012-08-22 2015-04-08 알까뗄 루슨트 원격통신 네트워크에서 정밀 시간 프로토콜에 의해 분산된 클록들을 동기화하는 방법
US20140140269A1 (en) * 2012-11-16 2014-05-22 Qualcomm Incorporated Methods and apparatus for enabling distributed frequency synchronization
KR20190001252A (ko) * 2017-06-27 2019-01-04 인천대학교 산학협력단 로라 광역 네트워크에서 복수의 엔드 디바이스로 다운링크 방송 메시지를 송신하는 방법 및 로라 광역 네트워크 시스템

Similar Documents

Publication Publication Date Title
KR101275548B1 (ko) 무선 시스템에서의 노드 및 무선 시스템에서 노드를 시간 및 주파수 동기화하기 위한 방법
EP2544387B1 (en) Methods and devices for performing synchronization and compensating clock drift among communication devices
Choi et al. DCS: Distributed asynchronous clock synchronization in delay tolerant networks
US9226252B2 (en) Recursive time synchronization protocol method for wireless sensor networks
US8995473B2 (en) Ring based precise time data network clock phase adjustments
CN106452650A (zh) 适用于多跳无线传感器网络的时钟同步频率偏移估计方法
Yildirim et al. External gradient time synchronization in wireless sensor networks
KR20050025582A (ko) 무선 네트워크에서 클록 드리프트의 정정 및 동기의유지를 위한 시스템 및 방법
WO2018098791A1 (zh) 适用于多跳无线传感器网络的时钟同步频率偏移估计方法
Choi et al. Distributed clock synchronization in delay tolerant networks
GB2404121A (en) Inter-network synchronisation
US9912693B1 (en) Identification of malicious precise time protocol (PTP) nodes
KR102174089B1 (ko) 가상 링크를 이용한 평균 컨센서스 기반 시간 동기화 프로토콜의 성능 개선 장치 및 방법
CN109510681A (zh) 一种通信网络时间同步级数最小的基准节点选择方法
JP2015188159A (ja) スレーブノード、時刻同期方法及びコンピュータプログラム
Du et al. Fully distributed clock skew and offset estimation in wireless sensor networks
US9713110B2 (en) Method and network node for facilitating timing synchronization in network
Phan et al. A fast consensus-based time synchronization protocol with virtual links in WSNs
He et al. Distributed time synchronization under bounded noise in wireless sensor networks
KR102245894B1 (ko) 애드혹 네트워크에서의 동기화 방법
KR102174377B1 (ko) 노드 시간동기 제어 장치 및 그 방법
CN111385825B (zh) 一种无线传感器网络快速收敛的一致性时间同步方法
Fanarioti et al. A proposed algorithm for data measurements synchronization in wireless sensor networks
KR102180041B1 (ko) 노드의 시간동기 제어 장치 및 그 방법
US11153834B2 (en) Methods and systems for accurate and accelerated synchronization for communication networks

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant