Mempool & ค่าธรรมเนียม
ห้องรอ — ธุรกรรมที่ยังไม่ confirm เรียงตามค่าธรรมเนียม รอให้นักขุดคนต่อไปหยิบ
ไทม์ไลน์บล็อก
คาดการณ์จาก mempool · tip · บล็อกที่เพิ่งขุด
สด- #949,521~80 นาที~1 sat/vB0.041 BTC
- #949,520~70 นาที~1 sat/vB0.002 BTC
- #949,519~60 นาที~1 sat/vB0.002 BTC
- #949,518~50 นาที~1 sat/vB0.002 BTC
- #949,517~40 นาที~1 sat/vB0.003 BTC
- #949,516~30 นาที~1 sat/vB0.003 BTC
- #949,515~20 นาที~1 sat/vB0.003 BTC
- #949,514~10 นาที~1 sat/vB0.004 BTC
- tip#949,513รัน 3:47
- #949,5124 นาที2 sat/vB0.032 BTCAntPool
- #949,51127 นาที1 sat/vB0.013 BTCFoundry USA
- #949,51034 นาที1 sat/vB0.019 BTCF2Pool
- #949,50946 นาที1 sat/vB0.010 BTCFoundry USA
- #949,50848 นาที1 sat/vB0.007 BTCF2Pool
- #949,50751 นาที1 sat/vB0.007 BTCViaBTC
- #949,50655 นาที2 sat/vB0.024 BTCAntPool
- #949,50568 นาที2 sat/vB0.028 BTCF2Pool
- #949,50474 นาที1 sat/vB0.013 BTCSpiderPool
- #949,50380 นาที2 sat/vB0.030 BTCSpiderPool
แย่งบล็อกถัดไป
ทุก ~10 นาที นักขุดตัดสินกันหนึ่งรอบ
การปรับความยาก
ทุก 2,016 บล็อก เครือข่ายปรับจูนตัวเอง
- เวลาเฉลี่ยต่อบล็อก
- ~9704.1 นาที
- คาดการณ์การเปลี่ยน
- 3.10%ยากขึ้น
- อีก ~
- 3ชม. 43นาที
แว่น mempool
ทุกธุรกรรมที่รออยู่ จัดเรียงตาม virtual size · สี = อัตราค่าธรรมเนียม
สดแข่ง pool · 24 ชม.
สัดส่วน hashrate ของแต่ละ pool คือโอกาสได้บล็อกถัดไป
- Foundry USA34.2%54 บล็อก
- AntPool15.8%25 บล็อก
- F2Pool13.3%21 บล็อก
- ViaBTC10.8%17 บล็อก
- SpiderPool7.6%12 บล็อก
- MARA Pool5.7%9 บล็อก
- อื่นๆ11.5%18 บล็อก
การกระจายค่าธรรมเนียม
ทุกธุรกรรมที่รออยู่ จัดกลุ่มตามอัตราค่าธรรมเนียม
การกระจุกของ pool
จริงๆ แล้วบล็อกถัดไปกระจายขนาดไหน
- Foundry USA34.2%
- AntPool15.8%
- F2Pool13.3%
- ViaBTC10.8%
- SpiderPool7.6%
- MARA Pool5.7%
- อื่นๆ11.5%
ราคาของหนึ่งบล็อก
การขุดต้องลงทุนจริงๆ — ความปลอดภัยมาจากตรงนี้
- ใช้ไป / วินาที
- $205
- ต้นทุนขุดหนึ่งบล็อก
- $123.1K
ใกล้เคียงกับ block reward — เป็นเรื่อง by design
Mempool
สด- เร็ว
- 2 sat/vB
- 30 นาที
- 1 sat/vB
- 1 ชั่วโมง
- 1 sat/vB
- ประหยัด
- 1 sat/vB
ครั้งแรกที่ผมส่งธุรกรรม Bitcoin ตอนปี 2017 ผมจ่ายค่าธรรมเนียมเกินไปประมาณสิบสองดอลลาร์ ถ้าเทียบกับวันนี้ ตอนนั้นผมไม่รู้ด้วยซ้ำว่ามี mempool อยู่ — ผมแค่กดเลือก preset “high priority” ในวอลเล็ต แล้วกด send และ network ก็สุภาพมากที่หยิบงบกาแฟทั้งสัปดาห์ของผมไป ถ้าคุณเคยจ่ายค่าธรรมเนียมเกิน — หรือแย่กว่านั้น คือเคยนั่งดูธุรกรรมค้างอยู่สามวันเพราะจ่ายน้อยเกิน — บทความนี้เขียนเพื่อคุณ Mempool คือ concept ที่ “เป็นสด” และสำคัญที่สุดใน Bitcoin สำหรับคนที่ขยับเหรียญจริง ๆ และแทบไม่มีใครอธิบายเรื่องนี้ได้ดี
จริง ๆ แล้ว mempool คืออะไร
คำว่า “mempool” ย่อมาจาก memory pool มันคือห้องรอส่วนตัวของธุรกรรมที่ยังไม่ confirm ภายในโหนด Bitcoin ทุกตัว — รวมถึงโหนดของผมที่นั่งอยู่ในตู้เสื้อผ้าที่กรุงเทพฯ ตอนที่คุณ broadcast ธุรกรรม มันจะแพร่ไปยัง peer ที่วอลเล็ตคุณเชื่อมอยู่ และ peer แต่ละตัวที่รับธุรกรรมก็จะใส่มันเข้า mempool ของตัวเอง แล้วส่งต่อไปให้ peer ของมันอีกที ภายในไม่กี่วินาที ธุรกรรมก็จะไปถึงเครือข่ายส่วนใหญ่
ตรงนี้คือจุดที่บทความส่วนใหญ่อธิบายผิด — ไม่มี global mempool เพียงอันเดียว ทุกโหนดเก็บสำเนาของตัวเอง mempool ของคุณกับของผมอาจต่างกันสักไม่กี่ธุรกรรมในเวลาเดียวกัน — เพราะ timing, การแข่ง RBF หรือนโยบาย relay ที่เข้มกว่า ตอนคุณดู mempool.space คุณกำลังดูมุมมองของโหนด หนึ่งตัว ที่เชื่อมต่อดี ๆ มันเป็น proxy ของสถานะเครือข่ายที่ดีมาก แต่มันไม่ใช่ source of truth Mempool โดยเนื้อแท้คือโครงสร้างข้อมูลแบบ local — เพราะแบบนี้ ถ้าคุณอยากรู้จริง ๆ ว่า miner เห็นอะไร สุดท้ายคุณต้องรันโหนดของตัวเอง
ธุรกรรมไปอยู่ที่นั่นได้ยังไง
Broadcast → propagation → mempool การเดินทางมีแค่นี้ วอลเล็ตของคุณส่ง bytes ของธุรกรรมที่เซ็นแล้วให้กับโหนด โหนดตรวจสอบ (signature, ไม่มี double-spend, ค่าธรรมเนียมสูงกว่า relay minimum) ถ้าผ่านทุกอย่าง มันก็เข้าไปอยู่ใน mempool และถูก gossip ไปยัง peer ไม่มี server กลาง ธุรกรรมไม่ได้ “ส่งตรง” ไปหา miner — miner ก็รันโหนดเหมือนกัน และเลือกธุรกรรมจาก mempool ของตัวเองตอนประกอบบล็อกถัดไป
นี่คือเหตุผลที่ค่า minrelaytxfee ของ Bitcoin Core สำคัญ — มันคือเพดานล่างที่โหนดส่วนใหญ่จะไม่ยอมรับธุรกรรมของคุณ ถ้าคุณตั้งค่าธรรมเนียมต่ำกว่านี้ ธุรกรรมของคุณอาจไม่แพร่กระจายเลย — มันจะตายเงียบ ๆ
ทำไม miner ถึงเลือกธุรกรรมที่ค่าธรรมเนียมสูงสุด
พื้นที่ในบล็อกมีจำกัด บล็อก Bitcoin เก็บธุรกรรม legacy ได้ประมาณหนึ่ง megabyte หรือสูงสุดสี่ล้าน weight units ด้วยส่วนลด SegWit นั่นคืองบทั้งหมดที่ network มี เพื่อ confirm การชำระเงินของคนทั้งโลกทุก ๆ สิบนาที Miner เป็น economic agent ที่เหตุผลล้วน ๆ — พวกเขาเรียงธุรกรรมตาม fee-per-byte แล้วเลือกตัวที่กำไรสูงสุดมาใส่จนเต็มบล็อก เอกสารอ้างอิงคือ whitepaper ของ Bitcoin ฉบับดั้งเดิมของ Satoshi ที่วาดเค้าโครง fee competition ไว้เป็น security model ระยะยาวหลังจาก subsidy ลดลง
ดังนั้นเวลา network แออัด ค่าธรรมเนียมจะขึ้น — ไม่ใช่เพราะมีใครตั้งราคา แต่เพราะ user กำลังประมูลแย่งพื้นที่ ~4 MB ที่หายากเดียวกันนี้
ค่าธรรมเนียม Bitcoin ไม่ใช่เปอร์เซ็นต์
นี่คือ mental shift ที่ใหญ่ที่สุดสำหรับมือใหม่ — คุณไม่ได้จ่ายเป็นเปอร์เซ็นต์ของจำนวนที่ส่ง ค่าธรรมเนียม Bitcoin คือค่าคงที่ต่อ byte ของข้อมูลธุรกรรม หน่วยที่คุณจะเจอทุกที่คือ sat/vB — satoshi ต่อ virtual byte
ธุรกรรม SegWit แบบ 1 input 1 output ทั่วไปมีขนาดประมาณ 140 vB ดังนั้นถ้าค่าธรรมเนียมที่แนะนำคือ 10 sat/vB:
10 sat/vB × 140 vB = 1,400 sats
ที่ราคา Bitcoin $75,000 1,400 sats คือประมาณ $1.05 (~฿37) ค่าธรรมเนียมตัวนี้เท่ากันไม่ว่าคุณจะส่ง $50 หรือ $5 ล้าน นี่คือคุณสมบัติที่ถูกประเมินค่าต่ำที่สุดข้อหนึ่งของ Bitcoin — ต้นทุนการขยับ value ไม่สเกลตามจำนวนที่คุณส่ง
อ่านค่าธรรมเนียมแนะนำ
วอลเล็ตและ explorer ส่วนใหญ่จะโชว์สี่ band ทั้งหมดเป็นการคาดการณ์ว่าค่าธรรมเนียมระดับไหนจะทำให้คุณ confirm ภายใน window เป้าหมาย:
- Fast (~10 นาที, บล็อกถัดไป) ระดับค่าธรรมเนียมที่คาดว่าจะเคลียร์ส่วนบนของบล็อกถัดไปที่จะถูกขุด
- 30 นาที (~3 บล็อก) ระดับกลาง ๆ ที่ใช้ได้กับการชำระเงินส่วนใหญ่
- 1 ชั่วโมง (~6 บล็อก) ถูกกว่า แต่ก็ยังเชื่อถือได้
- Economy / minimum ก้นของ mempool — confirm เมื่อพื้นที่ว่างลง อาจเป็นชั่วโมง อาจเป็นวัน
ข้อสังเกตที่สวนทางความรู้สึก: ตอน mempool ว่าง “Fast” อาจเท่ากับ “Economy” ถ้า demand ต่ำ การจ่าย 1 sat/vB ก็เข้าบล็อกถัดไปได้ ค่าธรรมเนียมแต่ละ band เป็น dynamic — มันสะท้อนแรงกดดันการประมูลในขณะนั้น ไม่ใช่ราคาตายตัว
ขนาด mempool หน่วย vMB
ขนาดรวมของธุรกรรมที่ค้างอยู่วัดเป็น virtual megabyte (vMB) ผมพบว่าถังข้อมูลคร่าว ๆ พวกนี้มีประโยชน์ในฐานะ practical threshold:
- ว่าง: ต่ำกว่า ~5 vMB ค่าธรรมเนียมต่ำสุด เป็นช่วงดีในการ consolidate UTXO
- ปกติ: 5–50 vMB ค่าธรรมเนียมมาตรฐาน confirm ได้ตามคาด
- แออัด: 50+ vMB ค่าธรรมเนียมพุ่งชัน ๆ การชำระที่ไม่เร่งด่วนควรรอ
- พุ่ง: 100+ vMB มีอะไรเกิดขึ้นแน่ ๆ — คลื่น inscription, การ rebalance ของ exchange, เงินโอนช่วงวันหยุด นั่งดูเฉย ๆ ถ้าไม่จำเป็นต้องส่ง
แต่ละบล็อกเคลียร์ได้ราว ๆ 1.5–2 vMB ถ้า mempool อยู่ที่ 100 vMB เวลา ขั้นต่ำ ที่จะระบายให้หมด — สมมุติว่าไม่มีธุรกรรมใหม่เข้ามา — คือประมาณ 50 บล็อก หรือแปดชั่วโมง ในความเป็นจริงเรื่องนั้นไม่เกิดขึ้น เพราะธุรกรรมใหม่เข้ามาตลอด แต่มันให้ความรู้สึกได้ว่าความแออัดสามารถยืดเยื้อได้ขนาดไหน
Projected blocks
Visualization ที่ฉลาดที่สุดบน mempool.space คือมุมมอง projected-blocks มันมองทุกธุรกรรมที่ยังไม่ confirm ใน mempool, เรียงตาม fee rate แบบที่ miner จะเรียง, แล้วประกอบเป็นบล็อกในทฤษฎีสักหกถึงแปดบล็อกถัดไป คุณจะเห็นได้เลยว่าธุรกรรมของคุณจะลงไปอยู่ที่ tier ค่าธรรมเนียมไหน ถ้า tx ของคุณอยู่ใน projected block 1 คุณจะ confirm ในสิบนาทีถัดไป ถ้าอยู่ในบล็อก 6 ก็คือประมาณหนึ่งชั่วโมง
ฟีเจอร์เดียวนี้แทนการเดาทั้งหมดในเรื่อง fee estimation ดู chart, หา fee rate ที่ก้นของบล็อกที่คุณอยากเข้า, ตั้งธุรกรรมให้เท่านั้น เสร็จ mempool.space API เปิดข้อมูลส่วนนี้เป็นสาธารณะ — fee widget ทุกตัวบนเว็บนี้อ่านจากที่นั่น
ดันธุรกรรมที่ค้างอยู่
สักวันคุณจะจ่ายน้อยเกินจนได้ พอเจอแบบนั้น คุณมีสองตัวเลือก
Replace-By-Fee (RBF)
BIP-125 คือมาตรฐานที่ให้คุณ broadcast ธุรกรรมเวอร์ชันใหม่ของธุรกรรมที่ยังไม่ confirm พร้อมค่าธรรมเนียมที่สูงขึ้น ธุรกรรมแทนที่ใช้ input เดิม จ่ายค่าธรรมเนียมสูงกว่า และแข่งกับธุรกรรมเดิมเพื่อให้ถูกรวมเข้าบล็อก Miner เลือกตัวที่จ่ายมากกว่า ส่วนตัวเดิมก็จะหลุดจาก mempool
RBF จะใช้ได้ ธุรกรรมเดิมต้อง signal ว่ารองรับ (วอลเล็ตสมัยใหม่ส่วนใหญ่เปิดเป็น default — Sparrow, Bluewallet, Phoenix) วอลเล็ตที่เน้นฝั่ง merchant บางตัวปิด RBF เพราะก่อน confirmation ธุรกรรมที่ signal RBF อาจถูกแทนที่ด้วยธุรกรรมที่ไม่จ่ายให้ merchant เลยในทางทฤษฎี ในทางปฏิบัติเรื่องนี้ถูกพูดเกินจริง — zero-conf ไม่เคยปลอดภัยตั้งแต่ต้นอยู่แล้ว — แต่ความกังวลก็มีเหตุผล และคุณจะเห็น RBF ถูกปิดในบาง payment flow
Child-Pays-For-Parent (CPFP)
ถ้าคุณเป็นฝั่งผู้รับ หรือวอลเล็ตของคุณไม่ signal RBF คุณยังทำ CPFP ได้ คุณใช้ output ของธุรกรรมที่ยังไม่ confirm เป็น input ของธุรกรรมใหม่ ที่จ่ายค่าธรรมเนียมสูงพอจน fee rate รวม ของ parent กับ child น่าสนใจสำหรับ miner Miner รวมทั้งสองธุรกรรมเข้าบล็อกเพราะมันรวม child ไม่ได้ถ้าไม่รวม parent ด้วย คุณกำลังจ่ายเพิ่มเพื่อ “ลาก” ธุรกรรมที่ค้างของตัวเองตามไปด้วย
CPFP แพงกว่า RBF ในแง่ตัวเลขสัมบูรณ์ แต่มันใช้ได้ในกรณีที่ RBF ใช้ไม่ได้ สำหรับผู้ใช้ Bitcoin Core เอกสาร official อธิบายทั้งสองวิธีไว้ละเอียด
ส่งตอนไหนดี
นั่งดู mempool chart สักวัน คุณจะเริ่มเห็นจังหวะของมัน กิจกรรมจะสูงสุดช่วงเวลาทำการของสหรัฐ และเช้าของฝั่งเอเชีย Window ที่ถูกที่สุดที่ผมสังเกตเห็นเป็นประจำคือ — ช่วงเย็นวันเสาร์-อาทิตย์ตอน UTC, และเช้าวันธรรมดาก่อนตลาดสหรัฐเปิด ช่วงสัปดาห์วันหยุด — โดยเฉพาะปลายธันวาคม — มักจะเงียบ เพราะ exchange ลด internal sweep
ถ้าการชำระของคุณไม่เร่งด่วน ตั้งค่าธรรมเนียมต่ำแล้วรอ การชำระแบบ “ต้องส่งเดี๋ยวนี้” ส่วนใหญ่ในโลก ที่จริงไม่ได้จำเป็นต้อง confirm ในสิบนาทีถัดไป หนึ่งชั่วโมงก็โอเค หกชั่วโมงก็มักจะโอเค คนส่งที่ใจเย็นคือคนส่งที่ถูก
ทำไมค่าธรรมเนียมขึ้นลง
แรง 4 ตัวขับ variance ส่วนใหญ่:
- Ordinals และ inscription ยัดข้อมูลตามอำเภอใจเข้าไปในธุรกรรมที่ fee rate สูง
- ETF inflow ทำให้สถาบัน rebalance — ธุรกรรมก้อนใหญ่ระหว่าง cold storage กับ trading desk
- USDT และเงินโอน stablecoin ผ่าน flow แบบ wrapped สร้าง pulse รอบ ๆ payroll cycle
- Pattern ตามวันหยุดและเวลาในรอบวัน สม่ำเสมอน่าทึ่ง — มนุษย์ส่งเงินตามตารางเวลา
ไม่ต้องเดาเรื่องไหนทั้งนั้น chart มันโชว์ให้ดู
รันโหนด ดู mempool ของตัวเอง
ผมต้องพูดเรื่องนี้ Dashboard ทุกตัวที่คุณดู รวมถึงเว็บนี้ กำลังแสดงมุมมองของคนอื่นต่อ network ให้คุณดู ถ้าคุณกำลังจะส่งธุรกรรมที่มีความหมาย คุณควรรันโหนด Bitcoin Core และ query mempool ของมันโดยตรง RPC ตัวเช่น getmempoolinfo และ estimatesmartfee จะบอกคุณตรง ๆ ว่าโหนดของคุณเห็นอะไร โดยไม่มี trust assumption กับบุคคลที่สาม
สมัยก่อน รันโหนดมันยาก ทุกวันนี้ ด้วย Umbrel, Start9, หรือแค่ Raspberry Pi ตัวเปล่า ๆ คุณ sync chain ได้ในบ่ายวันเดียว หนังสือ Mastering Bitcoin ของ Andreas Antonopoulos ยังคงเป็น on-ramp ที่ดีที่สุดในการเข้าใจว่าโหนดของคุณกำลังทำอะไร พอคุณมี mempool ของตัวเอง บทความนี้ทั้งบทก็เลิกเป็น theory — คุณตรวจสอบทุกอย่างได้เอง
Don’t trust. Verify.