KR20220051540A - Apportunistic data dissemination method and wireless sensor network using the method - Google Patents

Apportunistic data dissemination method and wireless sensor network using the method Download PDF

Info

Publication number
KR20220051540A
KR20220051540A KR1020200135066A KR20200135066A KR20220051540A KR 20220051540 A KR20220051540 A KR 20220051540A KR 1020200135066 A KR1020200135066 A KR 1020200135066A KR 20200135066 A KR20200135066 A KR 20200135066A KR 20220051540 A KR20220051540 A KR 20220051540A
Authority
KR
South Korea
Prior art keywords
node
packet
data packet
received
nodes
Prior art date
Application number
KR1020200135066A
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 KR1020200135066A priority Critical patent/KR20220051540A/en
Publication of KR20220051540A publication Critical patent/KR20220051540A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/04Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
    • H04W40/06Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on characteristics of available antennas
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/127Shortest path evaluation based on intermediate node capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • 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

Landscapes

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

Abstract

The present invention relates to an opportunistic data dissemination method and a wireless sensor network using the same. The opportunistic data dissemination method is for data dissemination at each node in a wireless sensor network including multiple sensor nodes. The method includes the following steps of: storing and managing packet reception state information on neighbor nodes with respect to a data packet to be disseminated; identifying neighbor nodes that have not received the data packet using the packet reception state information, selecting one that wakes up first and is capable of receiving the data packet out of the neighbor nodes that have not received the data packet, and disseminating the data packet to the selected neighbor node; and returning to a sleep mode when an ACK message is received from the neighbor node to which the data packet has been disseminated. The header of the data packet includes the packet reception state information in a bitmap format, and the packet reception state information is information on the neighbor nodes that have received the data packet.

Description

기회적 데이터 전송 방법 및 상기 방법을 이용한 무선 센서 네트워크{Apportunistic data dissemination method and wireless sensor network using the method}Opportunistic data transmission method and wireless sensor network using the method

본 발명은 무선 센서 네트워크에서의 데이터 전송 방법에 관한 것으로서, 더욱 구체적으로는 비동기식 듀티 사이클링 무선 센서 네트워크(Asynchronous duty-cycling wireless sensor network)에서, 기회적 포워딩(apportunistic forwarding)을 통해 각 노드가 패킷을 이웃 노드에게 전송하도록 함으로써, 매번 서로 다른 경로를 통해 데이터 전송이 이루어지게 되어 에너지 소모가 노드들 간의 균형이 이루어지게 될 뿐만 아니라 저전력의 데이터 전송을 할 수 있도록 하는 것을 특징으로 하는 기회적 데이터 전송 방법에 관한 것이다. The present invention relates to a data transmission method in a wireless sensor network, and more particularly, in an asynchronous duty-cycling wireless sensor network, each node transmits a packet through opportunistic forwarding. Opportunistic data transmission method, characterized in that by transmitting data to neighboring nodes, data transmission is made through different paths each time, so that energy consumption is balanced between nodes and low-power data transmission is possible is about

일반적으로, 비동기식 듀티 사이클링 네트워크(Asynchronous duty-cycling wireless sensor network)에서는 각 노드가 독립적으로 자신의 wake-up time을 선택하게 된다. 이러한 환경에서, 데이터 전파(Data Dissemination)는 데이터 패킷을 브로드캐스팅하여 깨어 있는 이웃노드뿐만 아니라 모든 이웃 노드에게 전송하여야 하므로, 에너지를 많이 소모하게 된다. 또한, 노드는 모든 이웃 노드에게 전체 wake-up interval동안 계속하여 패킷을 전송함으로써 패킷을 이웃노드들에게 전송할 수 있기 때문에 많은 에너지 소모와 많은 전파 지연이 발생하게 된다. In general, in an asynchronous duty-cycling wireless sensor network, each node independently selects its own wake-up time. In such an environment, data dissemination consumes a lot of energy because a data packet has to be transmitted to all neighboring nodes as well as to an awake neighboring node by broadcasting. In addition, since the node can transmit the packet to the neighboring nodes by continuously transmitting the packet to all neighboring nodes for the entire wake-up interval, a lot of energy consumption and a lot of propagation delay occur.

일반적으로 무선 센서 네트워크를 구성하는 노드들은 용량과 크기가 작은 센서 노드들로서 에너지를 저장하는 배터리의 용량에도 한계가 있기 때문에, 무선 센서 네트워크는 저전력으로 구동될 수 있도록 구성되는 것이 바람직하다. 이러한 목적을 달성하기 위하여, 무선 센서 네트워크의 노드들은 비동기식 티 사이클링 방식으로 구동되어 슬립 모드(Sleep Mode)와 활성 모드(Active Mode)를 주기적으로 번갈아가며 실행되며, 자신이 선택하는 시간에 깨어나서 활성 모드로 동작하여 데이터를 송수신하며, 활성 모드가 종료되면 슬립 모드로 변환된다. In general, the nodes constituting the wireless sensor network are sensor nodes having small capacity and size, and since there is a limit to the capacity of a battery for storing energy, it is preferable that the wireless sensor network be configured to be driven with low power. In order to achieve this purpose, the nodes of the wireless sensor network are driven in an asynchronous t-cycling method to periodically alternate between sleep mode and active mode. It operates to transmit and receive data, and when the active mode ends, it is converted to the sleep mode.

전술한 무선 센서 네트워크에 있어서, 데이터를 전송하는 프로토콜은 대략 아래와 같다. 데이터 전송 프로토콜 중 하나는 플러딩(Flooding) 기반의 데이터 전송 방법이다. 플러딩 기반의 프로토콜은, 소스 노드가 모든 이웃 노드들에게 패킷을 브로드캐스팅하며, 패킷을 수신한 노드는 다시 자신의 모든 이웃 노드들에게 해당 패킷을 브로드캐스팅하게 된다. 이 경우, 패킷이 중복 송신되는 것을 피하기 위하여, 브로드캐스팅 패킷은 헤더에 시퀀스 번호(Sequence number)를 저장한다. 이러한 플러딩 기반의 전송 방식은 신뢰성은 우수하나, 패킷이 플러딩되면 중복 전송이 많이 발생하게 되고 에너지가 많이 소모되는 문제가 있다. In the aforementioned wireless sensor network, a protocol for transmitting data is roughly as follows. One of the data transmission protocols is a data transmission method based on flooding. In the flooding-based protocol, the source node broadcasts a packet to all neighboring nodes, and the node receiving the packet broadcasts the packet to all its neighboring nodes again. In this case, in order to avoid duplicate transmission of the packet, the broadcasting packet stores a sequence number in the header. Although this flooding-based transmission method has excellent reliability, there is a problem in that, when a packet is flooded, a lot of redundant transmission occurs and a lot of energy is consumed.

다른 데이터 전송 프로토콜 중 하나는 트리 기반의 데이터 전송 방법이다. 트리 기반의 데이터 전송 방법은 네트워크에서의 전파 트리를 구성하고, 패킷을 트리를 따라 전송하게 된다. 전파 트리는 집합 트리(collection tree)의 역구조일 수 있다. 이러한 트리 기반의 전송 방식은 부모노드가 자식 노드에게 패킷을 unicast하는 방식이다. 이러한 방식에서 100%의 신뢰성을 확보하기 위하여, 각 노드는 자신의 모든 자식 노드가 패킷을 수신하였는지 여부를 확인하여야 한다. 이러한 트리 기반의 데이터 전송 방식은 데이터 전송 경로의 변경이 어려우며, 노드 수가 증가하면 전파율(Dissemination ratio)는 우수하나 에너지 소모가 증가하게 되는 문제가 발생한다. One of the other data transfer protocols is a tree-based data transfer method. The tree-based data transmission method constructs a propagation tree in the network and transmits packets along the tree. The propagation tree may be an inverse structure of a collection tree. This tree-based transmission method is a method in which a parent node unicasts a packet to a child node. In order to secure 100% reliability in this way, each node must check whether all its child nodes have received the packet. In this tree-based data transmission method, it is difficult to change the data transmission path, and when the number of nodes increases, the dissemination ratio is excellent, but energy consumption increases.

한국등록특허공보 제 10-1297729호Korean Patent Publication No. 10-1297729 한국등록특허공보 제 10-1765416호Korean Patent Publication No. 10-1765416

전술한 문제점을 해결하기 위한 본 발명의 목적은 기회적 포워딩을 사용하여 각 노드가 먼저 깨어나 패킷을 수신하는 이웃 노드에게 패킷을 전송하도록 하고 패킷 헤더에 모든 노드의 패킷 수신 상태 정보와 패킷 수신 확률 정보를 포함하고, 이를 이용하여 데이터 패킷을 송신하도록 함으로써, 신뢰성을 가지면서도 저전력으로 데이터 패킷을 전송할 수 있도록 하는 기회적 데이터 전송 방법을 제공하는 것이다. An object of the present invention to solve the above problem is to use opportunistic forwarding so that each node first wakes up and transmits a packet to a neighboring node receiving a packet, and packet reception status information and packet reception probability information of all nodes in the packet header To provide an opportunistic data transmission method that includes and transmits a data packet by using the data packet to transmit a data packet with low power while having reliability.

전술한 기술적 과제를 달성하기 위한 본 발명의 제1 특징에 따른 기회적 데이터 전송 방법은, 복수 개의 센서 노드들로 이루어진 무선 센서 네트워크에서의 각 노드의 기회적 데이터 전송 방법에 관한 것으로서, (a) 전송할 데이터 패킷에 대하여 이웃 노드들의 패킷 수신 상태 정보를 저장 및 관리하는 단계; (b) 상기 패킷 수신 상태 정보를 이용하여 상기 데이터 패킷을 수신하지 않은 이웃 노드들을 확인하고, 상기 데이터 패킷을 수신하지 않은 이웃 노드들 중 가장 먼저 깨어나 데이터 패킷을 수신할 수 있는 이웃 노드를 선택하고, 상기 데이터 패킷을 상기 선택된 이웃 노드에게 전송하는 단계; (c) 상기 데이터 패킷을 전송한 이웃 노드로부터 ACK 메시지를 수신하면 슬립(Sleep) 모드로 되돌아가는 단계;를 포함하고, 상기 데이터 패킷의 헤더(header)는 해당 데이터 패킷을 수신한 이웃 노드들에 대한 정보인 패킷 수신 상태 정보를 비트맵(bitmap) 형태로 포함한다. An opportunistic data transmission method according to a first aspect of the present invention for achieving the above-described technical problem relates to an opportunistic data transmission method of each node in a wireless sensor network comprising a plurality of sensor nodes, (a) storing and managing packet reception state information of neighboring nodes with respect to data packets to be transmitted; (b) checking the neighbor nodes that have not received the data packet by using the packet reception status information, and selects a neighbor node that wakes up first and can receive the data packet from among the neighbor nodes that have not received the data packet; , transmitting the data packet to the selected neighbor node; (c) returning to the sleep mode when receiving an ACK message from the neighbor node that has transmitted the data packet, wherein the header of the data packet is It includes packet reception state information, which is information about the , in the form of a bitmap.

전술한 제1 특징에 따른 무선 센서 네트워크에서의 기회적 데이터 전송 방법에 있어서, 각 노드는 2-홉(hop) 이웃 노드에 대한 정보를 포함하는 이웃 노드 테이블을 구비하고, 상기 (b) 단계는, 데이터 패킷을 수신하지 못한 이웃 노드들을 서로 연결시키는 서브그래프(sub-graph)를 형성하고, 상기 서브그래프를 이용하여 하나의 이웃 노드에게 데이터 패킷을 전송할지 복수 개의 이웃 노드에게 데이터 패킷을 전송할지를 결정하고, 상기 결정에 따라 데이터 패킷을 송신할 이웃 노드를 선택하고, 상기 선택된 이웃 노드에게 데이터 패킷을 송신하는 것이 바람직하다. In the opportunistic data transmission method in the wireless sensor network according to the first aspect described above, each node includes a neighbor node table including information on a two-hop neighbor node, and the step (b) comprises: , forms a sub-graph that connects neighboring nodes that have not received a data packet to each other, and determines whether a data packet is transmitted to one neighboring node or a data packet to a plurality of neighboring nodes using the sub-graph. It is preferable to make a decision, select a neighbor node to transmit a data packet according to the determination, and transmit the data packet to the selected neighbor node.

전술한 제1 특징에 따른 무선 센서 네트워크에서의 기회적 데이터 전송 방법은, (d) 노드가 데이터 패킷을 수신하는 단계를 더 구비하고, 상기 (d) 단계는, (d1) 이웃 노드로부터 새로운 데이터 패킷을 수신하면, 상기 데이터 패킷에 포함된 패킷 수신 상태 정보를 갱신하여 저장하고, 상기 갱신된 패킷 수신 상태 정보를 포함한 ACK 메시지를 생성하여 송신 노드(sender)에게 전송하는 단계; 및 (d2) 이웃 노드로부터 이미 수신된 데이터 패킷을 중복 수신하면, 자신의 패킷 수신 상태 정보와 상기 중복 수신된 데이터 패킷의 패킷 수신 상태 정보를 비교하고, 비교 결과에 따라 송신 노드(Sender)로 ACK 메시지를 전송할지 여부를 결정하는 단계;를 구비한다. The opportunistic data transmission method in a wireless sensor network according to the first aspect described above further comprises the step of (d) receiving a data packet by a node, wherein the step (d) includes: (d1) new data from a neighboring node upon receiving a packet, updating and storing packet reception status information included in the data packet, generating an ACK message including the updated packet reception status information, and transmitting it to a sender; and (d2) when a data packet already received from a neighbor node is received in duplicate, the packet reception status information of the neighbor node is compared with the packet reception status information of the duplicate received data packet, and an ACK is sent to the sending node (Sender) according to the result of the comparison. and determining whether to transmit the message.

전술한 제1 특징에 따른 무선 센서 네트워크에서의 기회적 데이터 전송 방법에 있어서, 상기 (d2) 단계에서, 상기 비교 결과에 따라, 만약 중복 수신된 데이터 패킷의 패킷 수신 상태 정보가 자신의 패킷 수신 상태 정보를 모두 포함하고 있는 경우, 상기 중복 수신된 데이터 패킷을 무시하고 송신 노드에게 ACK 메시지를 전송하지 않으며, 만약 중복 수신된 데이터 패킷의 패킷 수신 상태 정보가 자신의 패킷 수신 상태 정보를 포함하고 있지 않는 경우, 자신의 패킷 수신 상태 정보를 갱신하고, 상기 갱신된 패킷 수신 상태 정보를 포함하는 ACK 메시지를 생성하고, 생성된 ACK 메시지를 송신 노드에게 전송하는 것이 바람직하다. In the opportunistic data transmission method in the wireless sensor network according to the first aspect, in the step (d2), according to the comparison result, if the packet reception status information of the duplicate received data packet is its own packet reception status If all information is included, the duplicate received data packet is ignored and an ACK message is not transmitted to the transmitting node. If the duplicate received data packet packet reception status information does not include its own packet reception status information In this case, it is preferable to update its own packet reception status information, generate an ACK message including the updated packet reception status information, and transmit the generated ACK message to the transmitting node.

전술한 제1 특징에 따른 무선 센서 네트워크에서의 기회적 데이터 전송 방법에 있어서, 데이터 패킷은 헤더에 수신 확률(Reception Probabiliy)을 포함하고, 각 노드는 이웃 노드로부터 데이터 패킷이 수신되면 상기 수신 확률에 따라 데이터 패킷의 수신 여부를 결정하는 것이 바람직하다. In the method for transmitting opportunistic data in a wireless sensor network according to the first aspect described above, a data packet includes a reception probability in a header, and each node receives a data packet from a neighboring node according to the reception probability. It is preferable to determine whether to receive the data packet according to the

전술한 제1 특징에 따른 무선 센서 네트워크에서의 기회적 데이터 전송 방법에 있어서, 상기 무선 센서 네트워크는, 네트워크를 구성하는 모든 노드에게 고유 식별자를 부여하거나, 네트워크를 구성하는 노드들을 복수 개의 그룹으로 분류하고, 각 노드에 대하여 그룹 식별자와 그룹 내 고유 식별자를 부여하는 것이 바람직하다. In the method for transmitting opportunistic data in a wireless sensor network according to the first aspect described above, the wireless sensor network assigns a unique identifier to all nodes constituting the network or classifies the nodes constituting the network into a plurality of groups And, it is preferable to assign a group identifier and a unique identifier within the group to each node.

본 발명의 제2 특징에 따른 무선 센서 네트워크는, 복수 개의 센서 노드들로 이루어진 무선 센서 네트워크에 있어서, 각 노드에는 고유 식별자가 할당되고 각 노드는 이웃 노드에 대한 정보를 포함하는 이웃 노드 테이블(neighbor table)을 구비하고, 데이터 패킷에 대한 노드들의 패킷 수신 상태 정보를 저장 및 관리하는 것을 특징으로 하며, 각 노드는 데이터 패킷을 수신하지 않은 이웃 노드들 중 깨어 있는 이웃 노드를 선택하고, 선택된 이웃 노드에게 데이터 패킷을 전송하고, 데이터 패킷을 수신한 이웃 노드로부터 ACK 메시지를 수신하면 슬립(Sleep) 모드로 되돌아가는 것을 특징으로 하며, 데이터 패킷은 헤더(header)에 해당 데이터 패킷을 수신한 노드들에 대한 정보인 패킷 수신 상태 정보를 비트맵(bitmap) 형태로 포함한다. A wireless sensor network according to a second aspect of the present invention is a wireless sensor network composed of a plurality of sensor nodes. Each node is assigned a unique identifier, and each node includes a neighbor node table (neighbor table) including information on the neighbor node. table), and storing and managing packet reception state information of nodes with respect to data packets, wherein each node selects an awake neighboring node from among neighboring nodes that have not received the data packet, and selects the selected neighboring node It is characterized in that it returns to sleep mode when it transmits a data packet to the node and receives an ACK message from the neighbor node that has received the data packet. It includes packet reception state information, which is information about the , in the form of a bitmap.

전술한 제2 특징에 따른 무선 센서 네트워크에 있어서, 각 노드는 2-홉(hop) 이웃 노드에 대한 정보를 포함하는 이웃 노드 테이블을 구비하고, 상기 노드는, 데이터 패킷의 기회적 전송을 위하여, 데이터 패킷을 수신하지 못한 이웃 노드들을 서로 연결시키는 서브그래프(sub-graph)를 형성하고, 상기 서브그래프를 이용하여 하나의 이웃 노드에게 데이터 패킷을 전송할지 복수 개의 이웃 노드에게 데이터 패킷을 전송할지를 결정하고, 상기 결정에 따라 데이터 패킷을 송신할 이웃 노드를 선택하고, 상기 선택된 이웃 노드에게 데이터 패킷을 송신하고, 데이터 패킷을 수신한 이웃 노드로부터 ACK 메시지를 수신하면 슬립(Sleep) 모드로 되돌아가는 것이 바람직하다. In the wireless sensor network according to the second aspect, each node includes a neighbor node table including information on a two-hop neighbor node, and the node includes: A sub-graph is formed that connects neighboring nodes that have not received a data packet, and the sub-graph is used to determine whether to transmit a data packet to one neighboring node or a data packet to a plurality of neighboring nodes. and selecting a neighbor node to transmit a data packet according to the determination, transmitting a data packet to the selected neighbor node, and returning to sleep mode when an ACK message is received from the neighbor node that has received the data packet desirable.

전술한 제2 특징에 따른 무선 센서 네트워크에 있어서, 각 노드는, 이웃 노드로부터 새로운 데이터 패킷을 수신하면, 상기 데이터 패킷에 포함된 패킷 수신 상태 정보를 갱신하여 저장하고, 상기 갱신된 패킷 수신 상태 정보를 포함한 ACK 메시지를 생성하여 송신 노드(sender)에게 전송하는 것을 특징으로 하며, 이미 수신된 데이터 패킷을 이웃 노드로부터 중복 수신하면, 자신의 패킷 수신 상태 정보와 상기 중복 수신된 데이터 패킷의 패킷 수신 상태 정보를 비교하고, 비교 결과에 따라 송신 노드(Sender)로 ACK 메시지를 전송할지 여부를 결정하는 것이 바람직하다. In the wireless sensor network according to the second aspect, when each node receives a new data packet from a neighboring node, it updates and stores packet reception state information included in the data packet, and the updated packet reception state information It is characterized in that it generates an ACK message including It is preferable to compare the information and determine whether to transmit the ACK message to the transmitting node (Sender) according to the comparison result.

전술한 제2 특징에 따른 무선 센서 네트워크에 있어서, 데이터 패킷은 헤더에 수신 확률(Reception Probability)을 포함하고, 각 노드는 이웃 노드로부터 데이터 패킷이 수신되면 상기 수신 확률에 따라 데이터 패킷의 수신 여부를 결정하는 것이 바람직하다. In the wireless sensor network according to the second aspect, a data packet includes a reception probability in a header, and each node determines whether a data packet is received according to the reception probability when a data packet is received from a neighboring node. It is desirable to decide

전술한 본 발명에 따른 기회적 데이터 전송 방법은 임의의 노드로 패킷을 전송함에 있어 매번 서로 다른 경로를 통해 전송하게 되며, 이로 인하여 별도의 측정이 없더라도 각 노드의 에너지 소모는 자연적으로 균형을 맞출 수 있게 된다. The above-described opportunistic data transmission method according to the present invention transmits a packet to an arbitrary node through a different path each time, and for this reason, energy consumption of each node can be naturally balanced even without separate measurement. there will be

전파 시작시에는 패킷을 수신하는 이웃 노드들이 많이 있기 때문에, 송신 노드가 매우 짧은 시간동안 전송하여야 한다. 하지만, 패킷을 수신한 노드가 증가할수록, 송신 노드의 전송 간격(transmit duration)은 더 길어지게 되고, 그 결과 더 많은 에너지를 소비하게 된다. Since there are many neighboring nodes that receive the packet at the start of the propagation, the transmitting node must transmit for a very short time. However, as the number of nodes receiving the packet increases, the transmit duration of the transmitting node becomes longer, and as a result, more energy is consumed.

또한, 본 발명에 따른 기회적 데이터 전송 방법은 다양한 네트워크 환경에 있어서, 다른 데이터 전송 방법들에 비하여, network lifetime이 더 길어지고 전파 지연이 짧아지게 된다. In addition, the opportunistic data transmission method according to the present invention has a longer network lifetime and shorter propagation delay than other data transmission methods in various network environments.

도 1은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법을 설명하기 위하여 예시적으로 도시한 시나리오로서, (a)는 네트워크 토폴로지로서 점선은 각 노드에 대한 이웃 관계를 나타내며, (b)는 기존의 방식인 트리 기반의 전파 규약에 따른 경로이며, (c) 및 (d)는 본 발명에 따른 기회적 데이터 전송 방법에 따른 경로들이다.
도 2는 패킷 헤더들을 예시적으로 도시한 것으로서, 도 2(a)는 IEEE 802.15.4의 패킷 헤더를 도시한 것이며, 도 2(b)는 본 발명에 따른 기회적 데이터 전송 방법에서 규정된 패킷 헤더이다.
도 3은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법의 동작을 설명하기 위한 것으로서, (a)는 전송 플로우를 도시한 것이며 (b)는 노드 0로부터 전송된 패킷을 수신한 이후의 노드 1의 이웃 노드 테이블(Neighbor table)을 도시한 도표이다.
도 4는 도 1(d)에 도시된 시나리오에 대응되는 전송 플로우 및 노드 4의 이웃 노드 테이블을 도시한 것이다.
도 5는 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 있어서, 임의의 노드가 동일한 패킷을 중복 수신하는 시나리오를 도시한 것이다.
도 6은 노드 S가 이웃 노드들에게 패킷을 송신하는 시나리오 예를 도시한 것이다.
도 7은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, 100개의 센서 노드들로 이루어진 시뮬레이션 환경을 예시적으로 도시한 것이다.
도 8은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, 노드의 개수의 변화에 따른 결과를 도시한 그래프이다.
도 9는 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, 영역의 면적의 변화에 따른 결과를 도시한 그래프이다.
도 10은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, Link loss ratio의 변화에 따른 결과를 도시한 그래프이다.
도 11은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, wake-up interval의 변화에 따른 결과를 도시한 그래프이다.
도 12는 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, 전송자(Forwarder)의 예상 개수의 변화에 따른 결과를 도시한 그래프이다.
1 is a scenario exemplarily shown to explain an opportunistic data transmission method according to a preferred embodiment of the present invention, in which (a) is a network topology, a dotted line indicates a neighbor relationship for each node, (b) is a It is a path according to the tree-based propagation protocol, which is a conventional method, and (c) and (d) are paths according to the opportunistic data transmission method according to the present invention.
FIG. 2 exemplarily shows packet headers. FIG. 2(a) shows a packet header of IEEE 802.15.4, and FIG. 2(b) shows a packet defined in the opportunistic data transmission method according to the present invention. it is header
3 is for explaining the operation of the opportunistic data transmission method according to a preferred embodiment of the present invention, (a) is a transmission flow, (b) is a node after receiving a packet transmitted from node 0 It is a diagram showing the neighbor table of 1.
FIG. 4 shows a transmission flow corresponding to the scenario shown in FIG. 1( d ) and a table of neighbor nodes of node 4 .
5 illustrates a scenario in which an arbitrary node repeatedly receives the same packet in an opportunistic data transmission method according to a preferred embodiment of the present invention.
6 illustrates an example scenario in which a node S transmits a packet to neighboring nodes.
7 exemplarily illustrates a simulation environment composed of 100 sensor nodes in order to evaluate the performance of the opportunistic data transmission method according to a preferred embodiment of the present invention.
8 is a graph showing results according to a change in the number of nodes in order to evaluate the performance of the opportunistic data transmission method according to a preferred embodiment of the present invention.
9 is a graph illustrating results according to a change in the area of a region in order to evaluate the performance of the opportunistic data transmission method according to a preferred embodiment of the present invention.
10 is a graph showing the results according to the change of the link loss ratio in order to evaluate the performance of the opportunistic data transmission method according to the preferred embodiment of the present invention.
11 is a graph illustrating a result according to a change in a wake-up interval in order to evaluate the performance of the opportunistic data transmission method according to a preferred embodiment of the present invention.
12 is a graph illustrating results according to a change in the expected number of forwarders in order to evaluate the performance of the opportunistic data transmission method according to the preferred embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 따른 무선 센서 네트워크에서의 기회적 데이터 전송 방법 및 이를 이용한 무선 센서 네트워크의 구조 및 동작에 대하여 구체적으로 설명한다. Hereinafter, an opportunistic data transmission method in a wireless sensor network according to a preferred embodiment of the present invention and the structure and operation of a wireless sensor network using the same will be described in detail with reference to the accompanying drawings.

본 발명에 따른 기회적 데이터 전송 방법은, 각 노드가 데이터 패킷을 이웃 노드들 중 하나로 데이터 패킷을 기회적 전송(opportunistically forwarding)하는 것을 특징으로 한다. The opportunistic data transmission method according to the present invention is characterized in that each node opportunistically forwards the data packet to one of the neighboring nodes.

도 1은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법을 설명하기 위하여 예시적으로 도시한 시나리오로서, (a)는 네트워크 토폴로지로서 점선은 각 노드에 대한 이웃 관계를 나타내며, (b)는 기존의 방식인 트리 기반의 전파 규약에 따른 경로이며, (c) 및 (d)는 본 발명에 따른 기회적 데이터 전송 방법에 따른 경로들이다. 1 is a scenario exemplarily shown to explain an opportunistic data transmission method according to a preferred embodiment of the present invention, in which (a) is a network topology, a dotted line indicates a neighbor relationship for each node, (b) is a It is a path according to the tree-based propagation protocol, which is an existing scheme, and (c) and (d) are paths according to the opportunistic data transmission method according to the present invention.

도 1(b)는 기존의 방식인 트리 기반의 전파 규약에 따른 전송 경로를 나타내는 것으로서, 트리를 따라 패킷을 전송한다. 여기서, 노드 1과 노드 2는 패킷을 자식 노드(child node)들로 전송하게 되며 이로 인해 에너지 소모가 증대된다.1(b) shows a transmission path according to a tree-based propagation protocol, which is a conventional method, and a packet is transmitted along the tree. Here, node 1 and node 2 transmit packets to child nodes, which increases energy consumption.

하지만, 본 발명에 따른 기회적 데이터 전송 방법에서는, 각 노드는 이웃 노드들 중 먼저 깨어난 노드에게 패킷을 전송하게 된다. 도 1의 (c)는 노드 3이 노드 4 및 5보다 먼저 깨어나서 노드 1로부터 데이터 패킷을 수신하게 되는 시나리오로서, 도 1(c)를 참조하면, 노드 0는 데이터 전송을 시작한 후 노드 1이 먼저 깨어나 패킷을 수신하는 활성 상태이므로 노드 1에게 패킷을 전송한다. 데이터를 수신한 노드 1은 노드 0에게 확인 메시지(ACK)를 전송하고, 노드 0는 노드 1로부터 ACK 메시지를 수신하면 슬립(Sleep) 상태로 되돌아 간다. 노드 1은 노드 4와 5보다 먼저 깨어 있는 노드 3에게 패킷을 기회적(opportunistically) 전송(forward)한다. 다음, 노드 3은 노드 4에게 패킷을 전송한다. 노드 1은 노드 4보다 먼저 깨어 있더라도, 노드 1은 이미 패킷을 수신하였기 때문에 패킷을 무시하고 노드 3에게 ACK 메시지를 보내지 않는다. 유사하게, 노드 4는 패킷을 노드 5에게 전송하고, 노드 5는 노드 2에게 패킷을 전송하고, 노드 2는 패킷을 노드 6에게 전송한다. However, in the opportunistic data transmission method according to the present invention, each node transmits a packet to a node that wakes up first among neighboring nodes. 1(c) is a scenario in which node 3 wakes up before nodes 4 and 5 and receives a data packet from node 1. Referring to FIG. 1(c), node 0 starts data transmission and then node 1 first It wakes up and is active receiving packets, so it sends a packet to node 1. Node 1 receiving the data transmits an acknowledgment message (ACK) to node 0, and when node 0 receives the ACK message from node 1, it returns to a sleep state. Node 1 opportunistically forwards the packet to node 3, which is awake before nodes 4 and 5. Next, node 3 sends a packet to node 4. Even if node 1 wakes up before node 4, node 1 ignores the packet and does not send an ACK message to node 3 because it has already received the packet. Similarly, node 4 sends a packet to node 5, node 5 sends a packet to node 2, and node 2 sends a packet to node 6.

한편, 도 1의 (d)는 노드 4가 노드 3 및 5보다 먼저 깨어나서 노드 1로부터 데이터 패킷을 수신하게 되는 시나리오로서, 도 1(d)를 참조하면, 노드 1이 패킷 전송을 시작할 때, 노드 4가 노드 3 및 노드 5보다 먼저 깨어 있어 패킷을 수신한다. 이 경우, 만약 노드 4가 기회적으로 패킷을 노드 5에게 전송하고 슬립 상태가 된다면, 노드 3은 패킷을 수신할 수 없게 된다. 따라서, 어떤 노드가 패킷을 수신할 수 없게 되는 것을 방지하기 위하여, 노드 4는 패킷을 노드 3과 노드 5에게 모두 전송해야 된다. On the other hand, (d) of FIG. 1 is a scenario in which node 4 wakes up earlier than nodes 3 and 5 and receives a data packet from node 1. Referring to FIG. 1(d), when node 1 starts packet transmission, the node 4 wakes up before node 3 and node 5 and receives the packet. In this case, if node 4 has an opportunity to transmit a packet to node 5 and goes to sleep, node 3 cannot receive the packet. Therefore, in order to prevent a node from being unable to receive a packet, node 4 must transmit the packet to both node 3 and node 5.

기회적 데이터 전송 방법은 전송 패킷을 소스 노드로부터 수신할 때 마다 서로 다른 경로를 통해 모든 노드들에게 도달하게 되는 장점을 가지게 된다. 이로 인해, 노드들의 residual energy의 측정 없이도, 노드들 간의 에너지 소모에 대하여 균형을 유지할 수 있게 된다. 또한, 전술한 기회적 데이터 전송 방법은 링크 상태(link condition)이 불안정할(unstable) 때 유익하다. 도 7에서 노드 0와 노드 1의 사이의 링크가 불안정하여 노드 1이 노드 0로부터 간헐적으로 패킷을 수신할 수 없다고 가정한다. 이 경우, 종래의 기술에 따른 트리 기반의 포워딩에서는, 노드 0가 패킷을 노드 1에게 전송해야만 하므로 노드 0는 노드 1에게 패킷을 전송하기 위하여 수회 반복하여 시도해야 하므로 에너지 소모가 많이 발생된다. 하지만, 본 발명에 따른 기회적 데이터 전송 방법에서는, 노드 0가 노드 2에게 패킷을 전송할 수 있고 다른 노드들이 패킷을 노드 1에게 전송할 수 있다. 먼저 ACK 메시지를 회신하는 누구든지 전송 노드가 되므로, 노드 0는 다른 경로의 선택없이 노드 2에게 패킷을 전송한다. The opportunistic data transmission method has the advantage of reaching all nodes through different paths whenever a transport packet is received from a source node. Due to this, it is possible to maintain a balance with respect to energy consumption between the nodes without measuring the residual energy of the nodes. In addition, the above-described opportunistic data transmission method is advantageous when a link condition is unstable. In FIG. 7 , it is assumed that node 1 cannot intermittently receive packets from node 0 because the link between node 0 and node 1 is unstable. In this case, in the tree-based forwarding according to the prior art, since node 0 must transmit a packet to node 1, node 0 must repeatedly try several times to transmit a packet to node 1, which consumes a lot of energy. However, in the opportunistic data transmission method according to the present invention, node 0 may transmit a packet to node 2 and other nodes may transmit a packet to node 1 . Whoever replies the ACK message first becomes the transmitting node, so node 0 transmits the packet to node 2 without selecting another path.

본 발명에 따른 기회적 데이터 전송 방법의 기본 아이디어는 매우 단순하나, 신뢰성과 에너지 효율성을 얻기 위하여 두 가지의 조건을 시행한다. 먼저, 도 1(d)에 도시된 바와 같이, 노드가 하나의 이웃 노드에게만 패킷을 전송하면 충분할지, 또는 노드가 복수 개의 이웃 노드에게 패킷을 전송해야 할지 여부를 결정해야만 한다. 좀 더 구체적으로 살펴보면, 노드가 제거되면 그래프가 끊기게 되는 articulation point인 경우, 해당 노드는 서브그래프의 각각의 노드들로 패킷을 전송하여야 한다. 다음, 중복된 전송이 발생하게 된다. 예를 들면, 노드 0가 패킷을 전송할 때, 노드 1과 노드 2가 동시에 깨어 패킷을 수신하게 된다. 만약 중복된 패킷들이 생성된다면, 해당 프로토콜은 불필요한 패킷들을 전송하여 에너지를 소비하는 것을 최소화시킬 수 있어야 한다. 이를 위하여, 노드들은 패킷을 수신한 노드들의 트랙(track)을 알아야만 한다. 이하, 전술한 두 가지 조건을 실행하기 위하여 필요한 본 발명에 따른 기회적 데이터 전송 방법의 세부 사항들을 설명한다. The basic idea of the opportunistic data transmission method according to the present invention is very simple, but two conditions are implemented in order to obtain reliability and energy efficiency. First, as shown in FIG. 1( d ), it is necessary for a node to determine whether it is sufficient for a node to transmit a packet to only one neighboring node, or whether a node should transmit a packet to a plurality of neighboring nodes. More specifically, in the case of an articulation point where the graph is cut off when a node is removed, the node must transmit a packet to each node of the subgraph. Next, duplicate transmission occurs. For example, when node 0 transmits a packet, node 1 and node 2 wake up at the same time to receive the packet. If duplicate packets are generated, the protocol should be able to minimize energy consumption by sending unnecessary packets. To do this, nodes must know the track of the nodes that have received the packet. Hereinafter, details of the opportunistic data transmission method according to the present invention necessary to fulfill the two conditions described above will be described.

먼저, 본 발명에 따른 기회적 데이터 전송 방법에 있어서, 각 노드는 유일한 식별자(a unique identifier)를 할당받는다. 예를 들면, 네트워크에 128 노드들이 있다면, 그들은 0~127의 ID들을 할당받게 된다. 패킷이 전송될 때, 해당 패킷에 대한 각 노드의 수신 상태 정보가 패킷 헤더에 비트맵(bitmap) 형태로 포함된다. 예를 들면, 128 노드들이 있을 때, 패킷에 대한 각 노드의 수신 상태 정보를 나타내기 위하여 128 비트가 필요하게 된다. 네트워크의 각 노드에 대하여 헤더 스페이스의 1 비트가 필요하므로, 네트워크의 규모가 큰 경우에는 헤더 사이즈가 과다하게 커지게 된다. 이 경우, 네트워크를 복수 개의 그룹으로 분할시키고, 분할된 각 그룹에 대하여 그룹 ID를 할당하고, 해당 그룹에 포함된 노드들에 대해 ID를 할당한다. 만약, 다중 그룹들이 있다면, 패킷은 먼저 그룹 리더들에게 전송된 후, 그룹 리더들로부터 해당 그룹내에서 기회적 데이터 전송 방법에 따라 패킷이 전파된다. 본 명세서의 이후부터는 네트워크가 하나의 그룹으로 이루어진다고 가정하고 설명한다. First, in the opportunistic data transmission method according to the present invention, each node is assigned a unique identifier. For example, if there are 128 nodes in the network, they will be assigned IDs from 0 to 127. When a packet is transmitted, the reception status information of each node for the packet is included in the packet header in the form of a bitmap. For example, when there are 128 nodes, 128 bits are needed to indicate the reception status information of each node for the packet. Since 1 bit of the header space is required for each node of the network, the header size becomes excessively large when the network is large. In this case, the network is divided into a plurality of groups, a group ID is assigned to each divided group, and IDs are assigned to nodes included in the corresponding group. If there are multiple groups, the packet is first transmitted to the group leaders, and then the packet is propagated from the group leaders according to the opportunistic data transmission method within the group. From the following description of the present specification, it is assumed that the network consists of one group and will be described.

도 2는 패킷 헤더들을 예시적으로 도시한 것으로서, 도 2(a)는 IEEE 802.15.4의 패킷 헤더를 도시한 것이며, 도 2(b)는 본 발명에 따른 기회적 데이터 전송 방법에서 규정된 패킷 헤더이다. FIG. 2 exemplarily shows packet headers. FIG. 2(a) is a packet header of IEEE 802.15.4, and FIG. 2(b) is a packet defined in the opportunistic data transmission method according to the present invention. it is header

IEEE 802.15.4는 low rate wireless personal area network(LR-WPANs)의 표준 프로토콜로서, 도 2(a)는 IEEE 802.15.4의 패킷 헤더를 도시한 것이다. IEEE 802.15.4 is a standard protocol for low rate wireless personal area networks (LR-WPANs), and FIG. 2A shows a packet header of IEEE 802.15.4.

본 발명에 따른 기회적 데이터 전송 방법에 있어서, 전술한 IEEE 802.15.4의 패킷 헤더의 어드레싱 필드들(the addressing fields)이 그룹 ID와 Rx bitmap으로 이루어지는 수신 상태 필드로 대체된다. 필드의 사이즈는 네트워크의 크기에 따라 조정될 수 있따. 또한, 수신 상태는 ACK frame에 포함되어야만 한다. 헤더에서 Rx bitmap을 포함하는 것은 패킷 사이즈를 상당히 증가시키게 되므로, 특히 payload 사이즈가 작고 네트워크가 크다면 더욱 더 패킷 사이즈를 증가시키게 될 것이다. 이렇게 패킷 사이즈가 증가됨에 따라 송신 노드와 수신 노드에 대하여 에너지 소모를 추가적으로 더 유발시키게 된다. 그러나, 송신 노드의 대기 시간(wait time)은 패킷 사이즈에 의해 영향을 받지 않고 노드의 wake-up interval에 의해 영향을 받게 된다. In the opportunistic data transmission method according to the present invention, the addressing fields of the packet header of the IEEE 802.15.4 described above are replaced with a reception status field composed of a group ID and an Rx bitmap. The size of the field may be adjusted according to the size of the network. In addition, the reception state must be included in the ACK frame. Including the Rx bitmap in the header significantly increases the packet size, so it will increase the packet size even more, especially if the payload size is small and the network is large. As the packet size increases in this way, energy consumption is further caused to the transmitting node and the receiving node. However, the wait time of the transmitting node is not affected by the packet size, but is affected by the wake-up interval of the node.

한편, 본 발명에 따른 기회적 데이터 전송 방법에 있어서, 각 노드는 이웃 노드 테이블(a neighbor table)을 유지하게 되며, 전술한 이웃 노드 테이블은 각 노드의 이웃 노드들을 포함하게 된다. 따라서, 각 노드는 해당 노드의 2-hop 이웃 노드들에 대한 정보를 갖게 된다. 이웃 노드들에 대한 정보를 획득하는 여러 가지 방법이 있다. 먼저, deployment이후, 초기 단계에서는 모든 노드가 active하며 모드들이 이웃 노드들에게 메시지를 주기적으로 전파하게 된다. 일단 노드가 이웃 노드를 발견하게 되면 이웃 노드들의 ID를 메시지에 포함하여, 이웃 노드들을 2-hop 이웃 노드들을 찾게 된다. 전술한 초기 단계는 트리 기반의 수집 또는 전파 프로토콜의 tree-building phase와 유사하다. 또한, 듀티 사이클링이 시작된 후, 각 노드는 이웃 노드들에게 요청 메시지(Request Message)들을 전송하여 ACK 메시지를 회신할 수 있도록 한다. 각 노드는 이웃 노드 정보들을 ACK 메시지에 포함시킴으로써, 각 요청 노드들을 2-홉 이웃노드 정보들을 획득할 수 있게 된다. Meanwhile, in the opportunistic data transmission method according to the present invention, each node maintains a neighbor table, and the aforementioned neighbor table includes the neighbor nodes of each node. Accordingly, each node has information about its 2-hop neighbor nodes. There are several ways to obtain information about neighboring nodes. First, after deployment, in the initial stage, all nodes are active and modes periodically propagate messages to neighboring nodes. Once a node discovers a neighbor node, it includes the neighbor node's ID in the message to find the neighbor nodes as 2-hop neighbor nodes. The initial phase described above is similar to the tree-building phase of a tree-based collection or propagation protocol. In addition, after duty cycling is started, each node transmits Request Messages to neighboring nodes so that the ACK message can be returned. Each node includes neighbor node information in the ACK message, so that each requesting node can acquire 2-hop neighbor information.

이하, 도 3을 참조하여, 본 발명에 따른 기회적 데이터 전송 방법의 동작을 설명한다. 도 3은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법의 동작을 설명하기 위한 것으로서, (a)는 전송 플로우를 도시한 것이며 (b)는 노드 0로부터 전송된 패킷을 수신한 이후의 노드 1의 이웃 노드 테이블(Neighbor table)을 도시한 도표이다. Hereinafter, an operation of the opportunistic data transmission method according to the present invention will be described with reference to FIG. 3 . 3 is for explaining the operation of the opportunistic data transmission method according to a preferred embodiment of the present invention, (a) is a transmission flow, (b) is a node after receiving a packet transmitted from node 0 It is a diagram showing the neighbor table of 1.

도3(a)는 도 1(c)에 도시된 시나리오에 있어서 각 노드에서 전송된 패킷 의 헤더에 포함된 Rx bitmap의 내용들이 도시된 것으로서, 노드 0가 패킷 전달 하여 전송을 시작하며, 노드 0는 현재 전송 패킷을 가진 유일한 노드이므로 패킷 헤더에서 Rx bitmap의 첫번째 비트를 0로 설정한다. 노드 1은 패킷 헤더를 수신하고 패킷을 확인하고 Rx bitmap을 판독하고 도 3(b)에 도시된 바와 같이 이웃 노드 테이블을 갱신한다. FIG. 3(a) shows the contents of the Rx bitmap included in the header of the packet transmitted from each node in the scenario shown in FIG. Since is the only node with a current transport packet, the first bit of the Rx bitmap in the packet header is set to 0. Node 1 receives the packet header, confirms the packet, reads the Rx bitmap, and updates the neighbor node table as shown in Fig. 3(b).

노드 1은 2-홉 이웃 노드 정보에 근거하여 패킷을 전송할 노드를 결정하여야 한다. 노드 1은 패킷을 수신한 후, 노드 2,3,4 및 5들이 전송 패킷을 수신하여야 하는 노드임을 확인한다. 노드 1은 이웃 노드 테이블의 정보를 사용하여 이들 노드들이 연결되어 있는지 여부를 확인한다. 이 경우, 노드 1은 모든 이웃 노드들이 서로 연결되었음을 확인하는 경우, 노드 1은 먼저 깨어나 전송을 마칠 수 있는 임의의 노드에게 패킷을 전송할 수 있다. 이웃 노드들 중 노드 3이 먼저 깨어나 패킷을 수신한다. 노드 1은 이미 패킷을 가지고 있으므로, 노드 3은 노드 4에게 패킷을 전송하여야 하며, 노드 4는 노드 1,2,3 및 5를 이웃 노드들로 가지는데, Rx bitmap을 통해 노드 4는 노드 1 및 3이 패킷을 수신했음을 파악한다. 노드 2와 5는 서로 연결되어 있으므로, 노드 4는 노드 2와 5중 어느 하나에게 패킷을 전송할 수 있으며, 이 경우에는 노드 5에게 전송하게 된다. 유사하게, 노드 5는 패킷을 노드 2와 6 중 어느 하나에게 패킷을 송신하여야 하며, 노드 2가 패킷을 수신한다. 마지막으로, 노드 2는 패킷을 노드 6에게 전송하고 데이터 전송 프로세스를 종료하게 된다.Node 1 must decide which node to send the packet to based on the 2-hop neighbor node information. After receiving the packet, Node 1 confirms that Nodes 2, 3, 4 and 5 are nodes that should receive the transport packet. Node 1 uses the information in the neighbor node table to check whether these nodes are connected or not. In this case, when node 1 confirms that all neighboring nodes are connected to each other, node 1 wakes up first and can transmit a packet to any node that can finish transmission. Node 3 among the neighboring nodes wakes up first and receives the packet. Since node 1 already has the packet, node 3 must send the packet to node 4, and node 4 has nodes 1,2,3 and 5 as its neighbors. 3 knows that this packet has been received. Since nodes 2 and 5 are connected to each other, node 4 can transmit a packet to either node 2 or 5, and in this case, it is transmitted to node 5. Similarly, node 5 must send the packet to either node 2 or 6, and node 2 receives the packet. Finally, node 2 sends the packet to node 6 and ends the data transmission process.

