KR20190094069A - 사물 인터넷 환경에서 자율 구성 네트워킹 방법 및 이를 수행하는 장치 - Google Patents

사물 인터넷 환경에서 자율 구성 네트워킹 방법 및 이를 수행하는 장치 Download PDF

Info

Publication number
KR20190094069A
KR20190094069A KR1020180074130A KR20180074130A KR20190094069A KR 20190094069 A KR20190094069 A KR 20190094069A KR 1020180074130 A KR1020180074130 A KR 1020180074130A KR 20180074130 A KR20180074130 A KR 20180074130A KR 20190094069 A KR20190094069 A KR 20190094069A
Authority
KR
South Korea
Prior art keywords
iot
coordinator
network
networking
candidate
Prior art date
Application number
KR1020180074130A
Other languages
English (en)
Other versions
KR102468313B1 (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 US16/132,634 priority Critical patent/US10587477B2/en
Publication of KR20190094069A publication Critical patent/KR20190094069A/ko
Application granted granted Critical
Publication of KR102468313B1 publication Critical patent/KR102468313B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

사물 인터넷 환경에서 자율 구성 네트워킹 방법 및 이를 수행하는 장치가 개시된다. 일 실시예에 따른 IoT 환경에서 자율 구성 네트워킹 방법은 IoT 장치의 하나 이상의 이웃 IoT 장치로부터 이웃 장치 정보를 수신하는 단계와, 상기 이웃 장치 정보에 기초하여 IoT 장치의 장치 정보를 업데이트하는 단계와, 상기 장치 정보에 포함된 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 잔여 에너지의 비율 중에서 적어도 하나에 기초하여 상기 IoT 장치의 코디네이터 후보인지 여부를 결정하는 단계를 포함하고, 상기 코디네이터 후보는 네트워크의 게이트웨이 역할을 수행하는 코디네이터의 후보이다.

Description

사물 인터넷 환경에서 자율 구성 네트워킹 방법 및 이를 수행하는 장치{A METHOD FOR SELF-ORGANIZINATION NETWORKING (SON) IN INTERNET OF THINGS (IOT) AND AN APPARATUS PERFORMING THE SAME}
아래 실시예들은 사물 인터넷의 저전력 네트워킹 분야 중에서 이기종 단말기들로 구성되는 자율 구성 네트워킹을 위한 단말 간 네트워크 구성 및 탐색 방법, 및 이를 수행하는 장치에 관한 것이다.
IoT 환경에서 네트워크 구성 및 조건들(network configuration and conditions; 예를 들어, 네트워크 배치(network deployment), 네트워크 크기(network size), 네트워크 장치 수(the number of network device), 연결성(connectivity), 멀티-홉 통신(multi-hop communication), 트래픽 패턴(traffic pattern), 보안 수준(security level), 이동성(mobility) 및 QoS(Quality of Service))은 기존 네트워크들(conventional networks)과 다를 수 있다. 예를 들어, 인프라-미지원 사물 인터넷 영역 네트워크(infrastructure-unsupported IoT area network)은 기존 인프라 네트워크들(pre-existing infrastructure networks)와 독립적이다.
IoT에서 자율 구성 네트워킹(Self-organization networking(SON))은 이기종 네트워크 장치들(heterogeneous networked devices) 간의 네트워크 프로토콜들을 포함하는 통신 프로세스를 의미한다. 기존 네트워크들(conventional networks)에 대한 기존 프로세스(existing process)는 인프라-미지원 사물 인터넷 영역 네트워크에서 이기종 네트워크 장치들의 특성들(characteristics)을 완전히 지원하거나 고려하지 않는다. 즉, IoT에 대한 SON이 필요하다.
실시예들은 종래 동종 통신 기술만을 고려했던 자율 구성 네트워킹의 문제를 해결하기 위해 이기종 단말을 연결할 수 있는 통신 단말 탐색 및 네트워크 구성 방법을 제공할 수 있다.
일 실시예에 따른 IoT 환경에서 자율 구성 네트워킹 방법은 IoT 장치의 하나 이상의 이웃 IoT 장치로부터 이웃 장치 정보를 수신하는 단계와, 상기 이웃 장치 정보에 기초하여 IoT 장치의 장치 정보를 업데이트하는 단계와, 상기 장치 정보에 포함된 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 잔여 에너지의 비율 중에서 적어도 하나에 기초하여 상기 IoT 장치의 코디네이터 후보인지 여부를 결정하는 단계를 포함하고, 상기 코디네이터 후보는 네트워크의 게이트웨이 역할을 수행하는 코디네이터의 후보이다.
상기 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 상기 잔여 에너지의 비율 순서로 순차적으로 고려될 수 있다.
상기 결정하는 단계는 상기 네트워크 인터페이스의 수가 2이상인 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하는 단계와, 상기 네트워크 인터페이스에 연결된 링크가 2이상인 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하는 단계와, 상기 잔여 에너지의 비율이 에너지 임계값보다 큰 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하는 단계를 포함할 수 있다.
상기 결정하는 단계는 상기 네트워크 인터페이스 마다 수행될 수 있다.
상기 방법은 결정 결과에 기초하여 상기 장치 정보에 포함된 코디네이터 후보인지 판단하기 위한 비트 정보를 업데이트하는 단계를 더 포함할 수 있다.
상기 방법은 네트워크 특성에 기초하여 코디네이터 후보이면서 자신의 장치 정보를 송신하는 복수의 이웃 IoT 장치들 중에서 코디네이터를 결정하는 단계를 더 포함할 수 있다.
상기 네트워크 특성은 에너지, 네트워크 범위, 및 네트워크 속도 중에서 적어도 하나를 포함할 수 있다.
상기 코디네이터를 결정하는 단계는 에너지 중심 네트워킹(energy-centric networking)이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 잔여 에너지의 비율이 가장 큰 값을 갖는 장치 또는 에너지를 소비하는 비율(a rate of consuming energy for a certain time)이 가장 작은 값을 갖는 장치를 상기 코디네이터로 결정하는 단계와, 광 대역 네트워킹이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 네트워크 인터페이스의 범위가 가장 넓은 장치를 상기 코디네이터로 결정하는 단계와, 통신 속도 및 성능이 필요한 네트워킹이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 데이터 전송 속도가 가장 큰 장치를 상기 코디네이터로 결정하는 단계를 포함할 수 있다.
상기 에너지 중심 네트워킹, 상기 광 대역 네트워킹, 상기 통신 속도 및 성능이 필요한 네트워킹 순서로 순차적으로 고려될 수 있다.
상기 코디네이터를 결정하는 단계는 상기 네트워크 인터페이스 마다 수행될 수 있다.
일 실시예에 따른 자율 구성 네트워킹을 위한 IoT 장치는 하나 이상의 네트워크 인터페이스와, 상기 네트워크 인터페이스를 통해 하나 이상의 이웃 IoT 장치와 네트워크를 구성하기 위한 인스트럭션들을 실행하기 위한 프로세서를 포함하고, 상기 인스트럭션들이 실행될 때, 상기 프로세서는 IoT 장치의 하나 이상의 이웃 IoT 장치로부터 이웃 장치 정보를 수신하고, 상기 이웃 장치 정보에 기초하여 IoT 장치의 장치 정보를 업데이트하고, 상기 장치 정보에 포함된 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 잔여 에너지의 비율 중에서 적어도 하나에 기초하여 상기 IoT 장치의 코디네이터 후보인지 여부를 결정하고, 상기 코디네이터 후보는 상기 네트워크의 게이트웨이 역할을 수행하는 코디네이터의 후보이다.
상기 프로세서는 상기 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 상기 잔여 에너지의 비율 순서로 순차적으로 고려할 수 있다.
상기 프로세서는 상기 네트워크 인터페이스의 수가 2이상인 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하고, 상기 네트워크 인터페이스에 연결된 링크가 2이상인 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하고, 상기 잔여 에너지의 비율이 에너지 임계값보다 큰 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정할 수 있다.
상기 프로세서는 상기 네트워크 인터페이스마다 상기 상기 IoT 장치의 코디네이터 후보인지 여부를 결정할 수 있다.
상기 프로세서는 결정 결과에 기초하여 상기 장치 정보에 포함된 코디네이터 후보인지 판단하기 위한 비트 정보를 업데이트할 수 있다.
상기 프로세서는 네트워크 특성에 기초하여 코디네이터 후보이면서 자신의 장치 정보를 송신하는 복수의 이웃 IoT 장치들 중에서 코디네이터를 결정할 수 있다.
상기 네트워크 특성은 에너지, 네트워크 범위, 및 네트워크 속도 중에서 적어도 하나를 포함할 수 있다.
상기 프로세서는 에너지 중심 네트워킹(energy-centric networking)이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 잔여 에너지의 비율이 가장 큰 값을 갖는 장치 또는 에너지를 소비하는 비율(a rate of consuming energy for a certain time)이 가장 작은 값을 갖는 장치를 상기 코디네이터로 결정하고, 광 대역 네트워킹이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 네트워크 인터페이스의 범위가 가장 넓은 장치를 상기 코디네이터로 결정하고, 통신 속도 및 성능이 필요한 네트워킹이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 데이터 전송 속도가 가장 큰 장치를 상기 코디네이터로 결정할 수 있다.
상기 프로세서는 상기 에너지 중심 네트워킹, 상기 광 대역 네트워킹, 상기 통신 속도 및 성능이 필요한 네트워킹 순서로 순차적으로 고려할 수 있다.
상기 프로세서는 상기 네트워크 인터페이스마다 상기 코디네이터를 결정할 수 있다.
도 1은 일 실시예에 따른 인프라-미지원 사물 인터넷 영역 네트워크의 예들을 나타낸다.
도 2는 일 실시예에 따른 이기종 IoT 장치들간 자율 구성 네트워킹으로 형성된 네트워크의 예이다.
도 3은 일 실시예에 따른 SON 기능 아키텍처를 나타낸다.
도 4는 일 실시예에 따른 IoT 장치가 브로드캐스트하는 자원 정보의 일 예를 나타낸다.
도 5는 일 실시예에 따른 코디네이터 후보를 탐색하는 동작을 설명하기 위한 플로우 차트이다.
도 6은 일 실시예에 따른 네트워크를 형성하기 위해 코디네이터를 탐색하는 동작을 설명하기 위한 플로우 차트이다.
도 7은 사물인터넷에서의 이기종 자율 네트워크 구성을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 IoT 장치의 개략적인 블록도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
제1 또는 제2등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해서 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 실시예의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
사물인터넷과 같은 동적 위상 변화가 다양한 네트워크에서는 본 발명이 적용될 가능성이 높으며, 다양한 무선 통신 기술들이 함께 휴대폰 등과 같은 기기에 모두 탑재된 상황에서 이를 이용한 서비스 및 부가가치가 기대되는 이점이 있다.
도 1은 일 실시예에 따른 인프라-미지원 사물 인터넷 영역 네트워크의 예들을 나타낸다.
도 1을 참조하면, 사물 인터넷의 특성으로 인해 네트워크를 구성하는 IoT 장치들은 동종(homogeneous) 또는 이기종(heterogeneous)일 수 있다. 인프라-미지원 사물 인터넷 영역 네트워크 내에서 IoT 장치들은 도 1에 도시된 바와 같이 피어-투-피어(peer-to-peer) 또는 서버-클라이언트(server-client) 연결(connectivity)을 위해 제공될 수 있다.
동종의 IoT 장치들로 구성된 네트워크인 경우, 도 1의 (a)와 같이, 모든 연결 가능성이 있는 이웃 IoT 장치들과 링크를 형성할 수 있다. 이기종의 IoT 장치들로 구성된 네트워크인 경우, 도 1의 (b)와 같이, 단순히 이웃 IoT 장치가 근접되어 있다고 해서 무조건 링크를 형성할 수는 없다. IoT 장치 간 서로 다른 종류의 무선 네트워크 기술(예를 들어, 도 1에서 A-type IoT 장치는 블루투스, B-type IoT 장치는 IEEE 802.15.4을 사용)을 사용할 수 있기 때문이다.
인프라-미지원 사물 인터넷 영역 네트워크에서, IoT 장치들은 인프라 엔티티들(infrastructure entities)에 의존하지 않고 네트워크 구성(network configuration) 및 통신 서비스에 대한 이웃 노드 탐색(neighbor node discovery) 및 라우팅과 같은 다양한 작업을 스스로 수행한다.
예를 들어, IoT 장치들(예를 들어, 네트워크 기기들) 중에서 호스트와 라우터와 같은 역할을 할 수 있는 장치들이 탐색될 수 있다. 호스트는 네트워크 상에 포함된 모든 통신 단말로써, 단 하나의 이웃 노드와 링크를 형성할 수 있다. 라우터는 네트워크 상에 포함된 통신 단말 중에서 두 개 이상의 이웃 단말과 링크를 형성하여 두 이웃 단말 중간에서 연결 혹은 데이터를 상대방으로 포워딩할 수 있다. 라우터는 코디네이터로 칭할 수 있다.
IoT 환경의 네트워킹 관점에서, 도 1의 (b)와 같이 모든 것이 글로벌 정보와, 서로 다른 하드웨어 플랫폼 및 네트워크를 기반으로 하는 통신 인프라와 장치들과 상호 연결될 수 있습니다. IoT 장치들의 상태는 위치 및 속도를 포함하는 IoT 장치들의 컨텍스트(context)뿐만 아니라 슬리핑(sleeping) 및 활성(walking up), 연결(connected) 및/또는 연결 해제(disconnected)와 같이 동적으로 변할 수 있다.
서로 다른 어플리케이션 도메인 및 통신 환경(예를 들어, 도 1의 (b)와 같은 환경)에 적응하기 위해, 자율 구성 네트워킹(Self-organization networking(SON))은 IoT의 네트워킹 기능에서 지원되어야 한다. 도 1의 (b)와 같은 네트워크 환경에서, SON에 의해서, 네트워크를 구성하는 모든 IoT 장치들이 상호 연동을 통해 상호간의 연결성을 확보하고 데이터 송수신 및 자율적 네트워크 제어가 수행될 수 있다.
SON은 자체 관리(self-management), 자가 구성(self-configuring), 자가 치유(self-healing), 자체 최적화(self-optimizing) 및 자체 보호 기술(self-protecting techniques) 및/또는 메커니즘을 포함할 수 있다. 또한, 정상적인 네트워크 운영을 보장하기 위해, 관리성(manageability)이 IoT에서 필요하다. IoT 애플리케이션은 보통 사람들의 참여없이 자동으로 작동하지만, 전체 운영 프로세스는 관련 당사자(relevant parties)에 의해 관리될 수 있다.
IoT에서 사물 간의 연결성을 실현하기 위해, 연결 기능(connectivity capabilities)은 특정 응용 프로그램 도메인과 독립적이어야 한다. 이기종 통신 기술(heterogeneous communication technology)과 종단 간 인텔리전스(end-to-end intelligence)의 통합(integration)은 "통신 인텔리전스(intelligence of communications)"와 "서비스 인텔리전스(intelligence of services)"와 관련하여 고려될 수 있다. 여기에는 위치 기반 통신(location based communication) 및 컨텍스트 기반 통신(context based communication)에 대한 고려 사항이 포함될 수 있다.
SON은 자체 구성, 자체 최적화, 자체 복구 및 자체 보호를 포함하여 네트워크의 자체 관리를 수행한다. 이는 인간의 의사 결정과 중앙 집중식 네트워크 관리 시스템에 의존하지 않고 네트워크를 운영하고 최적화하는 것이다.
IoT 환경에서 SON은 IoT 서비스 지원을 위해 네트워크 토폴로지를 구성하고 최적화하는 것이다. IoT에 대한 SON은 인프라-미지원 사물 인터넷 영역 네트워크의 동적 네트워크 상황(dynamic network circumstance)을 고려하여 네트워크 토폴로지(network topology), 자체 장치 탐색(self-device discovery) 및 자체 최적화(self-optimization)를 위한 자체 구성(self-configuration)에 중점을 둘 수 있다.
IoT 장치들은 다양한 기능(또는 능력, capability)을 포함할 수 있다. 다양한 기능은 프로세싱, 메모리, 배터리 전력(battery power), 이동성(mobility), 비트 전송률(bit rate), 전송 범위(transmission range) 등을 포함할 수 있다. 또한, 도 1의 (a)와 같이, IoT 장치들은 서로 다른 무선 액세스 기술을 가질 수 있다. 이러한 자원의 특성은 SON의 수행에 영향을 미칠 수 있다. 예를 들어, SON 기능이 에너지 효율적 네트워킹을 위해 결정되었기 때문에, IoT 장치의 배터리 전력이 가장 중요한 고려 사항 중 하나 일 수 있다. 이에, 이러한 자원의 특성을 고려될 수 있다.
상술한 바와 같이, 인프라-미지원 사물 인터넷 영역 네트워크에서 IoT에 대한 SON은 기존 네트워크 인프라구조 상의 존재하는 라우터와 같은 통신 기기 및 그들의 통신 기법 등의 도움을 필요하지 않고 네트워킹을 할 수 있다. 인프라-미지원 사물 인터넷 영역 네트워크에서 IoT에 대한 SON의 요구 사항은 다음과 같을 수 있다.
1) 이기종 IoT 네트워크 지원(support for heterogeneous IoT neworks)
IoT 이기종 네트워크 내 IoT 장치는 다양한 기능과 액세스 기술로 구성될 수 있다. SON은 이기종의 IoT 장치의 특성에 부합될 수 있다.
2) SON의 분권화(decentralization of SON)
SON 기능은 IoT 서비스에 따라 적절한 IoT 장치에 분배될 수 있다. IoT 장치는 서로 다른 서비스에 대해 동시에 여러 역할을 수행할 수 있습니다. IoT 장치가 복수의 역할을 갖는 경우, IoT 서비스 요구 사항 및 조건에 따라 역할이 변경될 수 있다. 이에, SON 기능은 서비스 관리를 위해 정적 IoT 장치로 집중되지 않고 적절한 IoT 장로 분배될 수 있다.
3) 다양한 네트워킹 성능 수준 지원(Support for different networking performance levels)
SON은 다양한 IoT 서비스에 대해 다양한 성능 수준의 분산 기능을 지원할 수 있다. 예를 들어, 이러한 성능은 에너지 중심의 IoT 서비스(energy-centric IoT services), 프로세스(또는 시간) 중심의 IoT 서비스(process(or time)-centric IoT services) 등을 기반으로 할 수 있다. 다양한 최적화 옵션은 IoT 서비스의 네트워킹 성능에 따라 다른 결과를 제공할 수 있다.
4) 네트워킹을 위한 자체 구성 및 자체 관리(Self-configuration and self-management for networking)
SON은 네트워킹을 위해 자체 구성 및 자체 관리를 지원할 수 있다. 자체 구성에는 식별(identification), 이웃 및 경로 탐색(neighbor & route discovery) 등과 같은 네트워킹을 시작하는 모든 종류의 절차를 포함할 수 있다. 자체 관리는 네트워크 시작 후 데이터 라우팅, 혼잡 제어(congestion control) 등을 포함할 수 있다.
5) 네트워크 견고성 지원(Support for network robustness)
SON은 자체적으로 네트워크 장애 복구(recovery for network failures)를 지원할 수 있다. 네트워킹 장애가 발생하면 인접한 IoT 장치는 장애를 즉시 감지하고 장애가 발생한 장치 대신 다른 장치를 발견할 수 있다. 백업 장치가 있으면 백업 장치가 기존 구성을 복구할 수 있다.
예를 들어, IoT 장치들이 이동하거나 전원이 부족한 경우 라우팅 경로의 장애와 같은 네트워킹 장애가 발생할 수 있다. IoT 장치들이 오류를 감지하자 마자, IoT 장치들은 네트워크 견고성을 위한 또 다른 라우팅 경로를 찾을 수 있다.
도 2는 일 실시예에 따른 이기종 IoT 장치들간 자율 구성 네트워킹으로 형성된 네트워크의 예이다.
도 2를 참조하면, 모든 IoT 장치들은 이웃 IoT 장치와의 연결성이 가능할 경우, 이웃 IoT 장치와의 통신 링크를 형성할 수 있다. 서로 다른 기종의 통신 단말을 상호 연결하기 위해, 두 개 이상의 다른 통신 기술을 탑재한 하나의 IoT 장치가 필요하다. 예를 들어, 스마트폰과 같은 경우, LTE, 블루투스, WiFi, NFC 등 서로 다른 통신 기술을 모두 탑재하고 있으며, 용도에 따라서 다르게 활용하고 있다. 이러한 IoT 장치들이 라우터의 역할을 할 경우, 더 많은 IoT 장치들이 하나의 네트워크를 효율적으로 구성할 수 있다.
SON의 기능은 각 IoT 장치에 분산되어 할당되며, 이러한 기능은 네트워크를 구축하고 유지하기 위해 필요한 정보를 교환할 수 있다. 이를 위해, IoT 장치들은 역할에 따라 두 그룹으로 분류될 수 있다.
- IoT 장치들(도 2의 A-type 및 B-type IoT 장치)
- IoT 코디네이터들(도 2의 A&B-type 장치)
IoT 코디네이터는 모든 IoT 장치들 중에서 선출된 IoT 장치일 수 있다. IoT 코디네이터는 다른 IoT 장치들에게 네트워킹을 위한 라우팅 경로들을 구성할 수 있다. 또한, IoT 코디네이터는 인접한 IoT 장치들(예를 들어, 인접한 다른 네트워크를 구성하는 장치들)에 대해 게이트웨이를 수행할 수 있다. IoT 코디네이터는 다양한 IoT 장치에 연결할 수 있는 기능을 포함할 수 있다.
IoT 코디네이터에 자격을 부여하는 기능(IoT 코디네이터로 선출되는 것)은 성능 옵션에 따라 결정될 수 있다. 성능 옵션은 미리 정의된 최적화 정책에 의해 달성될 수 있다. 최적화 정책은 서비스 요구 사항에 따라 결정될 수 있다.
사물 인터넷 환경에서, SON의 핵심은 복수의 다른 통신 기술을 탑재한 IoT 장치(예를 들어, 도 2의 A&B-type 장치)를 가장 우선적으로 탐색하는 것이고, 이를 중심으로 네트워크 활용 목적에 맞도록 특성 있는 네트워크를 구성하는 것이다.
도 3은 일 실시예에 따른 SON 기능 아키텍처를 나타낸다.
도 3을 참조하면, SON의 기능은 코디네이션 기능(Coordination functionality) 및 네트워크 기능(Network functionality)으로 구성될 수 있다.
SON은 종래의 네트워킹 보다 상대적으로 간단한 구성으로 인해 서비스의 특성에 기초하여 보다 효율적이고 역동적일 수 있다.
미리 정의된 최적화 정책은 특정 IoT 서비스 및 응용 프로그램의 요구 사항에 따라 결정되며(또는 작성되며), 코디네이션 기능 및 네트워크 기능은 최적화 정책에 의해 작동되기 시작할 수 있다.
최적화 정책의 역할은 서비스의 현재 상태와 요구 사항을 분석하고, 요구 사항과 제약 조건을 기반으로 최적의 정책을 결정하는 것이다. 최적화 정책의 결정은 IoT 서비스 요구 사항의 특성에 따라 달라질 수 있다. IoT 서비스가 에너지 효율적인 네트워킹을 필요로 하는 경우, 모든 절차는 에너지 절약에 초점을 맞출 수 있다. IoT 서비스가 고성능(예를 들어, 고속 또는 대용량 데이터 처리)을 필요로 하는 경우, SON은 고성능을 위해 구축될 수 있다. 이러한 정책은 필요한 IoT 서비스의 특성에 따라 다양 할 수 있다.
코디네이션 기능은 네트워크 토폴로지 구축을 위한 역할, 예를 들어 코디네이터 선거(coordinator election), 두 개의 인접한 장치 사이의 연결을 구축하기 위한 초기화 및 구성, 및 식별(identification))을 수행할 수 있다.
1) 코디네이터 선출(Coordinator election)
도 3에 도시된 바와 같이, SON은 코디네이터 측면에서 시작될 수 있다. 코디네이터는 인접한 IoT 장치를 관리하고 패킷을 전달하는 두 가지 중요한 역할을 수행할 수 있다. 가장 적합한 IoT 장치가 코디네이터가 되어야한다.
코디네이터의 자격은 최적화 정책에 의해 결정될 수 있다. 코디네이터는 관리 역할을 위해 인접한 IoT 장치들의 자원 정보를 수집할 수 있다. 예를 들어, 자원 정보는 잔여 에너지(remaining energy) 및 처리 성능(processing performance) 등을 포함할 수 있다
자원 정보는 인접 IoT 장치들을 연결하고 오류를 복구하는 데 이용될 수 있다. 자원 정보가 수집된 후, 코디네이터는 모든 인접한 IoT 장치를 연결하기 시작하고, 네트워크 토폴로지(예를 들어, 스타 토폴로지(star topology)는 코디네이터의 관점에서 구축될 수 있다.
코디네이터는 인접한 IoT 장치들에 대해 게이트웨이 역할을 수행할 수 있다. 코디네이터들 중 하나가 실패하는 경우, 새로운 코디네이터 선출이 시작되고, IoT 장치들 중에서 다른 최상의 IoT 장치 하나가 복구 메커니즘에 의해 새로운 코디네이터가 될 수 있다.
2) 초기화 및 구성(Initialization & configurations)
모든 IoT 장치는 관리를 위해 코디네이터들 중에서 하나에 속할 수 있다(또는 연결될 수 있다). IoT 장치들은 코디네이터들 중에서 하나에 연결되고, 코디네이터에 기반하는 시작 토폴로지(start topology)는 구축될 수 있다. 이러한 연결은 데이터 전달을 위해 활용될 수 있다.
코디네이터가 선출된 후, 코디네이터는 애드버타이즈먼트 패킷(advertisement packet)을 브로드캐스트할 수 있다. 인접한 IoT 디바이스들이 애드버타이즈먼트 패킷을 수신하는 경우, 인접한 IoT 디바이스들은 코디네이터로 연결 요청 패킷(connection request packet)을 응답할 수 있다. 그런 다음, IoT 장치 간의 연결은 선출된 코디네이터를 기준으로 구축될 수 있다. 선출된 코디네이터가 실패하는 경우, 인접한 모든 IoT 장치가 끊어지고 상술된 코디네이터 선출(Coordinator election) 과정이 다시 시작될 수 있다.
3) 식별(Identification)
종래의 식별 체계 네트워킹 프로토콜은 IoT 장치(특히, 제한된(constrained) IoT 장치)에 항상 적합한 것은 아니다. 인프라-미지원 네트워크 IoT 장치는 최적화 정책에 적합한 새로운 식별 체계와 네트워킹 프로토콜을 필요하다. 새로운 식별 체계는 에너지 효율성 또는 고성능을 위해 간단해야 한다.
SON을 구축한 후, 네트워크 기능이 처리될 수 있다. 네트워크 기능은 인프라-미지원 네트워크 IoT 장치들과 데이터 통신을 가능하게 하는 것이다. 네트워크 기능은 형성된 네트워크를 기반으로 네트워크 내 IoT 장치가 데이터를 송수신하기 위한 라우팅 및 경로 탐색(routing & path discovery), 데이터를 송수신함에 있어 효율적으로 포워딩하기 위한 데이터 포워딩 및 전달(Data forwarding and delivery), 및 경로 상에 문제가 발생했을 때 이를 고치는 네트워크 복구(network recovery)의 역할을 수행할 수 있다.
1) 라우팅 및 경로 탐색(routing & path discovery)
네트워크 기능은 선출된 코디네이터 및 최적화 정책에 따라 패킷 전달을 위한 라우팅 경로를 구축할 수 있다. 코디네이터들 측면에서 네트워크 토폴로지가 구축되면, 코디네이터들 간의 연결이 생성될 수 있다. 최적화 정책에 따라 코디네이터들 간의 연결은 다른 라우팅 경로 또는 다른 네트워크 토폴로지를 구축할 수 있습니다. 그런 다음, 라우팅 경로는 소스 장치와 대상 장치 사이의 코디네이터를 기준으로 구축될 수 있다.
2) 포워딩 및 전달(Data forwarding and delivery)
데이터 전달은 유니캐스팅, 멀티캐스팅 및 브로드캐스팅을 포함한 세 가지 유형의 트래픽 패턴으로 수행될 수 있다. IoT 서비스에 고성능이 필요한 경우, 멀티 호밍(multi-homing)과 같은 네트워킹 기술이 활용될 수 있다. 모든 데이터 전달은 코디네이터에 의해 수행되며, IoT 장치는 코디네이터와 데이터를 주고받을 수 있다.
3) 네트워크 복구(network recovery)
두 가지 유형의 네트워크 오류가 있을 수 있다. 하나는 코디네이터의 실패이고, 다른 하나는 IoT 장치의 실패일 수 있다. 코디네이터들 중에서 하나가 실패하는 경우, 인접한 IoT 장치들 중에서 하나가 코디네이터가 될 수 있다. 또한, 코디네이터와 IoT 장치들 중에서 하나 간의 연결이 실패하는 경우, 코디네이터는 IoT 장치(예를 들어, 연결이 실패한 하나)에 재접속을 시도할 수 있다. 연결이 종료되면, 코디네이터는 연결 해제된 IoT 장치의 정보를 더 이상 관리하지 않을 수 있다.
도 4는 일 실시예에 따른 IoT 장치가 브로드캐스트하는 장치 정보의 일 예를 나타낸다.
모든 IoT 장치는 도 4와 같은 자체 정보, 즉 장치 정보(또는 자원 정보)를 반복적으로 브로드캐스트할 수 있다. 장치 정보에 포함되는 정보는 다음과 같을 수 있다.
Device ID는 장치 식별자를 의미할 수 있다. 예를 들어, Device ID는 IoT 장치에 부여된(또는 할당된) 식별자 번호일 수 있다.
Self는 장치가 자신의 정보를 브로드캐스트할 때, TRUE(또는 1) 값을 설정하기 위한 비트 정보를 의미할 수 있다. 예를 들어, Self는 자신의 정보인지 이웃 정보인지 판단하기 위한 것으로, “TRUE(또는 1)”은 자신의 정보를 의미하고, “FALSE(또는 0)”은 이웃 단말의 정보를 의미할 수 있다.
C.Coordinator는 장치가 코디네이터의 후보로 선출되면, TRUE (또는 1) 값을 설정하기 위한 비트 정보를 의미할 수 있다. 예를 들어, C.Coordinator는 자신이 코디네이터 후보인지 판단하기 위한 것으로, “TRUE(또는 1)”은 코디네이터 후보를 의미하고, “FALSE(또는 0)”는 일반 단말을 의미할 수 있다.
R.Energy는 잔여 에너지의 비율(a ratio of remaining energy)을 의미하고, C.Energy는 일정 시간 동안(또는 특정 시간 동안) 에너지를 소비하는 비율(a rate of consuming energy for a certain time)을 의미할 수 있다.
IF.Count는 장치가 포함하는(또는 탑재하는, 장비하는(equip)) 네트워크 인터페이스의 수를 의미하고, IF.No#N는 장치가 포함하는 네트워크 인터페이스를 식별하기 위한 시퀀스 번호를 의미하고, IF.Type: 네트워크 인터페이스의 이름(예를 들어, IEEE802.15.4, B:IEEE802.11, BLE, NFC, Z-WAVE, LoBAC 등)을 의미할 수 있다.
IF.Range는 네트워크 인터페이스의 RF 범위(예를 들어, 무선 반경(m))를 의미하고, IF.Speed는 데이터 전송 속도(bps, 예를 들어, 무선 링크 속도)를 의미하고, IF.Link는 연결된 이웃 장치들의 리스트(예를 들어, 연결된 이웃 IoT 장치들(또는 링크들, 노드들)를 의미할 수 있다.
IF.Coordinator는 연결된 코디네이터의 장치 ID를 의미할 수 있다.
IoT 장치가 이웃 IoT 장치의 장치 정보를 수신할 때마다, IoT 장치는 수신된 장치 정보에 기초하여 네트워크를 구축하기 위해 코디네이터 후보 및 연결을 탐색할 수 있다.
도 5 및 도 6을 참조하여, 장치 정보를 이용하여 네트워크를 구축하기 위해 코디네이터 후보 및 연결을 탐색하는 동작을 설명한다.
도 5는 일 실시예에 따른 코디네이터 후보를 탐색하는 동작을 설명하기 위한 플로우 차트이다.
IoT 장치는 하나 이상의 이웃 IoT 장치로부터 이웃 장치 정보의 수신 여부를 주기적으로 확인할 수 있다(510).
IoT 장치는 이웃 IoT 장치의 이웃 장치 정보의 업데이트 여부를 결정할 수 있다(520). 이때, 이웃 IoT 장치가 리스트(예를 들어, 연결된 이웃 장치들의 리스트)에 존재하는 경우, IoT 장치는 기존 이웃 장치 정보를 수신된 이웃 장치 정보(예를 들어, 이웃 IoT 장치로부터 가장 최근에 수신한 장치 정보)로 업데이트할 수 있다(523). 이웃 IoT 장치가 리스트에 존재하지 않는 경우, IoT 장치는 새롭게 이웃 IoT 장치로부터 수신한 이웃 장치 정보를 추가할 수 있다(525).
IoT 장치는 이웃 IoT 장치로부터 수신된 이웃 장치 정보가 이웃 IoT 장치의 장치 정보(즉, 이웃 IoT 장치의 자신의 장치 정보)인지 판단할 수 있다(530). 예를 들어, IoT 장치는 이웃 장치 정보에 포함된 Self의 비트 정보를 확인하여 이웃 IoT 장치의 장치 정보인지 판단할 수 있다.
이웃 장치 정보가 이웃 IoT 장치의 장치 정보인 경우, IoT 장치는 이웃 IoT 장치의 장치 식별자를 자신의 장치 정보의 IF.No#N에 대응하는 IF.Link에 추가할 수 있다(540). 이웃 IoT 장치는 IoT 장치가 포함하는 네트워크 인터페이스를 통해 IoT 장치와 무선 링크로 직접적인 연결성이 존재하는 이웃 노드일 수 있다. 즉, 이웃 IoT 장치는 IoT 장치와 무선 링크로 직접적인 연결이 가능할 수 있다.
IoT 장치는 자신의 장치 정보에 기초하여 자신이 코디네이터 후보인지 여부를 결정할 수 있다. 다음에 설명되는 절차는 예시적인 것이며, 이에 반드시 한정되는 것은 아니다.
IoT 장치는 장치 정보의에 포함된 네트워크 인터페이스의 수, 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 잔여 에너지의 비율 중에서 적어도 하나에 기초하여 이웃 IoT 장치의 코디네이터 후보 여부를 결정할 수 있다(550, 570, 580). 예를 들어, IoT 장치는 네트워크 인터페이스의 수, 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 잔여 에너지의 비율 순으로 순차적으로 고려하여 자신의 코디네이터 후보 여부를 결정할 수 있다.
우선, IoT 장치는 장치 정보의 IF.Count에 기초하여 자신의 네트워크 인터페이스의 수가 2 이상인지 판단할 수 있다(550). 네트워크 인터페이스의 수가 2 이상인 경우, IoT 장치는 자신을 코디네이터 후보로 결정할 수 있다(560).
다음으로, 네트워크 인터페이스의 수가 2보다 작은 경우, IoT 장치는 장치 정보의 IF.No#N에 대응하는 IF.Link에 기초하여 네트워크 인터페이스에 연결된 링크의 수가 2 이상인지 판단할 수 있다(570). 네트워크 인터페이스에 연결된 링크의 수가 2 이상인 경우, IoT 장치는 자신을 코디네이터 후보로 결정할 수 있다(560).
네트워크 인터페이스에 연결된 링크의 수가 2보다 작은 경우, IoT 장치는 장치 정보의 R.Energy에 기초하여 잔여 에너지의 비율이 에너지 임계값(THRESHOLD_ENERGY_LEVEL) 이상인지 판단할 수 있다(580). 에너지 임계값(THRESHOLD_ENERGY_LEVEL)은 코디네이터 역할을 수행하기에 충분한 잔여 에너지 레벨의 한계를 의미할 수 있다. 잔여 에너지의 비율이 에너지 임계값 이상인 경우, IoT 장치는 자신을 코디네이터 후보로 결정할 수 있다(560). 잔여 에너지의 비율이 에너지 임계값보다 작은 경우, IoT 장치는 자신을 코디네이터 후보가 안되는 것으로 결정할 수 있다(590).
즉, 네트워크 인터페이스의 수가 2가 인 경우, IoT 장치는 자신을 코디네이터 후보로 지정할 수 있다. 또한, 네트워크 인터페이스의 수가 1이지만, 네트워크 인터페이스에 연결된 링크가 2이상이거나 잔여 에너지의 비율이 에너지 임계값 이상인 경우, IoT 장치는 자신을 코디네이터 후보로 지정할 수 있다.
IoT 장치는 자신이 코디네이터 후보인지를 결정하고 나서, 결정 결과를 장치 정보의 C.Coordinator에 반영할 수 있다. 예를 들어, 자신이 코디네이터 후보인 경우에는 C.Coordinator에 TRUE (또는 1) 값의 비트 정보를 반영하고, 자신이 코디네이터 후보가 아닌 경우에는 C.Coordinator에 FALSE(또는 0) 값의 비트 정보를 반영할 수 있다.
이웃 IoT 장치로부터 이웃 장치 정보가 수신되면, IoT 장치는 자신의 장치 정보를 업데이트하고, 업데이트된 장치 정보를 이웃들에 브로드캐스팅할 수 있다. 네트워크의 코디네이터 후보는 알고리즘을 통해 발견될 수 있다. 다중 인터페이스 또는 다중 연결 장치를 갖춘 장치는 코디네이터 후보가 될 수 있다. 또한 에너지 효율적인 장치는 SON이 에너지 절약을 요구할 경우 코디네이터 후보가 될 수 있다.
이웃 IoT 장치로부터 이웃 장치 정보가 수신되면, IoT 장치는 자신의 장치 정보를 업데이트하고, 업데이트된 장치 정보를 이웃들에 브로드캐스팅할 수 있다. 예를 들어, 장치 정보의 IF.No#N에 대응하는 IF.Link 및 C.Coordinator가 업데이트될 수 있다.
도 5에서 상술한 과정은 IoT 장치의 각 네트워크 인터페이스마다 수행될 수 있다.
도 6은 일 실시예에 따른 네트워크를 형성하기 위해 코디네이터를 탐색하는 동작을 설명하기 위한 플로우 차트이다.
IoT 장치는 하나 이상의 이웃 IoT 장치로부터 수신되는 이웃 장치 정보 및 자신의 장치 정보에 기초하여 코디네이터 후보들 중에서 네트워크를 형성하기 위한 코디네이터를 결정할 수 있다. 다음에 설명되는 절차는 예시적인 것이며, 이에 반드시 한정되는 것은 아니다.
IoT 장치는 자신이 코디네이터 후보인지 판단할 수 있다(610).
자신이 코디네이터 후보인 경우, IoT 장치는 이웃 IoT 장치의 코디네이터 후보 여부와 이웃 장치 정보가 이웃 IoT 장치의 장치 정보인지 판단할 수 있다(613). 이웃 IoT 장치가 코디네이터 후보이고, 이웃 장치 정보가 이웃 IoT 장치의 장치 정보인 경우, IoT 장치는 이웃 IoT 장치를 코디네이터로 결정할 수 있다. IoT 장치는 자신의 장치 정보의 IF.No#N에 대응하는 IF.Coordinator에 이웃 IoT 장치의 장치 식별자를 업데이트할 수 있다(660).
자신이 코디네이터 후보가 아닌 경우도, IoT 장치는 이웃 IoT 장치의 코디네이터 후보 여부와 이웃 장치 정보가 이웃 IoT 장치의 장치 정보인지 판단할 수 있다(620).
IoT 장치는 환경적 상황에 따른 네트워크 특성을 고려하여 코디네이터 후보이면서 자신의 장치 정보를 송신하는 복수의 이웃 IoT 장치들 중에서 코디네이터를 결정할 수 있다(630, 670, 673). 예를 들어, 네트워크 특성은 에너지, 네트워크 범위, 및 네트워크 속도 중에서 적어도 하나를 포함할 수 있다. IoT 장치는 네트워크 특성 상 에너지 중심 네트워킹(energy-centric networking), 광대역 네트워킹, 통신 속도 및 성능 순으로 순차적으로 고려하여 코디네이터를 결정할 수 있다.
먼저, IoT 장치는 에너지 중심 네트워킹(energy-centric networking)이 요구되는지 고려할 수 있다(630).
IoT 장치는 복수의 이웃 IoT 장치들 중에서 잔여 에너지의 비율이 가장 큰 값을 갖는 장치가 있는지 판단할 수 있다(640).
잔여 에너지의 비율이 가장 큰 값을 갖는 장치가 있는 경우, IoT 장치는 잔여 에너지의 비율이 가장 큰 값을 갖는 장치를 코디네이터로 결정할 수 있다(645). 그렇지 않은 경우, IoT 장치는 복수의 이웃 IoT 장치들 중에서 에너지를 소비하는 비율(a rate of consuming energy for a certain time)이 가장 작은 값을 갖는 장치를 코디네이터로 결정할 수 있다(650).
다음으로, IoT 장치는 광대역(무선 반경이 넓은) 네트워킹이 요구되는지 고려할 수 있다(670). IoT 장치는 복수의 이웃 IoT 장치들 중에서 네트워크 인터페이스의 범위가 가장 넓은 장치를 코디네이터로 결정할 수 있다(677). 예를 들어, LoRa, Sigfox, IEEE802.11ah, WI-SUN, NB-IoT 등의 장거리 네트워크 인터페이스를 갖는 코디네이터 후보가 코디네이터가 될 수 있다.
마지막으로, IoT 장치는 통신 속도 및 성능이 필요한 네트워킹이 요구되는지 고려할 수 있다(673). IoT 장치는 복수의 이웃 IoT 장치들 중에서 데이터 전송 속도가 가장 큰 장치를 코디네이터로 결정할 수 있다(675).
IoT 장치는 결정된 코디네이터의 장식 식별자를 자신의 장치 정보의 IF.No#N에 대응하는 IF.Coordinator에 업데이트할 수 있다(660).
상술한 바와 같이, SON이 환경적 상황에 따라 에너지, 처리량(throughput), 및 네트워크 범위를 지원하는 네트워크를 구축할 필요가 있는 경우, 특성(characteristics)에 적합한 코디네이터가 알고리즘을 활용하여 선택될 수 있다.
도 6에서 상술한 과정은 IoT 장치의 각 네트워크 인터페이스마다 수행될 수 있다.
도 7은 사물인터넷에서의 이기종 자율 네트워크 구성을 설명하기 위한 도면이다.
도 7과 같은 네트워크 연결성 설정은 도 5 및 도 6에서 설명된 알고리즘을 통해 가능할 수 있다.
기존에는 동종의 무선 통신 기술을 가진 단말들로 구성된 네트워킹을 고려했기 때문에, 그러한 방식을 활용할 경우 이기종 단말이 혼재되어 있는 IoT의 자율구성 네트워킹에는 전혀 활용이 불가능 하다. 활용한다고 하더라도 모든 노드가 통신을 효율적으로 할 수 없다. 상술한 실시예들은 이러한 문제점을 근본적으로 해결함으로써 보다 효율적인 네트워킹을 구현할 수 있다.
도 8은 일 실시예에 따른 IoT 장치의 개략적인 블록도이다.
도 8을 참조하면, IoT 장치(800)는 메모리(810), 프로세서(830) 및 하나 이상의 네트워크 인터페이스(850)를 포함한다.
메모리(810)는 프로세서(830)에 의해 실행가능한 인스트럭션들(또는 프로그램)을 저장할 수 있다. 예를 들어, 인스트럭션들은 IoT 장치(800)가 하나 이상의 이웃 IoT 장치와 네트워크를 구성하도록 제어하는 하나 이상의 동작을 수행하기 위한 인스트럭션들일 수 있다.
프로세서(830)는 IoT 장치(800)의 전반적인 동작을 제어할 수 있다. 프로세서(830)는 하나 이상의 코어를 포함하는 적어도 하나의 프로세서로 구현될 수 있다.
프로세서(830)는 하나 이상의 이웃 IoT 장치와 네트워크를 구성하기 위한 인스트럭션들을 실행할 수 있다. 인스트럭션들은 프로세서(830)에 구현될(또는 임베디드될) 수 있다.
또한, 프로세서(830)는 인스트럭션들을 실행하기 위해, 메모리810)로부터 인스트럭션들을 꺼내고(retrieve, fetch, or read), 인스트럭션들을 실행할 수도 있다. 이후, 프로세서(830)는 하나 이상의 실행 결과를 메모리(810) 또는 다른 메모리(미도시), 예를 들어 내부 레지스터, 내부 캐쉬, 또는 스토리지에 라이트(write, 또는 기록)할 수 있다.
프로세서(830)는 IoT 장치(800)가 하나 이상의 이웃 IoT 장치와 네트워크를 구성하도록 제어하는 하나 이상의 동작을 수행할 수 있다.
프로세서(830)는 하나 이상의 네트워크 인터페이스(850)에 대해 코디네이터 후보인지 여부를 결정하고, 코디네이터를 결정할 수 있다. 도 1 내지 도 7을 참조하여 설명한 내용이 프로세서(830)에 실질적으로 동일하게 적용된다. 이에, 상세한 설명은 생략한다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.

Claims (20)

  1. IoT 장치의 하나 이상의 이웃 IoT 장치로부터 이웃 장치 정보를 수신하는 단계;
    상기 이웃 장치 정보에 기초하여 IoT 장치의 장치 정보를 업데이트하는 단계; 및
    상기 장치 정보에 포함된 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 잔여 에너지의 비율 중에서 적어도 하나에 기초하여 상기 IoT 장치의 코디네이터 후보인지 여부를 결정하는 단계
    를 포함하고,
    상기 코디네이터 후보는 네트워크의 게이트웨이 역할을 수행하는 코디네이터의 후보인 IoT 환경에서 자율 구성 네트워킹 방법.
  2. 제1항에 있어서,
    상기 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 상기 잔여 에너지의 비율 순서로 순차적으로 고려되는 IoT 환경에서 자율 구성 네트워킹 방법.
  3. 제1항에 있어서,
    상기 결정하는 단계는
    상기 네트워크 인터페이스의 수가 2이상인 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하는 단계;
    상기 네트워크 인터페이스에 연결된 링크가 2이상인 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하는 단계; 및
    상기 잔여 에너지의 비율이 에너지 임계값보다 큰 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하는 단계
    를 포함하는 IoT 환경에서 자율 구성 네트워킹 방법.
  4. 제1항에 있어서,
    상기 결정하는 단계는,
    상기 네트워크 인터페이스 마다 수행되는 IoT 환경에서 자율 구성 네트워킹 방법.
  5. 제1항에 있어서,
    결정 결과에 기초하여 상기 장치 정보에 포함된 코디네이터 후보인지 판단하기 위한 비트 정보를 업데이트하는 단계
    를 더 포함하는 IoT 환경에서 자율 구성 네트워킹 방법.
  6. 제1항에 있어서,
    네트워크 특성에 기초하여 코디네이터 후보이면서 자신의 장치 정보를 송신하는 복수의 이웃 IoT 장치들 중에서 코디네이터를 결정하는 단계
    를 더 포함하는 IoT 환경에서 자율 구성 네트워킹 방법.
  7. 제6항에 있어서,
    상기 네트워크 특성은 에너지, 네트워크 범위, 및 네트워크 속도 중에서 적어도 하나를 포함하는 IoT 환경에서 자율 구성 네트워킹 방법.
  8. 제6항에 있어서,
    상기 코디네이터를 결정하는 단계는,
    에너지 중심 네트워킹(energy-centric networking)이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 잔여 에너지의 비율이 가장 큰 값을 갖는 장치 또는 에너지를 소비하는 비율(a rate of consuming energy for a certain time)이 가장 작은 값을 갖는 장치를 상기 코디네이터로 결정하는 단계;
    광 대역 네트워킹이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 네트워크 인터페이스의 범위가 가장 넓은 장치를 상기 코디네이터로 결정하는 단계; 및
    통신 속도 및 성능이 필요한 네트워킹이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 데이터 전송 속도가 가장 큰 장치를 상기 코디네이터로 결정하는 단계
    를 포함하는 IoT 환경에서 자율 구성 네트워킹 방법.
  9. 제8항에 있어서,
    상기 에너지 중심 네트워킹, 상기 광 대역 네트워킹, 상기 통신 속도 및 성능이 필요한 네트워킹 순서로 순차적으로 고려되는 IoT 환경에서 자율 구성 네트워킹 방법.
  10. 제6항에 있어서,
    상기 코디네이터를 결정하는 단계는,
    상기 네트워크 인터페이스 마다 수행되는 IoT 환경에서 자율 구성 네트워킹 방법.
  11. 자율 구성 네트워킹을 위한 IoT 장치에 있어서
    하나 이상의 네트워크 인터페이스; 및
    상기 네트워크 인터페이스를 통해 하나 이상의 이웃 IoT 장치와 네트워크를 구성하기 위한 인스트럭션들을 실행하기 위한 프로세서
    를 포함하고,
    상기 인스트럭션들이 실행될 때, 상기 프로세서는,
    IoT 장치의 하나 이상의 이웃 IoT 장치로부터 이웃 장치 정보를 수신하고, 상기 이웃 장치 정보에 기초하여 IoT 장치의 장치 정보를 업데이트하고, 상기 장치 정보에 포함된 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 잔여 에너지의 비율 중에서 적어도 하나에 기초하여 상기 IoT 장치의 코디네이터 후보인지 여부를 결정하고,
    상기 코디네이터 후보는 상기 네트워크의 게이트웨이 역할을 수행하는 코디네이터의 후보인 IoT 장치.
  12. 제11항에 있어서,
    상기 프로세서는,
    상기 네트워크 인터페이스의 수, 상기 네트워크 인터페이스에 연결된 이웃 링크의 수, 및 상기 잔여 에너지의 비율 순서로 순차적으로 고려하는 IoT 장치.
  13. 제11항에 있어서,
    상기 프로세서는,
    상기 네트워크 인터페이스의 수가 2이상인 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하고,
    상기 네트워크 인터페이스에 연결된 링크가 2이상인 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하고,
    상기 잔여 에너지의 비율이 에너지 임계값보다 큰 경우, 상기 IoT 장치를 상기 코디네이터 후보로 결정하는 IoT 장치.
  14. 제11항에 있어서,
    상기 프로세서는,
    상기 네트워크 인터페이스마다 상기 상기 IoT 장치의 코디네이터 후보인지 여부를 결정하는 IoT 장치.
  15. 제11항에 있어서,
    상기 프로세서는,
    결정 결과에 기초하여 상기 장치 정보에 포함된 코디네이터 후보인지 판단하기 위한 비트 정보를 업데이트하는 IoT 장치.
  16. 제11항에 있어서,
    상기 프로세서는,
    네트워크 특성에 기초하여 코디네이터 후보이면서 자신의 장치 정보를 송신하는 복수의 이웃 IoT 장치들 중에서 코디네이터를 결정하는 IoT 장치.
  17. 제16항에 있어서,
    상기 네트워크 특성은 에너지, 네트워크 범위, 및 네트워크 속도 중에서 적어도 하나를 포함하는 IoT 장치.
  18. 제16항에 있어서,
    상기 프로세서는,
    에너지 중심 네트워킹(energy-centric networking)이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 잔여 에너지의 비율이 가장 큰 값을 갖는 장치 또는 에너지를 소비하는 비율(a rate of consuming energy for a certain time)이 가장 작은 값을 갖는 장치를 상기 코디네이터로 결정하고,
    광 대역 네트워킹이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 네트워크 인터페이스의 범위가 가장 넓은 장치를 상기 코디네이터로 결정하고,
    통신 속도 및 성능이 필요한 네트워킹이 요구되는 경우, 상기 복수의 이웃 IoT 장치들 중에서 데이터 전송 속도가 가장 큰 장치를 상기 코디네이터로 결정하는 IoT 장치.
  19. 제18항에 있어서,
    상기 프로세서는,
    상기 에너지 중심 네트워킹, 상기 광 대역 네트워킹, 상기 통신 속도 및 성능이 필요한 네트워킹 순서로 순차적으로 고려하는 IoT 장치.
  20. 제16항에 있어서,
    상기 프로세서는,
    상기 네트워크 인터페이스마다 상기 코디네이터를 결정하는 IoT 장치.
KR1020180074130A 2018-01-08 2018-06-27 사물 인터넷 환경에서 자율 구성 네트워킹 방법 및 이를 수행하는 장치 KR102468313B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/132,634 US10587477B2 (en) 2018-01-08 2018-09-17 Self-organizing network method of internet of things and apparatus performing the method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180002202 2018-01-08
KR1020180002202 2018-01-08

Publications (2)

Publication Number Publication Date
KR20190094069A true KR20190094069A (ko) 2019-08-12
KR102468313B1 KR102468313B1 (ko) 2022-11-18

Family

ID=67625040

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180074130A KR102468313B1 (ko) 2018-01-08 2018-06-27 사물 인터넷 환경에서 자율 구성 네트워킹 방법 및 이를 수행하는 장치

Country Status (1)

Country Link
KR (1) KR102468313B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110020537A (ko) * 2009-08-24 2011-03-03 경북대학교 산학협력단 트리 방식의 센서 네트워크 노드 구성 방법 및 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110020537A (ko) * 2009-08-24 2011-03-03 경북대학교 산학협력단 트리 방식의 센서 네트워크 노드 구성 방법 및 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Arjun P. Athreya et al. Network self-organization in the Internet of Things, IoT-NC, 2016.06, https://www.researchgate.net/publication/261499099_Network_self-organization_in_the_Internet_of_Things* *

Also Published As

Publication number Publication date
KR102468313B1 (ko) 2022-11-18

Similar Documents

Publication Publication Date Title
US8248949B2 (en) Method and device for providing an alternative backhaul portal in a mesh network
US9648662B2 (en) Bluetooth networking
RU2510156C2 (ru) Способ создания беспроводной многоскачковой сети
RU2369976C2 (ru) Маршрутизация в самоорганизующейся одноранговой сети
US7839771B2 (en) Backhaul failover method and system for a wireless network
JP6408743B2 (ja) メッシュwlanコントローラ、wlanデバイス、及びwlanプロビジョニングのための動作方法
CN105992262B (zh) 一种无线Mesh网络的自适应模式切换方法
WO2016081734A2 (en) Techniques to support heterogeneous network data path discovery
US8300578B2 (en) System, apparatus and method for seamless roaming through the use of routing update messages
US20060039298A1 (en) Logical and physical mesh network separation
KR20090030320A (ko) 고장 방지 능력을 위해 다중 경로를 실행하기 위한 방법 및모바일 에드-호크 네트워크
WO2017020619A1 (zh) 一种路由的方法及装置
US11849307B2 (en) Mobile ad-hoc wireless networks
US10420155B2 (en) Distributed Wi-Fi setup systems and methods
US10652090B2 (en) Method for self-constructing a multi-hop structured wireless communication network
KR20080025720A (ko) 복수의 네스트된 모바일 네트워크들에 대한 자동 모드
EP3164968B1 (en) Methods, devices and systems for implementing centralized hybrid wireless self-organizing networks
US10587477B2 (en) Self-organizing network method of internet of things and apparatus performing the method
Baresi et al. MAGNET: A middleware for the proximal interaction of devices based on Wi-Fi direct
KR102468313B1 (ko) 사물 인터넷 환경에서 자율 구성 네트워킹 방법 및 이를 수행하는 장치
US10389854B2 (en) Method and system for forming an ad-hoc network over heterogeneous protocols
Chen et al. Customizing GPSR for wireless sensor networks
US20210168903A1 (en) Adaptive multipath routing failure recovery in a wireless network
El Ksimi et al. Contribution to Optimization and Evaluation of IPv6 Signals Based Constrained Devices Networks
Sun et al. A hill-area-restricted geographic routing protocol for mobile ad hoc and sensor networks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant