KR102263461B1 - Method and apparatus for multicasting block data based on scalable peer to peer overlay structure - Google Patents

Method and apparatus for multicasting block data based on scalable peer to peer overlay structure Download PDF

Info

Publication number
KR102263461B1
KR102263461B1 KR1020200153474A KR20200153474A KR102263461B1 KR 102263461 B1 KR102263461 B1 KR 102263461B1 KR 1020200153474 A KR1020200153474 A KR 1020200153474A KR 20200153474 A KR20200153474 A KR 20200153474A KR 102263461 B1 KR102263461 B1 KR 102263461B1
Authority
KR
South Korea
Prior art keywords
mobile
peer
information
block
peers
Prior art date
Application number
KR1020200153474A
Other languages
Korean (ko)
Inventor
박기석
김령환
Original Assignee
동국대학교 경주캠퍼스 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 동국대학교 경주캠퍼스 산학협력단 filed Critical 동국대학교 경주캠퍼스 산학협력단
Priority to KR1020200153474A priority Critical patent/KR102263461B1/en
Application granted granted Critical
Publication of KR102263461B1 publication Critical patent/KR102263461B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1854Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/189Arrangements for providing special services to substations for broadcast or conference, e.g. multicast in combination with wireless systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1089Hierarchical topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/32
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • 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/026Route selection considering the moving speed of individual devices
    • 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/22Communication route or path selection, e.g. power-based or shortest path routing using selective relaying for reaching a BTS [Base Transceiver Station] or an access point

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The present invention relates to a block data multicasting method based on an expandable P2P (peer to peer) overlay structure, which is executed by a mobile edge clouding (MEC) server. The method includes the following steps of: receiving a request for a transaction proposal from a user terminal; transmitting the transaction proposal to at least one endorsing mobile peer; receiving guarantee information including smart contract execution information and signature information in accordance with the transaction proposal from the at least one endorsing mobile peer; generating a transaction based on the guarantee information; generating block information based on the transaction; spreading the block information to a plurality of mobile peers including the endorsing mobile peer in accordance with pre-constituted overlay structure; receiving notification information verified and committed with respect to the block information from the plurality of mobile peers; and transmitting response information indicating that the transaction proposal has been processed to the user terminal based on the notification information.

Description

확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법 및 장치{METHOD AND APPARATUS FOR MULTICASTING BLOCK DATA BASED ON SCALABLE PEER TO PEER OVERLAY STRUCTURE}Block data multicasting method and apparatus based on scalable P2P overlay structure {METHOD AND APPARATUS FOR MULTICASTING BLOCK DATA BASED ON SCALABLE PEER TO PEER OVERLAY STRUCTURE}

본 발명은 확장 가능한 P2P(peer to peer) 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법 및 장치에 관한 것으로, 더욱 상세하게는 MEC(mobile edge computing) 기술 및 D2D 기술을 활용하여 5G 네트워크 환경에서 실시간 서비스에 적합한 블록체인 플랫폼을 위한 P2P 오버레이 멀티캐스트 시스템에 관한 것이다.The present invention relates to a block data multicasting method and apparatus based on a scalable peer to peer (P2P) overlay structure, and more particularly, to a real-time service in a 5G network environment by utilizing MEC (mobile edge computing) technology and D2D technology. It relates to a peer-to-peer overlay multicast system for a suitable blockchain platform.

최근 블록체인은 비트코인과 같은 암호화폐의 기반으로 주목을 받고 있다. 이는 많은 사용자의 거래를 기록하는 데 사용되는 블록이라는 기록으로 구성된 분산형 디지털 원장(ledger)을 나타낸다. 블록체인 기술에는 투명성, 신뢰성, 효율성, 제어 및 보안과 같은 네 가지 주요 기능이 있으며, 원장의 모든 블록은 모든 후속 블록을 변경하지 않고 소급하여 변경할 수 없는 특징이 있다. 이러한 블록체인 기술을 활용하는 블록체인 플랫폼은 에너지, 의료, 보험, 운송 및 엔터테인먼트와 같은 많은 산업에서 자산을 등록하고, 거래를 검증하고, 상호 작용을 관리하고, 신뢰할 수 있고, 분산된 안전한 방식으로 데이터를 기록하기 위해 점점 더 많이 사용되고 있다. Recently, blockchain has been attracting attention as the basis for cryptocurrencies such as Bitcoin. It represents a decentralized digital ledger made up of records called blocks that are used to record the transactions of many users. Blockchain technology has four main functions: transparency, reliability, efficiency, control and security, and every block in the ledger is characterized by being immutable retroactively without altering all subsequent blocks. Blockchain platforms that leverage these blockchain technologies can register assets, validate transactions, manage interactions, and provide a trusted, decentralized and secure way for many industries such as energy, healthcare, insurance, transportation and entertainment. It is increasingly used to record data.

다만, 블록체인은 위와 같은 유망한 기능들이 있으나, 스토리지 및 처리량 등과 같은 확장성 문제로 인하여 실제 적용에 제약을 받고 있다. 특히, 트랜잭션 처리량(throughput), 즉 트랜잭션 확인 지연 시간은 초당 2,000 건의 트랜잭션을 처리할 수 있는 VISA 시스템과 같은 기존 중앙 집중식 서비스에 비해 블록체인은 만족스러운 수준에 도달하지 못했다. 예를 들어, 블록체인에서 가십 프로토콜(gossip protocol)은 새로 생성된 블록을 모든 피어(peer)에 전파하기 위해 널리 채택되었다. 다만, 가십 프로토콜의 무작위 선택 메커니즘은 데이터 중복을 자주 발생시켜 결과적으로 상당한 블록 전파 지연을 초래하는 문제점이 있다. 여기서, 블록 전파 지연은 블록체인 네트워크의 트랜잭션 처리량과 밀접하게 관련된 가장 중요한 요소 중 하나이다. 이러한 블록 전파 지연은 피어들의 원장 정보 간에 불일치로 이어질 수 있으며, 결과적으로 오래된(stale) 블록 및 블록체인 포크(forks)의 높은 비율을 초래한다. 또한, 이 경우 이중 지불 문제가 발생할 수 있다. 따라서, 트랜잭션 처리량은 적대적인(adversarial) 사용자가 이중 지불 공격을 시도하지 못하도록 제한된다. 최근에는 트랜잭션 처리량 측면에서 확장성 문제를 극복하기 위해 여러 연구가 수행되고 있다.However, although blockchain has the above promising functions, its practical application is limited due to scalability problems such as storage and throughput. In particular, the transaction throughput, that is, the transaction confirmation latency, has not reached a satisfactory level compared to existing centralized services such as the VISA system, which can process 2,000 transactions per second. For example, in blockchain, the gossip protocol has been widely adopted to propagate newly created blocks to all peers. However, the random selection mechanism of the gossip protocol has a problem in that data duplication frequently occurs, resulting in significant block propagation delay. Here, block propagation delay is one of the most important factors closely related to the transaction throughput of a blockchain network. This block propagation delay can lead to inconsistencies between peers' ledger information, resulting in a high rate of stale blocks and blockchain forks. Also, in this case, a double payment problem may arise. Thus, transaction throughput is limited to prevent an adversarial user from attempting a double-spending attack. Recently, several studies have been conducted to overcome the scalability problem in terms of transaction throughput.

또한, 최근 4G 네트워크보다 약 20배 빠른 5G 네트워크의 출현으로 모바일 엣지 컴퓨팅(MEC: mobile edge computing)은 커넥티드 카(connected car) 및 자율 주행과 같은 실시간 서비스에 대한 정교한 요구 사항을 충족할 수 있는 잠재적 솔루션으로 상당한 주목을 받고 있다. 풍부한 컴퓨팅, 스토리지 및 네트워킹 리소스를 갖춘 MEC 서버는 무선 액세스 네트워크(RAN: radio access network)의 가장자리에 위치하여 지능적이고 지연에 민감한 상황 인식 응용 프로그램을 개발할 수 있다. 최근 몇 년 동안 블록체인 플랫폼과 5G 네트워크 인프라의 통합은 유연하고 안전한 5G 엣지 서비스를 위한 잠재적 솔루션으로 엄청난 관심을 끌고 있으며, 다양한 연구가 진행되고 있다.In addition, with the recent advent of 5G networks, which are about 20 times faster than 4G networks, mobile edge computing (MEC) is a technology that can meet sophisticated requirements for real-time services such as connected cars and autonomous driving. It is receiving considerable attention as a potential solution. With abundant computing, storage and networking resources, MEC servers can be located at the edge of a radio access network (RAN) to develop intelligent, latency-sensitive, context-aware applications. In recent years, the integration of blockchain platforms and 5G network infrastructure has attracted tremendous attention as a potential solution for flexible and secure 5G edge services, and various studies are being conducted.

다만, 과거 진행된 연구에 따르면 블록체인과 5G 간의 상호 이익과 보완 관계를 활용하여 새로운 비즈니스 모델이 만들어 질 수 있으나, 블록체인 네트워크의 느린 트랜잭션 처리 속도는 실시간 서비스에 적용될 때 여전히 큰 도전 과제이다. 작업 증명(PoW: proof of work), 지분 증명(PoS: proof of stake) 및 직접 비순환 그래프(DAG: directed acyclic graph)와 같은 많은 합의 메커니즘은 상당한 지연을 유발하므로 안정성 및 투명성과 같은 뛰어난 기능에도 불구하고 블록체인 플랫폼을 비실용적으로 만드는 문제점이 있다. 따라서, 현재 블록체인 고유의 확장성 문제를 극복하면서 실시간 서비스에 적합한 새로운 블록체인 아키텍처를 설계하는 것이 주요하고 시급한 문제이다.However, according to past studies, new business models can be created by utilizing the mutual benefits and complementary relationships between blockchain and 5G, but the slow transaction processing speed of blockchain networks is still a big challenge when applied to real-time services. Many consensus mechanisms, such as proof of work (PoW), proof of stake (PoS), and directed acyclic graph (DAG), cause significant delays, so despite great features such as stability and transparency And there is a problem that makes the blockchain platform impractical. Therefore, it is a major and urgent issue to design a new blockchain architecture suitable for real-time services while overcoming the inherent scalability problems of the current blockchain.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법을 제공하는데 있다.An object of the present invention to solve the above problems is to provide a block data multicasting method based on an expandable P2P overlay structure.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 장치를 제공하는데 있다.Another object of the present invention to solve the above problems is to provide a block data multicasting apparatus based on an expandable P2P overlay structure.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 MEC(mobile edge clouding) 서버에서 수행되는 확장가능한 P2P(peer to peer) 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법은 사용자 단말로부터 트랜잭션 제안에 대한 요청을 수신하는 단계, 상기 트랜잭션 제안을 적어도 하나의 인돌싱(endorsing) 모바일 피어로 송신하는 단계, 상기 적어도 하나의 인돌싱 모바일 피어로부터 상기 트랜잭션 제안에 따른 스마트 컨트랙트 실행 정보 및 서명 정보를 포함하는 보증 정보를 수신하는 단계, 상기 보증 정보를 기반으로 트랜잭션을 생성하는 단계, 상기 트랜잭션을 기반으로 블록 정보를 생성하는 단계, 미리 구성된 오버레이 구조에 따라 상기 블록 정보를 상기 인돌싱 모바일 피어를 포함하는 복수의 모바일 피어들로 전파하는 단계, 상기 복수의 모바일 피어들로부터 상기 블록 정보에 대한 검증 및 커밋이 수행된 알림 정보를 수신하는 단계 및 상기 알림 정보를 기반으로 상기 사용자 단말에게 상기 트랜잭션 제안이 처리되었다는 응답 정보를 송신하는 단계를 포함할 수 있다.A block data multicasting method based on a scalable peer to peer (P2P) overlay structure performed in a mobile edge clouding (MEC) server according to an embodiment of the present invention for achieving the above object is a request for a transaction proposal from a user terminal. receiving, sending the transaction proposal to at least one endorsing mobile peer; guarantee information including smart contract execution information and signature information according to the transaction proposal from the at least one indoling mobile peer receiving, generating a transaction based on the guarantee information, generating block information based on the transaction, and transmitting the block information according to a pre-configured overlay structure to a plurality of mobiles including the mobile peer. Propagating to peers, receiving notification information on which verification and committing of the block information have been performed from the plurality of mobile peers, and response information indicating that the transaction proposal has been processed to the user terminal based on the notification information may include the step of transmitting

여기서, 상기 오버레이 구조는 피어 선택 테이블을 기반으로 구성되고, 상기 피어 선택 테이블은 상기 복수의 모바일 피어들 각각으로부터 네트워크 상태 정보 및 인접한 다른 모바일 피어에 대한 정보를 수신하여 업데이트될 수 있다.Here, the overlay structure is configured based on a peer selection table, and the peer selection table may be updated by receiving network state information and information on other adjacent mobile peers from each of the plurality of mobile peers.

여기서, 상기 오버레이 구조는 상기 복수의 모바일 피어들 각각의 블록 전송 지연 시간 정보를 기반으로 구성되고, 상기 블록 전송 지연 시간 정보는 상기 네트워크 상태 정보에 포함될 수 있다.Here, the overlay structure may be configured based on block transmission delay time information of each of the plurality of mobile peers, and the block transmission delay time information may be included in the network state information.

여기서, 상기 복수의 모바일 피어들은 셀롤러 네트워크 피어 그룹에 포함되는 적어도 일부의 제1 모바일 피어 및 D2D(device to device) 네트워크 피어 그룹에 포함되는 나머지 제2 모바일 피어를 포함하고, 상기 제1 모바일 피어는 셀롤러 네트워크를 통해 상기 MEC 서버로부터 상기 블록 정보를 수신하고, 상기 제2 모바일 피어는 D2D 네트워크를 통해 상기 적어도 일부의 제1 모바일 피어 중 인접한 모바일 피어로부터 상기 블록 정보를 수신할 수 있다.Here, the plurality of mobile peers include at least some first mobile peers included in a cellular network peer group and the remaining second mobile peers included in a device to device (D2D) network peer group, and the first mobile peers may receive the block information from the MEC server through a cellular network, and the second mobile peer may receive the block information from a neighboring mobile peer among the at least some first mobile peers through a D2D network.

여기서, 상기 블록 지연 시간 정보는 상기 제1 모바일 피어의 경우, 블록 정보의 크기 및 상기 MEC 서버로부터 상기 제1 모바일 피어로의 데이터 속도를 기반으로 도출되고, 상기 제2 모바일 피어의 경우, 블록 정보의 크기 및 상기 인접한 모바일 피어로부터 상기 제2 모바일 피어로의 데이터 속도를 기반으로 도출될 수 있다.Here, in the case of the first mobile peer, the block delay time information is derived based on the size of the block information and the data rate from the MEC server to the first mobile peer, and in the case of the second mobile peer, block information It can be derived based on the size of , and the data rate from the neighboring mobile peer to the second mobile peer.

상기 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 확장가능한 P2P(peer to peer) 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법을 수행하는 MEC(mobile edge clouding) 서버는 프로세서(processor) 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리를 포함하고, 상기 적어도 하나의 명령은 사용자 단말로부터 트랜잭션 제안에 대한 요청을 수신하도록 실행되고, 상기 트랜잭션 제안을 적어도 하나의 인돌싱(endorsing) 모바일 피어로 송신하도록 실행되고, 상기 적어도 하나의 인돌싱 모바일 피어로부터 상기 트랜잭션 제안에 따른 스마트 컨트랙트 실행 정보 및 서명 정보를 포함하는 보증 정보를 수신하도록 실행되고, 상기 보증 정보를 기반으로 트랜잭션을 생성하도록 실행되고, 상기 트랜잭션을 기반으로 블록 정보를 생성하도록 실행되고, 미리 구성된 오버레이 구조에 따라 상기 블록 정보를 상기 인돌싱 모바일 피어를 포함하는 복수의 모바일 피어들로 전파하도록 실행되고, 상기 복수의 모바일 피어들로부터 상기 블록 정보에 대한 검증 및 커밋이 수행된 알림 정보를 수신하도록 실행되고, 상기 알림 정보를 기반으로 상기 사용자 단말에게 상기 트랜잭션 제안이 처리되었다는 응답 정보를 송신하도록 실행될 수 있다.A mobile edge clouding (MEC) server performing a block data multicasting method based on an extensible peer to peer (P2P) overlay structure according to an embodiment of the present invention for achieving the above other object is a processor and the processor at least one command executed through a memory stored therein, wherein the at least one command is executed to receive a request for a transaction proposal from a user terminal, and transmits the transaction proposal to at least one endorsing mobile peer and execute to transmit, receive from the at least one indoling mobile peer, endorsement information including smart contract execution information and signature information according to the transaction proposal, and generate a transaction based on the endorsement information; and to generate block information based on the transaction, and to propagate the block information to a plurality of mobile peers including the indoling mobile peer according to a preconfigured overlay structure, from the plurality of mobile peers It may be executed to receive notification information on which verification and commit of block information have been performed, and to transmit response information indicating that the transaction proposal has been processed to the user terminal based on the notification information.

여기서, 상기 오버레이 구조는 피어 선택 테이블을 기반으로 구성되고, 상기 피어 선택 테이블은 상기 복수의 모바일 피어들 각각으로부터 네트워크 상태 정보 및 인접한 다른 모바일 피어에 대한 정보를 수신하여 업데이트될 수 있다.Here, the overlay structure is configured based on a peer selection table, and the peer selection table may be updated by receiving network state information and information on other adjacent mobile peers from each of the plurality of mobile peers.

여기서, 상기 오버레이 구조는 상기 복수의 모바일 피어들 각각의 블록 전송 지연 시간 정보를 기반으로 구성되고, 상기 블록 전송 지연 시간 정보는 상기 네트워크 상태 정보에 포함될 수 있다.Here, the overlay structure may be configured based on block transmission delay time information of each of the plurality of mobile peers, and the block transmission delay time information may be included in the network state information.

여기서, 상기 복수의 모바일 피어들은 셀롤러 네트워크 피어 그룹에 포함되는 적어도 일부의 제1 모바일 피어 및 D2D(device to device) 네트워크 피어 그룹에 포함되는 나머지 제2 모바일 피어를 포함하고, 상기 제1 모바일 피어는 셀롤러 네트워크를 통해 상기 MEC 서버로부터 상기 블록 정보를 수신하고, 상기 제2 모바일 피어는 D2D 네트워크를 통해 상기 적어도 일부의 제1 모바일 피어 중 인접한 모바일 피어로부터 상기 블록 정보를 수신할 수 있다.Here, the plurality of mobile peers include at least some first mobile peers included in a cellular network peer group and the remaining second mobile peers included in a device to device (D2D) network peer group, and the first mobile peers may receive the block information from the MEC server through a cellular network, and the second mobile peer may receive the block information from a neighboring mobile peer among the at least some first mobile peers through a D2D network.

여기서, 상기 블록 지연 시간 정보는 상기 제1 모바일 피어의 경우, 블록 정보의 크기 및 상기 MEC 서버로부터 상기 제1 모바일 피어로의 데이터 속도를 기반으로 도출되고, 상기 제2 모바일 피어의 경우, 블록 정보의 크기 및 상기 인접한 모바일 피어로부터 상기 제2 모바일 피어로의 데이터 속도를 기반으로 도출될 수 있다.Here, in the case of the first mobile peer, the block delay time information is derived based on the size of the block information and the data rate from the MEC server to the first mobile peer, and in the case of the second mobile peer, block information It can be derived based on the size of , and the data rate from the neighboring mobile peer to the second mobile peer.

본 발명에 따르면, 블록체인 플랫폼을 MEC(mobile edge computing) 아키텍처에 통합하여 블록 데이터의 전파 지연을 완화하고 트랜잭션 처리량을 개선할 수 있다.According to the present invention, by integrating a blockchain platform into a mobile edge computing (MEC) architecture, it is possible to alleviate the propagation delay of block data and improve the transaction throughput.

본 발명에 따르면, 합의 및 보증과 같은 컴퓨팅 및 대역폭 집약적인 작업이 MEC 서버로 오프로드되어 블록 전파 지연을 줄일뿐만 아니라 모바일 피어의 대규모 리소스 소비 작업의 부담도 완화할 수 있다.According to the present invention, compute- and bandwidth-intensive tasks such as consensus and assurance are offloaded to the MEC server, thereby reducing block propagation delay as well as easing the burden of large-scale resource consumption tasks on mobile peers.

본 발명에 따르면, 5G 실시간 서비스에 적합한 블록체인 플랫폼용 P2P(peer to peer) 오버레이 구조를 구성하여 모든 모바일 피어에 대한 블록 전파를 신속하게 완료할 수 있다.According to the present invention, it is possible to quickly complete block propagation to all mobile peers by configuring a peer-to-peer (P2P) overlay structure for a blockchain platform suitable for 5G real-time service.

본 발명에 따르면, 셀룰러 네트워크 상태가 좋지 않은 모바일 피어도 인접 모바일 피어와 D2D(device to device) 연결을 설정하여 블록 데이터를 수신할 수 있다.According to the present invention, even a mobile peer having a poor cellular network condition can receive block data by establishing a device to device (D2D) connection with a neighboring mobile peer.

본 발명에 따르면, 블록체인 플랫폼과 호환되는 새로운 5G 블록체인 아키텍처를 설계하여 MEC 및 모바일 장치에서 하나의 컨테이너로 작동하며, 시간 복잡성이 매우 낮은 모든 컨테이너는 블록체인 플랫폼의 다른 컨테이너와 밀접하게 상호 작용할 수 있다.According to the present invention, we design a new 5G blockchain architecture that is compatible with the blockchain platform, operating as one container on MEC and mobile devices, all containers with very low time complexity will interact closely with other containers on the blockchain platform. can

도 1은 하이퍼레저-패브릭 블록체인의 트랜잭션 플로우를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 D2D 지원 확장 가능한 P2P 멀티캐스트 시스템의 구조를 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 컨테이너들 간의 인터렉션 절차를 나타낸 플로우 차트이다.
도 4 내지 도 7은 본 발명의 일 실시예에 따른 4가지 블록 전파 시나리오들을 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 블록 전파를 위한 오버레이 멀티캐스트 구조를 도면이다.
도 9는 본 발명의 일 실시예에 따른 모바일 피어 그룹핑 알고리즘을 나타낸 도면이다.
도 10은 본 발명의 일 실시예에 따른 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 장치의 블록 구성도이다.
도 11은 본 발명의 일 실시예에 다른 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법의 순서도이다.
1 is a diagram showing a transaction flow of a hyperledger-fabric blockchain.
2 is a diagram illustrating the structure of a D2D support scalable P2P multicast system according to an embodiment of the present invention.
3 is a flowchart illustrating an interaction procedure between containers according to an embodiment of the present invention.
4 to 7 are diagrams illustrating four block propagation scenarios according to an embodiment of the present invention.
8 is a diagram illustrating an overlay multicast structure for block propagation according to an embodiment of the present invention.
9 is a diagram illustrating a mobile peer grouping algorithm according to an embodiment of the present invention.
10 is a block diagram of a block data multicasting apparatus based on a scalable P2P overlay structure according to an embodiment of the present invention.
11 is a flowchart of a block data multicasting method based on a scalable P2P overlay structure according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention. In describing each figure, like reference numerals have been used for like elements.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component. The term “and/or” includes a combination of a plurality of related listed items or any of a plurality of related listed items.

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

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings. In describing the present invention, in order to facilitate the overall understanding, the same reference numerals are used for the same components in the drawings, and duplicate descriptions of the same components are omitted.

