KR102219410B1 - 클러스터링 기반의 데이터 전송 경로 결정 방법 및 장치 - Google Patents
클러스터링 기반의 데이터 전송 경로 결정 방법 및 장치 Download PDFInfo
- Publication number
- KR102219410B1 KR102219410B1 KR1020190058205A KR20190058205A KR102219410B1 KR 102219410 B1 KR102219410 B1 KR 102219410B1 KR 1020190058205 A KR1020190058205 A KR 1020190058205A KR 20190058205 A KR20190058205 A KR 20190058205A KR 102219410 B1 KR102219410 B1 KR 102219410B1
- Authority
- KR
- South Korea
- Prior art keywords
- node
- cluster
- base station
- data
- rank
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/32—Connectivity information management, e.g. connectivity discovery or connectivity update for defining a routing cluster membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/04—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
- H04W40/10—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on available power or energy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/12—Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/22—Communication route or path selection, e.g. power-based or shortest path routing using selective relaying for reaching a BTS [Base Transceiver Station] or an access point
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-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
클러스터링 기반의 데이터 전송 경로 결정 방법이 개시된다. 일실시예에 따른 제1 노드 및 제2 노드를 포함하는 네트워크에서 제1 노드의 동작 방법은 클러스터링과 관련된 정보를 송수신하는 단계-클러스터링과 관련된 정보에 기초하여 네트워크에서 클러스터링이 수행됨-; 클러스터링에 의하여 생성된 복수의 클러스터들과 관련하여, 제1 노드를 포함하는 제1 클러스터의 클러스터 랭크를 결정하는 단계; 제1 클러스터와 관련하여, 제1 노드의 클러스터 멤버 랭크를 결정하는 단계; 및 클러스터 랭크 및 클러스터 멤버 랭크에 기초하여 결정되는 데이터의 전송 경로에 기초하여, 데이터를 기지국으로 전송하는 단계를 포함한다.
Description
아래 실시예들은 클러스터링(clustering) 기반의 데이터 전송 경로 결정 방법에 관한 것으로, 예를 들어 클러스터링과 관련된 기술 또는 무선 센서 네트워크(WSN, wireless sensor network)과 관련된 기술에 관한 것이다.
무선 센서 네트워크는 센서를 네트워크로 구성한 것을 말한다. 무선 센서 네트워크(WSN)는 단순한 안전성이나 이벤트 모니터링 플랫폼을 넘어서는 성숙한(mature) 기술이 되어 왔다. WSN는 서로 다른 어플리케이션들에 배치되며, IoT 등 어플리케이션에서의 이용 범위가 광범위하게 증가하고 있다. WSN은 데이터 감지 및 수집을 위해 관심 영역(area of interest)에 배치된 센서 장치의 집합체다. 무선 센서 네트워크에서 수집된 데이터는 싱크(sink) 또는 기지국(BS)이라 불리는 하나 이상의 제어실로 전송될 수 있다.
클러스터링은 하나의 집합을 여러 개의 부분 집합(clusters)으로 분할하는 기술을 의미한다. 클러스터링 기법은 WSN에서의 데이터 전송 경로를 결정하는 데 이용될 수 있다. WSN에서 센서 노드는 불균일하게 배치될 수 있으며, 센서 노드가 어느 클러스터에 속하는지 탐지하기 위하여, 수신된 신호 세기(RSS, received signal strength) 또는 위성위치확인시스템(GPS, global positioning system)이 주로 사용될 수 있다. 수신된 신호 세기는 잡음이 심한(noisy) 환경에서 약해질 수 있다. 한편, 지리적 위치를 얻기 위해서는 각 노드가 GPS를 장착해야 하는데, 건물 내부나 동굴 등 일부 환경에서는 GPS의 효율성이 저하될 수 있다.
노드의 연결 관계에 대해 파악하지 못한 채로 클러스터링이 이루어지는 경우, 노드의 위치 및 링크 품질(LQ, link quality)이 완전히 파악되지 않아 WSN에서 효율적이지 않을 수 있다. 예를 들어, 노드가 센서 필드에 균일하지 않게 분포되어 있는 경우, 각 클러스터의 클러스터 멤버(CM, cluster member) 수가 달라질 수 있으며, 이는 노드의 에너지 소비량의 불균형을 초래할 수 있다. 또한, 클러스터 헤드(CH, cluster head)를 결정할 때, 링크 품질에 대한 지식이 부족하면 통신 중에 패킷 드롭 확률이 증가할 수 있다. 이 경우, 통신의 신뢰성이 저하될 수 있다.
일실시예에 따른 무선 센서 네트워크(WSN)에서의 데이터 전송 경로 결정 방법을 채택함으로써 데이터의 전달 비율이 향상될 뿐만 아니라, 네트워크 수명이 연장될 수도 있다.
일실시예에 따른 제1 노드 및 제2 노드를 포함하는 네트워크에서 상기 제1 노드의 동작 방법은 클러스터링과 관련된 정보를 송수신하는 단계-상기 정보에 기초하여 상기 네트워크에서 상기 클러스터링이 수행됨-; 상기 클러스터링에 의하여 생성된 복수의 클러스터들과 관련하여, 상기 제1 노드를 포함하는 제1 클러스터의 클러스터 랭크를 결정하는 단계; 상기 제1 클러스터와 관련하여, 상기 제1 노드의 클러스터 멤버 랭크를 결정하는 단계; 및 상기 클러스터 랭크 및 상기 클러스터 멤버 랭크에 기초하여 결정되는 데이터의 전송 경로에 기초하여, 상기 데이터를 기지국으로 전송하는 단계를 포함한다.
일실시예에 따르면, 상기 송수신하는 단계는 방송(broadcast)을 지시하는 제1 메시지를 상기 기지국으로부터 수신하는 단계; 상기 제1 메시지의 신호의 세기(RSS, Received Signal Strength)와 관련된 정보를 획득하는 단계; 상기 신호의 세기에 기초하여 상기 제1 노드와 상기 기지국 간의 거리와 관련된 정보를 획득하는 단계; 및 상기 제1 노드의 방송 범위에 포함되는 하나 이상의 노드에 상기 세기와 관련된 정보 및 상기 거리와 관련된 정보 중 적어도 하나를 포함하는 제2 메시지를 전송하는 단계-상기 방송 범위는 상기 제1 노드가 메시지를 전송할 수 있는 최대 범위보다 좁거나 같음-를 포함할 수 있다.
일실시예에 따르면, 상기 송수신하는 단계는 상기 제2 노드가 상기 기지국으로부터 수신한 신호의 세기와 관련된 정보 및 상기 제2 노드와 상기 기지국 간의 거리와 관련된 정보 중 적어도 하나를 포함하는 메시지를 상기 제2 노드로부터 수신하는 단계; 및 상기 수신한 메시지에 포함되는 정보를 저장하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 송수신하는 단계는 상기 제2 노드로 전송하는 데이터가 상기 제2 노드에서 성공적으로 수신되는 비율 및 상기 제2 노드로부터 전송되는 데이터를 성공적으로 수신하는 비율 중 적어도 하나에 기초하여, 예상 송신 카운트(ETX, Expected Transmission Count)를 결정하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 제1 노드의 동작 방법은 상기 예상 송신 카운트에 기초하여 상기 제1 노드 및 상기 제2 노드 간의 링크 품질을 결정하는 단계를 더 포함할 수 있다.
일실시예에 따르면, 상기 제1 노드의 방송 범위에 상기 기지국이 포함되는 경우, 상기 송수신하는 단계는 상기 제1 노드로부터 메시지를 수신하는 동작 및 상기 제1 노드에 메시지를 전송하는 동작 중 적어도 하나를 수행하는 하나 이상의 노드와 관련된 정보를 상기 기지국으로 전송하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 제1 노드의 방송 범위에 상기 기지국이 포함되지 않는 경우, 상기 송수신하는 단계는 상기 제1 노드로부터 메시지를 수신하는 동작 및 상기 제1 노드에 메시지를 전송하는 동작 중 적어도 하나를 수행하는 하나 이상의 노드와 관련된 정보를 상기 하나 이상의 노드 중 상기 기지국으로부터 수신한 신호의 세기가 가장 큰 노드로 전송하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 클러스터 랭크를 결정하는 단계는 상기 네트워크에 포함되는 복수의 노드들이 상기 기지국으로부터 수신한 신호들의 세기와 관련된 정보들에 기초하여 상기 클러스터 랭크를 결정하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 클러스터 멤버 랭크를 결정하는 단계는 상기 제1 클러스터에 포함되는 하나 이상의 노드 간에 송수신되는 신호의 세기와 관련된 정보, 상기 하나 이상의 노드 간의 링크 품질과 관련된 정보, 및 상기 하나 이상의 노드의 잔류 에너지(Residual Energy)와 관련된 정보 중 적어도 하나에 기초하여 상기 클러스터 멤버 랭크를 결정하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 제1 클러스터에 포함되는 하나 이상의 노드의 방송 범위 및 상기 하나 이상의 노드의 클러스터 멤버 랭크 중 적어도 하나에 기초하여 상기 제1 클러스터의 클러스터 헤드(CH, Cluster Head)가 결정될 수 있다.
일실시예에 따르면, 상기 제1 클러스터의 클러스터 헤드가 데이터를 전송할 수 있는 최대 범위에 상기 기지국이 포함되는 경우, 상기 데이터의 전송 경로는 상기 제1 노드에서 상기 제1 클러스터의 클러스터 헤드를 통해 상기 기지국으로 상기 데이터를 전송하도록 결정될 수 있다.
일실시예에 따르면, 상기 제1 클러스터의 클러스터 헤드가 데이터를 전송할 수 있는 최대 범위에 상기 기지국이 포함되지 않는 경우, 상기 데이터의 전송 경로는 상기 제1 노드에서 상기 제1 클러스터의 클러스터 헤드 및 하나 이상의 중계 클러스터 헤드를 통해 상기 기지국으로 상기 데이터를 전송하도록 결정되고, 상기 하나 이상의 중계 클러스터 헤드는 상기 복수의 클러스터들의 클러스터 헤드들 중 상기 제1 클러스터의 클러스터 헤드보다 클러스터 헤드 랭크가 더 높은 클러스터 헤드 중 적어도 하나를 포함하도록 결정될 수 있다.
일실시예에 따르면, 상기 클러스터 헤드 랭크와 관련하여, 상기 복수의 클러스터들에 포함되는 제2 클러스터의 클러스터 헤드 랭크는 상기 제2 클러스터의 헤드가 상기 기지국으로부터 수신한 신호의 세기와 관련된 정보 및 상기 제2 클러스터의 잔류 에너지와 관련된 정보 중 적어도 하나에 기초하여 결정될 수 있다.
일실시예에 따르면, 상기 데이터의 재전송 요청을 수신하는 경우, 상기 제1 노드의 동작 방법은 상기 데이터를 상기 전송 경로에 기초하여 재전송하는 단계를 더 포함할 수 있다.
일실시예에 따르면, 상기 데이터의 재전송 요청을 수신한 횟수가 미리 정해진 임계값을 초과하는 경우, 상기 제1 노드의 동작 방법은 상기 데이터가 손실되었다고 판단하고, 상기 데이터를 재전송하지 않는 단계를 더 포함할 수 있다.
일실시예에 따른 제1 노드 및 제2 노드를 포함하는 네트워크에서 상기 제1 노드는 프로그램이 기록된 메모리; 및 상기 프로그램을 수행하는 프로세서를 포함하고, 상기 프로그램은, 클러스터링과 관련된 정보를 송수신하는 단계-상기 정보에 기초하여 상기 네트워크에서 상기 클러스터링이 수행됨-; 상기 클러스터링에 의하여 생성된 복수의 클러스터들과 관련하여, 상기 제1 노드를 포함하는 제1 클러스터의 클러스터 랭크를 결정하는 단계; 상기 제1 클러스터와 관련하여, 상기 제1 노드의 클러스터 멤버 랭크를 결정하는 단계; 및 상기 클러스터 랭크 및 상기 클러스터 멤버 랭크에 기초하여 결정되는 데이터의 전송 경로에 기초하여, 상기 데이터를 기지국으로 전송하는 단계를 수행한다.
도 1은 일실시예에 따른 무선 센서 네트워크의 구성을 설명하기 위한 도면이다.
도 2는 일실시예에 따른 무선 센서 네트워크에서 데이터의 전송 경로를 결정하는 방법을 설명하기 위한 도면이다.
도 3은 일실시예에 따른 노드에서 정보를 수집하고 수집된 정보를 기지국으로 전송하는 동작의 예시도이다.
도 4는 일실시예에 따른 노드를 클러스터링한 결과의 예시도이다.
도 5는 일실시예에 따른 노드의 클러스터 멤버 랭크 및 노드 간의 연결 상태에 기초하여 클러스터 헤드를 결정하는 방법을 설명하기 위한 도면이다.
도 6은 일실시예에 따른 무선 센서 네트워크에서 제1 노드의 동작 방법을 설명하기 위한 동작 흐름도이다.
도 2는 일실시예에 따른 무선 센서 네트워크에서 데이터의 전송 경로를 결정하는 방법을 설명하기 위한 도면이다.
도 3은 일실시예에 따른 노드에서 정보를 수집하고 수집된 정보를 기지국으로 전송하는 동작의 예시도이다.
도 4는 일실시예에 따른 노드를 클러스터링한 결과의 예시도이다.
도 5는 일실시예에 따른 노드의 클러스터 멤버 랭크 및 노드 간의 연결 상태에 기초하여 클러스터 헤드를 결정하는 방법을 설명하기 위한 도면이다.
도 6은 일실시예에 따른 무선 센서 네트워크에서 제1 노드의 동작 방법을 설명하기 위한 동작 흐름도이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일실시예에 따른 무선 센서 네트워크의 구성을 설명하기 위한 도면이다.
도 1을 참조하면, 무선 센서 네트워크(100)는 N 개의 센서 노드 S = {s1, ..., sN}과 기지국(BS, base station)(140)을 포함할 수 있다. 노드는 관심 영역(area of interest) M(110)에 배치될 수 있다. 노드와 기지국(140)은 배치된 후에 그 위치가 변하지 않을 수 있다. 각 노드에는 신원(ID) 번호가 있으며 노드는 스스로 위치를 인식하지 못할 수 있다. 노드와 기지국(140)은 원하는 수신자와의 거리에 따라 전송 세기(transmission power)를 조정할 수 있다. 이 경우, 전송의 대상은 메시지 및 데이터를 포함할 수 있다.
아래의 표 1은 명세서 전반에서 사용될 용어 및 약어를 규정한다.
노드는 에너지를 송수신할 수 있다. 노드가 송수신하는 에너지의 크기는 수학식 1 및 수학식 2를 이용하여 결정될 수 있다.
여기서, ETX는 노드에서 전송되는 에너지의 크기이고, l은 데이터의 비트 수이며(즉, 전송되는 데이터는 l비트), d는 데이터가 전송되는 거리이고, Eelec은 송수신 회로에서의 전력 소비이며, εfs는 신호 대 잡음 비를 적절하게 유지하는 범위에서의 자유 공간 증폭기 에너지(amplifier energy)이고, εmp는 신호대 잡음 비를 적절하게 유지하는 범위에서의 다중경로 페이딩(multipath fading) 증폭기 에너지이며, d0는 기준 거리로서 √(εfs/εmp) 87 m이다.
데이터 집계(data aggregation)를 위하여, 무한 압축 모델(infinite compressibility model)이 이용될 수 있다. CH(클러스터 헤드)는 하나 이상의 CM으로부터 수신한 로컬 데이터를 미리 정해진 길이의 하나의 패킷에 집계할 수 있다. 각 non-CH(CH가 아닌 CM)의 무선통신은 각 노드에 할당된 전송 시간까지 꺼진 채로 유지될 수 있다. 하나 이상의 CM으로부터 데이터를 수신하기 위하여 CH의 수신기는 켜져 있을 수 있다.
무선 센서 네트워크(100)에 포함되는 N개의 노드는 제1 노드(120) 및 제2 노드(130)를 포함할 수 있다. 제1 노드(120) 및 제2 노드(130)는 N개의 노드 중 임의로 선택된 노드일 수 있다. 본 발명에서 각각의 노드는 동일한 규칙 하에서 동작하므로, 임의로 선택된 제1 노드(120)의 관점에서 노드의 동작을 설명함으로써 무선 센서 네트워크(100)에 포함되는 N개의 노드의 동작들이 모두 설명될 수 있다. 이하, 설명의 편의를 위하여, 제1 노드(120)의 관점에서 노드의 동작을 설명한다.
제1 노드(120)는 클러스터링과 관련된 정보를 송수신할 수 있다. 정보를 송수신하는 대상은 기지국(140) 및 다른 노드들 중 적어도 하나를 포함할 수 있다. 예를 들어, 네트워크(100)에 포함되는 제1 노드(120)는 기지국(140) 및 제2 노드(130)와 정보를 송수신할 수 있다. 송수신되는 정보는 기지국(140)의 RSS(수신되는 신호 세기), 인접 노드의 RSS, 및 인접 노드와의 링크 품질 등 제1 노드(120)와 관련하여 클러스터링에 영향을 미치는 정보를 포함할 수 있다.
클러스터링과 관련된 정보를 송수신하는 것과 관련된 보다 상세한 사항은 도 2를 통하여 후술한다.
클러스터링과 관련된 정보를 송수신한 결과에 기초하여, 클러스터링이 수행된다. 클러스터링은 기지국(140)에 의하여 수행될 수 있다. 클러스터링에 의하여 생성되는 클러스터의 수와 생성되는 클러스터에 속할 CM(클러스터 멤버)의 수는 미리 정해져 있을 수 있다. 클러스터링이 완료된 후에는 데이터의 전송 경로를 결정하기 위한 나머지 동작들이 주기적인 라운드(periodic rounds)들에 의하여 분리되어 수행될 수 있다. 각각의 라운드는 CH 결정 단계 및 데이터 전송 단계를 포함할 수 있다. CH는 CM의 데이터를 집계하고, 결정된 데이터 전송 경로를 기반으로 단일 홉(single-hop) 또는 다중 홉(multi-hop)을 거쳐 집계된 데이터를 기지국(140)에 전달할 수 있다. 제어 메시지 오버헤드(control message overhead)를 최소화하고 네트워크(100) 수명을 향상시키기 위하여 CH 결정 단계는 데이터 전송 단계보다 길어질 수 있다.
아래의 표 2는 데이터 전송 동작 중에 이용될 수 있는 제어 메시지를 규정한다.
일실시예에 따른 무선 센서 네트워크(100)에서의 데이터 전송 경로 결정 방법을 채택함으로써 데이터의 전달 비율이 향상될 뿐만 아니라, 네트워크 수명이 연장될 수도 있다.
도 2는 일실시예에 따른 무선 센서 네트워크에서 데이터의 전송 경로를 결정하는 방법을 설명하기 위한 도면이다.
도 2를 참조하면, 데이터의 전송 경로를 결정하는 단계는 클러스터를 설정하는 단계(Cluster Setup)(210), CH를 결정하는 단계(220), 및 데이터를 전송하는 단계(230)를 포함할 수 있다.
클러스터를 설정하는 단계(210)는 정보를 수집하는 단계(212) 및 클러스터링 단계(211)를 포함할 수 있다. 정보를 수집하는 단계(212)는 도 1의 클러스터링과 관련된 정보를 송수신하는 단계에 대응될 수 있고, 클러스터링 단계(211)는 도 1의 클러스터링에 대응될 수 있다.
정보를 수집하는 단계(212)에서, 정보 수집은 시간 T1에 시작한다고 정의할 수 있다. 시간 T1은 3개의 연속된 시간 슬롯 t1, t2 및 t3를 포함한다. 기지국은 시간 t1 동안 특정한 전력 수준에서 메시지 Hello_Msg1을 한 번 이상 방송(broadcast)할 수 있다. Hello_Msg1은 노드에 방송을 지시하는 메시지일 수 있다. 기지국은 도 1의 기지국(140)에 대응될 수 있다. 전력 수준은 네트워크 영역에 따라 조정될 수 있다. 제1 노드는 기지국에서 전송된 메시지(Hello_Msg1)를 수신한다. 제1 노드는 도 1의 제1 노드(120)에 대응될 수 있다. 제1 노드는 전송된 메시지에 기초하여 기지국에서 제1 노드로 전송되는 메시지의 RSS를 측정할 수 있다. 기지국에서 제1 노드로 전송되는 메시지의 RSS에 기초하여, 제1 노드는 제1 노드와 기지국 사이의 거리를 계산할 수 있다.
시간 t1이 완료되면, 시간 t2 동안 제1 노드는 방송 범위(radio range) Rn 내에서 Hello_Msg2를 방송할 수 있으며, 이 경우 Rn은 노드의 최대 전송 범위 Rmax 이하의 값을 가질 수 있다. Hello_Msg2는 기지국에서 제1 노드로 전송되는 메시지의 RSS를 측정한 결과 및 제1 노드와 기지국 사이의 거리와 관련된 정보를 포함할 수 있다. Hello_Msg2를 수신한 노드(이하, 제2 노드)는 제1 노드에서 제2 노드로 전송되는 메시지의 RSS를 측정할 수 있다. 제2 노드는 도 1의 제2 노드에 대응될 수 있다. 제1 노드에서 제2 노드로 전송되는 메시지의 RSS에 기초하여, 제2 노드는 제1 노드와 제2 노드 사이의 거리를 계산할 수 있다. 또한, 제1 노드에서 제2 노드로 메시지 전송이 실패하여 메시지가 재전송되는 경우, 제2 노드는 제1 노드에서 전송되는 메시지의 재전송 횟수를 계산할 수 있다. 제2 노드는 NT(Neighboring Table)에 이웃한 노드와 관련된 정보를 기재함으로써 수신되는 정보를 저장할 수 있다. 이 경우, 이웃한 노드는 제2 노드로 메시지를 전송한 노드와 관련된 정보 및 제2 노드로부터 메시지를 수신한 노드와 관련된 정보 중 적어도 하나를 포함할 수 있다.
제1 노드 및 제2 노드는 N개의 노드 중 임의로 선택된 노드이므로 모든 노드의 동작을 대표하여 설명할 수 있다. 따라서, 제1 노드는 위에서 설명한 제2 노드처럼 다른 노드로부터 메시지를 수신할 수도 있다. 이 경우 제1 노드의 동작은 제2 노드의 동작과 마찬가지로 수행될 수 있다.
Hello_Msg2 방송이 완료되면 각 노드가 예상 송신 카운트(ETX)를 결정할 수 잇다. 무선 링크의 채널 컨디션은 환경에 따라 노드마다 다르고, 노드가 신뢰할 수 없는 링크와 관련되면 데이터 전달이 실패할 수 있다. 이 경우, 데이터는 재전송될 수 있다. ETX는 데이터가 성공적으로 전달되는 데 필요한 예상 전송 횟수이다. 신뢰도 측정 지표로 링크 품질 수준을 평가하는 데 주로 사용된다. 링크 품질은 ETX 값을 감소시키면서 증가할 수 있다. 제1 노드 및 제2 노드 사이의 ETX는 수학식 3을 이용하여 결정될 수 있다.
여기서, ETX(si, sj)는 si 노드 및 sj 노드 사이의 ETX이고, pf(si, sj)는 si 노드에서 sj 노드로 데이터가 전달되는 비율이며, pr(si, sj)는 si 노드가 sj 노드로부터 확인 패킷(acknowledgement packet)을 수신하는 비율이다.
손실된 데이터의 반복적인 재전송을 제한하기 위하여, 데이터 재전송 횟수는 임계값 THTXC에 의해 제한될 수 있다. 이 경우, 재전송 요청의 횟수가 미리 정해진 임계값 THTXC를 초과하는 경우, 데이터가 손실되었다고 판단하고 데이터 패킷을 재전송하지 않을 수 있다.
제1 노드 및 제2 노드 사이의 LQ(링크 품질)은 0 이상 1 이하의 값을 가질 수 있다. LQ 1에 가까운 값을 가질수록 링크 품질이 좋고, 0에 가까운 값을 가질수록 링크 품질이 나쁘도록 LQ가 정의될 수 있다. 제1 노드 및 제2 노드 사이의 LQ는 수학식 4를 이용하여 결정될 수 있다.
여기서, LQ(si, sj)는 제1 노드 및 제2 노드 사이의 링크 품질이고, ETX(si, sj)는 제1 노드 및 제2 노드 사이의 ETX이다.
NT에 이웃한 노드들과 관련된 정보들이 작성되면 제1 노드는 제1 노드와 이웃한 노드들을 NAT(Neighbors in an Adaptive range Table)라는 하위 집합에 기재할 수 있다. 이 경우, 적응 범위 Radp(adaptive range)는 Rn보다 작거나 같을 수 있다.
시간 t2가 완료되면, 시간 t3 동안 제1 노드는 자신의 NAT를 Hello_Msg3와 함께 기지국으로 전송할 수 있다. 기지국이 제1 노드의 Rmax를 벗어나는 장소에 위치하는 경우, 제1 노드는 자신의 이웃들 중 기지국으로부터 전송되는 메시지의 RSS가 기지국으로부터 제1 노드로 전송되는 메시지의 RSS보다 더 큰 적어도 하나의 노드를 중계 노드로서 선택할 수 있다. 제1 노드는 중계 노드로 Hello_Msg3를 전송할 수 있다(패킷 포워딩(packet forwarding)). 패킷 포워딩은 데이터를 집계한 패킷이 기지국에 도달할 때까지 계속될 수 있다. 기지국은 수신된 정보에 기초하여 노드 간의 연결 관계를 나타내는 크기 N × N의 인접 행렬 A(S, E)를 생성 및 저장할 수 있다. 행렬 A(S, E)는 수학식 5를 이용하여 결정될 수 있다.
여기서, e(sa, sb)는 a번째 노드 및 b번째 노드가 연결되어 있는 경우 1, 연결되어 있지 않은 경우 0의 값을 가진다.
일실시예에 따른 노드에서 정보를 수집하고 수집된 정보를 기지국으로 전송하는 동작이 도 3에 도시되어 있다(설명을 위한 용어는 도 2와 동일함). 도 3을 참조하면, 기지국(350)에서 s4 노드(340)로 전송되는 RSS는 -35.42dBm일 수 있다. 기지국(350)에서 s4 노드(340)로 전송되는 RSS에 기초하여 계산된 s4 노드(340)와 기지국(350) 사이의 거리는 s4 노드(340)의 Rmax보다 클 수 있다. 이 경우, 기지국(350)이 s4 노드(340)의 Rmax를 벗어나는 장소에 위치하므로, s4 노드(340)는 자신의 이웃들 중 기지국(350)으로부터 전송되는 메시지의 RSS가 -35.42dBm보다 더 큰 s1 노드(310)(RSS=-30.66dBm) 및 s3 노드(330)(RSS=-31.06dBm) 중 적어도 하나를 중계 노드로서 선택할 수 있다. s4 노드(340)는 선택된 중계 노드(s1 노드(310) 및 s3 노드(330) 중 적어도 하나)로 Hello_Msg3를 전송할 수 있다. 전송된 Hello_Msg3는 중계 노드에서 다시 선택된 다른 중계 노드로 전송되거나(Rmax의 크기에 따라, s4 노드(340)에서 s1 노드(310)로 전송된 Hello_Msg3가 s3 노드(330)에서 s1 노드(310)로 다시 전송될 수 있음), 기지국(350)으로 바로 전송될 수도 있다. 한편, s2 노드(320)의 RSS는 -36.06dBm으로 s4 노드(340)의 RSS보다 작으므로 중계 노드로서 선택되지는 않지만, s2 노드(320)는 s4 노드(340)의 방송 범위 내에 위치하고, s4 노드(340)는 s2 노드(340)의 방송 범위 내에 위치할 수 있다. 이 경우, s2 노드(320) 및 s4 노드(340) 상호간에 Hello_Msg2가 송수신될 수 있다.
도 2로 돌아와서, 정보를 수집하는 단계(212)의 결과에 기초하여 클러스터링 단계(211)가 수행될 수 있다. 클러스터링 단계(211)에서 클러스터링은 커뮤니티 탐지 알고리즘(community detection algorithm)에 기반하여 수행될 수 있다. 기지국은 모듈화 최대화 알고리즘(modulation maximization algorithm)을 이용하여 K-클러스터라고 불리는 커뮤니티(community)를 탐지(detect)할 수 있다. 모듈화 최대화 알고리즘은 품질함수 Q에 기초하여 클러스터의 개수를 정의하는 클러스터링 방법이다. 클러스터링은 그래프 G(S,E)를 두 개 이상의 부분 그래프(subgraph)로 분할할 수 있다. 클러스터링은 그래프 G(S,E)를 분할하는 것과 동일한 작업을 부분 그래프들에 반복적으로 실시할 수 있다. 예를 들어, G(S,E)는 분할에 의해 두 개의 부분 그래프로 분할될 수 있고, 두 개의 분할 그래프는 분할에 의해 네 개의 2차 분할 그래프로 분할될 수 있고, 네 개의 2차 분할 그래프는 분할에 의해 8개의 3차 분할 그래프로 분할될 수 있다.
K 값은 품질함수 Q(G,C)에 의하여 결정될 수 있다. Q(G,C)의 값이 상수인 경우, K는 Radp의 역수함수일 수 있다. Radp는 노드 밀도 함수 γ에 의하여 정의될 수 있다. 그래프 G=(S,E)는 노드 세트 S 및 모서리의 세트 E를 포함하고, 그래프 G는 인접 행렬 A를 가질 수 있다.
클러스터링이 수행되면 G(S,E)에서 S가 세트 C = c1,…,cK로 분할될 수 있다. K개의 세트들 중 공집합은 없으며, K개의 세트들의 교집합은 공집합이고, K개의 세트들의 합집합은 S일 수 있다. 클러스터링에 의하여 세트 c1,…,cK가 K개의 클러스터가 될 수 있다. G의 모서리들은 (k,l) = 1,??,K 이고 k ≠ l 이며 si∈ck 이고 sj∈cl일 때 e(si,sj)∈Ekl를 만족하도록 Eij로 파티션될 수 있다.
전술한 바와 같이, 품질 함수에 기초하여 커뮤니티가 정의될 수 있다. 품질 함수 Q(G,C)는 C가 G의 파티션으로 적절한 정도를 나타낼 수 있다. 좋은 커뮤니티는 좋은 C의 구성요소(element)임을 고려할 때, 품질 함수 Q가 높은 값을 가지는 C의 구성요소가 좋은 커뮤니티가 될 수 있다. 일실시예에 따른 품질 함수 Q는 Girvan-Newman 모듈화 최대화를 이용할 수 있으며, 이 경우 품질 함수 Q는 수학식 6을 이용하여 결정될 수 있다.
클러스터링이 완료되면 기지국은 각 클러스터의 클러스터 랭크를 계산할 수 있다(도면에는 도시되지 않음). 클러스터 랭크는 기지국으로부터 전체 노드로 전송되는 메시지의 RSS의 총합 및 기지국으로부터 특정 클러스터의 CM으로 전송되는 메시지의 RSS의 총합을 비교함으로써 결정될 수 있다. 클러스터 랭크는 수학식 7을 이용하여 결정될 수 있다.
여기서, n은 클러스터 ck의 CM의 개수이고, k는 1 이상 K 이하의 자연수이며, RSS(BS,si)는 기지국으로부터 si 노드로 전송되는 메시지의 RSS이고, RSS(BS,sj)는 기지국으로부터 sj 노드로 전송되는 메시지의 RSS이다.
클러스터 랭크가 높을수록 CM이 기지국 근처에 위치하고 좋은 링크 품질을 보일 가능성이 커질 수 있다(다만, 반드시 정비례하는 것은 아니다). 기지국은 개별 클러스터에 관련된 정보를 포함하는 메시지 Hello_Msg4를 CM들에 전송할 수 있다.
아래의 표 3은 클러스터를 설정하는 단계(210)의 세부적인 사항들을 포함하는 pseudocode이다.
클러스터를 설정하는 단계(210)가 종료된 후, CH를 결정하는 단계(220)가 진행될 수 있다. CH를 결정하는 단계(220)는 각 라운드의 시간 T2에서 시작될 수 있다.
특정 클러스터에 포함되는 n개의 CM은 제1 CM 및 제2 CM을 포함할 수 있다. 제1 CM 및 제2 CM은 n개의 CM 중 임의로 선택된 CM일 수 있다. 본 발명에서 각각의 CM은 동일한 규칙 하에서 동작하므로, 임의로 선택된 제1 CM의 관점에서 CM의 동작을 설명함으로써 무선 센서 네트워크에 포함되는 n개의 CM의 동작들이 설명될 수 있다(단 설명의 복잡성을 줄이기 위하여 제1 CM이 CH로 선출되지 않는 실시예들에 한정하여 설명한다). 이하, 설명의 편의를 위하여, 제1 CM의 관점에서 CM의 동작을 설명한다.
첫 번째 라운드의 경우(222→223), 제1 CM은 CM 랭크를 계산하고 CM 랭크와 잔류 에너지의 값을 포함하는 메시지 Node_Msg를 Rmin 범위에서 방송할 수 있다. 이 경우, Rmin은 클러스터 내에서 제1 CM으로부터 가장 먼 거리에 존재하는 CM까지의 거리를 의미할 수 있다. 제2 CM은 제1 CM으로부터 Node_Msg를 수신하고 CMT(Cluster Member Table)을 업데이트할 수 있다(물론, 제1 CM도 다른 CM으로부터 메시지를 수신하고 CMT를 업데이트할 수 있다). CM들 사이에서 Node_Msg가 송수신된 후, 수학식 8을 이용하여 제1 CM의 CM 랭크가 결정될 수 있다.
여기서, rank(si)는 si 노드의 CM 랭크이고, α는 가중치 계수(weight factor)이며, Eres(si)는 si 노드의 현재 잔류 에너지이고, Emax는 노드의 집합 S의 최대 최초에너지(maximum initial energy)이며, n은 si 노드를 포함하는 클러스터에 속하는 살아있는(alive) CM의 갯수이고, RSS(sj,si)는 sj 노드로부터 si 노드로 전송되는 메시지(혹은 데이터)의 RSS이며, LQ(si,sj)는 si 노드와 sj 노드 사이의 링크 품질이다.
수학식 8을 참조하면, 높은 잔류 에너지, 높은 평균 RSS, 및 높은 평균 LQ를 가지는 CM이 더 높은 CM 랭크를 가질 수 있다.
첫 번째 라운드의 경우(222→223), 제1 노드는 CMT에 기초하여 자신이 CMT에서 가장 높은 CM 랭크를 가지는지 여부를 판단할 수 있다(223). 제1 노드가 CMT에서 가장 높은 CM 랭크를 가지는 경우, 제1 노드는 CH로 결정될 수 있다(224). 이 경우, 제1 노드는 CH로 결정된 결과를 CMT에 업데이트할 수 있다(224). 제1 노드가 CMT에서 가장 높은 CM 랭크를 가지는 노드가 아닌 경우, 제1 노드는 CM으로 결정될 수 있다(226).
r번째 라운드의 경우(r>1)(222→225), (r-1)번째 라운드에서의 CH는 r번째 라운드에서 결정되는 CH에 그 역할을 넘겨 줄 수 있다. 각 라운드에서 CH가 결정되면 CH는 CM에 시간 슬롯의 할당을 지시하는 메시지 Schedule_Msg를 방송할 수 있다. 따라서, 미리 정해진 시간 내에 제1 노드(제1 노드는 CH로 선출되지 않은 노드임)에서 Schedule_Msg를 수신하지 못하는 경우, 첫 번째 라운드와 마찬가지로 CH를 결정할 수 있다.
미리 정해진 시간 내에 제1 노드에서 메시지 Schedule_Msg를 수신하는 경우, CH는 재귀적으로(recursively) (r-1)번째 라운드에서의 CH에 의해 선출될 수 있다. 구체적으로, (r-1)번째 라운드에서의 CH인 제2 노드에서(225→227), r번째 라운드에서 여전히 제2 노드가 CMT에서 가장 높은 CM 랭크를 가지는지 여부를 판단할 수 있다(227). 제2 노드가 CMT에서 가장 높은 CM 랭크를 가지는 노드인 경우, 제2 노드는 CH로 결정될 수 있다(229). 제2 노드가 CMT에서 가장 높은 CM 랭크를 가지는 노드가 아닌 경우, 제2 노드는 CMT에 기초하여 새로운 CH를 결정할 수 있다(228).
클러스터 내 통신 중에 제1 CM이 자신의 로컬 데이터, 순위, 및 잔류 에너지와 관련된 정보 중 적어도 하나를 대응되는 CH에 전송하지 않은 경우, 제1 CM은 누락된 노드(missing node) 또는 죽은 노드(dead node)로 간주될 수 있다. 이 경우, 누락된 노드는 네트워크 및 나머지 프로세스에서 제외될 수 있다. r번째 라운드의 경우, 제2 노드에서 CMT에 기초하여 새로운 CH를 결정함으로써, 누락된 노드 또는 죽은 노드인지 여부를 빠르게 판단할 수 있고, 이들을 CH로 결정하지 않을 수 있다.
도 4 및 도 5에 기초하여, CH를 결정하는 단계(220)가 더욱 상세하게 설명될 수 있다. 우선, 일실시예에 따른 노드를 클러스터링한 결과의 예시도가 도 4에 도시되어 있다(설명을 위한 용어는 도 2와 동일함). 도 4를 참조하면, 무선 센서 네트워크가 포함하는 N개의 센서 노드들이 세 개의 클러스터로 클러스터링될 수 있다. 제1 클러스터(410)에서, 8개의 CM 각각은 제1 클러스터(410)에 속하는 나머지 7개의 CM들의 Rn 내에 위치하고 있다. 따라서, 제1 클러스터(410) 내의 모든 CM들은 다른 CM들과 연결되어 있어, 임의의 sj 노드의 Flag는 'FC(Fully Connected)'로 표시될 수 있다. 이는 제2 클러스터(420)의 경우에도 마찬가지일 수 있다.
제3 클러스터(430)의 경우, 8개의 CM들 중 s4- 노드 및 s5 노드는 제3 클러스터(430)에 속하는 나머지 CM들의 Rn 내에 위치하고 있다. 따라서, s4- 노드 및 s5 노드의 Flag는 'FC'로 표시될 수 있다. 반면, 나머지 노드들(s1 노드, s2노드, s3 노드, s6 노드, s7 노드, 및 s8- 노드)의 경우 적어도 하나의 CM의 Rn 내에 위치하고 있지 못하므로, Flag는 'NFC(Not Fully Connected)'로 표시될 수 있다.
특정 클러스터에 속하는 모든 CM의 Flag가 'FC'로 표시되는 경우, 더 높은 CM 랭크를 가지는 노드가 CH로 결정될 수 있다. 클러스터 내에서 가장 높은 CM 랭크를 가지는 노드가 복수 개인 경우, 가장 높은 CM 랭크를 가지는 복수 개의 CM 중 더 높은 잔류 에너지(residual energy)를 가지는 CM이 CH로 선택될 수 있다. CH로 결정된 노드는 CM들에게 메시지 Schedule_Msg를 이용하여 TDMA(time division multiple access) 슬롯과 관련된 정보를 전송할 수 있다. 슬롯의 개수는 CH의 패킷 드롭 확률에 기초하여 할당될 수 있다.
특정 클러스터에 속하는 적어도 하나의 CM의 Flag가 'NFC'로 표시되는 경우, 클러스터에서 결정되는 CH의 개수는 고정되지 않을 수 있으며, 이와 관련된 보다 상세한 사항은 도 5를 통하여 후술한다.
일실시예에 따른 노드 간의 연결 상태(Flag) 및 노드의 CM 랭크의 예시들이 도 5에 도시되어 있다(설명을 위한 용어는 도 2 및 도 4와 동일함). 도 5를 참조하면, 도 5(a)와 같이 Flag가 'FC'로 표시되는 하나 이상의 노드의 CM 랭크가 더 높을 수 있고, 도 5(b) 및 도 5(c)와 같이 Flag가 'NFC'로 표시되는 하나 이상의 노드의 CM 랭크가 더 높을 수도 있다.
도 5(a)와 같이 Flag가 'FC'로 표시되는 하나 이상의 노드의 CM 랭크가 더 높은 경우, Flag가 'FC'로 표시되는 하나 이상의 노드 중 가장 높은 CM 랭크를 가지는 노드가 CH로 결정될 수 있다. CH로 결정된 노드는 CM들에게 메시지 Schedule_Msg를 이용하여 TDMA(time division multiple access) 슬롯과 관련된 정보를 전송할 수 있다.
도 5(b)와 같이 클러스터에 복수의 독립적인 부분집합들이 존재하는 경우, 하나의 클러스터에서 복수 개의 CH가 결정될 수 있다. 도 5(b)에서 집합 {s1,??,s8}에서 {s4,s5}가 제외되고, 부분집합 {s1,s2,s3} 및 부분집합 {s6,s7,s8}가 존재할 수 있다(이 경우, 두 부분집합 {s1,s2,s3} 및 {s6,s7,s8} 사이의 교집합은 존재하지 않는다). 노드 s4 및 노드 s5는 독립적인 부분집합에 포함되지 못하는 노드로서, 잔류 에너지, RSS, 및 LQ 중 적어도 하나가 낮은 값을 가져 CM 랭크 또한 낮을 수 있다. 이 경우, 독립적인 집합 별로 CH가 결정될 수 있으며, 결정된 CH 각각은 Rmin 범위 내에서 메시지 Schedule_Msg를 방송할 수 있다. 이 경우, 두 독립적인 집합들에 속하지 않는 노드 s4 및 노드 s5는 수신된 하나 이상의 메시지에 기초하여 자신이 속할 CH를 선택할 수도 있고, 복수의 CH로부터 메시지를 수신할 수도 있다.
도 5(c)와 같이 클러스터에 복수의 부분집합들이 존재하되 이들이 독립적이지는 않을 수 있다. 도 5(c)에서 부분집합 {s1,s2,s3,s4,s5} 및 부분집합 {s4,s5,s6,s7,s8}가 존재할 수 있으며,이 경우 두 부분집합 사이의 교집합은 {s4,s5}가 될 수 있다. Flag가 'FC'로 표시되는 노드 s4 및 노드 s5의 CM 랭크는 노드 s1, 노드 s2, 및 노드 s3보다는 더 높지만, 노드 s7보다는 낮을 수 있다. 따라서, 노드 s7이 CH로 선택될 수 있다.
다만, 노드 s7-은 클러스터에 속하는 CM들 중 적어도 하나의 Rn 내에 위치하고 있지 않을 수 있다(노드 s7의 Flag가 'NFC'로 표시됨). 따라서, 노드 s7이 클러스터에 속하는 CM들 중 적어도 하나에 메시지 Schedule_Msg를 전송할 수 없고, 클러스터에 속하는 CM들 중 적어도 하나와 로컬 데이터를 송수신할 수도 없다. 이를 해결하기 위하여, Rn 밖에 노드 s7-이 속하는 CM은 Flag가 'FC'로 표시되는 노드들 중 CM 랭크가 더 높은 노드에 메시지 Join_Msg를 전송할 수 있고, Join_Msg 메시지를 수신한 노드는 중계 노드(relay node)가 될 수 있다. 중계 노드는 CH로부터 수신한 메시지 Schedule_Msg를 Join_Msg 메시지를 전송한 노드에 전송할 수 있고, 클러스터에 속하는 노드가 CH로 로컬 데이터를 전송하고자 하는 경우에도 노드로부터 로컬 데이터를 수신하여 CH로 전송하는 역할을 수행할 수 있다. 단, Join_Msg 메시지를 수신하는 중계 노드는 전술한 Hello_Msg3를 기지국으로 전송하기 위하여 선택되는 중계 노드와는 상이하게 결정될 수 있다.
아래의 표 4는 CH를 결정하는 단계(220)의 세부적인 사항들을 포함하는 pseudocode이다.
CH를 결정하는 단계(220)가 종료된 이후, 데이터를 전송하는 단계(230)가 진행될 수 있다. 데이터를 전송하는 단계(230)는 클러스터 내 통신(Intra-Cluster Communication)(231) 및 클러스터 간 통신(Inter-Cluster Communication)(232)를 포함할 수 있다.
클러스터 내 통신(231)은 각 라운드의 시간 T3에서 시작될 수 있다. 각 노드에 할당된 시간 동안 CM은 로컬 데이터 D_Msg를 Rmin(CM과 CH 사이의 거리)을 이용하여 CH에 전송할 수 있다(233). Rmin 범위에서의 로컬 데이터 D_Msg의 전송은 중계 노드를 경유한 전송을 포함하며, 하나의 클러스터에 복수의 CH가 존재하는 경우 CM은 Rn 내에 위치하는 적어도 하나의 CH에 D_Msg를 전송할 수 있다. CH는 수신된 데이터를 AD_Msg 라 불리는 패킷으로 집계할 수 있다. 일실시예에 따르면, 각 CM은 D_Msg와 함께 자신의 CM 랭크 및 잔류 에너지의 값을 CH에 피기백(piggyback)할 수 있다. 일실시예에 따르면, 각 CM은 CH에 의해 할당된 시간 슬롯 동안 CH에 데이터가 없는 값(values without data)을 전송할 수 있다.
적어도 하나의 CH에 의한 데이터 집계가 완료된 이후, 클러스터 간 통신(232)은 시간 T4에서 시작될 수 있다. 시간 T4 동안, CH는 AD_Msg를 기지국으로 전송할 수 있다. 데이터 전송 경로는 CH 랭크에 기초하여 선택될 수 있다. 이 경우, CH 랭크는 서로 다른 클러스터들에 포함되는 복수의 CH들 사이의 순위와 관련된 값으로서 CM의 랭크와는 구별될 수 있다. 수학식 9를 이용하여 CH 랭크가 결정될 수 있다.
여기서, rank(CHi)는 CHi 노드의 CH 랭크이고, 는 가중치 계수(weight factor)이며, Eres(CHi)는 CHi 노드의 현재 잔류 에너지이고, Emax는 노드의 집합 S의 최대 최초에너지(maximum initial energy)이며, n은 CHi 노드를 포함하는 클러스터에 속하는 살아있는(alive) CM의 갯수이고, RSS(BS, CHi)는 기지국으로부터 CHi 노드로 전송되는 메시지(혹은 데이터)의 RSS이다.
수학식 9를 참조하면, CH의 잔류 에너지가 높을수록, 기지국으로부터 CH가 수신하는 메시지(혹은 데이터)의 RSS가 높을수록, 및 CH가 속하는 클러스터의 CM 수가 작을수록 CH 랭크는 더 큰 값을 가질 수 있다.
본 발명에서 각각의 CH는 동일한 규칙 하에서 동작하므로, 임의로 선택된 제1 CH의 관점에서 CH의 동작을 설명함으로써 모든 CH의 동작들이 모두 설명될 수 있다. 이하, 설명의 편의를 위하여, 제1 CH의 관점에서 CH의 동작을 설명한다.
제1 CH는 수학식 9에 기초하여 CH 랭크를 결정하고 메시지 Route_Msg를 Rmax 범위에 방송할 수 있다(234). Route_Msg가 송수신된 뒤, 제1 CH는 RT(Routing Table)을 업데이트할 수 있다(235). 기지국이 제1 CH의 Rmax 범위 내에 위치하는 경우, 제1 CH는 기지국으로 데이터를 전송할 수 있다(236→238). 반면, 기지국이 제1 CH의 Rmax 범위 밖에 위치하는 경우, 제1 CH는 RT에 기초하여 중계 CH를 결정하고, 중계 CH로 데이터를 전송할 수 있다(236→237). 이 경우, 높은 클러스터 랭크를 가지는 클러스터에 속하는 CH들 중 CH 랭크가 가장 높은 적어도 하나의 CH를 중계 CH로 결정할 수 있다. 만약 복수의 CH가 동일한 랭크를 갖는다면, 그 중 더 높은 잔류 에너지를 갖는 CH가 중계 CH로 결정될 수 있다. 중계 CH는 제1 CH를 포함하는 적어도 하나의 CH로부터 적어도 하나의 AD_Msg를 수신하고, 별도의 추가적인 집계 과정 없이 기지국 및 다른 중계 CH 중 적어도 하나에 수신된 적어도 하나의 AD_Msg를 전송할 수 있다.
데이터 패킷이 수신기(receiver)에 도달하지 못하거나 수신기에서 떨어지면(drop), 메시지 ARR_Msg가 데이터 패킷을 전송한 노드(이하, 송신기 노드)로 전송될 수 있다. ARR_Msg를 수신한 송신기 노드는 패킷을 수신기로 재전송할 수 있다. 각 노드는 수신기가 성공적으로 데이터 패킷을 수신할 때까지 데이터 패킷을 저장할 수 있다. 일실시예에 따르면, 노드 간의 링크의 품질이 지나치게 나쁘거나 데이터가 손실된 경우 지나친 재전송을 반복하기 위하여 임계 값 THTXD를 설정할 수 있다. 이 경우, 재전송 요청을 수신한 횟수가 미리 정해진 임계값 THTXD를 초과하는 경우, 데이터 패킷이 손실되었다고 판단하고 데이터 패킷을 재전송하지 않을 수 있다.
아래의 표 5는 데이터를 전송하는 단계(230)의 세부적인 사항들을 포함하는 pseudocode이다.
도 6은 일실시예에 따른 무선 센서 네트워크에서 제1 노드의 동작 방법을 설명하기 위한 동작 흐름도이다.
도 6을 참조하면, 제1 노드 및 제2 노드를 포함하는 네트워크에서 제1 노드는 클러스터링과 관련된 정보를 송수신한다(610). 제1 노드는 방송을 지시하는 제1 메시지를 기지국으로부터 수신하고, 제1 메시지의 RSS와 관련된 정보를 획득하고, 제1 메시지의 RSS에 기초하여 제1 노드와 기지국 간의 거리와 관련된 정보를 획득할 수 있다. 제1 노드는 도 1의 제1 노드(120)에 대응될 수 있고, 제1 메시지는 도 2의 Hello_Msg1에 대응될 수 있고, 기지국은 도 1의 기지국(140)에 대응될 수 있다. 거리와 관련된 정보를 획득한 제1 노드는 제1 노드의 방송 범위에 포함되는 하나 이상의 노드에 RSS와 관련된 정보 및 제1 노드와 기지국 간의 거리와 관련된 정보 중 적어도 하나를 포함하는 제2 메시지를 전송할 수 있다. 제2 노드는 도 2의 Hello_Msg2에 대응될 수 있다.
제1 노드에서 송수신한 클러스터링과 관련된 정보에 기초하여, 네트워크에서 클러스터링이 수행된다. 클러스터링에 의하여 생성된 복수의 클러스터들과 관련하여, 제1 노드는 제1 노드를 포함하는 제1 클러스터의 클러스터 랭크를 결정한다(620). 클러스터 랭크는 네트워크에 포함되는 복수의 노드들이 기지국으로부터 수신한 신호들의 세기와 관련된 정보들에 기초하여 결정될 수 있다. 클러스터 랭크는 도 2의 클러스터 랭크에 대응될 수 있고, '기지국으로부터 수신한 신호들의 세기'는 도 2의 '기지국으로부터 전송되는 메시지의 RSS'에 대응될 수 있다.
제1 클러스터와 관련하여, 제1 노드는 제1 노드의 클러스터 멤버 랭크를 결정한다(630). 클러스터 멤버 랭크는 도 2의 CM 랭크에 대응될 수 있다. 제1 노드의 클러스터 멤버 랭크는 제1 클러스터에 포함되는 하나 이상의 노드 간에 송수신되는 신호의 세기와 관련된 정보, 하나 이상의 노드 간의 링크 품질과 관련된 정보, 및 하나 이상의 노드의 잔류 에너지와 관련된 정보 중 적어도 하나에 기초하여 결정될 수 있다. '하나 이상의 노드 간에 송수신되는 신호의 세기'는 도 2의 'RSS(sj,si)'에 대응될 수 있다. 일실시예에 따른 클러스터 멤버 랭크는 도 2의 수학식 8에 기초하여 결정될 수 있다.
클러스터 랭크 및 클러스터 멤버 랭크에 기초하여 결정되는 데이터의 전송 경로에 기초하여, 제1 노드는 데이터를 기지국으로 전송한다(640). 제1 클러스터에 포함되는 하나 이상의 노드의 방송 범위 및 하나 이상의 노드의 클러스터 멤버 랭크 중 적어도 하나에 기초하여 제1 클러스터의 클러스터 헤드가 결정될 수 있다. 클러스터 헤드는 도 2의 CH에 대응될 수 있으며, CH를 결정하는 방법은 도 2, 도 4, 및 도 5에서 상세하게 전술한 바 있다.
제1 클러스터의 클러스터 헤드가 데이터를 전송할 수 있는 최대 범위에 기지국이 포함되는 경우, 데이터의 전송 경로는 제1 노드에서 제1 클러스터의 클러스터 헤드를 통해 기지국으로 데이터를 전송하도록 결정될 수 있다. 데이터를 전송할 수 있는 최대 범위는 도 2의 Rmax 범위에 대응될 수 있다.
제1 클러스터의 클러스터 헤드가 데이터를 전송할 수 있는 최대 범위에 기지국이 포함되지 않는 경우, 데이터의 전송 경로는 제1 노드에서 제1 클러스터의 클러스터 헤드 및 하나 이상의 중계 클러스터 헤드를 통해 기지국으로 데이터를 전송하도록 결정될 수 있다. 중계 클러스터 헤드는 도 2의 중계 CH에 대응될 수 있다. 이 경우, 하나 이상의 중계 클러스터 헤드는 복수의 클러스터들의 클러스터 헤드들 중 제1 클러스터의 클러스터 헤드보다 클러스터 헤드 랭크가 더 높은 클러스터 헤드 중 적어도 하나를 포함하도록 결정될 수 있다. 클러스터 헤드 랭크는 기지국으로부터 클러스터 헤드가 수신하는 신호의 세기와 관련된 정보, 클러스터 헤드의 잔류 에너지와 관련된 정보, 및 클러스터 헤드가 속하는 클러스터의 멤버 수와 관련된 정보 중 적어도 하나에 기초하여 결정될 수 있다. 일실시예에 따른 클러스터 헤드는 도 2의 수학식 9에 기초하여 결정될 수 있다. 일실시예에 따르면, 중계 클러스터 헤드를 결정하기 위하여, 높은 클러스터 랭크를 가지는 클러스터에 속하는 클러스터 헤드인지 여부 및 높은 잔류 에너지를 가지는 클러스터 헤드인지 여부 중 적어도 하나를 더 고려할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (21)
- 제1 노드 및 제2 노드를 포함하는 네트워크에서 상기 제1 노드의 동작 방법에 있어서,
클러스터링과 관련된 정보를 송수신하는 단계-상기 정보에 기초하여 상기 네트워크에 포함된 노드들의 연결 관계를 나타내는 그래프가 생성되고, 상기 그래프 내 모서리의 수에 따른 품질 함수에 기초하여 상기 그래프를 부분 그래프들로 분할함으로써 상기 클러스터링이 수행됨-;
상기 클러스터링에 의하여 생성된 복수의 클러스터들과 관련하여, 상기 제1 노드를 포함하는 제1 클러스터의 클러스터 랭크를 결정하는 단계;
상기 제1 클러스터와 관련하여, 상기 제1 노드의 클러스터 멤버 랭크를 결정하는 단계; 및
상기 클러스터 랭크 및 상기 클러스터 멤버 랭크에 기초하여 결정되는 데이터의 전송 경로에 기초하여, 상기 데이터를 기지국으로 전송하는 단계
를 포함하는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 송수신하는 단계는
방송(broadcast)을 지시하는 제1 메시지를 상기 기지국으로부터 수신하는 단계;
상기 제1 메시지의 신호의 세기(RSS, Received Signal Strength)와 관련된 정보를 획득하는 단계;
상기 신호의 세기에 기초하여 상기 제1 노드와 상기 기지국 간의 거리와 관련된 정보를 획득하는 단계; 및
상기 제1 노드의 방송 범위에 포함되는 하나 이상의 노드에 상기 세기와 관련된 정보 및 상기 거리와 관련된 정보 중 적어도 하나를 포함하는 제2 메시지를 전송하는 단계-상기 방송 범위는 상기 제1 노드가 메시지를 전송할 수 있는 최대 범위보다 좁거나 같음-
를 포함하는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 송수신하는 단계는
상기 제2 노드가 상기 기지국으로부터 수신한 신호의 세기와 관련된 정보 및 상기 제2 노드와 상기 기지국 간의 거리와 관련된 정보 중 적어도 하나를 포함하는 메시지를 상기 제2 노드로부터 수신하는 단계; 및
상기 수신한 메시지에 포함되는 정보를 저장하는 단계
를 포함하는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 송수신하는 단계는
상기 제2 노드로 전송하는 데이터가 상기 제2 노드에서 성공적으로 수신되는 비율 및 상기 제2 노드로부터 전송되는 데이터를 성공적으로 수신하는 비율 중 적어도 하나에 기초하여, 예상 송신 카운트(ETX, Expected Transmission Count)를 결정하는 단계
를 포함하는,
제1 노드의 동작 방법.
- 제4항에 있어서,
상기 예상 송신 카운트에 기초하여 상기 제1 노드 및 상기 제2 노드 간의 링크 품질을 결정하는 단계
를 더 포함하는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 제1 노드의 방송 범위에 상기 기지국이 포함되는 경우,
상기 송수신하는 단계는
상기 제1 노드로부터 메시지를 수신하는 동작 및 상기 제1 노드에 메시지를 전송하는 동작 중 적어도 하나를 수행하는 하나 이상의 노드와 관련된 정보를 상기 기지국으로 전송하는 단계
를 포함하는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 제1 노드의 방송 범위에 상기 기지국이 포함되지 않는 경우,
상기 송수신하는 단계는
상기 제1 노드로부터 메시지를 수신하는 동작 및 상기 제1 노드에 메시지를 전송하는 동작 중 적어도 하나를 수행하는 하나 이상의 노드와 관련된 정보를 상기 하나 이상의 노드 중 상기 기지국으로부터 수신한 신호의 세기가 가장 큰 노드로 전송하는 단계
를 포함하는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 클러스터 랭크를 결정하는 단계는
상기 네트워크에 포함되는 복수의 노드들이 상기 기지국으로부터 수신한 신호들의 세기와 관련된 정보들에 기초하여 상기 클러스터 랭크를 결정하는 단계
를 포함하는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 클러스터 멤버 랭크를 결정하는 단계는
상기 제1 클러스터에 포함되는 하나 이상의 노드 간에 송수신되는 신호의 세기와 관련된 정보, 상기 하나 이상의 노드 간의 링크 품질과 관련된 정보, 및 상기 하나 이상의 노드의 잔류 에너지(Residual Energy)와 관련된 정보 중 적어도 하나에 기초하여 상기 클러스터 멤버 랭크를 결정하는 단계
를 포함하는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 제1 클러스터에 포함되는 하나 이상의 노드의 방송 범위 및 상기 하나 이상의 노드의 클러스터 멤버 랭크 중 적어도 하나에 기초하여 상기 제1 클러스터의 클러스터 헤드(CH, Cluster Head)가 결정되는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 제1 클러스터의 클러스터 헤드가 데이터를 전송할 수 있는 최대 범위에 상기 기지국이 포함되는 경우,
상기 데이터의 전송 경로는
상기 제1 노드에서 상기 제1 클러스터의 클러스터 헤드를 통해 상기 기지국으로 상기 데이터를 전송하도록 결정되는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 제1 클러스터의 클러스터 헤드가 데이터를 전송할 수 있는 최대 범위에 상기 기지국이 포함되지 않는 경우,
상기 데이터의 전송 경로는
상기 제1 노드에서 상기 제1 클러스터의 클러스터 헤드 및 하나 이상의 중계 클러스터 헤드를 통해 상기 기지국으로 상기 데이터를 전송하도록 결정되고,
상기 하나 이상의 중계 클러스터 헤드는 상기 복수의 클러스터들의 클러스터 헤드들 중 상기 제1 클러스터의 클러스터 헤드보다 클러스터 헤드 랭크가 더 높은 클러스터 헤드 중 적어도 하나를 포함하도록 결정되는,
제1 노드의 동작 방법.
- 제12항에 있어서,
상기 클러스터 헤드 랭크와 관련하여,
상기 복수의 클러스터들에 포함되는 제2 클러스터의 클러스터 헤드 랭크는
상기 제2 클러스터의 헤드가 상기 기지국으로부터 수신한 신호의 세기와 관련된 정보 및 상기 제2 클러스터의 잔류 에너지와 관련된 정보 중 적어도 하나에 기초하여 결정되는,
제1 노드의 동작 방법.
- 제1항에 있어서,
상기 데이터의 재전송 요청을 수신하는 경우,
상기 데이터를 상기 전송 경로에 기초하여 재전송하는 단계
를 더 포함하는,
제1 노드의 동작 방법.
- 제1 항에 있어서,
상기 데이터의 재전송 요청을 수신한 횟수가 미리 정해진 임계값을 초과하는 경우,
상기 데이터가 손실되었다고 판단하고, 상기 데이터를 재전송하지 않는 단계
를 더 포함하는,
제1 노드의 동작 방법.
- 제1 노드 및 제2 노드를 포함하는 네트워크에서 상기 제1 노드에 있어서,
프로그램이 기록된 메모리; 및
상기 프로그램을 수행하는 프로세서
를 포함하고,
상기 프로그램은,
클러스터링과 관련된 정보를 송수신하는 단계-상기 정보에 기초하여 상기 네트워크에 포함된 노드들의 연결 관계를 나타내는 그래프가 생성되고, 상기 그래프 내 모서리의 수에 따른 품질 함수에 기초하여 상기 그래프를 부분 그래프들로 분할함으로써 상기 클러스터링이 수행됨-;
상기 클러스터링에 의하여 생성된 복수의 클러스터들과 관련하여, 상기 제1 노드를 포함하는 제1 클러스터의 클러스터 랭크를 결정하는 단계;
상기 제1 클러스터와 관련하여, 상기 제1 노드의 클러스터 멤버 랭크를 결정하는 단계; 및
상기 클러스터 랭크 및 상기 클러스터 멤버 랭크에 기초하여 결정되는 데이터의 전송 경로에 기초하여, 상기 데이터를 기지국으로 전송하는 단계
를 수행하는,
제1 노드.
- 제16항에 있어서,
상기 송수신하는 단계는
방송을 지시하는 제1 메시지를 상기 기지국으로부터 수신하는 단계;
상기 제1 메시지의 신호의 세기와 관련된 정보를 획득하는 단계;
상기 신호의 세기에 기초하여 상기 제1 노드와 상기 기지국 간의 거리와 관련된 정보를 획득하는 단계; 및
상기 제1 노드의 방송 범위에 포함되는 하나 이상의 노드에 상기 세기와 관련된 정보 및 상기 거리와 관련된 정보 중 적어도 하나를 포함하는 제2 메시지를 전송하는 단계-상기 방송 범위는 상기 제1 노드가 메시지를 전송할 수 있는 최대 범위보다 좁거나 같음-
를 포함하는,
제1 노드.
- 제16항에 있어서,
상기 제1 클러스터에 포함되는 하나 이상의 노드의 방송 범위 및 상기 하나 이상의 노드의 클러스터 멤버 랭크 중 적어도 하나에 기초하여 상기 제1 클러스터의 클러스터 헤드(CH, Cluster Head)가 결정되는,
제1 노드.
- 제16항에 있어서,
상기 제1 클러스터의 클러스터 헤드가 데이터를 전송할 수 있는 최대 범위에 상기 기지국이 포함되는 경우,
상기 데이터의 전송 경로는
상기 제1 노드에서 상기 제1 클러스터의 클러스터 헤드를 통해 상기 기지국으로 상기 데이터를 전송하도록 결정되는,
제1 노드.
- 제16항에 있어서,
상기 제1 클러스터의 클러스터 헤드가 데이터를 전송할 수 있는 최대 범위에 상기 기지국이 포함되지 않는 경우,
상기 데이터의 전송 경로는
상기 제1 노드에서 상기 제1 클러스터의 클러스터 헤드 및 하나 이상의 중계 클러스터 헤드를 통해 상기 기지국으로 상기 데이터를 전송하도록 결정되고,
상기 하나 이상의 중계 클러스터 헤드는 상기 복수의 클러스터들의 클러스터 헤드들 중 상기 제1 클러스터의 클러스터 헤드보다 클러스터 헤드 랭크가 더 높은 클러스터 헤드 중 적어도 하나를 포함하도록 결정되는,
제1 노드.
- 제20항에 있어서,
상기 클러스터 헤드 랭크와 관련하여,
상기 복수의 클러스터들에 포함되는 제2 클러스터의 클러스터 헤드 랭크는
상기 제2 클러스터의 헤드가 상기 기지국으로부터 수신한 신호의 세기와 관련된 정보 및 상기 제2 클러스터의 잔류 에너지와 관련된 정보 중 적어도 하나에 기초하여 결정되는,
제1 노드.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190058205A KR102219410B1 (ko) | 2019-05-17 | 2019-05-17 | 클러스터링 기반의 데이터 전송 경로 결정 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190058205A KR102219410B1 (ko) | 2019-05-17 | 2019-05-17 | 클러스터링 기반의 데이터 전송 경로 결정 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200132526A KR20200132526A (ko) | 2020-11-25 |
KR102219410B1 true KR102219410B1 (ko) | 2021-02-24 |
Family
ID=73645682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190058205A KR102219410B1 (ko) | 2019-05-17 | 2019-05-17 | 클러스터링 기반의 데이터 전송 경로 결정 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102219410B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102404984B1 (ko) * | 2021-03-10 | 2022-06-02 | 홍익대학교세종캠퍼스산학협력단 | 클러스터 기반의 정보 중심 네트워킹 통신 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100856882B1 (ko) * | 2007-05-21 | 2008-09-05 | 성균관대학교산학협력단 | 대규모 센서 네트워크에서의 효율적인 에너지 소비를 위한동심원 형태의 클러스터링 방법 |
KR101587743B1 (ko) * | 2014-12-31 | 2016-01-21 | 이화여자대학교 산학협력단 | 데이터 전송을 위한 클러스터링 방법 및 클러스터 제어 서버 및 컴퓨터에서 판독 가능한 기록 매체 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090092976A (ko) * | 2008-02-28 | 2009-09-02 | 성균관대학교산학협력단 | 무선 센서 네트워크 및 이를 위한 클러스터링 방법 |
KR101054679B1 (ko) * | 2009-11-18 | 2011-08-08 | 연세대학교 산학협력단 | 센서 네트워크 및 센서 네트워크의 클러스터링 방법 |
KR20140044626A (ko) * | 2012-10-05 | 2014-04-15 | 목포대학교산학협력단 | 센서 위치 속성과 잔존 에너지를 이용한 선박 usn 클러스터링 방법 |
-
2019
- 2019-05-17 KR KR1020190058205A patent/KR102219410B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100856882B1 (ko) * | 2007-05-21 | 2008-09-05 | 성균관대학교산학협력단 | 대규모 센서 네트워크에서의 효율적인 에너지 소비를 위한동심원 형태의 클러스터링 방법 |
KR101587743B1 (ko) * | 2014-12-31 | 2016-01-21 | 이화여자대학교 산학협력단 | 데이터 전송을 위한 클러스터링 방법 및 클러스터 제어 서버 및 컴퓨터에서 판독 가능한 기록 매체 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102404984B1 (ko) * | 2021-03-10 | 2022-06-02 | 홍익대학교세종캠퍼스산학협력단 | 클러스터 기반의 정보 중심 네트워킹 통신 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20200132526A (ko) | 2020-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6730698B2 (ja) | 無線ネットワークにおける指向性送信によるデータパケットのルーティング | |
CN105993186B (zh) | 虚拟多点收发机的***和方法 | |
Gong et al. | Low-latency SINR-based data gathering in wireless sensor networks | |
US20220167180A1 (en) | Method and device for managing beam in sidelink communication | |
ES2959526T3 (es) | Tarea o tareas relacionadas con el control de potencia de enlace ascendente dependiente de estado en el aire para UE aéreos | |
KR102094718B1 (ko) | 무선 네트워크에서 학습에 기반한 중계 노드 선택 방법 및 중계 장치 | |
Sami et al. | A survey and taxonomy on medium access control strategies for cooperative communication in wireless networks: Research issues and challenges | |
Sotheara et al. | Effective data gathering and energy efficient communication protocol in wireless sensor networks employing UAV | |
Zhai et al. | Uncoordinated cooperative communications with spatially random relays | |
JP2008228179A (ja) | 無線装置 | |
US11765639B2 (en) | Controlling tree topology over mesh topology based on autonomous decentralized control | |
US20240121817A1 (en) | Electronic device, communication method and storage medium | |
US11902873B2 (en) | System, method and apparatus for managing network resources | |
US9485629B2 (en) | Confirmed link level broadcast using parallel receivers | |
KR102219410B1 (ko) | 클러스터링 기반의 데이터 전송 경로 결정 방법 및 장치 | |
Radi et al. | Network initialization in low-power wireless networks: a comprehensive study | |
US20170048896A1 (en) | Method for selecting a device to act as a relay device between a first and a second node based on received signal quality measurements | |
JP6287574B2 (ja) | 通信方法、通信システム及び通信装置 | |
Awang et al. | RSSI-based forwarding for multihop wireless sensor networks | |
Hung et al. | Low latency communication for Internet of Things | |
EP2908597A1 (en) | Wireless communication network node and method | |
JP5493131B2 (ja) | パケット通信システム、放射制御装置、アンテナ制御方法及びプログラム | |
US10135502B2 (en) | Method and apparatus for hierarchically cooperative V-MIMO in wireless communication system | |
CN109495946B (zh) | 一种无线传感器网络的数据传输方法及装置 | |
WO2022156961A1 (en) | Apparatuses and methods for facilitating qcl source reference signal reception in beam based unlicenced operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |