Home / Knowledge / 핵심 문제: 클러스터 멤풀, 문제는 조각으로 나누면 더 쉽다

핵심 문제: 클러스터 멤풀, 문제는 조각으로 나누면 더 쉽다

핵심 문제: 클러스터 멤풀, 문제는 조각으로 나누면 더 쉽다 1

클러스터 멤풀1은 멤풀이 거래를 조직하고 정렬하는 방식을 완전히 재구성한 것으로, Suhas Daftuar와 Pieter Wuille가 구상하고 구현했습니다. 이 디자인은 전체 아키텍처를 단순화하고, 거래 정렬 논리를 채굴자 인센티브와 더 잘 맞추며, 2계층 프로토콜의 보안을 개선하는 것을 목표로 합니다. 2025년 11월 25일 PR #336292에서 비트코인 코어에 병합되었습니다. 

멤풀은 여러 가지 이유로 노드가 추적해야 하는 대기 중인 거래의 거대한 집합입니다: 수수료 추정, 거래 교체 검증, 그리고 채굴자라면 블록 구성. 

이는 노드의 단일 기능이 처리해야 할 다양한 목표입니다. 비트코인 코어는 버전 30.0까지 멤풀을 두 가지 방식으로 조직하여 이러한 기능을 지원합니다. 이는 특정 거래의 상대적 관점에서: 거래와 그 자식(하위 거래)의 결합된 수수료율(하위 거래 수수료율)과 거래와 그 부모(상위 거래)의 결합된 수수료율(상위 거래 수수료율)입니다. 

이들은 멤풀이 가득 찼을 때 어떤 거래를 퇴출할지 결정하고, 새로운 블록 템플릿을 구성할 때 어떤 거래를 먼저 포함할지 결정하는 데 사용됩니다. 

내 멤풀은 어떻게 관리되나요?

채굴자가 블록에 거래를 포함할지 결정할 때, 그들의 노드는 해당 거래와 블록에서 유효하기 위해 먼저 확인해야 할 모든 상위 거래를 살펴보고, 이들 전체의 평균 바이트당 수수료율을 고려합니다. 만약 그 거래 그룹이 블록 크기 제한 내에 있으며 다른 거래들보다 수수료에서 경쟁력을 갖춘다면, 다음 블록에 포함됩니다. 이는 모든 거래에 대해 수행됩니다.

노드가 멤풀이 가득 찼을 때 어떤 거래를 퇴출할지 결정할 때, 각 거래와 그 자식 거래를 살펴보며, 멤풀이 이미 더 높은 수수료율을 지불하는 거래들로 가득 차 있다면 거래와 모든 자식을 퇴출합니다. 

핵심 문제: 클러스터 멤풀, 문제는 조각으로 나누면 더 쉽다 2

위의 거래 그래프를 보면, 수수료율이 괄호 안에 (상위 거래 수수료율, 하위 거래 수수료율)로 표시되어 있습니다. 거래 E를 살펴보는 채굴자는 아마도 단일 소규모 상위 거래와 함께 매우 높은 수수료를 지불하는 작은 거래를 다음 블록에 포함할 것입니다. 그러나 노드의 멤풀이 가득 차면, 두 개의 대규모 자식을 가진 거래 A를 살펴보고 상대적으로 낮은 수수료를 지불하는 경우, 아마도 이를 퇴출하거나 방금 수신한 경우 수용하지 않을 것입니다. 

이 두 가지 순위 또는 정렬은 서로 완전히 상충합니다. 멤풀은 채굴자가 채굴할 거래를 신뢰성 있게 전파해야 하며, 사용자는 자신의 로컬 멤풀이 채굴자가 채굴할 거래를 정확하게 예측한다고 확신해야 합니다. 

이러한 방식으로 기능하는 멤풀은 다음과 같은 이유로 중요합니다:

  • 채굴 분산화: 모든 채굴자에게 가장 수익성 있는 거래 집합 제공
  • 사용자 신뢰성: 정확하고 신뢰할 수 있는 수수료 추정 및 거래 확인 시간
  • 2계층 보안: 2계층 프로토콜의 온체인 집행 거래의 신뢰할 수 있고 정확한 실행

현재 멤풀의 동작은 채굴 인센티브의 현실과 완전히 일치하지 않으며, 이는 거래가 채굴자에게 도달할지에 대한 불확실성을 초래하고, 비공식 방송 채널에 대한 압력을 가해 첫 번째 문제를 악화시킬 수 있는 맹점을 생성합니다. 

이는 확인되지 않은 거래를 교체할 때 특히 문제가 됩니다. 이는 채굴자가 더 빨리 교체를 포함하도록 유도하기 위해서든, 온체인에서 시행되는 2계층 프로토콜의 일환으로서든 마찬가지입니다. 

기존 동작에 따른 교체는 거래의 웹의 형태와 크기에 따라 예측할 수 없게 됩니다. 간단한 수수료 인상 상황에서는 교체 거래가 전파되지 않거나 교체가 실패할 수 있습니다. 심지어 교체를 채굴하는 것이 채굴자에게 더 나은 경우에도 말입니다. 

