OKB.VN
Infrastructure · MEV

Mempool là gì?

Transaction Pool, Gas Priority Fee và Chiến trường MEV
📖 Khoảng 15 phút đọc 🔄 Cập nhật 2026 🏷️ Infrastructure · MEV

Tóm tắt nhanh

Mempool (Memory Pool) là vùng bộ nhớ tạm trên mỗi node blockchain, lưu trữ các transaction đã broadcast nhưng chưa được đưa vào block. Đây là "phòng chờ" của mọi giao dịch — và đồng thời là chiến trường nơi MEV bot, miner, validator tranh giành lợi thế kinh tế.

01 Mempool là gì?

Khi bạn gửi một giao dịch trên Ethereum hay Bitcoin, transaction đó không được ghi lên blockchain ngay lập tức. Thay vào đó, nó bước vào một "phòng chờ" gọi là mempool — viết tắt của Memory Pool, còn gọi là Transaction Pool.

Mempool tồn tại cục bộ trên mỗi node mạng. Không có một mempool trung tâm duy nhất — mỗi node có mempool riêng, nhưng nhờ gossip protocol, nội dung mempool gần như đồng nhất trên toàn mạng trong vài giây.

Định nghĩa kỹ thuật: Mempool là tập hợp các transaction hợp lệ (đã verify chữ ký, đủ balance, đúng nonce) đang chờ miner/validator chọn để đưa vào block tiếp theo.

Mempool giải quyết một bất đối xứng cơ bản: mạng có thể nhận hàng nghìn transaction mỗi giây, nhưng mỗi block chỉ chứa được một lượng giới hạn. Mempool là buffer trung gian xử lý chênh lệch này.

Về mặt kỹ thuật, mempool được lưu trong RAM — không phải ổ cứng. Nếu node restart, mempool bị xóa sạch. Transaction cần re-broadcast hoặc sẽ biến mất nếu không ai gửi lại.

02 Vòng đời của một Transaction

Hiểu mempool đòi hỏi phải nắm toàn bộ hành trình của transaction từ lúc ký đến lúc xác nhận:

Bước 1 — Tạo và ký transaction

Người dùng ký transaction bằng private key. Transaction chứa: địa chỉ người gửi, người nhận, giá trị, gas limit, gas price/priority fee, nonce, và data (nếu có). Chữ ký ECDSA chứng minh quyền sở hữu mà không tiết lộ private key.

Bước 2 — Broadcast lên mạng

Ví gửi transaction đến node qua RPC. Node validate cơ bản (chữ ký hợp lệ, balance đủ, nonce đúng thứ tự) rồi thêm vào mempool. Gossip protocol lan transaction này đến các node khác trong vài giây.

Bước 3 — Nằm trong Mempool

Transaction ở trong mempool cho đến khi: (a) được validator chọn vào block, (b) bị drop vì mempool đầy, hoặc (c) hết hạn sau timeout (thường 14 ngày). Trong thời gian này, bất kỳ ai cũng có thể đọc nội dung transaction — đây là gốc rễ của vấn đề MEV.

Bước 4 — Vào Block và Finalize

Validator/miner quét mempool, chọn transaction, đóng gói thành block và broadcast. Transaction biến mất khỏi mempool toàn mạng khi block được finalize.

Nonce ordering: Ethereum yêu cầu nonce tăng dần liên tục. Nếu tx nonce 5 đang pending, tx nonce 6 sẽ không xử lý được dù gas cao hơn — hệ thống phải xử lý theo thứ tự.

03 Cấu trúc bên trong Mempool

Mempool không chỉ là một danh sách đơn giản. Cấu trúc bên trong được tối ưu để validator nhanh chóng chọn transaction tốt nhất:

Pending Pool vs Queued Pool

Ethereum chia mempool thành hai phần:

  • Pending Pool: Transaction sẵn sàng xử lý ngay — nonce đúng thứ tự, balance đủ. Đây là pool validator ưu tiên chọn.
  • Queued Pool: Transaction có nonce "tương lai" — ví dụ nonce 7 khi nonce 5 chưa xử lý. Phải chờ các nonce trước xong mới chuyển sang pending.

Giới hạn kích thước Mempool

Mỗi node có giới hạn tổng transaction trong mempool (Geth mặc định: 4096 pending + 1024 queued). Khi đầy, node drop transaction gas thấp nhất để nhường chỗ transaction mới gas cao hơn.

ClientPending LimitQueued Limit
Geth (go-ethereum)4,096 tx1,024 tx
Nethermind2,048 tx1,024 tx
Besu4,096 tx1,024 tx
Bitcoin Core~300 MB tổng

Replace-by-Fee (RBF)

Để thay thế transaction đang pending, gửi lại cùng nonce với gas fee cao hơn ít nhất 10%. Trên Ethereum, gửi tx cùng nonce với gas rất cao và value = 0 đến chính mình sẽ hủy tx cũ hiệu quả.

