KR20210070062A - An adaptive clustering method for massive IoT and the sensor node thereof - Google Patents

An adaptive clustering method for massive IoT and the sensor node thereof Download PDF

Info

Publication number
KR20210070062A
KR20210070062A KR1020190160081A KR20190160081A KR20210070062A KR 20210070062 A KR20210070062 A KR 20210070062A KR 1020190160081 A KR1020190160081 A KR 1020190160081A KR 20190160081 A KR20190160081 A KR 20190160081A KR 20210070062 A KR20210070062 A KR 20210070062A
Authority
KR
South Korea
Prior art keywords
group
base station
heads
packet
communication
Prior art date
Application number
KR1020190160081A
Other languages
Korean (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 KR1020190160081A priority Critical patent/KR20210070062A/en
Publication of KR20210070062A publication Critical patent/KR20210070062A/en

Links

Images

Classifications

    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/04TPC
    • H04W52/38TPC being performed in particular situations
    • H04W52/46TPC being performed in particular situations in multi hop networks, e.g. wireless relay networks
    • 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

Landscapes

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

Abstract

The present invention relates to an adaptive clustering method for massive IoT and a sensor node thereby. A method for setting up a network protocol for a large-scale sensor node network includes the operations of: setting a plurality of groups to which the large-scale sensor node belongs and group information of each group; setting a slot frame and a plurality of time slots in the slot frame; setting a group member and group leader to perform communication in each time slot; and optimizing the number of group heads for each group. Accordingly, the power consumption of the group leader is optimized in the wireless sensor network, so that the life of the wireless sensor network extends.

Description

대규모 사물 인터넷을 위한 적응형 그룹화 통신 방법 및 그 방법에 의해 수행되는 센서 노드{An adaptive clustering method for massive IoT and the sensor node thereof} An adaptive grouping communication method for massive IoT and a sensor node performed by the method

다양한 실시 예들은 대규모 사물 인터넷을 위한 적응형 그룹화 통신 방법 및 그 방법에 의해 수행되는 센서 노드에 관한 것이다.Various embodiments relate to an adaptive grouping communication method for a large-scale Internet of Things and a sensor node performed by the method.

다수의 센서 노드가 센싱 및 정보 전달의 역할을 하며, 서로 무선으로 연결되어, 센싱한 정보를 하나의 싱크 노드(sink node) 또는 기지국으로 모으거나, 반대로 싱크 노드 또는 기지국에서 각 노드로 정보 또는 명령을 전달하는 네트워크를 무선 센서 네트워크라고 한다.A plurality of sensor nodes play the role of sensing and information transfer, and are wirelessly connected to each other to collect the sensed information to one sink node or base station, or vice versa, information or commands from the sink node or base station to each node. A network that transmits the data is called a wireless sensor network.

일반적으로 무선 센서 네트워크의 센서 노드들은 아주 많은 수가 배치되어 넓은 범위의 지역에서 정보를 얻고자 하는데, 이로 인해 센서 노드 각각은 유선으로 전원을 얻기보다는 배터리로 동작하게 된다.In general, a large number of sensor nodes in a wireless sensor network are deployed to obtain information from a wide area, and for this reason, each sensor node operates with a battery rather than a wired power supply.

따라서 무선 센서 네트워크의 수명은 센서들의 배터리 수명과 직결되어, 무선 센서 네트워크의 수명을 늘리기 위해서는 배터리의 수명을 늘려야 하고, 배터리의 수명을 늘리기 위해서는 각 센서 노드가 사용하는 전력을 가능한한 적게 하여야 한다.Therefore, the lifespan of the wireless sensor network is directly related to the battery life of the sensors, and in order to increase the lifespan of the wireless sensor network, the battery life should be increased, and in order to increase the battery life, the power used by each sensor node should be reduced as much as possible.

센서 노드에서 전력을 소모하는 가장 큰 원인 중 하나는 다른 센서 노드 또는 싱크 노드 또는 기지국과의 통신을 위한 신호의 송수신 과정인데, 이러한 송수신 과정에서의 전력 소모를 줄여야만 한다.One of the biggest causes of power consumption in a sensor node is a signal transmission/reception process for communication with another sensor node, a sink node, or a base station, and power consumption in the transmission/reception process should be reduced.

본 발명의 목적은 상술한 바와 같은 대규모 사물 인터넷의 문제점을 해결하기 위한 것으로, 무선 센서 네트워크 환경에서 동기식 매체 접근 제어(MAC, Medium Access Control) 프로토콜에 의해 통신을 수행하되, 노드들의 그룹화를 통해 소비전력과 지연(delay), 그리고 처리량(throughput)을 응용의 종류에 맞게 제어하는, 대규모 사물 인터넷을 위한 적응형 그룹화 통신 방법을 제공하는 것이다.An object of the present invention is to solve the problem of the large-scale Internet of Things as described above, and communication is performed by a synchronous medium access control (MAC, Medium Access Control) protocol in a wireless sensor network environment, but is consumed through grouping of nodes. An object of the present invention is to provide an adaptive grouping communication method for large-scale Internet of Things that controls power, delay, and throughput according to the type of application.

또한, 본 발명의 목적은 노드들이 그룹화 되어 시분할 다중 접속에 의해 기지국과 통신하되, 그룹장과 그룹원으로 역할이 나뉘어 기지국은 그룹장과 통신하고 그룹장은 기지국 또는 그룹원과 통신하는 트리 구조로 통신이 이루어지며, 네트워크 환경에 맞게 그룹장의 개수를 조절하여 소비전력과 지연, 그리고 처리량을 응용의 종류에 맞게 제어하는, 대규모 사물 인터넷을 위한 적응형 그룹화 통신 방법을 제공하는 것이다.In addition, an object of the present invention is that nodes are grouped and communicate with the base station by time division multiple access, but the roles are divided into group leader and group member, and the base station communicates with the group leader and the group leader communicates with the base station or group member. It is to provide an adaptive grouping communication method for large-scale Internet of Things, which controls power consumption, delay, and throughput according to the type of application by adjusting the number of group heads according to the network environment.

본 문서에서 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in this document are not limited to the technical problems mentioned above, and other technical problems not mentioned can be clearly understood by those of ordinary skill in the art to which the present invention belongs from the description below. There will be.

본 개시의 다양한 실시 예들에 따르면, 대규모 센서 노드 네트워크를 위한 네트워크 프로토콜 설정 방법은 상기 대규모 센서 노드가 속하는 복수 개의 그룹 및 각 그룹의 그룹정을 설정하는 동작, 슬롯 프레임 및 상기 슬롯 프레임 내 복수의 시간 슬롯을 설정하는 동작, 각 시간 슬롯에서 통신을 수행할 그룹원 및 그룹장을 설정하는 동작 및 각 그룹 별 그룹장의 수를 최적화하는 동작을 포함할 수 있다.According to various embodiments of the present disclosure, a method for setting a network protocol for a large-scale sensor node network includes an operation of setting a plurality of groups to which the large-scale sensor node belongs and a grouping of each group, a slot frame and a plurality of times within the slot frame It may include an operation of setting a slot, an operation of setting a group member and group leader to perform communication in each time slot, and an operation of optimizing the number of group heads for each group.

다양한 실시 예들에 따라, 본 개시에서 제안하는 방법 및 장치는 노드들 간의 신호 전송 시의 충돌 확률을 낮춤으로써 각 노드에서 소모되는 전력의 양을 줄일 수 있다.According to various embodiments, the method and apparatus proposed by the present disclosure may reduce the amount of power consumed in each node by lowering a collision probability during signal transmission between nodes.

다양한 실시 예들에 따라, 본 개시에서 제안하는 방법 및 장치는 위치 기반으로 노드들을 그룹화함으로써 낮은 전력으로도 그룹 내 통신이 가능하게 하여 소모 전력을 줄이고 그룹 간의 간섭도 최소화할 수 있다. According to various embodiments, the method and apparatus proposed in the present disclosure can reduce power consumption and minimize interference between groups by grouping nodes based on location to enable intra-group communication even with low power.

다양한 실시 예들에 따라, 본 개시에서 제안하는 방법 및 장치는 한 그룹은 그룹 내 통신을 하고 다른 그룹에게는 그룹 외 통신을 하게 함으로써 그룹 외 통신에 의한 그룹 내 통신에 미치는 간섭을 최소화할 수 잇다. According to various embodiments, the method and apparatus proposed by the present disclosure allow one group to perform intra-group communication and the other group to perform out-of-group communication, thereby minimizing interference caused by out-of-group communication on intra-group communication.

본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Effects obtainable in the present disclosure are not limited to the above-mentioned effects, and other effects not mentioned may be clearly understood by those of ordinary skill in the art to which the present disclosure belongs from the description below. will be.

도 1은 대규모 센서 노드들이 포함된 대규모 IoT 환경의 일 예를 도시한 도면이다.
도 2는 슬롯 프레임 및 상술한 할당 방식에 따라 그룹에 시간 슬롯이 할당된 예를 도시한 도면이다.
도 3은 통신 시에 야기될 수 있는 간섭 영역의 예를 도시한 도면이다.
도 4는 대규모 센서 노드들을 포함하는 네트워크에서 데이터 통신을 위해 기지국에서 네트워크 프로토콜을 설정하는 예를 도시한 흐름도이다.
도 5는 기지국이 특정 그룹의 그룹장 수를 결정하는 예를 도시한 흐름도이다.
도 6은 기지국의 구성을 도시한 도면이다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.
1 is a diagram illustrating an example of a large-scale IoT environment including large-scale sensor nodes.
2 is a diagram illustrating an example in which time slots are allocated to a group according to a slot frame and the above-described allocation method.
3 is a diagram illustrating an example of an interference region that may be caused during communication.
4 is a flowchart illustrating an example of setting a network protocol in a base station for data communication in a network including large-scale sensor nodes.
5 is a flowchart illustrating an example in which the base station determines the number of group heads of a specific group.
6 is a diagram showing the configuration of a base station.
In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. Hereinafter, the embodiments disclosed in the present specification will be described in detail with reference to the accompanying drawings, but the same or similar components are assigned the same reference numerals regardless of reference numerals, and redundant description thereof will be omitted.

이하의 설명에서 사용되는 구성요소에 대한 접미사 '모듈' 또는 '부'는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, '모듈' 또는 '부'는 소프트웨어 구성요소 또는 FPGA(field programmable gate array), ASIC(application specific integrated circuit)과 같은 하드웨어 구성요소를 의미할 수 있으며, '부' 또는 '모듈'은 어떤 역할들을 수행한다. 그렇지만 '부' 또는 '모듈'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부' 또는 '모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부' 또는 '모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함할 수 있다. 구성요소들과 '부' 또는 '모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부' 또는 '모듈'들로 결합되거나 추가적인 구성요소들과 '부' 또는 '모듈'들로 더 분리될 수 있다.The suffix 'module' or 'part' for the components used in the following description is given or mixed in consideration of only the ease of writing the specification, and does not have a meaning or role distinct from each other by itself. In addition, a 'module' or 'unit' may mean a software component or a hardware component such as an FPGA (field programmable gate array) or ASIC (application specific integrated circuit), and the 'unit' or 'module' refers to what role carry out the However, 'part' or 'module' is not meant to be limited to software or hardware. A 'unit' or 'module' may be configured to reside on an addressable storage medium or may be configured to reproduce one or more processors. Thus, as an example, 'part' or 'module' refers to components such as software components, object-oriented software components, class components and task components, processes, functions, properties, may include procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. Components and functionality provided in 'units' or 'modules' may be combined into a smaller number of components and 'units' or 'modules' or additional components and 'units' or 'modules' can be further separated.

본 발명의 몇몇 실시예들과 관련하여 설명되는 방법 또는 알고리즘의 단계는 프로세서에 의해 실행되는 하드웨어, 소프트웨어 모듈, 또는 그 2 개의 결합으로 직접 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 당업계에 알려진 임의의 다른 형태의 기록 매체에 상주할 수도 있다. 예시적인 기록 매체는 프로세서에 커플링되며, 그 프로세서는 기록 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 다른 방법으로, 기록 매체는 프로세서와 일체형일 수도 있다. 프로세서 및 기록 매체는 주문형 집적회로(ASIC) 내에 상주할 수도 있다. ASIC은 사용자 단말기 내에 상주할 수도 있다.The steps of a method or algorithm described in connection with some embodiments of the present invention may be implemented directly in hardware executed by a processor, a software module, or a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of recording medium known in the art. An exemplary recording medium is coupled to the processor, the processor capable of reading information from, and writing information to, the storage medium. Alternatively, the recording medium may be integral with the processor. The processor and recording medium may reside within an application specific integrated circuit (ASIC). The ASIC may reside within the user terminal.

본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.In describing the embodiments disclosed in the present specification, if it is determined that detailed descriptions of related known technologies may obscure the gist of the embodiments disclosed in the present specification, the detailed description thereof will be omitted. In addition, the accompanying drawings are only for easy understanding of the embodiments disclosed in the present specification, and the technical spirit disclosed herein is not limited by the accompanying drawings, and all changes included in the spirit and scope of the present invention , should be understood to include equivalents or substitutes.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms including an ordinal number, such as first, second, etc., may be used to describe various elements, but the elements are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.

어떤 구성요소가 다른 구성요소에 '연결되어' 있다거나 '접속되어' 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 '직접 연결되어' 있다거나 '직접 접속되어' 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When it is said that a component is 'connected' or 'connected' to another component, it is understood that it may be directly connected or connected to the other component, but other components may exist in between. it should be On the other hand, when it is mentioned that a certain element is 'directly connected' or 'directly connected' to another element, it should be understood that the other element does not exist in the middle.

센서 네트워크sensor network

다수의 센서 노드가 센싱 및 정보전달의 역할을 하며, 서로 무선으로 연결되어, 센싱한 정보를 하나의 싱크 노드(sink node) 또는 기지국으로 모으거나, 반대로 싱크 노드 또는 기지국에서 각 센서 노드로 정보 또는 명령을 전달하는 네트워크를 무선 센서 네트워크라고 한다. A plurality of sensor nodes play the role of sensing and information transfer, and are wirelessly connected to each other to collect the sensed information into one sink node or base station, or vice versa, information or information from the sink node or base station to each sensor node. A network that transmits commands is called a wireless sensor network.

일반적으로 무선 센서 네트워크의 센서 노드들은 아주 많이 배치되어 넓은 범위의 지역에서 정보를 얻고자 하는데, 이로 인해 센서 각각은 유선으로 전원을 얻기 보다는 배터리로 동작하게 된다. 따라서 무선 센서 네트워크의 수명은 센서들의 배터리 수명과 직결되는데, 배터리의 수명을 늘리기 위해서는 각 센서 노드의 소모 전력을 최소화하여야 한다. In general, sensor nodes in a wireless sensor network are very numerous and want to obtain information from a wide area, so that each sensor operates with a battery rather than a wired power supply. Therefore, the lifespan of the wireless sensor network is directly related to the battery life of the sensors, and in order to increase the battery life, the power consumption of each sensor node should be minimized.

센서 노드의 전력 소모를 일으키는 가장 큰 원인 중 하나는 통신을 위한 신호 송수신 과정인데, 이러한 송수신 과정에서의 전력 소모를 줄이기 위해 네트워크의 MAC(medium access control) 단에서는 듀티 사이클링(duty cycling)이라는 방식을 사용한다.One of the biggest causes of power consumption of a sensor node is a signal transmission/reception process for communication. In order to reduce power consumption in this transmission/reception process, a medium access control (MAC) end of the network uses a method called duty cycling. use.

듀티 사이클링(duty cycling): Duty cycling:

듀티 사이클링이란 무선 신호를 송신하거나 수신하는 데 사용하는 송수신부 또는 트랜시버(transceiver) 또는 모뎀을 포함하는 무선부(또는 통신부라 칭할 수도 있다)를 일정 시간동안 켰다가 일정 시간동안 끄는 작업을 반복하는 기법인데, 항상 무선부를 켜 놓을 때 보다 전력소모가 작아 에너지 소모를 줄여야 하는 네트워크 응용에서 주로 사용한다.Duty cycling is a technique in which a transceiver or a transceiver or a radio unit including a modem used to transmit or receive a radio signal (or it may be referred to as a communication unit) is turned on for a certain period of time and then turned off for a certain period of time. However, it is mainly used in network applications where energy consumption needs to be reduced because it consumes less power than when the radio is always on.

그러나 이러한 켜고 끄는 과정은 통신을 수행하는 당사자인 송신측과 수신측 사이에 동기가 맞춰져 있어야 하는 작업인데, 만약 그렇지 않다면 송수신이 이루어지지 않는다. 왜냐하면 송신측에서 패킷을 보내기 위하여 신호를 송신할 때, 수신측의 무선부가 꺼져 있다면 신호를 수신할 수 없고 패킷 손실이 발생하기 때문이다. However, this turning on/off process requires synchronization between the transmitting and receiving parties, which are the parties performing the communication. Otherwise, transmission and reception are not performed. This is because, when the transmitting side transmits a signal to send a packet, if the radio unit of the receiving side is turned off, the signal cannot be received and packet loss occurs.

송신측과 수신측에서 이러한 무선부를 켜고 끄는 과정에 있어서의 동기화는 MAC 프로토콜에 의하여 수행될 수 있는데, 본 발명에서는 TDMA(time division multiple access)라는 MAC 프로토콜을 기본으로 하고, 대량의 센서 노드가 요구되는 대규모(massive) IoT(internet of things) 환경에 맞는 새로는 MAC 프로토콜을 제안한다. Synchronization in the process of turning on and off the radio unit at the transmitting side and the receiving side can be performed by the MAC protocol. In the present invention, the MAC protocol called time division multiple access (TDMA) is the basis, and a large number of sensor nodes are required. We propose a new MAC protocol suitable for a massive Internet of Things (IoT) environment.

시분할 다중 접속(time-division multiple access; TDMA)time-division multiple access (TDMA)

송신측이 패킷을 송신하기 위하여 무선 신호를 보낼 때 수신측이 깨어있게 하는 것이 목적인 MAC 프로토콜로서, TDMA가 사용하는 방식은 송신측과 수신측이 같이 깨어있을 시간을 정하는 것이다. It is a MAC protocol whose purpose is to keep the receiver awake when the transmitter sends a radio signal to transmit a packet. The method used by TDMA is to set the time for both the transmitter and receiver to stay awake.

이로 인해 송신측은 수신측에게 보낼 정보가 생기면 패킷에 담아 정해진 시간이 올 때까지 기다렸다가, 정해진 시간이 되면 무선부를 켜서 패킷을 송신하고, 수신측은 해당 시간에 패킷을 수신할 수 있다.Due to this, when the transmitting side has information to send to the receiving side, it puts it in a packet and waits until the specified time arrives, then turns on the radio to transmit the packet when the specified time arrives, and the receiving side can receive the packet at the specified time.

일반적으로 시분할 다중 접속 방식에서, 송신측과 수신측은 슬롯 프레임(slot frame)이라는 큰 시간 주기 안에 설정된 복수 개의 분할된 시간 슬롯(time slot) 중에서 하나의 시간 슬롯을 통신을 위해 할당받기 때문에, 수신측은 슬롯 프레임 주기로 시간 슬롯만큼의 시간 동안만 무선부를 켜서 패킷을 수신하고, 송신측은 전송할 패킷이 생성될 때마다 스케쥴링(scheduling)된 시간 슬롯에 맞춰 시간 슬롯만큼의 시간 안에 패킷을 전송하게 된다.In general, in the time division multiple access method, since the transmitting side and the receiving side are allocated one time slot for communication among a plurality of divided time slots set within a large time period called a slot frame, the receiving side is In the slot frame period, the radio unit is turned on only for the time slot and the packet is received, and whenever a packet to be transmitted is generated, the transmitter transmits the packet within the time slot according to the scheduled time slot.

대규모 사물 인터넷(massive IoT)Massive IoT

최근 급격한 IoT 기기 및 스마트폰의 급증에 의해 단위 면적당 통신 가능한 기기의 개수가 매우 많아져, 무선 센서 네트워크의 규모가 최대 만 개까지의 노드를 포함할 정도로 커질 수 있다. 이러한 대규모 IoT 네트워크를 Massive IoT라고 한다.Recently, the number of communicable devices per unit area has greatly increased due to the rapid increase in IoT devices and smartphones, and the scale of the wireless sensor network may be large enough to include up to 10,000 nodes. Such a large-scale IoT network is called Massive IoT.

Massive IoT의 노드들은 일반적으로 전송률이 매우 낮은 경우를 가정하지만, 그럼에도 불구하고 노드 개수가 매우 많기 때문에 일반적인 MAC 프로토콜을 사용할 경우, 처리량(throughput)이 매우 낮아지거나 패킷 손실률, 지연 시간(delay)이 매우 높아지는 어려움이 있다.Massive IoT nodes generally assume a very low transmission rate, but nevertheless, since the number of nodes is very large, when a general MAC protocol is used, the throughput is very low, the packet loss rate, and the delay time are very There are difficulties in increasing.

지수 백오프(exponential backoff)exponential backoff

간섭이 일어나는 거리에 위치한 두 개 이상의 송신단이 동시에 패킷을 전송하면 충돌이 일어나 재 전송을 해야 하는데, 만약 송신단들이 같은 시간만큼 기다렸다가(백오프) 다시 동시에 패킷을 전송하면 충돌이 또 일어나기 때문에, 이를 해결하기 위한 여러가지 방법이 있고 그 중 하나가 지수 백오프이다. 지수 백오프란 한 패킷에 대해 충돌이 일어날 때마다 윈도우 사이즈를 1, 2, 4, 8, 16,?? 으로 지수함수적으로 증가시키고, 최소 1부터 최대 (윈도우 사이즈-1)까지의 정수 난수를 발생시켜 이 난수만큼의 단위 시간동은 대기하였다가 재전송하는 방식이다. 충돌이 반복적으로 일어날수록 난수 발생 범위가 늘어나기 때문에 재 충돌의 확률이 지수함수적으로 감소하는 효과가 있다.If two or more transmitters located at a distance from the interference transmit packets at the same time, a collision occurs and retransmission is required. If the transmitters wait for the same amount of time (backoff) and then transmit packets again at the same time, a collision will occur again. There are several ways to do this, and one of them is exponential backoff. Exponential backoff means that the window size is set to 1, 2, 4, 8, 16,?? This is a method in which an integer random number is generated from a minimum of 1 to a maximum (window size-1), and the unit time for the random number is waited for and then retransmitted. As the collision repeatedly occurs, the random number generation range increases, so the probability of re-collision decreases exponentially.

도 1은 대규모 센서 노드들이 포함된 대규모 IoT 환경의 일 예를 도시한 도면이다.1 is a diagram illustrating an example of a large-scale IoT environment including large-scale sensor nodes.

도 1을 참조하면, 기지국(100) 주변에 대규모의 센서 노드들이 산재해 있고, 센서 노드들은 다른 센서 노드와 또는 기지국(100)을 통해 외부 장치(예: 관제 서버)와 통신을 수행하고자 할 수 있다. Referring to FIG. 1 , large-scale sensor nodes are scattered around the base station 100 , and the sensor nodes may wish to communicate with other sensor nodes or with an external device (eg, a control server) through the base station 100 . have.

이러한 경우에 각 센서 노드는 배터리에 의존하여 운용될 가능성이 높고, 그 경우 전력 소모를 최소화하여야 센서 노드의 수명을 장기화할 수 있다. In this case, each sensor node is highly likely to be operated depending on the battery. In this case, power consumption must be minimized to prolong the lifespan of the sensor node.

본원 발명은 도 1에 도시된 것과 같은 대규모 IoT 환경에서 각 센서 노드가 통신을 위해 사용하는 전력을 최소화할 수 있는 방안을 제시한다.The present invention proposes a method for minimizing the power used by each sensor node for communication in a large-scale IoT environment as shown in FIG. 1 .

이를 위하여 본원 발명은 센서 노드들을 그룹(group)화하여 통신하는 방안을 제안한다. To this end, the present invention proposes a method of communicating by grouping sensor nodes.

초기화 방식Initialization method

본 방안에서 제안하는 방식은 아래의 순서에 따라 대규모 센서 노드들에 대해 초기화를 진행한다.The method proposed in this method initializes large-scale sensor nodes in the following order.

1. 각 그룹(210, 220, 230, 240)의 트래픽 총량이 비슷하도록 위치 기반으로 노드들을 그룹화할 수 있다. 일실시 예에 따라, 센서 노드의 경우 각각의 센서 노드에서 전송하는 패킷의 크기 및 양이 일정할 가능성이 상당히 높으므로 각 그룹이 동일한 수의 센서 노드를 포함하도록 그룹화할 수 있다. 또한, 서로 위치가 가까운 노드들을 하나의 그룹으로 설정할 수 있다.1. Nodes may be grouped based on location so that the total amount of traffic of each group (210, 220, 230, 240) is similar. According to an embodiment, in the case of sensor nodes, since the size and amount of packets transmitted by each sensor node are highly likely to be constant, each group may be grouped to include the same number of sensor nodes. Also, nodes that are close to each other may be set as one group.

2. 각 그룹(210, 220, 230, 240)에서 임의의 노드를 그룹장으로 지정할 수 있다. 일실시 예에 따라, 그룹 내 센서들 중 임의로 선택한 하나를 그룹장으로 지정할 수 있다. 2. Any node in each group (210, 220, 230, 240) can be designated as the group leader. According to an embodiment, one arbitrarily selected one of the sensors in the group may be designated as the group leader.

3. 그룹의 개수와 패킷 송수신의 최대 소모 시간을 곱한 값을 슬롯 프레임(slot frame)의 길이로 지정할 수 있다. 다른 일실시 예에 따라, 슬롯 프레임의 길이는 그룹의 개수에 일정 시간을 곱한 값으로 지정할 수도 있다. 3. A value obtained by multiplying the number of groups by the maximum consumption time of packet transmission/reception can be designated as the length of a slot frame. According to another embodiment, the length of the slot frame may be designated as a value obtained by multiplying the number of groups by a predetermined time.

4. 슬롯 프레임은 그룹 개수로 균등하게 나눌 수 있다. 즉 슬롯 프레임은 그룹 개수만큼의 시간 슬롯(time slot)을 가질 수 있다. 그리고 슬롯 프레임의 시간 슬롯 중의 하나를 각 그룹의 그룹장에게 라운드-로빈(round-robin) 방식으로 할당한다.4. Slot frames can be equally divided by the number of groups. That is, the slot frame may have as many time slots as the number of groups. Then, one of the time slots of the slot frame is allocated to the group leader of each group in a round-robin manner.

5. 특정 그룹의 그룹장에게 할당된 시간 슬롯은 해당 특정 그룹과 가장 멀리 떨어진 그룹의 그룹원들에게도 함께 할당한다.5. The time slot allocated to the group leader of a specific group is also allocated to the group members of the group most distant from the specific group.

도 2는 슬롯 프레임 및 상술한 할당 방식에 따라 그룹에 시간 슬롯이 할당된 예를 도시한 도면이다.2 is a diagram illustrating an example in which time slots are allocated to a group according to a slot frame and the above-described allocation method.

도 2를 참조하면, 그룹의 개수는 6개일 수 있다. 따라서, 슬롯 프레임(300)은 6개의 시간 슬롯(310 내지 315)을 포함할 수 있다. 일실시 예에 따라, 각 시간 슬롯의 길이는 패킷 송수신을 위해 필요한 최대 소모 시간일 수 있다. Referring to FIG. 2 , the number of groups may be six. Accordingly, the slot frame 300 may include six time slots 310 to 315 . According to an embodiment, the length of each time slot may be a maximum consumption time required for packet transmission and reception.

각 시간 슬롯은 라운드-로빈 방식으로 특정 그룹의 그룹장에 할당되고 동시에 해당 특정 그룹과 가장 멀리 떨어진 그룹의 그룹원들에게 할당된다. 도 2를 참조하면 첫번째 시간 슬롯(310)은 G1그룹의 그룹장(G1h)에게 할당되면서 동시에 G4 그룹의 그룹원(G4)에 할당되고, 두번째 시간 슬롯(311)은 G2그룹의 그룹장(G2h)에게 할당되면서 동시에 G5 그룹의 그룹원(G5)에 할당되고, 세번째 시간 슬롯(312)은 G3그룹의 그룹장(G3h)에게 할당되면서 동시에 G6 그룹의 그룹원(G6)에 할당되고, 네번째 시간 슬롯(313)은 G4그룹의 그룹장(G4h)에게 할당되면서 동시에 G1 그룹의 그룹원(G1)에 할당되고, 다섯번째 시간 슬롯(314)은 G5그룹의 그룹장(G5h)에게 할당되면서 동시에 G2 그룹의 그룹원(G2)에 할당되고, 여섯번째 시간 슬롯(315)은 G6그룹의 그룹장(G6h)에게 할당되면서 동시에 G3 그룹의 그룹원(G3)에 할당될 수 있다.Each time slot is assigned to the group leader of a specific group in a round-robin manner, and at the same time assigned to the group members of the group furthest away from the specific group. Referring to FIG. 2 , the first time slot 310 is allocated to the group leader G1h of the G1 group and at the same time allocated to the group member G4 of the G4 group, and the second time slot 311 is assigned to the group leader G2h of the G2 group. is allocated to the group member G5 of the G5 group while being allocated, the third time slot 312 is allocated to the group head G3h of the G3 group and is allocated to the group member G6 of the G6 group at the same time, the fourth time slot 313 ) is assigned to the group head G4h of group G4 and at the same time assigned to the group member G1 of the G1 group, and the fifth time slot 314 is assigned to the group head G5h of the G5 group and at the same time the group member of the G2 group ( G2), and the sixth time slot 315 may be allocated to the group leader G6h of the G6 group and at the same time allocated to the group member G3 of the G3 group.

동작 방식how it works

상술한 바와 같이 센서 노드들의 그룹과 최초 1개의 그룹장을 정하는 초기화 후에 기지국(100)은 각각의 그룹에 대해 후술할 최적화 문제를 푼다. 여기서의 최적화 문제는 각 그룹에 존재해야 하는 그룹장의 수를 결정하는 것이다. As described above, after initialization that determines a group of sensor nodes and an initial one group head, the base station 100 solves an optimization problem to be described later for each group. The optimization problem here is to determine the number of group heads that should exist in each group.

1 단계: 만약 현재 그룹장의 개수가 최적값보다 적다면 그룹장의 개수를 1 증가시키고, 현재 그룹장의 개수가 최적값보다 많다면 그룹장의 개수를 1 감소시킨다. 그룹장의 개수가 최적값과 같다면 그대로 둔다.Step 1: If the number of current group heads is less than the optimal value, the number of group heads is increased by 1, and if the current number of group heads is larger than the optimal value, the number of group heads is decreased by 1. If the number of group heads is equal to the optimal value, leave it as it is.

2단계: 그룹장의 개수가 변하면 각 그룹장에 할당되었던 그룹원(센서 노드)들을 재배치한다. 각 그룹장에 그룹원을 할당할 때에 그룹원들의 평균 트래픽의 합이 최대한 균일하도록 그룹원을 각 그룹장에 할당한다. 그리고 위의 최적화 문제를 다시 반복하여 풀고 그룹장의 개수가 최적값과 같을 때까지 반복한다.Step 2: If the number of group heads changes, group members (sensor nodes) assigned to each group head are rearranged. When assigning group members to each group head, the group members are assigned to each group head so that the sum of the average traffic of the group members is as uniform as possible. Then, the above optimization problem is solved again and again until the number of group heads is equal to the optimal value.

최적화 문제optimization problem

일반적으로 MAC 프로토콜이 사용되는 응용은 지연 시간(delay)과 처리량(throughput)의 제약 조건하에서 네트워크(또는 센서 노드)의 수명을 최대화하는 최적화 문제로 치환될 수 있다. 상술한 프로토콜을 사용할 경우에는 후술하는 최적화 문제로 치환될 수 있는데. 이 최적화 문제를 풀면 그룹 별로 최적의 그룹장 개수를 결정할 수 있다.In general, an application in which the MAC protocol is used can be replaced with an optimization problem that maximizes the lifetime of the network (or sensor node) under the constraints of delay and throughput. When using the above protocol, it can be replaced with an optimization problem described later. By solving this optimization problem, it is possible to determine the optimal number of group heads for each group.

도 3은 통신 시에 야기될 수 있는 간섭 영역의 예를 도시한 도면이다.3 is a diagram illustrating an example of an interference region that may be caused during communication.

도 3을 참조하면, 점선의 원은 G1 그룹의 그룹장과 기지국(100) 간 통신에 의해 야기되는 간섭 영역을 표시하고, 실선은 각 그룹에서 그룹장과 그룹원 간 통신에 의한 간섭 영역의 예를 도시한 것이다. 그룹장과 그룹원은 거리 상으로 가까운 위치에 있어 더 낮은 전력으로 통신을 수행할 수 있기 때문에 간섭을 야기할 수 있는 영역도 제한되게 되나, 그룹장이 기지국(100)과 통신하기 위해서는 상당히 높은 전력을 사용하여야 하기 때문에 간섭을 야기할 수 있는 영역도 넓게 된다.Referring to FIG. 3 , a dotted circle indicates an interference area caused by communication between the group leader of the G1 group and the base station 100, and a solid line shows an example of an interference area caused by communication between the group leader and group member in each group did it Since the group leader and the group member are close in distance and can perform communication with lower power, the area that can cause interference is also limited, but the group leader uses a fairly high power to communicate with the base station 100 . Therefore, the area that can cause interference is also widened.

