Trusted

멤풀과 작동 원리에 대한 모든 것 [2024년]

6 mins
업데이트 Sangho Hwang

암호화폐 거래를 해본 적이 있다면 종종 거래가 지연되는 것을 경험해 보셨을 것입니다. 이러한 지연된 거래는 보통 멤풀이라고 하는 곳에 보관됩니다. 이번 글에서는 멤풀이 무엇인지, 어떻게 작동하는지, 왜 멤풀이 암호화폐 거래에서 필수적인 부분인지에 대해 살펴보겠습니다.

멤풀이란 무엇인가요?

멤풀은 처리되지 않은 트랜잭션이 저장되는블록체인의 노드 대기실과 같습니다 . 이곳에서 트랜잭션은 블록체인에 추가되기 전에 줄을 서서 대기합니다 . 멤풀이라는 용어는 ‘메모리(memory)’와 ‘풀(pool)‘이라는 두 단어의 조합입니다. 블록체인 기술의 맥락에서, 이 풀은 미확인 트랜잭션이 블록에 추가되기 전에 효율적으로 관리될 수 있도록 합니다.

비트코인은 멤풀 개념을 도입하고 활용한 최초의 블록체인입니다. 이후 이더리움과 같은 다른 블록체인도 이 방식을 채택했습니다. 다른 블록체인에서는 멤풀을 다른 용어로 사용할 수 있지만, 대개 몇 가지 유형으로 나뉩니다. 예를 들어 폴카닷 블록체인은 ‘트랜잭션 큐(Transaction Queue)’라는 용어를 사용하여 멤풀을 표현합니다).

이 규칙의 예외는 네이티브 멤풀이 없는 솔라나(SOL)입니다. 롤업(예: 아비트럼과 옵티미즘)은 일반적으로 멤풀을 사용하지 않는 블록체인의 또 다른 예입니다.

블록체인 트랜잭션에서 멤풀의 역할

멤풀은 블록체인 노드 운영에 있어 중요한 역할을 합니다. 트랜잭션이 완료되어 블록체인에 기록되려면 먼저 트랜잭션이 블록에 추가되어야 합니다. 그러나 블록체인 네트워크의 모든 노드가 새 블록을 생성할 수 있는 것은 아닙니다.

비트코인처럼 작업 증명을 사용하는 블록체인의 경우 채굴자만 새 블록에 트랜잭션을 추가할 수 있습니다. 이더리움과 같이 지분 증명 메커니즘을 사용하는 블록체인의 경우, 검증자 또는 제안자만 블록에 트랜잭션을 추가할 수 있습니다. 이러한 블록 검증 알고리즘은 암호화폐 거래의 무결성과 보안을 유지하는 데 중요한 역할을 합니다.

트랜잭션을 시작한 후 사용자는 채굴자나 검증자가 트랜잭션을 승인하고 블록체인에 추가할 때까지 기다려야 합니다. 이 과정은 즉시 이루어지지 않습니다. 대신 트랜잭션이 시작된 시점과 완료될 시점 사이에 지연이 발생합니다. 이 시간 동안 트랜잭션은 멤풀에 저장되어 확인을 기다립니다.

멤풀의 작동 원리

사용자가 트랜잭션을 시작하면 트랜잭션이 노드로 전송됩니다. 그러면 노드는 트랜잭션을 멤풀에 추가하고 대기열에 넣어 유효성 검사를 기다립니다. 트랜잭션의 유효성이 확인되면 보류 중으로 표시됩니다. 채굴자는 보류 중으로 표시된 트랜잭션만 새 블록에 추가할 수 있습니다.

블록체인에는 하나의 멤풀만 있는 것이 아니라는 점을 알아두셔야 합니다. 오히려 블록체인 네트워크의 모든 노드에는 고유한 트랜잭션 메모리 풀이 있습니다. 예를 들어 비트코인 블록체인의 각 노드에는 공개 원장에 추가되기를 기다리는 자체 트랜잭션 풀이 있습니다.

다음은 저희가 구축한 이더리움 메모리 풀의 데모입니다. 수수료, 주소, 그리고 여러분이 생각할 수 있는 거의 모든 매개변수를 기준으로 트랜잭션을 필터링할 수 있습니다. 이러한 프로그래밍 가능성은 멤풀을 각 노드마다 고유하게 만드는 요소입니다.

이더리움 멤풀 / 출처:비인크립토

개별 노드의 멤풀이 모여 집단 멤풀을 구성합니다. 트랜잭션 처리에 대한 이러한 탈중앙화된 접근 방식은 단일 장애 지점으로 인해 미확인 트랜잭션의 흐름이 중단되지 않도록 보장합니다.

멤풀 역학 및 트랜잭션 수명 주기

멤풀의 역학 관계와 트랜잭션 수명 주기를 설명하기 위해 친구에게 비트코인 0.01개를 전송한다고 가정해 보겠습니다.

  1. 먼저 친구의 지갑 주소를 입력하고 블록체인 트랜잭션 수수료를 수락한 다음 보내기를 누릅니다.
  2. 트랜잭션이 가장 가까운 노드의 멤풀에 대기 중인 트랜잭션으로 추가됩니다.
  3. 다음으로, 트랜잭션이 네트워크의 다른 노드로 브로드캐스트되지만 아직 블록체인에서 사용할 수 없습니다. 대신, 모든 노드는 개별 테스트를 수행하여 트랜잭션이 진짜인지 확인합니다.
  4. 노드가 트랜잭션을 승인하면 트랜잭션의 상태가 ‘대기 중(queued)’에서 ‘보류 중(pending)’으로 변경됩니다.
  5. 결국 보류 중인 트랜잭션은 채굴자가 선택해 새 블록에 추가합니다.
  6. 그 다음으로, 채굴자가 이 새 블록을 모든 노드에 다시 전송합니다. 이렇게 하면 모든 노드가 새 블록에 포함된 모든 거래 정보를 공유하게 됩니다.
  7. 이 단계에서 트랜잭션을 여전히 멤풀에 저장하고 있는 노드는 트랜잭션을 삭제합니다.
  8. 마지막으로 트랜잭션이 완료되고 친구는 비트코인 0.01개를 받게 됩니다.

이 라이프사이클은 트랜잭션 처리량의 중요성과 트랜잭션의 흐름을 유지하는 블록체인 노드의 역할을 강조합니다.

멤풀 혼잡과 백로그

트랜잭션 멤풀의 정체는 블록 공간에 대한 수요가 한 블록에 들어갈 수 있는 트랜잭션 수를 초과할 때 발생합니다. 여러 가지 요인으로 인해 멤풀 백로그가 발생할 수 있습니다. 다음은 다음과 같습니다:

  • 이벤트 또는 뉴스: 토큰 출시, 에어드랍, 유명 인사의 지원 등 블록체인 업계에 직접적인 영향을 미치는 이벤트와 뉴스는 트랜잭션 수요를 갑자기 급증시킬 수 있습니다. 이러한 급증은 일시적인 멤풀 백로그로 이어질 수 있습니다.
  • 포크 또는 네트워크 업그레이드: 포크나 블록체인 네트워크 업그레이드와 같은 네트워크 활동으로 인해 네트워크의 노드가 변경 사항을 업데이트하면서 일시적인 멤풀 정체가 발생할 수 있습니다.
  • 네트워크의 정체: 블록체인 네트워크에 거래량이 많으면 사용 가능한 블록 공간에 압력이 가해져 결국 멤풀 정체가 발생할 수 있습니다. 예를 들어, 비트코인 블록체인의 한 블록에 있는 평균 트랜잭션 수는 약 3100개입니다. 보류 중인 트랜잭션 수가 몇 시간 동안 이 수치를 크게 초과하면 네트워크가 혼잡해지고, 결과적으로 멤풀도 혼잡해질 것입니다.
블록당 비트코인 평균 트랜잭션 차트: Ycharts.com

사용자와 개발자는 이러한 요인과 멤풀 정체에 미치는 영향에 대해 미리 숙지하고 있는 것이 좋습니다. 이를 통해 잠재적인 지연을 예측하고 가스 요금을 절약할 수 있습니다. 또한 트랜잭션의 우선순위를 관리하고 효율적인 트랜잭션 처리를 할 수 있습니다.

거래 우선순위 수수료 관리

많은 트랜잭션이 동시에 발생하는 경우, 멤풀 내에서 어떤 트랜잭션에 우선순위를 부여할지 결정하는 몇 가지 요소가 있습니다. 아래에서 그 중 몇 가지를 소개해드리겠습니다.

멤풀 내에서 트랜잭션 실행 순서를 결정하는 주요 요인 중 하나는 각 트랜잭션에 부과되는 수수료입니다. 채굴자와 검증자는 수익에 따라 움직이며, 새 블록에 어떤 트랜잭션을 추가할지 선택할 수 있습니다. 당연히 이들은 수수료가 높은 트랜잭션을 선호합니다.

따라서 트랜잭션과 관련된 수수료는 블록에 포함될 가능성에 큰 영향을 미칩니다. 채굴자는 일반적으로 트랜잭션 데이터 단위당 수수료를 기준으로 멤풀 내에서 트랜잭션을 구성합니다.

이러한 수수료 기반 접근 방식은 멤풀 내에서 경쟁 시장을 형성하여 효과적인 트랜잭션 우선순위 지정의 필요성을 강조합니다. 사용자는 빠른 트랜잭션 완료를 위해 더 높은 수수료를 지불하거나 대기 시간이 길어지는 대신 낮은 수수료를 지불하는 것 중 하나를 선택해야 합니다.

멤풀 동기화 및 블록 공간

멤풀은 블록에 추가되기를 기다리는 모든 트랜잭션의 일치하는 목록을 보관할 필요가 없습니다. 그러나 멤풀에서 제거할 수 있도록 이미 블록체인에 추가된 트랜잭션을 알고 있어야 합니다.

새로 생성된 블록이 네트워크의 노드들에게 전송되면, 노드들은 해당 블록의 정보를 확인하면서 서로 메모리풀(mempool)을 동기화하게 됩니다. 이렇게 하면 이미 처리된(채굴된) 거래는 제거되고, 아직 처리되지 않은 거래만 메모리풀에 남게 됩니다.

반면 블록 공간은 새 블록에 트랜잭션을 포함할 수 있는 용량입니다. 이 공간은 제한되어 있기 때문에 채굴자나 검증자는 가스 수수료가 높은 트랜잭션에 우선순위를 두고 나머지는 멤풀로 보내져 확인을 기다립니다.

효율적인 멤풀 동기화는 트랜잭션 처리량을 유지하고 블록체인 네트워크가 원활하게 작동하도록 하는 데 필수적입니다.

멤풀 크기와 퇴출

멤풀에 추가되는 모든 트랜잭션은 몇 킬로바이트(KB) 이하의 데이터 조각입니다. 트랜잭션을 구성하는 모든 바이트의 합이 멤풀의 크기입니다. 멤풀 크기가 크다는 것은 확인을 기다리는 트랜잭션이 많다는 것을 의미합니다. 또한 네트워크 트래픽이 급증하고 있음을 의미할 수도 있습니다.

멤풀 크기 차트 / 출처: 블록체인닷컴

멤풀에는 미리 정의된 최대 크기가 없지만, 노드는 멤풀의 크기 제한을 설정할 수 있습니다. 이는 일반적으로 비트코인의 경우 300MB로 설정됩니다. 멤풀이 이 임계값에 도달하면 노드는 최소 트랜잭션 수수료 요건을 적용할 수 있습니다. 이 한도보다 낮은 수수료율을 가진 트랜잭션은 멤풀에서 퇴출됩니다. 이렇게 함으로써 노드는 대기 중인 트랜잭션의 과부하로 인한 크래시를 방지할 수 있습니다.

멤풀 크기가 트랜잭션 수수료와 시간에 어떤 영향을 미치는지 이해하는 것은 사용자가 트랜잭션을 수행하기에 가장 좋은 시간을 선택할 수 있게 해주기 때문에 중요합니다. 비트코인 네트워크의 글로벌 멤풀 크기를 추적하는 웹사이트는 여러 곳이 있으며, ‘비트코인티커.co와 같은 사이트가 있습니다. 이러한 접근 방식은 트랜잭션 처리를 최적화하고 트랜잭션 백로그를 관리하는 데 핵심적인 역할을 합니다.

비트코인 및 이더리움 네트워크의 멤풀

이제 전 세계에서 가장 인기 있는 두 블록체인인 비트코인과 이더리움에서 멤풀이 어떻게 작동하는지 살펴보겠습니다.

비트코인

비트코인 네트워크를 통해 전송된 모든 유효한 트랜잭션은 블록체인에 즉시 추가되지 않습니다. 비트코인 멤풀에서 기다려야 합니다.

원래 비트코인의 거래 수수료는 트랜잭션 바이트당 사토시 수로 측정되었습니다. 그러나 이는 세그윗(SegWit) 업그레이드 이후 변경되었습니다. 이제 비트코인 멤풀의 트랜잭션은 가중치 단위로 측정됩니다.

업그레이드의 결과로 비트코인 블록은 이제 최대 4배 더 많은 트랜잭션을 수용할 수 있게 되었습니다.

이더리움

비트코인과 마찬가지로 이더리움 블록체인도 처음에는 이더리움 멤풀을 활용하여 블록에 추가되기를 기다리는 트랜잭션의 임시 저장소로 사용했습니다. 그러나 비트코인의 블록 크기는 크기에 따라 제한이 있고 이더리움은 가스 수수료에 따라 제한이 있습니다.

또한 이더리움이 작업 증명에서 지분 증명 합의 메커니즘으로 전환한 후 , 네트워크는 블록 빌더(Block builder)라는 개념을 도입했습니다.

블록 빌더는 트랜잭션을 기록해 블록을 구성할 수 있는 최적화된 트랜잭션 묶음을 생성하는 제3자 기관입니다. 블록 빌더는 메모리 풀에서 특정 트랜잭션의 순서를 바꾸거나 번들에 포함시키는 방식으로 이를 수행합니다. 최종적으로 제안자와 검증자에게 블록에 포함될 번들을 유료로 제공합니다.

블록의 가치는 블록에 포함된 트랜잭션에 따라 달라집니다. 따라서 블록 생성자가 가장 수익성이 높은 블록을 만들면 검증자가 우선순위를 정하고 더 빨리 확정할 가능성이 높기 때문에 인센티브를 제공합니다. 따라서 다른 블록체인과 마찬가지로 이더리움에서 더 많은 수수료를 지불할수록 트랜잭션이 더 빨리 확정될 확률이 높아집니다.

멤풀, 탈중앙화 거래의 핵심

멤풀은 블록체인 트랜잭션을 구성하는 중요한 요소입니다. 멤풀은 확인되지 않은 트랜잭션이 검증을 기다리고 궁극적으로 새로운 블록에 포함되기를 기다리는 일종의 대기실 역할을 합니다. 암호화폐 사용자가 트랜잭션 처리를 최적화하고 트랜잭션 백로그를 효과적으로 관리하려면 트랜잭션 대기와 검증, 수수료 우선순위 지정과 같은 멤풀의 메커니즘을 이해하는 것이 필수적입니다.

최고의 암호화폐 거래소
BYDFi BYDFi 보기
Coinrule Coinrule 보기
Phemex Phemex 보기
BingX BingX 보기
ChainGPT ChainGPT 보기
최고의 암호화폐 거래소
BYDFi BYDFi 보기
Coinrule Coinrule 보기
Phemex Phemex 보기
BingX BingX 보기
ChainGPT ChainGPT 보기
최고의 암호화폐 거래소

비인크립토 웹사이트에 포함된 정보는 선의와 정보 제공의 목적을 위해 게시됩니다. 웹사이트 내 정보를 이용함에 따라 발생하는 책임은 전적으로 이용자에게 있습니다.
비인크립토는 투자가이드를 통해 독자에게 유익한 양질의 교육 콘텐츠를 제공하기 위해, 콘텐츠를 검증하고 연구하는 데 많은 시간을 할애하고 있습니다.
비인크립토의 파트너사는 글이 게시되는 대가로 수수료를 제공할 수 있으나, 이는 공정하고 정직하고 유용한 콘텐츠 제작 프로세스에 어떠한 영향도 미치지 않습니다.

Sangho-Hwang.png
Sangho Hwang
미국 로스앤젤레스에서 비인크립토 기자로 일하고 있습니다. 경영정보학 학사와 저널리즘 석사를 취득했습니다. 국내외 언론사에서 방송 및 신문기자로 10년 활동했습니다. 지역 문화와 사회 문제에 관한 책 4권을 출간했습니다.
READ FULL BIO
스폰서
스폰서