04 Gas Fee và Prioritization

Cách validator chọn transaction từ mempool quyết định trực tiếp trải nghiệm người dùng. Hai mô hình chính:

Mô hình cũ — First Price Auction (trước EIP-1559)

Người dùng đặt gasPrice — bid cao nhất thắng. Đây là đấu giá mù: không biết người khác đặt bao nhiêu. Dẫn đến overpaying phổ biến, trải nghiệm không ổn định và mempool thường xuyên tắc nghẽn trong các sự kiện lớn.

Mô hình EIP-1559 (Ethereum hiện tại)

Mỗi block có Base Fee (phí tối thiểu tự động tăng/giảm) và người dùng đặt thêm Priority Tip để "thưởng" validator ưu tiên. Base Fee bị đốt (burn), Priority Tip về tay validator.

Cơ chế tự điều chỉnh Base Fee: Block >50% gas limit → base fee tăng 12.5%. Block <50% → base fee giảm 12.5%. Tạo thị trường tự cân bằng, giảm volatility phí gas đáng kể so với mô hình cũ.

Builder Optimization

Trong thực tế (khi dùng MEV-Boost), builder không chỉ chọn tx gas cao nhất. Họ tối ưu tổng revenue của block — bao gồm gas fee, MEV opportunity, và thứ tự tx tối ưu. Điều này tạo ra thị trường phức tạp hơn nhiều so với "chỉ đặt gas cao là xong".

05 Mempool Congestion — Khi Mempool Quá Tải

Mempool congestion xảy ra khi lượng transaction vào mạng vượt khả năng xử lý. Hệ quả:

  • Gas fee tăng vọt: Người dùng phải đặt gas ngày càng cao để cạnh tranh vào block.
  • Transaction chờ lâu: Tx gas thấp có thể stuck hàng giờ, thậm chí ngày.
  • Mempool drop: Node tự động drop tx gas thấp khi bộ nhớ đầy.
  • Poor UX: Người dùng mới không hiểu tại sao tx bị stuck.

Các sự kiện congestion lịch sử

Sự kiệnThời điểmGas đỉnhNguyên nhân
CryptoKitties12/2017~50 GweiNFT game viral đầu tiên
ICO Craze2018~100 GweiHàng trăm ICO đồng thời
DeFi Summer2020~700 GweiUniswap, Compound, SushiSwap
NFT Boom2021~10,000 GweiOpenSea, BAYC

Chính những sự kiện này thúc đẩy phát triển Layer 2EIP-4844 để giảm tải cho Ethereum mainnet.

Rủi ro thực tế: Nếu đặt gas quá thấp trong thị trường congestion, transaction có thể bị stuck và drop. Bạn không mất ETH (tx không xử lý), nhưng mất thời gian và cơ hội — đặc biệt khi trading DeFi trong thị trường biến động mạnh.

06 Mempool và MEV — Chiến trường Kinh tế

Tính công khai của mempool tạo ra cơ hội — và rủi ro. Vì bất kỳ ai cũng có thể đọc pending transaction trước khi chúng xác nhận, một nền kinh tế ngầm đã hình thành xung quanh mempool.

Tại sao Mempool là Public?

Để mạng propagate transaction, node phải chia sẻ nội dung mempool. Ai chạy node đều thấy toàn bộ pending transaction — bao gồm: ai đang mua gì trên DEX, ai đang liquidate position nào, ai đang interact với contract nào.

Các hình thức MEV từ Mempool

  • Front-running: Bot thấy bạn mua token X → đặt tx mua X trước với gas cao hơn → giá tăng → bán lại cho bạn giá cao hơn.
  • Sandwich Attack: Mua trước + bán ngay sau tx của bạn. Xem chi tiết tại Sandwich Attack là gì.
  • Back-running: Thực hiện tx ngay sau một tx lớn — ví dụ arbitrage sau price slippage.
  • Liquidation Race: Khi position DeFi đủ điều kiện bị liquidate, hàng chục bot cùng lúc gửi tx tranh liquidation bonus.

MEV là vấn đề hệ thống của blockchain có public mempool. Tổng MEV extracted trên Ethereum vượt $1.5 tỷ USD từ 2020. Đây là lý do hệ sinh thái FlashbotsMEV-Boost ra đời.

07 Private Mempool — Giải pháp chống MEV

Private mempool cho phép người dùng gửi transaction trực tiếp đến block builder mà không qua public mempool. Bot MEV không thể thấy, không thể front-run.

Flashbots Protect RPC

Flashbots cung cấp endpoint RPC thay thế. Thay vì gửi tx qua node thông thường (vào public mempool), bạn gửi qua Flashbots RPC → MEV-Boost relay → block builder. Transaction không hiện trong mempool công khai cho đến khi block được propose.