도 2를 참조하면, 하나의 시간 슬롯은 하나의 그룹의 그룹장이 기지국(100)과 통신하고, 동시에 다른 멀리 떨어진 그룹의 그룹원과 그룹장이 통신할 수 있도록 할당된다. 따라서, 하나의 그룹(예: 시간 슬롯(310)에서 G1 그룹)에서 복수의 그룹장이 기지국(100)으로 패킷을 송신하고자 하는 경우 충돌이 일어나고, 패킷 전송이 실패할 수 있다. 또한 하나의 그룹(예: 시간 슬롯(310)에서 G4 그룹)의 그룹원 중 적어도 두 개의 그룹원이 패킷을 송신하고자 하는 경우 충돌이 일어나고, 패킷 전송이 실패할 수 있다. 다만 도 3에 도시된 바와 같이 G1 그룹의 그룹장에 의한 패킷 전송에 의한 간섭 영역이 G4 그룹에 미치지 못하므로, 동일한 시간 슬롯에서 G1 그룹의 그룹장에 의한 패킷 전송과 G4 그룹의 그룹원에 의한 패킷 전송이 있더라도 서로 충돌이 일어나지 않을 수 있다.Referring to FIG. 2 , one time slot is allocated so that the group leader of one group communicates with the base station 100 and at the same time communicates with the group member of another distant group. Therefore, when a plurality of group heads in one group (eg, the G1 group in the time slot 310 ) try to transmit a packet to the base station 100 , a collision may occur and packet transmission may fail. Also, when at least two group members among group members of one group (eg, the G4 group in the time slot 310) try to transmit a packet, a collision may occur and packet transmission may fail. However, as shown in FIG. 3, since the interference area due to packet transmission by the group head of the G1 group does not reach the G4 group, packet transmission by the group head of the G1 group and packet transmission by the group member of the G4 group in the same time slot Even if there is, a collision may not occur with each other.

