WO2023121001A1 - 신뢰도 기반의 메시지 전파 장치 및 방법 - Google Patents

신뢰도 기반의 메시지 전파 장치 및 방법 Download PDF

Info

Publication number
WO2023121001A1
WO2023121001A1 PCT/KR2022/018394 KR2022018394W WO2023121001A1 WO 2023121001 A1 WO2023121001 A1 WO 2023121001A1 KR 2022018394 W KR2022018394 W KR 2022018394W WO 2023121001 A1 WO2023121001 A1 WO 2023121001A1
Authority
WO
WIPO (PCT)
Prior art keywords
propagation
node
message
nodes
reliability
Prior art date
Application number
PCT/KR2022/018394
Other languages
English (en)
French (fr)
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 아주대학교 산학협력단
Publication of WO2023121001A1 publication Critical patent/WO2023121001A1/ko

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/08Learning-based routing, e.g. using neural networks or artificial intelligence
    • 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
    • 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/124Shortest path evaluation using a combination of metrics
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/24Connectivity information management, e.g. connectivity discovery or connectivity update
    • H04W40/32Connectivity information management, e.g. connectivity discovery or connectivity update for defining a routing cluster membership

Definitions

  • the present disclosure relates to reliability-based message propagation apparatus and method.
  • the present disclosure relates to reliability-based routing techniques in private blockchain networks.
  • a node in the network When a node in the network propagates a message, it uses a node discovery technique to propagate the message to the nodes that exist in the list (distributed hash table) of each node, and the message is shared throughout the network.
  • DHT Distributed Hash Table
  • Kademila assigns a hash table to each node according to the logical distance of the node identifier (ID), but divides the routing table based on the logical distance of the node identifier (ID), so the physical distance and bandwidth of each node Since it is not considered, there is a limit that inefficient data propagation may occur, and a node list may be manipulated by a malicious action or a node may be isolated.
  • the libp2p Gossipsub algorithm based on IPFS is an algorithm that complements the flooding method, and transmits the entire message to only some nodes and the metadata of the message to the remaining nodes, and alleviates duplication of data.
  • IPFS InterPlanetary File System
  • the IPFS libp2p Gossipsub algorithm which is an algorithm that fixes the upper and lower limits of the node's degree and propagates them, is vulnerable to Eclipse Attack.
  • the private blockchain is a network in which only authorized nodes can participate in the network, and since it is a network made up of 'trustworthy' nodes, it is pointed out that it violates decentralization although it mainly uses a simplified delegation method consensus algorithm.
  • the present invention is to solve the above-mentioned problems of the prior art, and based on the result of reinforcement learning using zones, the reliability value of each node is repeatedly updated according to the time step, thereby providing accurate real-time accuracy in a wireless network environment that fluctuates in real time.
  • An object of the present invention is to provide a reliability-based message propagation apparatus and method capable of obtaining reliability.
  • the present invention is intended to solve the above-mentioned problems of the prior art, and considering not only the reliability of each node but also the reliability of the cluster, when connecting a newly added node in the network, by allocating it to a cluster with high reliability,
  • An object of the present invention is to provide a reliability-based message propagation apparatus and method capable of preventing an attack.
  • a reliability-based message propagation method includes the steps of obtaining environment information including node characteristic values for each of a plurality of nodes included in a network; performing an episode of propagating a message from a source node to a destination node among the plurality of nodes in consideration of the environment information through a reinforcement learning-based model; and from the source node based on a reliability table generated according to the execution of the episode. Determining a propagation path to the destination node may be included.
  • the step of performing the episode may include a plurality of actions in which an agent associated with the reinforcement learning-based model selects a size of a zone to propagate the message from the source node.
  • Time step can be repeated.
  • each of the plurality of time steps may include propagating the message to one of boundary nodes among boundary nodes corresponding to the size of the zone; assigning a reward associated with the reinforcement learning-based model; and updating the reliability table based on the reward.
  • the reward may be given based on a propagation ratio corresponding to a ratio of nodes to which the message is propagated among the plurality of nodes.
  • the propagation ratio when the propagation ratio is less than the first threshold ratio set in advance, a larger value is given as the propagation ratio increases, and the propagation ratio is greater than or equal to the first threshold ratio. If so, it may not be granted.
  • the reward may be given if a redundancy rate, which is a rate at which the message is repeatedly propagated to the same node, is less than a preset second threshold rate.
  • the plurality of time steps may be repeated until the destination node is searched for in a local zone defined according to the size of the zone determined at a specific time step.
  • the node characteristic values include an identifier of each of the plurality of nodes, the number of smart contracts stored by the corresponding node, the number of smart contracts issued by the corresponding node, remaining battery capacity, performance, and network connection status. , bandwidth, transmission rate, information on redundant data, and the number of times of performing the role of a boundary node.
  • the determining of the propagation path may include selecting a size of the zone to which a high reliability value is assigned in the reliability table, and defining the size of the zone according to the size of the zone.
  • the propagation path may be determined based on the cluster.
  • the network may be a private blockchain network
  • the message may include data associated with a smart contract executed in the private blockchain network
  • a reliability-based message propagation apparatus includes an acquisition unit that obtains environment information including node characteristic values for each of a plurality of nodes included in a network. ; an execution unit performing an episode of propagating a message from a source node to a destination node among the plurality of nodes in consideration of the environment information through a reinforcement learning-based model; and a propagation path from the source node to the destination node may be determined based on a reliability table generated according to the execution of the episode.
  • the execution unit repeats a plurality of time steps in which an agent associated with the reinforcement learning-based model performs an action of selecting a size of a zone to propagate the message from the source node.
  • the execution unit may include a propagation unit propagating the message to any one of the edge nodes corresponding to the size of the zone; a reward granting unit that grants a reward associated with the reinforcement learning-based model; and an update unit for updating the reliability table based on the reward, wherein the plurality of time steps may be performed by the propagation unit, the reward granting unit, and the update unit.
  • the node characteristic values include an identifier of each of the plurality of nodes, the number of smart contracts stored by the corresponding node, the number of smart contracts issued by the corresponding node, remaining battery capacity, performance, and network connection status. , bandwidth, transmission rate, information on redundant data, and the number of times of performing the role of a boundary node.
  • the determination unit may select a size of the zone to which a high reliability value is assigned in the reliability table, and determine the propagation path based on a cluster defined according to the size of the zone.
  • FIG. 1 is a schematic configuration diagram of a reliability-based message propagation system according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an interaction between an agent and an environment in reinforcement learning.
  • FIG. 3 is a conceptual diagram illustrating a process of generating a reliability table and determining a message propagation path through reinforcement learning according to an embodiment of the present invention.
  • FIG. 4 is a diagram for explaining a reliability table according to an embodiment of the present disclosure.
  • FIG. 5 is a diagram for explaining a process of determining a propagation path according to an embodiment of the present invention.
  • FIG. 6 is a diagram illustrating an example of an Eclipse attack by a malicious node.
  • FIG. 7 is a chart showing results of a message propagation (sharing) experiment of a reliability-based message propagation apparatus according to an embodiment of the present invention.
  • FIG. 8 is a diagram showing results of an experiment for sharing useful blocks when a malicious node of a reliability-based message propagation apparatus propagates a fake block according to an embodiment of the present invention.
  • FIG. 9 is a schematic configuration diagram of a reliability-based message propagation apparatus according to an embodiment of the present invention.
  • FIG. 10 is a schematic flowchart of a reliability-based message propagation apparatus according to an embodiment of the present invention.
  • the present disclosure relates to reliability-based message propagation apparatus and method.
  • the present disclosure relates to reliability-based routing techniques in private blockchain networks.
  • FIG. 1 is a schematic configuration diagram of a reliability-based message propagation system according to an embodiment of the present invention.
  • a reliability-based message propagation system 10 may include a reliability-based message propagation apparatus 100 and a plurality of terminals 1 .
  • the plurality of terminals 1 may mean terminals participating in the network 20 according to an embodiment of the present invention.
  • the reliability-based message propagation apparatus 100 and the plurality of terminals 1 may communicate with each other through the network 20 .
  • the network 20 refers to a connection structure capable of exchanging information between nodes such as terminals and servers, and examples of such a network 20 include a 3rd Generation Partnership Project (3GPP) network and a Long LTE (LTE) network.
  • 3GPP 3rd Generation Partnership Project
  • LTE Long LTE
  • Term Evolution (Term Evolution) network 5G network
  • WIMAX World Interoperability for Microwave Access
  • Internet Internet
  • LAN Local Area Network
  • Wireless LAN Wireless Local Area Network
  • WAN Wide Area Network
  • PAN Personal Area Network
  • wifi network Bluetooth network
  • satellite broadcasting network analog broadcasting network
  • DMB Digital Multimedia Broadcasting
  • the network 20 may include a private blockchain network.
  • the present application may be for determining a propagation path between nodes of a message including data associated with a smart contract executed in a private blockchain network, but is not limited thereto.
  • Each of the plurality of terminals 1 is, for example, a smartphone (Smartphone), a smart pad (SmartPad), a tablet PC, etc. and PCS (Personal Communication System), GSM (Global System for Mobile communication), PDC (Personal Digital Cellular), PHS (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet ) can be any kind of wireless communication device, such as a terminal.
  • GSM Global System for Mobile communication
  • PDC Personal Digital Cellular
  • PHS Personal Handyphone System
  • PDA Personal Digital Assistant
  • IMT International Mobile Telecommunication
  • CDMA Code Division Multiple Access
  • W-CDMA Wide-Code Division Multiple Access
  • Wibro Wireless Broadband Internet
  • the reliability-based message propagation apparatus 100 will be referred to as the 'propagation apparatus 100'.
  • the plurality of terminals 1 in representing the structure of the network 20, may correspond to a plurality of nodes participating in the network 20.
  • FIG. 2 is a diagram showing an interaction between an agent and an environment in reinforcement learning.
  • reinforcement learning means that an agent learns with a reward obtained while interacting with an environment, and the agent may mean a subject of learning.
  • an agent selects an action (Action, a t ) in a current state (State, s t ) given from the environment, and the environment provides a corresponding next state (s t +1) and a reward (r t ) can be assigned.
  • reinforcement learning is repeated every predetermined time step, and may be terminated at a point targeted by a designer or at an end condition, and a point from a start point to an end point may be referred to as an episode.
  • the reinforcement learning-based model may be used to solve a sequential problem of moving a zone in which message delivery is performed when message propagation is performed.
  • Zone Routing Protocol which is a representative protocol of a Mobile Ad-hoc Network, and according to an embodiment of the present application, In the propagation device 100, it may mean the propagation range of a message.
  • FIG. 3 is a conceptual diagram illustrating a process of generating a reliability table and determining a message propagation path through reinforcement learning according to an embodiment of the present invention.
  • the propagation apparatus 100 may obtain environment information including node characteristic values for each of a plurality of nodes included in the network 20 .
  • the node characteristic value is an identifier of each of a plurality of nodes, the number of smart contracts stored by the corresponding node, the number of smart contracts issued by the corresponding node, battery level, performance (eg, terminal ( 1) computing power of processing units (CPU, GPU, etc.), network connection status (on-offline status), bandwidth, transmission speed, transmission rate, redundant data information and boundary node (B) role It may include at least one of the number of executions.
  • the redundant data information may be information including information such as whether the corresponding node has repeatedly received the same message and, if so, how many times, and serves as a boundary node.
  • the number of executions may be information including the number of times the corresponding node is used as a boundary node receiving messages, but is not limited thereto.
  • the propagation apparatus 100 may initialize environment information, repeatedly perform a time step, and determine a message propagation path based on a generated result of repeating the time step or an updated reliability table.
  • the propagation device 100 may perform an episode of propagating a message from a source node to a destination node among a plurality of nodes in consideration of environment information through a reinforcement learning-based model.
  • the state (State, s t ) considered in the reinforcement learning-based model possessed by the propagation device 100 may be defined as an identifier of a node that is a subject that propagates a message in a corresponding time step.
  • the state (State, s t ) for the first time step may be determined as an identifier of a source node.
  • an action (Action, a t ) considered in the reinforcement learning-based model possessed by the propagation device 100 may be defined as an action of determining a propagation range for an agent to propagate a message. Specifically, since the propagation device 100 borrows the concept of the zone described above, the action may be to select one of four hops.
  • the propagation apparatus 100 may repeatedly perform a plurality of time steps in which an agent associated with a reinforcement learning-based model selects a size of a zone to propagate a message from a source node. .
  • an agent associated with a reinforcement learning-based model sequentially selects the size of a zone having a radius of n (1 to 4) hops centered on a source node, thereby selecting a destination node. It is possible to determine the propagation range over which messages are propagated towards.
  • the propagation apparatus 100 may propagate a message to any one of the boundary nodes corresponding to the size of the zone.
  • the propagation device 100 may determine a border node to propagate a message among border nodes located at the boundary of the selected hop (zone of the determined size), and propagate the message to the determined border node.
  • the boundary node may be determined based on a reliability value of a reliability table to be described later.
  • the propagation device 100 may set the identifier of the boundary node to which the message is propagated to the next state (s t +1). That is, after the boundary node to propagate the message in the corresponding zone is determined according to one type step, the propagation device 100 sets the node that is the subject to propagate the message in the next time step as the corresponding boundary node to establish the zone. By moving, the next time step can be repeatedly performed.
  • the plurality of time steps may be repeated until a target node is searched for in a local zone defined according to the zone size determined at a specific time step.
  • the destination node means a node to finally receive the message, and may mean a receiver or a receiving terminal within a smart contract.
  • the propagation device 100 may end repetition of the time step when a destination node is found during repetition of the time step. In other words, the propagation device 100 may repeat until a destination node is searched in the local zone defined according to the size of the zone determined at a specific time step.
  • the propagation device 100 may grant a reward associated with a reinforcement learning-based model. Specifically, the propagation device 100 propagates the message to the boundary node determined during one time step, considers the node that received the message, gives a reward according to specific conditions, and performs the next time step. can
  • the propagation apparatus 100 may grant a reward based on a propagation ratio corresponding to a ratio of nodes to which a message is propagated among a plurality of nodes.
  • the compensation may be given as a larger value as the propagation ratio increases if the propagation ratio is less than the first threshold ratio set in advance, and not given (non-granted) if the propagation ratio is greater than or equal to the first threshold ratio.
  • the propagation device 100 may provide compensation in proportion to the ratio of nodes inside the currently shared zone.
  • the propagation device 100 may repeat the time step in the next state (next source node) without providing compensation.
  • the propagation device 100 may give a reward, but the ratio of nodes to which the message is propagated is 20%. When the ratio of nodes to which the message is propagated is 30%, a larger reward can be given than when . Conversely, if the ratio of nodes to which the message is propagated is 50% or more, the propagation device 100 may repeat the time step again without providing compensation.
  • the propagation device 100 may impose a penalty equal to a predetermined threshold value, find another node, and repeat the time step.
  • the propagation apparatus 100 determines that the current network state is unstable, there are many nodes not connected to the network, or the connection between nodes is unstable, so that the message is not shared in the network, and the environment information is initialized again
  • the episode may be restarted, and the above-described episode may be subsequently performed (in other words, a plurality of time steps may be repeatedly performed), but is not limited thereto.
  • compensation may be given when a redundancy rate, which is a rate at which messages are repeatedly propagated to the same node, is less than a preset second threshold rate.
  • the propagation device 100 may give a reward if the ratio of nodes to which the same message is repeatedly propagated is less than the second threshold ratio.
  • a penalty may be imposed to prevent data duplication from being accumulated, but is not limited thereto.
  • the propagation device 100 may grant a reward if the ratio of nodes that have repeatedly propagated the same message is 40%, and may give a penalty if the ratio is 60%.
  • the propagation device 100 may repeatedly update the reliability table based on the compensation described in detail above. In other words, based on the reward that is the result of reinforcement learning, the propagation device 100 repeatedly updates the reliability value, which is the magnitude of the reward expected when a specific action is selected in the current state, according to repetition of the time step, in real time. Accurate reliability can be obtained in real time in a fluctuating network environment. Details of the reliability table will be described later with reference to FIG. 4 .
  • the reliability table may be updated regardless of the above detailed reward granting conditions. Specifically, the propagation device 100 repeatedly transmits the same message when compensation is given because the propagation ratio is less than the first preset threshold or when compensation is not given because the propagation ratio is greater than or equal to the first preset threshold. Reliability in any case where a reward is given because the ratio of propagated nodes is less than the second threshold and a penalty is given because the ratio of nodes to which the same message is repeatedly propagated is greater than or equal to the second threshold The table can be updated.
  • a reward given by the propagation device 100 for each time step in the course of performing an episode may be defined as in Equation 1 below.
  • N is the total number of nodes participating in the network 20
  • z i is the number of nodes within the zone where messages (data) are shared at the corresponding time step ( i th time step)
  • c i is the corresponding time step. It may be the number of repetitions of messages (data) up to the step. More specifically, in Equation 1 above Represents the accumulated value of redundancy of data at the i -th time step.
  • FIG. 4 is a diagram for explaining a reliability table according to an embodiment of the present disclosure.
  • the reliability table is a representation of the Q function (state-action value function) used in Q-learning, a reinforcement learning algorithm classified into model-free, value-based, and off-policy, in the form of a table.
  • Q function state-action value function
  • R Reward
  • the reliability table may be expressed in the form of a row (State, s t ), a column (Action, a t ), and a Q function (q (s, a)).
  • the state (s t ) means the identifier of the node corresponding to the subject propagating the message at each time step, and the action (a t ) is to transmit the message from the message propagation subject node at the corresponding time step.
  • It means the propagation range to propagate, that is, the size of the zone, which may mean selecting a range centered on the source node with n (1 to 4) hops.
  • the action a t may include selection of 1 hop to 4 hops.
  • the Q function (q(s, a)) may be associated with the compensation described in detail above, according to an embodiment of the present disclosure.
  • the Q function would have taken the action a 0 in the updated state s 0 in the previous time step or episode. It means the reward value given at the time, and it can mean the reward expected when action a 0 is taken in state s 0 in the next time step or episode.
  • the higher the expected reward may mean the higher the reliability, the higher the Q function, the higher the reliability when the action a 0 is taken in the state s 0 .
  • the propagation apparatus 100 may acquire the reliability of each node when propagating a message by repeating a time step or an episode according to reinforcement learning.
  • the propagation apparatus 100 can use the reliability of each node to determine the propagation range and boundary node when performing the next episode or time step.
  • FIG. 5 is a diagram for explaining a process of determining a propagation path according to an embodiment of the present invention.
  • the propagation apparatus 100 determines the propagation range by taking an action of selecting a propagation range (zone size) with a radius of 2 hops from the source node S according to the reliability table, and determines the propagation range in the zone (Z ), a boundary node located in the lower right corner of FIG.
  • the propagation device 100 may set the determined boundary node as a node to be a subject to propagate the message in the next time step, and determine the propagation path and boundary node through the same process as above. In this way, the propagation device 100 repeats the time steps and episodes, and when the destination node T is found at the boundary of the zone corresponding to the determined propagation path, a message is transmitted to the destination node T to repeat the repetition. it may be finished
  • nodes between the source node and the destination node through which messages are delivered from the source node to the destination node may be referred to as intermediate nodes.
  • the propagation apparatus 100 updates the reliability table by repeating the above-described repetition, and when propagating a message thereafter, may determine a propagation path based on the reliability value of each node in the reliability table. In other words, the propagation apparatus 100 may determine a propagation path from the source node to the destination node based on the reliability table generated according to the performance of the episode.
  • the propagation apparatus 100 may select a size of a zone to which a high reliability value is assigned in the reliability table, and determine a propagation path based on a cluster defined according to the size of the zone.
  • the propagation device 100 determines which action (selection of propagation range) has the highest reliability value among the reliability values for a specific starting node in the reliability table, and selects the action with the highest reliability value.
  • the propagation range (zone size) can be determined accordingly.
  • the propagation apparatus 100 may form a cluster including the starting node and nodes in a short distance around the aforementioned starting node, and determine a propagation path by considering the reliability value of these clusters together.
  • the propagation device 100 determines the next propagation path
  • nodes existing in a zone (local zone) with a radius of 3 hops are used to form a cluster with node S, and the entire message propagation path to the destination node is determined by considering the reliability value of the cluster, that is, the reliability values of nodes in the zone. It can be determined, but is not limited thereto.
  • the propagation apparatus 100 may secure a mediation node and a propagation path with a high reliability value by bypassing an area with a low reliability value in a message propagation process.
  • the propagation apparatus 100 initializes environment information, determines a propagation range (zone size) to propagate a message from a source node, and propagates the message among nodes located at the boundary of the zone. Determine the boundary node to be performed, give a reward or penalty based on the ratio of nodes that received the message (propagation ratio), repeat the time step, update the reliability table according to the repetition of the time step, and update the reliability table
  • a message propagation path can be determined by considering each node or cluster.
  • the propagation device 100 determines the propagation range and boundary node, propagates the message, and then changes the state (moves the zone) instead of granting a reward. ) may be repeated, and when a destination node is found during repetition, a reward according to a condition is given, and if the propagation rate of the message is less than a preset threshold rate, the above-mentioned iteration is re-performed by detouring from the destination node. Doing so may increase the propagation rate.
  • the propagation apparatus 100 may update the reliability table when a destination node is discovered or whenever a message reaches the destination node. For example, when the propagation message reaches the destination node but the propagation rate is less than the threshold rate, the propagation apparatus 100 may update the reliability table according to the given reward, and since the propagation rate is greater than or equal to the threshold rate, the propagation device 100 may repeat the When finishing, the reliability table may be updated, but is not limited thereto.
  • FIG. 6 is a diagram illustrating an example of an Eclipse attack by a malicious node.
  • Eclipse attack means that a malicious node manipulates a table to isolate neighboring nodes, and a malicious node can allow an attack target to access a node it controls.
  • the attacker the person performing the Eclipse attack
  • malicious nodes can fill the surrounding nodes with fake data.
  • the propagation device 100 measures reliability based on a Q table (reliability table according to an embodiment of the present application) using Q learning, which is a reinforcement learning algorithm, in FIGS. 7 and 8, according to an embodiment of the present application
  • Q learning which is a reinforcement learning algorithm, in FIGS. 7 and 8, according to an embodiment of the present application
  • the following propagation device 100 is specified as a Q-zone.
  • FIG. 7 is a chart showing results of a message propagation (sharing) experiment of a reliability-based message propagation apparatus according to an embodiment of the present invention.
  • message sharing rates and overlapping rates of the propagation device 100 can be confirmed.
  • Random-zone is driven to reach the destination node by selecting a radio range without using the Q function
  • GossipSub is a routing algorithm supported by IPFS libp2p proposed to increase the reception rate while reducing message duplication in the entire network.
  • the sharing rate of messages is relatively high, and the duplication rate is relatively low. Therefore, in the case of the GossipSub algorithm, messages are actively shared and the same messages are repeatedly propagated. Nodes can be viewed as small.
  • the propagation device 100, Q-zone
  • the sharing rate of the effective block shows stable performance compared to the radio wave apparatus 100 (Q-zone) compared to Random-zone and GossipSub.
  • FIG. 8 is a diagram showing results of an experiment for sharing useful blocks when a malicious node of a reliability-based message propagation apparatus propagates a fake block according to an embodiment of the present invention.
  • the GossipSub algorithm has a high sharing rate of messages, but a remarkably low sharing rate of valid blocks, as confirmed in FIG. 7 . This can be interpreted as a high percentage of fake messages among shared messages.
  • the propagation apparatus 100 (Q-zone) It can be interpreted as allowing the duplication of , and propagating the message while increasing the size of the zone as much as possible in the high-reliability section.
  • the propagation apparatus 100 considers not only the reliability of each node but also the reliability of the cluster, and assigns it to a cluster with high reliability when a newly added node is connected to the network. Node attacks can be prevented.
  • FIG. 9 is a schematic configuration diagram of a reliability-based message propagation apparatus according to an embodiment of the present invention.
  • the propagation device 100 may include an acquisition unit 110, an execution unit 120, and a determination unit 130.
  • the acquisition unit 110 may obtain environment information including node characteristic values for each of a plurality of nodes included in the network 20 .
  • node characteristic values include an identifier of each of a plurality of nodes, the number of smart contracts stored by the node, the number of smart contracts issued by the node, battery level, performance, network connection state, It may include at least one of bandwidth, transmission rate, redundant data information, and the number of times of serving as a boundary node.
  • the execution unit 120 may perform an episode of propagating a message from a source node to a destination node among a plurality of nodes in consideration of environment information through a reinforcement learning-based model.
  • the performer 120 may repeatedly perform a plurality of time steps in which an agent associated with a reinforcement learning-based model performs an action of selecting a group size to propagate a message from a source node.
  • the performer 120 may include a propagation unit 121, a compensation granting unit 122, and a reliability table updating unit 123.
  • the propagation unit 121 may propagate a message to any one of the boundary nodes corresponding to the size of the zone.
  • the reward granting unit 122 may grant a reward associated with a reinforcement learning-based model.
  • a reward may be given based on a propagation ratio corresponding to a ratio of nodes to which a message is propagated among a plurality of nodes.
  • the reward may be given as a larger value as the propagation ratio increases if the propagation ratio is less than the first threshold ratio set in advance, and may not be given if the propagation ratio is greater than or equal to the first threshold ratio, and the message is the same. It may be granted when the redundancy rate, which is the rate of redundant propagation to the node, is less than a preset second threshold rate.
  • the reliability table updater 123 may update the reliability table based on a reward.
  • the execution unit 120 may repeat a plurality of time steps until a destination node is searched in a local zone defined according to the size of the zone determined at a specific time step.
  • the determination unit 130 may determine a propagation path from a source node to a destination node based on a reliability table generated according to the execution of an episode.
  • the determination unit 130 may select a size of a zone to which a high reliability value is assigned in the reliability table, and determine a propagation path based on a cluster defined according to the size of the zone.
  • FIG. 10 is an operational flowchart for a reliability-based message propagation method according to an embodiment of the present invention.
  • the reliability-based message propagation method shown in FIG. 10 may be performed by the reliability-based message propagation apparatus 100 described above. Therefore, even if omitted below, the description of the reliability-based message propagation apparatus 100 can be equally applied to the description of the reliability-based message propagation method.
  • steps S11 to S13 may be further divided into additional steps or combined into fewer steps, depending on an embodiment of the present invention. Also, some steps may be omitted if necessary, and the order of steps may be changed.
  • the acquisition unit 110 may acquire environment information including node characteristic values for each of a plurality of nodes included in the network 20 .
  • node characteristic values include an identifier of each of a plurality of nodes, the number of smart contracts stored by the node, the number of smart contracts issued by the node, battery level, performance, network connection state, It may include at least one of bandwidth, transmission rate, redundant data information, and the number of times of serving as a boundary node.
  • the execution unit 120 may perform an episode of propagating a message from a source node to a destination node among a plurality of nodes in consideration of environment information through a reinforcement learning-based model.
  • the execution unit 120 may repeatedly perform a plurality of time steps in which an agent associated with a reinforcement learning-based model performs an action of selecting a group size to propagate a message from a source node. there is.
  • step S12 the execution unit 120 propagates a message to any one of the boundary nodes among the boundary nodes corresponding to the size of the zone, and gives a reward associated with the reinforcement learning-based model.
  • the reliability table updating unit 123 may update the reliability table based on the reward.
  • a reward may be given based on a propagation ratio corresponding to a ratio of nodes to which a message is propagated among a plurality of nodes.
  • the reward may be given as a larger value as the propagation ratio increases if the propagation ratio is less than the first threshold ratio set in advance, and may not be given if the propagation ratio is greater than or equal to the first threshold ratio, and the message is the same. It may be granted when the redundancy rate, which is the rate of redundant propagation to the node, is less than a preset second threshold rate.
  • the performing unit 120 may repeat a plurality of time steps until a destination node is searched in a local zone defined according to the size of the zone determined in a specific time step. there is.
  • the determination unit 130 may determine a propagation path from the source node to the destination node based on the reliability table generated according to the performance of the episode.
  • the determination unit 130 may select the size of a zone to which a high reliability value is assigned from the reliability table, and determine a propagation path based on a cluster defined according to the size of the zone.
  • the reliability-based message propagation method may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer readable medium.
  • the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • Program instructions recorded on the medium may be those specially designed and configured for the present invention or those known and usable to those skilled in computer software.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks.
  • - includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like.
  • program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler.
  • the hardware devices described above may be configured to act as one or more software modules to perform the operations of the present invention, and vice versa.
  • the reliability-based message propagation method described above may be implemented in the form of a computer program or application stored in a recording medium and executed by a computer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

신뢰도 기반의 메시지 전파 방법이 개시되며, 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 방법은 네트워크에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득하는 단계, 강화 학습 기반 모델을 통해 상기 환경 정보를 고려하여 상기 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행하는 단계 및 상기 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 상기 출발지 노드로부터 상기 목적지 노드까지의 전파 경로를 결정하는 단계를 포함할 수 있다.

Description

신뢰도 기반의 메시지 전파 장치 및 방법
본원은 신뢰도 기반의 메시지 전파 장치 및 방법에 관한 것이다. 예를 들면, 본원은 프라이빗 블록체인(Private Blockchain) 네트워크의 신뢰성 기반 라우팅 기법에 관한 것이다.
네트워크의 노드는 메시지를 전파할 때 노드 디스커버리(node discovery) 기법을 사용하여 각 노드의 리스트(분산 해시 테이블)에 존재하는 노드들에 메시지를 전파하며 전체 네트워크에 메시지가 공유되며, 일반적으로 DHT(Distributed Hash Table) 프로토콜 중 하나인 Kademila를 사용한다. 이러한 Kademila는 노드의 식별자(ID)의 논리적인 거리에 따라 각 노드에 해시 테이블을 할당하나, 노드 식별자(ID) 논리적인 거리를 기준으로 라우팅 테이블을 나누기 때문에, 각 노드의 물리적인 거리와 대역폭을 고려하지 않으므로, 비효율적인 데이터 전파가 이루어질 수 있으며, 노드 리스트가 악의적인 행동으로 조작되거나, 노드가 고립되는 현상이 일어날 수 있다는 한계가 있다.
또한, IPFS(InterPlanetary File System) 기반의 libp2p Gossipsub 알고리즘은 플러딩 기법(flooding method)을 보완한 알고리즘으로서, 전체 메시지는 일부 노드만, 나머지 노드엔 메시지의 메타데이터를 전송하고, 데이터의 중복을 완화하기 위해, 노드의 degree의 상한과 하한을 고정하여 전파하는 방식을 취하는 알고리즘이나, IPFS libp2p Gossipsub 알고리즘은 이클립스 공격(Eclipse Attack) 에 취약한 단점을 가지고 있다.
이와 관련하여, 블록체인 네트워크 관련 분야에서는 악의적인 노드의 공격을 방지하기 위해 신뢰도 측정 방법에 관한 연구가 진행되고 있다. 많은 블록체인 플랫폼에서 위임방식의 합의 알고리즘을 채택하고 있으며, 블록의 개인 정보와 보유 토큰의 양 등을 정량화하여 신뢰도 점수로 사용하는 방법이 제시되었다.
한편, 프라이빗 블록체인은 권한을 부여 받은 노드만이 네트워크에 참여할 수 있는 네트워크로서 ‘믿을 수 있는’ 노드로 이루어진 네트워크이므로, 간소화된 위임방식의 합의 알고리즘을 주로 사용하고 있으나 탈중앙화를 위배한다는 지적을 받기도 한다.
본원의 배경이 되는 기술은 한국등록특허공보 제10-2081159호에 개시되어 있다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 존을 활용한 강화학습의 결과를 기반으로 각 노드의 신뢰도 값을 타임 스텝에 따라 반복 갱신함으로써, 실시간으로 변동하는 무선 네트워크 환경에서 실시간으로 정확한 신뢰도를 획득할 수 있는 신뢰도 기반의 메시지 전파 장치 및 방법을 제공하는 것을 목적으로 한다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 각 노드의 신뢰도뿐만이 아니라, 클러스터의 신뢰도를 고려하여, 네트워크 내에 새로 추가되는 노드의 연결 시, 신뢰도가 높은 클러스터에 할당함으로써, 악의적인 노드의 공격을 방지할 수 있는 신뢰도 기반의 메시지 전파 장치 및 방법을 제공하는 것을 목적으로 한다.
다만, 본원의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 방법은, 네트워크에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득하는 단계, 강화 학습 기반 모델을 통해 상기 환경 정보를 고려하여 상기 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행하는 단계 및 상기 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 상기 출발지 노드로부터 상기 목적지 노드까지의 전파 경로를 결정하는 단계를 포함할 수 있다.
본원의 일 실시예에 따르면, 상기 에피소드를 수행하는 단계는, 상기 강화 학습 기반 모델과 연계된 에이전트가 상기 출발지 노드로부터 상기 메시지를 전파할 존의 크기를 선택하는 행동(Action)을 수행하는 복수의 타임 스텝을 반복 수행할 수 있다.
본원의 일 실시예에 따르면, 상기 에피소드를 수행하는 단계에서 상기 복수의 타임 스텝 각각은, 상기 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 상기 메시지를 전파하는 단계; 상기 강화 학습 기반 모델과 연계된 보상(Reward)을 부여하는 단계; 및 상기 보상(Reward)에 기초하여 상기 신뢰도 테이블을 갱신하는 단계를 포함할 수 있다.
본원의 일 실시예에 따르면, 상기 보상(Reward)은, 상기 복수의 노드 중 상기 메시지가 전파된 노드의 비율에 해당하는 전파 비율에 기초하여 부여될 수 있다.
본원의 일 실시예에 따르면, 상기 보상(Reward)은, 상기 전파 비율이 미리 설정된 제1임계 비율 미만이면, 상기 전파 비율이 증가할수록 큰 값으로 부여되고, 상기 전파 비율이 상기 제1임계 비율 이상이면 미부여 될 수 있다.
본원의 일 실시예에 따르면, 상기 보상(Reward)은, 상기 메시지가 동일한 노드에 대하여 중복적으로 전파된 비율인 중복 비율이 미리 설정된 제2임계 비율 미만이면 부여될 수 있다.
본원의 일 실시예에 따르면, 상기 에피소드를 수행하는 단계에서 상기 복수의 타임 스텝은, 특정 타임 스텝에서 결정된 상기 존의 크기에 따라 정의되는 로컬 존에서 상기 목적지 노드가 탐색될 때까지 반복될 수 있다.
본원의 일 실시예에 따르면, 상기 노드 특성값은, 상기 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능, 네트워크 연결 상태, 대역폭, 전송 속도, 중복 데이터 정보 및 경계 노드 역할 수행 횟수 중 적어도 하나를 포함할 수 있다.
본원의 일 실시예에 따르면, 본원의 일 실시예에 따르면, 상기 전파 경로를 결정하는 단계는, 상기 신뢰도 테이블에서 높은 신뢰도 값이 부여된 상기 존의 크기를 선택하고, 상기 존의 크기에 따라 정의되는 클러스터에 기초하여 상기 전파 경로를 결정할 수 있다.
본원의 일 실시예에 따르면, 상기 네트워크는 프라이빗 블록체인(Private Blockchain) 네트워크이고, 상기 메시지는 상기 프라이빗 블록체인 네트워크에서 수행되는 스마트 컨트랙트와 연계된 데이터를 포함하는 것일 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치는, 네트워크에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득하는 획득부; 강화 학습 기반 모델을 통해 상기 환경 정보를 고려하여 상기 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행하는 수행부; 및 상기 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 상기 출발지 노드로부터 상기 목적지 노드까지의 전파 경로를 결정할 수 있다.
본원의 일 실시예에 따르면, 상기 수행부는, 상기 강화 학습 기반 모델과 연계된 에이전트가 상기 출발지 노드로부터 상기 메시지를 전파할 존의 크기를 선택하는 행동(Action)을 수행하는 복수의 타임 스텝을 반복 수행할 수 있다.
본원의 일 실시예에 따르면, 상기 수행부는, 상기 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 상기 메시지를 전파하는 전파부; 상기 강화 학습 기반 모델과 연계된 보상(Reward)을 부여하는 보상 부여부; 및 상기 보상(Reward)에 기초하여 상기 신뢰도 테이블을 갱신하는 갱신부를 포함하는 것이되, 상기 복수의 타임 스텝은, 상기 전파부, 상기 보상 부여부 및 갱신부에 의해 수행될 수 있다.
본원의 일 실시예에 따르면, 상기 노드 특성값은, 상기 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능, 네트워크 연결 상태, 대역폭, 전송 속도, 중복 데이터 정보 및 경계 노드 역할 수행 횟수 중 적어도 하나를 포함할 수 있다.
본원의 일 실시예에 따르면, 상기 결정부는, 상기 신뢰도 테이블에서 높은 신뢰도 값이 부여된 상기 존의 크기를 선택하고, 상기 존의 크기에 따라 정의되는 클러스터에 기초하여 상기 전파 경로를 결정할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본원을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 추가적인 실시예가 존재할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 존을 활용한 강화학습의 결과를 기반으로 각 노드의 신뢰도 값을 타임 스텝에 따라 반복 갱신함으로써, 실시간으로 변동하는 무선 네트워크 환경에서 실시간으로 정확한 신뢰도를 획득할 수 있는 효과가 있다.
전술한 본원의 과제 해결 수단에 의하면, 각 노드의 신뢰도뿐만이 아니라, 클러스터의 신뢰도를 고려하여, 네트워크 내에 새로 추가되는 노드의 연결 시, 신뢰도가 높은 클러스터에 할당함으로써, 악의적인 노드의 공격을 방지할 수 있다.
다만, 본원에서 얻을 수 있는 효과는 상기된 바와 같은 효과들로 한정되지 않으며, 또 다른 효과들이 존재할 수 있다.
도 1은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 시스템의 개략적인 구성도이다.
도 2는 강화 학습에서의 에이전트(Agent)와 환경(Environment)의 상호 작용을 나타낸 도면이다.
도 3은 본원의 일 실시예에 따른 강화 학습을 통한 신뢰도 테이블의 생성 및 메시지 전파 경로 결정 과정을 나타낸 개념도이다.
도 4는 본원의 일 실시예에 따른 신뢰도 테이블을 설명하기 위한 도면이다.
도 5는 본원의 일 실시예에 따른 전파 경로를 결정하는 과정을 설명하기 위한 도면이다.
도 6은 악의적인 노드에 의한 이클립스 공격의 예시를 나타내는 도면이다.
도 7은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치의 메시지 전파(공유) 실험의 결과를 나타내는 도표이다.
도 8은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치의 악의적인 노드가 가짜 블록을 전파한 경우의 유용한 블록의 공유 실험 결과를 나타내는 도표이다.
도 9는 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치의 개략적인 구성도이다.
도 10은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치의 개략적인 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결" 또는 "간접적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 "상에", "상부에", "상단에", "하에", "하부에", "하단에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
본원은 신뢰도 기반의 메시지 전파 장치 및 방법에 관한 것이다. 예를 들면, 본원은 프라이빗 블록체인(Private Blockchain) 네트워크의 신뢰성 기반 라우팅 기법에 관한 것이다.
도 1은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 시스템의 개략적인 구성도이다.
도 1을 참조하면, 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 시스템(10)은 신뢰도 기반의 메시지 전파 장치(100) 및 복수의 단말(1)을 포함할 수 있다. 복수의 단말(1)은 본원의 일 실시예에 따른 네트워크(20)에 참여하는 단말들을 의미할 수 있다.
신뢰도 기반의 메시지 전파 장치(100) 및 복수의 단말(1) 상호간은 네트워크(20)를 통해 통신할 수 있다. 네트워크(20)는 단말들 및 서버들과 같은 각각의 노드 상호간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(20)의 일 예에는, 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, 5G 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), wifi 네트워크, 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되는 것은 아니다.
한편, 본원의 실시예에 관한 설명에서 네트워크(20)는 프라이빗 블록체인(Private Blockchain) 네트워크를 포함할 수 있다. 이와 관련하여 본원은 프라이빗 블록체인 네트워크에서 수행되는 스마트 컨트랙트와 연계된 데이터를 포함하는 메시지의 노드 간 전파 경로를 결정하기 위한 것일 수 있으나, 이에만 한정되는 것은 아니다.
복수의 단말(1) 각각은 예를 들면, 스마트폰(Smartphone), 스마트패드(SmartPad), 태블릿 PC등과 PCS(Personal Communication System), GSM(Global System for Mobile communication), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말기 같은 모든 종류의 무선 통신 장치일 수 있다.
이하에서는, 설명의 편의를 위해 신뢰도 기반의 메시지 전파 장치(100)를 '전파 장치(100)'로 지칭하도록 한다.
본원의 일 실시예에 따르면, 복수의 단말(1)은 네트워크(20)의 구조를 표현하는데 있어서, 네트워크(20)에 참여하는 복수의 노드에 대응될 수 있다.
이하에서는, 도 2를 참조하여 본원에서 개시하는 전파 장치(100)가 네트워크에 참여하는 각각의 노드의 노드 특성값 등을 기초로 하여 전파 경로를 결정하도록 수행하는 강화 학습의 개념에 대하여 먼저 설명하도록 한다.
도 2는 강화 학습에서의 에이전트(Agent)와 환경(Environment)의 상호 작용을 나타낸 도면이다.
도 2를 참조하면, 강화 학습은 에이전트가 환경과 상호 작용하며 얻은 보상(Reward)으로 학습하는 것을 의미하며, 에이전트는 학습의 주체를 의미할 수 있다.
도 2를 참조하면, 강화 학습에서 에이전트는 환경으로부터 주어진 현재 상태 (State, st) 에서 에이전트가 행동 (Action, at) 을 선택하고, 환경은 그에 따른 다음 상태 (st+1) 와 보상(rt)을 부여할 수 있다. 또한, 강화 학습은 정해진 타임 스텝(time step)마다 반복하며, 설계자가 목표한 지점 또는 종료 조건에서 종료되는 것일 수 있으며, 시작 지점부터 종료 지점 까지를 하나의 에피소드(Episode)라고 할 수 있다.
또한, 강화 학습은 에이전트의 행동으로 다음 상태가 변하고, 다음 상태에서의 행동을 에이전트가 선택하는 방식으로 진행되므로, 순차적 의사결정(Sequential Decision Making) 문제를 풀고자 할 때 유용하게 사용될 수 있다. 본원의 일 실시예에 따른 강화 학습 기반 모델은 메시지 전파를 진행할 때, 메시지 전달이 수행될 존(Zone)을 이동하는 순차적인 문제를 해결하기 위해 사용될 수 있다.
여기서, 존(Zone)은 모바일 애드혹 네트워크(Mobile Ad-hoc Network)의 대표 적인 프로토콜인 존 라우팅 프로토콜(Zone Routing Protocol)에서의 존(Zone)의 개념을 차용해온 것으로, 본원의 일 실시예에 따른 전파 장치(100)에서는 메시지의 전파 범위를 의미할 수 있다.
도 3은 본원의 일 실시예에 따른 강화 학습을 통한 신뢰도 테이블의 생성 및 메시지 전파 경로 결정 과정을 나타낸 개념도이다.
본원의 일 실시예에 따르면, 전파 장치(100)는 네트워크(20)에 포함되어 있는 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득할 수 있다.
본원의 일 실시예에 따르면, 노드 특성값은 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능(예를 들면, 단말(1)에 탑재되는 처리 장치(CPU, GPU 등)의 연산 능력 등), 네트워크 연결 상태(On-Offline 상태), 대역폭, 전송 속도, 전송률(transmission rate), 중복 데이터 정보 및 경계 노드(B) 역할 수행 횟수 중 적어도 하나를 포함할 수 있다.
본원의 일 실시예에 따르면, 중복 데이터 정보는 해당 노드가 동일한 메시지를 중복적으로 전파 받았는가, 중복적으로 전파 받았다면 횟수는 어느 정도인가 등의 정보를 포함하는 정보일 수 있고, 경계 노드 역할 수행 횟수는 해당 노드가 메시지를 전파 받는 경계 노드로써 사용된 횟수 등을 포함하는 정보일 수 있으나, 이에 한정되는 것은 아니다.
도 3을 참조하면, 전파 장치(100)는 환경 정보를 초기화하고, 타임 스텝을 반복 수행하고, 타임 스텝의 반복 결과 생성 또는 갱신된 신뢰도 테이블을 기반으로 메시지 전파 경로를 결정할 수 있다.
도 3을 참고하면, 전파 장치(100)는 강화 학습 기반 모델을 통해 환경 정보를 고려하여 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행할 수 있다.
구체적으로, 전파 장치(100)가 보유한 강화 학습 기반 모델에서 고려되는 상태(State, st)는 해당 타임 스텝에서 메시지를 전파하는 주체가 되는 노드의 식별자로 정의될 수 있다. 예를 들어, 첫 번째 타임 스텝에 대한 상태(State, st)는 출발지 노드(Source node)의 식별자로 결정될 수 있다.
또한, 본원의 일 실시예에 따른 전파 장치(100)가 보유한 강화 학습 기반 모델에서 고려되는 행동(Action, at)은 에이전트가 메시지를 전파하기 위한 전파 범위를 결정하는 행위로 정의될 수 있다. 구체적으로 전파 장치(100)는 상술한 존의 개념을 차용하므로, 행동은 4개의 홉(hop) 중 하나를 선택하는 것일 수 있다.
본원의 일 실시예에 따르면, 전파 장치(100)는 강화 학습 기반 모델과 연계된 에이전트가 출발지 노드로부터 메시지를 전파할 존의 크기를 선택하는 행동을 수행하는 복수의 타임 스텝을 반복 수행할 수 있다.
구체적으로, 도 3을 참조하면, 전파 장치(100)는 강화 학습 기반 모델과 연계된 에이전트가 출발지 노드를 중심으로 반지름이 n(1 내지 4) 홉인 존의 크기를 순차적으로 선택함으로써, 목적지 노드를 향하여 메시지가 전파되는 전파 범위를 결정할 수 있다.
또한, 도 3을 참조하면, 전파 장치(100)는 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 메시지를 전파할 수 있다. 다시 말해, 전파 장치(100)는 선택된 홉(결정된 크기의 존)의 경계에 위치하는 경계 노드(Border node) 중 메시지를 전파하고자 하는 경계 노드를 결정할 수 있고, 결정된 경계 노드로 메시지를 전파할 수 있다. 여기서, 경계 노드는 후술할 신뢰도 테이블의 신뢰도 값을 기반으로 결정되는 것일 수 있다.
또한, 전파 장치(100)는 메시지를 전파 받은 경계 노드의 식별자를 다음 상태(st+1)로 설정할 수 있다. 즉, 전파 장치(100)는 하나의 타입 스텝에 따라 해당 존에서 메시지를 전파할 경계 노드가 결정되고 나면, 다음 타임 스텝에서의 메시지를 전파할 주체가 되는 노드를 해당 경계 노드로 설정하여 존을 이동시킴으로써, 다음 번의 타임 스텝을 반복 수행할 수 있다.
또한, 복수의 타임 스텝은 특정 타임 스텝에서 결정된 존의 크기에 따라 정의 되는 로컬 존에서 목적지 노드(Target node)가 탐색될 때까지 반복될 수 있다. 목적지 노드는 최종적으로 메시지를 전파 받기 위한 노드를 의미하며, 스마트 컨트랙트 내의 수신자 또는 수신 단말을 의미할 수 있다. 또한, 전파 장치(100)는 타임 스텝의 반복 중 목적지 노드를 발견하면, 타임 스텝의 반복을 마칠 수 있다. 다시 말해, 전파 장치(100)는 특정 타임 스텝에서 결정된 존의 크기에 따라 정의되는 로컬 존에서 목적지 노드가 탐색될 때까지 반복할 수 있다.
도 3을 참조하면, 전파 장치(100)는 강화 학습 기반 모델과 연계된 보상(Reward)을 부여할 수 있다. 구체적으로 전파 장치(100)는 하나의 타임 스텝 수행 중 결정된 경계 노드에 메시지를 전파한 후, 메시지를 받은 노드를 고려하여 특정 조건에 따라, 보상(Reward)을 부여하고, 다음 타임 스텝을 수행할 수 있다.
예를 들어, 전파 장치(100)는 복수의 노드 중 메시지가 전파된 노드의 비율에 해당하는 전파 비율에 기초하여 보상을 부여할 수 있다.
구체적으로, 보상은 전파 비율이 미리 설정된 제1임계 비율 미만이면, 전파 비율이 증가할수록 큰 값으로 부여되고, 전파 비율이 제1임계 비율 이상이면 부여되지 않는 것(미부여되는 것)일 수 있다. 달리 말해, 전파 장치(100)는 현재 공유된 존 내부의 노드의 비율에 비례하게 보상을 부여할 수 있다. 또한, 전파 장치(100)는 전파 비율이 제1임계 비율 이상이면, 보상을 부여하지 않은 채, 다음 상태(다음 출발지 노드)에서 타임 스텝을 반복할 수 있다.
예를 들어, 미리 설정된 제1임계 비율이 50%이고 전파 장치(100)는 메시지가 전파된 노드의 비율이 50% 미만이면, 보상을 부여할 수 있으나, 메시지가 전파된 노드의 비율이 20%일 때보다, 메시지가 전파된 노드의 비율이 30%일 때, 더 큰 값의 보상을 부여할 수 있다. 반대로, 메시지가 전파된 노드의 비율이 50% 이상이면, 전파 장치(100)는 보상을 부여하지 않고, 다시 타임 스텝을 반복할 수 있다.
또한, 전파 장치(100)는 결정한 전파 범위 내의 경계 노드가 부재일 시, 기 설정된 임계 값만큼의 페널티를 부여하고, 다른 노드를 찾아 타임 스텝을 반복할 수 있다.
다만, 전파 범위 내의 경계 노드의 부재가 빈번하게 발생하여, 페널티가 증가하며, 전파 비율은 제1임계 비율만큼 증가하지 못할 수 있고, 타임 스텝의 반복에도 전파 비율이 제1임계 비율에 도달하지 못할 수 있다. 이러한 경우, 전파 장치(100)는 현재의 네트워크의 상태가 불안정하거나 네트워크에 연결 되지 않은 노드가 많거나 노드 간의 연결이 불안정한 것으로 판단하여, 메시지가 네트워크에서 공유되지 않도록 하고, 환경 정보를 재차 초기화 하여 에피소드를 다시 시작할 수 있고, 후속하여 전술한 에피소드를 수행(달리 말해, 복수의 타임 스텝을 재차 반복 수행)하는 것 일 수 있으나, 이에 한정되는 것은 아니다.
또한, 본원의 일 실시예에 따르면 보상은 메시지가 동일한 노드에 대하여 중복적으로 전파된 비율인 중복 비율이 미리 설정된 제2임계 비율 미만이면 부여되는 것일 수 있다. 달리 말해, 전파 장치(100)는 동일한 메시지를 중복적으로 전파 받은 노드의 비율이 제2임계 비율 미만이면 보상을 부여할 수 있다. 또한, 반대로 동일한 메시지를 중복적으로 전파 받은 노드의 비율이 제2임계 비율 이상이면, 페널티(Penalty)를 부여하여 데이터의 중복이 누적되는 것을 방지할 수 있으나, 이에 한정되는 것은 아니다.
예를 들면, 제2임계 비율이 50%이면, 전파 장치(100)는 동일한 메시지를 중복적으로 전파 받은 노드의 비율이 40%이면 보상을 부여하고, 60%이면 반대로 페널티를 부여할 수 있다.
또한, 도3을 참조하면, 전파 장치(100)는 앞서 상세히 서술한 보상에 기초하여 신뢰도 테이블을 반복하여 갱신할 수 있다. 다시 말해, 전파 장치(100)는 강화 학습의 결과인 보상을 기반으로, 현재 상태에서 특정 행동을 선택했을 때 기대되는 보상의 크기인 신뢰도 값을 타임 스텝의 반복에 따라 반복적으로 갱신함으로써, 실시간으로 변동하는 네트워크 환경에서 실시간으로 정확한 신뢰도를 획득할 수 있다. 신뢰도 테이블에 대한 상세한 내용은 도 4를 참조하여 후술하기로 한다.
본원의 일 실시예에 따르면, 신뢰도 테이블은 앞서 상세히 설명한 보상 부여 조건과 관계없이 갱신될 수 있다. 구체적으로, 전파 장치(100)는 전파 비율이 기 설정된 제1임계값 미만이어서 보상이 부여되는 경우, 전파 비율이 기 설정된 제1임계값 이상이어서 보상이 부여되지 않는 경우, 동일한 메시지를 중복적으로 전파 받은 노드의 비율이 기 설정된 제2임계값 미만이어서 보상이 부여되는 경우 및 동일한 메시지를 중복적으로 전파 받은 노드의 비율이 기 설정된 제2임계값 이상이어서 페널티가 부여되는 경우 중 어느 경우에서라도 신뢰도 테이블을 갱신할 수 있다.
다만, 이는 본원의 일 실시예에 따르는 것일 뿐으로, 이에 한정되는 것은 아니며, 설계자의 설정에 따라 신뢰도 테이블의 갱신 조건이나 갱신 시기는 변경되는 것일 수 있다.
이와 관련하여, 본원의 일 실시예에 따르면, 전파 장치(100)가 에피소드 수행 과정에서 각 타임 스텝마다 부여하는 보상(Reward)는 하기 식 1과 같이 정의될 수 있다.
[식 1]
Figure PCTKR2022018394-appb-img-000001
여기서, N은 네트워크(20)에 참여하는 전체 노드의 수이고, zi는 해당 타임 스텝(i번째 타임 스텝)에서 메시지(데이터)가 공유된 존 내부의 노드의 수이고, ci는 해당 타임 스텝까지의 메시지(데이터)의 중복 횟수일 수 있다. 보다 구체적으로, 상기 식 1에서
Figure PCTKR2022018394-appb-img-000002
i번째 타임 스텝에서의 데이터의 중복 누적값을 나타낸다.
도 4는 본원의 일 실시예에 따른 신뢰도 테이블을 설명하기 위한 도면이다.
신뢰도 테이블은 Model-free, Value-based, Off-policy로 분류 되는 강화학습 알고리즘인 Q 러닝(Q-learning)에서 사용하는 Q 함수(state-action value function)를 테이블 형태로 표현한 것으로, 에이전트는 환경의 모델 없이 환경의 입력(S, A)과 출력(R: Reward) 사이의 관계를 학습하게 된다.
도 4를 참조하면, 신뢰도 테이블은 행은 상태 (State, st), 열은 행동 (Action, at), Q 함수(q(s, a))의 형태로 표현되는 것일 수 있다.
본원의 일 실시예에 따르면, 상태(st)는 각 타임 스텝에서 메시지를 전파하는 주체에 해당하는 노드의 식별자를 의미하고, 행동(at)은 메시지 전파 주체 노드로부터 해당 타임 스텝에서 메시지를 전파할 전파 범위, 즉 존의 크기를 의미하며, 이는 출발지 노드를 중심으로 하는 범위를 n(1 내지 4) 홉으로 선택하는 것을 의미할 수 있다. 도 4에는 a0, a1, a2만 도시되어 있으나, 본원의 일 실시예에 따르면, 행동(at)은 1 홉 내지 4홉의 선택을 포함할 수 있다. 또한, Q 함수(q(s, a))는 본원의 일 실시예에 따르면, 앞서 상세히 설명한 보상과 연계된 것일 수 있다.
구체적으로 예시 하면, a0이 1 홉을 선택하는 행동일 경우, 현재 상태가 s0이고, 행동이 a0이면, Q 함수는 이전 타임 스텝 또는 에피소드에서 갱신된 상태 s0에서 행동 a0를 취했을 때 부여되었던 보상 값을 의미하고, 이는 곧 다음 타임 스텝 또는 에피소드에서 상태 s0에서 행동 a0를 취했을 때 기대되는 보상을 의미할 수 있다. 또한, 기대되는 보상이 높을수록 신뢰도가 높은 것을 의미할 수 있으므로, Q함수가 클수록 상태 s0에서 행동 a0를 취했을 때의 신뢰도가 높은 것일 수 있다.
다시 말해, 본원의 일 실시예에 따르면, 전파 장치(100)는 강화 학습에 따른 타임 스텝 또는 에피소드를 반복함으로써, 메시지 전파 시, 각 노드의 신뢰도를 획득할 수 있다. 또한, 전파 장치(100)는 각 노드의 신뢰도를 기반으로 다음 에피소드 또는 타임 스텝의 수행 시, 전파 범위 및 경계 노드의 결정에 활용할 수 있다.
도 5는 본원의 일 실시예에 따른 전파 경로를 결정하는 과정을 설명하기 위한 도면이다.
도 5를 참조하여 예시하면, 전파 장치(100)는 출발지 노드(S)로부터 신뢰도 테이블에 따라 반지름이 2홉인 전파 범위(존의 크기)를 선택하는 행동을 취하여 전파 범위를 결정하고, 존(Z)의 경계에 위치하는 4개의 경계 노드(B) 중 메시지를 전파하기 위한 경계 노드로, 도 5의 우측 하단에 위치한 경계 노드를 결정할 수 있다.
또한, 도 5를 참조하면, 전파 장치(100)는 결정된 경계 노드를 다음 타임 스텝에서 메시지를 전파할 주체가 되는 노드로 설정하고, 위와 같은 과정으로 전파 경로와 경계 노드를 결정할 수 있다. 이와 같은 방법으로 전파 장치(100)는 타임 스텝 및 에피소드를 반복하고, 결정한 전파 경로에 대응하는 존의 경계에 목적지 노드(T)가 발견되면, 목적지 노드(T)에 메시지를 전달함으로써, 반복을 마치는 것일 수 있다.
참고로, 출발지 노드부터 목적지 노드까지 메시지가 전달되는 출발지 노드와 목적지 노드 사이의 노드들을 중개 노드라고 지칭할 수 있다.
본원의 일 실시예에 따르면, 전파 장치(100)는 상술한 반복을 수행함에 따라 신뢰도 테이블을 갱신하고, 이후 메시지 전파 시, 신뢰도 테이블의 각 노드의 신뢰도 값을 기반으로 전파 경로를 결정할 수 있다. 다시 말해, 전파 장치(100)는 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 출발지 노드로부터 목적지 노드까지의 전파 경로를 결정할 수 있다.
또한, 본원의 일 실시예에 따르면, 전파 장치(100)는 신뢰도 테이블에서 높은 신뢰도 값이 부여된 존의 크기를 선택하고, 존의 크기에 따라 정의 되는 클러스터에 기초하여 전파 경로를 결정할 수 있다.
구체적으로, 전파 장치(100)는 신뢰도 테이블에서 특정 출발지 노드에 대한 신뢰도 값들 중, 어떤 행동(전파 범위 선택)을 취했을 때, 신뢰도 값이 가장 높았는지 확인하고, 가장 높은 신뢰도 값이 부여된 행동에 따라 전파 범위(존의 크기)를 결정할 수 있다.
또한, 전파 장치(100)는 상술한 출발지 노드를 중심으로 가까운 거리의 노드들과 출발지 노드를 포함하는 클러스터를 이루고, 이러한 클러스터의 신뢰도 값을 함께 고려하여 전파 경로를 결정할 수 있다.
구체적으로 예를 들면, 어느 하나의 출발지 노드 S가 있고, 노드 S의 신뢰도 값이 가장 클 때의 존의 크기는 존의 반지름이 3홉일 때라고 가정하면, 전파 장치(100)는 다음 전파 경로를 결정하는데, 반지름이 3홉인 존(로컬 존) 내의 존재하는 노드들을 이용해, 노드S와 클러스터를 이루고, 클러스터의 신뢰도 값, 즉 존 내의 노드들의 신뢰도 값들을 함께 고려하여 목적지 노드까지의 전체 메시지 전파 경로를 결정할 수 있으나, 이에 한정되는 것은 아니다.
따라서, 본원의 일 실시예에 따른 전파 장치(100)는 메시지 전파 과정에서 신뢰도 값이 낮은 지역을 우회하여 신뢰도 값이 높은 중개 노드와 전파 경로를 확보할 수 있다.
본원의 일 실시예에 따르면, 전파 장치(100)는 환경 정보를 초기화한 후, 출발지 노드로부터 메시지를 전파할 전파 범위(존의 크기)를 결정하고, 존의 경계에 위치하는 노드 중 메시지를 전파할 경계 노드를 결정하고, 메시지를 전달 받은 노드의 비율(전파 비율)을 기반으로 보상 또는 페널티를 부여하며 타임 스텝을 반복하되, 타임 스텝의 반복에 따라 신뢰도 테이블을 갱신하고, 신뢰도 테이블이 포함하는 각 노드 또는 클러스터를 고려하여 메시지 전파 경로를 결정할 수 있다.
다만, 이에 한정되는 것은 아니며, 반복되는 타임 스텝 또는 에피소드가 포함하는 수행 과정의 순서 및 조건 등은 설계자의 설정에 따라 변경될 수 있다.
예를 들어, 본원의 다른 실시예에 따르면, 전파 장치(100)는 전파 범위 및 경계 노드를 결정하고, 메시지를 전파한 뒤, 보상을 부여하는 것이 아니라, 상태(State)를 변경(존을 이동)하는 과정을 반복할 수 있고, 반복 수행 중 목적지 노드를 발견하였을 때, 조건에 따른 보상을 부여하고, 메시지의 전파 비율이 기 설정된 임계 비율 미만일 경우, 목적지 노드로부터 우회하여 상술한 반복을 재 수행함으로써 전파 비율을 증가시키는 것 일 수 있다.
또한, 전파 장치(100)는 목적지 노드를 발견할 때, 또는 메시지가 목적지 노드에 도달할 때마다 신뢰도 테이블을 갱신하는 것일 수 있다. 예를 들어, 전파 장치(100)는 전파 중인 메시지가 목적지 노드에 도달하였으나, 전파 비율이 임계 비율 미만일 때, 부여된 보상에 따라 신뢰도 테이블을 갱신할 수 있고, 전파 비율이 임계 비율 이상이어서, 반복을 마칠 때, 신뢰도 테이블을 갱신할 수도 있으나, 이에 한정되는 것은 아니다.
도 6은 악의적인 노드에 의한 이클립스 공격의 예시를 나타내는 도면이다.
이클립스 공격은 악의적인 노드가 주변 노드를 고립시키기 위해 테이블을 조작하는 행위를 하는 것을 의미하며, 악의적인 노드는 공격 대상이 자신이 통제하는 노드에 접속되도록 할 수 있다. 이때, 공격자(이클립스 공격을 행하는 자)는 악의적인 노드를 통해 자신의 IP주소가 쇄도하도록 하고, 이에 따라 악의적인 노드 주변의 노드들은 소프트웨어의 재시작 시, 공격자의 IP 주소에 접촉하여 기존 네트워크를 볼 수 없는 상황에 빠지게 될 가능성이 높아진다. 이 사이에 악의적인 노드는 가짜 데이터를 주변 노드에 채워 넣을 수 있다.
도 6을 참조하여 예시하면, 악의적인 노드로 선정된 임의의 노드(도 6의 붉은색으로 표현된 노드)가 1홉으로 연결된 이웃 노드들을 공격 대상으로 삼을 경우, 피해 노드(이웃 노드)와 외부의 노드를 연결하는 엣지들은 사라지고, 피해 노드들은 악의적인 노드와 연결될 수 있다.
전파 장치(100)는 강화 학습 알고리즘인Q 러닝을 사용하여, Q 테이블(본원의 일 실시예에 따른 신뢰도 테이블)을 기반으로 신뢰도를 측정하는 것이므로, 도 7 및 도 8에서 본원의 일 실시예에 따른 전파 장치(100)를 Q-zone이라 특정한다.
도 7은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치의 메시지 전파(공유) 실험의 결과를 나타내는 도표이다.
도 7을 참조하면, 전파 장치(100, Q-zone)과 Random-zone 및 GossipSub의 메시지 공유율과 중복률을 확인할 수 있다. Random-zone은 Q 함수를 사용하지 않고, 전파 범위를 선택하여 목적지 노드까지 도달하도록 구동되는 것이고, GossipSub는 전체 네트워크가 메시지의 중복을 줄이면서 수신율을 높이기 위해 제시된 IPFS libp2p에서 지원하는 라우팅 알고리즘이다.
도 7을 참조하면, GossipSub 알고리즘의 경우, 메시지의 공유율은 비교적 높은 비율을 보이며, 중복률은 비교적 낮은 비율을 보여, GossipSub 알고리즘은 메시지의 공유가 활발히 이루어지며, 동일한 메시지를 중복적으로 전파 받은 노드는 적은 것으로 볼 수 있다. 또한, 전파 장치(100, Q-zone)는 Random-zone보다는 높은 공유율과 낮은 중복율을 보이지만, GossipSub과 비교하면, 다소 아쉬운 성능을 보이는 것을 확인할 수 있다.
그러나, 도 8을 참조하면, 유효한 블록의 공유율은 전파 장치(100, Q-zone)가 Random-zone 및 GossipSub와 비교하여, 안정적인 성능을 보이는 것을 확인할 수 있다.
도 8은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치의 악의적인 노드가 가짜 블록을 전파한 경우의 유용한 블록의 공유 실험 결과를 나타내는 도표이다.
도 8을 참조하면, GossipSub 알고리즘은 도 7에서 확인한 바 메시지의 공유율은 높으나, 유효한 블록의 공유율은 확연히 낮은 것을 확인할 수 있다. 이는 공유되는 메시지들 중 가짜 메시지의 비율이 높은 것으로 해석될 수 있다.
반면, 전파 장치(100, Q-zone)의 경우, 유효한 블록의 공유율이 비교적 안정적인 것을 확인할 수 있으며, 도 7 및 도 8의 결과를 조합하면, 전파 장치(100, Q-zone)는 어느 정도의 중복을 허용하며, 신뢰도가 높은 구간에서 최대한 존의 크기를 키우며 메시지를 전파하는 것으로 해석될 수 있다.
다시 말해, 본원의 일 실시예에 따른 전파 장치(100)는 각 노드의 신뢰도뿐만이 아니라, 클러스터의 신뢰도를 고려하여, 네트워크 내에 새로 추가되는 노드의 연결 시, 신뢰도가 높은 클러스터에 할당함으로써, 악의적인 노드의 공격을 방지할 수 있다.
도 9는 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치의 개략적인 구성도이다.
도 9를 참조하면, 전파 장치(100)는 획득부(110), 수행부(120) 및 결정부(130)를 포함할 수 있다.
본원의 일 실시예에 따르면, 획득부(110)는 네트워크(20)에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득할 수 있다.
또한, 본원의 일 실시예에 따르면, 노드 특성값은 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능, 네트워크 연결 상태, 대역폭, 전송 속도, 중복 데이터 정보 및 경계 노드 역할 수행 회수 중 적어도 하나를 포함하는 것일 수 있다.
본원의 일 실시예를 따르면, 수행부(120)는 강화 학습 기반 모델을 통해 환경 정보를 고려하여 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행할 수 있다.
구체적으로, 수행부(120)는 강화 학습 기반 모델과 연계된 에이전트가 출발지 노드로부터 메시지를 전파할 조의 크기를 선택하는 행동(Action)을 수행하는 복수의 타임 스텝을 반복 수행하는 것일 수 있다.
또한, 도 9를 참조하면, 수행부(120)는 전파부(121), 보상 부여부(122) 및 신뢰도 테이블 갱신부(123)를 포함할 수 있다.
본원의 일 실시예에 따르면, 전파부(121)는 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 메시지를 전파하는 것일 수 있다.
본원의 일 실시예에 따르면, 보상 부여부(122)는 강화 학습 기반 모델과 연계된 보상(Reward)을 부여할 수 있다. 보상(Reward)은 복수의 노드 중 메시지가 전파된 노드의 비율에 해당하는 전파 비율에 기초하여 부여되는 것일 수 있다.
구체적으로, 보상(Reward)은 전파 비율이 미리 설정된 제1임계 비율 미만이면, 전파 비율이 증가할수록 큰 값으로 부여되고, 전파 비율이 제1임계 비율 이상이면 미부여되는 것일 수 있고, 메시지가 동일한 노드에 대하여 중복적으로 전파된 비율인 중복 비율이 미리 설정된 제2임계 비율 미만이면 부여되는 것일 수 있다.
본원의 일 실시예에 따르면, 신뢰도 테이블 갱신부(123)는 보상(Reward)에 기초하여 신뢰도 테이블을 갱신할 수 있다.
또한, 본원의 일 실시예에 따르면, 수행부(120)는 특정 타임 스텝에서 결정된 존의 크기에 따라 정의되는 로컬 존에서 목적지 노드가 탐색될 때까지 복수의 타임 스텝을 반복하는 것일 수 있다.
본원의 일 실시예에 따르면, 결정부(130)는 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 출발지 노드로부터 목적지 노드까지의 전파 경로를 결정할 수 있다.
구체적으로, 결정부(130)는 신뢰도 테이블에서 높은 신뢰도 값이 부여된 존의 크기를 선택하고, 존의 크기에 따라 정의되는 클러스터에 기초하여 전파 경로를 결정하는 것일 수 있다.
이하에서는 상기에 자세히 설명된 내용을 기반으로, 본원의 동작 흐름을 간단히 살펴보기로 한다.
도 10은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 방법에 대한 동작 흐름도이다.
도 10에 도시된 신뢰도 기반의 메시지 전파 방법은 앞서 설명된 신뢰도 기반의 메시지 전파 장치(100)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 신뢰도 기반의 메시지 전파 장치(100)에 대하여 설명된 내용은 신뢰도 기반의 메시지 전파 방법에 대한 설명에도 동일하게 적용될 수 있다.
상술한 설명에서, 단계 S11 내지 S13은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
도 10을 참조하면, 단계S11에서 획득부(110)는 네트워크(20)에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득할 수 있다.
또한, 본원의 일 실시예에 따르면, 노드 특성값은 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능, 네트워크 연결 상태, 대역폭, 전송 속도, 중복 데이터 정보 및 경계 노드 역할 수행 회수 중 적어도 하나를 포함하는 것일 수 있다.
다음으로, 단계 S12에서 수행부(120)는 강화 학습 기반 모델을 통해 환경 정보를 고려하여 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행할 수 있다.
구체적으로, 단계 S12에서 수행부(120)는 강화 학습 기반 모델과 연계된 에이전트가 출발지 노드로부터 메시지를 전파할 조의 크기를 선택하는 행동(Action)을 수행하는 복수의 타임 스텝을 반복 수행하는 것일 수 있다.
본원의 일 실시예에 따르면, 단계 S12에서 수행부(120)는 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 메시지를 전파하고, 강화 학습 기반 모델과 연계된 보상(Reward)을 부여하고, 신뢰도 테이블 갱신부(123)는 보상(Reward)에 기초하여 신뢰도 테이블을 갱신할 수 있다.
본원의 일 실시예에 따르면, 보상(Reward)은 복수의 노드 중 메시지가 전파된 노드의 비율에 해당하는 전파 비율에 기초하여 부여되는 것일 수 있다. 구체적으로, 보상(Reward)은 전파 비율이 미리 설정된 제1임계 비율 미만이면, 전파 비율이 증가할수록 큰 값으로 부여되고, 전파 비율이 제1임계 비율 이상이면 미부여되는 것일 수 있고, 메시지가 동일한 노드에 대하여 중복적으로 전파된 비율인 중복 비율이 미리 설정된 제2임계 비율 미만이면 부여되는 것일 수 있다.
또한, 본원의 일 실시예에 따르면, 단계 S12에서 수행부(120)는 특정 타임 스텝에서 결정된 존의 크기에 따라 정의되는 로컬 존에서 목적지 노드가 탐색될 때까지 복수의 타임 스텝을 반복하는 것일 수 있다.
다음으로, 단계 S13에서 결정부(130)는 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 출발지 노드로부터 목적지 노드까지의 전파 경로를 결정할 수 있다.
구체적으로, 단계 S13에서 결정부(130)는 신뢰도 테이블에서 높은 신뢰도 값이 부여된 존의 크기를 선택하고, 존의 크기에 따라 정의되는 클러스터에 기초하여 전파 경로를 결정하는 것일 수 있다.
본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 전술한 신뢰도 기반의 메시지 전파 방법은 기록 매체에 저장되는 컴퓨터에 의해 실행되는 컴퓨터 프로그램 또는 애플리케이션의 형태로도 구현될 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.