이하, 도 4를 참조하여 다른 시나리오를 예시적으로 설명한다. 도 4는 도 1(d)에 도시된 시나리오에 대응되는 전송 플로우 및 노드 4의 이웃 노드 테이블을 도시한 것이다. 도 4를 참조하면, 노드 1이 전송할 때 노드 4가 다른 노드들보다 먼저 깨어 있고 패킷을 수신할 수 있기 때문에, 노드 4는 노드 1에 의해 전송된 패킷을 수신한다. 노드 4는 Rx 상태를 업데이트하고 노드 2,3, 5가 패킷을 수신하여야 됨을 알게 된다. 이 경우, 노드 2와 5가 서로 연결되어 있지만 노드 3은 노드 2 또는 노드 5와 서로 연결되어 있지 않다. 따라서, 노드 4가 노드 2와 노드 5 중 하나로 패킷을 전송하고 전송을 종료한다면, 노드 3은 패킷을 수신할 수 없게 된다. 이 경우, 노드 4는 패킷을 노드 3에게 전송하고, 노드 2와 노드 5 중 어느 하나로 패킷을 전송한다. Hereinafter, another scenario will be exemplarily described with reference to FIG. 4 . FIG. 4 shows a transmission flow corresponding to the scenario shown in FIG. 1( d ) and a table of neighbor nodes of node 4 . Referring to FIG. 4 , when node 1 transmits, node 4 receives the packet sent by node 1 because node 4 is awake before other nodes and can receive the packet. Node 4 updates the Rx state and knows that nodes 2, 3 and 5 should receive the packet. In this case, nodes 2 and 5 are connected to each other, but node 3 is not connected to either node 2 or node 5. Therefore, if node 4 transmits a packet to either node 2 or node 5 and ends the transmission, node 3 cannot receive the packet. In this case, node 4 transmits the packet to node 3, and transmits the packet to either node 2 or node 5.

일반적으로 말하자면, 노드는 패킷을 수신하지 못한 이웃 노드들이 서로 연결되어 있는지 여부를 확인한다. 만약 패킷을 수신하지 못한 이웃 노드들이 모두 서로 연결되어 있다면, 상기 노드는 패킷을 이웃 노드들 중 하나로 패킷을 전송하고 전송을 종료한다. 만약, 복수 개의 연결 구성이 있다면, 상기 노드는 연결 구성들의 각각에 포함된 노드로 패킷을 전송해야 한다. 송신 노드가 모든 연결 구성들로부터 이들에 포함된 하나의 노드로부터 ACK 메시지를 수신한다면, 상기 송신 노드는 전송을 종료하고 슬립 상태로 들어간다. 그렇지 않으면, 상기 송신 노드는 사전 설정된 timeout period에 따라 timeout이 발생할 때까지 패킷을 계속 전송한다.Generally speaking, a node checks whether neighboring nodes that have not received a packet are connected to each other. If the neighboring nodes that have not received the packet are all connected to each other, the node transmits the packet to one of the neighboring nodes and ends the transmission. If there are a plurality of connection configurations, the node must transmit a packet to a node included in each of the connection configurations. If the sending node receives an ACK message from one node included in them from all connection configurations, the sending node ends the transmission and enters the sleep state. Otherwise, the transmitting node continues to transmit packets until a timeout occurs according to a preset timeout period.

이하, 도 5를 참조하여 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 있어서, 각 노드에서 패킷을 중복 수신하는 경우의 처리 프로세스를 설명한다. Hereinafter, in the opportunistic data transmission method according to a preferred embodiment of the present invention with reference to FIG. 5, a processing process in the case where each node receives duplicate packets will be described.

본 발명에 따른 기회적 데이터 전송 방법에 있어서, 노드가 패킷을 전송할 때, 둘 또는 그 이상의 이웃 노드들이 동시에 깨어나서 패킷을 수신할 수 있다. 이 경우, 수신 노드는 다중 노드들이 패킷을 수신하는지 여부는 알 수 없기 때문에, 각 노드는 패킷을 독립적으로 전송한다. 이로 인하여, 패킷의 각 복사본은 패킷을 수신한 노드들에 대한 완전한 정보를 가지지 못하는 문제점이 발생하게 된다. 도 5에 도시된 시나리오를 가정하자. In the opportunistic data transmission method according to the present invention, when a node transmits a packet, two or more neighboring nodes may wake up at the same time to receive the packet. In this case, since the receiving node does not know whether multiple nodes receive the packet, each node transmits the packet independently. Due to this, each copy of the packet does not have complete information about the nodes that have received the packet. Assume the scenario shown in FIG. 5 .

도 5는 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 있어서, 임의의 노드가 동일한 패킷을 중복 수신하는 시나리오를 도시한 것이다. 도 5를 참조하면, 노드 0가 패킷을 전송하면, 노드 1과 노드 2는 동시에 깨어나서 노드 0으로부터 전송된 패킷을 수신하게 된다. 이는 노드 1과 노드 2가 스케쥴이 서로 일치되지 않고 독립적으로 자신들의 wake up time을 선택하기 때문에 발생될 수 있다. 전술한 2개의 노드들은 패킷을 수신할 때 두 개의 노드는 노드 0가 패킷을 가지고 있음은 인지하나, 해당 패킷이 다른 노드에 의해 수신된 것은 알지 못한다. 가령, 노드 1이 패킷을 노드 3에게 전송하고 해당 패킷은 노드 4로 전송되었음을 가정하자. 또한, 노드 2가 패킷을 노드 6에게 전송하고 그 다음 노드 5에게 전송된다. 여기서, 노드 5는 패킷이 노드 0,2,5 및 6에 의해 수신되었다는 것을 알고 있으며, 패킷은 노드 1 또는 4로 전송되어야 함을 알고 있다. 5 illustrates a scenario in which an arbitrary node repeatedly receives the same packet in an opportunistic data transmission method according to a preferred embodiment of the present invention. Referring to FIG. 5 , when node 0 transmits a packet, node 1 and node 2 wake up at the same time to receive a packet transmitted from node 0. This may occur because Node 1 and Node 2 independently select their wake up times without matching schedules with each other. When the aforementioned two nodes receive a packet, the two nodes recognize that node 0 has the packet, but do not know that the packet has been received by another node. For example, assume that node 1 sends a packet to node 3 and the packet is sent to node 4. Also, node 2 sends a packet to node 6 and then to node 5. Here, node 5 knows that the packet has been received by nodes 0, 2, 5 and 6, and knows that the packet should be sent to node 1 or 4.

노드 5가 패킷을 전송할 때, 이웃 노드들 중 하나가 깨어나서 패킷을 수신할 수 있게 된다. 이 경우, 첫번째 케이스로 노드 2가 깨었다고 가정하자. 먼저, 노드 2는 패킷 헤더의 연속 번호 필드(the sequence number field)를 판독하고 이미 수신된 패킷임을 확인한다. 그 다음, 노드 2는 Rx bitmap을 판독하는데, 헤더의 Rx bitmap이 “1010011”이며, 이는 노드 0,2,5,6이 이미 해당 패킷을 수신하였음을 의미한다. 노드 2는 수신된 Rx bitmap을 자신의 Rx Status인 “1010000”와 비교한다. 이는 노드 5가 이미 노드 2가 갖고 있는 모든 정보를 알고 잇음을 의미한다. 이 경우, 노드 2는 수신을 포기하며 송신 노드에게 ACK 메시지를 회신하지 않고 슬립 상태로 돌아간다. 만약, 노드 6이 패킷을 수신하면, 동일한 동작을 보여주게 된다. When node 5 sends a packet, one of its neighbors wakes up and is able to receive the packet. In this case, as the first case, it is assumed that node 2 has woken up. First, node 2 reads the sequence number field of the packet header and confirms that the packet has already been received. Then, node 2 reads the Rx bitmap, and the Rx bitmap in the header is “1010011”, which means that nodes 0, 2, 5, and 6 have already received the corresponding packet. Node 2 compares the received Rx bitmap with its Rx Status “1010000”. This means that node 5 already knows all the information node 2 has. In this case, node 2 gives up reception and returns to the sleep state without returning an ACK message to the sending node. If node 6 receives the packet, it shows the same behavior.

두번째 케이스에 있어서, 노드 1이 깨어서 패킷을 수신한다고 가정하자. 시퀀스 번호 필드(Sequence number field)를 확인하여, 노드 1은 중복 패킷임을 알게 된다. 다음, 노드 1은 Rx bitmap(“1010011”)을 자신의 Rx status(“1100000”)과 비교한다. 이 경우, 노드 5는 노드 1이 이미 패킷을 수신한 것을 알지 못한다. 따라서, 노드 1은 ACK 메시지를 노드 5에게 전송하고, 자신의 Rx status를 패킷 헤더에 포함한다. 노드 5가 ACK 메시지를 수신하면, 노드 5는 자신의 Rx status를 새로이 획득한 정보를 사용하여 업데이트함으로써, 노드 5의 Rx status는 이제 “1110011”이 된다. 또한, Rx status가 ACK 헤더에 포함되므로, 노드 5는 패킷이 이미 노드 1에 의해 수신되었음을 알게 된다. 노드 5는 Rx status를 업데이트시킨 후, 이웃 노드에서 연결 구성을 다시 계산한다. 이 경우, 노드 4는 패킷을 수신하지 않은 이웃 노드들 중 유일한 노드이다. 따라서, 노드 5는 패킷 헤더의 업데이트된 Rx bitmap과 함께 패킷을 계속 전송한다. For the second case, assume that node 1 wakes up and receives a packet. By checking the Sequence number field, Node 1 knows that it is a duplicate packet. Next, node 1 compares the Rx bitmap (“1010011”) with its Rx status (“1100000”). In this case, node 5 does not know that node 1 has already received the packet. Accordingly, node 1 transmits an ACK message to node 5 and includes its Rx status in the packet header. When node 5 receives the ACK message, node 5 updates its Rx status using the newly acquired information, so that the Rx status of node 5 is now “1110011”. Also, since the Rx status is included in the ACK header, node 5 knows that the packet has already been received by node 1. After node 5 updates the Rx status, the neighbor node recalculates the connection configuration. In this case, node 4 is the only node among the neighboring nodes that did not receive the packet. Therefore, Node 5 continues to transmit the packet with the updated Rx bitmap in the packet header.

다음, 세번째 케이스에 있어서, 노드 4가 깨어 나서 패킷을 수신하는 것을 가정하자. 헤더를 판독하고 Rx bitmap(“1010011”)을 Rx status(“1101100”)와 비교한 후, 노드 4는 송신 노드가 갖지 않은 추가 정보가 있으므로 노드 4는 ACK 메시지를 전송할 것을 결정한다. 노드 5는 ACK 메시지를 수신하면, Rx status를 “1111111”로 업데이트시킨다. 이 경우, 노드 5는 모든 이웃 노드들이 해당 패킷을 수신하였음을 알게 된다. 따라서 노드 5는 전송을 멈추고 슬립 상태로 돌아간다. Next, in the third case, assume that node 4 wakes up and receives a packet. After reading the header and comparing the Rx bitmap (“1010011”) with the Rx status (“1101100”), node 4 decides to send an ACK message because there is additional information that the sending node does not have. When node 5 receives the ACK message, it updates the Rx status to “1111111”. In this case, node 5 knows that all neighboring nodes have received the packet. Therefore, node 5 stops transmitting and goes back to sleep.

요약하면, 패킷의 중복 수신은 필연적으로 발생하게 된다. 불필요한 전송을 최소화시키기 위하여, 본 발명에 따른 방법은, 각 노드들이 데이터와 ACK 패킷에 포함된 Rx status를 서로 교환하여 서로 정보들을 수집하도록 한다. 노드가 중복 패킷을 수신하면, 그는 송신 노드가 갖지 않는 Rx status에 추가의 정보가 있는지 여부를 확인한다. 이 경우, 상기 노드가 ACK 메시지를 송신하기로 결정하고, 그렇지 않으면, 상기 노드는 ACK 메시지를 송신하지 않는다. 송신 노드가 Rx bitmap을 포함하는 ACK 메시지를 수신하면, 상기 송신 노드는 자신의 Rx status를 업데이트시키고 전송을 계속할지 여부를 결정한다. In summary, duplicate reception of packets will inevitably occur. In order to minimize unnecessary transmission, in the method according to the present invention, each node collects information from each other by exchanging data and Rx status included in the ACK packet. When a node receives a duplicate packet, it checks whether there is additional information in the Rx status that the sending node does not have. In this case, the node decides to send an ACK message, otherwise the node does not send an ACK message. When the transmitting node receives the ACK message including the Rx bitmap, the transmitting node updates its Rx status and determines whether to continue the transmission.

이하, 확률적 패킷 수신(Probabilistic Packet Reception)에 대하여 설명한다. 노드 1과 2가 깨어나서 패킷을 수신하면, 그들은 둘 다 ACK메시지를 노드 0에게 송신하게 되어 충돌(collision)이 발생하게 된다. 만약 그들의 수신 신호 세기가 유사하다면, 노드 0는 두 개의 ACK를 모두 잃어버리게 될 수 있다. 노드 0가 ACK 메시지를 성공적으로 수신하지 못하게 되므로, 노드 0는 수신 노드로부터 ACK 메시지를 수신할 때까지 또는 Timer가 만료될 때까지 계속하여 전송을 해야만 한다. 따라서, ACK 충돌이 중복 패킷을 발생시키게 되며, 이는 송신 노드의 wait time을 연장시키게 된다. 만약, 노드가 잠재적 전송자가 되는 많은 이웃 노드를 가진다면, 그것의 wait time은 짧아지게 될 것이나 ACK 충돌의 확률은 증대될 것이다. 따라서, 네트워크 소모를 최소화시킬 수 있는 전송자(forwarder)에 대한 최적의 개수가 존재하며, 이러한 최적의 개수는 link quality와 같은 환경 변수뿐만 아니라 노드 밀도, wake-up interval와 같은 네트워크 변수에 의존한다. Hereinafter, probabilistic packet reception will be described. When node 1 and node 2 wake up and receive a packet, they both send an ACK message to node 0, resulting in a collision. If their received signal strengths are similar, node 0 may lose both ACKs. Since node 0 does not successfully receive the ACK message, node 0 must continue to transmit until it receives the ACK message from the receiving node or the Timer expires. Accordingly, the ACK collision causes duplicate packets, which prolongs the wait time of the transmitting node. If a node has many neighboring nodes that become potential senders, its wait time will be shortened but the probability of ACK collision will increase. Accordingly, there is an optimal number of forwarders capable of minimizing network consumption, and the optimal number depends on network variables such as node density and wake-up interval as well as environment variables such as link quality.

송신자는 연결 구성에 있능ㄴ 전송자(forwarder)의 예상 개수에 부합되는 확률을 선택한다. 예를 들면, 도 6에 도시된 시나리오에 있어서, 노드 S는 패킷 송신 노드이며 라벨링되지 않은 모든 노드들은 아직 패킷을 수신하지 않은 상태를 가정한다. 먼저, 노드 S는 이웃 노드들이 연결 구성을 계산한다. 각 연결 구성에 각각 6개 노드와 4개 노드가 있다고 가정하면, 노드 S는 가장 작은 연결 구성의 크기에 기초하여 확률을 계산한다. 전송자에 대하여 사전 설정된 값의 예상 개수 가 있다. 예상 개수가 2이라면, 노드 S는 수신 확률을 0.5로 선택한다. 이 정보는 패킷 헤더에 포함되며 이웃 노드들을 주어진 확률에 따라 패킷을 수신하고 ACK메시지를 송신한다. The sender chooses a probability that matches the expected number of forwarders in the connection configuration. For example, in the scenario shown in Fig. 6, it is assumed that node S is a packet transmitting node and all unlabeled nodes have not yet received a packet. First, node S calculates the connection configuration of neighboring nodes. Assuming that there are 6 nodes and 4 nodes in each connection configuration, respectively, node S calculates a probability based on the size of the smallest connection configuration. There is an expected number of preset values for the sender. If the expected number is 2, the node S chooses a reception probability of 0.5. This information is included in the packet header, and the neighboring nodes receive the packet according to a given probability and transmit an ACK message.

도 6은 노드 S가 이웃 노드들에게 패킷을 송신하는 시나리오 예를 도시한 것이다. 도 6을 참조하면, 노드 S는 이웃 노드들이 각각 4개 및 6개의 노드들로 구성된 2개의 연결 구성을 형성함을 파악한다. 만약, 전송자의 예상 개수가 2이면, 가장 작은 구성이 4개의 노드를 가지므로, 노드 S는 수신 확률(reception probability)이 0.5임을 표시한다. 6 illustrates an example scenario in which a node S transmits a packet to neighboring nodes. Referring to FIG. 6 , node S recognizes that neighboring nodes form two connection configurations composed of 4 and 6 nodes, respectively. If the expected number of senders is 2, since the smallest configuration has 4 nodes, the node S indicates that the reception probability is 0.5.

이하, 본 발명에 따른 기회적 데이터 전송 방법의 성능을 평가한다. Hereinafter, the performance of the opportunistic data transmission method according to the present invention is evaluated.

도 7은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, 100개의 센서 노드들로 이루어진 시뮬레이션 환경을 예시적으로 도시한 것이다. 도 7에 있어서, 소스 노드(large black dot)는 영역 중심에 배치된다. 도 7에 도시된 환경에서, 종래의 플러딩(Flooding) 기반의 프로토콜(Flooding protocol)과 종래의 트리-기반의 프로토콜(Tree-based protocol)에 따른 성능과 본 발명의 제1 실시예에 따른 기회적 전송 방법(이하 “Oppo-Flood-1”이라 한다)과 본 발명의 제2 실시예에 따른 기회적 전송 방법(이하 “Oppo-Flood-2”이라 한다)에 따른 성능을 평가한다. 여기서, 제1 실시예에 따른 기회적 전송 방법은 확률적 패킷 수신이 적용되지 아니한 방법이며, 제2 실시예에 따른 기회적 전송 방법은 확률적 패킷 수신이 적용된 방법이다. 7 exemplarily illustrates a simulation environment composed of 100 sensor nodes in order to evaluate the performance of the opportunistic data transmission method according to a preferred embodiment of the present invention. In FIG. 7 , a source node (large black dot) is disposed at the center of the region. In the environment shown in Fig. 7, the performance according to the conventional flooding protocol and the conventional tree-based protocol and the opportunity according to the first embodiment of the present invention Performance according to the transmission method (hereinafter referred to as “Oppo-Flood-1”) and the opportunistic transmission method according to the second embodiment of the present invention (hereinafter referred to as “Oppo-Flood-2”) is evaluated. Here, the opportunistic transmission method according to the first embodiment is a method to which stochastic packet reception is not applied, and the opportunistic transmission method according to the second embodiment is a method to which stochastic packet reception is applied.

도 8은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, 노드의 개수의 변화에 따른 결과를 도시한 그래프이다. 영역 면적은 100*100㎡으로 고정된 상태에서 노드의 개수는 40개 ~ 240개까지 변화되며, (a)는 network lifetime에 대한 그래프이며, (b)는 노드 에너지 소모에 대한 그래프이며, (c)는 전파 지연에 대한 그래프이다. 도 8(a)를 참조하면, network lifetime에 있어서, 본 발명에 따른 기회적 전송 방법들이 기존의 플러딩 및 트리-기반의 프로토콜보다 더 긴 network lifetime을 이루게 된다. 기존의 플러딩 및 트리-기반의 프로토콜은 노드의 개수가 증가함에 따라 network lifetime이 감소되나, 본 발명에 따른 기회적 전송 방법들은 노드 개수가 초기에는 network lifetime이 증가하다가 그 다음부터 감소한다. 도 8(b)를 참조하면, 에너지 소모는 노드 개수가 증가함에 따라 모든 방법이 유사하게 증가한다. 도 8(c)를 참조하면, 전파 지연에 있어서, 플러딩 프로토콜은 어느 지점까지는 증가하다가 그 이후에는 조금 감소한다. 노드의 개수가 증가할수록 전파 지연은 대체로 증가되는데, 트리-기반의 프로토콜이 본 발명에 따른 기회적 전송 방법보다 더 많이 증가한다. 8 is a graph showing results according to a change in the number of nodes in order to evaluate the performance of the opportunistic data transmission method according to a preferred embodiment of the present invention. The number of nodes varies from 40 to 240 while the area area is fixed at 100*100㎡, (a) is a graph of network lifetime, (b) is a graph of node energy consumption, (c) ) is a graph of propagation delay. Referring to FIG. 8(a), in network lifetime, the opportunistic transmission methods according to the present invention achieve a longer network lifetime than the existing flooding and tree-based protocols. In the existing flooding and tree-based protocol, the network lifetime decreases as the number of nodes increases, but in the opportunistic transmission methods according to the present invention, the number of nodes increases initially and then decreases thereafter. Referring to FIG. 8( b ), energy consumption increases similarly in all methods as the number of nodes increases. Referring to FIG. 8(c), in propagation delay, the flooding protocol increases up to a certain point, and then decreases slightly thereafter. As the number of nodes increases, the propagation delay generally increases, and the tree-based protocol increases more than the opportunistic transmission method according to the present invention.

도 9는 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, 영역의 면적의 변화에 따른 결과를 도시한 그래프이다. 노드의 개수는 100으로 고정된 상태에서 영역 면적은 2500㎡ ~ 250000㎡까지 변화되며, (a)는 network lifetime에 대한 그래프이며, (b)는 노드 에너지 소모에 대한 그래프이며, (c)는 전파 지연에 대한 그래프이다. 도 9(a)를 참조하면, network lifetime에 있어서, 본 발명에 따른 기회적 전송 방법들이 기존의 플러딩 및 트리-기반의 프로토콜보다 더 긴 network lifetime을 이루게 된다. 기존의 플러딩 및 트리-기반의 프로토콜은 면적이 증가함에 따라 network lifetime이 증가하게 되나, 본 발명에 따른 기회적 전송 방법들은 노드 개수가 초기에는 network lifetime이 증가하다가 그 다음부터 약간 감소한다. 도 9(b)를 참조하면, 에너지 소모는 면적이 증가함에 따라 모든 방법들이 유사하게 약간씩 감소하며, 면적이 좁을 때는 본 발명에 따른 기회적 전송 방법이 트리 기반 프로토콜보다 에너지 소모가 작으나 면적이 넓어짐에 따라 에너지 소모가 비슷해진다. 도 9(c)를 참조하면, 전파 지연에 있어서, 플러딩 프로토콜이 면적이 증가함에 따라 전파 지연이 급격하게 증가하며, 그 외의 나머지 방법들은 면적이 증가함에 따라 전파 지연이 근소하게 증가하게 된다. 9 is a graph illustrating results according to a change in the area of a region in order to evaluate the performance of the opportunistic data transmission method according to the preferred embodiment of the present invention. While the number of nodes is fixed at 100, the area varies from 2500㎡ to 250000㎡, (a) is a graph of network lifetime, (b) is a graph of node energy consumption, and (c) is a graph of propagation This is a graph of delay. Referring to FIG. 9(a), in terms of network lifetime, the opportunistic transmission methods according to the present invention achieve a longer network lifetime than the existing flooding and tree-based protocols. In the existing flooding and tree-based protocols, the network lifetime increases as the area increases, but in the opportunistic transmission methods according to the present invention, the number of nodes initially increases the network lifetime, and then decreases slightly thereafter. Referring to FIG. 9( b ), energy consumption is similarly slightly decreased for all methods as the area increases, and when the area is narrow, the opportunistic transmission method according to the present invention consumes less energy than the tree-based protocol, but the area is small. As it expands, energy consumption becomes similar. Referring to FIG. 9(c) , in terms of propagation delay, as the area of the flooding protocol increases, the propagation delay rapidly increases, and in other methods, the propagation delay slightly increases as the area increases.