2계층 프로토콜의 맥락에서 현재 논리는 참가자가 필요한 상위 거래를 멤풀에서 퇴출시키거나, 악의적인 참가자가 생성한 하위 거래 때문에 현재 규칙 하에서 다른 참가자가 필요한 하위 거래를 멤풀에 제출할 수 없게 만들 수 있습니다. 

이 모든 문제는 이러한 일관되지 않은 포함 및 퇴출 순위와 그들이 생성하는 인센티브 불일치의 결과입니다. 단일 글로벌 순위를 갖는 것이 이러한 문제를 해결할 수 있지만, 모든 새로운 거래에 대해 전체 멤풀을 전 세계적으로 재정렬하는 것은 비현실적입니다. 

모든 것이 그래프일 뿐입니다

핵심 문제: 클러스터 멤풀, 문제는 조각으로 나누면 더 쉽다 3

서로 의존하는 거래는 그래프, 즉 “경로”의 방향이 있는 시리즈입니다. 거래가 과거에 생성된 출력물을 소비할 때, 그 과거 거래와 연결됩니다. 추가로 두 번째 과거 거래에서 생성된 출력물을 소비할 때, 두 개의 역사적 거래가 서로 연결됩니다. 

확인되지 않은 경우, 이러한 거래 체인은 반드시 이전 거래가 먼저 확인되어야 나중 거래가 유효합니다. 결국, 아직 생성되지 않은 출력물을 소비할 수는 없습니다. 

이는 멤풀을 이해하는 데 중요한 개념으로, 명시적으로 방향성이 있습니다. 

모든 것이 그래프일 뿐입니다. 

조각이 클러스터를 만들고 클러스터가 멤풀을 만듭니다

핵심 문제: 클러스터 멤풀, 문제는 조각으로 나누면 더 쉽다 4

클러스터 멤풀에서 클러스터의 개념은 서로 직접적으로 관련된 확인되지 않은 거래의 그룹을 의미합니다. 즉, 클러스터 내의 다른 거래가 생성한 출력물을 소비하거나 그 반대의 경우입니다. 이는 새로운 멤풀 아키텍처의 기본 단위가 됩니다. 전체 멤풀을 분석하고 정렬하는 것은 비현실적이지만, 클러스터를 분석하고 정렬하는 것은 훨씬 더 관리하기 쉬운 작업입니다. 

각 클러스터는 조각으로 나뉘며, 클러스터의 작은 거래 집합으로, 이는 바이트당 수수료율이 가장 높은 것부터 가장 낮은 것까지 정렬됩니다. 따라서 예를 들어 클러스터 (A)에서 수수료율이 가장 높은 것부터 가장 낮은 것까지의 조각은: [A,D], [B,E], [C,F], [G, J], 마지막으로 [I, H]입니다. 

이렇게 하면 모든 조각과 클러스터를 미리 정렬할 수 있으며, 전체 멤풀의 정렬을 더 효율적으로 수행할 수 있습니다. 

채굴자는 이제 각 클러스터에서 가장 높은 수수료율의 조각을 간단히 가져와 템플릿에 넣을 수 있으며, 여전히 공간이 있다면 다음으로 높은 수수료율의 조각으로 내려가며, 블록이 대략 가득 찰 때까지 계속 진행합니다. 이는 모든 사용 가능한 거래에 접근할 수 있다고 가정할 때 최적의 블록 템플릿 구성 방법입니다. 

노드의 멤풀이 가득 차면, 각 클러스터에서 가장 낮은 수수료율의 조각을 간단히 가져와 멤풀에서 퇴출하기 시작하여 설정된 한도를 초과하지 않도록 합니다. 만약 그것이 충분하지 않다면, 다음으로 낮은 수수료율의 조각으로 넘어가고, 계속해서 멤풀 한도 내에 들어올 때까지 진행합니다. 이렇게 하면 채굴 인센티브와 일치하지 않는 이상한 엣지 케이스를 제거할 수 있습니다. 

교체 논리도 대폭 단순화됩니다. 클러스터 (A)와 클러스터 (B)를 비교할 때 거래 K가 G, I, J, H를 교체한 경우, 충족해야 할 유일한 기준은 새로운 조각 [K]가 [G, J] 및 [I, H]보다 높은 조각 수수료율을 가져야 하며, [K]는 [G, J, I, H]보다 총 수수료를 더 많이 지불해야 하고, K는 교체하는 거래 수의 상한을 초과할 수 없습니다. 

클러스터 패러다임에서는 이러한 다양한 사용이 서로 일치합니다. 

새로운 멤풀

이 새로운 아키텍처는 거래 그룹 한계를 단순화할 수 있게 해주며, 멤풀의 거래가 가질 수 있는 확인되지 않은 상위 거래의 수에 대한 이전의 제한을 제거하고, 클러스터당 64 거래 및 101 kvB의 글로벌 클러스터 한도로 대체합니다. 