Claims (15)

  1. 신뢰도 기반의 메시지 전파 방법에 있어서,
    네트워크에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득하는 단계;
    강화 학습 기반 모델을 통해 상기 환경 정보를 고려하여 상기 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행하는 단계; 및
    상기 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 상기 출발지 노드로부터 상기 목적지 노드까지의 전파 경로를 결정하는 단계,
    를 포함하는, 전파 방법.
  2. 제1항에 있어서,
    상기 에피소드를 수행하는 단계는,
    상기 강화 학습 기반 모델과 연계된 에이전트가 상기 출발지 노드로부터 상기 메시지를 전파할 존의 크기를 선택하는 행동(Action)을 수행하는 복수의 타임 스텝을 반복 수행하는 것인, 전파 방법.
  3. 제2항에 있어서,
    상기 에피소드를 수행하는 단계에서 상기 복수의 타임 스텝 각각은,
    상기 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 상기 메시지를 전파하는 단계;
    상기 강화 학습 기반 모델과 연계된 보상(Reward)을 부여하는 단계; 및
    상기 보상(Reward)에 기초하여 상기 신뢰도 테이블을 갱신하는 단계,
    를 포함하는 것인, 전파 방법.
  4. 제3항에 있어서,
    상기 보상(Reward)은,
    상기 복수의 노드 중 상기 메시지가 전파된 노드의 비율에 해당하는 전파 비율에 기초하여 부여되는 것인, 전파 방법.
  5. 제4항에 있어서,
    상기 보상(Reward)은,
    상기 전파 비율이 미리 설정된 제1임계 비율 미만이면, 상기 전파 비율이 증가할수록 큰 값으로 부여되고, 상기 전파 비율이 상기 제1임계 비율 이상이면 미부여되는 것인, 전파 방법.
  6. 제3항에 있어서,
    상기 보상(Reward)은,
    상기 메시지가 동일한 노드에 대하여 중복적으로 전파된 비율인 중복 비율이 미리 설정된 제2임계 비율 미만이면 부여되는 것인, 전파 방법.
  7. 제2항에 있어서,
    상기 에피소드를 수행하는 단계에서 상기 복수의 타임 스텝은, 특정 타임 스텝에서 결정된 상기 존의 크기에 따라 정의되는 로컬 존에서 상기 목적지 노드가 탐색될 때까지 반복되는 것인, 전파 방법.
  8. 제1항에 있어서,
    상기 노드 특성값은,
    상기 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능, 네트워크 연결 상태, 대역폭, 전송 속도, 중복 데이터 정보 및 경계 노드 역할 수행 횟수 중 적어도 하나를 포함하는 것인, 전파 방법.
  9. 제2항에 있어서,
    상기 전파 경로를 결정하는 단계는,
    상기 신뢰도 테이블에서 높은 신뢰도 값이 부여된 상기 존의 크기를 선택하고, 상기 존의 크기에 따라 정의되는 클러스터에 기초하여 상기 전파 경로를 결정하는 것인, 전파 방법.
  10. 제1항에 있어서,
    상기 네트워크는 프라이빗 블록체인(Private Blockchain) 네트워크이고, 상기 메시지는 상기 프라이빗 블록체인 네트워크에서 수행되는 스마트 컨트랙트와 연계된 데이터를 포함하는 것인, 전파 방법.
  11. 신뢰도 기반의 메시지 전파 장치에 있어서,
    네트워크에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득하는 획득부;
    강화 학습 기반 모델을 통해 상기 환경 정보를 고려하여 상기 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행하는 수행부; 및
    상기 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 상기 출발지 노드로부터 상기 목적지 노드까지의 전파 경로를 결정하는 결정부,
    를 포함하는, 전파 장치.
  12. 제11항에 있어서,
    상기 수행부는,
    상기 강화 학습 기반 모델과 연계된 에이전트가 상기 출발지 노드로부터 상기 메시지를 전파할 존의 크기를 선택하는 행동(Action)을 수행하는 복수의 타임 스텝을 반복 수행하는 것인, 전파 장치.
  13. 제12항에 있어서,
    상기 수행부는,
    상기 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 상기 메시지를 전파하는 전파부;
    상기 강화 학습 기반 모델과 연계된 보상(Reward)을 부여하는 보상 부여부; 및
    상기 보상(Reward)에 기초하여 상기 신뢰도 테이블을 갱신하는 신뢰도 테이블 갱신부,
    를 포함하는 것이되,
    상기 복수의 타임 스텝은,
    상기 전파부, 상기 보상 부여부 및 신뢰도 테이블 갱신부에 의해 수행되는 것인, 전파 장치.
  14. 제11항에 있어서,
    상기 노드 특성값은,
    상기 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능, 네트워크 연결 상태, 대역폭, 전송 속도, 중복 데이터 정보 및 경계 노드 역할 수행 횟수 중 적어도 하나를 포함하는 것인, 전파 장치.
  15. 제12항에 있어서,
    상기 결정부는,
    상기 신뢰도 테이블에서 높은 신뢰도 값이 부여된 상기 존의 크기를 선택하고, 상기 존의 크기에 따라 정의되는 클러스터에 기초하여 상기 전파 경로를 결정하는 것인, 전파 장치.