도 10은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, Link loss ratio의 변화에 따른 결과를 도시한 그래프이다. 노드의 개수는 100개이며, 영역 면적은 100*100 ㎡이며, Link loss ratio는 0 ~ 0.5 까지 변화되며, (a)는 전파율(Dissemination ration)에 대한 그래프이며, (b)는 network lifetime에 대한 그래프이며, (c)는 노드 에너지 소모에 대한 그래프이다. 10 is a graph showing the results according to the change of the link loss ratio in order to evaluate the performance of the opportunistic data transmission method according to the preferred embodiment of the present invention. The number of nodes is 100, the area is 100*100 m2, the link loss ratio varies from 0 to 0.5, (a) is a graph for dissemination ration, (b) is for network lifetime It is a graph, and (c) is a graph of node energy consumption.

도 10(a)를 참조하면, Dissemination ratio에 있어서, 플러딩 프로토콜은 Link loss ratio와 관계없이 거의 100% ratio를 가지므로, network lifetime 보다 신뢰성이 중요한 적용에서의 좋은 후보가 될 수 있다. 반면에, 트리 기반의 프로토콜은 dissemination ratio가 Link loss ratio가 증가함에 따라 급격하게 감소한다. 본 발명에 따른 기회적 전송 방법들은 Link loss ratio에 따라 상대적으로 높은 dissemination ratio를 갖는다. 도 10(c)를 참조하면, Link loss ratio가 증가할 때, 본 발명에 따른 기회적 전송 방법들은 트리-기반의 프로토콜보다 더 많은 에너지를 소모하게 된다. 하지만, 본 발명에 따른 기회적 전송 방법들은 노드들간의 에너지 소모의 균형을 맞춤으로써 network lifetime을 더 길게 유지한다. Referring to FIG. 10( a ), in the dissemination ratio, the flooding protocol has an almost 100% ratio regardless of the link loss ratio, so it can be a good candidate for applications where reliability is more important than network lifetime. On the other hand, in the tree-based protocol, the dissemination ratio decreases rapidly as the link loss ratio increases. The opportunistic transmission methods according to the present invention have a relatively high dissemination ratio according to the link loss ratio. Referring to FIG. 10( c ), when the link loss ratio increases, the opportunistic transmission methods according to the present invention consume more energy than the tree-based protocol. However, the opportunistic transmission methods according to the present invention maintain a longer network lifetime by balancing energy consumption between nodes.

도 11은 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, wake-up interval의 변화에 따른 결과를 도시한 그래프이다. 노드의 개수는 100개이며, 영역 면적은 100*100 ㎡이며, wake-up interval은 0.25 ~ 2.5 seconds까지 변화되며, (a)는 network lifetime에 대한 그래프이며, (b)는 노드 에너지 소모에 대한 그래프이며, (c)는 전파 지연에 대한 그래프이다. 11 is a graph illustrating a result according to a change in a wake-up interval in order to evaluate the performance of the opportunistic data transmission method according to a preferred embodiment of the present invention. The number of nodes is 100, the area is 100*100 m2, the wake-up interval is changed from 0.25 to 2.5 seconds, (a) is a graph of network lifetime, (b) is a graph of node energy consumption It is a graph, and (c) is a graph for propagation delay.

도 11(a)를 참조하면, Dissemination ratio에 있어서, wake-up interval이 길어지면 본 발명에 따른 기회적 전송 방법의 장점이 증대된다. wake-up interval이 짧은 경우, wake-up interval이 길어질수록 Network Lifetime이 증가된다. wake-up interval이 길어지면, Flooding 및 트리 기반의 프로토콜의 Network lifetime이 감소되기 시작한다. 도 11(b)를 참조하면, 본 발명의 기회적 전송 방법에서의 평균 에너지 소모는 트리 기반의 프로토콜과 유사하다. 도 11(c)를 참조하면, 모든 프로토콜은 wake-up interval이 길어질수록 전파 지연이 증가되는데, 특히 플러딩 프로토콜이 가장 많이 증가한다. Referring to FIG. 11( a ), in the dissemination ratio, when the wake-up interval is long, the advantage of the opportunistic transmission method according to the present invention is increased. When the wake-up interval is short, the network lifetime increases as the wake-up interval becomes longer. As the wake-up interval becomes longer, the network lifetime of flooding and tree-based protocols begins to decrease. Referring to FIG. 11B , the average energy consumption in the opportunistic transmission method of the present invention is similar to that of the tree-based protocol. Referring to FIG. 11(c) , as the wake-up interval of all protocols increases, propagation delay increases. In particular, the flooding protocol increases the most.

도 12는 본 발명의 바람직한 실시예에 따른 기회적 데이터 전송 방법에 대한 성능을 평가하기 위하여, 전송자(Forwarder)의 예상 개수의 변화에 따른 결과를 도시한 그래프이다. 노드의 개수는 200개이며, 영역 면적은 100*100 ㎡이며, 전송자의 예상 개수는 1 ~ 30 까지 변화되며, (a)는 network lifetime에 대한 그래프이며, (b)는 노드 에너지 소모에 대한 그래프이며, (c)는 전파 지연에 대한 그래프이다. 도 12(a) 내지 (c)를 참조하면, 전송자의 개수가 증가할수록 Network Lifetime은 증가하다가 어느 시점 이후로는 감소하며, 에너지 소모는 감소하다가 어느 시점 이후로는 일정하게 유지되며, 전파지연은 급격하게 감소하다가 어느 시점이후로는 일정하게 유지된다. 12 is a graph showing results according to a change in the expected number of forwarders in order to evaluate the performance of the opportunistic data transmission method according to a preferred embodiment of the present invention. The number of nodes is 200, the area is 100*100 m2, and the expected number of senders varies from 1 to 30. (a) is a graph of network lifetime, (b) is a graph of node energy consumption and (c) is a graph of propagation delay. 12(a) to (c), as the number of transmitters increases, the network lifetime increases and decreases after a certain point, energy consumption decreases and remains constant after a certain point, and the propagation delay is It decreases sharply and remains constant after a certain point.

이상에서 본 발명에 대하여 그 바람직한 실시예를 중심으로 설명하였으나, 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 그리고, 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다. In the above, the present invention has been mainly described with respect to its preferred embodiment, but this is only an example and does not limit the present invention. It will be appreciated that various modifications and applications not exemplified above in the scope are possible. And, the differences related to such modifications and applications should be construed as being included in the scope of the present invention defined in the appended claims.

Claims (10)