이 한도는 클러스터와 그 조각을 미리 정렬하는 계산 비용을 실용적으로 유지하기 위해 필요합니다. 

이것이 클러스터 멤풀의 진정한 핵심 통찰입니다. 조각과 클러스터를 상대적으로 작게 유지함으로써, 최적의 블록 템플릿 구성을 저렴하게 만들고, 거래 교체 논리(수수료 인상)를 단순화하며, 따라서 2계층 보안을 개선하고, 퇴출 논리를 수정할 수 있습니다. 모든 것을 한 번에 수행합니다. 

템플릿 구축을 위한 비싼 실시간 계산이나 수수료 인상에서의 예측 불가능한 행동이 더 이상 없습니다. 멤풀이 다양한 상황에서 거래 조직을 관리하는 방식에서 인센티브의 불일치를 수정함으로써, 멤풀은 모든 사람에게 더 잘 작동합니다. 

클러스터 멤풀은 수년 동안 진행된 프로젝트로, 모든 채굴자에게 수익성 있는 블록 템플릿이 열려 있도록 하고, 2계층 프로토콜이 구축할 수 있는 건전하고 예측 가능한 멤풀 동작을 가지도록 하며, 비트코인이 분산된 통화 시스템으로 계속 기능할 수 있도록 하는 데 실질적인 영향을 미칠 것입니다. 

클러스터 멤풀이 어떻게 구현되고 작동하는지 더 깊이 파고들고 싶은 분들을 위해, 다음 두 개의 Delving Bitcoin 스레드를 읽어보실 수 있습니다:

고급 구현 개요 (디자인 근거 포함): https://delvingbitcoin.org/t/an-overview-of-the-cluster-mempool-proposal/393 

클러스터 멤풀 수수료율 다이어그램 작동 방식: https://delvingbitcoin.org/t/mempool-incentive-compatibility/553 

핵심 문제: 클러스터 멤풀, 문제는 조각으로 나누면 더 쉽다 5

기회를 놓치지 마세요 핵심 문제 — 많은 코어 개발자들이 자신이 작업하는 프로젝트를 설명하는 기사를 포함하고 있습니다!

이 글은 비트코인 매거진 최신 인쇄판인 핵심 문제에 실린 편집자의 편지입니다. 전체 호에서 탐구된 아이디어에 대한 미리보기를 여기서 공유합니다.

[1] https://github.com/bitcoin/bitcoin/issues/27677 

[2] https://github.com/bitcoin/bitcoin/pull/33629 

관련 기사

마이애미 IT 직원, 전 상사로부터 190만 달러 비트코인 절도 혐의로 체포 1

마이애미 비트코인 절도, IT 직원 체포

마이애미의 한 남성이 경찰에 따르면 전 직장에서 거의 200만 달러 상당의 비트코인을 훔친 혐의로 여러 중범죄 혐의에 직면해 있습니다. 이

카사, 비트코인 보유자를 겨냥한 증가하는 사회 공학 공격에 대응하기 위해 네 가지 보안 기능 출시 1

사회 공학 공격에 대응하는 카사 기능

비트코인 보안 회사 카사는 2025년 암호화폐 도난의 대부분을 차지하는 공격 벡터인 사회 공학을 겨냥한 네 가지 기능을 출시했습니다. 이 기능은

마스터카드, 디지털 자산 전략을 강화하기 위해 뉴욕 비트라이센스 확보 1

마스터카드, 비트라이센스 획득

마스터카드는 뉴욕주 금융 서비스국(NYDFS)으로부터 비트라이센스를 받았으며, 이는 이 결제 거대 기업이 미국에서 가장 엄격한 암호화 규제 프레임워크 중 하나 아래에서

크라켄, 비트코인 보관소 출시 - BTC 보유에 대한 수익 제공 1

비트코인 보관소 | 크라켄의 새로운 금융 솔루션

크라켄은 고객이 자산을 판매하지 않고도 비트코인 보유량에 대해 BTC 기준 보상을 받을 수 있는 새로운 제품인 비트코인 볼트를 크라켄 어

폴드, 비트코인 신용 카드 성장을 위한 1억 5천만 달러 유치 1

비트코인 신용 카드, Fold의 성장 동력

Fold Holdings, Inc., 최초의 상장된 비트코인 금융 서비스 회사가 Encina Lender Finance, LLC와 4년간의 고정 담보 회전 신용 시설에 진입했습니다.

DDC, 한 주에 비트코인을 두 번 구매하며 자산을 14% 증가시켜 희석 없이 재무를 성장시킵니다. 1

비트코인으로 DDC 자산 14% 증가

DDC Enterprise Limited (NYSE American: DDC)는 수요일에 131 비트코인을 구매하여 기업 비트코인 금고를 2,714 BTC로 확장했다고 발표했습니다. 뉴욕에 본사를 둔