หากคุณเคยทำธุรกรรมสกุลเงินดิจิทัล เช่น การส่งเงินไปยังที่อยู่ กระเป๋าเงิน อื่น คุณอาจสังเกตเห็นความล่าช้า ธุรกรรมที่ล่าช้าเหล่านี้มักถูกจัดขึ้นในสิ่งที่เรียกว่า 'mempool'
คู่มือนี้ให้รายละเอียดว่า mempool คืออะไร ทำงานอย่างไร และเหตุใดจึงเป็นส่วนสำคัญของธุรกรรมสกุลเงินดิจิทัล
)
mempool คือ 'ห้องรอ' ประเภทหนึ่งบน โหนด ของ blockchain ซึ่งจัดเก็บธุรกรรมที่ไม่ถูกขุด คำว่า “mempool” เป็นการรวมกันของคำสองคำ – “หน่วยความจำ” และ “พูล” และหมายถึงพื้นที่ที่ธุรกรรมที่รอดำเนินการรออยู่ในแถวก่อนที่จะถูกเพิ่มลงในบล็อคเชน
Bitcoin เป็นบล็อคเชนแรกที่แนะนำและใช้แนวคิดของพูลหน่วยความจำธุรกรรม (mempool) บล็อกเชนอื่น ๆ เช่น Ethereum ก็นำคำนี้มาใช้ในภายหลัง บล็อกเชนทั้งหมดมี mempool บางประเภท แม้ว่าอาจมีคำเรียกที่แตกต่างออกไปก็ตาม ตัวอย่างเช่น Parity blockchain ใช้คำว่า "Transaction Queue" เพื่อแสดงถึง mempools บน chain ของพวกเขา
Mempools มีบทบาทสำคัญในการทำงานของ โหนดบล็อค เชน เพื่อให้ธุรกรรมเสร็จสมบูรณ์และบันทึกไว้ในบล็อคเชน จะต้องเพิ่มธุรกรรมนั้นลงในบล็อกก่อน อย่างไรก็ตาม ไม่ใช่ทุกโหนดในเครือข่ายบล็อกเชนที่สามารถสร้างบล็อกใหม่ได้ ตัวอย่างเช่น บนบล็อกเชนที่ทำงานโดยใช้ กลไก การพิสูจน์การทำงาน เช่น Bitcoin มีเพียง นักขุด เท่านั้นที่สามารถเพิ่มธุรกรรมลงในบล็อกใหม่ได้ สำหรับบล็อกเชนที่ใช้กลไก การพิสูจน์การเดิมพัน เช่น Ethereum มีเพียงผู้ตรวจสอบหรือผู้เสนอเท่านั้นที่สามารถเพิ่มธุรกรรมลงในบล็อกได้
หลังจากเริ่มต้นธุรกรรม ผู้ใช้จะต้องขึ้นอยู่กับผู้ขุดหรือผู้ตรวจสอบเพื่ออนุมัติธุรกรรมและเพิ่มลงในบล็อคเชน สิ่งนี้ไม่ได้เกิดขึ้นทันที แต่มีความล่าช้าระหว่างเวลาที่เริ่มธุรกรรมและเวลาที่จะเสร็จสมบูรณ์ ในช่วงเวลานี้ ธุรกรรมจะถูกจัดเก็บไว้ใน mempool เพื่อรอการยืนยัน
อันดับแรก คุณควรทราบว่าบล็อกเชนไม่ได้มีเพียง mempool เดียว ในทางตรงกันข้าม ทุก โหนด ในเครือข่ายบล็อกเชนโดยเฉพาะจะมีพูลหน่วยความจำธุรกรรมของตัวเอง ตัวอย่างเช่น แต่ละโหนดในบล็อกเชน Bitcoin มีจำนวนธุรกรรมของตัวเองที่รอการเพิ่มลงในบัญชีแยกประเภทสาธารณะ เมมพูลในแต่ละโหนดรวมกันจะรวมกันเป็นเมมพูลแบบรวม
เมื่อผู้ใช้เริ่มต้นธุรกรรม จะถูกส่งไปยังโหนด โหนดจะเพิ่มธุรกรรมลงใน mempool และวางไว้ในคิวเพื่อรอการตรวจสอบ เมื่อธุรกรรมได้รับการตรวจสอบแล้ว ธุรกรรมดังกล่าวจะถูกทำเครื่องหมายเป็น 'รอดำเนินการ' นักขุดสามารถเพิ่มได้เฉพาะธุรกรรมที่ทำเครื่องหมายว่า 'รอดำเนินการ' ลงในบล็อกใหม่เท่านั้น
เพื่อแสดงให้เห็นไดนามิกของ mempool และวงจรการทำธุรกรรม สมมติว่าคุณต้องการส่ง 0.01BTC ให้เพื่อน
ขั้นแรก คุณจะต้องกรอกที่อยู่กระเป๋าเงินของเพื่อนของคุณ ยอมรับค่าธรรมเนียมการทำธุรกรรมบล็อคเชน จากนั้นกด 'ส่ง'
ธุรกรรมจะถูกเพิ่มลงใน mempool ที่ใกล้ที่สุดเป็นธุรกรรม 'อยู่ในคิว'
ถัดไป ธุรกรรมจะออกอากาศไปยังโหนดอื่นๆ ในเครือข่าย แต่จะยังไม่สามารถใช้งานได้บนบล็อกเชน แต่ทุกโหนดจะทำการทดสอบแต่ละรายการเพื่อตรวจสอบว่าธุรกรรมนั้นเป็นของแท้
หากโหนดอนุมัติธุรกรรม สถานะจะเปลี่ยนจาก "อยู่ในคิว" เป็น "รอดำเนินการ"
ในที่สุดธุรกรรมที่รอดำเนินการจะถูกเลือกโดยนักขุดและเพิ่มลงในบล็อกใหม่
ถัดไป คนขุดแร่จะออกอากาศบล็อกนี้กลับไปยังโหนดทั้งหมด เป็นผลให้โหนดทั้งหมดสามารถเข้าถึงธุรกรรมทั้งหมดที่รวมอยู่ในบล็อกใหม่ได้
ในขั้นตอนนี้ โหนดที่ยังมีธุรกรรมของคุณเก็บไว้ใน mempool จะถูกลบทิ้ง
ในที่สุด การทำธุรกรรมของคุณเสร็จสมบูรณ์ และเพื่อนของคุณได้รับ 0.01 BTC
ความแออัดใน mempool ของธุรกรรมเกิดขึ้นเมื่อความต้องการในธุรกรรมเกินจำนวนธุรกรรมที่สามารถใส่ในบล็อกเดียวได้ มีหลายปัจจัยที่สามารถกระตุ้นให้มีงานในมือของ mempool ซึ่งรวมถึง:
ธุรกรรมเฉลี่ย Bitcoin ต่อแผนภูมิบล็อก: Ycharts.com
การทำความเข้าใจปัจจัยเหล่านี้และผลกระทบที่ส่งผลต่อความแออัดของ mempool เป็นสิ่งสำคัญสำหรับผู้ใช้และนักพัฒนา ช่วยให้พวกเขาคาดการณ์ความล่าช้าที่อาจเกิดขึ้นและทำการปรับเปลี่ยนที่จำเป็นเพื่อประหยัด ค่าน้ำมัน และหลีกเลี่ยงความล่าช้า
เนื่องจากธุรกรรมจำนวนมากเกิดขึ้นในเวลาเดียวกัน จึงมีหลายปัจจัยที่กำหนดว่าธุรกรรมใดจะได้รับการจัดลำดับความสำคัญภายใน mempool เราเน้นบางส่วนด้านล่าง
ปัจจัยหลักประการหนึ่งที่กำหนดลำดับการดำเนินการธุรกรรมภายใน mempool คือค่าธรรมเนียมที่แนบมากับแต่ละธุรกรรม นักขุดและผู้ตรวจสอบความถูกต้องขับเคลื่อนด้วยผลกำไร และพวกเขาจะต้องเลือกธุรกรรมที่ต้องการเพิ่มลงในบล็อกใหม่ ไม่น่าแปลกใจเลยที่พวกเขาชอบการทำธุรกรรมที่มีค่าธรรมเนียมสูงกว่า เนื่องจากสิ่งนี้แปลไปสู่รางวัลที่มากขึ้น
ดังนั้นค่าธรรมเนียมที่เกี่ยวข้องกับธุรกรรมจึงมีอิทธิพลอย่างมากต่อโอกาสในการรวมไว้ในบล็อก โดยปกติแล้วนักขุดจะจัดธุรกรรมภายใน mempool ในรูปของค่าธรรมเนียมต่อหน่วยของข้อมูลธุรกรรม ซึ่งโดยทั่วไปจะแสดงเป็น satoshi/ไบต์ จากนั้นพวกเขาจะจัดลำดับความสำคัญของธุรกรรมที่มีอัตราค่าธรรมเนียมสูงสุดจนกว่าบล็อกจะเต็ม
วิธีการคิดค่าธรรมเนียมนี้จะสร้างตลาดที่มีการแข่งขันภายใน mempools บังคับให้ผู้ใช้เลือกระหว่างการชำระค่าธรรมเนียมที่สูงขึ้นเพื่อให้การทำธุรกรรมเสร็จสิ้นอย่างรวดเร็ว หรือค่าธรรมเนียมที่ลดลงโดยใช้เวลารอนานขึ้น
อย่างไรก็ตามผู้ใช้สามารถประมาณค่าธรรมเนียมที่เหมาะสมที่สุดซึ่งไม่แพงเกินไป แต่ยังคงได้รับการยืนยันอย่างทันท่วงที ซึ่งสามารถทำได้โดยการพิจารณาปัจจัยบางประการ เช่น ข้อมูลในอดีต ปริมาณธุรกรรม ความแออัดของเครือข่าย และการกระจายค่าธรรมเนียมภายใน mempool แพลตฟอร์มยอดนิยมส่วนใหญ่ เช่น กระเป๋าเงินดิจิทัล และการแลกเปลี่ยน มีเครื่องมือที่สามารถวิเคราะห์สถานะปัจจุบันของ mempool และแนะนำค่าธรรมเนียมที่เหมาะสมที่สุด
ถึงกระนั้น การประมาณค่าธรรมเนียมให้แม่นยำก็ไม่ใช่วิทยาศาสตร์ที่แน่นอน และยังมีความท้าทายอยู่ ตัวอย่างเช่น สภาวะเครือข่ายสามารถเปลี่ยนแปลงได้อย่างรวดเร็ว ส่งผลให้ข้อมูลประวัติไม่น่าเชื่อถือ นอกจากนี้ ค่าธรรมเนียมอาจมีความผันผวนสูงในช่วงที่มีความต้องการสูง ซึ่งนำไปสู่ความผันผวนของค่าธรรมเนียมที่ไม่คาดคิด
ความแออัดของเครือข่ายส่งผลกระทบต่อวิธีการประมวลผลธุรกรรมและการเปลี่ยนแปลงของค่าธรรมเนียมก๊าซในรูปแบบต่างๆ:
Mempools ไม่จำเป็นต้องเก็บรายการธุรกรรมทั้งหมดที่ตรงกันเพื่อรอการเพิ่มลงในบล็อก อย่างไรก็ตาม พวกเขาต้องรู้ว่าธุรกรรมใดบ้างที่ถูกเพิ่มเข้าไปในบล็อคเชนแล้ว เพื่อที่จะสามารถลบมันออกจาก mempool ได้ ในกรณีที่ยังคงเก็บไว้ที่นั่น เมื่อนักขุดเผยแพร่บล็อกใหม่ไปยังโหนด พวกเขาสามารถตรวจสอบข้อมูลนี้และทำให้บรรลุการซิงโครไนซ์ mempool สิ่งนี้ทำให้มั่นใจได้ว่าเฉพาะธุรกรรมที่ไม่ถูกขุดเท่านั้นที่ถูกเก็บไว้ใน mempool
ในทางกลับกัน Block space คือความจุที่สามารถรวมธุรกรรมไว้ในบล็อกใหม่ได้ เนื่องจากพื้นที่นี้มีจำกัด นักขุดหรือผู้ตรวจสอบจะจัดลำดับความสำคัญของธุรกรรมที่มีค่าธรรมเนียมก๊าซที่สูงขึ้น ในขณะที่ส่วนที่เหลือจะถูกส่งไปยัง mempool เพื่อรอการยืนยัน
ทุกธุรกรรมที่เพิ่มลงใน mempool คือชิ้นส่วนของข้อมูลที่มีขนาดไม่เกินสองสามกิโลไบต์ (kb) ผลรวมของไบต์ทั้งหมดที่ประกอบเป็นธุรกรรมคือขนาดของ mempool ขนาด mempool ที่ใหญ่ขึ้นบ่งชี้ว่ามีธุรกรรมจำนวนมากที่รอการยืนยัน นอกจากนี้ยังอาจบ่งบอกถึงการเพิ่มขึ้นอย่างรวดเร็วของการรับส่งข้อมูลเครือข่าย
ตารางขนาดเมมพูล ที่มา: Blockchain.com
แม้ว่า mempool ไม่มีขนาดสูงสุดที่กำหนดไว้ล่วงหน้า แต่โหนดสามารถกำหนดขีดจำกัดขนาดสำหรับ mempool ได้ โดยปกติจะตั้งค่าไว้ที่ 300MB สำหรับ Bitcoin เมื่อ mempool ถึงเกณฑ์นี้ โหนดอาจบังคับใช้ข้อกำหนด ค่าธรรมเนียมการทำธุรกรรม ขั้นต่ำ ธุรกรรมใดๆ ที่มีอัตราค่าธรรมเนียมต่ำกว่าขีดจำกัดนี้จะถูกลบออกจาก mempool การทำเช่นนี้ โหนดสามารถหลีกเลี่ยงการหยุดทำงานเนื่องจากมีธุรกรรมที่ค้างอยู่มากเกินไป
การทำความเข้าใจว่าขนาด mempool ส่งผลต่อค่าธรรมเนียมและเวลาของธุรกรรมอย่างไรเป็นสิ่งสำคัญ เนื่องจากช่วยให้ผู้ใช้สามารถเลือกเวลาที่ดีที่สุดในการทำธุรกรรมได้ มีเว็บไซต์หลายแห่งที่ติดตามขนาด mempool ทั่วโลกบนเครือข่าย Bitcoin เช่น mempool.space และ BitcoinTicker.co
ตอนนี้เรามาดูกันว่า mempools ทำงานอย่างไรใน Bitcoin และ Ethereum ซึ่งเป็นสองบล็อกเชนที่ใหญ่ที่สุดในโลก
ธุรกรรมที่ถูกต้องทั้งหมดที่ส่งผ่านเครือข่าย Bitcoin จะไม่ถูกเพิ่มลงในบล็อคเชนทันที พวกเขาต้องรอใน Bitcoin mempool
เดิมที ค่าธรรมเนียมการทำธุรกรรมใน Bitcoin ถูกวัดเป็นจำนวน satoshi ต่อไบต์ของการทำธุรกรรม อย่างไรก็ตาม สิ่งนี้เปลี่ยนไปหลังจากการอัปเกรด SegWit ตอนนี้ธุรกรรมใน Bitcoin mempool จะวัดเป็นหน่วยน้ำหนัก การอัปเกรดนี้นำเสนอสิ่งที่เรียกว่าฟีเจอร์ SegWit
ผลจากการอัพเกรดทำให้บล็อก Bitcoin สามารถรองรับธุรกรรมได้มากขึ้นถึงสี่เท่า
เช่นเดียวกับ Bitcoin ในตอนแรก Ethereum blockchain ใช้ Ethereum mempool เพื่อทำหน้าที่เป็นที่เก็บข้อมูลชั่วคราวสำหรับธุรกรรมที่รอให้นักขุดเพิ่มลงในบล็อก อย่างไรก็ตาม หลังจากที่ Ethereum ย้ายจากกลไก การพิสูจน์การทำงาน ไปสู่กลไกฉันทามติของการพิสูจน์ผลประโยชน์ เครือข่ายได้แนะนำแนวคิดของตัวสร้างบล็อก
ตัวสร้างบล็อกเป็นหน่วยงานบุคคลที่สามที่เชี่ยวชาญซึ่งรวบรวมธุรกรรมเพื่อสร้างชุดธุรกรรมที่ได้รับการปรับปรุงซึ่งสามารถสร้างบล็อกได้ ซึ่งทำได้โดยการเรียงลำดับใหม่หรือรวมธุรกรรมบางอย่างในชุดรวมจากพูลหน่วยความจำธุรกรรม ในที่สุดพวกเขาก็เสนอบันเดิลให้กับผู้เสนอ/ผู้ตรวจสอบเพื่อรวมไว้ในบล็อกโดยมีค่าธรรมเนียม
มูลค่าของบล็อกขึ้นอยู่กับธุรกรรมที่มีอยู่ ดังนั้นจึงกระตุ้นให้ผู้สร้างบล็อกสร้างบล็อกที่มีกำไรมากที่สุด เนื่องจากมีแนวโน้มที่จะได้รับการจัดลำดับความสำคัญและยืนยันได้เร็วขึ้นโดยผู้ตรวจสอบความถูกต้อง ดังนั้น เช่นเดียวกับบล็อกเชนอื่น ๆ ยิ่งคุณจ่ายค่าธรรมเนียมบน Ethereum มากเท่าไร โอกาสที่ธุรกรรมของคุณจะได้รับการยืนยันเร็วขึ้นก็จะยิ่งสูงขึ้นเท่านั้น
mempool เป็นองค์ประกอบสำคัญในธุรกรรมบล็อคเชน โดยทำหน้าที่เป็นรูปแบบหนึ่งของ 'ห้องรอ' ซึ่งธุรกรรมที่ยังไม่ได้รับการยืนยันรอการตรวจสอบความถูกต้อง และท้ายที่สุดจะรวมไว้ในบล็อกใหม่ การทำความเข้าใจกลไกของ mempool เช่น การเข้าคิวธุรกรรม การตรวจสอบ และการจัดลำดับความสำคัญของค่าธรรมเนียม เป็นสิ่งจำเป็นสำหรับผู้ใช้สกุลเงินดิจิทัล
株式
内容
หากคุณเคยทำธุรกรรมสกุลเงินดิจิทัล เช่น การส่งเงินไปยังที่อยู่ กระเป๋าเงิน อื่น คุณอาจสังเกตเห็นความล่าช้า ธุรกรรมที่ล่าช้าเหล่านี้มักถูกจัดขึ้นในสิ่งที่เรียกว่า 'mempool'
คู่มือนี้ให้รายละเอียดว่า mempool คืออะไร ทำงานอย่างไร และเหตุใดจึงเป็นส่วนสำคัญของธุรกรรมสกุลเงินดิจิทัล
)
mempool คือ 'ห้องรอ' ประเภทหนึ่งบน โหนด ของ blockchain ซึ่งจัดเก็บธุรกรรมที่ไม่ถูกขุด คำว่า “mempool” เป็นการรวมกันของคำสองคำ – “หน่วยความจำ” และ “พูล” และหมายถึงพื้นที่ที่ธุรกรรมที่รอดำเนินการรออยู่ในแถวก่อนที่จะถูกเพิ่มลงในบล็อคเชน
Bitcoin เป็นบล็อคเชนแรกที่แนะนำและใช้แนวคิดของพูลหน่วยความจำธุรกรรม (mempool) บล็อกเชนอื่น ๆ เช่น Ethereum ก็นำคำนี้มาใช้ในภายหลัง บล็อกเชนทั้งหมดมี mempool บางประเภท แม้ว่าอาจมีคำเรียกที่แตกต่างออกไปก็ตาม ตัวอย่างเช่น Parity blockchain ใช้คำว่า "Transaction Queue" เพื่อแสดงถึง mempools บน chain ของพวกเขา
Mempools มีบทบาทสำคัญในการทำงานของ โหนดบล็อค เชน เพื่อให้ธุรกรรมเสร็จสมบูรณ์และบันทึกไว้ในบล็อคเชน จะต้องเพิ่มธุรกรรมนั้นลงในบล็อกก่อน อย่างไรก็ตาม ไม่ใช่ทุกโหนดในเครือข่ายบล็อกเชนที่สามารถสร้างบล็อกใหม่ได้ ตัวอย่างเช่น บนบล็อกเชนที่ทำงานโดยใช้ กลไก การพิสูจน์การทำงาน เช่น Bitcoin มีเพียง นักขุด เท่านั้นที่สามารถเพิ่มธุรกรรมลงในบล็อกใหม่ได้ สำหรับบล็อกเชนที่ใช้กลไก การพิสูจน์การเดิมพัน เช่น Ethereum มีเพียงผู้ตรวจสอบหรือผู้เสนอเท่านั้นที่สามารถเพิ่มธุรกรรมลงในบล็อกได้
หลังจากเริ่มต้นธุรกรรม ผู้ใช้จะต้องขึ้นอยู่กับผู้ขุดหรือผู้ตรวจสอบเพื่ออนุมัติธุรกรรมและเพิ่มลงในบล็อคเชน สิ่งนี้ไม่ได้เกิดขึ้นทันที แต่มีความล่าช้าระหว่างเวลาที่เริ่มธุรกรรมและเวลาที่จะเสร็จสมบูรณ์ ในช่วงเวลานี้ ธุรกรรมจะถูกจัดเก็บไว้ใน mempool เพื่อรอการยืนยัน
อันดับแรก คุณควรทราบว่าบล็อกเชนไม่ได้มีเพียง mempool เดียว ในทางตรงกันข้าม ทุก โหนด ในเครือข่ายบล็อกเชนโดยเฉพาะจะมีพูลหน่วยความจำธุรกรรมของตัวเอง ตัวอย่างเช่น แต่ละโหนดในบล็อกเชน Bitcoin มีจำนวนธุรกรรมของตัวเองที่รอการเพิ่มลงในบัญชีแยกประเภทสาธารณะ เมมพูลในแต่ละโหนดรวมกันจะรวมกันเป็นเมมพูลแบบรวม
เมื่อผู้ใช้เริ่มต้นธุรกรรม จะถูกส่งไปยังโหนด โหนดจะเพิ่มธุรกรรมลงใน mempool และวางไว้ในคิวเพื่อรอการตรวจสอบ เมื่อธุรกรรมได้รับการตรวจสอบแล้ว ธุรกรรมดังกล่าวจะถูกทำเครื่องหมายเป็น 'รอดำเนินการ' นักขุดสามารถเพิ่มได้เฉพาะธุรกรรมที่ทำเครื่องหมายว่า 'รอดำเนินการ' ลงในบล็อกใหม่เท่านั้น
เพื่อแสดงให้เห็นไดนามิกของ mempool และวงจรการทำธุรกรรม สมมติว่าคุณต้องการส่ง 0.01BTC ให้เพื่อน
ขั้นแรก คุณจะต้องกรอกที่อยู่กระเป๋าเงินของเพื่อนของคุณ ยอมรับค่าธรรมเนียมการทำธุรกรรมบล็อคเชน จากนั้นกด 'ส่ง'
ธุรกรรมจะถูกเพิ่มลงใน mempool ที่ใกล้ที่สุดเป็นธุรกรรม 'อยู่ในคิว'
ถัดไป ธุรกรรมจะออกอากาศไปยังโหนดอื่นๆ ในเครือข่าย แต่จะยังไม่สามารถใช้งานได้บนบล็อกเชน แต่ทุกโหนดจะทำการทดสอบแต่ละรายการเพื่อตรวจสอบว่าธุรกรรมนั้นเป็นของแท้
หากโหนดอนุมัติธุรกรรม สถานะจะเปลี่ยนจาก "อยู่ในคิว" เป็น "รอดำเนินการ"
ในที่สุดธุรกรรมที่รอดำเนินการจะถูกเลือกโดยนักขุดและเพิ่มลงในบล็อกใหม่
ถัดไป คนขุดแร่จะออกอากาศบล็อกนี้กลับไปยังโหนดทั้งหมด เป็นผลให้โหนดทั้งหมดสามารถเข้าถึงธุรกรรมทั้งหมดที่รวมอยู่ในบล็อกใหม่ได้
ในขั้นตอนนี้ โหนดที่ยังมีธุรกรรมของคุณเก็บไว้ใน mempool จะถูกลบทิ้ง
ในที่สุด การทำธุรกรรมของคุณเสร็จสมบูรณ์ และเพื่อนของคุณได้รับ 0.01 BTC
ความแออัดใน mempool ของธุรกรรมเกิดขึ้นเมื่อความต้องการในธุรกรรมเกินจำนวนธุรกรรมที่สามารถใส่ในบล็อกเดียวได้ มีหลายปัจจัยที่สามารถกระตุ้นให้มีงานในมือของ mempool ซึ่งรวมถึง:
ธุรกรรมเฉลี่ย Bitcoin ต่อแผนภูมิบล็อก: Ycharts.com
การทำความเข้าใจปัจจัยเหล่านี้และผลกระทบที่ส่งผลต่อความแออัดของ mempool เป็นสิ่งสำคัญสำหรับผู้ใช้และนักพัฒนา ช่วยให้พวกเขาคาดการณ์ความล่าช้าที่อาจเกิดขึ้นและทำการปรับเปลี่ยนที่จำเป็นเพื่อประหยัด ค่าน้ำมัน และหลีกเลี่ยงความล่าช้า
เนื่องจากธุรกรรมจำนวนมากเกิดขึ้นในเวลาเดียวกัน จึงมีหลายปัจจัยที่กำหนดว่าธุรกรรมใดจะได้รับการจัดลำดับความสำคัญภายใน mempool เราเน้นบางส่วนด้านล่าง
ปัจจัยหลักประการหนึ่งที่กำหนดลำดับการดำเนินการธุรกรรมภายใน mempool คือค่าธรรมเนียมที่แนบมากับแต่ละธุรกรรม นักขุดและผู้ตรวจสอบความถูกต้องขับเคลื่อนด้วยผลกำไร และพวกเขาจะต้องเลือกธุรกรรมที่ต้องการเพิ่มลงในบล็อกใหม่ ไม่น่าแปลกใจเลยที่พวกเขาชอบการทำธุรกรรมที่มีค่าธรรมเนียมสูงกว่า เนื่องจากสิ่งนี้แปลไปสู่รางวัลที่มากขึ้น
ดังนั้นค่าธรรมเนียมที่เกี่ยวข้องกับธุรกรรมจึงมีอิทธิพลอย่างมากต่อโอกาสในการรวมไว้ในบล็อก โดยปกติแล้วนักขุดจะจัดธุรกรรมภายใน mempool ในรูปของค่าธรรมเนียมต่อหน่วยของข้อมูลธุรกรรม ซึ่งโดยทั่วไปจะแสดงเป็น satoshi/ไบต์ จากนั้นพวกเขาจะจัดลำดับความสำคัญของธุรกรรมที่มีอัตราค่าธรรมเนียมสูงสุดจนกว่าบล็อกจะเต็ม
วิธีการคิดค่าธรรมเนียมนี้จะสร้างตลาดที่มีการแข่งขันภายใน mempools บังคับให้ผู้ใช้เลือกระหว่างการชำระค่าธรรมเนียมที่สูงขึ้นเพื่อให้การทำธุรกรรมเสร็จสิ้นอย่างรวดเร็ว หรือค่าธรรมเนียมที่ลดลงโดยใช้เวลารอนานขึ้น
อย่างไรก็ตามผู้ใช้สามารถประมาณค่าธรรมเนียมที่เหมาะสมที่สุดซึ่งไม่แพงเกินไป แต่ยังคงได้รับการยืนยันอย่างทันท่วงที ซึ่งสามารถทำได้โดยการพิจารณาปัจจัยบางประการ เช่น ข้อมูลในอดีต ปริมาณธุรกรรม ความแออัดของเครือข่าย และการกระจายค่าธรรมเนียมภายใน mempool แพลตฟอร์มยอดนิยมส่วนใหญ่ เช่น กระเป๋าเงินดิจิทัล และการแลกเปลี่ยน มีเครื่องมือที่สามารถวิเคราะห์สถานะปัจจุบันของ mempool และแนะนำค่าธรรมเนียมที่เหมาะสมที่สุด
ถึงกระนั้น การประมาณค่าธรรมเนียมให้แม่นยำก็ไม่ใช่วิทยาศาสตร์ที่แน่นอน และยังมีความท้าทายอยู่ ตัวอย่างเช่น สภาวะเครือข่ายสามารถเปลี่ยนแปลงได้อย่างรวดเร็ว ส่งผลให้ข้อมูลประวัติไม่น่าเชื่อถือ นอกจากนี้ ค่าธรรมเนียมอาจมีความผันผวนสูงในช่วงที่มีความต้องการสูง ซึ่งนำไปสู่ความผันผวนของค่าธรรมเนียมที่ไม่คาดคิด
ความแออัดของเครือข่ายส่งผลกระทบต่อวิธีการประมวลผลธุรกรรมและการเปลี่ยนแปลงของค่าธรรมเนียมก๊าซในรูปแบบต่างๆ:
Mempools ไม่จำเป็นต้องเก็บรายการธุรกรรมทั้งหมดที่ตรงกันเพื่อรอการเพิ่มลงในบล็อก อย่างไรก็ตาม พวกเขาต้องรู้ว่าธุรกรรมใดบ้างที่ถูกเพิ่มเข้าไปในบล็อคเชนแล้ว เพื่อที่จะสามารถลบมันออกจาก mempool ได้ ในกรณีที่ยังคงเก็บไว้ที่นั่น เมื่อนักขุดเผยแพร่บล็อกใหม่ไปยังโหนด พวกเขาสามารถตรวจสอบข้อมูลนี้และทำให้บรรลุการซิงโครไนซ์ mempool สิ่งนี้ทำให้มั่นใจได้ว่าเฉพาะธุรกรรมที่ไม่ถูกขุดเท่านั้นที่ถูกเก็บไว้ใน mempool
ในทางกลับกัน Block space คือความจุที่สามารถรวมธุรกรรมไว้ในบล็อกใหม่ได้ เนื่องจากพื้นที่นี้มีจำกัด นักขุดหรือผู้ตรวจสอบจะจัดลำดับความสำคัญของธุรกรรมที่มีค่าธรรมเนียมก๊าซที่สูงขึ้น ในขณะที่ส่วนที่เหลือจะถูกส่งไปยัง mempool เพื่อรอการยืนยัน
ทุกธุรกรรมที่เพิ่มลงใน mempool คือชิ้นส่วนของข้อมูลที่มีขนาดไม่เกินสองสามกิโลไบต์ (kb) ผลรวมของไบต์ทั้งหมดที่ประกอบเป็นธุรกรรมคือขนาดของ mempool ขนาด mempool ที่ใหญ่ขึ้นบ่งชี้ว่ามีธุรกรรมจำนวนมากที่รอการยืนยัน นอกจากนี้ยังอาจบ่งบอกถึงการเพิ่มขึ้นอย่างรวดเร็วของการรับส่งข้อมูลเครือข่าย
ตารางขนาดเมมพูล ที่มา: Blockchain.com
แม้ว่า mempool ไม่มีขนาดสูงสุดที่กำหนดไว้ล่วงหน้า แต่โหนดสามารถกำหนดขีดจำกัดขนาดสำหรับ mempool ได้ โดยปกติจะตั้งค่าไว้ที่ 300MB สำหรับ Bitcoin เมื่อ mempool ถึงเกณฑ์นี้ โหนดอาจบังคับใช้ข้อกำหนด ค่าธรรมเนียมการทำธุรกรรม ขั้นต่ำ ธุรกรรมใดๆ ที่มีอัตราค่าธรรมเนียมต่ำกว่าขีดจำกัดนี้จะถูกลบออกจาก mempool การทำเช่นนี้ โหนดสามารถหลีกเลี่ยงการหยุดทำงานเนื่องจากมีธุรกรรมที่ค้างอยู่มากเกินไป
การทำความเข้าใจว่าขนาด mempool ส่งผลต่อค่าธรรมเนียมและเวลาของธุรกรรมอย่างไรเป็นสิ่งสำคัญ เนื่องจากช่วยให้ผู้ใช้สามารถเลือกเวลาที่ดีที่สุดในการทำธุรกรรมได้ มีเว็บไซต์หลายแห่งที่ติดตามขนาด mempool ทั่วโลกบนเครือข่าย Bitcoin เช่น mempool.space และ BitcoinTicker.co
ตอนนี้เรามาดูกันว่า mempools ทำงานอย่างไรใน Bitcoin และ Ethereum ซึ่งเป็นสองบล็อกเชนที่ใหญ่ที่สุดในโลก
ธุรกรรมที่ถูกต้องทั้งหมดที่ส่งผ่านเครือข่าย Bitcoin จะไม่ถูกเพิ่มลงในบล็อคเชนทันที พวกเขาต้องรอใน Bitcoin mempool
เดิมที ค่าธรรมเนียมการทำธุรกรรมใน Bitcoin ถูกวัดเป็นจำนวน satoshi ต่อไบต์ของการทำธุรกรรม อย่างไรก็ตาม สิ่งนี้เปลี่ยนไปหลังจากการอัปเกรด SegWit ตอนนี้ธุรกรรมใน Bitcoin mempool จะวัดเป็นหน่วยน้ำหนัก การอัปเกรดนี้นำเสนอสิ่งที่เรียกว่าฟีเจอร์ SegWit
ผลจากการอัพเกรดทำให้บล็อก Bitcoin สามารถรองรับธุรกรรมได้มากขึ้นถึงสี่เท่า
เช่นเดียวกับ Bitcoin ในตอนแรก Ethereum blockchain ใช้ Ethereum mempool เพื่อทำหน้าที่เป็นที่เก็บข้อมูลชั่วคราวสำหรับธุรกรรมที่รอให้นักขุดเพิ่มลงในบล็อก อย่างไรก็ตาม หลังจากที่ Ethereum ย้ายจากกลไก การพิสูจน์การทำงาน ไปสู่กลไกฉันทามติของการพิสูจน์ผลประโยชน์ เครือข่ายได้แนะนำแนวคิดของตัวสร้างบล็อก
ตัวสร้างบล็อกเป็นหน่วยงานบุคคลที่สามที่เชี่ยวชาญซึ่งรวบรวมธุรกรรมเพื่อสร้างชุดธุรกรรมที่ได้รับการปรับปรุงซึ่งสามารถสร้างบล็อกได้ ซึ่งทำได้โดยการเรียงลำดับใหม่หรือรวมธุรกรรมบางอย่างในชุดรวมจากพูลหน่วยความจำธุรกรรม ในที่สุดพวกเขาก็เสนอบันเดิลให้กับผู้เสนอ/ผู้ตรวจสอบเพื่อรวมไว้ในบล็อกโดยมีค่าธรรมเนียม
มูลค่าของบล็อกขึ้นอยู่กับธุรกรรมที่มีอยู่ ดังนั้นจึงกระตุ้นให้ผู้สร้างบล็อกสร้างบล็อกที่มีกำไรมากที่สุด เนื่องจากมีแนวโน้มที่จะได้รับการจัดลำดับความสำคัญและยืนยันได้เร็วขึ้นโดยผู้ตรวจสอบความถูกต้อง ดังนั้น เช่นเดียวกับบล็อกเชนอื่น ๆ ยิ่งคุณจ่ายค่าธรรมเนียมบน Ethereum มากเท่าไร โอกาสที่ธุรกรรมของคุณจะได้รับการยืนยันเร็วขึ้นก็จะยิ่งสูงขึ้นเท่านั้น
mempool เป็นองค์ประกอบสำคัญในธุรกรรมบล็อคเชน โดยทำหน้าที่เป็นรูปแบบหนึ่งของ 'ห้องรอ' ซึ่งธุรกรรมที่ยังไม่ได้รับการยืนยันรอการตรวจสอบความถูกต้อง และท้ายที่สุดจะรวมไว้ในบล็อกใหม่ การทำความเข้าใจกลไกของ mempool เช่น การเข้าคิวธุรกรรม การตรวจสอบ และการจัดลำดับความสำคัญของค่าธรรมเนียม เป็นสิ่งจำเป็นสำหรับผู้ใช้สกุลเงินดิจิทัล