만약 정상적으로 패킷이 전송되었다면, 수신 노드 또는 기지국(100)은 ACK 패킷을 전송하여 그룹원 또는 그룹장에 패킷을 정상적으로 수신하였음을 알려줄 수 있다. 하지만 충돌이 일어났을 경우, 수신 노드 또는 기지국(100)은 정상적인 패킷 수신이 되지 않았으므로 ACK 패킷을 전송하지 못하며, 패킷을 전송한 노드는 일정 시간 이내에 ACK 패킷을 수신하지 못하여 패킷 전송에 실패하였음을 알 수 있다. If the packet is normally transmitted, the receiving node or base station 100 may transmit an ACK packet to inform the group member or the group leader that the packet has been normally received. However, when a collision occurs, the receiving node or the base station 100 cannot transmit the ACK packet because the normal packet reception has not occurred, and the node that transmitted the packet fails to receive the ACK packet within a certain time and thus fails to transmit the packet. Able to know.

패킷 전송에 실패하였음을 인지한 노드는 지수 백오프를 통해 패킷을 재전송할 수 있는데, 지수 백오프의 단위 시간은 슬롯 프레임시간으로 할 수 있다. 일실시 예에 따라, 발생시킨 난수가 3이면 세 개의 슬롯 프레임 시간만큼 백오프하고 재전송을 시도할 수 있다.A node recognizing that packet transmission has failed may retransmit the packet through exponential backoff, and the unit time of exponential backoff may be a slot frame time. According to an embodiment, if the generated random number is 3, back-off by three slot frame time and retransmission may be attempted.

기지국에서 각 그룹별 최적화된 그룹장의 수를 결정하는 최적화 문제를 푸는데 사용하는 상수 또는 변수의 표기는 다음과 같다.The notation of constants or variables used in the base station to solve the optimization problem of determining the number of group heads optimized for each group is as follows.

NG: 그룹 개수.N G : Number of groups.

L: 슬롯 프레임 길이. 단위는 초(second)이다.L: Slot frame length. The unit is seconds.

S: 시간 슬롯 길이. 단위는 초이고, S=L/NG 로 구할 수 있다.S: time slot length. The unit is seconds, and it can be obtained as S=L/N G.

R: 전송률. 단위는 바이트/초(byte/second)이다.R: Baud rate. The unit is byte/second.

B: 패킷 길이. 단위는 바이트(byte)이다.B: Packet length. The unit is bytes.

pc(n,R): 전송률 R의 n개 노드 경쟁에 의한 패킷 손실 확률 p c (n,R): probability of packet loss due to contention of n nodes at data rate R

Mi: i번째 그룹의 그룹장 개수.M i : The number of group heads in the i-th group.

PR: 수신 전력 또는 대기 전력.P R : Received power or standby power.

Ph: 기지국과 그룹장 간의 통신 시의 송신 전력.P h : Transmission power during communication between the base station and the group head.

Pi: 그룹 내 통신시, 그룹원과 그룹장간 통신시 송신 전력. Ph보다 작다.Pi: Transmission power during intra-group communication and between group members and group heads. smaller than P h.

