KR101788196B1 - 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법 - Google Patents

애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법 Download PDF

Info

Publication number
KR101788196B1
KR101788196B1 KR1020160090971A KR20160090971A KR101788196B1 KR 101788196 B1 KR101788196 B1 KR 101788196B1 KR 1020160090971 A KR1020160090971 A KR 1020160090971A KR 20160090971 A KR20160090971 A KR 20160090971A KR 101788196 B1 KR101788196 B1 KR 101788196B1
Authority
KR
South Korea
Prior art keywords
node
time slot
firing
phase
message
Prior art date
Application number
KR1020160090971A
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 KR1020160090971A priority Critical patent/KR101788196B1/ko
Application granted granted Critical
Publication of KR101788196B1 publication Critical patent/KR101788196B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/04Wireless resource allocation
    • H04W72/044Wireless resource allocation based on the type of the allocated resource
    • H04W72/0446Resources in time domain, e.g. slots or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/02Selection of wireless resources by user or terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명에 따른 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법은, 이웃 노드의 파이어링 메시지를 수신하여 시간 동기화를 수행하는 시간 동기화 단계; 상기 수신된 파이어링 메시지에 기반하여 일정 홉(hop) 내의 이웃 노드들이 점유하지 않은 컨트롤 시간 슬롯 중 하나를 선택하는 컨트롤 시간 슬롯 점유 단계; 상기 수신된 파이어링 메시지에 기반하여 일정 홉 내의 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 중 하나를 선택하는 파이어링 페이즈 시간 슬롯 점유 단계; 및 상기 파이어링 페이즈 시간 슬롯을 기준으로 앞과 뒤에 있는 제1 및 제2파이어링 페이즈 시간 슬롯인 참조 페이즈, 상기 제1노드 및 제2노드의 파이어링 페이즈에 기반하여 다음 슈퍼프레임의 데이터 시간 슬롯을 점유하는 데이터 시간 슬롯 점유 단계를 포함하고, 상기 제2노드는 상기 제2파이어링 페이즈 시간 슬롯에 대하여 가장 작은 값을 점유한 노드이고, 브로드캐스팅을 이용한 정보 공유를 통하여 시간 동기화와 시간 슬롯 할당을 동시에 수행 가능하다.

Description

애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법{Bio-inspired distributed wireless resource allocation method for the Ad-hoc network environment}
본 발명은 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법에 관한 것이다.
기존에 제안된 무선자원할당 기법은 분산형 자원할당 기법과 생체모방 자원할당 기법으로 크게 두 가지로 구분할 수 있다.
(분산형 자원할당 기법)
분산형 자원할당 기법은 단말 간의 경쟁이 없는 (non-contention) 통신을 목적으로 제안된 기법으로, 프레임 구조는 단말간 자원할당을 위한 컨트롤 채널 (Control channel)과 정보(데이터)를 송수신하기 위한 데이터 채널 (Data channel)로 구성되어있다.
이러한 프레임 구조를 통해 무선 멀티 홉 네트워크 환경에서 숨은 단말 (hidden termina) 문제를 해결하여 단말간 충돌 없이 데이터 채널 할당이 가능하게 하였다.
(분산형 자원할당 기법의 문제점)
1) 분산형 자원할당 기법에서는 네트워크 상의 모든 단말이 순서대로 컨트롤 채널을 한번씩 점유하여 사용한다고 가정하였는데 이는 무선 네트워크 환경에서 분산형 자원할당기법에 적합하지 않은 가정이다. 즉 각 단말간 컨트롤 채널을 충돌없이 할당받기 위한 추가적인 알고리즘이 필요하다.
2) 멀티 홉 환경에서 숨은 단말 문제를 해결하기 위해서는 각 노드가 2홉 이내의 이웃노드에 대한 노드 정보, 및 해당 노드의 시간 슬롯 점유 정보를 유지해야 하기 때문에 오버헤드가 크다는 단점을 갖는다.
3) 노드의 이동성에 대한 고려가 이루어져있지 않아, 이동성이 높은 환경에서 서비스 QoS 보장을 확신할 수 없어 추가 연구가 필요하다.
(생체모방 자원할당 기법)
생체모방 자원할당 기법은 생체모방 기법인 DESYNC 혹은 PCO-DESYNC (Pulse Coupled Oscillator DESYNC) 기법을 적용하여 단말간 공평하게 주파수 및 시간 자원을 할당받는 목적으로 제안되었다 (DESYNC 기법 이란 반딧불의 플래싱 (the flashing of fireflies) 모델과 뇌신경계의 스파이킹 (the spiking of neurons in the brain) 모델 등 서로 연결되어있는 요소들이 다른 요소들의 펄스 신호를 듣고 자신의 펄스 패턴을 바꾸게 되어 결국 주변 요소들과 동기화 (Synchronization)가 이루어지는 모습의 반대 (inverse) 의미를 갖는 현상으로, 각 요소들이 서로 동일한 시간간격을 두어 펄스 신호를 보내는 현상을 모델링한 것).
이러한 생체모방 자원할당 기법은 컨트롤 채널을 사용하지 않아 분산형 자원할당 기법보다 채널 효율이 높으며, 각 프레임의 시간 동기화 문제를 고려하지 않아도 된다는 장점을 갖는다. 또한 알고리즘이 단순하다.
(생체모방 자원할당 기법의 문제점)
1) 생체모방 자원할당 기법에서는 분산형 자원할당 기법에서와 같은 컨트롤 채널이 없는 대신 데이터 슬롯 중 하나를 점유하여 컨트롤 메시지와 매핑되는 파이어링 메시지 (Firing message)를 송신한다고 가정하였다. 하지만 새로 진입한 노드의 파이어링 메시지와 기존에 데이터를 전송하던 노드의 데이터 메시지 간의 충돌에 대한 고려가 이루어져있지 않아 트래픽 전송 시 높은 패킷 손실률로 인해 서비스 QoS를 보장할 수 없어 이를 해결하기 위한 추가적인 알고리즘이 필요하다.
2) 생체모방 자원할당 기법에서는 네트워크 환경을 완전 접속망 (Fully connected network)로 가정하여 무선 멀티 홉 환경에서의 숨은 단말 문제를 해결할 수 없다는 단점을 갖는다. 이에 무선 멀티 홉 환경에서도 잘 동작하는 알고리즘이 필요하다.
3) 무선 채널환경에 대한 고려가 이루어져있지 않아, 동적인 무선 채널환경에서도 안정적으로 데이터 송수신이 가능한 추가 연구가 필요하다.
따라서, 본 발명에서 해결하고자 하는 과제는 분산형 무선자원할당에서 시간 동기화와 시간 슬롯 할당을 제공하는 것이다.
또한, 본 발명은 파이어링 메시지와 데이터 메시지의 충돌 문제를 해결하는 방법을 제공하는 것이다.
상기 목적을 달성하기 위한 본 발명에 따른 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법은, 이웃 노드의 파이어링 메시지를 수신하여 시간 동기화를 수행하는 시간 동기화 단계; 상기 수신된 파이어링 메시지에 기반하여 일정 홉(hop) 내의 이웃 노드들이 점유하지 않은 컨트롤 시간 슬롯 중 하나를 선택하는 컨트롤 시간 슬롯 점유 단계; 상기 수신된 파이어링 메시지에 기반하여 일정 홉 내의 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 중 하나를 선택하는 파이어링 페이즈 시간 슬롯 점유 단계; 및 상기 파이어링 페이즈 시간 슬롯을 기준으로 앞과 뒤에 있는 제1 및 제2파이어링 페이즈 시간 슬롯인 참조 페이즈, 상기 제1노드 및 제2노드의 파이어링 페이즈에 기반하여 다음 슈퍼프레임의 데이터 시간 슬롯을 점유하는 데이터 시간 슬롯 점유 단계를 포함하고, 상기 제2노드는 상기 제2파이어링 페이즈 시간 슬롯에 대하여 가장 작은 값을 점유한 노드이고, 브로드캐스팅을 이용한 정보 공유를 통하여 시간 동기화와 시간 슬롯 할당을 동시에 수행 가능하다.
일 실시예에 있어서, 상기 시간 동기화 단계에서, 상기 제1노드가 네트워크에 신규 진입한 신규 노드이고 상기 파이어링 메시지를 수신하지 못한 경우, 현재 클럭 정보를 자신의 클럭 정보로 정의하고, 상기 파이어링 메시지를 수신한 경우, 상기 이웃 노드의 클럭 정보의 평균을 자신의 클럭 정보로 정의할 수 있다.
일 실시예에 있어서, 상기 시간 동기화 단계에서, 상기 제1노드가 기존 노드인 경우, 컨트롤 채널이 끝나는 시점에서 상기 이웃 노드들의 클럭 정보와 자신의 클럭 정보를 평균하여 시간 동기화를 수행할 수 있다.
일 실시예에 있어서, 신규 진입 노드의 컨트롤 시간 슬롯 점유에 의한 기존 노드와의 시간 슬롯 충돌 여부를 감지하고, 상기 충돌이 발생하지 않는 경우 상기 컨트롤 시간 슬롯을 점유하는 다음 슈퍼 프레임에서 사용하기 위하여 점유하고, 상기 충돌이 발생한 경우 상기 다음 슈퍼 프레임에서 상기 충돌이 발생한 시간 슬롯 및 상기 이웃 노드들이 점유한 시간 슬롯을 제외한 시간 슬롯을 컨트롤 시간 슬롯으로 점유할 수 있다.
일 실시예에 있어서, 상기 파이어링 페이즈 시간 슬롯 점유 단계에서, 상기 제1노드가 네트워크에 신규 진입한 신규 노드이고 상기 파이어링 메시지를 수신하지 못한 경우, 전체 데이터 슬롯 중 하나를 파이어링 페이즈 시간 슬롯으로 선택하고, 상기 파이어링 메시지를 수신한 경우, 2홉 내의 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 중 하나를 선택할 수 있다.
일 실시예에 있어서, 링크 에러로 인해 참조 페이즈 위치정보가 손실될 경우 상기 제1노드는 이전 슈퍼프레임에서의 앞과 뒤의 참조 페이즈 시간 슬롯 점유 정보 값을 통해 WRP (Worst Reference Phase time-slot) 위치를 계산하여 해당 슈퍼프레임에서의 파이어링 페이즈 시간 슬롯을 업데이트할 수 있다.
따라서, 본 발명에 따른 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법은 DESYNC 알고리즘의 브로드캐스팅을 이용한 정보 공유를 통하여 시간 동기화와 시간 슬롯 할당을 동시에 수행 가능하다는 장점이 있다.
또한, 본 발명은 분산형 컨트롤 채널 할당 기법을 제안하여 기존 연구의 문제점인 컨트롤 채널에서의 충돌 및 파이어링 메시지와 데이터 메시지의 충돌 문제를 해결할 수 있다는 장점이 있다.
또한, 본 발명은 각 노드가 2홉 이내의 이웃노도들의 firing 정보교환만을 통해 적은 오버헤드로 멀티 홉 DESYNC를 구현할 수 있다는 장점이 있다.
또한, 본 발명은 제안한 알고리즘은 단말의 이동성에 따른 컨트롤 채널 충돌을 문제를 해결하였고, 분산형으로 데이터 채널을 점유하기 때문에 데이터 슬롯을 점유하는데까지 걸리는 시간이 짧은 장점을 갖는다는 장점이 있다.
도 1은 본 발명에 따른 분산형 무선자원할당 방법과 관련하여, 프레임 (Frame) 구조와 파이어링 메시지 (Firing message) 구조를 도시한다.
도 2는 본 발명에 따른 복수의 노드들을 포함하는 클러스터 구조에서 파이어링 메시지의 사용예를 도시한다.
도 3은 본 발명에 따른 분산형 무선자원할당의 흐름도를 도시한다.
도 4는 본 발명에 따른 시간동기화 순서도를 도시한다.
도 5는 본 발명과 관련하여, 단말 별 비콘 전송 기회와 데이터 전송/수신과 관련된 비콘 인터벌 구간을 도시한다.
도 6은 본 발명에 따른 복수의 단말들을 포함하는 클러스터 구조와, 컨트롤 시간 슬롯 충돌의 예를 도시한다.
도 7은 본 발명에 따른 컨트롤 시간 슬롯 점유 순서도를 도시한다.
도 8은 본 발명에 따른 복수의 노드를 포함하는 클러스터 구조와, 파이어링 페이즈 시간 슬롯 충돌의 예를 도시한다.
도 9는 본 발명에 따른 파이어링 페이즈 시간 슬롯 점유 순서도를 도시한다.
도 10은 본 발명에 따른 복수의 단말들을 포함하는 클러스터 구조와, 데이터 시간 슬롯 할당의 개념도를 도시한다.
도 11은 본 발명에 따른 링크 에러 발생 시 자원할당의 일 실시예를 도시한다.
도 12는 본 발명에 따른 링크 에러 발생으로 인한 데이터 시간 슬롯 충돌의 일 실시예를 도시한다.
도 13은 본 발명에 따른 복수의 노드(단말)을 포함하는 무선자원할당 시스템의 구성을 도시한다.
상술한 본 발명의 특징 및 효과는 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 명세서에서 사용한 용어는 단지 특정한 실시 예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다.
제1, 제2등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는" 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않아야 한다.
이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈", "블록" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 당해 분야에 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 설명한다. 하기에서 본 발명의 실시 예를 설명함에 있어, 관련된 공지의 기능 또는 공지의 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
본 발명은 애드 혹 네트워크 환경에 사용가능한 생체모방기반 분산형 무선자원할당 기법에 관한 것이다. 본 발명 제어채널을 통해 무선자원의 제어 메시지인 파이어링 메시지를 주기적으로 송수신하고 이를 통해 교환된 정보를 기반으로 분산적으로 시간을 분할하여 무선자원을 할당받는 방법이다. 이를 위해 프레임 구조 및 파이어링 메시지를 정의하고 각 상태에 따른 동작절차 및 충돌에 대한 해결 방안을 제안한다. 추가로 무선 링크의 에러 상황에서 파이어링 메시지를 정상 수신하지 못한 경우에도 데이터 충돌을 방지하기 위해 수신하지 못한 노드의 파이어링 페이즈의 최악의 경우를 고려하는 방법을 제안한다.
본 발명의 방식에 적은 오버헤드로 멀티 홉 DESYNC가 구현될 수 있으며, 슬롯 점유 딜레이를 줄여 망 성능을 개선할 수 있다.
이하, 본 발명에 따른 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법에 대해 살펴보기로 한다. 이와 관련하여, 도 1은 본 발명에 따른 분산형 무선자원할당 방법과 관련하여, 프레임 (Frame) 구조와 파이어링 메시지 (Firing message) 구조를 도시한다.
프레임 구조는 도 1과 같이 하나의 슈퍼프레임을 두 개의 프레임으로 홀수 프레임 (odd frame)과 짝수 프레임 (even frame)으로 구분하여 정의한다. 각 홀수 혹은 짝수 프레임은 컨트롤 채널 (control channel)과 데이터 채널 (data channel)로 구분되며, 컨트롤 채널은 개의 control time slot으로, 데이터 채널은 개의 data time slot으로 구성된다. 각 노드는 control channel을 통해 firing message를 송수신하여 TimeSYNC (시간동기화), Broadcasting, DESYNC를 수행하며, data channel을 통해 트래픽을 송수신한다.
파이어링 메시지 구조는 도 1과 같이 시간동기화를 위한 노드의 클럭(clock) 정보 (preamble), 브로드캐스팅을 위한 컨트롤 시간 슬롯 (control time slot) 점유 정보와 DESYNC를 위한 파이어링 페이즈(firing phase) 점유 정보를 포함한다. 파이어링 페이즈란 각 노드가 매 프레임 자신이 논리적으로 firing 하는 데이터 시간 슬롯의 위치를 뜻하며 1에서 사이의 값을 갖는다. 컨트롤 시간 슬롯 점유 유무는 해당 컨트롤 시간 슬롯을 점유한 노드의 ID 정보와 홉 정보로 표현한다. 각 노드는 충돌없이 컨트롤 채널을 점유하기 위해서는 2홉 이내의 이웃 노드들의 컨트롤 시간 슬롯 점유 정보를 알아야하기 때문에 자신과 자신의 1홉 이웃노드의 정보를 파이어링 메시지에 포함한다. 파이어링 페이즈 점유 유무는 해당 데이터 시간 슬롯을 점유한 노드의 ID 정보와 홉 정보로 표현한다. 각 노드는 충돌없이 데이터 채널을 점유하기 위해서는 2홉 이내의 파이어링 페이즈 점유 정보를 알아야 하기 때문에 자신과 자신의 1홉 이웃노드의 정보를 파이어링 메시지에 포함한다. 클럭 정보 (Clock Info.)는 시간동기화를 위한 정보로 물리적인 절대 시간 정보를 뜻한다. ID 정보 (ID Info.)는 각 노드의 ID 정보 (노드번호)가 사용된다. 홉 정보 (Hop Info.)는 자기자신은 “0”으로 1홉 이웃노드는 “1”로 표현한다.
[파이어링 메시지 사용 예]
도 2는 본 발명에 따른 복수의 노드들을 포함하는 클러스터 구조에서 파이어링 메시지의 사용예를 도시한다.
예를 들어 도 2의 왼쪽과 같이 4개의 노드가 네트워크를 형성하고 있고, 1번 노드가 2번째 control time slot을 점유하고, firing phase가 5번째 data time slot이고, 2번 노드가 4번째 control time slot을 점유하고, firing phase가 2번째 data time slot이고, 3번 노드가 1번째 control time slot을 점유하고, firing phase가 7번째 data time slot이고, 4번 노드가 5번째 control time slot을 점유하고, firing phase가 4번째 data time slot이면 각 노드의 firing message는 도 2의 오른쪽과 같이 구성된다.
파이어링 메시지를 수신한 노드는 홉 정보가 “0”인 노드는 자신의 1홉 이웃 노드이고, “1”인 노드는 자신의 2홉 이웃 노드라는 것을 알 수 있기 때문에 모든 노드는 자신의 2홉 이내의 이웃노드들의 컨트롤 시간 슬롯과 파이어링 페이즈 점유 정보를 알 수 있다.
(Logical Firing 기법의 동작 절차)
새로 제안하는 Logical Firing 기법은 실제 데이터 시간 슬롯에서 firing 하는 것이 아니라 firing 하는 phase 정보를 포함한 firing message를 컨트롤 시간 슬롯에서 전송하는 기법이다.
이와 관련하여, 도 3은 본 발명에 따른 분산형 무선자원할당의 흐름도를 도시한다. Logical Firing 기법의 동작절차는 도 3과 같이 시간 동기화 단계(S310), 컨트롤 시간 슬롯 점유 단계(S320), 파이어링 페이즈 시간 슬롯 점유 단계(S330) 및 데이터 시간 슬롯 점유 단계(S340)를 포함한다.
상기 시간 동기화 단계(S310)는 이웃 노드의 파이어링 메시지를 수신하여 시간 동기화를 수행한다. 한편, 상기 시간 동기화 단계(S310)에서, 상기 제1노드가 네트워크에 신규 진입한 신규 노드이고 상기 파이어링 메시지를 수신하지 못한 경우, 현재 클럭 정보를 자신의 클럭 정보로 정의하고, 상기 파이어링 메시지를 수신한 경우, 상기 이웃 노드의 클럭 정보의 평균을 자신의 클럭 정보로 정의할 수 있다.
상기 시간 동기화 (S310)단계에서, 상기 제1노드가 기존 노드인 경우, 컨트롤 채널이 끝나는 시점에서 상기 이웃 노드들의 클럭 정보와 자신의 클럭 정보를 평균하여 시간 동기화를 수행할 수 있다.
상기 컨트롤 시간 슬롯 점유 단계(S320)는 상기 수신된 파이어링 메시지에 기반하여 일정 홉(hop) 내의 이웃 노드들이 점유하지 않은 컨트롤 시간 슬롯 중 하나를 선택한다.
한편, 신규 진입 노드의 컨트롤 시간 슬롯 점유에 의한 기존 노드와의 시간 슬롯 충돌 여부를 감지하고, 상기 충돌이 발생하지 않는 경우 상기 컨트롤 시간 슬롯을 점유하는 다음 슈퍼 프레임에서 사용하기 위하여 점유하고, 상기 충돌이 발생한 경우 상기 다음 슈퍼 프레임에서 상기 충돌이 발생한 시간 슬롯 및 상기 이웃 노드들이 점유한 시간 슬롯을 제외한 시간 슬롯을 컨트롤 시간 슬롯으로 점유할 수 있다.
상기 파이어링 페이즈 시간 슬롯 점유 단계(S330)는 상기 수신된 파이어링 메시지에 기반하여 일정 홉 내의 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 중 하나를 선택한다.
상기 파이어링 페이즈 시간 슬롯 점유 단계(S330)에서, 상기 제1노드가 네트워크에 신규 진입한 신규 노드이고 상기 파이어링 메시지를 수신하지 못한 경우, 전체 데이터 슬롯 중 하나를 파이어링 페이즈 시간 슬롯으로 선택하고, 상기 파이어링 메시지를 수신한 경우, 2홉 내의 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 중 하나를 선택한다.
상기 데이터 시간 슬롯 점유 단계(S340)는 상기 파이어링 페이즈 시간 슬롯을 기준으로 앞과 뒤에 있는 제1 및 제2파이어링 페이즈 시간 슬롯인 참조 페이즈, 상기 제1노드 및 제2노드의 파이어링 페이즈에 기반하여 다음 슈퍼프레임의 데이터 시간 슬롯을 점유한다. 이때, 상기 제2노드는 상기 제2파이어링 페이즈 시간 슬롯에 대하여 가장 작은 값을 점유한 노드일 수 있다.
한편, 링크 에러로 인해 참조 페이즈 위치정보가 손실될 경우 상기 제1노드는 이전 슈퍼프레임에서의 앞과 뒤의 참조 페이즈 시간 슬롯 점유 정보 값을 통해 WRP (Worst Reference Phase time-slot) 위치를 계산하여 해당 슈퍼프레임에서의 파이어링 페이즈 시간 슬롯을 업데이트할 수 있다.
이상에서는, 상기 시간 동기화 단계(S310), 컨트롤 시간 슬롯 점유 단계(S320), 파이어링 페이즈 시간 슬롯 점유 단계(S330) 및 데이터 시간 슬롯 점유 단계(S340)에 대하여 간략히 살펴보았다.
다음에서는, 상기 시간 동기화 단계(S310), 컨트롤 시간 슬롯 점유 단계(S320), 파이어링 페이즈 시간 슬롯 점유 단계(S330) 및 데이터 시간 슬롯 점유 단계(S340)와 정성적 및 정량적으로 상세히 살펴보고자 한다.
시간 동기화
(1) 네트워크에 새로 진입한 노드의 시간동기화 방법
네트워크에 새로 진입한 노드는 하나의 슈퍼프레임 동안 1홉 이내 이웃 노드의 파이어링 메시지를 수신하여 해당 노드들의 클럭 정보 (Clock Info.)를 수집한다.
수신한 파이어링 메시지가 없는 경우 (네트워크에 최초 진입한 노드인 경우) 현재 클럭 정보를 자신의 클럭 정보로 아래의 수학식 1과 같이 정의한다.
Figure 112016069541264-pat00001
이때 T(t)는 현재 클럭 정보를 나타낸다.
수신한 파이어링 메시지가 있는 경우 1홉 이내 이웃 노드의 클럭 정보의 평균으로 자신의 클럭 정보를 아래의 수학식 2와 같이 계산한다.
Figure 112016069541264-pat00002
각 노드는 다음 프레임 컨트롤 채널에서에서 수학식 (1) 혹은 (2)에서 계산된 자신의 클럭 정보를 업데이트 하여 파이어링 메시지를 송신한다.
(2) 기존 노드의 시간동기화 방법
각 노드는 매 프레임 마다 컨트롤 채널을 통해서 1홉 이내 이웃 노드들의 파이어링 메시지를 수신하여 해당 노드들의 클럭 정보를 수집한다. 컨트롤 채널이 끝나는 시점에 각 노드는 해당 프레임에서 수신한 1홉 이내 이웃 노드들의 클럭 정보와 자신의 클럭 정보로 평균값을 아래의 수학식 3과 같이 계산한다.
Figure 112016069541264-pat00003
이때
Figure 112016069541264-pat00004
는 노드 i의 클럭 정보,
Figure 112016069541264-pat00005
은 노드 i의 1홉 이내의 노드들의 집합,
Figure 112016069541264-pat00006
는 노드 i의 1홉 이내의 노드들의 수 이다.
각 노드는 다음 프레임 컨트롤 채널에서에서 수학식 (1)에서 계산된 자신의 클럭 정보를 업데이트 하여 파이어링 메시지를 송신한다.
모든 노드가 이러한 과정을 반복하면 일정한 시간이 지난 후에 시간동기화가 이루어진다. 시간동기화는 매 프레임 수행한다. 도 4는 본 발명에 따른 시간동기화 순서도를 도시한다.
[기존에 제안된 시간동기화 기법과 차이점]
한편, 도 5는 본 발명과 관련하여, 단말 별 비콘 전송 기회와 데이터 전송/수신과 관련된 비콘 인터벌 구간을 도시한다. 이때, 도 5와 같이 시간 동기화를 위한 비콘 윈도우(beacon window)가 따로 정의되어 있다. 각 노드는 비콘 인터벌 (beacon interval) 마다 경쟁 (contention)을 통해 비콘 (beacon) 신호를 송신할 기회를 얻는다. 예를 들어 도 5와 같이 경쟁에서 이긴 단말 2 (station 2)는 비콘 메시지를 송신하지만, 그렇지 않은 단말 1과 3은 비콘 메시지를 송신하지 않는 것을 알 수 있다. 이때 이웃 단말의 비콘 메시지를 수신한 단말 1과 3은 local-averaging 절차를 거쳐서 시간동기화를 수행하고, 그렇지 않은 단말 2는 self-correcting 절차를 거쳐서 시간동기화를 수행한다.
제안하는 기법에서는 도 1과 같이 각 단말이 파이어링 메시지에 자신의 시간 정보를 포함하여 전송하기 때문에 비콘 윈도우를 따로 정의하지 않아도 된다. 또한 각 노드는 매 프레임마다 자신의 시간 정보가 담긴 파이어링 메시지를 송신하기 때문에, 네트워크 상의 모든 노드가 자신의 1홉 이웃 노드들의 시간 정보를 매 프레임 수신할 수 있다. 따라서 이웃 노드의 시간 정보를 수신하지 못하는 노드가 발생하지 않기 때문에, 각 노드는 self-correcting 절차를 거치지 않고 local-averaging 절차만 수행하여 시간동기화를 수행할 수 있다. 제안하는 시간동기화기법은 기존의 시간동기화 기법에 비해 더 빠른 시간 내에 시간동기화가 이루어 질 수 있다는 장점을 갖는다.
컨트롤 시간 슬롯 점유 (control time-slot allocation)
(1) 네트워크에 새로 진입한 노드의 컨트롤 시간 슬롯 점유 방법
네트워크에 새로 진입한 노드는 하나의 슈퍼프레임 동안 1홉 이내 이웃 노드의 파이어링 메시지를 수신하여 2홉 이내 이웃 노드들의 컨트롤 시간 슬롯 정보 (Info of control time-slot allocation)를 수집한다.
수신한 파이어링 메시지가 없는 경우 (네트워크에 최초 진입한 노드인 경우) 전체 컨트롤 시간 슬롯 C개 중에 하나의 시간 슬롯을 1/C의 확률로 선택한다.
수신한 파이어링 메시지가 있는 경우 2홉 이내 이웃 노드들의 컨트롤 시간 슬롯 점유 정보를 알 수 있다. 이때, 노드 i의 2홉 이내 이웃 노드들이 점유한 컨트롤 시간 슬롯 집합을 alloc i (c)라고 정의하고, 2홉 이내 이웃 노드들이 점유하지 않은 컨트롤 시간 슬롯 집합을 dealloc i (c)라고 정의하면 |alloc i (c)|+|dealloc i (c)|=C 만족한다. 따라서 수신한 파이어링 메시지가 있는 노드는 자신의 2홉 이내 이웃 노드들이 점유하지 않은 컨트롤 시간 슬롯 dealloc i (c)중에 하나의 시간 슬롯을 1/|dealloc i (c)|의 확률로 선택한다.
각 노드는 다음 슈퍼프레임의 홀수/짝수 프레임 컨트롤 채널에서에서 자신이 점유하고자 하는 컨트롤 시간 슬롯 정보를 업데이트 하여 파이어링 메시지를 송신한다.
(2) 기존 노드의 컨트롤 시간 슬롯 점유 방법
위와 같은 방법으로 네트워크에 새로 진입한 노드가 컨트롤 시간 슬롯을 점유할 때 충돌이 발생하는 경우가 존재한다. 이에 컨트롤 시간 슬롯 충돌 예를 알아보고, 충돌이 발생 했을 때와 발생하지 않았을 때 컨트롤 시간 슬롯 점유 방법을 설명하도록 한다.
[컨트롤 시간 슬롯 충돌 예]
도 6은 본 발명에 따른 복수의 단말들을 포함하는 클러스터 구조와, 컨트롤 시간 슬롯 충돌의 예를 도시한다.
예를 들어, 도 6의 오른쪽 가운데 혹은 오른쪽 아래 그림과 같이 숨은 단말 관계를 갖는 두 개 이상의 노드가 동시에 네트워크에 진입하여 같은 컨트롤 시간 슬롯을 통해 파이어링 메시지를 전송하는 경우 충돌이 발생한다.
한 프레임 내에 컨트롤 시간 슬롯 충돌을 감지하는 경우 (홀수 프레임에서 컨트롤 시간 슬롯 충돌을 감지하는 경우)
도 6의 가운데 그림과 같이 노드 n1과 n3이 2번째 컨트롤 시간 슬롯을 통해 파이어링 메시지를 전송하는 경우, 노드 n2는 파이어링 메시지 충돌로 인해 충돌 노드 (n1,n3)의 컨트롤 시간 슬롯 점유 정보를 알 수 없다. 이에 노드 n2는 파이어링 메시지가 충돌이 발생한 두 노드 (n1, n3)의 컨트롤 시간 슬롯 점유 정보를 업데이트 하지 못하고 자신의 파이어링 메시지를 4번째 컨트롤 시간 슬롯을 통해 송신하게 된다. 노드 n2의 파이어링 메시지를 수신한 두 노드 (n1, n3)는 자신들의 컨트롤 시간 슬롯 점유 정보가 업데이트 되지 않은 것을 통해 자신의 파이어링 메시지가 충돌이 발생했음을 1프레임 내에 감지할 수 있게 된다.
한 프레임 내에 컨트롤 시간 슬롯 충돌을 감지하지 못하는 경우 (짝수 프레임에서 컨트롤 시간 슬롯 충돌을 감지하는 경우)
도 6의 아래와 같이 노드 n1과 n3이 4번째 컨트롤 시간 슬롯을 통해 파이어링 메시지를 전송하면 해당 프레임에서 충돌을 알기위해서는 이웃 노드의 파이어링 메시지를 수신해야 하지만 이웃 노드인 n2는 해당 프레임에서 파이어링 메시지를 이미 송신하였기 때문에 충돌이 발생한 노드 (n1,n3)는 충돌을 한 프레임 내에서 감지할 수 없다. 따라서 제안하는 기법에서는 하나의 슈퍼프레임 (두 개의 프레임) 주기로 컨트롤 시간 슬롯을 점유한다.
컨트롤 시간 슬롯 충돌이 발생하지 않을 경우에는 매 프레임에서 동일한 시간 슬롯을 점유하여 파이어링 메시지를 송신한다.
컨트롤 시간 슬롯 충돌이 발생할 경우에는 다음 슈퍼프레임에서 앞에서 설명한 (1) 네트워크에 새로 진입한 노드의 컨트롤 시간 슬롯 방법에서 설명한 방법에 따라 컨트롤 시간 슬롯 점유를 시도한다.
모든 노드가 이러한 과정을 반복하면 2홉 이내 이웃 노드들과 충돌 없이 컨트롤 시간 슬롯을 점유하게 된다. 컨트롤 시간 슬롯 점유는 매 슈퍼프레임마다 수행한다. 도 7은 본 발명에 따른 컨트롤 시간 슬롯 점유 순서도를 도시한다.
파이어링 페이즈 점유 (Firing phase time-slot allocation)
(1) 네트워크에 새로 진입한 노드의 파이어링 페이즈 시간 슬롯 점유 방법
네트워크에 새로 진입한 노드는 하나의 슈퍼프레임 동안 1홉 이내 이웃 노드의 파이어링 메시지를 수신하여 2홉 이내 이웃 노드들의 파이어링 페이스 시간 슬롯 정보 (Info of firing phase time-slot allocation)를 수집한다.
수신한 파이어링 메시지가 없는 경우 (네트워크에 최초 진입한 노드인 경우) 전체 데이터 시간 슬롯 D개 중에 하나의 시간 슬롯을 1/D의 확률로 파이어링 페이즈 시간 슬롯으로 선택한다.
수신한 파이어링 메시지가 있는 경우 2홉 이내 이웃 노드들의 파이어링 페이즈 시간 슬롯 점유 정보를 알 수 있다. 이때, 노드 i의 2홉 이내 이웃 노드들이 점유한 파이어링 페이즈 시간 슬롯 집합을 alloc i (d)라고 정의하고, 2홉 이내 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 집합을 dealloc i (d)라고 정의하면 |alloc i (c)|+|dealloc i (c)|=D를 만족한다. 따라서 수신한 파이어링 메시지가 있는 노드는 자신의 2홉 이내 이웃 노드들이 점유하지 않은 컨트롤 시간 슬롯 |dealloc i (d)|중에 하나의 시간 슬롯을 1/|dealloc i (d)|의 확률로 선택한다.
각 노드는 다음 슈퍼프레임의 홀수/짝수 프레임 컨트롤 채널에서에서 자신이 점유하고자 하는 파이어링 페이즈 시간 슬롯 정보를 업데이트 하여 파이어링 메시지를 송신한다.
(2) 기존 노드의 파이어링 페이즈 시간 슬롯 점유 방법
위와 같은 방법으로 네트워크에 새로 진입한 노드가 파이어링 페이즈 시간 슬롯을 점유할 때 충돌이 발생하는 경우가 존재한다. 이에 파이어링 페이즈 시간 슬롯 충돌 예를 알아보고, 충돌이 발생 했을 때와 발생하지 않았을 때 컨트롤 시간 슬롯 점유 방법을 설명하도록 한다.
[파이어링 페이즈 시간 슬롯 충돌 예]
도 8은 본 발명에 따른 복수의 노드를 포함하는 클러스터 구조와, 파이어링 페이즈 시간 슬롯 충돌의 예를 도시한다.
예를 들어 도 8의 오른쪽 가운데 혹은 오른쪽 아래 그림과 같이 숨은 단말 관계를 갖는 두 개 이상의 노드가 동시에 네트워크에 진입하여 같은 파이어링 페이즈를 결정하는 경우 충돌이 발생한다.
한 프레임 내에 파이어링 페이즈 시간 슬롯 충돌을 감지하는 경우 (홀수 프레임에서 파이어링 페이즈 시간 슬롯 충돌을 감지하는 경우)
도 8의 가운데 그림과 같이 두 노드 (n1, n3)는 서로 다른 컨트롤 시간 슬롯 (3번째, 2번째)을 통해 파이어링 메시지를 전송하기 때문에 노드 n2는 두 노드 (n1, n3)의 컨트롤 시간 슬롯 점유 정보와 파이어링 페이즈 시간 슬롯 점유 정보를 모두 알 수 있다. 노드 n2는 두 노드가 2번째 데이터 시간 슬롯을 파이어링 페이즈로 동시에 점유하였기 때문에 충돌임을 알 수 있다. 이에 노드 n2는 두 노드의 컨트롤 시간 슬롯 점유 정보는 업데이트하고, 두 노드의 파이어링 페이즈 시간 슬롯 점유 정보는 업데이트하지 않고 자신의 파이어링 메시지를 4번째 컨트롤 시간 슬롯을 통해 전송한다. 이를 수신한 두 노드 (n1, n3)는 자신들의 파이어링 페이즈 시간 슬롯 점유 정보가 업데이트 되지 않은 것을 통해 자신의 파이어링 페이즈 시간 슬롯 충돌을 감지할 수 있다.
한 프레임 내에 컨트롤 시간 슬롯 충돌을 감지하지 못하는 경우 (짝수 프레임에서 컨트롤 시간 슬롯 충돌을 감지하는 경우)
도 8의 아래와 같이 노드 n1과 n3가 노드 n2보다 늦게 파이어링 메시지를 전송하는 경우 노드 n2는 두 노드의 파이어링 페이즈 시간 슬롯 충돌을 감지하지만 해당 프레임에서 파이어링 메시지를 이미 송신하였기 때문에 충돌이 발생한 노드 (n1, n3)는 충돌을 한프레임 내에서 감지할 수 없다. 따라서 제안하는 기법에서는 하나의 슈퍼프레임 (두 개의 프레임) 주기로 파이어링 페이즈 시간 슬롯을 점유한다.
파이어링 페이즈 시간 슬롯 충돌이 발생하지 않을 경우에는 수신한 이웃노드의 파이어링 메시지로부터 자신의 2홉 내 이웃 노드의 파이어링 페이즈 정보를 얻을 수 있다. 이들 중 노드 의 파이어링 페이즈 시간 슬롯을 기준으로 앞에 있는 파이어링 페이즈 시간 슬롯 중 가장 큰 값을 점유한 노드 p(i)와, 뒤에 있는 파이어링 페이즈 시간 슬롯 중 가장 작은 값을 점유한 노드 n(i)를 아래 수학식 4 및 수학식 5와 같이 결정하며 이러한 두 개의 파이어링 페이즈를 참조 페이즈 (reference phase)로 정의한다.
Figure 112016069541264-pat00007
Figure 112016069541264-pat00008
노드 i는 수학식 4와 5에서 계산된 노드 i의 두 개의 참조 페이즈를 통해 평균값을 아래의 수학식6과 같이 계산한다.
Figure 112016069541264-pat00009
노드 i는 수학식 6에서 계산된 값을 자신의 파이어링 페이즈로 결정하고 자신의 파이어링 메시지에 업데이트하여 다음 슈퍼프레임 (홀수 프레임, 짝수 프레임)의 컨트롤 채널에서 송신한다.
파이어링 페이즈 시간 슬롯 충돌이 발생할 경우에는 다음 슈퍼프레임에서 앞에서 설명한 (1) 네트워크에 새로 진입한 노드의 파이어링 페이즈 시간 슬롯 방법에서 설명한 방법에 따라 파이어링 페이즈 시간 슬롯 점유를 시도한다.
모든 노드가 이러한 과정을 반복하면 2홉 이내 이웃 노드들과 충돌 없이 파이어링 페이즈 시간 슬롯을 점유하게 된다. 파이어링 페이즈 시간 슬롯 점유는 매 슈퍼프레임마다 수행한다. 도 9는 본 발명에 따른 파이어링 페이즈 시간 슬롯 점유 순서도를 도시한다.
데이터 시간 슬롯 점유
각 노드는 n번째 슈퍼프레임에서 앞의 참조 페이즈
Figure 112016069541264-pat00010
와 자신의 파이어링 페이즈
Figure 112016069541264-pat00011
의 중간
Figure 112016069541264-pat00012
부터, 자신의 파이어링 페이즈
Figure 112016069541264-pat00013
와 자신의 뒤의 참조 페이즈 시간 슬롯 중 가장 작은 값을 점유한 노드
Figure 112016069541264-pat00014
의 파이어링 페이즈
Figure 112016069541264-pat00015
의 중간
Figure 112016069541264-pat00016
까지 시간 슬롯을 n+1번째 슈퍼프레임에서 할당 받는다.
데이터 시간 슬롯 점유는 컨트롤 시간 슬롯과 파이어링 페이즈 시간 슬롯을 점유한 다음 슈퍼프레임부터 매 슈퍼프레임마다 구한다. 도 10은 본 발명에 따른 복수의 단말들을 포함하는 클러스터 구조와, 데이터 시간 슬롯 할당의 개념도를 도시한다.
(동적인 무선 채널환경에서도 안정적으로 데이터 송수신이 가능한 추가 알고리즘)
[동적인 무선 채널환경에서 발생할 수 있는 문제점]
동적인 무선 채널환경에서는 링크 품질 (link quality) 저하에 따른 파이어링 메시지 손실이 발생할 수 있다. 이때 제안하는 기법에서, 노드 는 자신의 파이어링 페이즈 시간 슬롯 업데이트를 위한 자신의 앞과 뒤의 참조 페이즈 정보를 전달해줄 노드가 있을 경우에는 데이터 시간 슬롯 충돌 없이 자원할당이 가능하지만, 두 개의 참조 페이즈 정보를 전달해 줄 노드가 없는 경우에는 데이터 시간 슬롯 충돌이 발생한다.
[데이터 시간 슬롯 충돌의 예]
도 11은 본 발명에 따른 링크 에러 발생 시 자원할당의 일 실시예를 도시한다.
예를 들어 도 11의 왼쪽 그림에서와 같이 노드 n2와 n1 사이에 링크 에러로 인해 노드 n2의 파이어링 메시지를 노드 n1이 수신하지 못한다고 하더라도 노드 n4의 파이어링 메시지를 올바로 수신한 노드 n1은 도 11의 오른쪽 그림에서와 같이 자신의 앞과 뒤의 참조 페이즈 시간 슬롯을 점유한 노드 n3와 n4의 컨트롤 시간 슬롯 점유 정보와 파이어링 페이즈 시간 슬롯 점유 정보를 알 수 있다. 따라서 다음 슈퍼프레임에서의 파이어링 페이즈 업데이트를 정상적으로 수행하여 데이터 시간 슬롯을 충돌 없이 할당 할 수 있다.
도 12는 본 발명에 따른 링크 에러 발생으로 인한 데이터 시간 슬롯 충돌의 일 실시예를 도시한다.
하지만, 도 12의 왼쪽 그림에서와 같이 노드 n2와 n1 사이에 링크 에러로 인해 노드 n2의 파이어링 메시지를 노드 n1이 수신하지 못할 경우 노드 n1은 자신의 앞과 뒤의 참조 페이즈 시간 슬롯을 점유한 노드 n3, n2의 컨트롤 시간 슬롯 점유 정보와 파이어링 페이즈 시간 슬롯 점유 정보를 알 수 없다. 따라서 노드 n1은 자신의 파이어링 페이즈 정보만을 통해 다음 슈퍼프레임에서의 파이어링 페이즈 업데이트를 수행하기 때문에 도 12의 오른쪽 그림에서와 같이 두 노드 n3, n2와 데이터 시간 슬롯을 동시에 점유하여 충돌이 발생할 수 있다.
[링크 에러로 인한 데이터 시간 슬롯 충돌을 줄이기 위한 추가적인 알고리즘]
앞에서 살펴본바와 같이 링크 에러로 인해 참조 페이즈 위치정보가 손실될 경우 노드 는 이전 슈퍼프레임에서의 앞과 뒤의 참조 페이즈 시간 슬롯 점유 정보 값을 통해 WRP (Worst Reference Phase time-slot) 위치를 계산하여 해당 슈퍼프레임에서의 파이어링 페이즈 시간 슬롯을 업데이트 함으로써 다음 슈퍼 프레임에서의 데이터 시간 슬롯 충돌을 줄이고자 한다.
해당 슈퍼프레임 n에서의 참조 페이즈 중 노드 i의 앞의 참조 페이즈 정보가 손실된 경우 앞의 WRP의 위치
Figure 112016069541264-pat00017
는 이전 슈퍼프레임에서의 참조 페이즈
Figure 112016069541264-pat00018
와 노드 i의 파이어링 페이즈 시간 슬롯 위치
Figure 112016069541264-pat00019
값으로 아래 수학식 7과 같이 계산된다.
Figure 112016069541264-pat00020
수학식 7에서 계산된 WFP 값을 수학식 (6)의
Figure 112016069541264-pat00021
값에 대입하여 해당 슈퍼프레임에서의 파이어링 페이즈 시간 슬롯을 아래의 수학식 8과 같이 업데이트 한다.
Figure 112016069541264-pat00022
해당 슈퍼프레임 n에서의 참조 페이즈 중 노드 i의 뒤의 참조 페이즈 정보가 손실된 경우 뒤의 WRP의 위치
Figure 112016069541264-pat00023
는 이전 슈퍼프레임에서의 참조 페이즈
Figure 112016069541264-pat00024
와 노드 i의 파이어링 페이즈 시간 슬롯 위치
Figure 112016069541264-pat00025
값으로 아래의 수학식9와 같이 계산된다.
Figure 112016069541264-pat00026
수학식 9에서 계산된 WFP 값을 수학식 (6)의
Figure 112016069541264-pat00027
값에 대입하여 해당 슈퍼프레임에서의 파이어링 페이즈 시간 슬롯을 아래의 수학식 10과 같이 업데이트 한다.
Figure 112016069541264-pat00028
각 노드가 정상적으로 자신의 참조 페이즈 정보를 수신할 경우 수학식 (6)과 같이 다음 슈퍼프레임에서의 파이어링 페이즈 시간 슬롯 정보를 업데이트하고, 링크 에러로 인해 자신의 참조 페이즈 정보를 수신하지 못할 경우 수학식 8, 10과 같이 다음 슈퍼프레임에서의 파이어링 페이즈 시간 슬롯 정보를 업데이트하면 모든 노드가 충돌 없이 데이터 시간 슬롯을 점유할 수 있는 것을 알 수 있다.
이상에서는, 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법에 대하여 자세히 살펴보았다. 한편, 복수의 노드(단말)을 포함하는 무선자원할당 시스템에 대하여 간단히 살펴보면 다음과 같다.
도 13은 본 발명에 따른 복수의 노드(단말)을 포함하는 무선자원할당 시스템의 구성을 도시한다.
도 13에 도시된 바와 같이 상기 무선자원할당 시스템은 제1노드(100) 및 제2노드(200)를 포함한다. 여기서, 상기 제1노드(100) 및 제2노드(200)는 각각 전송 노드 및 수신 노드일 수 있다. 한편, 다른 단계에서는 상기 제1노드(100) 및 제2노드(200)는 각각 수신 노드 및 전송노드가 될 수 있다.
상기 제1노드(100)는 무선 통신부(110) 및 제어부(120)를 포함할 수 있다. 또한, 상기 제2노드(200)도 무선 통신부(210) 및 제어부(220)를 포함한다.
상기 무선 통신부(110)를 통해 이웃 노드의 파이어링 메시지를 수신하고, 상기 제어부(120)는 시간 동기화를 수행한다.
상기 제어부(120)는 상기 수신된 파이어링 메시지에 기반하여 일정 홉(hop) 내의 이웃 노드들이 점유하지 않은 컨트롤 시간 슬롯 중 하나를 선택한다. 또한, 상기 제어부(120)는 상기 수신된 파이어링 메시지에 기반하여 일정 홉 내의 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 중 하나를 선택한다. 또한, 상기 제어부(120)는 상기 파이어링 페이즈 시간 슬롯을 기준으로 앞과 뒤에 있는 제1 및 제2파이어링 페이즈 시간 슬롯인 참조 페이즈, 상기 제1노드(100) 및 상기 제2노드(200)의 파이어링 페이즈에 기반하여 다음 슈퍼프레임의 데이터 시간 슬롯을 점유한다. 이때, 상기 제2노드(200)는 상기 제2파이어링 페이즈 시간 슬롯에 대하여 가장 작은 값을 점유한 노드이다.
상기 제어부(220)는 상기 무선 통신부(210)가 상기 파이어링 메시지를 상기 제1노드(100)로 전송하도록 상기 상기 무선 통신부(210)를 제어한다.
따라서, 본 발명에 따른 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법은 DESYNC 알고리즘의 브로드캐스팅을 이용한 정보 공유를 통하여 시간 동기화와 시간 슬롯 할당을 동시에 수행 가능하다는 장점이 있다.
또한, 본 발명은 분산형 컨트롤 채널 할당 기법을 제안하여 기존 연구의 문제점인 컨트롤 채널에서의 충돌 및 파이어링 메시지와 데이터 메시지의 충돌 문제를 해결할 수 있다는 장점이 있다.
또한, 본 발명은 각 노드가 2홉 이내의 이웃노도들의 firing 정보교환만을 통해 적은 오버헤드로 멀티 홉 DESYNC를 구현할 수 있다는 장점이 있다.
또한, 본 발명은 제안한 알고리즘은 단말의 이동성에 따른 컨트롤 채널 충돌을 문제를 해결하였고, 분산형으로 데이터 채널을 점유하기 때문에 데이터 슬롯을 점유하는데까지 걸리는 시간이 짧은 장점을 갖는다는 장점이 있다.
소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능뿐만 아니라 각각의 구성 요소들은 별도의 소프트웨어 모듈로도 구현될 수 있다. 상기 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다. 적절한 프로그램 언어로 쓰여진 소프트웨어 어플리케이션으로 소프트웨어 코드가 구현될 수 있다. 상기 소프트웨어 코드는 메모리에 저장되고, 제어부(controller) 또는 프로세서(processor)에 의해 실행될 수 있다.
100: 제1노드 200: 제2노드
110, 210: 무선통신부 120, 220: 제어부

Claims (6)

  1. 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법에 있어서, 상기 방법은 제1노드에 의해 수행되며,
    이웃 노드의 파이어링 메시지를 수신하여 시간 동기화를 수행하는 시간 동기화 단계;
    상기 수신된 파이어링 메시지에 기반하여 일정 홉(hop) 내의 이웃 노드들이 점유하지 않은 컨트롤 시간 슬롯 중 하나를 선택하는 컨트롤 시간 슬롯 점유 단계;
    상기 수신된 파이어링 메시지에 기반하여 일정 홉 내의 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 중 하나를 선택하는 파이어링 페이즈 시간 슬롯 점유 단계; 및
    상기 파이어링 페이즈 시간 슬롯을 기준으로 앞과 뒤에 있는 제1 및 제2파이어링 페이즈 시간 슬롯인 참조 페이즈, 상기 제1노드 및 제2노드의 파이어링 페이즈에 기반하여 다음 슈퍼프레임의 데이터 시간 슬롯을 점유하는 데이터 시간 슬롯 점유 단계를 포함하고,
    상기 제2노드는 상기 제2파이어링 페이즈 시간 슬롯에 대하여 가장 작은 값을 점유한 노드이고,
    링크 에러로 인해 참조 페이즈 위치정보가 손실될 경우 상기 제1노드는 이전 슈퍼프레임에서의 앞과 뒤의 참조 페이즈 시간 슬롯 점유 정보 값을 통해 WRP (Worst Reference Phase time-slot) 위치를 계산하여 해당 슈퍼프레임에서의 파이어링 페이즈 시간 슬롯을 업데이트하는, 분산형 무선자원할당 방법.
  2. 제1항에 있어서,
    상기 시간 동기화 단계에서,
    상기 제1노드가 네트워크에 신규 진입한 신규 노드이고 상기 파이어링 메시지를 수신하지 못한 경우, 현재 클럭 정보를 자신의 클럭 정보로 정의하고,
    상기 파이어링 메시지를 수신한 경우, 상기 이웃 노드의 클럭 정보의 평균을 자신의 클럭 정보로 정의하는, 분산형 무선자원할당 방법.
  3. 제1항에 있어서,
    상기 시간 동기화 단계에서,
    상기 제1노드가 기존 노드인 경우, 컨트롤 채널이 끝나는 시점에서 상기 이웃 노드들의 클럭 정보와 자신의 클럭 정보를 평균하여 시간 동기화를 수행하는, 분산형 무선자원할당 방법.
  4. 제1항에 있어서,
    신규 진입 노드의 컨트롤 시간 슬롯 점유에 의한 기존 노드와의 시간 슬롯 충돌 여부를 감지하고, 상기 충돌이 발생하지 않는 경우 상기 컨트롤 시간 슬롯을 점유하는 다음 슈퍼 프레임에서 사용하기 위하여 점유하고,
    상기 충돌이 발생한 경우 상기 다음 슈퍼 프레임에서 상기 충돌이 발생한 시간 슬롯 및 상기 이웃 노드들이 점유한 시간 슬롯을 제외한 시간 슬롯을 컨트롤 시간 슬롯으로 점유하는, 분산형 무선자원할당 방법.
  5. 제1항에 있어서,
    상기 파이어링 페이즈 시간 슬롯 점유 단계에서,
    상기 제1노드가 네트워크에 신규 진입한 신규 노드이고 상기 파이어링 메시지를 수신하지 못한 경우, 전체 데이터 슬롯 중 하나를 파이어링 페이즈 시간 슬롯으로 선택하고,
    상기 파이어링 메시지를 수신한 경우, 2홉 내의 이웃 노드들이 점유하지 않은 파이어링 페이즈 시간 슬롯 중 하나를 선택하는, 분산형 무선자원할당 방법.
  6. 삭제
KR1020160090971A 2016-07-18 2016-07-18 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법 KR101788196B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160090971A KR101788196B1 (ko) 2016-07-18 2016-07-18 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160090971A KR101788196B1 (ko) 2016-07-18 2016-07-18 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법

Publications (1)

Publication Number Publication Date
KR101788196B1 true KR101788196B1 (ko) 2017-10-19

Family

ID=60298336

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160090971A KR101788196B1 (ko) 2016-07-18 2016-07-18 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법

Country Status (1)

Country Link
KR (1) KR101788196B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200093752A (ko) 2019-01-29 2020-08-06 국방과학연구소 노드 시간동기 제어 장치 및 그 방법
KR102294096B1 (ko) 2020-04-10 2021-08-26 국방과학연구소 무선 네트워크의 노드 단말 및 그 클러스터 기반 자원 할당 방법
KR20210126303A (ko) 2020-04-10 2021-10-20 국방과학연구소 무선 네트워크 시스템과 그 노드 단말 및 자원 재할당 방법
KR20210129485A (ko) * 2020-04-20 2021-10-28 충북대학교 산학협력단 무선 애드혹 네트워크에서 이웃 노드의 상태 정보를 이용하여 시간동기화 프로토콜의 이동성 및 보안성을 향상하는 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
김영재 등, ‘생체모방기반 분산형 무선자원할당 기법 연구’, 한국통신학회 2015년도 동계종합학술발표회, p. 443-444. (2015. 1.)*
'무선 애드 혹 네트워크에서 Weighted DESYNC 기반의 계층 간 자원할당 기법', 2016년도 한국통신학회 동계종합학술발표회 논문집

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200093752A (ko) 2019-01-29 2020-08-06 국방과학연구소 노드 시간동기 제어 장치 및 그 방법
KR102294096B1 (ko) 2020-04-10 2021-08-26 국방과학연구소 무선 네트워크의 노드 단말 및 그 클러스터 기반 자원 할당 방법
KR20210126303A (ko) 2020-04-10 2021-10-20 국방과학연구소 무선 네트워크 시스템과 그 노드 단말 및 자원 재할당 방법
KR20210129485A (ko) * 2020-04-20 2021-10-28 충북대학교 산학협력단 무선 애드혹 네트워크에서 이웃 노드의 상태 정보를 이용하여 시간동기화 프로토콜의 이동성 및 보안성을 향상하는 방법
KR102326764B1 (ko) * 2020-04-20 2021-11-15 충북대학교 산학협력단 무선 애드혹 네트워크에서 이웃 노드의 상태 정보를 이용하여 시간동기화 프로토콜의 이동성 및 보안성을 향상하는 방법