본 발명의 일 실시예는 5G 실시간 서비스에 적합한 블록체인 플랫폼을 위한 확장 가능한 P2P(peer to peer) 오버레이(overlay) 멀티 캐스트(multi-cast) 시스템을 제안한다. 일 실시예에 따른 시스템에서 MEC(mobile edge computing)는 풍부한 컴퓨팅 및 스토리지 자원을 활용하여 트랜잭션 제안(transaction proposal)을 신속하게 처리하고 블록 데이터를 전파하는 데 활용될 수 있다. 또한, 일 실시예에 따른 시스템은 블록체인 플랫폼 중 하나인 하이퍼레저-패브릭(hyperledger-fabric) 블록체인 플랫폼을 기반으로 실시간 서비스에 더 적합한 빠르고 가벼운 합의 알고리즘을 사용할 수 있다.An embodiment of the present invention proposes a scalable peer to peer (P2P) overlay multi-cast system for a blockchain platform suitable for 5G real-time service. In the system according to an embodiment, mobile edge computing (MEC) may be utilized to rapidly process a transaction proposal and propagate block data by utilizing abundant computing and storage resources. In addition, the system according to an embodiment may use a fast and lightweight consensus algorithm that is more suitable for real-time services based on a hyperledger-fabric blockchain platform, which is one of the blockchain platforms.

본 발명의 일 실시예에 따른 하이퍼레저-패브릭 블록체인 플랫폼과 관련된 설명은 도 1과 함께 후술하겠으며, D2D 지원 확장 가능한 P2P 오버레이 멀티 캐스트 시스템과 관련된 설명은 도 2 내지 9와 함께 후술하겠다. A description related to a hyperledger-fabric blockchain platform according to an embodiment of the present invention will be described later with FIG. 1, and a description related to a D2D support scalable P2P overlay multicast system will be described later with FIGS. 2 to 9.

도 1은 하이퍼레저-패브릭 블록체인의 트랜잭션 플로우를 나타낸 도면이다.1 is a diagram showing a transaction flow of a hyperledger-fabric blockchain.

하이퍼레저-패브릭(hyperledger-fabric)은 리눅스 재단에서 설립된 오픈 소스 엔터프라이즈급 라이센스 분산 원장 플랫폼이다. 패브릭은 제조, 은행, 물류, 의료 및 인적 자원을 포함한 광범위한 산업 애플리케이션에 대한 혁신, 다용성 및 최적화를 가능하게 하는 모듈화되고 구성 가능한 아키텍처를 가질 수 있다. 패브릭에서 스마트 계약이라고 하는 체인코드(chaincode)는 제한된 도메인 특정 언어가 아닌 범용 프로그래밍 언어를 사용하여 작성할 수 있다. 패브릭은 블록체인 네트워크 참여자가 서로를 알고 있는 허가형(permissioned) 블록체인 플랫폼 클래스로 분류될 수 있다. 따라서, 패브릭 블록체인 네트워크는 참가자 간의 신뢰를 기반으로 구축된 거버넌스(governance) 모델 하에서 작동할 수 있다. 모듈식 아키텍처인 패브릭은 플러그 형 합의를 지원하여 블록체인 네트워크에서 모든 원장을 효율적으로 동기화할 수 있다. 따라서, 합의 프로토콜은 산업용 애플리케이션에 맞게 커스터마이징될 수 있다. 일반적으로 패브릭은 허가형 블록체인 참여자 간의 신뢰를 기반으로 채굴이 필요없는 보다 실현 가능한 합의 프로토콜을 활용할 수 있다. 대부분의 블록체인 플랫폼에서 채택되는 오더-실행(order-execute) 아키텍처와 달리, 패브릭은 트랜잭션의 실행-오더-검증(execute-order-validate) 단계를 따라 복원력(resiliency), 유연성(flexibility), 확장성(scalability), 성능(performance) 및 기밀성(confidentiality) 문제를 해결할 수 있다. Hyperledger-fabric is an open-source, enterprise-grade licensed distributed ledger platform founded by the Linux Foundation. Fabrics can have a modular and configurable architecture that enables innovation, versatility and optimization for a wide range of industrial applications including manufacturing, banking, logistics, healthcare and human resources. Chaincode, called smart contracts in Fabric, can be written using a general-purpose programming language rather than a restricted domain-specific language. Fabric can be classified as a class of permissioned blockchain platforms where blockchain network participants know each other. Thus, the Fabric blockchain network can operate under a governance model built on trust between participants. As a modular architecture, Fabric supports pluggable consensus to efficiently synchronize all ledgers on a blockchain network. Thus, the consensus protocol can be customized for industrial applications. In general, Fabric can utilize a more feasible consensus protocol that does not require mining based on trust between permissioned blockchain participants. Unlike the order-execute architecture adopted by most blockchain platforms, Fabric follows the execute-order-validate phase of a transaction for resiliency, flexibility, and scalability. It can solve the problems of scalability, performance and confidentiality.

도 1을 참조하면, 실행(execute) 단계에서는 스마트 계약을 실행하고, 정확성을 보증하기 위해 클라이언트에 대한 트랜잭션 제안을 인돌싱 피어(endorsing peer)라고 하는 일부 피어에게 보낼 수 있으며, 스마트 계약의 실행 결과 및 인돌싱 피어의 서명으로 하나의 트랜잭션이 생성될 수 있다. 오더(order) 단계에서는 거래가 선착순으로 오더되어 블록으로 패키징될 수 있다. 검증(validate) 단계에서는 블록 내의 모든 트랜잭션이 원장에 커밋(commit)되기 전에 인돌싱 피어에 의해 일관되게 보증되는 것을 보장하기 위해 검증될 수 있다. 검증에 실패한 트랜잭션은 원장에 커밋되지 않을 수 있다. 여기서, 커밋은 하나의 트랜잭션에 포함되는 동작이 모두 실행되고, 이에 따른 데이터베이스의 갱신 내용이 작업 영역(기억 장치)에 기록되어 트랜잭션의 적용이 완료되었다고 판단되는 시점에서 그 종료를 요구하는 동작을 나타낼 수 있다.Referring to FIG. 1 , in the execute phase, the smart contract may be executed, and a transaction proposal to the client may be sent to some peers called endorsing peers to ensure accuracy, and the execution result of the smart contract And one transaction can be created with the signature of the indoling peer. In the order stage, transactions may be ordered on a first-come-first-served basis and packaged into blocks. In the validate phase, all transactions in a block can be validated to ensure that they are consistently guaranteed by the indoling peer before being committed to the ledger. Transactions that fail validation may not be committed to the ledger. Here, commit refers to an operation requesting the end when it is determined that all operations included in one transaction are executed, the database update is recorded in the work area (storage device), and the application of the transaction is determined to be completed. can

패브릭 블록체인 네트워크는 여러 개의 노드로 구성될 수 있으며, 각 노드는 역할에 따라 다음과 같이 4가지로 분류될 수 있다.Fabric blockchain network can consist of multiple nodes, and each node can be classified into four types according to their role.

1. 클라이언트 소프트웨어 개발 키트(SDK: client software development kit): SDK는 클라이언트에게 스마트 계약 및 원장에 대한 액세스를 제공하는 일종의 웹 서버로, SDK를 사용하면 애플리케이션이 스마트 계약을 호출하여 트랜잭션을 생성하고, 오더러(orderer)에게 트랜잭션을 제출하고, 실행-오더-검증 단계가 완료되면 알림을 받을 수 있다.1. Client software development kit (SDK): SDK is a type of web server that provides clients with access to smart contracts and ledgers. With SDK, applications call smart contracts to create transactions, You can submit a transaction to the orderer and be notified when the run-order-verify phase is complete.

2. 패브릭 인증 기관(CA: fabric certificate authority): CA는 블록 체인 네트워크에 참여하는 모든 노드에 X.509 인증서를 발급할 수 있다. 여기서, 인증서는 트랜잭션에 서명하고 트랜잭션 결과를 보증하는 데 사용될 수 있다.2. Fabric certificate authority (CA): A CA can issue X.509 certificates to all nodes participating in the blockchain network. Here, a certificate can be used to sign a transaction and vouch for the outcome of the transaction.

3. 오더러(orderer): 오더러는 모든 거래의 순서를 설정할 수 있다. 순서를 결정하기 위해 클러스터를 형성하여 서로 통신할 수 있으며, 실행 및 유효성 검사 단계에 관여하지 않을 수 있다.3. Orderer: The orderer can set the order of all transactions. They may communicate with each other by forming clusters to determine the order, and may not be involved in the execution and validation phases.

4. 피어(peer): 피어는 역할에 따라 커밋 피어(committing peer), 리더 피어(leader peer), 인돌싱 피어(endorsing peer) 등 여러 범주로 분류될 수 있다. 모든 피어는 블록을 검증하고, 원장에 커밋하는 커밋 피어 역할을 할 수 있다. 리더 피어는 오더러에서 다른 커밋 피어로 블록을 배포하는 유일한 노드일 수 있다. 인돌싱 피어는 스마트 계약을 호스팅하고, 실행 결과를 보증하는 노드일 수 있다. 실제 적용에서는 소수의 피어만이 블록체인 네트워크의 워크로드(workload)를 고려하여 인돌싱 피어 역할을 수행할 수 있다.4. Peer: A peer can be classified into several categories, such as a committing peer, a leader peer, and an endorsing peer, according to roles. Any peer can act as a commit peer that validates blocks and commits them to the ledger. The leader peer may be the only node distributing blocks from the orderer to other commit peers. An indoling peer may be a node that hosts a smart contract and guarantees execution results. In actual application, only a small number of peers can perform the role of indoling peers in consideration of the workload of the blockchain network.

도 2는 본 발명의 일 실시예에 따른 D2D 지원 확장 가능한 P2P 멀티캐스트 시스템의 구조를 나타낸 도면이다.2 is a diagram illustrating the structure of a D2D support scalable P2P multicast system according to an embodiment of the present invention.

일 실시예에 따른 시스템은 전체 블록 전파 지연이 최소화되도록 오버레이 구조를 구성하여 높은 트랜잭션 처리량의 블록체인 플랫폼을 제공하는 것이다. 다만, 리소소가 제한적인 모바일 장치는 계산-집약적인(compute-intensive) 합의 작업을 수행하는데 어려움이 있을 수 있다. 따라서, 복잡한 채굴 프로세스를 가지는 기존의 블록체인 플랫폼은 실시간 5G 서비스에 적절하지 않을 수 있고, 더욱 빠르고 더욱 확장성이 높은 합의를 수행하는 하이퍼레저-패브릭과 같은 허가형 블록체인 플랫봄을 적용하는 것이 타당할 수 있다.A system according to an embodiment is to provide a blockchain platform with high transaction throughput by configuring an overlay structure so that the overall block propagation delay is minimized. However, a mobile device having limited resources may have difficulty in performing a computation-intensive consensus operation. Therefore, existing blockchain platforms with complex mining processes may not be suitable for real-time 5G services, and applying permissioned blockchain flatbom such as Hyperledger-Fabric, which performs faster and more scalable consensus, is not recommended. can be justified