기지국이 풀어야할 최적화 문제는 주어진 지연 시간과 처리량의 제한 조건하에 그룹장의 전력 소모를 최소화하는 것이다.The optimization problem to be solved by the base station is to minimize the power consumption of the group leader under the constraints of a given delay time and throughput.

여기서 지연 시간에 대한 제한 조건은 다음 [수학식 1]과 같다.Here, the limiting condition for the delay time is as follows [Equation 1].

Figure pat00001
Figure pat00001

여기서, B는 실제 응용에 따라 또는 기지국에 의해 설정되는 임의의 값일 수 있다.Here, B may be any value set according to an actual application or by a base station.

처리량에 대한 제한 조건은 다음 [수학식 2]와 같다. The limiting conditions for the throughput are as follows [Equation 2].

Figure pat00002
Figure pat00002

여기서 A는 실제 응용에 따라 또는 기지국에 의해 설정되는 임의의 값일 수 있다.Here, A may be any value set according to an actual application or by a base station.

그룹장의 전력 소모는 다음 [수학식 3]과 같다. The power consumption of the group leader is as follows [Equation 3].

Figure pat00003
Figure pat00003

기지국(100)은 각 그룹에 대해 [수학식 1] 및 [수학식 2]를 만족하면서 [수학식 3]이 최소화될 수 있는 그룹장 개수(Mi)를 획득할 수 있다. 상기 수학식들에 따라 획득하는 그룹장 개수는 실수로 나오는 것이 일반적이므로 반올림하여 정수값을 획득할 수 있다. 기지국(100)은 각 그룹에 대해 상술한 최적화 문제를 풀어 획득한 정수값과 현재 각 그룹의 그룹장 개수와 비교하여 상술한 동작 방식의 1단계에 따라 각 그룹의 그룹장을 추가하거나 제거할 수 있다. The base station 100 may obtain the number of group heads M i in which [Equation 3] can be minimized while satisfying [Equation 1] and [Equation 2] for each group. Since it is common that the number of group heads obtained according to the above equations is a real number, it is possible to obtain an integer value by rounding. The base station 100 may add or remove group heads of each group according to step 1 of the above-described operation method by comparing the integer values obtained by solving the above-described optimization problem for each group with the current number of group heads of each group.

이러한 최적화 문제를 품으로써 무선 센서 네트워크에서 가장 많은 전력을 사용하는 노드인 그룹장의 전력소모를 최소화할 수 있고 네트워크 전체 수명을 최대화할 수 있다.By having such an optimization problem, the power consumption of the group leader, the node that uses the most power in the wireless sensor network, can be minimized and the overall network lifespan can be maximized.

상술한 [수학식 1] 내지 [수학식 3]의 결과는 다음과 같이 구해질 수 있다.The results of the above [Equation 1] to [Equation 3] can be obtained as follows.

노드들의 평균 패킷 도착률을 μ(packets/second), 그룹의 노드 개수를 Ni라하면 i번째 그룹의 각 그룹장에 할당된 그룹원 개수는

Figure pat00004
로 결정되고, 패킷당 전송 시간(tpk)은 B/R(second/packet)로 결정된다.If the average packet arrival rate of the nodes is μ (packets/second) and the number of nodes in the group is N i , the number of group members assigned to each group head of the i-th group is
Figure pat00004
is determined, and the transmission time per packet (t pk ) is determined by B/R (second/packet).

그룹장은 그룹장 아래의 그룹원과 자기 자신의 패킷을 기지국(100)으로 전달하여야 하기 때문에 i번째 그룹의 그룹장의 평균 패킷 도착률(

Figure pat00005
)은 할당된 그룹원과 자기 자신의 평균 패킷 도착률의 합인
Figure pat00006
로 결정될 수 있다. 그러면 i번째 그룹의 그룹장이 1초중에서 패킷들을 보내는데 걸리는 시간은
Figure pat00007
로 결정되고, i번째 그룹의 그룹장의 송신 소모 전력은
Figure pat00008
이고, i번째 그룹의 그룹장의 수신 소모 전력은
Figure pat00009
이다. 그리고 i번째 그룹의 그룹장의 충돌에 의한 재전송 소모 전력은
Figure pat00010
이다.Since the group leader has to deliver his/her own packet to the base station 100 with the group members below the group leader, the average packet arrival rate (
Figure pat00005
) is the sum of the assigned group members and their own average packet arrival rate.
Figure pat00006
can be determined as Then, the time it takes for the group leader of the i-th group to send packets out of 1 second is
Figure pat00007
is determined, and the transmission power consumption of the group head of the i-th group is
Figure pat00008
and the reception power consumption of the group head of the i-th group is
Figure pat00009
to be. And the power consumption of retransmission due to the collision of group heads of the i-th group is
Figure pat00010
to be.

따라서,

Figure pat00011
이고,
Figure pat00012
이고,
Figure pat00013
로 구해질 수 있다.therefore,
Figure pat00011
ego,
Figure pat00012
ego,
Figure pat00013
can be saved with

도 4는 대규모 센서 노드들을 포함하는 네트워크에서 데이터 통신을 위해 기지국(100)에서 네트워크 프로토콜을 설정하는 예를 도시한 흐름도이다.4 is a flowchart illustrating an example of setting a network protocol in the base station 100 for data communication in a network including large-scale sensor nodes.

도 4를 참조하면 동작 410에서, 기지국(100)은 대규모 센서 노드들을 그룹화할 수 있다. 기지국(100)은 각 그룹의 센서에서 기지국으로 전송하는 트래픽 총량이 비슷하면서 서로 가까이에 있는 노드들이 하나의 그룹을 이루도록 그룹화할 수 있다. 그리고 하나의 그룹에 포함된 그룹원(센서 노드)들 중에서 임의의 하나를 그룹장으로 설정할 수 있다.Referring to FIG. 4 , in operation 410 , the base station 100 may group large-scale sensor nodes. The base station 100 may group nodes that are close to each other to form one group while the total amount of traffic transmitted from the sensors of each group to the base station is similar. In addition, any one of the group members (sensor nodes) included in one group may be set as the group leader.

동작 420에서, 기지국(100)은 대규모 센서 노드로부터 기지국(100)으로 패킷을 전송하기 위한 슬롯 프레임을 설정할 수 있다. 일실시 예에 따라, 기지국(100)은 슬롯 프레임의 길이를 동작 410에서 설정한 그룹의 개수에 패킷 송수신 시에 소요되는 최대 시간을 곱한 값으로 정할 수 있다. 그리고 슬롯 프레임은 그룹 개수와 동일한 개수의 시간 슬롯을 포함할 수 있다.In operation 420 , the base station 100 may set a slot frame for transmitting a packet from the large-scale sensor node to the base station 100 . According to an embodiment, the base station 100 may determine the length of the slot frame as a value obtained by multiplying the number of groups set in operation 410 by the maximum time required for packet transmission and reception. And the slot frame may include the same number of time slots as the number of groups.

동작 430에서, 기지국(100)은 각 시간 슬롯 별 패킷을 전송할 그룹원 및 그룹장을 설정할 수 있다. 도 2에 도시된 바와 같이 하나의 시간 슬롯에서 한 그룹에 속하는 그룹장이 기지국(100)으로 패킷을 전송할 수 있고 동시에 다른 그룹에 속하는 그룹원이 그룹장에게로 패킷을 전송할 수 있다. 따라서 기지국(100)은 특정 시간 슬롯에 대해 패킷을 전송할 그룹장이 속하는 그룹과 패킷을 전소할 그룹원이 속하는 그룹을 설정할 수 있다. 도 2를 참조하면, 시간 슬롯(310)에서는 G1 그룹에 속하는 그룹장과 G4 그룹에 속하는 그룹원이 패킷을 전송하도록 설정할 수 있다.In operation 430, the base station 100 may set a group member and group leader to transmit packets for each time slot. As shown in FIG. 2 , the group leader belonging to one group may transmit a packet to the base station 100 in one time slot, and a group member belonging to another group may transmit a packet to the group leader at the same time. Accordingly, the base station 100 may set a group to which a group leader to transmit a packet belongs and a group to which a group member to transmit a packet for a specific time slot belongs. Referring to FIG. 2 , in a time slot 310 , a group leader belonging to the G1 group and a group member belonging to the G4 group may be configured to transmit packets.

