รายละเอียด EIP-7706 และจัดเรียงกลไกก๊าซ Ethereum ล่าสุด

ผู้เขียนต้นฉบับ: @Web3 Mario

บทนํา: เมื่อวันที่ 13 พฤษภาคม 2024 Vitalik ได้เปิดตัวข้อเสนอ EIP-7706 โดยเสนอโซลูชันเสริมสําหรับแบบจําลองก๊าซที่มีอยู่แยกการคํานวณก๊าซของ calldata และปรับแต่งกลไกการกําหนดราคาค่าธรรมเนียมพื้นฐานที่คล้ายกับก๊าซ Blob เพื่อลดต้นทุนการดําเนินงานของ L2 ต่อไป ข้อเสนอที่เกี่ยวข้องยังต้องย้อนกลับไปที่ EIP-4844 ที่เสนอในเดือนกุมภาพันธ์ 2022 ซึ่งเป็นเวลานานมาแล้วดังนั้นตรวจสอบเอกสารที่เกี่ยวข้องเพื่อให้ภาพรวมของกลไก Ethereum Gas ล่าสุดเพื่อให้คุณเข้าใจได้อย่างรวดเร็ว

รุ่น Ethereum Gas ที่รองรับในปัจจุบัน - EIP-1559 และ EIP-4844

ในการออกแบบดั้งเดิม Ethereum ใช้กลไกการประมูลอย่างง่ายในการกําหนดราคาการฟอกเงินซึ่งกําหนดให้ผู้ใช้ต้องเสนอราคาสําหรับธุรกรรมของตนเองนั่นคือการกําหนดราคาก๊าซตามปกติเนื่องจากค่าธรรมเนียมการทําธุรกรรมที่จ่ายโดยผู้ใช้จะได้รับสิทธิ์มากกว่า Miner ดังนั้น Miner จะกําหนดลําดับของบรรจุภัณฑ์ธุรกรรมตามหลักการของความเหมาะสมทางเศรษฐกิจตามระดับการเสนอราคาโปรดทราบว่านี่เป็นกรณีของการเพิกเฉย MEV ในสายตาของนักพัฒนาหลักในขณะนั้นกลไกนี้ประสบปัญหาสี่ประการต่อไปนี้:

  • ความผันผวนในระดับของการฟอกเงินและต้นทุนฉันทามติของการทําธุรกรรม: ใน Blockchain ที่ใช้งานอยู่มีความต้องการเพียงพอสําหรับบรรจุภัณฑ์ธุรกรรมซึ่งหมายความว่าสามารถเติมบล็อกได้อย่างง่ายดาย แต่มักจะหมายความว่าค่าธรรมเนียมโดยรวมความผันผวนสูงมาก ตัวอย่างเช่นเมื่อราคาก๊าซเฉลี่ยคือ 10 Gwei ต้นทุนส่วนเพิ่มของเครือข่ายในการยอมรับธุรกรรมอีกหนึ่งรายการในบล็อกคือ 10 เท่าของราคาก๊าซเฉลี่ย 1 Gwei ซึ่งเป็นที่ยอมรับไม่ได้
  • เวลาแฝงที่ไม่จําเป็นสําหรับผู้ใช้: เนื่องจากขีด จํากัด ก๊าซแข็งของแต่ละบล็อกประกอบกับความผันผวนตามธรรมชาติของปริมาณในอดีตการทําธุรกรรมมักจะรอให้มีการบรรจุหลายบล็อก แต่สิ่งนี้ไม่มีประสิทธิภาพสําหรับเครือข่ายโดยรวม นั่นคือไม่มีกลไก "หย่อน" ที่ช่วยให้บล็อกหนึ่งมีขนาดใหญ่ขึ้นและบล็อกถัดไปมีขนาดเล็กลงเพื่อตอบสนองความแตกต่างในความต้องการที่เป็นบล็อกเป็นกรณี ๆ ไป
  • การกําหนดราคาที่ไม่มีประสิทธิภาพ: การใช้กลไกการประมูลอย่างง่ายนําไปสู่การค้นพบราคาที่ยุติธรรมที่ไม่มีประสิทธิภาพซึ่งหมายความว่าผู้ใช้จะให้ราคาที่เหมาะสมได้ยากซึ่งหมายความว่าในกรณีที่นานมากผู้ใช้จ่ายค่าธรรมเนียมสูง
  • Block Reward-free Blockchain จะไม่เสถียร: เมื่อ Block Reward ที่นําโดย Mining ถูกลบออกและใช้รูปแบบค่าธรรมเนียมที่บริสุทธิ์อาจนําไปสู่ความไม่แน่นอนที่ยาวนานมากเช่นการจูงใจให้ขุดเพื่อขโมย "บล็อกน้องสาว" การฟอกเงินการเปิด Attack Vector การขุดที่เห็นแก่ตัวที่ทรงพลังยิ่งขึ้นเป็นต้น

จนกระทั่ง EIP-1559 ได้รับการเสนอและดําเนินการว่ามีการทําซ้ําครั้งแรกของรูปแบบก๊าซซึ่งเสนอโดยนักพัฒนาหลักเช่น Vitalik เมื่อวันที่ 13 เมษายน 2019 และนํามาใช้ในการอัพเกรดลอนดอนเมื่อวันที่ 5 สิงหาคม 2021 ซึ่งละทิ้งกลไกการประมูลเพื่อสนับสนุนรูปแบบการกําหนดราคาคู่ของค่าธรรมเนียมพื้นฐานและค่าธรรมเนียมลําดับความสําคัญซึ่งค่าธรรมเนียมพื้นฐานจะขึ้นอยู่กับก๊าซที่สร้างขึ้นแล้วในบล็อกหลัก ความสัมพันธ์ระหว่างการบริโภคและเป้าหมายก๊าซลอยตัวและแบบเรียกซ้ํานั้นคํานวณในเชิงปริมาณผ่านแบบจําลองทางคณิตศาสตร์ที่จัดตั้งขึ้นและผลกระทบที่ใช้งานง่ายคือหากการใช้ก๊าซในบล็อกก่อนหน้าเกินเป้าหมายก๊าซที่กําหนดไว้ค่าธรรมเนียมพื้นฐานจะเพิ่มขึ้นและหากน้อยกว่าเป้าหมายก๊าซค่าธรรมเนียมพื้นฐานจะลดลงซึ่งไม่เพียง แต่สะท้อนถึงความสัมพันธ์ระหว่างอุปสงค์และอุปทานได้ดีขึ้น แต่ยังทําให้การคาดการณ์ก๊าซที่เหมาะสมแม่นยํายิ่งขึ้น จะไม่มีราคาก๊าซสูงเนื่องจากการทํางานผิดพลาดเนื่องจากการคํานวณค่าธรรมเนียมพื้นฐานจะถูกกําหนดโดยระบบโดยตรงแทนที่จะระบุโดยผู้ใช้อย่างอิสระ รหัสเฉพาะมีดังนี้:

详述EIP-7706并梳理最新的Ethereum的Gas机制

จะเห็นได้ว่าเมื่อ parent\gas_used มากกว่า parent_gas_target ค่าธรรมเนียมพื้นฐานของบล็อกปัจจุบันจะถูกเปรียบเทียบกับค่าธรรมเนียมพื้นฐานของบล็อกก่อนหน้าบวกกับค่าออฟเซ็ต และค่าออฟเซ็ตจะถูกนํามาเป็น parent_base_fee คูณด้วยการชดเชยการใช้งานทั้งหมดของก๊าซบล็อกก่อนหน้าที่สัมพันธ์กับเป้าหมายก๊าซ และค่าสูงสุดของส่วนที่เหลือของ 1 กับเป้าหมายก๊าซและค่าคงที่ ตรรกะย้อนกลับมีความคล้ายคลึงกัน

นอกจากนี้ค่าธรรมเนียมพื้นฐานจะไม่ถูกแจกจ่ายให้กับคนงานเหมืองเป็นรางวัลอีกต่อไป แต่จะถูกเผาโดยตรงเพื่อให้รูปแบบทางเศรษฐกิจของ ETH อยู่ในภาวะเงินฝืดซึ่งเอื้อต่อความมั่นคงของมูลค่า ในทางกลับกันค่าธรรมเนียมลําดับความสําคัญเทียบเท่ากับเคล็ดลับของผู้ใช้กับ Miner และสามารถกําหนดราคาได้อย่างอิสระซึ่งสามารถทําให้อัลกอริทึมการเรียงลําดับของ Miner สามารถนํากลับมาใช้ใหม่ได้ในระดับหนึ่ง

详述EIP-7706并梳理最新的Ethereum的Gas机制

เมื่อเวลาผ่านไปจนถึงปี 2021 เมื่อการพัฒนา Rollup ค่อยๆเข้าสู่สถานะที่ดีขึ้นเรารู้ว่าทั้ง OP Rollup และ ZK Rollup หมายความว่าข้อมูลหลักฐานบางอย่างหลังจากการบีบอัดข้อมูล L2 จะต้องอัปโหลดไปยัง on-chain ผ่าน calldata เพื่อให้ข้อมูลพร้อมใช้งานหรือส่งมอบโดยตรงไปยัง on-chain เพื่อตรวจสอบ ด้วยเหตุนี้โซลูชันการยกเลิกเหล่านี้จึงต้องเผชิญกับต้นทุนก๊าซที่สําคัญเมื่อรักษาขั้นสุดท้ายของ L2 และในที่สุดค่าใช้จ่ายเหล่านี้จะถูกส่งต่อไปยังผู้ใช้ดังนั้นต้นทุนการใช้งานโปรโตคอล L2 ส่วนใหญ่จึงไม่ต่ําเท่าที่คิด

ในเวลาเดียวกัน Ethereum ยังเผชิญกับภาวะที่กลืนไม่เข้าคายไม่ออกของการแข่งขันระหว่าง Block short เรารู้ว่ามีขีด จํากัด ก๊าซสําหรับแต่ละบล็อกซึ่งหมายความว่าปริมาณการใช้ก๊าซทั้งหมดของธุรกรรมทั้งหมดในบล็อกปัจจุบันต้องไม่เกินค่านี้ตามขีด จํากัด ก๊าซปัจจุบันที่ 3000000000 มีขีด จํากัด ทางทฤษฎีที่ 30, 000, 000 / 16 = 1, 875, 000 ไบต์โดยที่ 16 หมายถึงปริมาณการใช้ 16 ต่อไบต์ calldata ที่ประมวลผลโดย EVM ซึ่งหมายความว่าความยาวสูงสุดของบล็อกเดียวสามารถพกพาข้อมูลได้ประมาณ 1.79 MB ข้อมูลที่เกี่ยวข้องกับการยกเลิกที่สร้างขึ้นโดยซีเควนเซอร์ L2 มักจะมีขนาดใหญ่ซึ่งทําให้สามารถแข่งขันกับการยืนยันธุรกรรมของผู้ใช้ mainchain รายอื่นส่งผลให้มีปริมาณน้อยลงซึ่งสามารถบรรจุในบล็อกเดียวซึ่งจะส่งผลต่อ TPS ของ mainchain

เพื่อแก้ไขภาวะที่กลืนไม่เข้าคายไม่ออกนี้นักพัฒนาหลักได้เสนอ EIP-4844 เมื่อวันที่ 5 กุมภาพันธ์ 2022 ซึ่งดําเนินการหลังจากการอัปเกรด Dencun เมื่อต้นไตรมาสที่ 2 ปี 2024 ข้อเสนอเสนอธุรกรรมประเภทใหม่ที่เรียกว่า Blob Transaction ซึ่งขึ้นอยู่กับประเภทข้อมูลใหม่ข้อมูล Blob ซึ่งเป็นประเภทข้อมูลใหม่ข้อมูล Blob เมื่อเทียบกับประเภทธุรกรรมแบบเดิม ซึ่งแตกต่างจากประเภท calldata ข้อมูล blob ไม่สามารถเข้าถึงได้โดยตรงโดย EVM แต่มีเพียงแฮชหรือที่เรียกว่า VersionedHash นอกจากนี้ยังมีการออกแบบประกอบสองแบบหนึ่งคือเมื่อเทียบกับธุรกรรมทั่วไประยะเวลา GC ของธุรกรรม blob จะสั้นกว่าเพื่อให้แน่ใจว่าข้อมูลบล็อกไม่ป่องเกินไปและประการที่สองคือข้อมูล blob มีกลไกก๊าซพื้นเมืองซึ่งโดยทั่วไปจะแสดงผลคล้ายกับ EIP-1559 แต่เลือกฟังก์ชันเลขชี้กําลังตามธรรมชาติในรูปแบบทางคณิตศาสตร์เพื่อให้สามารถทํางานได้ดีขึ้นในเสถียรภาพเมื่อจัดการกับความผันผวนของขนาดธุรกรรมเนื่องจากความชันของฟังก์ชันเลขชี้กําลังตามธรรมชาติยังเป็นฟังก์ชันเลขชี้กําลังตามธรรมชาติ ซึ่งหมายความว่าไม่ว่าขนาดธุรกรรมเครือข่ายจะอยู่ในสถานะใดในเวลานี้เมื่อขนาดธุรกรรมเพิ่มขึ้นอย่างรวดเร็วค่าธรรมเนียมพื้นฐานของก๊าซ blob จะตอบสนองอย่างเต็มที่มากขึ้นดังนั้นจึงควบคุมกิจกรรมการทําธุรกรรมได้อย่างมีประสิทธิภาพและฟังก์ชันยังมีคุณสมบัติที่สําคัญเมื่อ abscissa เป็น 0 ค่าฟังก์ชันคือ 1

ฐาน \ _fee \ _per \ _blob \ _gas = MIN \ _BASE \ _FEE \ _PER \ _BLOB \ _GAS \ * e \ * \ * \ * (ส่วนเกิน \ _blob \ _gas / BLOB \ _BASE \ _FEE \ _UPDATE \ _FRACTION)

โดยที่ MIN_BASE_FEE_PER_BLOB_GAS และ BLOB_BASE_FEE_UPDATE_FRACTION เป็นค่าคงที่สองค่า ในขณะที่ค่าคงที่ส่วนเกิน_blob_gas ถูกกําหนดโดยความแตกต่างระหว่าง blobs ทั้งหมดในก๊าซบล็อกหลักและค่าคงที่ TARGET_BLOB_GAS_PER_BLOCK หนึ่งค่าเมื่อก๊าซ blobs ทั้งหมด เมื่อการบริโภคเกินค่าเป้าหมายนั่นคือเมื่อความแตกต่างเป็นบวก e \ * \ * (ส่วนเกิน \ _blob \ _gas / BLOB \ _BASE \ _FEE \ _UPDATE \ _FRACTION) มากกว่า 1 จากนั้นฐาน \ _fee \ _per \ _blob \ _gas จะใหญ่ขึ้นและในทางกลับกันจะเล็กลง

ด้วยวิธีนี้สําหรับบางสถานการณ์ที่ต้องการใช้ความสามารถฉันทามติของ Ethereum ในการจัดเก็บข้อมูลขนาดใหญ่บางอย่างเพื่อให้แน่ใจว่ามีความพร้อมใช้งานสามารถดําเนินการได้ในต้นทุนต่ําโดยไม่ต้องเบียดเสียดความจุบรรจุภัณฑ์ธุรกรรมของบล็อก ยกตัวอย่างซีเควนเซอร์สะสมข้อมูลสําคัญของ L2 สามารถห่อหุ้มเป็นข้อมูล blob ผ่านธุรกรรม blob และตรรกะของการตรวจสอบแบบ on-chain สามารถใช้งานได้โดยใช้ versionedHash ผ่านการออกแบบที่ชาญฉลาดใน EVM

ควรเพิ่มว่าการตั้งค่า TARGET_BLOB_GAS_PER_BLOCK และ MAX_BLOB_GAS_PER_BLOCK ปัจจุบันแนะนําขีด จํากัด ของ Mainnet ที่ 3 blobs (0.375 MB) ต่อบล็อกและสูงสุด 6 blobs (0.75 MB) ต่อความยาว ขีด จํากัด เริ่มต้นเหล่านี้ได้รับการออกแบบมาเพื่อลดความเครียดบนเครือข่ายจาก EIP นี้และคาดว่าจะเพิ่มขึ้นในการอัปเกรดในอนาคตเนื่องจากเครือข่ายแสดงให้เห็นถึงความน่าเชื่อถือในบล็อกขนาดใหญ่

详述EIP-7706并梳理最新的Ethereum的Gas机制

ปรับแต่งรูปแบบการใช้ก๊าซสําหรับสภาพแวดล้อมการดําเนินการ - EIP-7706

ตอนนี้รูปแบบก๊าซ Ethereum ปัจจุบันได้รับการชี้แจงแล้วเรามาดูเป้าหมายและรายละเอียดการใช้งานของข้อเสนอ EIP-7706 ข้อเสนอนี้นําเสนอโดย Vitalik เมื่อวันที่ 13 พฤษภาคม 2024 เช่นเดียวกับข้อมูล blob ข้อเสนอนี้จะตัดแบบจําลองก๊าซสําหรับฟิลด์ข้อมูลพิเศษอื่นซึ่งก็คือ calldata และตรรกะการใช้งานโค้ดที่เกี่ยวข้องได้รับการปรับให้เหมาะสม