일 실시예에 따른 시스템은 동일한 셀(cell) 커버리지에 위치한 공통 관심사를 가진 모바일 노드가 온도, 습도 및 공기질과 같은 데이터를 수집하고 공유하는 크라우드-센싱(crowd-sensing) 및 크라우드-소싱(crowd-sourcing)과 같은 서비스 환경을 고려할 수 있다. 이러한 환경에서, 인접한 모바일 노드들은 D2D(device to device) 통신을 통해 서로 컨택할 수 있다.A system according to an embodiment is a crowd-sensing and crowd-sourced system in which mobile nodes with a common interest located in the same cell coverage collect and share data such as temperature, humidity and air quality. sourcing) can be considered. In this environment, adjacent mobile nodes may contact each other through device to device (D2D) communication.

일 실시예에 따른 시스템은 도 2와 같은 구조를 가질 수 있다. 도 2를 참조하면, 일 실시예에 따른 시스템에서 모바일 노드들은 2가지 유형으로 분류될 수 있다. 여기서, 2가지 유형은 모바일 피어 및 모바일 사용자일 수 있으며, 모바일 사용자는 단지 블록체인 기반 5G 서비스를 즐길 수 있으나, 모바일 피어는 자체 원장으로 블록체인 네트워크를 검증할 책임이 있을 수 있다.A system according to an embodiment may have a structure as shown in FIG. 2 . Referring to FIG. 2 , in the system according to an embodiment, mobile nodes may be classified into two types. Here, the two types can be mobile peers and mobile users, where mobile users can only enjoy blockchain-based 5G services, but mobile peers can be responsible for validating the blockchain network with their own ledger.

일 실시예에 따른 오버레이 멀티캐스트 시스템은 MEC 및 듀얼 인터페이스를 가진 모바일 피어들로 구성될 수 있다. 여기서, 듀얼 인터페이스는 5G 무선 인터페이스 및 WiFi 인터페이스를 포함할 수 있다. 2개의 인터페이스를 가진 모바일 피어는 gNB 또는 인접한 모바일 피어들로부터 블록 데이터를 수신할 수 있다. 여기서, gNB는 5G 기지국을 나타낼 수 있다.The overlay multicast system according to an embodiment may be configured with MEC and mobile peers having dual interfaces. Here, the dual interface may include a 5G wireless interface and a WiFi interface. A mobile peer with two interfaces can receive block data from the gNB or neighboring mobile peers. Here, gNB may represent a 5G base station.

일 실시예에 따른 시스템에서 패브릭 블록체인 플랫폼의 계산-집약적인 기능들은 블록체인 네트워크의 유연성 및 확장성을 고려하여 MEC으로 오프로드(offload)될 수 있다. 다만, 검증(validation) 및 보증(endorsement)과 같은 모니터링 작업은 모바일 피어에게 분배되어 MEC을 적극적으로 감사(audit)하고 블록체인 네트워크의 신뢰성을 향상시킬 수 있다. In the system according to an embodiment, computation-intensive functions of the fabric blockchain platform may be offloaded to the MEC in consideration of the flexibility and scalability of the blockchain network. However, monitoring tasks such as validation and endorsement can be distributed to mobile peers to actively audit the MEC and improve the reliability of the blockchain network.

예를 들어, MEC은 5개의 메인 컨테이너들을 포함할 수 있다. 여기서, 5개의 메인 컨테이너들은 SDN(software defined network) 컨테이너 및 패브릭에 관련된 4개의 컨테이너들(패브릭 CA, 오더러, 리더 피어 및 클라이언트 SDK)을 포함할 수 있다. SDN 서버 컨테이너는 셀롤러 및 모바일 피어들로부터 D2D 네트워크 상태와 같은 네트워크 정보를 획득할 수 있다. 이러한 정보들을 기반으로 SDN 서버는 모바일 피어들로 구성되는 네트워크 토폴로지를 인식할 수 있다. 네트워크 토폴로지를 통해 SDN 서버의 모듈 중 하나인 오버레이 구성부(overlay constructor)는 최단 시간에 블록 전파를 완료할 수 있는 최적의 경로를 계산하고, 각 모바일 피어에 이웃한 피어들(neighboring peers)의 정보를 송신할 수 있다. For example, the MEC may include 5 main containers. Here, the five main containers may include a software defined network (SDN) container and four containers related to the fabric (fabric CA, orderer, leader peer, and client SDK). The SDN server container may obtain network information such as D2D network status from cellular and mobile peers. Based on this information, the SDN server can recognize the network topology composed of mobile peers. Through the network topology, the overlay constructor, which is one of the modules of the SDN server, calculates the optimal path to complete block propagation in the shortest time, and provides information of neighboring peers to each mobile peer. can be sent.

예를 들어, 모바일 피어들 각각은 2개의 메인 컨테이너들을 포함할 수 있다. 여기서, 2개의 컨테이너들은 SDN 클라이언트 및 패브릭에 관련된 피어 컨테이너를 포함할 수 있다. SDN 클라이언트 컨테이너는 네트워크 관리자(network manager), 포워딩 정보 수신기(forwording information receiver) 및 통신(communication)을 포함하는 3개의 모듈들로 구성될 수 있다. 네트워크 관리자 모듈은 CSI(channel state information) 신호를 기반으로 셀룰러 채널 상태를 주기적으로 기록할 수 있다. 또한, 직접 통신을 통해 컨택할 수 있는 모바일 피어가 근처에 존재하는 경우, 피어 식별(peer identification) 및 네트워크 신호 강도와 같은 정보(근처 모바일 피어의 정보)가 MEC의 SDN 서버 컨테이너로 송신될 수 있다. 일 실시예에 따른 시스템에서 SDN 서버 및 클라이언트 간의 네트For example, each of the mobile peers may include two main containers. Here, the two containers may include an SDN client and a peer container related to the fabric. The SDN client container may be composed of three modules including a network manager, a forwarding information receiver, and a communication. The network manager module may periodically record a cellular channel state based on a CSI (channel state information) signal. In addition, if a mobile peer that can be contacted through direct communication exists nearby, information such as peer identification and network signal strength (information of nearby mobile peers) can be sent to the SDN server container of the MEC. . A network between an SDN server and a client in a system according to an embodiment

워킹은 GRPC(google remote procedure call) 기반 통신을 통해 이루어질 수 있다. GRPC 통신에서 전송되는 모든 데이터는 TLS(transport layer security)를 기반으로 암호화될 수 있다. 포워딩 정보 수신기 모듈은 블록 전파를 위해 이웃한 피어들의 정보를 SDN 서버 컨테이너로부터 주기적으로 획득할 수 있다. 피어 컨테이너는 피어 선택 테이블(peer selection table)에 이웃한 피어들의 위와 같은 정보들을 기록할 수 있다. 이후, 블록 데이터가 수신될 때마다 테이블을 기반으로 이웃한 피어들로 블록 데이터가 전달될 수 있다.Working may be performed through google remote procedure call (GRPC)-based communication. All data transmitted in GRPC communication may be encrypted based on transport layer security (TLS). The forwarding information receiver module may periodically obtain information of neighboring peers from the SDN server container for block propagation. The peer container may record the above information of neighboring peers in a peer selection table. Thereafter, whenever block data is received, block data may be delivered to neighboring peers based on the table.

도 3은 본 발명의 일 실시예에 따른 컨테이너들 간의 인터렉션 절차를 나타낸 플로우 차트이다.3 is a flowchart illustrating an interaction procedure between containers according to an embodiment of the present invention.

도 3을 참조하면, 일 실시예에 따른 전반적인 작업 절차는 동시에 발생되지 않는(asynchronous) 2가지 절차로 나누어질 수 있다. 여기서, 2가지 절차는 오버레이 구성 절차(overlay construction procedure) 및 패브릭 블록체인 절차(fabric blockchain procedure)를 포함할 수 있다.Referring to FIG. 3 , the overall operation procedure according to an embodiment may be divided into two procedures that do not occur simultaneously (asynchronous). Here, the two procedures may include an overlay construction procedure and a fabric blockchain procedure.

오버레이 구성 절차에서, 모바일 피어의 SDN 클라이언트 컨테이너는 네트워크 상태의 눈에 띄는 변화가 감지될 때마다 네트워크 상태를 SDN 서버 컨테이너에 보고할 수 있다. SDN 서버는 모바일 피어에서 모든 네트워크 정보를 수집하고, 이웃한 피어 정보를 각 모바일 피어로 송신할 수 있다. 모바일 피어의 피어 컨테이너의 피어 선택 테이블은 이러한 정보를 기반으로 업데이트될 수 있다. 결과적으로 업데이트된 테이블 정보는 동시에 발생되지 않는 절차인 패브릭 블록체인 네트워크 절차의 블록 전파 시퀀스에 영향을 줄 수 있다. In the overlay configuration procedure, the SDN client container of the mobile peer may report the network status to the SDN server container whenever a noticeable change in the network status is detected. The SDN server may collect all network information from mobile peers, and send neighboring peer information to each mobile peer. The peer selection table of the peer container of the mobile peer may be updated based on this information. As a result, the updated table information may affect the block propagation sequence of fabric blockchain network procedures, which are procedures that do not occur simultaneously.

패브릭 블록체인 네트워크 절차에서, 모바일 사용자는 SDK 컨테이너를 통해서만 블록 체인 원장에 접근할 수 있다. 따라서, 사용자 단말은 트랜잭션 제안(transaction proposal) 요청(request)을 MEC의 SDK 컨테이너로 송신할 수 있다. 사용자 단말로부터 요청을 수신할 때마다 SDK 컨테이너는 이를 인돌싱 모바일 피어라고 불리는 일부 모바일 피어에 전달할 수 있다. 인돌싱 모바일 피어는 트랜젝션 제안에 따라 스마트 계약을 실행할 수 있고, 서명과 함께 실행 결과를 반환할 수 있다. 여기서, 반환되는 서명(signature) 및 실행 결과(read/write set)는 보증(endorsement) 또는 보증 정보라 나타낼 수 있다. In the fabric blockchain network procedure, mobile users can only access the blockchain ledger through the SDK container. Accordingly, the user terminal may transmit a transaction proposal request to the SDK container of the MEC. Whenever it receives a request from a user terminal, the SDK container may forward it to some mobile peers called indoling mobile peers. The indoling mobile peer can execute the smart contract according to the transaction proposal and return the execution result along with the signature. Here, the returned signature and execution result (read/write set) may be expressed as endorsement or endorsement information.

SDK 컨테이너는 인돌싱 모바일 피어로부터 수집된 보증(endorsement)을 가진 트랜잭션을 생성한 다음 동일한 호스트 머신인 MEC에 위치된 오더러 컨테이너로 전달할 수 있다. 오더러 컨테이너는 SDK 컨테이너에서 전달된 트랜잭션들의 집단(batch)을 잘 정의된 시퀀스로 정렬하고 블록으로 패키징할 수 있다. 즉, 블록을 생성할 수 있다. The SDK container can create a transaction with endorsements collected from the indoling mobile peer and then forward it to the orderer container located on the same host machine, the MEC. The orderer container can arrange a batch of transactions delivered from the SDK container into a well-defined sequence and package it into a block. That is, blocks can be created.

리더 피어 컨테이너는 오더러 컨테이너에서 새 블록이 생성될 때마다 이를 가져와서 피어 선택 테이블에 기록된 이웃한 모바일 피어에 배포할 수 있다. 모바일 피어는 블록 데이터를 수신하는 경우, 이를 이웃한 모바일 피어에게 전달한 후, 인돌싱 모바일 피어들에 의해 모든 트랜잭션들이 보증된 것을 확인하기 위해 블록의 각 트랜잭션을 검증(validate)할 수 있다. 모바일 피어들은 트랜잭션을 커밋(commit)하고 변경할 수 없는 블록의 모든 트랜잭션이 올바르게 보증(endorsing)되면 원장을 업데이트할 수 있다. 즉, 모바일 피어들의 피어 컨테이너들은 수신한 블록을 검증 및 커밋한 후 MEC의 SDK 컨테이너로 알림을 송신할 수 있다. SDK 컨테이너는 블록이 모바일 피어들에 의해 커밋되면 사용자의 트랜잭션을 확인하고, 사용자에게 확인 메시지로 응답(reply)할 수 있다.Each time a new block is created from the orderer container, the leader peer container can take it and distribute it to neighboring mobile peers recorded in the peer selection table. When the mobile peer receives the block data, after transmitting it to the neighboring mobile peer, the mobile peer may validate each transaction of the block to confirm that all transactions are guaranteed by the indoling mobile peers. Mobile peers can commit transactions and update the ledger once all transactions in the immutable block are properly endorsed. That is, peer containers of mobile peers may send a notification to the SDK container of the MEC after verifying and committing the received block. The SDK container can confirm the user's transaction when the block is committed by mobile peers, and reply to the user with a confirmation message.