동작 440에서, 기지국(100)은 각 그룹 별로 그룹장 수를 최적화할 수 있다. 다양한 실시 예에 따르면, 특정 그룹에는 복수 개의 그룹장이 있을 수 있다. 동작 410에서는 한 개의 그룹장을 임의로 설정하였지만 동작 440에서의 최적화 결과에 기초하여 복수 개의 그룹장이 설정될 수도 있다. In operation 440, the base station 100 may optimize the number of group heads for each group. According to various embodiments, a specific group may have a plurality of group heads. In operation 410, one group head is arbitrarily set, but a plurality of group heads may be set based on the optimization result in operation 440 .

도 5는 기지국(100)이 특정 그룹의 그룹장 수를 결정하는 예를 도시한 흐름도이다.5 is a flowchart illustrating an example in which the base station 100 determines the number of group heads of a specific group.

도 5를 참조하면, 동작 510에서, 기지국(100)은 그룹장들에 그룹원을 할당할 수 있다. 일 실시 예에 따라, 기지국(100)은 각 그룹장에 동일한 수의 그룹원을 할당할 수 있다. 예를 들면 하나의 그룹에 104개의 노드가 있고 4개의 노드가 그룹장으로 동작하고 100개의 노드가 그룹원으로 동작하면 각 그룹장에 25개의 그룹원을 할당할 수 있다. 최초에 1개의 그룹장이 있는 경우에는 모든 그룹원을 해당 그룹장에 할당할 수 있다.Referring to FIG. 5 , in operation 510 , the base station 100 may allocate group members to group heads. According to an embodiment, the base station 100 may allocate the same number of group members to each group head. For example, if there are 104 nodes in one group, 4 nodes act as group heads, and 100 nodes act as group members, 25 group members can be assigned to each group leader. If there is one group leader initially, all group members can be assigned to the group leader.

동작 520에서, 기지국(100)은 동작 510에 따른, 그룹원 할당에 기초하여 그룹장 수에 대한 최적화를 진행할 수 있다. 일실시 예에 따라, [수학식 1] 내지 [수학식 3]에 기초하여 최적화된 그룹장의 수(Mi)를 결정할 수 있다.In operation 520 , the base station 100 may optimize the number of group heads based on the group member allocation in operation 510 . According to an embodiment, the optimized number of group heads (M i ) may be determined based on [Equation 1] to [Equation 3].

동작 530에서, 동작 520에서 구한 최적화된 그룹장의 수(Mi)와 현재의 그룹장의 수를 비교할 수 있다.In operation 530, the number of optimized group lengths (M i ) obtained in operation 520 may be compared with the current number of group lengths.

동작 540에서, 동작 530의 비교결과, 동일하면 현재의 그룹장 수를 유지하면서 종료하고, 동일하지 아니하면 동작 550으로 진행할 수 있다.In operation 540, if the result of the comparison in operation 530 is the same, the operation is terminated while maintaining the current number of group heads. If not, operation 550 may be performed.

동작 550에서, 기지국(100)은 최적화된 그룹장의 수(Mi)가 현재의 그룹장 수보다 많으면 현재의 그룹장 수를 1 증가시키고, 최적화된 그룹장의 수(Mi)가 현재의 그룹장 수보다 작으면 현재의 그룹장 수를 1 감소시킨다. 그리고 동작 510 내지 동작 540을 다시 수행할 수 있다. In operation 550, the base station 100 is the number of optimization geurupjang (M i) is increased by one the number of current geurupjang greater than the current number of geurupjang of and, the number of optimization geurupjang (M i) is less than the number of the current geurupjang If so, the current number of group leaders is decreased by 1. Then, operations 510 to 540 may be performed again.

기지국(100)은 최적화된 그룹장의 수(Mi)와 현재의 그룹장 수가 동일할 때까지 동작 510 내지 동작 550을 반복함으로써 각 그룹에서 최적화된 현재의 그룹장 수를 결정할 수 있다. The base station 100 may determine the optimized current number of group heads in each group by repeating operations 510 to 550 until the optimized number of group heads (M i ) and the current number of group heads are the same.

도 6은 기지국(100)의 구성을 도시한 도면이다.6 is a diagram illustrating the configuration of the base station 100 .

도 6을 참조하면, 기지국(100)은 통신부(110) 및 프로세서(120)를 포함할 수 있다.Referring to FIG. 6 , the base station 100 may include a communication unit 110 and a processor 120 .

통신부(110)는 센서 노드들과 패킷을 송수신하는 통신 기능을 수행할 수 있으며, 바람직하게는 그룹장으로 선택된 센서 노드들과 통신을 수행할 수 있다.The communication unit 110 may perform a communication function of transmitting and receiving packets to and from the sensor nodes, and preferably may communicate with the sensor nodes selected as a group leader.

프로세서(120)는 상술한 본 발명에서 제안하는 MAC 프로토콜에 따른 동작을 수행할 수 있다. 일실시 예에 따라, 프로세서(120)는 복수 개일 수 있다. 일실시 예에 따라, 프로세서(120)는 도 4에 도시된 흐름도에 따른 동작 및/또는 도 5에 도시된 흐름도에 따른 동작을 수행할 수 있다.The processor 120 may perform an operation according to the MAC protocol proposed by the present invention. According to an embodiment, there may be a plurality of processors 120 . According to an embodiment, the processor 120 may perform an operation according to the flowchart illustrated in FIG. 4 and/or an operation according to the flowchart illustrated in FIG. 5 .

상술한 본 발명에서 제안하는 MAC 프로토콜에 따른 동작은 기지국의 프로세서(120)에 의해 동적으로 수행될 수 있지만 다른 일실시 예에 따라, 해당 동작을 외부 서버가 수행하고 기지국은 외부 서버로부터 결과를 받아, 그 결과에 맞추어 수행할 수도 있다. The above-described operation according to the MAC protocol proposed in the present invention may be dynamically performed by the processor 120 of the base station, but according to another embodiment, an external server performs the corresponding operation and the base station receives the result from the external server , can also be performed according to the results.

상술한 바와 같이 대규모 센서 노드들을 포함하는 IoT 환경에서 노드들을 그룹화한 뒤 각 그룹에게 다른 시간 슬롯을 주어 통신하게 하는 이유는, 그렇게 하지 않았을 때와 비교하여 동일 시간 내에 패킷 송신을 위해 경쟁하는 노드 개수를 줄임으로써 패킷 송신 충돌 확률을 낮추기 위함이다. As described above, the reason for grouping nodes in an IoT environment including large-scale sensor nodes and giving each group a different time slot for communication is the number of nodes competing for packet transmission within the same time compared to when not doing so. This is to reduce the probability of packet transmission collision by reducing .

또한, 균일한 시간 슬롯을 사용하기 때문에 각 그룹 내 노드의 개수가 최대한 균일하게 되도록 그룹화함으로써 충돌확률을 낮출 수 있다.In addition, since a uniform time slot is used, the probability of collision can be reduced by grouping so that the number of nodes in each group is as uniform as possible.

이와 같이 그룹화한 경우 두 가지 통신을 고려하여야 하는데, 그룹 내 통신과 그룹 외 통신이다. 그룹 내 통신은 그룹장과 그룹원 사이의 통신이고, 그룹 외 통신은 그룹장과 기지국 사이의 통신으로 볼 수 있다. In the case of grouping in this way, two types of communication should be considered, intragroup communication and out-of-group communication. In-group communication is communication between the group leader and group members, and out-of-group communication is communication between the group leader and the base station.

본 발명에서는 노드의 위치에 기반하여 그룹화하였기 때문에 그룹 내 통신은 낮은 전력으로도 가능하게 되어 전력 소모를 줄일 수 있을뿐만 아니라 그룹 간의 간섭도 최소화할 수 있다. In the present invention, since the nodes are grouped based on the location of the nodes, intra-group communication is possible with low power, thereby reducing power consumption and minimizing interference between groups.

그룹 외 통신은 동일한 시간 슬롯동안 일어나는 가까운 그룹의 그룹 내 통신에 간섭을 미칠 수 있기 때문에 이를 최소화하기 위해서 동일한 시간 슬롯 동안에는 최대한 멀리 떨어진 두 그룹을 묶어서 한 그룹은 그룹내 통신을, 다른 그룹은 그룹 외 통신을 하도록 함으로써 간섭 영향을 최소화하였다.Because out-of-group communication may interfere with intra-group communication of a nearby group that occurs during the same time slot, in order to minimize this, two groups are grouped as far apart as possible during the same time slot so that one group conducts intra-group communication and the other group performs intra-group communication. By allowing communication, the influence of interference is minimized.

상술한 본 발명의 네트워크 상의 패킷 전송을 위한 프로토콜에 따르면, 모든 노드가 그룹별로 분류가 되고 각 그룹의 그룹장이 정해지게 된다. 그룹장의 역할은 그룹 내의 그룹장 제외의 노드들인 그룹원들로부터 패킷을 받아 기지국으로 전달하는 것이다. 그룹내 그룹장은 적어도 한 개 이상이며, 최대로는 그룹내 모든 노드가 그룹장일 경우이다.According to the protocol for packet transmission on the network of the present invention described above, all nodes are classified by group and the group head of each group is determined. The role of the group leader is to receive packets from group members that are nodes other than the group leader in the group and deliver them to the base station. There is at least one group head within a group, and the maximum is when all nodes in the group are group heads.

그룹원들은 그룹장들에게 최대한 균등하게 분배되어 2홉 통신으로 기지국에게 패킷을 보낼 수 있도록 설정할 수 있다. 그룹장이 복수 개인 경우, 그룹 내 그룹원들을 복수의 그룹장에 그룹장 및 그룹원의 위치에 기반하여 할당한다면, 그룹장에게 동일한 시간 슬롯 내에 패킷 전송을 위해 경쟁해야 하는 그룹원들의 개수가 줄어들어 충돌확률이 낮아진다. 반면, 복수의 그룹장들 간에는 기지국으로 패킷을 전송하기 위해 동일한 시간 슬롯에서 경쟁하여야 하므로, 그룹장 수가 늘어날수록 충돌확률은 증가한다. 따라서 네트워크 환경과 응용의 목표치에 맞게 적절한 그룹장 개수의 선택이 필요하다. 우리는 이 문제를 최적화 문제로 치환하여 상술한 방식으로 해결함으로써 네트워크 수명을 최대화하는 최적의 그룹장 개수를 응용의 종류와 네트워크 환경에 맞게 결정할 수 있다.Group members can be set so that packets can be sent to the base station through two-hop communication by being distributed as evenly as possible to the group heads. In the case of a plurality of group heads, if group members are assigned to a plurality of group heads based on the location of the group head and group members, the number of group members who have to contend for packet transmission within the same time slot to the group head is reduced, thereby reducing the probability of collision. . On the other hand, since the plurality of group heads must compete in the same time slot to transmit packets to the base station, the probability of collision increases as the number of group heads increases. Therefore, it is necessary to select the appropriate number of group heads according to the target value of the network environment and application. By replacing this problem with an optimization problem and solving it in the manner described above, the optimal number of group heads maximizing the network lifetime can be determined according to the type of application and the network environment.

Claims (1)

대규모 센서 노드 네트워크를 위한 네트워크 프로토콜 설정 방법에 있어서,
상기 대규모 센서 노드가 속하는 복수 개의 그룹 및 각 그룹의 그룹정을 설정하는 동작;
슬롯 프레임 및 상기 슬롯 프레임 내 복수의 시간 슬롯을 설정하는 동작;
각 시간 슬롯에서 통신을 수행할 그룹원 및 그룹장을 설정하는 동작; 및
각 그룹 별 그룹장의 수를 최적화하는 동작을 포함하는 방법.
A method for setting a network protocol for a large-scale sensor node network, the method comprising:
setting a plurality of groups to which the large-scale sensor node belongs and group information of each group;
setting a slot frame and a plurality of time slots in the slot frame;
setting a group member and group leader to perform communication in each time slot; and
A method that includes optimizing the number of group heads for each group.
KR1020190160081A 2019-12-04 2019-12-04 An adaptive clustering method for massive IoT and the sensor node thereof KR20210070062A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190160081A KR20210070062A (en) 2019-12-04 2019-12-04 An adaptive clustering method for massive IoT and the sensor node thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190160081A KR20210070062A (en) 2019-12-04 2019-12-04 An adaptive clustering method for massive IoT and the sensor node thereof

Publications (1)

Publication Number Publication Date
KR20210070062A true KR20210070062A (en) 2021-06-14

Family

ID=76417577

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190160081A KR20210070062A (en) 2019-12-04 2019-12-04 An adaptive clustering method for massive IoT and the sensor node thereof

Country Status (1)

Country Link
KR (1) KR20210070062A (en)

Similar Documents

Publication Publication Date Title
US7522563B2 (en) Network protocol
US8081575B2 (en) System and method for dynamic adaptation of data rate and transmit power with a beaconing protocol
JP4105090B2 (en) System and method for collision-free transmission scheduling using proximity information and advertised transmission time
US8995380B2 (en) Scheduling in a multi-hop wireless network
JP2018082430A (en) Device and method for routing and scheduling in multi-hop network
Ait Aoudia et al. OPWUM: Opportunistic MAC protocol leveraging wake-up receivers in WSNs
KR20060088994A (en) Data transmission and reception method in zigbee system and coodinator and device thereof
KR101250036B1 (en) Communication Apparatus and Method for increasing reliability in Low Power Time Division Access Method of Sensor Network
JP5460859B2 (en) Beacon for star network, sensor node in star network, gateway initialization method in star network, and star network operation method
CN103118414A (en) Wireless access control and timeslot allocation method applicable to ultra-wideband
Cheng et al. Taming collisions for delay reduction in low-duty-cycle wireless sensor networks
US11166309B2 (en) Simultaneous transmit and receive operation in WLANs
US9648590B2 (en) Communication device
EP3373647A1 (en) Enhanced network access scheme
JP2022084701A (en) Communication device and communication method
US10470178B2 (en) Devices for a wireless network system and communication methods thereof
KR20210070062A (en) An adaptive clustering method for massive IoT and the sensor node thereof
Krishnamurthy et al. Reservation-based protocol for monitoring applications using IEEE 802.15. 4 sensor networks
KR101557588B1 (en) Apparatus for packet retransmission in wireless sensor network
Choudhury et al. Dynamic adaptation of duty cycling with MAC parameters in cluster tree IEEE 802.15. 4 networks
KR20100047450A (en) Method of configuring clustered wireless sensor networks and clustered wireless sensor networks thereby
KR20100053354A (en) Method for cross-layered routing and transmitting data in wireless sensor network
Gao et al. A multi-channel MAC protocol for underwater acoustic networks
Okumura et al. Dependable source routing scheme for multi-hop networks based on receiver-initiated MAC protocol
KR20090106033A (en) Transmitting device, receiving device and transmitter-receiver system in wireless sensor network