مقدمه
سازوکار ساخت بلاک در شبکه اتریوم که پیش از این مشخص بود، از تاریخ ۱۵ سپتامبر ۲۰۲۲ با بهروزرسانی مرج¹ دچار تحولاتی شد. ایده ایجاد این تغییر آن بود که ممکن است شخص بیرونی برای تایید بلاکها شروطی مانند ادغام یک تراکنش خاص در داخل بلاک داشته باشد. در این شرایط تاییدکنندگان شبکه² تمایل دارند که تراکنشها را بدون اطلاع از اطلاعات آن و برای دریافت پاداش بیشتر تایید نمایند. بدین منظور نیاز به شخص ثالثی برای ارتباط با درخواستدهندگان تراکنش و از طرف دیگر امضاکنندگان آن وجود دارد. این شخص ثالث را “³MEV relays” نامیدهاند که در حقیقت فراهمکننده بلاکها با در نظر گرفتن هزینه اضافی ناشی از افزایش پیچیدگی تولید بلاک است. در این مقاله به بررسی تغییرات ایجاد شده در ساخت بلاک به واسطه حضور MEVها، الزامات در نظر گرفته شده و اثرات آن بر کل شبکه اتریوم⁴ پرداخته میشود.
زمان شمول بلاک⁵
زمان شمول بلاک یا به اختصار زمان بلاک به فاصله زمانی آغاز اسلات⁶ تا ادغام آن در زنجیره نود⁷ گفته میشود. در واقع زمان بلاک شامل همه بخشهای تولید بلاک، انتقال آن به تاییدکنندگان، تایید آن و بهروزرسانی آخرین وضعیت شبکه میباشد. زمان بلاک پس از بهروزرسانی مرج دستخوش تغییراتی شد.
دلیل اثرگذاری مرج بر زمان بلاک چیست؟
پیش از بهروزرسانی مرج اتریوم روند ساخت بلاک سادهتر بود و تنها به ارتباط میان Validator Client (نرم افزاری که بر مبنای آن تاییدکنندههای شبکه فعالیت میکنند) و Consensus Node (نودی که زنجیره اجماع را مدیریت میکند) بستگی داشت. مراحل روند ساخت بلاک در شبکه اتریوم پیش و پس از بهروزرسانی مرج به ترتیب در تصاویر زیر ارائه شده است.
۱ – تاییدکننده از نود اجماع درخواست بلاک میکند.
۲ – تاییدکننده بلاک را امضا (تایید) میکند.
۳ – تایید کننده بلاک مورد نظر را برای نود اجماع میفرستد.
۴ – نود اجماع، بلاک امضا شده را میان شبکه توزیع میکند.
۱ – تاییدکننده از نود اجماع درخواست بلاک میکند.
۲ – نود اجماع از نود اجرایی⁸ درخواست پیلود⁹ (محتوای اصلی بلاک شامل تراکنشها) اجرایی کرده و آن را در داخل بلاک ادغام میکند.
۳ – تایید کننده بلاک مورد نظر امضا (تایید) میکند.
۴ – تایید کننده، بلاک امضا شده را برای نود اجماع ارسال میکند.
۵ – نود اجماع، بلاک امضا شده را میان شبکه توزیع میکند.
با مقایسه این دو فرآیند میتوان متوجه شد که چرا فرآیند و زمان ساخت بلاک و نیز ارسال آن در شبکه طولانیتر شده است.
چرا MEVها زمان بلاک را دستخوش تغییر میکنند؟
همزمان با بهروزرسانی مرج، رله¹⁰هایMEV با دو تفاوت عمده معرفی شدند: این رلهها توسط تاییدکنندگان شبکه کنترل نمیشوند و سِروِرهای جداگانه دارند و نیز برای انتقال اطلاعات به نودهای اجماع نیازمند تبادل مکرر اطلاعات هستند.
۱ – تاییدکنندگان از نودهای اجماع یک بلاک بدون تراکنش معروف به بلاک خالی¹¹ درخواست مینمایند.
۲ – نود اجماع از رلههای مختلف MEV برای بهترین پیشنهاد (پیشنهادی برای ارائه مجموع ارزش تراکنشها) نظرسنجی میکند.
۳ – نود اجماع بالاترین پیشنهاد را انتخاب میکند و بلاک خالی را با آن به اشتراک میگذارد.
۴ – تایید کننده بلاک مورد نظر امضا (تایید) مینماید.
۵ – تایید کننده از نود اجماع درخواست میکند که تراکنشها را بر روی بلاک امضا شده ادغام نماید.
۶ – نود اجماع از رله انتخاب شده میخواهد تا تراکنشها را در بلاک ادغام کند.
۷ – نود اجماع بلاک امضا شده را میان شبکه توزیع مینماید.
باید توجه داشت که احتمال قطعی شبکه در هر یک از مراحل فوق الذکر وجود دارد که ناشی از اتصال رلهها به سرورهای جداگانه است. در نتیجه امکان بازگشت ولیدیتور به یک مرحله قبل و یا از دست دادن فرصت تولید بلاک بعدی وجود دارد. به منظور درک بهتر چگونگی اثرگذاری مرج شبکه اتریوم و پیچیده شدن فرآیند تولید بلاک بر زمان ساخت بلاک میتوان به تصاویر زیر توجه کرد.
اطلاعات بدست آمده از ۷۲۰۰ اسلات اتریوم در روز ۹ سپتامبر (پیش از مرج) و زمان ساخت بلاک ها به شرح زیر بوده:
این وضعیت را می توان با اطلاعات جمعآوری شده از ۷۲۰۰ اسلات شبکه در روز ۲۳ سپتامبر (بعد از مرج) مقایسه کرد:
نتیجهگیری
به راحتی میتوان دریافت که پس از بهروزرسانی مرج اتریوم زمان ساخت بلاک افزایش داشته که این امر ناشی از دو عامل بوده: پیچیدهتر شدن فرآیند تولید بلاک بعد از مرج و نیز استفاده از رلهها. به طور کلی می توان گفت که این تاخیر بیشتر ناشی از ساز و کار این رلهها است، چرا که در عملکرد تاییدکنندگان تفاوتی ایجاد نشده است. در کنار افزایش زمان ساخت بلاک، تعداد رایها به بلاکهای اشتباهی نیز افزایش مییابد که علت آن طولانیتر شدن زمان ساخت بلاک برای تاییدکنندهها و در نتیجه، عدم به روزرسانی لحظهای زنجیره بلاکهای در بلاکچین اتریوم است.
تا کنون راه حلهای زیادی بر رفع این مشکل پیشنهاد شدهاند، اما کاربردیترین و کارسازترین آنها از طریق خود پروتکل اتریوم ارائه شده است: بلاکهایی که زمان اضافه شدن آنها به زنجیره طولانی میشود، تایید نشوند و بدین ترتیب استفادهکنندگان از این MEVها مجبور خواهند شد میان تایید کردن بلاکهای بیشتر و در کنار آن سودآوری بیشتر تعادل برقرار سازند.
منبع
¹ The Merge
² Validators
³ Maximum Extractable Value
⁴ Ethereum
⁵ Block Inclusion Time
⁶ Slot
⁷ Node
⁸ Execution Node
⁹ Payload
¹⁰ Relay
¹¹ Blinded Block