MEV Blocker và Intent-based Architectures

MEV Blocker (CoW Protocol + Beaver Build) auction order flow đến nhiều solver cạnh tranh, trả lại MEV cho người dùng. 1inch Fusion, Uniswap X dùng intent-based architecture — tránh mempool bằng cách để solver tìm đường thực hiện off-chain.

Đánh đổi của Private Mempool

  • Ưu điểm: Bảo vệ khỏi MEV, xử lý nhanh và ổn định hơn.
  • Nhược điểm: Phụ thuộc vào relay/builder. Tiềm ẩn censorship risk nếu relay filter tx (như vụ OFAC controversy của Flashbots 2022).
Xu hướng nghiên cứu: Encrypted mempool dùng threshold encryption hoặc TEE — tx chỉ decrypt sau khi ordering được finalize, vừa public vừa chống front-running.

08 Bitcoin vs Ethereum Mempool

Tiêu chíBitcoin MempoolEthereum Mempool
Đơn vị phísat/vByteGwei/gas (base fee + tip)
Block time~10 phút~12 giây
MEV complexityThấp (simple payments)Rất cao (DeFi, NFT, arbitrage)
Nonce mechanismUTXO (không cần nonce)Account-based, nonce tăng dần
RBFOpt-in RBF (BIP 125)Mặc định hỗ trợ (10% gas bump)
Mempool timeout~2 tuần~14 ngày

UTXO vs Account và Vấn đề Ordering

Bitcoin dùng UTXO — mỗi "đồng tiền" là output độc lập, không cần nonce ordering. Tuy nhiên UTXO có thể chain nhau: nếu tx A chưa confirm, tx B dùng output của A cũng phải chờ (Child-Pays-for-Parent — CPFP là cơ chế để tăng tốc tx cha thông qua tx con có fee cao).

09 Mempool trong Layer 2 — Sequencer Pool

Layer 2 Rollup thay đổi hoàn toàn cách mempool hoạt động. Thay vì mempool phân tán, L2 dùng Sequencer tập trung — một entity duy nhất nhận và sắp xếp transaction.

Centralized Sequencer Mempool

Trên Arbitrum, Optimism, Base: transaction gửi thẳng đến sequencer node. Sequencer có mempool riêng, sắp xếp theo FIFO (first in, first out). Block time rất nhanh: 250ms đến 2 giây. Gas fee thấp hơn nhiều L1.

Rủi ro: sequencer là single point of failure, có thể lý thuyết censor hoặc front-run transaction. Đây là vấn đề trust assumption lớn của L2 hiện tại. Xem thêm Sequencer là gì.

Decentralized Sequencer — Hướng đi tương lai

Espresso Systems, Astria, Radius đang xây shared sequencer network với nhiều sequencer cạnh tranh — giảm censorship risk và cải thiện MEV fairness trên L2. Đây là bước tiến quan trọng để L2 thực sự phi tập trung.

10 Câu hỏi thường gặp (FAQ)

Mempool (Memory Pool) là vùng bộ nhớ tạm của mỗi node blockchain, lưu trữ transaction đã broadcast nhưng chưa vào block. Đây là "phòng chờ" trước khi validator chọn xác nhận.

Transaction bị stuck khi gas fee đặt quá thấp so với thị trường. Validator ưu tiên tx gas cao hơn. Giải pháp: dùng Replace-by-Fee (RBF) — gửi lại cùng nonce với gas cao hơn ít nhất 10%.

Mempool là public — bot MEV đọc pending tx và thực hiện front-run, sandwich attack. Flashbots private mempool giải quyết bằng cách gửi tx thẳng đến builder, không qua public mempool.

Bitcoin dùng sat/vByte, UTXO model, ít MEV hơn. Ethereum dùng EIP-1559 base fee + tip, phức tạp hơn nhiều do DeFi smart contract và MEV quy mô lớn hơn.

Dùng Etherscan Mempool Viewer, mempool.space (Bitcoin), hoặc subscribe WebSocket của node tự chạy. Nhiều ví hiện đại cũng hiển thị gas estimate dựa trên mempool hiện tại để giúp người dùng chọn fee phù hợp.

Tài liệu tham khảo

  1. Ethereum Foundation — Transaction lifecycle documentation (ethereum.org)
  2. Flashbots — MEV and Mempool Research (flashbots.net)
  3. EIP-1559 — Fee market change for ETH 1.0 chain (eips.ethereum.org)
  4. Bitcoin Wiki — Mempool (bitcoin.it/wiki/Mempool)
  5. Ethresear.ch — Encrypted Mempool proposals (2023)
📚 Khám phá thêm theo chủ đề
113 bài phân tích kỹ thuật — Blockchain Infrastructure từ nền tảng đến nâng cao
📋 Xem tất cả bài viết →