이하에서는 빠른 블록 전파를 위한 오버레이 구조 구성 문제에 대하여 서비스 환경에서 가능한 모든 블록 전파 시나리오와 함께 상세히 설명하겠다. Hereinafter, the problem of constructing an overlay structure for fast block propagation will be described in detail along with all possible block propagation scenarios in a service environment.

도 4 내지 도 7은 본 발명의 일 실시예에 따른 4가지 블록 전파 시나리오들을 나타낸 도면이다.4 to 7 are diagrams illustrating four block propagation scenarios according to an embodiment of the present invention.

도 4는 셀룰러 멀티캐스트(cellular multicast(evolved multimedia broadcast multicast service, eMBMS))에 대한 시나리오를 나타낼 수 있다. eMBMS는 MEC가 동일한 데이터 블록을 공간적 및 시간적 지역성(locality)을 가진 모바일 피어들에게 송신할 때 효과적인 전송 방식일 수 있다. 다만, 모든 모바일 피어들의 수신 가능한 데이터 속도(rate)는 멀티캐스트 그룹에서 신호 강도가 약한 모바일 피어에 의해 제한될 수 있다.4 may show a scenario for cellular multicast (evolved multimedia broadcast multicast service, eMBMS). The eMBMS may be an effective transmission method when the MEC transmits the same data block to mobile peers with spatial and temporal locality. However, the receivable data rate of all mobile peers may be limited by the mobile peer with weak signal strength in the multicast group.

도 5는 셀룰러 유니캐스트(cellular unicast)에 대한 시나리오를 나타낼 수 있다. 유니캐스트 전송 방식의 장점은 각 모바일 피어의 셀룰러 네트워크 상태에 따라 전송 속도(rate)를 조정할 수 있다는 점이다. 다만, 유니캐스트 전송 방식은 MEC가 동일한 데이터 블록을 동일한 셀 내의 여러 모바일 피어들로 송신할 때 무선 네트워크 자원들을 비효율적으로 사용할 수 있다. 5 may show a scenario for cellular unicast. The advantage of the unicast transmission method is that the transmission rate can be adjusted according to the cellular network status of each mobile peer. However, the unicast transmission method may inefficiently use radio network resources when the MEC transmits the same data block to several mobile peers within the same cell.

도 6 및 도 7은 D2D 통신에 의해 확장된 셀룰러 멀티 캐스트 및 유니 캐스트(cellular multicast and unicast extended by device to device communication)에 대한 시나리오를 나타낼 수 있다. 이러한 방식는 네트워크 범위를 확장할 수 있고, 셀룰러 네트워크의 성능을 향상시킬 수 있다. 이 경우, MEC는 셀룰러 네트워크에서 양호한 채널 상태를 가진 일부 모바일 피어들에게 데이터 블록을 전송하고, 다른 모바일 피어들은 D2D 통신을 통해 인접한 모바일 노드들(데이터 블록을 수신한 일부 모바일 피어들)로부터 데이터 블록을 수신할 수 있다.6 and 7 may show scenarios for cellular multicast and unicast extended by device to device communication. In this way, the network range can be extended and the performance of the cellular network can be improved. In this case, the MEC transmits data blocks to some mobile peers with good channel conditions in the cellular network, and other mobile peers transmit data blocks from adjacent mobile nodes (some mobile peers that have received the data block) through D2D communication. can receive

일부 심볼들이 오버레이 구조 구성 문제를 구체화하기 위해 다음과 같이 정의될 수 있다.

Figure 112020122954863-pat00001
Figure 112020122954863-pat00002
는 각각 MEC에서 i번째 모바일 피어로의 블록 데이터 크기 및 데이터 속도를 나타낼 수 있다. 여기서, i는 자연수 중 하나를 나타낼 수 있다. 따라서 i번째 모바일 피어가 MEC로부터 블록 데이터를 직접 수신하는 데 걸리는 시간, 즉 블록 전송 지연 시간은 수학식 1과 같이 산출될 수 있다.Some symbols may be defined as follows to specify the overlay structure configuration problem.
Figure 112020122954863-pat00001
and
Figure 112020122954863-pat00002
may represent the block data size and data rate from the MEC to the i-th mobile peer, respectively. Here, i may represent one of natural numbers. Accordingly, the time it takes for the i-th mobile peer to directly receive block data from the MEC, that is, the block transmission delay time, can be calculated as in Equation 1.

Figure 112020122954863-pat00003
Figure 112020122954863-pat00003

수학식 1에서,

Figure 112020122954863-pat00004
는 MEC에서 i번째 모바일 피어로의 블록 전송 지연 시간을 나타낼 수 있다. 여기서,
Figure 112020122954863-pat00005
은 네트워크 시스템 파라미터, 즉 변조 차수(modulation), 수비학(numerology) 및 OFDM 심볼 기간(orthogonal frequency division multiplexing symbol duration)가 주어지면 모바일 장치에 할당된 자원 블록들의 수를 기반으로 쉽게 산출될 수 있다. In Equation 1,
Figure 112020122954863-pat00004
may represent the block transmission delay time from the MEC to the i-th mobile peer. here,
Figure 112020122954863-pat00005
Can be easily calculated based on the number of resource blocks allocated to the mobile device given the network system parameters, that is, modulation order, numerology, and OFDM symbol duration (orthogonal frequency division multiplexing symbol duration).

D2D에 의해 확장된 셀룰러 멀티캐스트/유니캐스트에서 i번째 모바일 피어는 D2D 통신을 통해 인접한 j번째 모바일 피어로부터 블록을 수신할 수 있습니다. 여기서, j는 자연수 중 i와 다른 하나를 나타낼 수 있다. 이 경우, 인접한 j번째 모바일 피어에서 i번째 모바일 피어로의 블록 전송 지연 시간은 수학식 2와 같이 산출될 수 있다.In cellular multicast/unicast extended by D2D, the i-th mobile peer can receive blocks from its adjacent j-th mobile peer via D2D communication. Here, j may represent one different from i among natural numbers. In this case, the block transmission delay time from the adjacent j-th mobile peer to the i-th mobile peer may be calculated as shown in Equation (2).

Figure 112020122954863-pat00006
Figure 112020122954863-pat00006

수학식 2에서,

Figure 112020122954863-pat00007
는 i번째 모바일 피어에서 j번째 모바일 피어로의 블록 전송 지연 시간을 나타낼 수 있다.
Figure 112020122954863-pat00008
은 i번째 모바일 피어에서 j번째 모바일 피어까지의 데이터 속도를 나타낼 수 있으며, 수신 신호 강도 표시(RSSI: received signal strength indication)를 이용하여 측정될 수 있다.In Equation 2,
Figure 112020122954863-pat00007
may represent the block transmission delay time from the i-th mobile peer to the j-th mobile peer.
Figure 112020122954863-pat00008
may indicate the data rate from the i-th mobile peer to the j-th mobile peer, and may be measured using a received signal strength indication (RSSI).

도 8은 본 발명의 일 실시예에 따른 블록 전파를 위한 오버레이 멀티캐스트 구조를 도면이다.8 is a diagram illustrating an overlay multicast structure for block propagation according to an embodiment of the present invention.

도 8을 참조하면, 트리 기반 오버레이 구조는 2개의 레벨로 조직될 수 있다. 루트(root) 및 제1 레벨 사이의 엣지들의 가중치(weight of edges)는 셀룰러 네트워크를 통한 블록 전송 시간을 나타낼 수 있고, 제1 레벨 및 제2 레벨 사이의 엣지들의 가중치는 D2D 네트워크를 통한 블록 전송 시간을 나타낼 수 있다. 여기서, 루트, 제1 레벨 및 제2 레벨 각각은 도 8의 3개의 행(row)들을 위에서부터 아래까지의 순서로 나타낸 것이다.Referring to FIG. 8 , the tree-based overlay structure may be organized into two levels. The weight of edges between the root and the first level may indicate a block transmission time through the cellular network, and the weight of the edges between the first level and the second level may indicate a block transmission time through the D2D network. can indicate time. Here, each of the root, the first level, and the second level represents three rows of FIG. 8 in order from top to bottom.

이제 다음과 같이 오버레이 구조 구성 문제를 공식화(formulate)하면 수학식 3과 같이 나타낼 수 있다.Now, if the overlay structure configuration problem is formulated as follows, it can be expressed as Equation (3).

Figure 112020122954863-pat00009
Figure 112020122954863-pat00009

수학식 3에서,

Figure 112020122954863-pat00010
는 미리 주어진 전체 모바일 피어 세트를 나타낼 수 있고,
Figure 112020122954863-pat00011
Figure 112020122954863-pat00012
는 셀룰러 네트워크 피어 그룹 및 D2D 네트워크 피어 그룹을 나타낼 수 있다. 또한,
Figure 112020122954863-pat00013
은 수학식 1에서와 같이 셀롤러 네트워크를 통해 MEC으로부터 i번째 모바일 피어로의 블록 전송 지연 시간을 나타낼 수 있고,
Figure 112020122954863-pat00014
는 수학식 2에서와 같이 D2D 네트워크를 통해 i번째 모바일 피어로부터 j번째 모바일 피어로의 블록 전송 지연 시간을 나타낼 수 있다. 즉, 수학식 3에서 max{}의 내부는 MEC으로부터 j번째 모바일 피어로로의 블록 전송 지연 시간으로 볼 수 있으며, f는 모든 i 및 j에 대하여 MEC으로부터 j번째 모바일 피어로까지의 블록 전송 지연 시간 중 가장 큰 경우를 나타낼 수 있다. In Equation 3,
Figure 112020122954863-pat00010
may represent the pre-given full set of mobile peers,
Figure 112020122954863-pat00011
and
Figure 112020122954863-pat00012
may represent a cellular network peer group and a D2D network peer group. Also,
Figure 112020122954863-pat00013
may represent the block transmission delay time from the MEC to the i-th mobile peer through the cellular network as in Equation 1,
Figure 112020122954863-pat00014
may represent the block transmission delay time from the i-th mobile peer to the j-th mobile peer through the D2D network as in Equation 2 . That is, the inside of max{} in Equation 3 can be seen as the block transmission delay time from the MEC to the j-th mobile peer, and f is the block transmission delay from the MEC to the j-th mobile peer for all i and j. It can represent the largest case of time.

일 실시예에 따른 오버레이 구조 구성 문제의 목적은 전체 블록 전파 지연을 최소화하기 위해 미리 주어진 전체 모바일 피어 세트

Figure 112020122954863-pat00015
, 네트워크 토폴로지 및 모든 모바일 피어에 대한 네트워크 상태를 고려하여 셀룰러 네트워크 피어 그룹
Figure 112020122954863-pat00016
및 D2D 네트워크 피어 그룹
Figure 112020122954863-pat00017
를 결정하는 것이다.The purpose of the overlay architecture configuration problem according to one embodiment is to minimize the overall block propagation delay given a full set of mobile peers in advance.
Figure 112020122954863-pat00015
, a group of cellular network peers, taking into account the network topology and the network state for all mobile peers.
Figure 112020122954863-pat00016
and D2D network peer group
Figure 112020122954863-pat00017
is to determine