Similar Documents

Publication Publication Date Title
Shi et al. Starvation mitigation through multi-channel coordination in CSMA multi-hop wireless networks
KR101788196B1 (ko) 애드 혹 네트워크 환경에 적용가능한 생체모방기반의 분산형 무선자원할당 방법
Huang et al. RC-MAC: A receiver-centric MAC protocol for event-driven wireless sensor networks
KR102658049B1 (ko) 무선 센서 네트워크에서 자원 할당 방법 및 노드 장치
US7046639B2 (en) System and method for ad hoc network access employing the distributed election of a shared transmission schedule
US20190098625A1 (en) Methods and systems for improved communication in multi-hop networks
Borgonovo et al. ADHOC: a new, flexible and reliable MAC architecture for ad-hoc networks
US20180213563A1 (en) Method and device for competing for access
CN108093469B (zh) 基于tdma的无线传输系统的分布式接入方法
US20090040985A1 (en) Method and apparatus for supporting ad-hoc networking over umts protocol
KR101413777B1 (ko) 애드혹 네트워크의 시분할 다중접속 프레임 구조 및 이를 이용한 동적 시간 슬롯 할당 방법
JP2009543478A (ja) アドホックネットワークのための隣接インダイレクト肯定応答アルゴリズム(NbIA)を用いたTDMAチャンネルアクセススケジューリング
KR102034529B1 (ko) 동기 무선 통신 시스템에서의 충돌 회피 방법
KR100729617B1 (ko) 네트워크 시스템에서의 비컨 스케쥴링 방법 및 그 시스템
CN111404629B (zh) 一种tdma无线自组网时钟同步搜索的方法
CN107205262B (zh) 一种基于无线自组织网络的数据传输方法及装置
Liu et al. TAS-MAC: A traffic-adaptive synchronous MAC protocol for wireless sensor networks
US9300595B2 (en) Method for network organization
KR100926896B1 (ko) 네트워크에서의 분배된 콘텍스트 인식 스케줄링된 액세스
KR102387854B1 (ko) 분산 무선 통신 시스템에서 동기화 방법 및 이를 지원하는 단말
EP2282599B1 (en) Method for the access to a shared communication channel for wireless communication networks
KR101820737B1 (ko) 무선 애드 혹 환경에서 개선된 파이어링 메시지를 이용한 자원 할당 방법
KR101346305B1 (ko) 컨텐션 경쟁구간을 이용한 릴레이기능을 가진 티디엠에이 제어방법
CN106851853B (zh) 用于多跳无中心网络的多址接入控制方法及控制装置
Huang et al. TAS-MAC: A traffic-adaptive synchronous MAC protocol for wireless sensor networks

Legal Events

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