ข้ามไปยังเนื้อหา

ค่าธรรมเนียม Blob และต้นทุนของ Rollup

คู่มือที่เริ่มจากการตรวจสอบ blob gas ของ Ethereum ตาราง Blob ปัจจุบัน การใช้ประโยชน์จากแบตช์ การจัดสรรค่าธรรมเนียมของ Rollup และความแตกต่างระหว่างต้นทุนการโพสต์บน L1 กับยอดที่ผู้ใช้ L2 ถูกเรียกเก็บ

อัปเดต

จัดทำขึ้นเพื่อการศึกษาเท่านั้น ไม่ใช่คำแนะนำการลงทุน การลงทุนอาจทำให้สูญเสียเงินลงทุนได้

คำตอบโดยตรง

ค่าธรรมเนียม Blob ของ Ethereum คือค่าธรรมเนียมระดับโปรโตคอลสำหรับการเผยแพร่ข้อมูล Blob ไม่ใช่ค่าธรรมเนียมทั้งหมดที่ผู้ใช้ L2 จ่าย ธุรกรรมที่มี Blob จ่าย blob_count * 131,072 * blob_base_fee_per_blob_gas สำหรับ blob gas และจ่าย gas สำหรับการประมวลผลทั่วไปแยกต่างหาก จากนั้น Rollup อาจจัดสรรต้นทุน L1 นี้ตามกฎด้านการบีบอัด ตัวคูณ ค่าใช้จ่ายส่วนเพิ่ม และการกำหนดราคาของผู้ดำเนินการ ดังนั้นใบเสร็จของผู้ส่งแบตช์ การประมาณต้นทุนของ Rollup ราคาที่เสนอแก่ผู้ใช้ และรายได้ของผู้ดำเนินการจึงเป็นคนละรายการกัน

Blob เป็นข้อมูลส่วนพ่วงชั่วคราวที่ผูกกับแฮช KZG แบบมีเวอร์ชัน EVM ใช้ commitment ได้ แต่ไม่สามารถอ่านไบต์ใน Blob โดยตรง PeerDAS เปลี่ยนวิธีที่โหนด Ethereum กระจายและสุ่มตรวจข้อมูลดังกล่าว แต่ไม่ได้ทำให้ Blob เป็นคลังถาวร หรือทำให้สูตรค่าธรรมเนียมผู้ใช้ของ Rollup หนึ่งใช้ได้กับทุกระบบ ความจุยังขึ้นอยู่กับ fork ด้วย ณ 2026-08-13 mainnet ของ Ethereum หลัง Fusaka BPO2 มีเป้าหมาย 14 blobs และอนุญาตสูงสุด 21 blobs ต่อบล็อก แทนตารางเดิม 3/6 และ 6/9

กลไกการทำงาน

  1. กำหนดบริบทการวัดให้ชัดเจน ได้แก่ เครือข่าย Ethereum บล็อกหรือสล็อต fork ที่ใช้งานและตาราง Blob-Parameter-Only การติดตั้ง Rollup และเวอร์ชันสูตรค่าธรรมเนียม ต้นทาง L1 โทเค็นที่ใช้จ่ายค่าธรรมเนียม และเวลาของอัตราแลกเปลี่ยน ห้ามนำพารามิเตอร์ mainnet ปัจจุบันไปใช้กับบล็อกเก่า testnet หรือ fork ในอนาคต
  2. ระบุวัตถุที่ใช้เผยแพร่จากหลักฐานบนเชน บันทึกธุรกรรมประเภท 3 ผู้ส่ง ใบเสร็จ แฮชแบบมีเวอร์ชัน จำนวน Blob ค่า blob_gas_used จำนวนไบต์ที่เข้ารหัสและใช้เป็น payload ได้ การบีบอัดหรือการจัดเฟรม และตรวจว่า Rollup ใช้ Blob, calldata หรือเส้นทางความพร้อมใช้งานของข้อมูลแบบอื่น
  3. อ่านตลาดค่าธรรมเนียมทั้งสองตลาด Blob gas ใช้ 131,072 blob gas per blob โดยต้องแยก blob_base_fee_per_blob_gas ที่เกิดขึ้นจริงออกจากเพดาน max_fee_per_blob_gas ของผู้ส่ง และบันทึก gas ที่ใช้ประมวลผล ราคาจริงต่อ gas และค่าธรรมเนียมลำดับความสำคัญแยกต่างหาก หลัง EIP-7918 ราคา Blob ระดับต่ำมีความสัมพันธ์ด้านราคาสำรองกับต้นทุนการประมวลผล แม้ทรัพยากรทั้งสองยังแยกบัญชีกัน
  4. สร้างบัญชี L1 ที่เกิดขึ้นจริงของผู้ส่งแบตช์ใหม่ ได้แก่ ค่าธรรมเนียม Blob ที่ถูกเผา ค่าประมวลผลและ tip รวมถึงธุรกรรมผลลัพธ์สถานะ proof, bridge หรือการโพสต์ที่จับคู่กัน ค่าธรรมเนียม Blob ยังถูกเรียกเก็บเมื่อการประมวลผลธุรกรรมล้มเหลว และเพดานค่าธรรมเนียมส่วนที่ไม่ถูกเรียกเก็บไม่ใช่ต้นทุนหรือเงินคืน
  5. ทำซ้ำสูตรจัดสรรปัจจุบันของ Rollup นั้นโดยเฉพาะ บันทึกไบต์หลังบีบอัดหรือหน่วยวัดอื่น ตัวคูณ ค่าใช้จ่ายคงที่ ค่าผู้ดำเนินการหรือค่าลำดับความสำคัญ เงินคืน และกฎ fallback เอกสาร OP Stack ใช้เป็นหลักฐานได้เฉพาะระบบที่ติดตั้งด้วย OP เท่านั้น Rollup อื่นอาจจัดสรรต้นทุนต่างกัน
  6. แยกบัญชีสี่ชุด ได้แก่ ต้นทุน L1 ของ batcher ต้นทุนข้อมูล L1 ที่ Rollup จัดสรร ยอดหักจริงของผู้ใช้ และรายได้หรือส่วนต่างของผู้ดำเนินการ การหารเท่ากันตามจำนวนธุรกรรมเป็นเพียงการจัดสรรเพื่อการวิเคราะห์ ระดับการเติมแบตช์ padding องค์ประกอบธุรกรรม การหน่วงการโพสต์ และการอุดหนุนข้ามรายการอาจทำให้ตัวเลขต่างจากราคาที่โปรโตคอลเสนอ
  7. กระทบยอดกับใบเสร็จและทดสอบภาวะกดดัน ทดสอบการพุ่งของราคา Blob ความหนาแน่นของการประมวลผล อัตราแลกเปลี่ยน ETH และโทเค็นค่าธรรมเนียม การใช้แบตช์ต่ำ ความล่าช้าของ Sequencer การ fallback ไปใช้ calldata การอัปเกรดสูตร การปรับโครงสร้าง L1 การเก็บข้อมูลชั่วคราว และความล้มเหลวของคลังข้อมูล รายงานบล็อก หน่วย สมมติฐาน และต้นทุนที่กระทบยอดไม่ได้กับตัวเลขต่อผู้ใช้ทุกครั้ง

ตัวอย่างคำนวณ

  • ค่าธรรมเนียม Blob ระดับโปรโตคอล Blob สองรายการใช้ 2 * 131,072 = 262,144 blob gas ที่ 30 gwei per blob gas ค่าธรรมเนียมเท่ากับ 262,144 * 30 * 10^-9 = 0.00786432 ETH เมื่อ $2,500 per ETH จะมีมูลค่า $19.6608 โดยยังไม่รวมค่าประมวลผลทั่วไปของธุรกรรมที่มี Blob
  • สองบัญชีค่าธรรมเนียมในธุรกรรมเดียว หากธุรกรรมประเภท 3 เดียวกันใช้ 120,000 execution gas ที่ราคาจริง 22 gwei ต้นทุนการประมวลผลคือ 120,000 * 22 * 10^-9 = 0.00264 ETH ค่าธรรมเนียม L1 รวมคือ 0.00786432 + 0.00264 = 0.01050432 ETH หรือ $26.2608 ตามอัตราแลกเปลี่ยนที่กำหนด Blob gas และ gas ประมวลผลยังเป็นข้อมูลนำเข้าคนละรายการ
  • การใช้ประโยชน์และการจัดสรรแบตช์ เพิ่มต้นทุน proof และการโพสต์ที่จับคู่แล้ว $4.0000 ทำให้ต้นทุนแบตช์เพื่อการวิเคราะห์เป็น $30.2608 สำหรับ 2,000 included transactions การจัดสรรเท่ากันคือ $30.2608 / 2,000 = $0.0151304 per transaction แต่หากมีเพียง 800 รายการ จะเป็น $30.2608 / 800 = $0.0378260 ตัวเลขทั้งสองไม่ใช่ราคาที่เสนอแก่ผู้ใช้หรือส่วนต่างที่ผู้ดำเนินการได้รับจริงโดยอัตโนมัติ
  • ความจุปัจจุบันและหน่วยไบต์ ภายใต้ตาราง 14/21 ที่ผูกกับวันที่ ค่าเป้าหมายและค่าสูงสุดคือ 14 * 131,072 = 1,835,008 และ 21 * 131,072 = 2,752,512 blob-gas units ซึ่งตรงกับ Blob ที่เข้ารหัส 1.75 MiB และ 2.625 MiB เนื่องจาก payload ทั่วไปมักใช้ 31 ไบต์ใน field element ขนาด 32 ไบต์ payload ที่ใช้ได้จึงเป็น 14 * 126,976 = 1.6953125 MiB ที่เป้าหมาย และ 21 * 126,976 = 2.54296875 MiB ที่ค่าสูงสุด ก่อนการบีบอัดและการจัดเฟรม

ความเสี่ยง

  • ใช้ fork หรือตาราง Blob-Parameter-Only ที่ล้าสมัย
  • ปะปนพารามิเตอร์ของ mainnet, testnet หรือเชนอื่น
  • ปะปน blob gas, gas ประมวลผล ไบต์ที่เข้ารหัส และไบต์ที่ใช้ได้
  • ถือว่า max_fee_per_blob_gas เป็นค่าธรรมเนียมฐานที่เกิดขึ้นจริง
  • ละเว้นค่าประมวลผลทั่วไปและ tip ของธุรกรรมประเภท 3
  • สมมติว่าการประมวลผลล้มเหลวทำให้ได้ค่าธรรมเนียม Blob คืน
  • ใช้ค่าประมาณ RPC ที่ล้าสมัยแทนบล็อกและใบเสร็จหลังการรวมธุรกรรม
  • ราคาค่าธรรมเนียมเปลี่ยนขณะที่ Sequencer หน่วงการเผยแพร่แบตช์
  • ประเมินการพุ่งจากความหนาแน่นของ Blob หรือผลของราคาสำรองต่ำเกินไป
  • มองข้ามความหนาแน่นของการประมวลผล L1 เพราะ blob gas มีราคาต่ำ
  • จัดสรรแบตช์ที่เติมไม่เต็มหรือมี padding เสมือนว่าเต็ม
  • ใช้สมมติฐานด้านการบีบอัด การจัดเฟรม หรือองค์ประกอบธุรกรรมผิด
  • นับธุรกรรม proof ผลลัพธ์สถานะ bridge หรือการโพสต์ซ้ำ
  • ใช้ตัวคูณ ค่าใช้จ่ายส่วนเพิ่ม หรือสูตรค่าผู้ดำเนินการของ Rollup ที่ล้าสมัย
  • ปะปนราคาที่เสนอ ยอดหักจริง เงินคืน และรายได้ของผู้ดำเนินการ
  • ทำให้เกิด fallback ไป calldata ที่มีราคาแพงหรือใช้โมเดลความปลอดภัย DA ต่างออกไป
  • แปลง ETH และโทเค็นค่าธรรมเนียมด้วยราคาหรือเวลาที่ผิด
  • สูญเสียหรือระบุแบตช์ผิดหลังการแทนที่หรือการปรับโครงสร้าง L1
  • ถือว่าความพร้อมใช้งานชั่วคราวจาก PeerDAS คือการเรียกคืนจากคลังถาวร
  • มองข้ามความล้มเหลวของ Sequencer ความถูกต้อง finality, bridge หรือการออก เพราะ Blob พร้อมใช้งาน

ความเข้าใจผิดที่พบบ่อย

  • ค่าธรรมเนียมฐานของ Blob คือค่าธรรมเนียม L2 ทั้งหมดที่ผู้ใช้จ่าย
  • max_fee_per_blob_gas คือจำนวนที่ถูกเรียกเก็บจริง
  • ไบต์ที่เข้ารหัสทั้ง 131,072 ไบต์ใน Blob เป็น payload ทั่วไปของผู้ใช้
  • ค่าธรรมเนียมฐานของ Blob ที่ลดลงทำให้ค่าธรรมเนียมของผู้ใช้ L2 ทุกคนลดลงทันทีในสัดส่วนเดียวกัน
  • ข้อมูล Blob ถูกเก็บถาวรใน EVM และทุก Rollup ใช้ความจุคงที่ 3/6 หรือ 6/9

หัวข้อที่เกี่ยวข้อง

แหล่งข้อมูล

การนำทาง

ค้นหาในวิกิ...