따라서, 일 실시예는 수학식 3에서 f가 최소화되도록 미리 주어진 전체 모바일 피어 세트

Figure 112020122954863-pat00018
내의 각 모바일 피어들을 셀룰러 네트워크 피어 그룹
Figure 112020122954863-pat00019
또는 D2D 네트워크 피어 그룹
Figure 112020122954863-pat00020
으로 할당할 수 있다. 다시 말해, 수학식 3의 문제는 최근 블록을 수신한 모바일 피어에 대한 블록 수신 시간을 최소화하는 것일 수 있다. 일 실시에는 이를 위해 후술하는 모바일 피어 그룹핑 알고리즘을 이용할 수 있다.Thus, one embodiment is a pre-given full set of mobile peers such that f is minimized in equation (3).
Figure 112020122954863-pat00018
Each mobile peer within a cellular network peer group
Figure 112020122954863-pat00019
or D2D network peer group
Figure 112020122954863-pat00020
can be assigned as In other words, the problem of Equation 3 may be to minimize the block reception time for the mobile peer that has recently received the block. In one embodiment, a mobile peer grouping algorithm described later may be used for this purpose.

도 9는 본 발명의 일 실시예에 따른 모바일 피어 그룹핑 알고리즘을 나타낸 도면이다.9 is a diagram illustrating a mobile peer grouping algorithm according to an embodiment of the present invention.

이하에서는 도 9를 참조하여 제어 변수

Figure 112020122954863-pat00021
Figure 112020122954863-pat00022
를 결정하는 방법에 대하여 설명하겠다. 오버레이 구조 구성 문제에서
Figure 112020122954863-pat00023
Figure 112020122954863-pat00024
의 결정 프로세스는 그래프 토폴로지의 하나의 특정 정점(vertex)에서 다른 모든 정점들까지 최단 경로를 결정하는 잘 알려진 최단 경로 문제로 간주될 수 있다. 또한, 오버레이 구조 구성 문제는 하나의 MEC에서 모든 모바일 피어들까지의 최단 경로를 결정하는 것으로 생각할 수도 있습니다. 유향의(directed) 그래프 토폴로지에서 시작하는 정점을 제외한 나머지 정점들 및 엣지들의 각 가중치는 각각 모바일 피어들 및 각 모바일 피어의 블록 수신 시간으로 해석될 수 있다.Hereinafter, with reference to FIG. 9, the control variable
Figure 112020122954863-pat00021
and
Figure 112020122954863-pat00022
We will explain how to determine In the overlay structure configuration problem
Figure 112020122954863-pat00023
and
Figure 112020122954863-pat00024
The decision process of n can be considered as the well-known shortest path problem of determining the shortest path from one specific vertex to all other vertices of the graph topology. Also, the problem of constructing an overlay structure can be thought of as determining the shortest path from one MEC to all mobile peers. Each weight of vertices and edges other than a vertex starting in a directed graph topology may be interpreted as mobile peers and block reception times of each mobile peer, respectively.

따라서, 일 실시예는

Figure 112020122954863-pat00025
의 합리적인 계산 복잡도를 가진 최적의 솔루션을 얻기 위해 Dijkstra의 알고리즘을 이용할 수 있다. 모든 모바일 피어들에 대한
Figure 112020122954863-pat00026
Figure 112020122954863-pat00027
의 전체 결정 프로세스는 도 9의 모바일 피어 그룹핑 알고리즘에서 설명될 수 있다.Therefore, one embodiment
Figure 112020122954863-pat00025
Dijkstra's algorithm can be used to obtain an optimal solution with a reasonable computational complexity of . for all mobile peers
Figure 112020122954863-pat00026
and
Figure 112020122954863-pat00027
The entire determination process of ? can be described in the mobile peer grouping algorithm of FIG. 9 .

예를 들어, 도 9를 참조하면, 볼텍스는 모바일 피어에 대응될 수 있으며, 일 실시예는 MEC을 제1 볼텍스로 설정하고, 전체 모바일 피어 그룹에 속하는 i번째 볼텍스(모바일 피어)를 선택하며, 선택한 i번째 볼텍스의 이전 볼텍스가 제1 볼텍스인 경우, 셀롤러 네트워크를 통해 MEC으로부터 데이터 블록을 수신한 것으로 보아 i번째 볼텍스를 셀롤러 네트워크 피어 그룹에 포함시킬 수 있고, 선택한 i번째 볼텍스의 이전 볼텍스가 제1 볼텍스가 아닌 경우, D2D 네트워크를 통해 다른 볼텍스(다른 인접한 모바일 피어)로부터 데이터 블록을 수신한 것으로 보아 i번째 블텍스를 D2D 네트워크 피어 그룹에 포함시킬 수 있다.For example, referring to FIG. 9 , a vortex may correspond to a mobile peer, and in one embodiment, the MEC is set as the first vortex, and the i-th vortex (mobile peer) belonging to the entire mobile peer group is selected, If the previous vortex of the selected i-th vortex is the first vortex, it is considered that the data block is received from the MEC through the cellular network, so the i-th vortex can be included in the cellular network peer group, and the previous vortex of the selected i-th vortex If is not the first vortex, it is considered that a data block has been received from another vortex (another adjacent mobile peer) through the D2D network, and thus the i-th vertex may be included in the D2D network peer group.

도 10은 본 발명의 일 실시예에 따른 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 장치의 블록 구성도이다.10 is a block diagram of a block data multicasting apparatus based on a scalable P2P overlay structure according to an embodiment of the present invention.

도 10을 참조하면, 본 발명의 일 실시예에 따른 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 장치(1000)는 적어도 하나의 프로세서(1010), 메모리(1020) 및 저장 장치(1030)를 포함할 수 있다. 또한, 도 10에 도시하지 않았으나, 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 장치(1000)는 셀롤러 통신이 가능한 통신 모듈을 포함할 수 있다. 예를 들어, 셀롤러 통신은 5G 통신을 나타낼 수 있으나, 4G 등과 같은 다른 통신도 포함될 수 있다. 여기서, 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 장치(1000)는 MEC 서버를 나타낼 수도 있다.Referring to FIG. 10 , the block data multicasting apparatus 1000 based on the scalable P2P overlay structure according to an embodiment of the present invention includes at least one processor 1010 , a memory 1020 , and a storage device 1030 . can do. Also, although not shown in FIG. 10 , the block data multicasting apparatus 1000 based on the expandable P2P overlay structure may include a communication module capable of cellular communication. For example, cellular communication may refer to 5G communication, but may also include other communication such as 4G and the like. Here, the block data multicasting apparatus 1000 based on the scalable P2P overlay structure may represent an MEC server.

프로세서(1010)는 메모리(1020) 및/또는 저장 장치(1030)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(1010)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(1020)와 저장 장치(1030)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(1020)는 읽기 전용 메모리(read only memory, ROM) 및/또는 랜덤 액세스 메모리(random access memory, RAM)로 구성될 수 있다.The processor 1010 may execute a program command stored in the memory 1020 and/or the storage device 1030 . The processor 1010 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to the present invention are performed. The memory 1020 and the storage device 1030 may be configured of a volatile storage medium and/or a non-volatile storage medium. For example, the memory 1020 may be configured as a read only memory (ROM) and/or a random access memory (RAM).

메모리(1020)는 프로세서(1010)를 통해 실행되는 적어도 하나의 명령을 저장하고 있을 수 있다. 적어도 하나의 명령은 사용자 단말로부터 트랜잭션 제안에 대한 요청을 수신하는 명령, 상기 트랜잭션 제안을 적어도 하나의 인돌싱(endorsing) 모바일 피어로 송신하는 명령, 상기 적어도 하나의 인돌싱 모바일 피어로부터 상기 트랜잭션 제안에 따른 스마트 컨트랙트 실행 정보 및 서명 정보를 포함하는 보증 정보를 수신하는 명령, 상기 보증 정보를 기반으로 트랜잭션을 생성하는 명령, 상기 트랜잭션을 기반으로 블록 정보를 생성하는 명령, 미리 구성된 오버레이 구조에 따라 상기 블록 정보를 상기 인돌싱 모바일 피어를 포함하는 복수의 모바일 피어들로 전파하는 명령, 상기 복수의 모바일 피어들로부터 상기 블록 정보에 대한 검증 및 커밋이 수행된 알림 정보를 수신하는 명령 및 상기 알림 정보를 기반으로 상기 사용자 단말에게 상기 트랜잭션 제안이 처리되었다는 응답 정보를 송신하는 명령을 포함할 수 있다.The memory 1020 may store at least one instruction executed through the processor 1010 . The at least one instruction includes an instruction for receiving a request for a transaction proposal from a user terminal, an instruction for sending the transaction proposal to at least one endorsing mobile peer, and an instruction to receive the transaction proposal from the at least one indoling mobile peer. A command for receiving guarantee information including smart contract execution information and signature information according to a command, a command for generating a transaction based on the guarantee information, a command for generating block information based on the transaction, and an instruction for generating block information based on the transaction, the block according to a preconfigured overlay structure Based on a command for propagating information to a plurality of mobile peers including the indoling mobile peer, a command for receiving notification information on which verification and committing of the block information has been performed from the plurality of mobile peers, and the notification information may include a command for transmitting response information indicating that the transaction proposal has been processed to the user terminal.

예를 들어, 상기 오버레이 구조는 피어 선택 테이블을 기반으로 구성될 수 있고, 상기 피어 선택 테이블은 상기 복수의 모바일 피어들 각각으로부터 네트워크 상태 정보 및 인접한 다른 모바일 피어에 대한 정보를 수신하여 업데이트될 수 있다.For example, the overlay structure may be configured based on a peer selection table, and the peer selection table may be updated by receiving network state information and information on other adjacent mobile peers from each of the plurality of mobile peers. .

예를 들어, 상기 오버레이 구조는 상기 복수의 모바일 피어들 각각의 블록 전송 지연 시간 정보를 기반으로 구성되고, 상기 블록 전송 지연 시간 정보는 상기 네트워크 상태 정보에 포함될 수 있다.For example, the overlay structure may be configured based on block transmission delay time information of each of the plurality of mobile peers, and the block transmission delay time information may be included in the network state information.

예를 들어, 상기 복수의 모바일 피어들은 셀롤러 네트워크 피어 그룹에 포함되는 적어도 일부의 제1 모바일 피어 및 D2D(device to device) 네트워크 피어 그룹에 포함되는 나머지 제2 모바일 피어를 포함할 수 있고, 상기 제1 모바일 피어는 셀롤러 네트워크를 통해 상기 MEC 서버로부터 상기 블록 정보를 수신할 수 있고, 상기 제2 모바일 피어는 D2D 네트워크를 통해 상기 적어도 일부의 제1 모바일 피어 중 인접한 모바일 피어로부터 상기 블록 정보를 수신할 수 있다.For example, the plurality of mobile peers may include at least some first mobile peers included in a cellular network peer group and the remaining second mobile peers included in a device to device (D2D) network peer group, and A first mobile peer may receive the block information from the MEC server via a cellular network, and the second mobile peer may receive the block information from a neighboring mobile peer among the at least some first mobile peers via a D2D network. can receive

예를 들어, 상기 블록 지연 시간 정보는 상기 제1 모바일 피어의 경우, 블록 정보의 크기 및 상기 MEC 서버로부터 상기 제1 모바일 피어로의 데이터 속도를 기반으로 도출될 수 있고, 상기 제2 모바일 피어의 경우, 블록 정보의 크기 및 상기 인접한 모바일 피어로부터 상기 제2 모바일 피어로의 데이터 속도를 기반으로 도출될 수 있다.For example, the block delay time information may be derived based on a size of block information and a data rate from the MEC server to the first mobile peer in the case of the first mobile peer, and case, it may be derived based on the size of the block information and the data rate from the adjacent mobile peer to the second mobile peer.

도 11은 본 발명의 일 실시예에 다른 확장 가능한 P2P 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법의 순서도이다.11 is a flowchart of a block data multicasting method based on a scalable P2P overlay structure according to an embodiment of the present invention.

도 11을 참조하면, 일 실시예는 사용자 단말로부터 트랜잭션 제안에 대한 요청을 수신할 수 있고(S1110), 상기 트랜잭션 제안을 적어도 하나의 인돌싱(endorsing) 모바일 피어로 송신할 수 있다(S1120). 여기서, 인돌싱 모바일 피어는 모바일 피어들 중 스마트 계약을 호스팅하고, 실행 결과를 보증하는 노드를 나타낼 수 있다.Referring to FIG. 11 , according to an embodiment, a request for a transaction proposal may be received from a user terminal ( S1110 ), and the transaction proposal may be transmitted to at least one endorsing mobile peer ( S1120 ). Here, the indoling mobile peer may represent a node that hosts a smart contract among mobile peers and guarantees an execution result.

일 실시예는 상기 적어도 하나의 인돌싱 모바일 피어로부터 상기 트랜잭션 제안에 따른 스마트 컨트랙트 실행 정보 및 서명 정보를 포함하는 보증 정보를 수신할 수 있다(S1130). 즉, 인돌싱 모바일 피어는 트랜젝션 제안에 따라 스마트 계약을 실행할 수 있고, 서명과 함께 실행 결과를 반환할 수 있다. 여기서, 반환되는 서명(signature) 및 실행 결과(read/write set)는 보증(endorsement) 또는 보증 정보라 나타낼 수 있다.According to an embodiment, guarantee information including smart contract execution information and signature information according to the transaction proposal may be received from the at least one indoling mobile peer (S1130). That is, the indoling mobile peer can execute the smart contract according to the transaction proposal and return the execution result along with the signature. Here, the returned signature and execution result (read/write set) may be expressed as endorsement or endorsement information.

일 실시예는 상기 보증 정보를 기반으로 트랜잭션을 생성할 수 있고(S1140), 상기 트랜잭션을 기반으로 블록 정보를 생성할 수 있다(S1150). 여기서, 일 실시예에 따르면, 오더러 컨테이너가 트랜잭션들의 집단(batch)을 잘 정의된 시퀀스로 정렬하고 블록으로 패키징, 즉, 블록을 생성할 수 있다. According to an embodiment, a transaction may be generated based on the guarantee information (S1140), and block information may be generated based on the transaction (S1150). Here, according to an embodiment, the orderer container may arrange a batch of transactions into a well-defined sequence and package it into a block, ie, generate a block.

이후, 일 실시예는 미리 구성된 오버레이 구조에 따라 상기 블록 정보를 상기 인돌싱 모바일 피어를 포함하는 복수의 모바일 피어들로 전파할 수 있다(S1160). 여기서, 오버레이 구조는 피어 선택 테이블을 기반으로 구성될 수 있고, 상기 피어 선택 테이블은 상기 복수의 모바일 피어들 각각으로부터 네트워크 상태 정보 및 인접한 다른 모바일 피어에 대한 정보를 수신하여 업데이트될 수 있다. 또한, 오버레이 구조는 전체 블록 전파 시간이 가장 단축되도록 상기 복수의 모바일 피어들 각각의 블록 전송 지연 시간 정보를 기반으로 구성될 수 있고, 상기 블록 전송 지연 시간 정보는 상기 네트워크 상태 정보에 포함될 수 있다. 예를 들어, 상기 복수의 모바일 피어들은 셀롤러 네트워크 피어 그룹에 포함되는 적어도 일부의 제1 모바일 피어 및 D2D(device to device) 네트워크 피어 그룹에 포함되는 나머지 제2 모바일 피어로 구성될 수 있다. 제1 모바일 피어는 셀롤러 네트워크를 통해 상기 MEC 서버로부터 상기 블록 정보를 수신할 수 있고, 제2 모바일 피어는 D2D 네트워크를 통해 상기 적어도 일부의 제1 모바일 피어 중 인접한 모바일 피어로부터 상기 블록 정보를 수신할 수 있다. 즉, 제1 모바일 피어는 MEC 서버로부터 곧바로 블록 정보를 수신할 수 있고, 제2 모바일 피어는 MEC 서버로부터 블록 정보를 수신한 제1 모바일 피어로부터 블록 정보를 전달받을 수 있다. 이에 대해서는 도 4 내지 도 8과 함께 상세히 상술하였다.Thereafter, an embodiment may propagate the block information to a plurality of mobile peers including the indoling mobile peer according to a preconfigured overlay structure ( S1160 ). Here, the overlay structure may be configured based on a peer selection table, and the peer selection table may be updated by receiving network state information and information on other adjacent mobile peers from each of the plurality of mobile peers. In addition, the overlay structure may be configured based on block transmission delay time information of each of the plurality of mobile peers so that the overall block propagation time is shortened the most, and the block transmission delay time information may be included in the network state information. For example, the plurality of mobile peers may include at least some first mobile peers included in the cellular network peer group and the remaining second mobile peers included in the device to device (D2D) network peer group. A first mobile peer may receive the block information from the MEC server through a cellular network, and a second mobile peer receives the block information from a neighboring mobile peer of the at least some first mobile peers through a D2D network can do. That is, the first mobile peer may receive block information directly from the MEC server, and the second mobile peer may receive block information from the first mobile peer that has received the block information from the MEC server. This has been described in detail with reference to FIGS. 4 to 8 .

예를 들어, 상기 블록 지연 시간 정보는 상기 제1 모바일 피어의 경우, 블록 정보의 크기 및 상기 MEC 서버로부터 상기 제1 모바일 피어로의 데이터 속도를 기반으로 도출될 수 있고, 상기 제2 모바일 피어의 경우, 블록 정보의 크기 및 상기 인접한 모바일 피어로부터 상기 제2 모바일 피어로의 데이터 속도를 기반으로 도출될 수 있다. 이에 대해서는 도 9와 함께 상세히 상술하였다.For example, the block delay time information may be derived based on a size of block information and a data rate from the MEC server to the first mobile peer in the case of the first mobile peer, and case, it may be derived based on the size of the block information and the data rate from the adjacent mobile peer to the second mobile peer. This has been described in detail with reference to FIG. 9 .

상기 복수의 모바일 피어들로부터 상기 블록 정보에 대한 검증 및 커밋이 수행된 알림 정보를 수신할 수 있고(S1170), 상기 알림 정보를 기반으로 상기 사용자 단말에게 상기 트랜잭션 제안이 처리되었다는 응답 정보를 송신할 수 있다(S1180).It is possible to receive notification information on which verification and commit of the block information has been performed from the plurality of mobile peers (S1170), and transmit response information indicating that the transaction proposal has been processed to the user terminal based on the notification information. can be (S1180).

본 발명의 실시예에 따른 동작은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 프로그램 또는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽켜질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터로 읽을 수 있는 프로그램 또는 코드가 저장되고 실행될 수 있다. The operation according to the embodiment of the present invention can be implemented as a computer-readable program or code on a computer-readable recording medium. The computer-readable recording medium includes all types of recording devices in which data readable by a computer system is stored. In addition, the computer-readable recording medium is distributed in a computer system connected to a network so that computer-readable programs or codes can be stored and executed in a distributed manner.

또한, 컴퓨터가 읽을 수 있는 기록매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.In addition, the computer-readable recording medium may include a hardware device specially configured to store and execute program instructions, such as ROM, RAM, and flash memory. The program instructions may include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

본 발명의 일부 측면들은 장치의 문맥에서 설명되었으나, 그것은 상응하는 방법에 따른 설명 또한 나타낼 수 있고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 상응한다. 유사하게, 방법의 문맥에서 설명된 측면들은 또한 상응하는 블록 또는 아이템 또는 상응하는 장치의 특징으로 나타낼 수 있다. 방법 단계들의 몇몇 또는 전부는 예를 들어, 마이크로프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이용하여) 수행될 수 있다. 몇몇의 실시예에서, 가장 중요한 방법 단계들의 하나 이상은 이와 같은 장치에 의해 수행될 수 있다. Although some aspects of the invention have been described in the context of an apparatus, it may also represent a description according to a corresponding method, wherein a block or apparatus corresponds to a method step or feature of a method step. Similarly, aspects described in the context of a method may also represent a corresponding block or item or a corresponding device feature. Some or all of the method steps may be performed by (or using) a hardware device such as, for example, a microprocessor, a programmable computer, or an electronic circuit. In some embodiments, one or more of the most important method steps may be performed by such an apparatus.

실시예들에서, 프로그램 가능한 로직 장치(예를 들어, 필드 프로그래머블 게이트 어레이)가 여기서 설명된 방법들의 기능의 일부 또는 전부를 수행하기 위해 사용될 수 있다. 실시예들에서, 필드 프로그래머블 게이트 어레이는 여기서 설명된 방법들 중 하나를 수행하기 위한 마이크로프로세서와 함께 작동할 수 있다. 일반적으로, 방법들은 어떤 하드웨어 장치에 의해 수행되는 것이 바람직하다.In embodiments, a programmable logic device (eg, a field programmable gate array) may be used to perform some or all of the functions of the methods described herein. In embodiments, the field programmable gate array may operate in conjunction with a microprocessor to perform one of the methods described herein. In general, the methods are preferably performed by some hardware device.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although the above has been described with reference to the preferred embodiments of the present invention, those skilled in the art can variously modify and change the present invention within the scope without departing from the spirit and scope of the present invention as set forth in the claims below. You will understand that it can be done.

Claims (10)

MEC(mobile edge clouding) 서버에서 수행되는 확장가능한 P2P(peer to peer) 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법으로서,
사용자 단말로부터 트랜잭션 제안에 대한 요청을 수신하는 단계;
상기 트랜잭션 제안을 적어도 하나의 인돌싱(endorsing) 모바일 피어로 송신하는 단계;
상기 적어도 하나의 인돌싱 모바일 피어로부터 상기 트랜잭션 제안에 따른 스마트 컨트랙트 실행 정보 및 서명 정보를 포함하는 보증 정보를 수신하는 단계;
상기 보증 정보를 기반으로 트랜잭션을 생성하는 단계;
상기 트랜잭션을 기반으로 블록 정보를 생성하는 단계;
미리 구성된 오버레이 구조에 따라 상기 블록 정보를 상기 인돌싱 모바일 피어를 포함하는 복수의 모바일 피어들로 전파하는 단계;
상기 복수의 모바일 피어들로부터 상기 블록 정보에 대한 검증 및 커밋이 수행된 알림 정보를 수신하는 단계; 및
상기 알림 정보를 기반으로 상기 사용자 단말에게 상기 트랜잭션 제안이 처리되었다는 응답 정보를 송신하는 단계; 를 포함하는,
블록 데이터 멀티 캐스팅 방법.
As a block data multicasting method based on a scalable peer to peer (P2P) overlay structure performed in a mobile edge clouding (MEC) server,
receiving a request for a transaction proposal from a user terminal;
sending the transaction proposal to at least one endorsing mobile peer;
receiving guarantee information including smart contract execution information and signature information according to the transaction proposal from the at least one indoling mobile peer;
generating a transaction based on the guarantee information;
generating block information based on the transaction;
propagating the block information to a plurality of mobile peers including the indoling mobile peer according to a preconfigured overlay structure;
receiving, from the plurality of mobile peers, notification information on which verification and commit of the block information has been performed; and
transmitting response information indicating that the transaction proposal has been processed to the user terminal based on the notification information; containing,
Block data multicasting method.
청구항 1에 있어서,
상기 오버레이 구조는 피어 선택 테이블을 기반으로 구성되고,
상기 피어 선택 테이블은 상기 복수의 모바일 피어들 각각으로부터 네트워크 상태 정보 및 인접한 다른 모바일 피어에 대한 정보를 수신하여 업데이트되는,
블록 데이터 멀티 캐스팅 방법.
The method according to claim 1,
The overlay structure is configured based on a peer selection table,
The peer selection table is updated by receiving network state information and information on other adjacent mobile peers from each of the plurality of mobile peers.
Block data multicasting method.
청구항 2에 있어서,
상기 오버레이 구조는 상기 복수의 모바일 피어들 각각의 블록 전송 지연 시간 정보를 기반으로 구성되고, 상기 블록 전송 지연 시간 정보는 상기 네트워크 상태 정보에 포함되는,
블록 데이터 멀티 캐스팅 방법.
3. The method according to claim 2,
The overlay structure is configured based on block transmission delay time information of each of the plurality of mobile peers, and the block transmission delay time information is included in the network state information,
Block data multicasting method.
청구항 3에 있어서,
상기 복수의 모바일 피어들은 셀롤러 네트워크 피어 그룹에 포함되는 적어도 일부의 제1 모바일 피어 및 D2D(device to device) 네트워크 피어 그룹에 포함되는 나머지 제2 모바일 피어를 포함하고,
상기 제1 모바일 피어는 셀롤러 네트워크를 통해 상기 MEC 서버로부터 상기 블록 정보를 수신하고,
상기 제2 모바일 피어는 D2D 네트워크를 통해 상기 적어도 일부의 제1 모바일 피어 중 인접한 모바일 피어로부터 상기 블록 정보를 수신하는,
블록 데이터 멀티 캐스팅 방법.
4. The method according to claim 3,
The plurality of mobile peers include at least some first mobile peers included in the cellular network peer group and the remaining second mobile peers included in the device to device (D2D) network peer group,
The first mobile peer receives the block information from the MEC server through a cellular network,
wherein the second mobile peer receives the block information from a neighboring mobile peer among the at least some first mobile peers through a D2D network;
Block data multicasting method.
청구항 4에 있어서,
상기 블록 전송 지연 시간 정보는,
상기 제1 모바일 피어의 경우, 블록 정보의 크기 및 상기 MEC 서버로부터 상기 제1 모바일 피어로의 데이터 속도를 기반으로 도출되고,
상기 제2 모바일 피어의 경우, 블록 정보의 크기 및 상기 인접한 모바일 피어로부터 상기 제2 모바일 피어로의 데이터 속도를 기반으로 도출되는,
블록 데이터 멀티 캐스팅 방법.
5. The method according to claim 4,
The block transmission delay time information is
In the case of the first mobile peer, it is derived based on the size of block information and the data rate from the MEC server to the first mobile peer,
In the case of the second mobile peer, it is derived based on the size of block information and the data rate from the neighboring mobile peer to the second mobile peer,
Block data multicasting method.
확장가능한 P2P(peer to peer) 오버레이 구조에 기반한 블록 데이터 멀티 캐스팅 방법을 수행하는 MEC(mobile edge clouding) 서버로서,
프로세서(processor); 및
상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리; 를 포함하고,
상기 적어도 하나의 명령은,
사용자 단말로부터 트랜잭션 제안에 대한 요청을 수신하도록 실행되고,
상기 트랜잭션 제안을 적어도 하나의 인돌싱(endorsing) 모바일 피어로 송신하도록 실행되고,
상기 적어도 하나의 인돌싱 모바일 피어로부터 상기 트랜잭션 제안에 따른 스마트 컨트랙트 실행 정보 및 서명 정보를 포함하는 보증 정보를 수신하도록 실행되고,
상기 보증 정보를 기반으로 트랜잭션을 생성하도록 실행되고,
상기 트랜잭션을 기반으로 블록 정보를 생성하도록 실행되고,
미리 구성된 오버레이 구조에 따라 상기 블록 정보를 상기 인돌싱 모바일 피어를 포함하는 복수의 모바일 피어들로 전파하도록 실행되고,
상기 복수의 모바일 피어들로부터 상기 블록 정보에 대한 검증 및 커밋이 수행된 알림 정보를 수신하도록 실행되고,
상기 알림 정보를 기반으로 상기 사용자 단말에게 상기 트랜잭션 제안이 처리되었다는 응답 정보를 송신하도록 실행되는,
MEC 서버.
As a mobile edge clouding (MEC) server that performs a block data multicasting method based on a scalable peer to peer (P2P) overlay structure,
processor; and
a memory storing at least one instruction executed by the processor; including,
The at least one command is
is executed to receive a request for a transaction proposal from the user terminal;
and send the transaction proposal to at least one endorsing mobile peer;
and receive endorsement information including smart contract execution information and signature information according to the transaction proposal from the at least one indoling mobile peer;
executed to create a transaction based on the guarantee information;
is executed to generate block information based on the transaction,
propagating the block information to a plurality of mobile peers including the indoling mobile peer according to a preconfigured overlay structure;
is executed to receive notification information on which verification and commit of the block information has been performed from the plurality of mobile peers;
is executed to transmit response information indicating that the transaction proposal has been processed to the user terminal based on the notification information,
MEC Server.
청구항 6에 있어서,
상기 오버레이 구조는 피어 선택 테이블을 기반으로 구성되고,
상기 피어 선택 테이블은 상기 복수의 모바일 피어들 각각으로부터 네트워크 상태 정보 및 인접한 다른 모바일 피어에 대한 정보를 수신하여 업데이트되는,
MEC 서버.
7. The method of claim 6,
The overlay structure is configured based on a peer selection table,
The peer selection table is updated by receiving network state information and information on other adjacent mobile peers from each of the plurality of mobile peers.
MEC Server.
청구항 7에 있어서,
상기 오버레이 구조는 상기 복수의 모바일 피어들 각각의 블록 전송 지연 시간 정보를 기반으로 구성되고, 상기 블록 전송 지연 시간 정보는 상기 네트워크 상태 정보에 포함되는,
MEC 서버.
8. The method of claim 7,
The overlay structure is configured based on block transmission delay time information of each of the plurality of mobile peers, and the block transmission delay time information is included in the network state information,
MEC Server.
청구항 8에 있어서,
상기 복수의 모바일 피어들은 셀롤러 네트워크 피어 그룹에 포함되는 적어도 일부의 제1 모바일 피어 및 D2D(device to device) 네트워크 피어 그룹에 포함되는 나머지 제2 모바일 피어를 포함하고,
상기 제1 모바일 피어는 셀롤러 네트워크를 통해 상기 MEC 서버로부터 상기 블록 정보를 수신하고,
상기 제2 모바일 피어는 D2D 네트워크를 통해 상기 적어도 일부의 제1 모바일 피어 중 인접한 모바일 피어로부터 상기 블록 정보를 수신하는,
MEC 서버.
9. The method of claim 8,
The plurality of mobile peers include at least some first mobile peers included in the cellular network peer group and the remaining second mobile peers included in the device to device (D2D) network peer group,
The first mobile peer receives the block information from the MEC server through a cellular network,
wherein the second mobile peer receives the block information from a neighboring mobile peer among the at least some first mobile peers through a D2D network;
MEC Server.
청구항 9에 있어서,
상기 블록 전송 지연 시간 정보는,
상기 제1 모바일 피어의 경우, 블록 정보의 크기 및 상기 MEC 서버로부터 상기 제1 모바일 피어로의 데이터 속도를 기반으로 도출되고,
상기 제2 모바일 피어의 경우, 블록 정보의 크기 및 상기 인접한 모바일 피어로부터 상기 제2 모바일 피어로의 데이터 속도를 기반으로 도출되는,
MEC 서버.
10. The method of claim 9,
The block transmission delay time information is
In the case of the first mobile peer, it is derived based on the size of block information and the data rate from the MEC server to the first mobile peer,
In the case of the second mobile peer, it is derived based on the size of block information and the data rate from the neighboring mobile peer to the second mobile peer,
MEC Server.
KR1020200153474A 2020-11-17 2020-11-17 Method and apparatus for multicasting block data based on scalable peer to peer overlay structure KR102263461B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200153474A KR102263461B1 (en) 2020-11-17 2020-11-17 Method and apparatus for multicasting block data based on scalable peer to peer overlay structure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200153474A KR102263461B1 (en) 2020-11-17 2020-11-17 Method and apparatus for multicasting block data based on scalable peer to peer overlay structure

Publications (1)

Publication Number Publication Date
KR102263461B1 true KR102263461B1 (en) 2021-06-09

Family

ID=76415075

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200153474A KR102263461B1 (en) 2020-11-17 2020-11-17 Method and apparatus for multicasting block data based on scalable peer to peer overlay structure

Country Status (1)

Country Link
KR (1) KR102263461B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190118361A (en) * 2018-04-10 2019-10-18 애니파이 주식회사 Data sharing apparatus and method
KR102073929B1 (en) * 2018-08-02 2020-02-05 (주)유비벨록스모바일 Vehicle Emergency Log system using blockchain network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190118361A (en) * 2018-04-10 2019-10-18 애니파이 주식회사 Data sharing apparatus and method
KR102073929B1 (en) * 2018-08-02 2020-02-05 (주)유비벨록스모바일 Vehicle Emergency Log system using blockchain network

Similar Documents

Publication Publication Date Title
Wu et al. Big data analysis-based secure cluster management for optimized control plane in software-defined networks
Mukherjee et al. Survey of fog computing: Fundamental, network applications, and research challenges
Yang et al. Integrated blockchain and edge computing systems: A survey, some research issues and challenges
Zhang et al. Edge intelligence and blockchain empowered 5G beyond for the industrial Internet of Things
Memon et al. DualFog-IoT: Additional fog layer for solving blockchain integration problem in Internet of Things
Gai et al. Dynamic energy-aware cloudlet-based mobile cloud computing model for green computing
Hassan et al. Priority, network and energy‐aware placement of IoT‐based application services in fog‐cloud environments
Xu et al. Dynamic resource provisioning for workflow scheduling under uncertainty in edge computing environment
Veeramanikandan et al. Publish/subscribe based multi-tier edge computational model in Internet of Things for latency reduction
Maiti et al. An effective approach of latency-aware fog smart gateways deployment for IoT services
Fu et al. Performance optimization for blockchain-enabled distributed network function virtualization management and orchestration
CN109905409A (en) Things-internet gateway real time bidirectional communication system based on Socket.IO
CN104092756A (en) Cloud storage system resource dynamic allocation method based on DHT mechanism
CN110324303A (en) The data slot of internet of things equipment recombinates
Salimian et al. Toward an autonomic approach for Internet of Things service placement using gray wolf optimization in the fog computing environment
JP2018508174A (en) Method and system for providing energy services
Laroui et al. SO‐VMEC: service offloading in virtual mobile edge computing using deep reinforcement learning
Soret et al. Learning, computing, and trustworthiness in intelligent IOT environments: Performance-energy tradeoffs
US20230136048A1 (en) Federated distribution of computation and operations using networked processing units
CN107924332A (en) The method and system of ICT service provisions
Liu et al. A survey of state-of-the-art on edge computing: Theoretical models, technologies, directions, and development paths
Zheng et al. Task scheduling using edge computing system in smart city
Kim et al. Quick block transport system for scalable Hyperledger fabric blockchain over D2D-assisted 5G networks
De et al. BCoT: introduction to blockchain-based internet of things for industry 5.0
Singh et al. Efficient content retrieval in fog zone using Nano‐Caches

Legal Events

Date Code Title Description
GRNT Written decision to grant