โดยหลักการแล้วตรรกะการคํานวณค่าธรรมเนียมพื้นฐานของ calldata จะเหมือนกับค่าธรรมเนียมพื้นฐานสําหรับข้อมูล blob ใน EIP-4844 ซึ่งใช้ฟังก์ชันเลขชี้กําลังและคํานวณมาตราส่วนของค่าธรรมเนียมพื้นฐานปัจจุบันตามค่าเบี่ยงเบนของมูลค่าการใช้ก๊าซจริงในบล็อกหลักจากค่าเป้าหมาย

详述EIP-7706并梳理最新的Ethereum的Gas机制

เป็นที่น่าสังเกตว่าการออกแบบพารามิเตอร์ใหม่ LIMIT_TARGET_RATIOS=[ 2, 2, 4] โดยที่ LIMIT_TARGET_RATIOS[ 0 ] หมายถึงอัตราส่วนเป้าหมายของคลาสการทํางาน Gas, LIMIT_TARGET_RATIOS[ 1 ] หมายถึงอัตราส่วนเป้าหมายของคลาสข้อมูล Blob Gas และ LIMIT_TARGET_RATIOS [ 2 ] หมายถึง calldata อัตราส่วนเป้าหมายของคลาสแก๊สเวกเตอร์นี้ใช้ในการคํานวณค่าเป้าหมายก๊าซที่สอดคล้องกับก๊าซสามชั้นในบล็อกหลักและตรรกะการคํานวณมีดังนี้นั่นคือขีด จํากัด ก๊าซจะถูกหารด้วย LIMIT \ _TARGET \ _RATIOS ตามลําดับ:

详述EIP-7706并梳理最新的Ethereum的Gas机制

ตรรกะของ gas_limits มีดังนี้:

GAS_limits[0] ต้องเป็นไปตามสูตรการปรับที่มีอยู่

gas_limits[1] ต้องเท่ากับ MAX_BLOB_GAS_PER_BLOCK

gas_limits[2] ต้องเท่ากับ gas_limits[ 0 ] // CALLDATA_GAS_LIMIT_RATIO

เรารู้ว่าก๊าซปัจจุบัน_limits[0] คือ 300000000 และ CALLDATA_GAS_LIMIT_RATIO ถูกตั้งค่าไว้ล่วงหน้าเป็น 4 ซึ่งหมายความว่าเป้าหมายก๊าซ calldata ปัจจุบันอยู่ที่ประมาณ 300000000 // 4 // 4 = 1875000 และเนื่องจากตามตรรกะการคํานวณก๊าซ calldata ปัจจุบัน แต่ละไบต์ที่ไม่ใช่ศูนย์ใช้ก๊าซ 16 และศูนย์ไบต์ใช้ก๊าซ 4 สมมติว่าการกระจายของไบต์ที่ไม่ใช่ศูนย์และศูนย์ในบางส่วนของ calldata คิดเป็น 50% ต่อหนึ่งจะใช้ก๊าซเฉลี่ย 10 ในการประมวลผล calldata 1 ไบต์ ดังนั้นเป้าหมายก๊าซ calldata ปัจจุบันควรรับมือกับข้อมูล calldata 187500 ไบต์ซึ่งประมาณ 2 เท่าของการใช้งานเฉลี่ยในปัจจุบัน

ข้อดีของสิ่งนี้คือความน่าจะเป็นของ calldata ถึงขีด จํากัด ก๊าซจะลดลงอย่างมากและการใช้ calldata จะถูกเก็บไว้ในสถานะที่สอดคล้องกันมากขึ้นผ่านการสร้างแบบจําลองทางเศรษฐกิจและการใช้ calldata ในทางที่ผิดก็ถูกกําจัดเช่นกัน เหตุผลสําหรับการออกแบบนี้คือการล้างทางสําหรับการพัฒนา L2 และด้วยข้อมูล blob ต้นทุนซีเควนเซอร์จะลดลงอีก

ดูต้นฉบับ
  • รางวัล
  • แสดงความคิดเห็น
  • แชร์
แสดงความคิดเห็น
ไม่มีความคิดเห็น