병렬 실행 시대가 도래하다, Monad 위의 MEV 패턴을 살펴보다
저자:APRIORI
편집:심조 TechFlow
소개
블록체인 성능을 향상시켜 대규모 애플리케이션을 구현하는 과정에서, Monad는 비동기 I/O, 최적화된 Patricia Trie, 지연 실행 및 낙관적 동시성 제어와 같은 일련의 저수준 최적화 조치를 통해 이더리움 가상 머신(EVM) 모델을 효과적으로 최적화했습니다. 이러한 개선은 탈중앙화를 희생하지 않으면서 이더리움과 같은 플랫폼에서 실행 병목 현상과 비효율적인 상태 접근 문제를 해결했습니다.
이 문서는 Monad에서 강력한 채굴자 추출 가치 경매 인프라(MEVA)를 구축할 가능성을 탐구하며, 이더리움의 Flashbots와 솔라나의 Jito Network의 귀중한 경험을 참고합니다.
우리는 몇 가지 핵심 사항을 강조하고자 합니다:
MEV는 모든 블록체인 네트워크의 고유한 특성입니다. 강력한 MEVA 인프라는 블록 생산 과정에서의 부정적인 외부성과 인센티브 불일치를 피하는 데 필수적입니다.
MEVA의 설계는 블록체인의 저수준 메커니즘, 특히 합의 실행 단계와 밀접하게 관련되어 있습니다. 향후 개선은 이러한 요소의 진화와 네트워크가 다양한 압력 하에서 어떻게 작동하는지에 따라 달라질 것입니다.
이더리움과 솔라나에서의 블록 생산의 역사적 추세는 Monad에서 MEVA 설계에 대한 참고 자료를 제공할 수 있습니다.
Monad와 같은 고성능, 지연 실행 블록체인에서는 MEVA가 시간 제한에 대응하기 위해 고빈도 거래와 유사한 확률적 블록 구축 및 검색 전략을 필요로 할 수 있습니다.
이러한 문제를 탐구함으로써, 우리는 Monad의 독특한 아키텍처와 성능 요구에 적합한 MEVA 인프라 설계에 대한 통찰력을 제공하고자 합니다.
이더리움의 MEVA 배경
이더리움 합의 실행 단계에서의 MEVA
이더리움에서는 합의가 먼저 실행되어야 합니다. 노드가 블록에 동의할 때, 그들이 동의하는 것은 블록 내의 거래 목록뿐만 아니라 블록 실행 후 요약된 머클 루트도 포함됩니다. 따라서 제안자는 제안 전 블록 내의 모든 거래를 실행해야 합니다. 동시에 검증 노드도 투표 전에 이러한 거래를 실행해야 합니다.
그림 1:MEV-Boost에서 제안자-구축자 분리(PBS)의 구축자 작업 흐름
그림 1은 MEV-Boost에서 제안자-구축자 분리(PBS)의 전형적인 구축자 작업 흐름을 보여줍니다. 구축자가 블록 구축을 완료한 후 이를 중계자에게 제출하고, 중계자는 블록을 실행 계층(EL) 클라이언트에 전달하여 시뮬레이션 및 유효성 검사를 수행합니다.
실행은 합의의 전제 조건이기 때문에, 구축자가 블록을 구축할 때 블록을 실행 계층(EL) 클라이언트에 전달하고 블록의 유효성을 검사하기 위해 시뮬레이션해야 합니다. 합의-실행 단계에서의 필수 역할 외에도, 시뮬레이션 단계는 구축자와 검색자에게 이점을 제공합니다.
구축자의 관점에서: 각 거래를 시뮬레이션함으로써, 구축자는 블록이 자신과 검증자에게 얼마나 가치가 있는지를 정확하게 추정할 수 있습니다. 그들은 또한 거래를 재정렬하여 롤백을 최소화하고 메모리 풀 및 번들 거래에서 추출된 가스 요금 또는 기본 팁을 극대화할 수 있습니다. 정확한 추정은 그들이 검증자에게 더 높은 가격을 제시할 수 있게 합니다.
검색자의 관점에서: 구축자가 거래가 블록체인에 올라가기 전에 롤백될 가능성이 있는 번들 거래를 필터링하기 때문에, 검색자는 전략의 실행을 보장할 수 있으며, 이는 결정성을 증가시킵니다. 또한, 검색자는 최신 블록 상태에 접근할 수 있습니다. 합의 계층(CL)이 새로운 블록을 전파할 때, 검색자는 해당 블록의 상태를 사용하여 수익성 있는 번들 거래를 구축하는 출발점으로 삼을 수 있습니다. 동시에, 구축자가 이제 더 많은 프로토콜 외 거래 또는 기능을 제공하여 검색자가 곧 구축될 블록 상태 정보를 얻을 수 있도록 하여 롤백 전략을 곧 블록에 추가할 수 있도록 하고 있습니다.
그러나 PBS의 발전은 블록 구축의 집중화를 초래했으며, 이는 전통적인 거래에서 회사가 전용 마이크로파 네트워크 채널을 경쟁하여 차익 거래 전략을 우선 실행하는 상황과 유사합니다.
네트워크의 성숙에 따라 제품이 반복됩니다
이제 MEVA가 이더리움의 발전에 따라 어떻게 진화했는지 살펴보겠습니다. 그림 2에 나와 있습니다.
그림 2:MEVA가 이더리움 네트워크 발전에 따라 진화한 시간 순서도
우선 가스 경매(PGA) 시대
그림 3에 나타난 바와 같이, 검색자는 수익성 있는 MEV 기회를 식별하고 스마트 계약 거래를 공개 메모리 풀에 제출합니다. 이러한 공개 가시성은 체인 상의 공개 입찰 및 일괄 경매를 초래하며, 실패한 거래조차도 가스 요금을 발생시킵니다.
이 시기에는 동일한(계정, 공지) 쌍의 거래와 지속적으로 증가하는 입찰로 인해 네트워크 혼잡 또는 합의 불안정을 초래하는 경쟁이 치열하고 비싼 비구조적 MEV 활동이 발생했습니다.
그림 3:간단한 우선 가스 경매 개요
Flashbots와 EIP-1559
이러한 문제를 해결하기 위해 Flashbots는 검색자와 블록 생산자(PoW 시대의 채굴자) 간의 중개 경매장으로서 중계자를 도입했습니다. 이 조치는 MEV 시장을 공개 입찰의 일괄 경매에서 봉인된 입찰로 전환했습니다. 그림 4에 나타난 바와 같이, 중계자는 공개 메모리 풀에서의 입찰 상승을 방지하고 보다 질서 있고 안전한 블록 생산 과정을 구축하는 데 기여합니다.
EIP-1559의 수수료 구조도 여기에 기여했습니다. 기본 수수료를 통해 입찰을 단순화했지만, 블록 내 거래 순서 문제는 여전히 우선 수수료에 의해 추진되고 있습니다. 실제로 많은 검색자는 이전에 코인베이스 송금을 통해 직접 채굴자에게 입찰했습니다. 그들은 더 이상 0-gas 번들 거래를 제출할 수 없게 되어 코인베이스 수수료에 대한 불만이 많아졌습니다.
그림 4:중계가 있는 MEVA
제안자와 구축자의 분리(PBS)
이더리움이 합병을 완료하고 지분 증명(PoS)으로 전환한 후, 제안자와 구축자의 분리(PBS)가 구현되어 블록 생산 파이프라인의 역할 분리를 더욱 최적화했습니다. 앞서 언급한 바와 같이, 중계자는 이제 블록 구축자와 제안자 간의 중개 역할을 하여 데이터 가용성과 블록의 유효성을 보장합니다. 제안자는 여러 구축자와 연결하여 다양한 비공식 거래를 할 수 있으므로, 구축자는 제안자에게 수수료를 지불하여 경쟁해야 합니다. 이러한 역동성은 그림 5에서 설명됩니다.
그림 5:PBS 시대의 MEVA
집중의 위험
이러한 역사적인 발전에도 불구하고, 구축자 시장에서 증가하는 집중 위험을 강조해야 합니다. 지난 1년 동안 상위 9명의 구축자는 지속적으로 50% 이상의 시장 점유율을 차지하여 높은 시장 집중도를 보여주었습니다. 현재의 집중 상태는 더욱 두드러지며, 상위 3명의 구축자가 90% 이상의 블록을 차지하고 있습니다.
그림 6:구축자의 시장 점유율, 이는 구축자 시장에서 일반적으로 존재하는 높은 집중도를 나타냅니다(이미지 출처)
솔라나의 Jito
Jito의 시스템 아키텍처
솔라나의 표준 MEVA로서 Jito는 솔라나에서 낮은 거래 비용으로 인한 높은 스팸 거래 행동을 해결하기 위해 만들어졌습니다. 실패한 거래의 비용(약 0.000005 SOL)이 예상 수익을 초과하지 않는 한, 스팸 거래 행동은 효과적으로 유도됩니다.
Jito Labs의 2022년 보고서에 따르면, 그 해에 96% 이상의 차익 거래 및 청산 시도가 실패했으며, 블록에는 50% 이상의 MEV 관련 거래가 포함되었습니다. 보고서는 또한 청산 로봇이 네트워크에 수백만 개의 반복 패킷을 보내 몇 천 건의 성공적인 청산을 완료하기 위해 노력했으며, 이로 인해 실패율이 99%를 초과했다고 지적했습니다.
그림 7:Jito의 솔라나에서의 MEVA
솔라나에서 MEV 외부성 문제의 심각성은 Jito가 블록 생산 과정에 질서와 확실성을 가져오기 위해 MEVA 계층을 개발하도록 촉구했습니다. Jito가 제안한 원래 MEVA 아키텍처를 그림 7에서 살펴보겠습니다.
Jito는 다음과 같은 구성 요소를 가지고 있습니다:
중계자 - 거래를 수신하고 이를 블록 엔진(또는 MEVA 공급망) 및 검증자에게 전달하는 대리인 역할을 합니다.
블록 엔진 - 중계자로부터 거래를 수신하고, 검색자를 조정하며, 번들을 수락하고, 번들 시뮬레이션을 실행하고, 최상의 거래 및 번들을 검증자에게 전달하여 처리합니다. 주목할 점은 Jito가 전체 블록 경매가 아닌 번들을 포함하기 위한 부분 블록 경매를 수행하며, 역사적으로 두 슬롯 내에서 80% 이상의 번들을 처리했습니다.
가짜 메모리 풀 - Jito-Solana 클라이언트를 통해 약 200 밀리초의 작업 시간 창을 생성하여 주문 흐름의 이산화 경매를 유도합니다. Jito는 2024년 3월 9일 이 메모리 풀을 종료했습니다.
Jito의 설계 선택
Jito 시스템 설계의 구체적인 구성 요소를 살펴보고 이러한 설계 선택이 솔라나의 블록 생산 과정에서 어떻게 유래했는지 고려해 보겠습니다.
Jito는 전체 블록 구축이 아닌 부분 블록 경매만 지원하는데, 이는 솔라나의 다중 스레드 실행 모델이 전역 스케줄링을 결여하고 있기 때문일 수 있습니다. 구체적으로, 그림 8은 각 스레드가 자신의 대기 실행 거래 큐를 유지하는 동안 병렬 스레드가 거래를 실행하는 모습을 보여줍니다. 거래는 스레드에 무작위로 할당되며, 우선 수수료 및 시간에 따라 로컬에서 정렬됩니다. 스케줄러 측에서 전역 정렬이 없는 상황(1.18.x 업데이트 이전)에서 솔라나의 거래는 본질적으로 스케줄러의 진동으로 인해 비결정성을 경험하게 됩니다. 따라서 MEVA에서 검색자나 검증자는 현재 상태를 신뢰할 수 없습니다.
그림 8:솔라나 클라이언트의 다중 스레드 실행 모델. MEVA의 번들 단계가 다중 스레드 큐에 독립 스레드로 추가된 점에 유의하십시오.
공학적 관점에서 Jito의 블록 엔진을 추가 스레드로 병렬 실행하는 것은 솔라나의 다중 스레드 아키텍처와 매우 잘 맞습니다. 번들 경매는 Jito 블록 엔진 스레드 내에서 우선 수수료 기반 정렬을 보장하지만, 번들이 항상 사용자 거래보다 전역적으로 우선하도록 보장할 수는 없습니다.
이 문제를 해결하기 위해 Jito는 번들 스레드에 블록 공간의 일부를 미리 할당하여 번들이 블록 내에 공간이 있도록 보장합니다. 비록 불확실성이 여전히 존재하지만, 이 방법은 전략 실행 성공 확률을 높입니다. 이는 또한 검색자가 경매에 참여하도록 유도하며, 네트워크에 스팸 거래를 보내는 것을 피하게 합니다. 번들을 위해 블록 공간을 확보함으로써, Jito는 질서 있는 경매를 촉진하고 거래 스팸의 혼란 효과를 완화하는 사이에서 균형을 이룰 수 있었습니다.
가짜 메모리 풀 제거
Jito의 광범위한 채택은 솔라나의 스팸 문제 완화에 긍정적인 성과를 거두었습니다. p2p 연구와 그림 9의 데이터에 따르면, Jito 클라이언트를 채택한 후 상대적인 블록 생산성이 크게 향상되었습니다. 이는 Jito가 2023년에 도입한 최적화된 블록 엔진 덕분에 거래 처리 효율성이 높아졌음을 나타냅니다.
그림 9:Jito가 솔라나의 스팸 문제를 효과적으로 완화한 증거. 이 그림은 p2p 팀이 수행한 연구에서 발췌한 것입니다.
상당한 진전을 이루었지만 여전히 많은 도전 과제가 남아 있습니다. Jito 번들이 블록을 부분적으로만 채우기 때문에, MEV 유도 거래는 여전히 Jito 경매 채널을 우회할 수 있습니다. 일부 증거는 그림 10의 Dune Dashboard에서 확인할 수 있으며, 2024년 이후 로봇 스팸 거래로 인해 네트워크에서 평균 50% 이상의 거래가 여전히 실패하고 있음을 보여줍니다.
그림 10:2022년 5월 이후 솔라나에서의 로봇 스팸 거래 활동의 Dune Dashboard(자세한 내용은 Dune)
2024년 3월 9일, Jito는 자사의 플래그십 메모리 풀을 중단하기로 결정했습니다. 이 결정은 memecoin 거래의 증가와 그에 따른 샌드위치 공격(검색자가 목표 거래 전후에 거래를 배치하는 것)의 급증으로 인해 사용자 경험에 영향을 미쳤기 때문입니다. 이더리움의 MEVA 비공식 주문 흐름 채널과 유사하게, 공공 메모리 풀을 종료하면 프론트엔드 서비스(지갑 제공자 및 텔레그램 봇 등)와 협력하여 비공식 주문 흐름의 성장을 촉진할 수 있습니다. 검색자는 검증자와 직접 협력하여 우선 실행, 포함 또는 제외 권한을 얻을 수 있습니다.
실제로, 그림 11은 메모리 풀이 종료된 후 가장 큰 비공식 메모리 풀 검색자의 시간당 샌드위치 로봇 수익을 보여줍니다.
가장 큰 비공식 메모리 풀 검색자:
3pe8gpNEGAYjVvMHqGG1MVeoiceDhmQBFwrHPJ2pAF81
(번역자 주: 샌드위치 로봇은 블록체인 거래에서 이익을 얻기 위해 사용되는 일반적인 선점 공격 도구입니다).
그림 11:검색자 "3pe8gpNEGAYjVvMHqGG1MVeoiceDhmQBFwrHPJ2pAF81"가 비공식 메모리 풀을 사용하여 얻은 시간당 샌드위치 로봇 수익
Jito는 메모리 풀을 종료하기로 결정했으며, 이는 팀이 솔라나 생태계의 근본적인 문제를 해결하기 위해 헌신하고 있음을 나타냅니다. MEVA를 반복하거나 솔라나의 가스 요금 메커니즘을 조정하는 것 외에도, Jito는 UI 제품 설계 선택(예: 기본 슬리피지 매개변수 제한)을 통해 프로토콜이 공격 위험을 줄이는 데 도움을 주고 있습니다. 스팸 거래를 더 비싸게 만드는 수수료 구조 조정이든, 통신 프로토콜 수정이든, Jito의 인프라는 솔라나 네트워크의 건강과 안정성을 유지하는 데 중요한 역할을 계속할 것입니다.
Monad에서의 MEVA 설계
지연 실행 및 MEVA에 미치는 영향
이더리움과 달리, 이더리움에서는 블록에 동의하기 위해 거래 목록(정렬 포함)과 모든 후속 상태를 요약한 머클 루트가 필요하지만, Monad는 이전 실행과 합의를 분리합니다. 노드 프로토콜은 공식 정렬 문제만 해결하면 됩니다. 그림 12에 나타난 바와 같이, 각 노드는 블록 N+1에 대한 합의를 시작할 때 블록 N의 거래를 독립적으로 실행합니다. 이러한 배치는 전체 블록 시간에 해당하는 가스 예산을 허용합니다. 실행은 합의의 속도를 따라가기만 하면 됩니다. 리더 노드가 사실 상태 루트를 계산할 필요가 없기 때문에, 실행은 다음 블록을 처리하기 위해 전체 합의 기간을 활용할 수 있습니다.
그림 12:Monad의 지연 실행과 이더리움의 실행-합의 단계 비교. MEVA 설계 관점에서도 작업 시간 창을 보여줍니다.
우리는 작업 시간 창을 Monad에서 MEVA가 블록 구축 제안을 완료할 수 있는 시간 프레임으로 정의합니다. 이 제안은 기본 블록 구축 방법과 비교할 때 실행 가능하고 수익성이 있습니다. 지연 실행 모델은 두 가지 직접적인 결과를 가져옵니다:
MEVA가 작업 시간 창 내에서 N번째 블록을 구축할 때, 검증자는 동시에 N번째 블록의 거래 목록에 대한 합의를 이루고, N-1번째 블록의 실행을 완료하려고 시도합니다. 따라서 N번째 작업 시간 창 내에서 사용 가능한 상태는 여전히 N-2에 있을 수 있습니다. 이는 이러한 지연 실행 아키텍처에서 중계자나 구축자가 "최신 상태"를 보장하지 않음을 의미합니다. 따라서 다음 블록이 생성되기 전까지는 최신 블록에 대한 시뮬레이션이 불가능하여 불확실성이 발생합니다.
Monad의 1초 블록 시간에 비추어 볼 때, MEVA의 작업 시간 창은 극히 제한적입니다. 이는 구축자가 이더리움에서 일반적으로 수행하는 것처럼 전체 블록의 거래 및 번들을 순서대로 시뮬레이션할 충분한 시간이 없음을 의미합니다. 여러 변수가 EVM에서 거래 시뮬레이션에 필요한 시간에 영향을 미칠 수 있습니다. 그러나 거래를 시뮬레이션하는 데 10^1에서 10^2 마이크로초(대략적인 추정치)가 필요하고, Monad의 목표가 초당 10^4 거래인 경우, 작업 시간 창 내에서 전체 블록을 시뮬레이션하는 데 약 1초가 필요할 수 있습니다. Monad의 1초 블록 시간을 고려할 때, 구축자나 중계자가 여러 전체 블록 시뮬레이션을 완료하여 블록 구축을 최적화하는 것은 도전적일 것입니다.
확률적 구축자 및 검색자 전략
이러한 제한을 감안할 때, 작업 시간 창 내에서 전체 블록 시뮬레이션을 완료하고 최신 상태에 대해 시뮬레이션하는 것은 비현실적입니다. 구축자는 이제 시간과 최신 상태가 부족하여 각 거래의 정확한 힌트를 이해할 수 없으므로, 거래 롤백 가능성에 따라 검색자의 힌트를 추론해야 하며, 평판에 의존하거나 (가능하다면) N-2 상태에 대해 시뮬레이션해야 합니다. 이는 블록 평가를 덜 확실하게 만듭니다.
거래 롤백에 대한 이론적 보장이 부족하기 때문에, 검증자가 구축자가 구축한 블록을 수용하면 검색자는 더 큰 실행 불확실성에 직면하게 됩니다. 이는 이더리움과 대조적이며, 이더리움에서는 검색자가 전용 비공식 주문 흐름에서 구축자 채널로 경쟁하여 상대적으로 확실한 전략을 실행합니다. Monad에서의 이러한 상대적 확률 설정에서, 검색자는 이제 더 높은 번들 롤백 위험에 직면하여 더 불확실한 실행 PnL 프로필을 초래합니다. 이는 고빈도 거래자와 유사하며, 그들은 확률 신호에 따라 거래를 실행하고 시간이 지남에 따라 약간 높은 기대 수익을 얻습니다.
그림 13:제안된 블록 검토 또는 시뮬레이션 정도에 따라 분류된 다양한 MEVA 설계 패러다임을 보여주는 개념 스펙트럼 다이어그램
그림 13에서 볼 수 있듯이, 구축자 측에서 사전 번들/블록 검토의 정도는 제안된 블록의 가격 책정 또는 평가에서 불확실성의 스펙트럼을 생성합니다. 한쪽 끝은 이더리움 스타일의 PBS 모델로, 정확한 가격 책정을 가지고 있으며, 구축자는 실행 계층(EL) 클라이언트를 사용하여 제안된 블록 내에서 거래를 시뮬레이션해야 합니다. 그들은 제출된 번들 내에서 광범위한 조합을 탐색해야 합니다. 반대편은 낙관적 구축자 모델로, 비동기 블록 검토를 특징으로 합니다. 이 모델에서 구축자는 작업 시간 창 내에서 필요한 모든 시뮬레이션 시간을 우회하고, 담보를 예치하여(삭감될 수 있음) 검증자나 중계자에게 보여주는 힌트를 실현합니다. 여기서 Monad에서 제안된 확률적 검토 또는 부분 시뮬레이션 방법은 중간에 위치하며, 불확실성이 존재하지만 검색자가 전략을 성공적으로 실행할 가능성을 높입니다.
예를 들어, 체인 상의 주문서 DEX의 시장 조성자는 주요 단방향 가격 변동을 발견했을 때 MEVA를 통해 사전에 포지션을 이동하여 불리한 선택을 피할 수 있습니다. 이러한 확률적 전략은 그들이 최신 상태 정보 없이도 신속하게 행동할 수 있게 하여, 동적 거래 환경에서 위험과 보상을 균형 있게 조정할 수 있게 합니다.
결론
MEVA는 블록 생산 최적화, 외부 영향 완화 및 시스템 안정성 향상에 중요한 역할을 합니다. 솔라나의 Jito 및 이더리움의 다양한 구현과 같은 MEVA 프레임워크의 지속적인 발전은 확장성 문제 해결을 크게 촉진하고 네트워크 참여자의 인센티브 메커니즘을 더욱 일관되게 만들었습니다.
Monad는 초기 단계에 있으며, 밝은 미래를 가진 네트워크로, 커뮤니티에 최적의 MEVA 설계 기회를 제공합니다. Monad의 독특한 실행과 합의 분리 메커니즘을 고려할 때, 연구자, 개발자 및 검증자들이 협력하여 통찰력을 공유할 것을 진심으로 초대합니다. 이러한 협력은 Monad가 고처리량 블록체인 네트워크로서의 비전을 실현하는 데 기여할 강력하고 효율적인 블록 생산 프로세스를 만드는 데 도움이 될 것입니다.