반응형

멤풀(Mempool)이란?


멤풀이란 아직 블록에 들어가지 않은 상태의 트랜잭션들이 어떤 공간에 있는 것을 의미한다.


블록체인에서 블록은 10분의 주기를 가지고 새로운 블록을 생성하게 되는데 


이때 블록을 생성하기 앞서 아직 블록에 쌓이지 않은 즉, 멤풀에 남아있는 트랜잭션을 블록에 포함시키게 된다.


마이너는 대기중인 트랜잭션을 새롭게 생성할 블록에 포함시킨 후 nonce값을 차례대로 대입하며 블록을 생성해내고 nonce값을 맞췄을 경우 블록체인에 새로운 블록을 연결하기 위해 각 노드에 대해 해당하는 블록을 전파한다.


이러한 블록을 전달 받은 노드들은 유효성을 검증하고 검증된 블록을 자신의 블록체인에 업데이트 한다.


멤풀에 트랜잭션이 들어오는 과정은 다음과 같다.

-> 각 노드는 해당 트랜잭션이 유효한지 검증한 후 검증된 트랜잭션을 멤풀(Mempool)에 넣게 된다.


이때 멤풀에서 블록으로 담기는 우선순위거래 수수료가 높은 순서로 멤풀에서 빠져나가게 된다.


따라서 거래 수수료를 높이면 높일수록 트랜잭션 처리가 빨리 될 것이고, 거래 수수료가 낮은 트랜잭션은 멤풀에서 오랫동안 머물 확률이 높아지게 되는 것이다.


마지막으로 멤풀에 대기중인 트랜잭션이 블록에 담기게되고, 그 트랜잭션을 포함하고있는 블록이 블록체인에 연결되게 되면 멤풀에서 해당 트랜잭션은 삭제되게 된다. (이때 블록에 담기고 블록체인에 연결되는 순간이 1 컨펌임을 알 수 있다.)


여기서보면 알수있는 내용은 멤풀에 있는 트랜잭션은 0 컨펌인 상태이고, 블록체인에 연결되는 순간 1 컨펌이 됨을 알 수 있다.


컨펌 관련 내용은 다음을 참고하자 :: http://www.crocus.co.kr/1235

실제 멤풀 조회 사이트는 다음과 같다 :: https://blockchain.info/ko/charts/mempool-size







반응형

'Applied > Blockchain' 카테고리의 다른 글

이더리움 가스(Ethereum Gas)  (2) 2018.05.01
Solidity 프로그래밍 기초 - 1  (2) 2018.04.30
블록체인 노드(Blockchain Node)  (0) 2018.04.28
머클트리(Merkle Tree)  (0) 2018.04.23
작업 증명(Proof of Work, PoW)  (0) 2018.04.21