복수 개의 센서 노드들로 이루어진 무선 센서 네트워크에서의 각 노드의 기회적 데이터 전송 방법에 있어서,
(a) 전송할 데이터 패킷에 대하여 이웃 노드들의 패킷 수신 상태 정보를 저장 및 관리하는 단계;
(b) 상기 패킷 수신 상태 정보를 이용하여 상기 데이터 패킷을 수신하지 않은 이웃 노드들을 확인하고, 상기 데이터 패킷을 수신하지 않은 이웃 노드들 중 가장 먼저 깨어나 데이터 패킷을 수신할 수 있는 이웃 노드를 선택하고, 상기 데이터 패킷을 상기 선택된 이웃 노드에게 전송하는 단계; 및
(c) 상기 데이터 패킷을 전송한 이웃 노드로부터 ACK 메시지를 수신하면 슬립(Sleep) 모드로 되돌아가는 단계;
를 포함하고, 상기 데이터 패킷의 헤더(header)는 해당 데이터 패킷을 수신한 이웃 노드들에 대한 정보인 패킷 수신 상태 정보를 비트맵(bitmap) 형태로 포함한 것을 특징으로 하는 무선 센서 네트워크에서의 기회적 데이터 전송 방법.
In the method for transmitting opportunistic data of each node in a wireless sensor network composed of a plurality of sensor nodes,
(a) storing and managing packet reception state information of neighboring nodes with respect to a data packet to be transmitted;
(b) checking the neighbor nodes that have not received the data packet by using the packet reception status information, and selects a neighbor node that wakes up first and can receive the data packet from among the neighbor nodes that have not received the data packet; , transmitting the data packet to the selected neighbor node; and
(c) returning to a sleep mode when an ACK message is received from a neighbor node that has transmitted the data packet;
including, wherein the header of the data packet includes packet reception state information, which is information on neighboring nodes that have received the corresponding data packet, in a bitmap form. data transmission method.
제1항에 있어서, 각 노드는 2-홉(hop) 이웃 노드에 대한 정보를 포함하는 이웃 노드 테이블을 구비하고,
상기 (b) 단계는, 데이터 패킷을 수신하지 못한 이웃 노드들을 서로 연결시키는 서브그래프(sub-graph)를 형성하고, 상기 서브그래프를 이용하여 하나의 이웃 노드에게 데이터 패킷을 전송할지 복수 개의 이웃 노드에게 데이터 패킷을 전송할지를 결정하고, 상기 결정에 따라 데이터 패킷을 송신할 이웃 노드를 선택하고, 상기 선택된 이웃 노드에게 데이터 패킷을 송신하는 것을 특징으로 하는 무선 센서 네트워크에서의 기회적 데이터 전송 방법.
2. The method of claim 1, wherein each node has a neighbor node table containing information about a two-hop neighbor node;
In step (b), a sub-graph is formed that connects neighboring nodes that have not received a data packet to each other, and the sub-graph is used to determine whether to transmit a data packet to one neighboring node or a plurality of neighboring nodes. A method for transmitting opportunistic data in a wireless sensor network, comprising: determining whether to transmit a data packet to a node; selecting a neighbor node to transmit a data packet to according to the determination; and transmitting the data packet to the selected neighbor node.
제1항에 있어서, 상기 기회적 데이터 전송 방법은,
(d) 이웃 노드로부터 새로운 데이터 패킷을 수신하면, 상기 데이터 패킷에 포함된 패킷 수신 상태 정보를 갱신하여 저장하고, 상기 갱신된 패킷 수신 상태 정보를 포함한 ACK 메시지를 생성하여 송신 노드(sender)에게 전송하는 단계;
(e) 이미 수신된 데이터 패킷을 이웃 노드로부터 중복 수신하면, 자신의 패킷 수신 상태 정보와 상기 중복 수신된 데이터 패킷의 패킷 수신 상태 정보를 비교하고, 비교 결과에 따라 송신 노드(Sender)로 ACK 메시지를 전송할지 여부를 결정하는 단계;
를 구비하는 것을 특징으로 하는 무선 센서 네트워크에서의 기회적 데이터 전송 방법.
The method of claim 1, wherein the opportunistic data transmission method comprises:
(d) When a new data packet is received from a neighbor node, the packet reception status information included in the data packet is updated and stored, and an ACK message including the updated packet reception status information is generated and transmitted to the sender. to do;
(e) If an already received data packet is repeatedly received from a neighbor node, the packet reception status information of the node is compared with the packet reception status information of the duplicate received data packet, and an ACK message is sent to the sending node (Sender) according to the comparison result. determining whether to transmit
Opportunistic data transmission method in a wireless sensor network, characterized in that it comprises a.
제3항에 있어서, 상기 (e) 단계에서, 상기 비교 결과에 따라,
만약 중복 수신된 데이터 패킷의 패킷 수신 상태 정보가 자신의 패킷 수신 상태 정보를 모두 포함하고 있는 경우, 상기 중복 수신된 데이터 패킷을 무시하고 송신 노드에게 ACK 메시지를 전송하지 않으며,
만약 중복 수신된 데이터 패킷의 패킷 수신 상태 정보가 자신의 패킷 수신 상태 정보를 포함하고 있지 않는 경우, 자신의 패킷 수신 상태 정보를 갱신하고, 상기 갱신된 패킷 수신 상태 정보를 포함하는 ACK 메시지를 생성하고, 생성된 ACK 메시지를 송신 노드에게 전송하는 것을 특징으로 하는 무선 센서 네트워크에서의 기회적 데이터 전송 방법.
The method of claim 3, wherein in step (e), according to the comparison result,
If the packet reception status information of the duplicate received data packet includes all of its own packet reception status information, the duplicate received data packet is ignored and an ACK message is not transmitted to the transmitting node;
If the packet reception status information of the duplicate received data packet does not include its own packet reception status information, it updates its own packet reception status information, and generates an ACK message including the updated packet reception status information; , An opportunistic data transmission method in a wireless sensor network, characterized in that transmitting the generated ACK message to the transmitting node.
제1항에 있어서, 데이터 패킷은 헤더에 수신 확률(Reception Probabiliy)을 포함하고,
각 노드는 이웃 노드로부터 데이터 패킷이 수신되면 상기 수신 확률에 따라 데이터 패킷의 수신 여부를 결정하는 것을 특징으로 하는 무선 센서 네트워크에서의 기회적 데이터 전송 방법.
The method of claim 1, wherein the data packet includes a reception probability in a header,
Wherein each node determines whether to receive a data packet according to the reception probability when a data packet is received from a neighboring node.
제1항에 있어서, 상기 무선 센서 네트워크는,
네트워크를 구성하는 모든 노드에게 고유 식별자를 부여하거나,
네트워크를 구성하는 노드들을 복수 개의 그룹으로 분류하고, 각 노드에 대하여 그룹 식별자와 그룹 내 고유 식별자를 부여하는 것을 특징으로 하는 무선 센서 네트워크에서의 기회적 데이터 전송 방법.
According to claim 1, wherein the wireless sensor network,
A unique identifier is given to all nodes constituting the network, or
An opportunistic data transmission method in a wireless sensor network, characterized in that the nodes constituting the network are classified into a plurality of groups, and a group identifier and a unique identifier within the group are assigned to each node.
복수 개의 센서 노드들로 이루어진 무선 센서 네트워크에 있어서,
각 노드에는 고유 식별자가 할당되고 각 노드는 이웃 노드에 대한 정보를 포함하는 이웃 노드 테이블(neighbor table)을 구비하고, 데이터 패킷에 대한 노드들의 패킷 수신 상태 정보를 저장 및 관리하는 것을 특징으로 하며,
각 노드는 데이터 패킷을 수신하지 않은 이웃 노드들 중 깨어 있는 이웃 노드를 선택하고, 선택된 이웃 노드에게 데이터 패킷을 전송하고, 데이터 패킷을 수신한 이웃 노드로부터 ACK 메시지를 수신하면 슬립(Sleep) 모드로 되돌아가는 것을 특징으로 하며,
데이터 패킷은 헤더(header)에 해당 데이터 패킷을 수신한 노드들에 대한 정보인 패킷 수신 상태 정보를 비트맵(bitmap) 형태로 포함한 것을 특징으로 하는 기회적 데이터 전송을 수행하는 무선 센서 네트워크.
In the wireless sensor network consisting of a plurality of sensor nodes,
Each node is assigned a unique identifier, and each node has a neighbor table including information on the neighbor node, and stores and manages packet reception status information of the nodes for data packets,
Each node selects an awake neighbor from among the neighbor nodes that have not received the data packet, transmits the data packet to the selected neighbor, and enters sleep mode when receiving an ACK message from the neighbor node that has received the data packet. characterized by returning
A data packet is a wireless sensor network for performing opportunistic data transmission, characterized in that the header includes packet reception state information, which is information about nodes that have received the data packet, in a bitmap form.
제7항에 있어서, 각 노드는 2-홉(hop) 이웃 노드에 대한 정보를 포함하는 이웃 노드 테이블을 구비하고,
상기 노드는, 데이터 패킷의 기회적 전송을 위하여, 데이터 패킷을 수신하지 못한 이웃 노드들을 서로 연결시키는 서브그래프(sub-graph)를 형성하고, 상기 서브그래프를 이용하여 하나의 이웃 노드에게 데이터 패킷을 전송할지 복수 개의 이웃 노드에게 데이터 패킷을 전송할지를 결정하고, 상기 결정에 따라 데이터 패킷을 송신할 이웃 노드를 선택하고, 상기 선택된 이웃 노드에게 데이터 패킷을 송신하고, 데이터 패킷을 수신한 이웃 노드로부터 ACK 메시지를 수신하면 슬립(Sleep) 모드로 되돌아가는 것을 특징으로 하는 기회적 데이터 전송을 수행하는 무선 센서 네트워크.
8. The method of claim 7, wherein each node has a neighbor node table containing information about a two-hop neighbor node;
The node forms a sub-graph that connects neighboring nodes that have not received a data packet to each other for opportunistic transmission of data packets, and uses the sub-graph to send a data packet to one neighboring node. Determines whether to transmit or transmits a data packet to a plurality of neighboring nodes, selects a neighboring node to transmit a data packet according to the determination, transmits a data packet to the selected neighboring node, and receives an ACK from a neighboring node that has received the data packet A wireless sensor network performing opportunistic data transmission, characterized in that it returns to a sleep mode upon receiving a message.
제7항에 있어서, 각 노드는,
이웃 노드로부터 새로운 데이터 패킷을 수신하면, 상기 데이터 패킷에 포함된 패킷 수신 상태 정보를 갱신하여 저장하고, 상기 갱신된 패킷 수신 상태 정보를 포함한 ACK 메시지를 생성하여 송신 노드(sender)에게 전송하는 것을 특징으로 하며,
이미 수신된 데이터 패킷을 이웃 노드로부터 중복 수신하면, 자신의 패킷 수신 상태 정보와 상기 중복 수신된 데이터 패킷의 패킷 수신 상태 정보를 비교하고, 비교 결과에 따라 송신 노드(Sender)로 ACK 메시지를 전송할지 여부를 결정하는 것을 특징으로 하는 기회적 데이터 전송을 수행하는 무선 센서 네트워크.
The method of claim 7, wherein each node comprises:
When a new data packet is received from a neighbor node, the packet reception status information included in the data packet is updated and stored, and an ACK message including the updated packet reception status information is generated and transmitted to a sender. with
If an already received data packet is repeatedly received from a neighbor node, the packet reception status information of the node is compared with the packet reception status information of the duplicate received data packet, and an ACK message is transmitted to the sending node (Sender) according to the comparison result. A wireless sensor network that performs opportunistic data transmission, characterized in that it determines whether or not
제9항에 있어서, 데이터 패킷은 헤더에 수신 확률(Reception Probability)을 포함하고,
각 노드는 이웃 노드로부터 데이터 패킷이 수신되면 상기 수신 확률에 따라 데이터 패킷의 수신 여부를 결정하는 것을 특징으로 하는 기회적 데이터 전송을 수행하는 무선 센서 네트워크.
10. The method of claim 9, wherein the data packet includes a reception probability (Reception Probability) in a header,
A wireless sensor network for performing opportunistic data transmission, wherein each node determines whether to receive a data packet according to the reception probability when a data packet is received from a neighboring node.
KR1020200135066A 2020-10-19 2020-10-19 Apportunistic data dissemination method and wireless sensor network using the method KR20220051540A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200135066A KR20220051540A (en) 2020-10-19 2020-10-19 Apportunistic data dissemination method and wireless sensor network using the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200135066A KR20220051540A (en) 2020-10-19 2020-10-19 Apportunistic data dissemination method and wireless sensor network using the method

Publications (1)

Publication Number Publication Date
KR20220051540A true KR20220051540A (en) 2022-04-26

Family

ID=81391525

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200135066A KR20220051540A (en) 2020-10-19 2020-10-19 Apportunistic data dissemination method and wireless sensor network using the method

Country Status (1)

Country Link
KR (1) KR20220051540A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101297729B1 (en) 2008-09-24 2013-09-16 퀄컴 인코포레이티드 Opportunistic data forwarding and dynamic reconfiguration in wireless networks
KR101765416B1 (en) 2016-03-16 2017-08-07 숭실대학교산학협력단 Method of message delivery in delay tolerant network by using context-aware opportunistic routing protocol, recording medium and apparatus for performing the method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101297729B1 (en) 2008-09-24 2013-09-16 퀄컴 인코포레이티드 Opportunistic data forwarding and dynamic reconfiguration in wireless networks
KR101765416B1 (en) 2016-03-16 2017-08-07 숭실대학교산학협력단 Method of message delivery in delay tolerant network by using context-aware opportunistic routing protocol, recording medium and apparatus for performing the method

Similar Documents

Publication Publication Date Title
Shah et al. Energy aware routing for low energy ad hoc sensor networks
Cartigny et al. Border node retransmission based probabilistic broadcast protocols in ad-hoc networks
US7414977B2 (en) Power and delay sensitive ad-hoc communication networks
US7330694B2 (en) Method for setting up route path through route discovery in a mobile ad hoc network using partial route discovery
WO2016116989A1 (en) Network of nodes, battery-powered node and method for managing battery-powered node
EP1480387A1 (en) Source routing protocol for an ad-hoc communication network
Ingelrest et al. Localized broadcast incremental power protocol for wireless ad hoc networks
US10171986B2 (en) Radio relay device and system with waiting time optimization
Hwang et al. A novel efficient power‐saving MAC protocol for multi‐hop MANETs
Sampayo et al. LoBaPS: Load balancing parent selection for RPL using wake-up radios
Ravi et al. Energy efficient neighbor coverage protocol for reducing rebroadcast in MANET
CN110996266B (en) Multicast group data transmission method of ad hoc network system
KR20220051540A (en) Apportunistic data dissemination method and wireless sensor network using the method
Tamilarasi et al. Efficient energy management for mobile ad hoc networks
Lee et al. Wi-BLE: On cooperative operation of Wi-Fi and Bluetooth low energy under IPv6
Bheemalingaiah et al. Power-aware node-disjoint multipath source routing with low overhead in MANET
Cho et al. Oppo‐Flood: An Energy‐Efficient Data Dissemination Protocol for Asynchronous Duty‐Cycled Wireless Sensor Networks
Muthumayil et al. A novel cross layered energy based ad hoc on-demand routing protocol for MANETs
Goverdhan et al. Comparative Analysis and Implementation of DSDV and AODV Routing Protocol for MANET
Amiri et al. An Efficient Anycast Mechanism for 802.15. 4‐TSCH to Improve QoS in IIoT
Hsu et al. A novel Delay-Based Multicast Routing Protocol in ad hoc wireless networks
Ramasamy et al. PRIB-CDS: An Energy Efficient Low Duty Cycle Broadcasting Scheme for Wireless Sensor Network.
Kamal et al. Performance Comparision of Mobile Ad-Hoc Network Using Routing Protocols.
Aparna et al. A New Adaptive Broadcast Scheduling Algorithm in MANETs Using Good Neighbor Node Detection Approach
Nguyen et al. An energy-efficient ring search routing protocol using energy parameters in path selection