KR20230093873A - 신뢰도 기반의 메시지 전파 장치 및 방법 - Google Patents
신뢰도 기반의 메시지 전파 장치 및 방법 Download PDFInfo
- Publication number
- KR20230093873A KR20230093873A KR1020210182861A KR20210182861A KR20230093873A KR 20230093873 A KR20230093873 A KR 20230093873A KR 1020210182861 A KR1020210182861 A KR 1020210182861A KR 20210182861 A KR20210182861 A KR 20210182861A KR 20230093873 A KR20230093873 A KR 20230093873A
- Authority
- KR
- South Korea
- Prior art keywords
- propagation
- node
- message
- reliability
- nodes
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 230000002787 reinforcement Effects 0.000 claims abstract description 41
- 230000001902 propagating effect Effects 0.000 claims abstract description 16
- 230000009471 action Effects 0.000 claims description 28
- 230000000644 propagated effect Effects 0.000 claims description 21
- 230000005540 biological transmission Effects 0.000 claims description 8
- 230000007613 environmental effect Effects 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 235000008694 Humulus lupulus Nutrition 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- ODCKICSDIPVTRM-UHFFFAOYSA-N [4-[2-hydroxy-3-(propan-2-ylazaniumyl)propoxy]naphthalen-1-yl] sulfate Chemical compound C1=CC=C2C(OCC(O)CNC(C)C)=CC=C(OS(O)(=O)=O)C2=C1 ODCKICSDIPVTRM-UHFFFAOYSA-N 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/04—Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/08—Learning-based routing, e.g. using neural networks or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/124—Shortest path evaluation using a combination of metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/127—Shortest path evaluation based on intermediate node capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/32—Connectivity information management, e.g. connectivity discovery or connectivity update for defining a routing cluster membership
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은 본원의 일 실시예에 따른 신뢰도 기반의 메시지 전파 장치의 개략적인 흐름도다.
도 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]
여기서, N은 네트워크(20)에 참여하는 전체 노드의 수이고, zi는 해당 타임 스텝(i번째 타임 스텝)에서 메시지(데이터)가 공유된 존 내부의 노드의 수이고, ci는 해당 타임 스텝까지의 메시지(데이터)의 중복 횟수일 수 있다. 보다 구체적으로, 상기 식 1에서 는 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), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 전술한 신뢰도 기반의 메시지 전파 방법은 기록 매체에 저장되는 컴퓨터에 의해 실행되는 컴퓨터 프로그램 또는 애플리케이션의 형태로도 구현될 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
10: 신뢰도 기반의 메시지 전파 시스템
100: 신뢰도 기반의 메시지 전파 장치
110: 획득부
120: 수행부
121: 전파부
122: 보상 부여부
123: 신뢰도 테이블 갱신부
130: 결정부
20: 네트워크
1: 단말
S: 출발지 노드
B: 경계 노드
T: 목적지 노드
Z: 존
100: 신뢰도 기반의 메시지 전파 장치
110: 획득부
120: 수행부
121: 전파부
122: 보상 부여부
123: 신뢰도 테이블 갱신부
130: 결정부
20: 네트워크
1: 단말
S: 출발지 노드
B: 경계 노드
T: 목적지 노드
Z: 존
Claims (15)
- 신뢰도 기반의 메시지 전파 방법에 있어서,
네트워크에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득하는 단계;
강화 학습 기반 모델을 통해 상기 환경 정보를 고려하여 상기 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행하는 단계; 및
상기 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 상기 출발지 노드로부터 상기 목적지 노드까지의 전파 경로를 결정하는 단계,
를 포함하는, 전파 방법. - 제1항에 있어서,
상기 에피소드를 수행하는 단계는,
상기 강화 학습 기반 모델과 연계된 에이전트가 상기 출발지 노드로부터 상기 메시지를 전파할 존의 크기를 선택하는 행동(Action)을 수행하는 복수의 타임 스텝을 반복 수행하는 것인, 전파 방법. - 제2항에 있어서,
상기 에피소드를 수행하는 단계에서 상기 복수의 타임 스텝 각각은,
상기 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 상기 메시지를 전파하는 단계;
상기 강화 학습 기반 모델과 연계된 보상(Reward)을 부여하는 단계; 및
상기 보상(Reward)에 기초하여 상기 신뢰도 테이블을 갱신하는 단계,
를 포함하는 것인, 전파 방법. - 제3항에 있어서,
상기 보상(Reward)은,
상기 복수의 노드 중 상기 메시지가 전파된 노드의 비율에 해당하는 전파 비율에 기초하여 부여되는 것인, 전파 방법. - 제4항에 있어서,
상기 보상(Reward)은,
상기 전파 비율이 미리 설정된 제1임계 비율 미만이면, 상기 전파 비율이 증가할수록 큰 값으로 부여되고, 상기 전파 비율이 상기 제1임계 비율 이상이면 미부여되는 것인, 전파 방법. - 제3항에 있어서,
상기 보상(Reward)은,
상기 메시지가 동일한 노드에 대하여 중복적으로 전파된 비율인 중복 비율이 미리 설정된 제2임계 비율 미만이면 부여되는 것인, 전파 방법. - 제2항에 있어서,
상기 에피소드를 수행하는 단계에서 상기 복수의 타임 스텝은, 특정 타임 스텝에서 결정된 상기 존의 크기에 따라 정의되는 로컬 존에서 상기 목적지 노드가 탐색될 때까지 반복되는 것인, 전파 방법. - 제1항에 있어서,
상기 노드 특성값은,
상기 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능, 네트워크 연결 상태, 대역폭, 전송 속도, 중복 데이터 정보 및 경계 노드 역할 수행 횟수 중 적어도 하나를 포함하는 것인, 전파 방법. - 제2항에 있어서,
상기 전파 경로를 결정하는 단계는,
상기 신뢰도 테이블에서 높은 신뢰도 값이 부여된 상기 존의 크기를 선택하고, 상기 존의 크기에 따라 정의되는 클러스터에 기초하여 상기 전파 경로를 결정하는 것인, 전파 방법. - 제1항에 있어서,
상기 네트워크는 프라이빗 블록체인(Private Blockchain) 네트워크이고, 상기 메시지는 상기 프라이빗 블록체인 네트워크에서 수행되는 스마트 컨트랙트와 연계된 데이터를 포함하는 것인, 전파 방법. - 신뢰도 기반의 메시지 전파 장치에 있어서,
네트워크에 포함된 복수의 노드 각각에 대한 노드 특성값을 포함하는 환경 정보를 획득하는 획득부;
강화 학습 기반 모델을 통해 상기 환경 정보를 고려하여 상기 복수의 노드 중 출발지 노드로부터 목적지 노드까지 메시지를 전파하는 에피소드를 수행하는 수행부; 및
상기 에피소드의 수행에 따라 생성되는 신뢰도 테이블에 기초하여 상기 출발지 노드로부터 상기 목적지 노드까지의 전파 경로를 결정하는 결정부,
를 포함하는, 전파 장치. - 제11항에 있어서,
상기 수행부는,
상기 강화 학습 기반 모델과 연계된 에이전트가 상기 출발지 노드로부터 상기 메시지를 전파할 존의 크기를 선택하는 행동(Action)을 수행하는 복수의 타임 스텝을 반복 수행하는 것인, 전파 장치. - 제12항에 있어서,
상기 수행부는,
상기 존의 크기에 대응하는 경계 노드 중 어느 하나의 경계 노드로 상기 메시지를 전파하는 전파부;
상기 강화 학습 기반 모델과 연계된 보상(Reward)을 부여하는 보상 부여부; 및
상기 보상(Reward)에 기초하여 상기 신뢰도 테이블을 갱신하는 신뢰도 테이블 갱신부,
를 포함하는 것이되,
상기 복수의 타임 스텝은,
상기 전파부, 상기 보상 부여부 및 신뢰도 테이블 갱신부에 의해 수행되는 것인, 전파 장치. - 제11항에 있어서,
상기 노드 특성값은,
상기 복수의 노드 각각의 식별자, 해당 노드가 저장한 스마트 컨트랙트의 수, 해당 노드가 발행한 스마트 컨트랙트의 수, 배터리 잔량, 성능, 네트워크 연결 상태, 대역폭, 전송 속도, 중복 데이터 정보 및 경계 노드 역할 수행 횟수 중 적어도 하나를 포함하는 것인, 전파 장치. - 제12항에 있어서,
상기 결정부는,
상기 신뢰도 테이블에서 높은 신뢰도 값이 부여된 상기 존의 크기를 선택하고, 상기 존의 크기에 따라 정의되는 클러스터에 기초하여 상기 전파 경로를 결정하는 것인, 전파 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210182861A KR102689109B1 (ko) | 2021-12-20 | 2021-12-20 | 신뢰도 기반의 메시지 전파 장치 및 방법 |
PCT/KR2022/018394 WO2023121001A1 (ko) | 2021-12-20 | 2022-11-21 | 신뢰도 기반의 메시지 전파 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210182861A KR102689109B1 (ko) | 2021-12-20 | 2021-12-20 | 신뢰도 기반의 메시지 전파 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230093873A true KR20230093873A (ko) | 2023-06-27 |
KR102689109B1 KR102689109B1 (ko) | 2024-07-25 |
Family
ID=86902879
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210182861A KR102689109B1 (ko) | 2021-12-20 | 2021-12-20 | 신뢰도 기반의 메시지 전파 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102689109B1 (ko) |
WO (1) | WO2023121001A1 (ko) |
Citations (4)
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 | 엔에이치엔 주식회사 | 블록체인 시스템 및 블록체인 시스템에서 복수의 노드들이 메시지를 검증 및 전파하는 방법 |
-
2021
- 2021-12-20 KR KR1020210182861A patent/KR102689109B1/ko active IP Right Grant
-
2022
- 2022-11-21 WO PCT/KR2022/018394 patent/WO2023121001A1/ko unknown
Patent Citations (4)
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)
Title |
---|
Jianmin Liu et al., QMR:Q-learning based Multi-objective optimization Routing protocol for Flying Ad Hoc Networks, Computer Communications, 2020.10.18.* * |
Also Published As
Publication number | Publication date |
---|---|
WO2023121001A1 (ko) | 2023-06-29 |
KR102689109B1 (ko) | 2024-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Qu et al. | Decentralized privacy using blockchain-enabled federated learning in fog computing | |
Qiu et al. | ROSE: Robustness strategy for scale-free wireless sensor networks | |
Mota et al. | Protocols, mobility models and tools in opportunistic networks: A survey | |
CN112189328B (zh) | 用于在节点的网络中传播数据分组的系统和方法 | |
He et al. | Deep reinforcement learning (DRL)-based resource management in software-defined and virtualized vehicular ad hoc networks | |
Singh et al. | An effective implementation of security based algorithmic approach in mobile adhoc networks | |
Lopez Millan et al. | A model of self‐avoiding random walks for searching complex networks | |
Sermpezis et al. | Delay analysis of epidemic schemes in sparse and dense heterogeneous contact networks | |
Wu et al. | Routing algorithm based on multi-community evolutionary game for VANET | |
Xia et al. | Formulating cost-effective data distribution strategies online for edge cache systems | |
CN116260821A (zh) | 基于深度强化学习和区块链的分布式并行计算卸载方法 | |
Lai et al. | Fairedge: A fairness-oriented task offloading scheme for iot applications in mobile cloudlet networks | |
Xu et al. | A routing algorithm for the sparse opportunistic networks based on node intimacy | |
Fanti et al. | Barracuda: the power of ℓ-polling in proof-of-stake blockchains | |
Happ et al. | On the impact of clustering for IoT analytics and message broker placement across cloud and edge | |
KR101509888B1 (ko) | 소셜 네트워크에서의 메시지 전파 방법 및 그 장치 | |
Lu et al. | Skeleton construction in mobile social networks: Algorithms and applications | |
KR20230093873A (ko) | 신뢰도 기반의 메시지 전파 장치 및 방법 | |
Tian et al. | A Bio‐Inspired QoS‐Oriented Handover Model in Heterogeneous Wireless Networks | |
Alghamdi | Enhanced QoS routing protocol using maximum flow technique | |
KR102596700B1 (ko) | 블록체인 네트워크에서 인터샤드 트랜잭션 시스템 및 방법 | |
Ramezan et al. | A Mining Strategy for Minimizing Waiting Time in Blockchains for Time‐Sensitive Applications | |
Liao et al. | Collaborative Filtering-based Fast Delay-aware algorithm for joint VNF deployment and migration in edge networks | |
Khalid et al. | Benchmarking and modeling of routing protocols for delay tolerant networks | |
Huang et al. | The evaluation and application of node influence in dynamic networks based on evolving communities |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |