خلاصه
- ازدحام شبکه بلاکچین زمانی رخ میدهد که تعداد تراکنشهای ارسال شده به شبکه بیش از قدرت پردازشی شبکه باشد.
- افزایش فعالیتهای تراکنشی شبکه، کوچک بودن اندازه بلاک و کند بودن زمان بلاک همگی میتوانند در ازدحام شبکه بلاکچین نقش داشته باشند.
- پیامدهای افزایش ازدحام شبکه عبارتند از: افزایش کارمزد تراکنش، کندتر شدن تأیید تراکنشها و تضعیف تجربیات کاربری.
- در بهار 2023، شبکه بیتکوین با افزایش فعالیتهای تراکنشی مربوط به توکنهای ERC-20 دچار ازدحام شد که این باعث شد کارمزد تراکنشها و تعداد تراکنشهای معلق به شدت افزایش پیدا کند.
ازدحام شبکه چیست؟
ازدحام شبکه زمانی رخ میدهد که تعداد تراکنشهای ارسال شده به شبکه، فراتر از ظرفیت شبکه برای پردازش آنها باشد. چندین عامل در این پدیده نقش دارند از جمله عوامل بیرونی مثل نوسان بازار و ویژگیهای ذاتی شبکه مثل اندازه بلاک و زمان بلاک.
پیش از پرداختن به جزئیات این مسئله، ابتدا لازم است که با چگونگی اضافه شدن بلاکها به بلاکچین آشنا شویم.
تکنولوژی بلاکچین چطور کار میکند؟
یک بلاکچین، متشکل از زنجیرهای از بلاکها است و هر بلاک شامل دادههای تراکنشهایی است که توسط کاربران ایجاد شدهاند. هر بلاک جدیدی که به زنجیره اضافه میشود، دائم و تغییرناپذیر است.
این بلاکها، در سطح یک شبکه غیرمتمرکز متشکل از نودهای بلاکچین منتشر میشوند که هر کدام یک نسخه از بلاکچین را ذخیره دارند. بلاکچین با استفاده از نظریه بازی و رمزنگاری ایمن سازی میشود، که پایه و اساس ارزهای دیجیتالی مثل بیتکوین و اتریوم را شکل میدهد.
برای درک اینکه چرا شبکههای بلاکچین دچار ازدحام میشوند، اول باید مفاهیم کلیدی که در توانایی اجرای تراکنشها توسط بلاکچین نقش دارند را بررسی کنیم یعنی مم پول، بلاکهای کاندید، نهایی شدن و غیره.
مم پول چیست؟
مم پول به مجموعهای از تراکنشهای تأیید نشده گفته میشود که منتظر درج شدن در بلاک بعدی هستند.
برای مثال وقتی تراکنشی روی شبکه بیتکوین پخش میشود، بلافاصله به بلاکچین اضافه نمیشود. بلکه اول به مم پول اضافه میشود (مخفف memory pool یا منبع حافظه) که در واقع یک محوطه انتظار برای همه تراکنشهای معلق است. تراکنش پس از تأیید از مم پول حذف میشود.
بلاک کاندید چیست؟
بلاکهای کاندید که به آنها بلاکهای پیشنهادی هم گفته میشود، بلاکهایی هستند که ماینرها یا اعتبارسنجها آنها را برای اضافه شدن به بلاکچین پیشنهاد میدهند. این بلاکها حاوی تراکنشهای تأیید نشده هستند که روی شبکه منتشر شدهاند اما به بلاکچین اضافه نشدهاند.
برای اینکه یک بلاک کاندید تبدیل به یک بلاک تأیید شده شود، باید بر اساس مکانیزم اجماع نظر بلاکچین استخراج یا اعتبارسنجی شود. مثلاً ماینرها میتوانند با استفاده از مکانیزم اثبات کاری بیتکوین یک مسئله محاسباتی را حل کنند. اولین ماینری که این مسئله را حل کند، بلاک کاندید خودش را به بلاکچین اضافه کرده و پاداش دریافت میکند.
در مکانیزم اجماع نظر اثبات سهامی اتریوم، اعتبارسنجها به صورت تصادفی انتخاب میشوند تا بلاکهای کاندید را معرفی کنند. سایر اعتبارسنجها، اعتبار بلاکها را بررسی و تأیید میکنند. وقتی بلاکی تأییدهای کافی را دریافت کرد، از بلاک کاندید به بلاک تأیید شده تغییر حالت پیدا میکند.
نهایی شدن در بلاکچین چیست؟
نهایی شدن وقتی رخ میدهد که یک تراکنش یا عملیات، دیگر قابل تغییر یا برگشت به عقب نباشد. وقتی تراکنشی به مرحله نهایی شدن برسد، برای همیشه روی بلاکچین ثبت شده و امکان تغییر یا حذف آن وجود ندارد.
در بلاکچین بیتکوین، تراکنشها روی شبکه پخش شده و به مم پول اضافه میشوند. ماینرها، تراکنشها را از این مخزن انتخاب و تأیید کرده و آنها را به بلاکهای جدید اضافه میکنند تا در بلاکچین درج شوند. تراکنشهایی که در این بلاک درج شده باشند، تأیید شده محسوب میشوند اما باز هم از نظر تئوری این احتمال وجود دارد که ماینرهای دیگر یک بلاک رقیب را تأیید کنند.
تراکنشهای بیتکوین وقنی نهایی در نظر گرفته میشوند که 6 بلاک به بلاکی که حاوی این تراکنشها هستند، اضافه شده باشد. به دلیل کوتاهتر بودن زمان بلاک در اتریوم، برای رسیدن به سطح اطمینان مشابهی جهت نهایی شدن، وجود تعداد بیشتری تأیید، توصیه شده است.
اصل "طولانیترین زنجیره" چیست؟
همانطور که اشاره شد، چندین ماینر میتوانند همزمان بلاکهای معتبر جدیدی را تولید کنند. در چنین شرایطی، انشعاباتی موقت در شبکه بلاکچین ایجاد میشود.
اصل "طولانیترین زنجیره" به قانونی گفته میشود که طبق آن، نسخه معتبر بلاکچین نسخهای است که کار محاسباتی بیشتری روی آن انجام شده باشد که معمولاً چنین نسخهای، بیشترین تعداد بلاک را دارد. در نتیجه، بلاکهای معتبر در زنجیرههای کوتاهتر - که اغلب به آنها بلاک یتیم یا کهنه گفته میشود - نادیده گرفته شده و تراکنشهای آنها به مم پول برگردانده میشوند.
زمانی که مکانیزم مورد استفاده اتریوم، اثبات کار بود، این شبکه هم از اصل طولانیترین زنجیره استفاده میکرد. پس از انتقال اتریوم به اثبات سهام در سال 2022، این شبکه از یک الگوریتم انتخاب انشعاب آپدیت شده استفاده میکند که وزن زنجیره را ارزیابی میکند. وزن زنجیره، حاصل جمع آرای اعتبارسنجها است که در آن وزن هر رأی، بر اساس موجودی اتر استیک شده اعتبارسنج تعیین میشود.
چه چیزی باعث ازدحام شبکه بلاکچین میشود؟
ازدحام شبکه بلاکچین زمانی رخ میدهد که تعداد تراکنشهای ارسال شده به شبکه فراتر از ظرفیت شبکه برای پردازش آنها باشد.
ازدحام شبکه، چند دلیل مختلف دارد:
افزایش تقاضا
همچنان که افراد بیشتری، به بلاکچین تراکنش ارسال میکنند، ممکن است تعداد تراکنشهای تأیید نشده در مم پول از آنچه که میتواند در یک بلاک باشد، فراتر برود. به خصوص این شرایط برای بلاکچینهایی که از نظر اندازه بلاک و زمان بلاک محدودیت دارند، رخ میدهد.
ممکن است نوسانات قیمت منجر به افزایش شدید تعداد تراکنشهای در حال اجرا شود.
کوچک بودن اندازه بلاک
هر بلاکچین یک اندازه بلاک مشخص دارد که حداکثر سایز یک بلاک را تعیین میکند. این اندازه بلاک، تعداد تراکنشهایی که میتوان در یک بلاک درج کرد را محدود میکند.
برای مثال، بیتکوین در ابتدا طوری طراحی شده بود که اندازه بلاکهای آن به 1 مگابایت محدود باشد. در سال 2017 یک آپگرید به نام سگویت در شبکه بیتکوین پیاده سازی شد که منجر به افزایش این سقف تا 4 مگابایت شد.
اگر تعداد تراکنشها از این سقف فراتر برود، شبکه دچار ازدحام میشود.
کند بودن زمان بلاک
زمان بلاک، به فواصل بین اضافه شدن یک بلاک جدید به بلاکچین گفته میشود. تقریباً هر 10 دقیقه یک بار یک بلاک جدید به بلاکچین بیتکوین اضافه میشود. اگر تراکنشها با سرعت و حجم بیشتری تولید شوند، ازدحام ایجاد میشود.
ازدحام شبکه چه پیامدهایی دارد؟
ازدحام شبکه بلاکچین میتواند چندین پیامد داشته باشد که در عملکرد شبکه تأثیر دارند.
افزایش کارمزد تراکنشها
ماینرها تمایل دارند که به تراکنشهایی با کارمزد بیشتر اولویت بدهند. بنابراین وقتی یک بلاکچین دچار ازدحام میشود، معمولاً کاربران باید کارمزد بیشتری پرداخت کنند تا ماینرها انگیزه اولویت دادن به تراکنشهای آنها را داشته باشند. در چنین شرایطی ممکن است هزینه استفاده از بلاکچین بیش از حالت معمول شود به خصوص برای تراکنشهای کوچکتر.
تأخیر در تأیید تراکنشها
ازدحام شبکه میتواند باعث طولانیتر شدن زمان انتظار برای تأیید و نهایی شدن تراکنشها شود. در شرایط بسیار حاد ممکن است تأیید تراکنشها چندین ساعت، روز یا حتی بیشتر زمان ببرد که چنین شرایطی باعث ناراحتی کاربران میشود.
تجربیات کاربری ضعیف
افزایش کارمزدها و کند شدن زمان تأیید میتواند باعث ضعیف شدن تجربیات کاربری شود که در چنین شرایطی نرخ پذیرش و سودمندی بلاکچین کاهش پیدا میکند.
نوسان بازار
ازدحام میتواند باعث ایجاد تردید شده و در بازار نوسان ایجاد کند. اگر کاربران زیادی در حال تلاش برای فروش یک ارز دیجیتال باشند اما ازدحام شبکه، تأیید تراکنشها را با تأخیر روبرو کند، ممکن است کاربران دچار وحشت شده و سعی کنند بلافاصله موجودی خودشان را بفروشند.
چنین شرایطی پیامدهای دیگری هم دارد از جمله ریسکهای امنیتی و ریسک متمرکز شدن شبکه. به خصوص افزایش زمان تأیید تراکنشها میتواند باعث ایجاد خطر حملههای خرج کردن دوباره شود و افزایش کارمزدها ممکن است باعث متمرکز شدن قدرت ماینینگ شود.
مثالهایی از ازدحام شبکه
شبکههای بیتکوین و اتریوم هر دو تا به امروز ازدحامهای شدیدی را تجربه کردهاند.
ازدحام شبکه بیتکوین
افزایش چشمگیر قیمت بیتکوین بین اواخر 2017 و اوایل 2018 باعث شد که یکی از مهمترین رویدادهای ازدحام شبکه تا به امروز شکل بگیرد. افزایش محبوبیت بیتکوین باعث افزایش شدید تقاضا و تعداد تراکنشها شد که در نهایت این شرایط باعث ایجاد تأخیرهای چشمگیر و افزایش نگران کننده کارمزد تراکنشها شد. حتی یک بار میانگین کارمزد تراکنش به بیشتر از 50 دلار رسید.
در بهار امسال، شبکه بیتکوین به دلیل افزایش تراکنشهای مرتبط با توکنهای BRC-20 دچار ازدحام شد که این شرایط در نهایت باعث افزایش چشمگیر کارمزدها و تراکنشهای معلق شد. در این بازه زمانی رکورد تراکنشهای تأیید نشده به 400 هزار عدد رسید که این باعث ایجاد یک تنگنا در مم پول شد. ظرف چند هفته، کارمزد تراکنشها بیش از 300 درصد افزایش یافت.
ازدحام شبکه اتریوم
یکی از نمونههای برجسته ازدحام شبکه اتریوم در سال 2017 رخ داد یعنی زمانی که بازی کریپتو کیتیز به شدت محبوب شده و این محبوبیت باعث کند شدن شدید شبکه شد. رونق دیفای هم باعث ایجاد ازدحام در این شبکه و افزایش قیمت گس شد.
احتمال ازدحام در هر شبکه بلاکچینی وجود دارد اما ازدحام در بلاکچینهای اتریوم و بیتکوین توجه بیشتری به خود جلب میکند چون محبوبیت و اهمیت چشمگیر این شبکهها باعث گسترش تأثیر ایجاد ازدحام در آنها میشود.
راهکارهایی برای کاهش ازدحام شبکه
رسیدگی به ازدحام شبکه کار سخت و چالش برانگیزی است. چند راهکار برای حل این مشکل وجود دارد که هر کدام مزایا و معایب خاص خودشان را دارند.
افزایش اندازه بلاک
افزایش اندازه بلاک این امکان را فراهم میکند که تراکنشهای بیشتری در هر بلاک درج شوند در نتیجه توان عملیاتی شبکه بیشتر میشود. اما انتشار بلاکهای بزرگتر در شبکه نیاز به زمان بیشتری دارد در نتیجه ریسک ایجاد انشعابهایی موقتی افزایش پیدا میکند. همچنین، بلاکهای بزرگتر نیاز به فضای بیشتری دارند که ممکن است این مسئله باعث متمرکز شدن شبکه شود.
کاهش زمان بلاک
کاهش زمان بلاک به شبکه امکان میدهد که تراکنشها را سریعتر پردازش کند اما کوتاه شدن زمان بلاک امکان ایجاد بلاکهای یتیم و به خطر افتادن امنیت شبکه را افزایش میدهد.
راهکارهای لایه 2
این راهکارهای برون زنجیرهای، به اجرای تراکنشها خارج از بلاکچین اصلی و ثبت وضعیت نهایی درون شبکه کمک میکنند. شبکه لایتنینگ بیتکوین و پلاسمای اتریوم نمونههایی از این راهکارها هستند. اما پیاده سازی این راهکارها سخت است و ممکن است باعث بروز مشکلات امنیتی شوند.
شاردینگ
شاردینگ تکنیکی است که در آن بلاکچین به بخشهای کوچک موسوم به شارد تقسیم میشود که هر کدام توانایی پردازش تراکنشها و قراردادهای هوشمند را دارند. شاردینگ میتواند ظرفیت شبکه را به میزان زیادی افزایش دهد اما این راهکارها هم باعث افزایش پیچیدگی شده و ریسکهای امنیتی خاصی به همراه دارند.
تنظیم کارمزدها، راهکارهای مقیاس پذیری مثل رولاپهای دانش صفر هم از جمله سایر راهکارهای این مسئله هستند. به طور کلی مکانیزم اثبات سهام از اثبات کار سریعتر است.
جمع بندی
از آنجایی که انتظار میرود در سالهای پیش رو میزان پذیرش و استفاده از تکنولوژی بلاکچین بیشتر شود، احتمال افزایش مشکل ازدحام وجود دارد. توانایی شبکه برای پردازش سریع تعداد زیادی تراکنش نقش زیادی در پذیرش گسترده و سودمندی آن دارد به خصوص برای سیستمهای بلاکچین که انتظار میرود تراکنشها را به صورت بلاک درنگ اجرا کنند.
گرچه ازدحام شبکه میتواند چالشهای زیادی ایجاد کند اما جامعه توسعه دهندگان همچنان در تلاش برای حل این مشکل و ارایه راهکارهای جدید برای آن هستند.