KR20200048968A - 무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치 - Google Patents

무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치 Download PDF

Info

Publication number
KR20200048968A
KR20200048968A KR1020180131675A KR20180131675A KR20200048968A KR 20200048968 A KR20200048968 A KR 20200048968A KR 1020180131675 A KR1020180131675 A KR 1020180131675A KR 20180131675 A KR20180131675 A KR 20180131675A KR 20200048968 A KR20200048968 A KR 20200048968A
Authority
KR
South Korea
Prior art keywords
node
nodes
backbone
operation period
transmitting
Prior art date
Application number
KR1020180131675A
Other languages
English (en)
Other versions
KR102120435B1 (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 KR1020180131675A priority Critical patent/KR102120435B1/ko
Publication of KR20200048968A publication Critical patent/KR20200048968A/ko
Application granted granted Critical
Publication of KR102120435B1 publication Critical patent/KR102120435B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/24Connectivity information management, e.g. connectivity discovery or connectivity update
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/12Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality
    • 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
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • H04W72/121Wireless traffic scheduling for groups of terminals or users
    • 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

본 발명의 일 측면에 따른 무선 센서 네트워크에서의 스케줄링 방법은, 싱크 노드를 베이스로 하는 넓이 우선 탐색에 기반하여 BFS 트리를 구성하는 단계; 상기 싱크 노드로부터의 홉 거리에 따라 상기 BFS 트리에 포함된 노드를 복수의 계층으로 구분하는 단계; 상기 싱크 노드를 지배자 노드로서 지배자 집합에 추가시키는 단계; 상기 싱크 노드가 포함된 제 1 계층과 인접하지 않은 제 3 계층의 노드를 후보 지배자 노드로 설정하고, 후보 지배자 노드들 중 상기 싱크 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 상기 지배자 집합에 추가 시키는 단계; 상기 제 1 계층과 제 3 계층을 연결하는 제 2 계층의 노드들 중 상기 싱크 노드와 상기 지배자 노드들을 최단 경로로 연결시키는 연결자 노드로 선정하는 단계; 상기 지배자 집합의 지배자 노드들과 상기 연결자 노드를 포함하는 지배자 연결 트리를 생성하는 단계; 상기 BFS 트리 중 상기 지배자 연결 트리에 포함되지 않은 피지배자 노드들을 송신 노드로 설정하고, 상기 지배자 연결 트리에 포함된 노드들을 백본 노드로 설정하는 단계; 피지배자 스케줄링 알고리즘에 따라, 송신 노드의 동작 기간을 각각 할당하는 단계; 및 백본 스케줄링 알고리즘에 따라, 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당하는 단계를 포함한다.

Description

무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치 {METHOD FOR SCHEDULING OF WIRELESS SENSOR NETWORK AND CONTROLLER OF WIRELESS SENSOR NETWORK}
본 발명은 듀티 사이클 환경에서 동작하는 무선 센서 네트워크(WSN)의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치에 관한 것이다.
무선 통신과 전자공학 분야의 발달에 따라, 크기가 작고 무선 근거리 통신이 가능하며, 저전력, 다기능 및 저가의 무선 센서(wireless sensors) 개발이 가능해졌다. 특히, 최근에는 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 사물 인터넷(Internet of Thing; IoT) 센서가 널리 활용되고 있다.
무선 센서 네트워크(wireless sensor networks; WSNs)는 각종 무선 센서 및 사물 인터넷 센서 등의 노드로 구성될 수 있다. 무선 센서 네트워크는 별도의 유선 네트워크를 구성하지 않아도, 노드를 이용한 온도, 습도, 조도 및 압력 등과 같은 다양한 상태 및 환경 정보를 모니터링하고 감시할 수 있다. 무선 센서 네트워크는 최근 환경상태, 구조물 및 빌딩에 대한 감시와 상하수관 망, 화학 공정 및 에너지 플랜트 이상 모니터링 등에 활용되고있다.
이러한 무선 센서 네트워크에서 노드는 한정된 자원(resource)을 사용한다. 그러므로 노드는 프로세싱(processing), 스토리지(storage) 및 배터리(battery) 등의 자원의 사용에 한계가 있다. 이와 같은, 문제를 해결하기 위하여 듀티 사이클(duty-cycle)을 이용하는 무선 센서 네트워크 기법이 제안되었다. 듀티 사이클 무선 센서 네트워크에서 각 노드는 타임 슬롯에 따라, 주기적으로 활성화 모드 및 비활성화 모드를 전환할 수 있다. 그리고 노드는 활성화 모드에 다른 노드가 전달하는 데이터 패킷을 수신할 수 있다. 이때, 노드는 타임 슬롯과 상관없이 연결된 다른 노드에 데이터 패킷을 브로드캐스트할 수 있다.
한편, 데이터 집계는 모든 센서 노드의 데이터가 싱크 노드에서 수집되는 무선 센서 네트워크 (WSN)에서 가장 필수적인 작업 중 하나이다. 듀티 사이클 기법을 채택한 WSN은 센서 노드의 주기적인 휴면주기 때문에 최소 지연 데이터 집계 문제는 더욱 복잡해진다.
본 발명은 듀티 사이클링된 WSN에서의 데이터 집합 지연을 최소화하는 새로운 데이터 집합 방식을 제안한다.
WSN의 실시간 능력을 구현하는데 필수적인 최소 시간 집합 스케줄링 문제는 광범위하게 연구되어왔다. 듀티 사이클링된 WSN에서 데이터 집계의 대기 시간을 줄이기 위해 몇 가지 접근법이 제안되었다.
스케줄링 알고리즘(SA)은 가장 초기의 접근법 중 하나로, 두 단계로 구성된다. 첫 번째 단계에서 LSC(Layered Structure Construction) 알고리즘은 최대 독립 집합(Maximal Independent Set, MIS)에 기반한 듀티 사이클링된 WSN의 지배자 연결 집합(Connected Dominating Set, CDS)를 구성한다. CDS에 포함되지 않은 노드는 네트워크의 지배자가 된다. 그런 다음 알고리즘은 CDS를 기반으로 데이터 집계를 위한 계층화된 가상 백본을 구축한다. 그러나 LSC 알고리즘은 네트워크의 주기적 절전 모드로 인한 지연을 고려하지 않는다. 따라서 최악의 경우에 가장 긴 경로 지연을 갖는 백본이 된다. 두 번째 단계에서 WPS(Working Period Scheduling) 알고리즘은 먼저 모든 지배자의 데이터를 CDS의 지배자에게 수집한다. 그 다음에 데이터는 지배자에서 백본을 통해 레이어별로 전송된다. 충돌을 피하기 위해 알고리즘은 더 낮은 계층의 모든 노드가 전송을 마칠 때까지 계층의 모든 노드 전송을 지연시킨다. 이는 모든 전송에 대해 추가 지연을 초래하고 SA 방식의 전체 집계 지연을 높게 만든다.
듀티 사이클링된 WSN의 모든 노드에서 싱크 노드로 데이터를 수집하는 집계 프로세스를 고려한다. 네트워크의 각 센서 노드는 멀티 홉 경로를 통해 이웃 노드로부터 수신한 자체 데이터와 데이터를 포함하는 단일 패킷을 싱크 노드로 보낸다. COUNT, MIN, MAX, SUM 및 AVERAGE와 같은 완전한 데이터 집계 기능이 배치되어 모든 패킷이 동일한 크기를 갖도록 한다. 집합 스케줄은 데이터 패킷을 전송하기 위해 싱크를 제외한 모든 노드에 동작 기간과 수신 노드를 할당한다. 할당된 최대 동작 기간이 최소화되는 동안 예정된 전송은 충돌이 없어야한다.
도 1은 데이터 집계 과정에서 발생하는 충돌과정을 설명하기 위한 도면이다.
각 노드에 표시된 문자와 숫자는 각 노드의 식별자 및 활성 슬롯을 나타낸다. 각 동작 기간은 4개의 시간 슬롯(즉, 듀티 사이클이 25%임)으로 구성된다. 도면에서 검정색으로 도시된 슬롯은 활성 슬롯을 나타내고, 백색으로 도시된 슬롯은 휴지 상태를 나타낸다. 각 노드에서 수집된 데이터는 싱크 노드(a)로 집계된다. 그런데, 도면에서와 같이 노드(d)와 노드(e)는 노드(b)의 활성 슬롯에 맞춰 데이터를 전송하게 되는데, 이때 그 동작 기간이 일치하게 되면 데이터 충돌이 발생한다. 마찬가지로, 노드(e)와 노드(f)는 노드(c)의 활성 슬롯에 맞춰 데이터를 전송하게 되는데, 이때 그 동작 기간이 일치하게 되면 데이터 충돌이 발생한다.
대한민국 공개특허 제 10-2005-0010354호(발명의 명칭: 무선 센서 네트워크에서 최소 전력으로 데이터를 전송하기위한 방법)
본 발명의 일 실시예는 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 듀티 사이클링된 WSN에서의 데이터 집합 지연을 최소화할 수 있는 무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 제어 장치를 제공하고자 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 무선 센서 네트워크에서의 스케줄링 방법은 상기 무선 센서 네트워크에 대해 싱크 노드를 베이스로 하는 넓이 우선 탐색에 기반하여 BFS 트리를 구성하는 단계; 상기 싱크 노드로부터의 홉 거리에 따라 상기 BFS 트리에 포함된 노드를 복수의 계층으로 구분하는 단계; 상기 싱크 노드를 지배자 노드로서 지배자 집합에 추가시키는 단계; 상기 싱크 노드가 포함된 제 1 계층과 인접하지 않은 제 3 계층의 노드를 후보 지배자 노드로 설정하고, 후보 지배자 노드들 중 상기 싱크 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 상기 지배자 집합에 추가 시키는 단계; 상기 제 1 계층과 제 3 계층을 연결하는 제 2 계층의 노드들 중 상기 싱크 노드와 상기 지배자 노드들을 최단 경로로 연결시키는 노드를 연결자 노드로 선정하는 단계; 상기 지배자 집합의 지배자 노드들과 상기 연결자 노드를 포함하는 지배자 연결 트리를 생성하는 단계; 상기 BFS 트리 중 상기 지배자 연결 트리에 포함되지 않은 피지배자 노드들을 송신 노드로 설정하고, 상기 지배자 연결 트리에 포함된 노드들을 백본 노드로 설정하는 단계; 피지배자 스케줄링 알고리즘에 따라, 각 활성 슬롯에 대한 정보에 기초하여 상기 송신 노드와 상기 백본 노드들간의 데이터 전송을 스케줄링하여, 상기 송신 노드의 동작 기간을 각각 할당하는 단계; 및 백본 스케줄링 알고리즘에 따라, 상기 동작 기간이 할당된 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보에 기초하여, 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당하는 단계를 포함한다.
또한, 본 발명의 다른 일 실시예에 따른 무선 센서 네트워크의 제어 장치는, 상기 무선 센서 네트워크의 스케줄링 프로그램이 저장된 메모리, 상기 무선 센서 네트워크와 접속된 통신 모듈, 및상기 메모리에 저장된 프로그램을 실행하기 위한 프로세서를 포함한다. 이때, 프로세서는 상기 프로그램의 실행에 의해, 상기 무선 센서 네트워크에 대해 싱크 노드를 베이스로 하는 넓이 우선 탐색에 기반하여 BFS 트리를 구성하고, 상기 싱크 노드로부터의 홉 거리에 따라 상기 BFS 트리에 포함된 노드를 복수의 계층으로 구분하고, 상기 싱크 노드를 지배자 노드로서 지배자 집합에 추가시키고, 상기 싱크 노드가 포함된 제 1 계층과 인접하지 않은 제 3 계층의 노드를 후보 지배자 노드로 설정하고, 후보 지배자 노드들 중 상기 싱크 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 상기 지배자 집합에 추가 시키고, 상기 제 1 계층과 제 3 계층을 연결하는 제 2 계층의 노드들 중 상기 싱크 노드와 상기 지배자 노드들을 최단 경로로 연결시키는 노드를 연결자 노드로 선정하고, 상기 지배자 집합의 지배자 노드들과 상기 연결자 노드를 포함하는 지배자 연결 트리를 생성하고, 상기 BFS 트리 중 상기 지배자 연결 트리에 포함되지 않은 피지배자 노드들을 송신 노드로 설정하고, 상기 지배자 연결 트리에 포함된 노드들을 백본 노드로 설정하고, 피지배자 스케줄링 알고리즘에 따라, 각 활성 슬롯에 대한 정보에 기초하여 상기 송신 노드와 상기 백본 노드들간의 데이터 전송을 스케줄링하여, 상기 송신 노드의 동작 기간을 각각 할당하고, 백본 스케줄링 알고리즘에 따라, 상기 동작 기간이 할당된 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보에 기초하여, 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 지연 인식 트리 구축(DTC) 알고리즘을 통해 듀티 사이클링된 WSN의 노드 간에 지연을 고려한 지배자 연결 트리(CDS 트리)를 작성하고 네트워크에서 효율적인 데이터 집계를 위한 가상 백본을 제공할 수 있다. 또한, 최초 적합 집계 스케줄링(FAS)에 따라 구성된 백본을 기반으로 빠른 충돌 없는 데이터 수집 일정을 수행할 수 있다.
도 1은 데이터 집계 과정에서 발생하는 충돌과정을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 무선 센서 네트워크의 제어 장치의 구성을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 무선 센서 네트워크의 스케줄링 방법을 도시한 순서도이다.
도 4는 본 발명의 일 실시예에 따른 지연 인식 트리 구축 알고리즘의 의사 코드를 도시한 것이다.
도 5는 본 발명의 일 실시예에 따른 지연 인식 트리 구축 알고리즘이 적용되는 예시를 도시한 것이다.
도 6은 본 발명의 일 실시예에 따른 피지배자 스케줄링 알고리즘의 의사 코드를 도시한 것이다.
도 7은 본 발명의 일 실시예에 따른 피지배자 스케줄링 알고리즘의 예시를 도시한 것이다.
도 8은 본 발명의 일 실시예에 따른 백본 스케줄링 알고리즘의 의사 코드를 도시한 것이다.
도 9는 본 발명의 일 실시예에 따른 백본 스케줄링 알고리즘의 예시를 도시한 것이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 본 발명을 명확하게 설명하기 위해 도면에서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한, 도면을 참고하여 설명하면서, 같은 명칭으로 나타낸 구성일지라도 도면에 따라 도면 번호가 달라질 수 있고, 도면 번호는 설명의 편의를 위해 기재된 것에 불과하고 해당 도면 번호에 의해 각 구성의 개념, 특징, 기능 또는 효과가 제한 해석되는 것은 아니다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서에 있어서 '부(部)' 또는 '모듈'이란, 하드웨어 또는 소프트웨어에 의해 실현되는 유닛(unit), 양방을 이용하여 실현되는 유닛을 포함하며, 하나의 유닛이 둘 이상의 하드웨어를 이용하여 실현되어도 되고, 둘 이상의 유닛이 하나의 하드웨어에 의해 실현되어도 된다.
이 기법은 계층화된 네트워크 구조 구축 단계와 충돌 없는 스케줄링 단계의 두 단계로 구성된다. 첫 번째 단계인 지연 인식 트리 구축(Delay-aware tree construction, DTC)단계에서는 듀티 사이클링된 WSN의 노드 간에 지연을 고려한 CDS 트리를 작성하고 네트워크에서 효율적인 데이터 집계를 위한 가상 백본을 준비한다. 두 번째 단계인 최초 적합 집계 스케줄링(First-fit Aggregation Scheduling, FAS)은 구성된 백본을 기반으로 빠른 충돌 없는 데이터 수집 일정을 수행한다.
도 2는 본 발명의 일 실시예에 따른 무선 센서 네트워크의 제어 장치의 구성을 나타낸 도면이다.
무선 센서 네트워크의 제어 장치(100)는 통신 모듈(110), 메모리(120), 프로세서(130) 및 데이터베이스(140)를 포함한다.
통신 모듈(110)은 복수의 무선 센서 노드들이 서로 접속되어 네트워크를 이루는 무선 센서 네트워크와 접속상태를 유지하고, 데이터 통신을 수행한다. 통신 모듈(110)은 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.
메모리(120)는 무선 센서 네트워크의 스케줄링 프로그램이 기록된다. 또한, 프로세서(130)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 여기서, 메모리(120)는 휘발성 저장 매체(volatile storage media) 또는 비휘발성 저장 매체(non-volatile storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
프로세서(130)는 무선센서 네트워크의 제어장치가 무선 센서 네트워크의 스케줄링 프로그램을 수행하는 전체 과정을 제어한다. 여기서, 프로세서(130)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
프로세서(130)는 무선 센서 네트워크의 스케줄링 프로그램의 실행에 의해, 상기 무선 센서 네트워크에 대해 싱크 노드를 베이스로 하는 넓이 우선 탐색에 기반하여 BFS 트리를 구성하고, 상기 싱크 노드로부터의 홉 거리에 따라 상기 BFS 트리에 포함된 노드를 복수의 계층으로 구분하고, 상기 싱크 노드를 지배자 노드로서 지배자 집합에 추가시키고, 상기 싱크 노드가 포함된 제 1 계층과 인접하지 않은 제 3 계층의 노드를 후보 지배자 노드로 설정하고, 후보 지배자 노드들 중 상기 싱크 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 상기 지배자 집합에 추가 시키고, 상기 제 1 계층과 제 3 계층을 연결하는 제 2 계층의 노드들 중 상기 싱크 노드와 상기 지배자 노드들을 최단 경로로 연결시키는 노드를 연결자 노드로 선정하고, 상기 지배자 집합의 지배자 노드들과 상기 연결자 노드를 포함하는 지배자 연결 트리를 생성하고, 상기 BFS 트리 중 상기 지배자 연결 트리에 포함되지 않은 피지배자 노드들을 송신 노드로 설정하고, 상기 지배자 연결 트리에 포함된 노드들을 백본 노드로 설정하고, 피지배자 스케줄링 알고리즘에 따라, 각 활성 슬롯에 대한 정보에 기초하여 상기 송신 노드와 상기 백본 노드들간의 데이터 전송을 스케줄링하여, 상기 송신 노드의 동작 기간을 각각 할당하고, 백본 스케줄링 알고리즘에 따라, 상기 동작 기간이 할당된 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보에 기초하여, 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당하는 동작을 각각 수행한다.
데이터베이스(140)는 무선 센서 네트워크를 구성하는 개별 노드에 대한 정보가 저장된다. 또한, 무선 센서 네트워크의 스케줄링 프로그램을 수행하면서 누적되는 데이터가 저장된다.
도 3은 본 발명의 일 실시예에 따른 무선 센서 네트워크의 스케줄링 방법을 도시한 순서도이다.
먼저, 지연 인식 트리 구축 알고리즘에 따라 지배자 연결 트리를 생성한다(S310).
이를 위해, 아래의 도 4와 도 5에서 설명하는 바와 같이, 무선 센서 네트워크에 대해 싱크 노드를 베이스로 하는 넓이 우선 탐색에 기반하여 BFS 트리를 구성한다. 그리고, 싱크 노드로부터의 홉 거리에 따라 BFS 트리에 포함된 노드를 복수의 계층으로 구분한다. 기본적으로 싱크 노드는 지배자 노드로서 설정되고, 이를 지배자 집합에 추가시킨다. 싱크 노드가 포함된 계층은 제 1 계층으로 설정되고, 그 아래의 계층은 각각 제 2 계층, 제 3 계층 등으로 구분된다.
제 1 계층과 인접한 제 2 계층은 지배자 후보에서 제외되고, 제 1 계층과 인접하지 않은 제 3 계층의 노드를 후보 지배자 노드로 설정한다. 그리고, 후보 지배자 노드들 중 싱크 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 지배자 집합에 추가 시킨다.
그리고, 제 1 계층과 제 3 계층을 연결하는 제 2 계층의 노드들 중 싱크 노드와 지배자 노드들을 최단 경로로 연결시키는 노드를 연결자 노드로 선정한다. 이와 같은, 지배자 집합의 지배자 노드들과 연결자 노드를 포함하는 지배자 연결 트리를 생성한다.
아래 도 4와 도 5를 통해 지배자 연결 트리 생성과정을 더욱 상세히 살펴보기로 한다.
도 4은 본 발명의 일 실시예에 따른 지연 인식 트리 구축 알고리즘의 의사 코드를 도시한 것이다.
도 4에서 볼 수 있듯이 DTC 알고리즘은 세 단계로 구성된다.
첫번째 단계에서 네트워크 (
Figure pat00001
)의 싱크 노드 (
Figure pat00002
)를 베이스로 하는 넓이 우선 탐색(breadth first search, BFS)에 기반한 BFS 트리를 구성한다. 네트워크의 모든 노드는 싱크노드(s)와의 홉 거리에 따라 계층 (
Figure pat00003
Figure pat00004
)이 구분되는데,
Figure pat00005
는 BFS 트리에서 가장 큰 계층을 나타낸다.
Figure pat00006
에는 싱크 노드만 포함된다. 싱크는 처음에 지배자로 선택되어 지배자 집합(Dominating Set, DS)에 추가된다.
알고리즘은 계층 1에서 계층
Figure pat00007
까지 두번째 단계와 세번째 단계의 여러 반복을 실행하여 싱크노드(s)를 바탕으로 하는 CDS 트리를 구성한다. 지연 인식 트리 구조를 용이하게 만들기 위해 DTC 알고리즘은 다음 수학식 1과 같이 노드 쌍
Figure pat00008
사이의 휴지 지연(sleep delay)을 결정한다.
[수학식 1]
Figure pat00009
Figure pat00010
는 노드 u가 노드 v의 활성 시간 슬롯에서 데이터를 노드 v로 전송하기 위해 대기해야하는 지연을 나타낸다. 경로의 휴지 지연은 경로의 모든 에지의 누적 지연 시간이다.
Figure pat00011
를 계층(i)의 노드들의 집합이라고 한다. 두번째 단계에서 어떠한 지배자와도 인접하지 않은
Figure pat00012
의 노드는 후보 지배자가 되고 연결 지배자(CD)를 설정하기 위해 추가된다(5번 라인). 후보 지배자로부터 가장 가까운 지배자를 식별하기 위해, 후보 지배자로부터 2홉 거리 내의 모든 지배자까지의 지연 측면으로 최단 경로가 확립된다(7번 라인). 이러한 지배자는 항상 네트워크 연결성 때문에 상위 계층 j(
Figure pat00013
)에 존재한다. 후보 지배자에서 가장 가까운 지배자까지의 최단 경로와 경로의 휴지 지연은 추후 사용을 위해 기록된다 (8-9번 라인).
Figure pat00014
는 후보 지배자 u와 가장 가까운 지배자 v사이의 지연에 대한 최단 경로를 나타낸다.
Figure pat00015
의 휴지 지연은 수학식 2와 같다.
[수학식 2]
Figure pat00016
여기서
Figure pat00017
는 경로의 중간 노드이다.
DTC 알고리즘은 후보 중에서 지배자를 선택하고, 세번째 단계에서 모든 지배자를 연결하는 CDS 트리(
Figure pat00018
) 를 생성한다. 처음에는 트리에 싱크 노드 s 만 포함된다. 각 계층에서 연결 지배자(CD)에 속한 노드(u)는 후보 지배자 집합의 모든 노드 중에서
Figure pat00019
의 값이 가장 작은 경우 지배자로 선택된다. 선택된 지배자와 모든 이웃은 집합에서 제거된다 (11-12번 라인). 노드(u)와 경로
Figure pat00020
의 중간 노드 (
Figure pat00021
)는 CDS 트리(
Figure pat00022
)에 추가된다 (13-14번 라인). 노드(
Figure pat00023
)는 연결자로 불리며 트리에서 노드(u)의 부모 노드(
Figure pat00024
)가 된다. 노드(u)의 가장 가까운 지배자(v)가 이미 CDS 트리(
Figure pat00025
)에 있고
Figure pat00026
가 된다는 것은 주목할 가치가 있다.
DTC 알고리즘은 두번째 단계와 세번째 단계를 계층별로 최종 계층(
Figure pat00027
)까지 반복한다. 그런 다음 계층 집합과 최종 계층을 업데이터하여 업데이트하여 모든 노드가 CDS 트리(
Figure pat00028
)에서 상위 노드의 인접한 하위 레이어에 있도록 한다 (15번 라인). 본 발명은 CDS 트리에 없는 노드를 지배자로 지정한다.
도 5 본 발명의 일 실시예에 따른 지연 인식 트리 구축 알고리즘이 적용되는 예시를 도시한 것이다.
도시된 WSN 네트워크는 총 13개의 노드를 포함하고, 듀티 사이클은 25%(τ=4)로 설정된다. (a)에 도시된 바와 같이, 초기에는 4개의 계층(제 1계층~제 4 계층)으로 분할된다. 싱크 노드(a)는 지배자로 선택되고, CDS트리에 포함된다. 제 2 계층의 노드들은 싱크노드에 인접하기 때문에 피지배자가 된다. 제 3 계층의 노드들은 후보 지배자가 된다. 후보 지배자로부터 2홉 상위 지배자인 싱크 노드(a)로의 모든 경로들의 지연은 (b)에 도시된다. 각각의 지연은 각 노드의 활성 슬롯에 기초하여 결정된다. 예를 들어, 노드(a)의 활성 슬롯은 3이고, 노드 (b)의 활성 슬롯은 2 이므로, 노드(b)가 활성화된 상태에서 전송된 데이터는 1만큼의 지연 이후 노드(a)로 전송된다. 마찬가지로, 노드(a)의 활성 슬롯은 3이고, 노드 (d)의 활성 슬롯은 0 이므로, 노드(d)가 활성화된 상태에서 전송된 데이터는 4만큼의 지연 이후 노드(a)로 전송된다. 이와 같이, 각 노드의 활성 슬롯에 기초하여 각 노드 간의 경로에 지연을 확인할 수 있다.
(c)에 도시된 바와 같이, DTC 알고리즘은 지연 측면에서 최소 경로를 결정하고, 제 3 계층의 각 노드에서 가장 가까운 상위 지배자에 대한 지연을 산출한다. 노드(f)는 상위 지배자에 대한 가장 작은 지연을 가지므로(
Figure pat00029
), 최초로 지배자로 선택된다. 제 3 계층의 노드(e, g)는 지배자(f)와 인접하고 있으므로 피지배자가 된다. 마찬가지 방법으로, 노드(h)도 지배자로 선택된다.
마찬가지로, (d)에 도시된 바와 같이 노드(f)와 노드(h)는 2개의 연결 노드(b, d)를 통해 각각 CDS 트리에 연결된다.
(e)에 도시된 바와 같이, 제 4 계층에 포함된 노드에 대해서도 DTC 알고리즘이 수행된다. 즉, 제 3 계층의 하위 계층으로서 제 4 계층을 더 포함하는 경우, 제 4 계층의 노드를 후보 지배자 노드로 설정하고, 후보 지배자 노드들 중 제 3 계층의 지배자 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 지배자 집합에 추가 시킨다. 이와 같은 과정을 반복하여, 최종적으로, (f) 도시된 바와 같이, 계층 집합들은 CDS 트리에 기초하여 갱신된다. 노드(g, i, l)의 계층들은 그 부모 노드들의 계층보다 더 크게 증가하게 된다.
다시 도 3을 참조하면, 피지배자 스케줄링 알고리즘에 따라 송신노드의 동작 기간을 할당한다(S320).
먼저, 앞서 구성한 BFS 트리 중 지배자 연결 트리에 포함되지 않은 피지배자 노드들을 송신 노드로 설정하고, 상기 지배자 연결 트리에 포함된 노드들을 백본 노드로 설정한다. 그리고, 피지배자 스케줄링 알고리즘에 따라, 각 활성 슬롯에 대한 정보에 기초하여 송신 노드와 상기 백본 노드들간의 데이터 전송을 스케줄링하여, 송신 노드의 동작 기간을 각각 할당한다.
특히, 송신 노드의 동작 기간을 각각 할당할때에는 매 활성 슬롯의 순서에 따라 백본 노드를 구분하여 복수의 백본 노드 집합을 생성하고(도 7의 b), 매 활성 슬롯 별로 백본 노드 집합에 데이터를 전송하는 송신 노드들과 모두 연결된 최소 커버 집합을 백본 노드 집합에서 특정한다(도 7의 c, d, e). 그리고, 매 활성 슬롯 별로 최소 커버 집합에 포함된 백본 노드에 대하여 송신 노드가 데이터를 전송하는 작업에 제 1 동작 기간을 할당한다(도 7의 c, d, e).
이때, 백본 노드에 복수의 송신 노드들이 독점적인 이웃 관계에 있는 경우 해당 송신 노드들 중 하나의 송신 노드를 무작위로 선택하고, 선택된 송신 노드가 백본 노드에 데이터를 전송하는 작업에 제 1 동작 기간을 할당할 수 있다.
아래 도 6과 도 7을 통해 피지배자 스케줄링 알고리즘을 더욱 상세히 살펴보기로 한다.
도 6은 본 발명의 일 실시예에 따른 피지배자 스케줄링 알고리즘의 의사 코드를 도시한 것이다.
집계 백본으로서의 WSN의 CDS 트리(
Figure pat00030
)를 참조하면, FAS 방식은 네트워크 내의 모든 노드들로부터 싱크 노드까지 데이터를 수집하는 효율적인 스케줄을 구성할 수 있다. 최초 적합 집계 스케줄링 방법은 두 단계로 구성된다.
먼저 모든 피지배자의 데이터를 백본의 노드로 수집하고, 다음으로 상향식 방식으로 백본 노드의 데이터를 충돌 없이 싱크노드로 집계한다. 백본 노드에는 DTC 알고리즘에서 선택된 모든 지배자 및 연결자가 포함된다.
CDS 트리(
Figure pat00031
)에 따르면 네트워크의 모든 노드들은 두 개의 분리된 집합으로 구분되는데, 백본의 노드 집합(R)과 피지배자 집합(S)으로 구분된다 (1번 라인). 피지배자 집합(S)내의 각각의 피지배자는 백본 노드 집합(R)내의 적어도 하나의 백본 노드, 즉 그 지배자에 인접해있다. 동작 기간 1부터 시작하여 알고리즘은 피지배자 집합(S) 내의 각 송신 노드에 대해 동작 기간을 할당하여 데이터 패킷이 백본 노드 집합(R)의 수신 노드로 충돌 없이 전송될 수 있도록 한다. 할당된 동작 기간은 최소 지연 집합을 가능하게 하기 위해 가능한 작아야 한다.
충돌 없는 데이터 수집을 보장하기 위해 피지배자 스케줄링은 수신 노드를 활성 슬롯에 따라 서로 다른 하위 집합
Figure pat00032
(
Figure pat00033
)으로 그룹화 한다(3-4번 라인).
Figure pat00034
Figure pat00035
에 있는 노드들에 인접한 송신 노드들의 서브 세트를 표시한다고 하자 (7번 라인). 피지배자 스케줄링 알고리즘은
Figure pat00036
의 모든 노드를 커버할 수 있는 최소 커버 집합
Figure pat00037
(
Figure pat00038
)을 찾는다 (8번 라인). 최소 커버 집합의 특성에 따르면, 최소 커버 집합의 각 노드(
Figure pat00039
)는 해당 노드(u)에만 인접한 적어도 하나의 독점적인 이웃 노드(v,
Figure pat00040
)를 가져야한다(10번 라인). 만약, 수신 노드에 둘 이상의 독점적인 이웃이 있는 경우 알고리즘은 이웃 노드 중 하나를 송신 노드로 무작위로 선택한다. 이웃 노드(v,
Figure pat00041
)의 송신 스케줄을
Figure pat00042
로 나타내면(11번 라인), 노드 (v)가 제 m 동작 기간의 시간 슬롯(
Figure pat00043
) 에서 노드(u) 로 데이터 패킷을 보내도록 스케줄링됨을 의미한다. 각 활성 슬롯(i)의 이웃 노드들의 쌍(
Figure pat00044
)들이 존재한다. 노드들의 쌍들 사이의 전송은 충돌 없이 동일한 동작 기간 m에서 동시에 스케줄링 될 수 있다.
피지배자(v)가 자신의 데이터 패킷을 전송하도록 스케줄되면, 그것은 전송 노드 집합(s)에서 제거된다 (11-12번 라인). 대응하는 수신 노드(
Figure pat00045
)만이 동작 기간 m 에서 패킷을 수신하도록 보장되지만(13번 라인), 이웃 노드(
Figure pat00046
)들은 동일한 시간 슬롯에서 활성 상태이기 때문에 송신을 엿들을 수 있다. 피지배자 스케줄링 알고리즘은 이와 같은 엿듣게 되는 동작 기간을 기록하여, 인접 노드가 나중에 데이터 전송시에 간섭하지 못하도록 한다 (14-15번 라인). 남아있는 피지배자는 모든 피지배자가 스케줄링 될 때까지, 다음 활성 슬롯에서 동작 기간에 반복적으로 스케줄링 된다 (16번 라인). 상이한 활성 슬롯들에서의 전송들이 서로 간섭하지 않을 것이라는 점은 주목할 가치가 있다.
도 7은 본 발명의 일 실시예에 따른 피지배자 스케줄링 알고리즘의 예시를 도시한 것이다.
(a)에 도시된 CDS 트리(
Figure pat00047
)에 따르면, 모든 노드들은 (b)에 도시된 바와 같이 송신 집합(S = {c, e, k,m})과 수신 집합(R ={a, b, d, f , h, j, g, i, l})으로 구분된다. 피지배자 스케줄링 알고리즘은 각 활성 슬롯마다 송신 집합(S)의 노드로부터 수신 집합(R)의 노드로 송신(transmission)을 스케줄링한다.
(c)에 도시된 바와 같이, 0번 활성 슬롯에서는 수신 집합의 노드들(
Figure pat00048
)만 송신 노드(
Figure pat00049
)로부터 데이터 패킷을 수신할 수 있다. 최소 커버 집합(
Figure pat00050
)이 송신 집합(
Figure pat00051
)의 모든 노드를 커버하도록 구성된다. 동일한 동작 기간에 스케줄링된 노드(c, m)로부터 데이터를 수신하는 노드(f, m)이 최소 커버 집합(
Figure pat00052
)에 포함된다.
마찬가지로, (d)와 (e)에 도시된 바와 같이, 피지배자 스케줄링 알고리즘은 1번 활성 슬롯과 2번 활성 슬롯에서, 남은 송신 노드(e, k)로부터 수신 노드(i, g)로 각각 데이터를 전송하는 것을 스케줄링 할 수 있다.
(f)에 도시된 바와 같이, 피지배자 데이터를 수집하는 프로세스는 CDS 트리(
Figure pat00053
)에 포함된 모든 피지배자가 데이터를 모두 전송하면 종료된다.
다시 도 3을 참조하면, 백본 스케줄링 알고리즘에 따라 백본노드의 동작 기간을 할당한다(S330).
백본 스케줄링 알고리즘에 따라, 동작 기간이 할당된 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보에 기초하여, 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당한다.
특히, 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보를 수집하고, 데이터를 엿듣게 되는 백본 노드들의 동작 기간 정보에 기초하여 최하위 계층의 백본 노드들 부터 동작 기간을 할당한다. 이때, 동작 기간의 할당시에는 해당 백본 노드와 인접한 이웃 노드들이 엿듣는 동작 기간을 참고하여 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당하도록 한다(도 9).
특히, 동작 기간의 할당시에는 제 1 동작 기간이 할당된 송신 노드로부터 데이터 전송을 받는 백본 노드가 그 부모 노드로 데이터를 전송하는 동작 기간을 할당할 때, 부모 노드가 제 1 동작 기간이 할당된 하나 이상의 송신 노드를 엿듣지 않는 활성 슬롯에 동작하는 경우에는 상기 백본 노드가 상기 부모 노드로 데이터를 전송하는 작업에 제 1 동작 기간을 할당하고, 부모 노드가 제 1 동작 기간이 할당된 하나 이상의 송신 노드를 엿듣는 활성 슬롯에 동작하는 경우에는 상기 백본 노드가 상기 부모 노드로 데이터를 전송하는 작업에 제 2 동작 기간을 할당하도록 한다(도 9 e).
아래 도 8과 도 9를 통해 백본 스케줄링 알고리즘을 더욱 상세히 살펴보기로 한다.
도 8은 본 발명의 일 실시예에 따른 백본 스케줄링 알고리즘의 의사 코드를 도시한 것이다.
FAS 체계의 두 번째 단계는 피지배자로부터 모든 데이터를 수집한 후 시작한다. 도 8은 지배자와 연결자의 데이터를 집계하기 위한 백본 스케줄링 알고리즘의 의사 코드를 도시한다. 이 알고리즘은 모든 노드가 구성된 CDS 트리(
Figure pat00054
)계층에서 부모 노드로 데이터 패킷을 전송하는 첫 번째로 가용한 동작 기간을 결정한다. 노드는 활성 상태에서만 데이터를 수신할 수 있기 때문에 노드(u)가 동작 기간에 있는 노드(p(u))이전에 활성화되어 있으면 마지막 수신 노드(rx(u))와 동일한 동작 기간에 있는 노드(p(u))로 패킷을 전송할 수 있다. 그렇지 않으면 노드(p(u))가 다음 동작 기간에서 활성화될 때까지 기다려야한다 (3-4번 라인). 노드가 두 번째 단계에서 자식 노드 뿐만 아니라 첫 번째 단계에서 피지배자로부터 모든 데이터를 받은 후에 데이터를 전송할 준비가 되었음을 주목할 필요가 있다. 피지배자로부터 어떠한 데이터도 받지 못한 잎(leaf) 노드는 동작 기간 1에 준비되어 있다.
노드(p(u))와 동일한 시간 슬롯에서 활성화되는 노드(u)의 모든 이웃 노드들은 노드(u)로부터 부모 노드로의 데이터 전송을 엿들 수 있음에 유의한다. 노드(u)의 데이터 전송은 다른 스케줄 된 전송을 방해함으로써 이웃 노드에서 충돌을 야기 할 수 있다. 충돌 없는 데이터 집합을 보장하기 위해, 백본 스케줄링 알고리즘은 노드(u)의 CDS 트리(
Figure pat00055
)에 있는 이웃들이 다른 스케줄링 된 전송을 엿듣는 모든 동작 기간을 수집한다. 그것은 노드(u)의 금지된 동작 기간과 같은 동작 기간을 말하며
Figure pat00056
에 저장한다 (5-6번 라인). 이 알고리즘은 노드(u)가 동작 기간 동안 패킷을 전송하는 것을 방지하고 노드(u)에 대한 최소 전송 동작 기간을 검색한다 (7-8 번 라인). 마지막 수신 동작 기간(p(u))과 노드(u)의 CDS 트리(
Figure pat00057
)에서 활동 중인 모든 이웃 노드의 엿듣는 동작 기간(a(p((u)))은 충돌을 회피하기 위해 업데이트 된다. 백본 스케줄링 알고리즘은 모든 노드의 데이터가 싱크 노드에서 집계되도록 트리에서 각 노드에 대해 최초 적합 동작 기간을 상향식 방식으로 할당한다.
도 9는 본 발명의 일 실시예에 따른 백본 스케줄링 알고리즘의 예시를 도시한 것이다.
도 7의 (f)에 도시된 피지배자들의 데이터 전송 과정은 도 9의 (a)에 재도시되었다. (b)에 도시된 바와 같이, 데이터 전송 과정에서 엿듣는 동작 기간은 백본 노드를 위해 갱신된다. 예를 들어, 노드(e)가 데이터를 전송할 때, 노드(i)가 다음 동작 기간의 활성 슬롯(1)에서 데이터를 수신할 수 있고, 노드(e)의 이웃 노드들 중 노드(b, j)는 활성 슬롯(2)에서 활성화되므로, 데이터를 엿들을 수 없으나, 노드(f)는 활성 슬롯(0)에서 활성화되므로 다음 동작 기간에 엿들을 수 있는 상태가 된다. 이와 같이, 각 피지배자 노드의 이웃 노드들에 대하여, 피지배자 노드가 데이터를 전송할 때 데이터를 엿듣게 되는 동작 기간에 대한 정보를 수집한다.
(c)에 도시된 바와 같이, 백본 스케줄링 알고리즘은 제 5 계층의 노드(
Figure pat00058
)들로부터 시작된다. 엿듣는 동작 기간은 노드(i)의 모든 이웃 노드들은 공백상태이므로, 금지된 집합은
Figure pat00059
이 된다. 노드(i)는 그 부모 노드(j)에 앞서 동작 기간에 활성화되므로, 노드(i)는 피지배자 노드(e)로부터 패킷을 수신할 때, 동일한 동작 기간(1)에 패킷을 노드(j)로 전송할 수 있다. 반면에, 노드(l)는 그 부모 노드(g)가 동작 기간(1)에 피지배자 노드(k)로부터 스케줄된 데이터 전송을 받는 동작 상태이므로, 동작 기간(2)로 데이터 전송을 지연시킨다. 제 4 계층 내지 제 1계층의 노드의 데이터 전송 스케줄은 (d) 내지 (f)에 각각 도시된다. 본 예시에서는 데이터 집계 스케줄이 동작 기간(3)에서 종료된다.
이상에서 설명한 본 발명의 실시예에 따른 무선 센서 네트워크의 스케줄링 방법은, 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 이러한 기록 매체는 컴퓨터 판독 가능 매체를 포함하며, 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함하며, 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 조사 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
또한, 본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수도 있다.
본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 무선 센서 네트워크의 제어 장치 110: 통신모듈
120: 메모리 130: 프로세서

Claims (11)

  1. 무선 센서 네트워크에서의 스케줄링 방법에 있어서,
    상기 무선 센서 네트워크에 대해 싱크 노드를 베이스로 하는 넓이 우선 탐색에 기반하여 BFS 트리를 구성하는 단계;
    상기 싱크 노드로부터의 홉 거리에 따라 상기 BFS 트리에 포함된 노드를 복수의 계층으로 구분하는 단계;
    상기 싱크 노드를 지배자 노드로서 지배자 집합에 추가시키는 단계;
    상기 싱크 노드가 포함된 제 1 계층과 인접하지 않은 제 3 계층의 노드를 후보 지배자 노드로 설정하고, 후보 지배자 노드들 중 상기 싱크 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 상기 지배자 집합에 추가 시키는 단계;
    상기 제 1 계층과 제 3 계층을 연결하는 제 2 계층의 노드들 중 상기 싱크 노드와 상기 지배자 노드들을 최단 경로로 연결시키는 노드를 연결자 노드로 선정하는 단계;
    상기 지배자 집합의 지배자 노드들과 상기 연결자 노드를 포함하는 지배자 연결 트리를 생성하는 단계;
    상기 BFS 트리 중 상기 지배자 연결 트리에 포함되지 않은 피지배자 노드들을 송신 노드로 설정하고, 상기 지배자 연결 트리에 포함된 노드들을 백본 노드로 설정하는 단계;
    피지배자 스케줄링 알고리즘에 따라, 각 활성 슬롯에 대한 정보에 기초하여 상기 송신 노드와 상기 백본 노드들간의 데이터 전송을 스케줄링하여, 상기 송신 노드의 동작 기간을 각각 할당하는 단계; 및
    백본 스케줄링 알고리즘에 따라, 상기 동작 기간이 할당된 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보에 기초하여, 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당하는 단계를 포함하는 무선 센서 네트워크에서의 스케줄링 방법.
  2. 제 1 항에 있어서,
    상기 BFS 트리가 상기 제 3 계층의 하위 계층으로서 제 4 계층을 더 포함하는 경우,
    상기 제 4 계층의 노드를 후보 지배자 노드로 설정하고, 후보 지배자 노드들 중 상기 제 3 계층의 지배자 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 상기 지배자 집합에 추가 시키는 단계를 상기 지배자 연결 트리를 생성하는 단계를 수행하기 전에 더 수행하는 것인 무선 센서 네트워크에서의 스케줄링 방법.
  3. 제 1 항에 있어서,
    상기 피지배자 스케줄링 알고리즘에 따라 상기 송신 노드의 동작 기간을 각각 할당하는 단계는
    매 활성 슬롯의 순서에 따라 상기 백본 노드를 구분하여 복수의 백본 노드 집합을 생성하는 단계;
    매 활성 슬롯 별로 상기 백본 노드 집합에 데이터를 전송하는 송신 노드들과 모두 연결된 최소 커버 집합을 상기 백본 노드 집합에서 특정하는 단계; 및
    매 활성 슬롯 별로 상기 최소 커버 집합에 포함된 백본 노드에 대하여 상기 송신 노드가 데이터를 전송하는 작업에 제 1 동작 기간을 할당하는 것인 무선 센서 네트워크에서의 스케줄링 방법.
  4. 제 3 항에 있어서,
    상기 백본 노드에 복수의 송신 노드들이 독점적인 이웃 관계에 있는 경우 해당 송신 노드들 중 하나의 송신 노드를 무작위로 선택하고, 선택된 송신 노드가 상기 백본 노드에 데이터를 전송하는 작업에 상기 제 1 동작 기간을 할당하는 것인 무선 센서 네트워크에서의 스케줄링 방법.
  5. 제 1 항에 있어서,
    상기 백본 스케줄링 알고리즘에 따라, 각 백본 노드의 동작 기간을 할당하는 단계는
    상기 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보를 수집하는 단계;
    상기 데이터를 엿듣게 되는 백본 노드들의 동작 기간 정보에 기초하여 최하위 계층의 백본 노드들 부터 동작 기간을 할당하는 단계를 포함하되,
    상기 동작 기간의 할당시에는 해당 백본 노드와 인접한 이웃 노드들이 엿듣는 동작 기간을 참고하여 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당하는 것인 무선 센서 네트워크에서의 스케줄링 방법.
  6. 제 5 항에 있어서,
    상기 동작 기간의 할당시에는 제 1 동작 기간이 할당된 송신 노드로부터 데이터 전송을 받는 백본 노드가 그 부모 노드로 데이터를 전송하는 동작 기간을 할당할 때,
    상기 부모 노드가 제 1 동작 기간이 할당된 하나 이상의 송신 노드를 엿듣지 않는 활성 슬롯에 동작하는 경우에는 상기 백본 노드가 상기 부모 노드로 데이터를 전송하는 작업에 제 1 동작 기간을 할당하고,
    상기 부모 노드가 제 1 동작 기간이 할당된 하나 이상의 송신 노드를 엿듣는 활성 슬롯에 동작하는 경우에는 상기 백본 노드가 상기 부모 노드로 데이터를 전송하는 작업에 제 2 동작 기간을 할당하는 것인 무선 센서 네트워크에서의 스케줄링 방법.
  7. 무선 센서 네트워크의 제어 장치에 있어서,
    상기 무선 센서 네트워크의 스케줄링 프로그램이 저장된 메모리,
    상기 무선 센서 네트워크와 접속된 통신 모듈, 및
    상기 메모리에 저장된 프로그램을 실행하기 위한 프로세서를 포함하되,
    상기 프로세서는 상기 프로그램의 실행에 의해, 상기 무선 센서 네트워크에 대해 싱크 노드를 베이스로 하는 넓이 우선 탐색에 기반하여 BFS 트리를 구성하고, 상기 싱크 노드로부터의 홉 거리에 따라 상기 BFS 트리에 포함된 노드를 복수의 계층으로 구분하고, 상기 싱크 노드를 지배자 노드로서 지배자 집합에 추가시키고, 상기 싱크 노드가 포함된 제 1 계층과 인접하지 않은 제 3 계층의 노드를 후보 지배자 노드로 설정하고, 후보 지배자 노드들 중 상기 싱크 노드와의 연결시에 지연이 가장 작은 노드 및 해당 노드와 인접하지 않은 노드를 지배자 노드로서 상기 지배자 집합에 추가 시키고, 상기 제 1 계층과 제 3 계층을 연결하는 제 2 계층의 노드들 중 상기 싱크 노드와 상기 지배자 노드들을 최단 경로로 연결시키는 노드를 연결자 노드로 선정하고, 상기 지배자 집합의 지배자 노드들과 상기 연결자 노드를 포함하는 지배자 연결 트리를 생성하고, 상기 BFS 트리 중 상기 지배자 연결 트리에 포함되지 않은 피지배자 노드들을 송신 노드로 설정하고, 상기 지배자 연결 트리에 포함된 노드들을 백본 노드로 설정하고, 피지배자 스케줄링 알고리즘에 따라, 각 활성 슬롯에 대한 정보에 기초하여 상기 송신 노드와 상기 백본 노드들간의 데이터 전송을 스케줄링하여, 상기 송신 노드의 동작 기간을 각각 할당하고, 백본 스케줄링 알고리즘에 따라, 상기 동작 기간이 할당된 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보에 기초하여, 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당하는 것인 무선 센서 네트워크의 제어 장치.
  8. 제 7 항에 있어서,
    상기 프로세서는 피지배자 스케줄링 알고리즘에 따라 상기 송신 노드의 동작 기간을 각각 할당할 때, 매 활성 슬롯의 순서에 따라 상기 백본 노드를 구분하여 복수의 백본 노드 집합을 생성하고, 매 활성 슬롯 별로 상기 백본 노드 집합에 데이터를 전송하는 송신 노드들과 모두 연결된 최소 커버 집합을 상기 백본 노드 집합에서 특정하고, 매 활성 슬롯 별로 상기 최소 커버 집합에 포함된 백본 노드에 대하여 상기 송신 노드가 데이터를 전송하는 작업에 제 1 동작 기간을 할당하는 것인 무선 센서 네트워크의 제어 장치.
  9. 제 8 항에 있어서,
    상기 프로세서는 백본 노드에 복수의 송신 노드들이 독점적인 이웃 관계에 있는 경우 해당 송신 노드들 중 하나의 송신 노드를 무작위로 선택하고, 선택된 송신 노드가 상기 백본 노드에 데이터를 전송하는 작업에 상기 제 1 동작 기간을 할당하는 것인 무선 센서 네트워크의 제어 장치.
  10. 제 7 항에 있어서,
    상기 프로세서는 백본 스케줄링 알고리즘에 따라, 각 백본 노드의 동작 기간을 할당할 때, 상기 송신 노드의 이웃 노드들 중 데이터를 엿듣게 되는 백본 노드들의 동작 기간에 대한 정보를 수집하고, 상기 데이터를 엿듣게 되는 백본 노드들의 동작 기간 정보에 기초하여 최하위 계층의 백본 노드들 부터 동작 기간을 할당하되,
    상기 동작 기간의 할당시에는 해당 백본 노드와 인접한 이웃 노드들이 엿듣는 동작 기간을 참고하여 데이터 충돌이 발생하지 않도록 각 백본 노드의 동작 기간을 할당하는 것인 무선 센서 네트워크의 제어 장치.
  11. 제 10 항에 있어서,
    상기 프로세서는 상기 동작 기간의 할당시에는 제 1 동작 기간이 할당된 송신 노드로부터 데이터 전송을 받는 백본 노드가 그 부모 노드로 데이터를 전송하는 동작 기간을 할당할 때,
    상기 부모 노드가 제 1 동작 기간이 할당된 하나 이상의 송신 노드를 엿듣지 않는 활성 슬롯에 동작하는 경우에는 상기 백본 노드가 상기 부모 노드로 데이터를 전송하는 작업에 제 1 동작 기간을 할당하고,
    상기 부모 노드가 제 1 동작 기간이 할당된 하나 이상의 송신 노드를 엿듣는 활성 슬롯에 동작하는 경우에는 상기 백본 노드가 상기 부모 노드로 데이터를 전송하는 작업에 제 2 동작 기간을 할당하는 것인 무선 센서 네트워크의 제어 장치.
KR1020180131675A 2018-10-31 2018-10-31 무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치 KR102120435B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180131675A KR102120435B1 (ko) 2018-10-31 2018-10-31 무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180131675A KR102120435B1 (ko) 2018-10-31 2018-10-31 무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치

Publications (2)

Publication Number Publication Date
KR20200048968A true KR20200048968A (ko) 2020-05-08
KR102120435B1 KR102120435B1 (ko) 2020-06-08

Family

ID=70677875

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180131675A KR102120435B1 (ko) 2018-10-31 2018-10-31 무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치

Country Status (1)

Country Link
KR (1) KR102120435B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102474564B1 (ko) * 2021-06-01 2022-12-06 성균관대학교산학협력단 무선 센서 네트워크의 스케줄링 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050010354A (ko) 2003-07-19 2005-01-27 주식회사 포스코 열연강판의 고속압연을 위한 냉각제어장치 및 방법
KR20120018844A (ko) * 2010-08-24 2012-03-06 성균관대학교산학협력단 에너지 효율적인 데이터 수집이 가능한 무선 센서 네트워크 시스템, 이를 이용한 데이터 수집 방법, 그 데이터 수집 방법의 타임 스케줄링 방법 및 이들의 기록 매체
KR20150016458A (ko) * 2013-08-02 2015-02-12 한국전자통신연구원 무선 센서 네트워크에서의 전송 스케줄링 방법 및 그 장치
KR101533037B1 (ko) * 2015-02-26 2015-07-01 성균관대학교산학협력단 무선 센서 네트워크의 스케줄링 장치 및 방법
KR20180043669A (ko) * 2016-10-20 2018-04-30 성균관대학교산학협력단 에너지 효율성을 고려한 무선 센서 네트워크의 데이터 전송 시스템 및 방법
KR20180074399A (ko) * 2016-12-23 2018-07-03 울산대학교 산학협력단 무선 센서 네트워크에서의 듀티 사이클 간격 결정 및 데이터 중계 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050010354A (ko) 2003-07-19 2005-01-27 주식회사 포스코 열연강판의 고속압연을 위한 냉각제어장치 및 방법
KR20120018844A (ko) * 2010-08-24 2012-03-06 성균관대학교산학협력단 에너지 효율적인 데이터 수집이 가능한 무선 센서 네트워크 시스템, 이를 이용한 데이터 수집 방법, 그 데이터 수집 방법의 타임 스케줄링 방법 및 이들의 기록 매체
KR20150016458A (ko) * 2013-08-02 2015-02-12 한국전자통신연구원 무선 센서 네트워크에서의 전송 스케줄링 방법 및 그 장치
KR101533037B1 (ko) * 2015-02-26 2015-07-01 성균관대학교산학협력단 무선 센서 네트워크의 스케줄링 장치 및 방법
KR20180043669A (ko) * 2016-10-20 2018-04-30 성균관대학교산학협력단 에너지 효율성을 고려한 무선 센서 네트워크의 데이터 전송 시스템 및 방법
KR20180074399A (ko) * 2016-12-23 2018-07-03 울산대학교 산학협력단 무선 센서 네트워크에서의 듀티 사이클 간격 결정 및 데이터 중계 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102474564B1 (ko) * 2021-06-01 2022-12-06 성균관대학교산학협력단 무선 센서 네트워크의 스케줄링 방법

Also Published As

Publication number Publication date
KR102120435B1 (ko) 2020-06-08

Similar Documents

Publication Publication Date Title
Athreya et al. Network self-organization in the Internet of Things
Gandham et al. Distributed minimal time convergecast scheduling in wireless sensor networks
Incel et al. Scheduling algorithms for tree-based data collection in wireless sensor networks
KR100964184B1 (ko) 애드 혹 네트워크 내 노드를 위한 자원 할당 방법 및 장치
JP2021526763A (ja) ネットワークを管理するための方法及びその装置
Senel et al. Optimized interconnection of disjoint wireless sensor network segments using K mobile data collectors.
JP2021527987A (ja) ネットワークを管理するための方法及び装置
KR101903058B1 (ko) 셀 스케쥴링 방법 및 장치
Le et al. Delay-aware tree construction and scheduling for data aggregation in duty-cycled wireless sensor networks
Kang et al. Delay-efficient energy-minimized data collection with dynamic traffic in WSNs
Solé et al. Implementation of a LoRa mesh library
Tang dao 2: Overcoming overall storage overflow in intermittently connected sensor networks
KR102120435B1 (ko) 무선 센서 네트워크의 스케줄링 방법 및 이를 수행하는 무선 센서 네트워크의 제어 장치
Nehra et al. Neural network based energy efficient clustering and routing in wireless sensor networks
Gholami et al. Adaptive and distributed TDMA scheduling protocol for wireless sensor networks
Sheshashayee et al. WiLE: Leader Election in Wireless Networks.
KR100791636B1 (ko) 데이터 타입을 고려한 비컨 전송 스케줄링 시스템 및 그방법
Kumar et al. Graph based clustering for two-tier architecture in Internet of Things
Yang et al. Optimal time and channel assignment for data collection in wireless sensor networks
KR101026827B1 (ko) 홈 자동화 시스템에서 무선 센서네트워크를 위한 라우팅 방법 및 이에 사용되는 센서 노드의 통신모듈
Zhao et al. Approximation algorithm for data broadcasting in duty cycled multi-hop wireless networks
Farach-Colton et al. Sensor network gossiping or how to break the broadcast lower bound
He et al. XVR: X visiting-pattern routing for sensor networks
Chae et al. A scalable joint routing and scheduling scheme for large-scale wireless sensor networks
KR101199469B1 (ko) 에너지 효율적인 데이터 수집이 가능한 무선 센서 네트워크 시스템, 이를 이용한 데이터 수집 방법, 그 데이터 수집 방법의 타임 스케줄링 방법 및 이들의 기록 매체

Legal Events

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