PCT/KR2022/018394 2021-12-20 2022-11-21 신뢰도 기반의 메시지 전파 장치 및 방법 WO2023121001A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2021-0182861 2021-12-20
KR1020210182861A KR20230093873A (ko) 2021-12-20 2021-12-20 신뢰도 기반의 메시지 전파 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2023121001A1 true WO2023121001A1 (ko) 2023-06-29

Family

ID=86902879

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/018394 WO2023121001A1 (ko) 2021-12-20 2022-11-21 신뢰도 기반의 메시지 전파 장치 및 방법

Country Status (2)

Country Link
KR (1) KR20230093873A (ko)
WO (1) WO2023121001A1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015192347A (ja) * 2014-03-28 2015-11-02 セコム株式会社 通信装置およびプログラム
KR101591964B1 (ko) * 2015-02-24 2016-02-05 가천대학교 산학협력단 무선통신시스템 분산 제어 방법 및 장치
KR20190126992A (ko) * 2018-05-03 2019-11-13 삼성에스디에스 주식회사 블록체인 기반 시스템에서 특정 선택 노드를 활용한 비결정적 데이터 생성 방법
KR102081159B1 (ko) * 2018-11-08 2020-02-25 엔에이치엔 주식회사 블록체인 시스템 및 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015192347A (ja) * 2014-03-28 2015-11-02 セコム株式会社 通信装置およびプログラム
KR101591964B1 (ko) * 2015-02-24 2016-02-05 가천대학교 산학협력단 무선통신시스템 분산 제어 방법 및 장치
KR20190126992A (ko) * 2018-05-03 2019-11-13 삼성에스디에스 주식회사 블록체인 기반 시스템에서 특정 선택 노드를 활용한 비결정적 데이터 생성 방법
KR102081159B1 (ko) * 2018-11-08 2020-02-25 엔에이치엔 주식회사 블록체인 시스템 및 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LIU JIANMIN; WANG QI; HE CHENTAO; JAFFRèS-RUNSER KATIA; XU YIDA; LI ZHENYU; XU YONGJUN: "QMR:Q-learning based Multi-objective optimization Routing protocol for Flying Ad Hoc Networks", COMPUTER COMMUNICATIONS., ELSEVIER SCIENCE PUBLISHERS BV, AMSTERDAM., NL, vol. 150, 27 November 2019 (2019-11-27), NL , pages 304 - 316, XP086011231, ISSN: 0140-3664, DOI: 10.1016/j.comcom.2019.11.011 *

