[Blockchain A-Z] 암호화폐 직관적 이해 : 멤풀(Mempool) 작동 원리

yebeen·2022년 8월 31일
0

Blockchain A-Z

목록 보기
26/43
post-thumbnail

분산 P2P 네트워크에서 멤풀의 작동 원리에 대해 살펴보겠습니다.

분산 P2P 네트워크에서의 멤풀(Mempool)

노드라고 불리는 네트워크 내 참여자들이 이용하는 컴퓨터를 노드라고 하며 이들은 채굴자가 아니라 해당 네트워크에서 거래하고 서로에게 비트코인 또는 다른 암호화폐를 보내는 등의 활동을 하는 사람들 입니다.

이들 일부는 채굴자가 되며 각 참여자에게는 멤풀이 있습니다. 여기서 중요한 점은 각 참여자가 노드이든 채굴자든 모두 멤풀을 하나씩 가지고 있습니다.
이는 분산 P2P 네트워크에서는 모두가 공유하는 하나의 멤풀은 존재하지 않음을 나타냅니다.
따라서 멤풀에는 중앙화가 존재하지 않고 각 참가자에게 개별적으로 존재하게 됩니다.

그리고 또 하나 짚을 점은 멤풀은 블록체인이 아닌 블록에 추가되기 전 모이는 트랜잭션을 위한 집결지라는 것 입니다.
트랜잭션이 블록 생성 주기에 맞춰 발생해야 할 필요는 없기 때문에 이 트랜잭션들이 블록에 추가되기 전 잠깐 모이는 곳입니다.


멤풀(Mempool) 작동 원리

예를 들어 A가 누군가에게 송금을 하고자 합니다. A는 트랜잭션을 발생시키고 이 트랜잭션은 A의 멤풀에 추가됩니다.

그리고 해당 트랜잭션은 네트워크를 통해 브로드캐스팅 또는 릴레이 됩니다. 이후 채굴자를 포함해 가장 가까운 노드로 릴레이 되고 해당 트랜잭션이 멤품에 추가됩니다.

이때 모든 노드가 해당 트랜잭션의 유효성을 확인하기 위해 수 많은 검사를 수행합니다.
즉, 단순히 가짜인지를 확인하는 것 부터 서명의 유효성 등을 확인합니다.

이렇게 네트워크 전반에 릴레이 되고 해당 트랜잭션은 네트워크의 모든 멤풀에 추가됩니다.

채굴자가 트랜잭션을 발생시키면 위와 같은 방법으로 릴레이 될 것입니다.

이처럼 멤풀에는 더 많은 트랜잭션이 추가되고 블록이 생성되면 2000개에 달하는 트랜잭션을 더 포함할 수도 있습니다.(블록의 크기는 1MB로 제한되지만 트랜잭션의 크기에 따라서 2000개에 달하는 트랜잭션도 포함할 수 있습니다.)

이 과정 중 채굴자가 다음 블록을 찾아 채굴하게 된다면 블록 구성을 미리 가지고 채굴을 하기때문에 블록 채굴을 성공하기 전에 선택한 기준에 따라 해당 블록에 어떤 트랜잭션이 존재할지 알 수 있습니다.

따라서 이미 블록 안에 있는 트랜잭션은 멤풀에서 제거되고 해당 블록은 네트워크를 통해 릴레이 되고 추가되며 동일한 트랜잭션이 해당 참여자들의 멤플에서 제거됩니다.

profile
🐣🐥

0개의 댓글