Also Published As

Publication number Publication date
KR20230093873A (ko) 2023-06-27

Similar Documents

Publication Publication Date Title
WO2021002692A1 (en) Method for providing virtual asset service based on decentralized identifier and virtual asset service providing server using them
Eshghi et al. Optimal patching in clustered malware epidemics
Wang et al. Ghost riders: Sybil attacks on crowdsourced mobile mapping services
Bose et al. On mobile viruses exploiting messaging and bluetooth services
Pack et al. Snc: a selective neighbor caching scheme for fast handoff in ieee 802.11 wireless networks
JP2021108500A (ja) 負荷再配置方法、装置、およびシステム
WO2021006616A1 (en) Method for providing relational decentralized identifier service and blockchain node using the same
Wang et al. In search of an anonymous and secure lookup: attacks on structured peer-to-peer anonymous communication systems
AU2008224354A1 (en) Security methods for use in a wireless communications system
WO2018186718A1 (en) A method and apparatus for reducing latency of network protocols
CN110191116B (zh) 恶意节点隔离方法和系统、算力验证终端及p2p网络
Jain et al. L25gc: A low latency 5g core network based on high-performance nfv platforms
WO2014193158A1 (ko) 콘텐츠 중심 네트워크에서의 서비스 거부 공격 탐지 장치 및 방법
WO2016137115A1 (ko) 무선통신시스템 분산 제어 방법 및 장치
WO2023121001A1 (ko) 신뢰도 기반의 메시지 전파 장치 및 방법
WO2019199053A1 (ko) 데이터 공유 장치 및 방법과, 이를 이용한 광고 서비스 제공 방법 및 그 장치
Guo et al. Blockchain-assisted privacy-preserving data computing architecture for Web3
Abuzainab et al. A multiclass mean-field game for thwarting misinformation spread in the internet of battlefield things
US20230422039A1 (en) System and method for machine learning assisted security analysis of 5g network connected systems
CN117336841A (zh) 支持tsn的本地局域网通信同步方法、装置及设备
US20070100647A1 (en) Eligibility list management in a distributed group membership system
WO2024063400A1 (ko) 블록체인 네트워크에서 어카운트 디렉토리 변경 시스템 및 방법
WO2024039129A1 (ko) 블록체인 네트워크에서 다이나믹 샤딩 시스템 및 방법
Liu et al. Mrsa: Mask random array protocol for efficient secure handover authentication in 5g hetnets
WO2021049806A1 (ko) 네트워크 노드의 주소할당방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22911638

Country of ref document: EP

Kind code of ref document: A1