تراکنش ارز دیجیتال شما معتبر است. کیف پول شما نشان میدهد که ارسال شده است. اما بلاکچین هنوز آن را تأیید نکرده است. کجا رفته است؟ پاسخ در ممپول (mempool) است — بخشی پنهان از بلاکچین که مانند اتاق انتظار برای تراکنشها عمل میکند.
تا زمانی که یک ماینر (استخراج کننده) یا اعتبارسنج شبکه تراکنش شما را دریافت و در یک بلاک قرار دهد — در این سالن انتظار باقی میماند.
درک ممپول نه تنها توضیح میدهد که چرا تراکنشها گاهی اوقات به تعویق میافتند، بلکه به شما کمک میکند هنگام ارسال ارزهای دیجیتال، انتخابهای هوشمندانهتری داشته باشید.
ممپول چیست؟
اصطلاح ممپول از انگلیسی گرفته شده است که عبارت از Memory Pool = Mempool میباشد. این مکانی است که تراکنش شما قبل از اینکه برای پردازش انتخاب شود در آن نگهداری میشود.
در فارسی بعضیها استخر حافظه معنا کرده و آن را شبیه حافظه موقت کمپیوتر میپندارد. که در چنین معنا؛ Memory به معنای حافظه و Pool به معنای استخر است.
حافظه ذخیرهگاه داده (مانند حافظه موبایل) و استخر مکانی است (البته اینجا دیجیتالی) که در آنجا داراییهای دیجیتالی موقت نگهداری میگردد.
ممپول را میتوان با حافظه موقت (RAM) یک دستگاه کمپیوتر تشبیه کرد که:
- حافظه است: تراکنشها قبل از اینکه وارد بلاک توسط یک استخراج کننده یا اعتبار سنج گردد، در حافظه موقت نودها نگهداری میشود. چرا؟ چون حافظه موقت سریعتر بوده و به بلاکچین اجازه میدهد که سریع دادهها را پردازش کند.
- تصادفی است: مقدار تراکنش میتواند از یک نود (Node به نود دیگر، بسته به انتشار شبکه و قوانین خاص هر نود، کمی متفاوت باشد. همچنین، این یک محیط پویا و بینظم است که در آن تراکنشها برای گنجانده شدن با هم رقابت میکنند.
- موقت است: تراکنشها همیشه در ممپول باقی نمیماند. آنها ممکن است که توسط ماینرها یا اعتبارسنجها گرفته وارد بلاکها شوند و یا اینکه بهخاطر کارمزد تراکنش پایین برگشت داده شود.
ممپول چگونه کار میکند؟
ممپول مکانی است که تراکنشهای تایید نشده را در خود جای داده است.
این مکان یکی نیست و فزیکی هم نیست — توزیع شده و پویا است.
هر نود در یک شبکه بلاکچین مانند بیتکوین و اتریوم، نسخهای از ممپول خود را دارد. زمانی که شما اقدام به ارسال ارز میکنید، مستقیم به بلاک نرفته، بلکه بار اول وارد ممپولهای نودهای متصل میشوند.
برای درک بهتر مراحل که تراکنش شما را از شروع تا ختم بیان میکنیم.
- ایجاد و ارسال تراکنش: پس از اینکه شما روی دکمه ارسال بیتکوین در کیف پول خود میزنید، کیف پول شما تراکنش شما را با استفاده از کلید خصوصی شما امضا میکند تا ثابت کند که مالک شما هستید. در قدم بعدی، تراکنش امضا شده شما را به نودهای شبکه میفرستد.
- ورود به ممپول: نودهای که تراکنش شما را دریافت میکند، پس از بررسی موارد زیر وارد ممپول خود کرده و به دیگران نیز ارسال میکند:
- آیا امضا واقعی است؟
- موجودی شما کافی است؟
- فرمت تراکنش شما درست است؟
- آیا تلاش به تقلب نکرده اید؟
- انتظار در ممپول: تراکنش شما حالا در این سالن انتظار در سرتاسر شبکه نشسته است. قابل دید برای همه است — اما تایید نشده است. اینجا مکانی است که کارمزدهای تراکنش مهم است. چرا؟ چون ممپول مکان شلوغ بوده و هر فرستنده حاضر به پرداخت کارمزد تراکنش متفاوت است. بههمین خاطر، استخراج کنندگان و یا اعتبارسنجها بار اول تراکنشهای را انتخاب میکند که حاضر به پرداخت بیشتر هزینه برای پردازش است.
- ورود به بلاک: با توجه به کارمزد تراکنش هر تراکنش (بیشتر زودتر)؛ یک استخراج کننده یا اعتبارسنج انتخاب و وارد بلاک بعدی میسازد.
- تایید تراکنش: پس از اینکه یک استخراج کننده (در اثبات کار) و یا اعتبار سنج (در اثبات سهام) تراکنش را وارد یک بلاک ساخت، آن را تحویل همتایان خود برای تایید میفرستد.
- خروج از ممپول: پس از اینکه موفقانه یک تراکنش تایید گردید از ممپول خارج، تایید و برای همیشه در دفتر کل توزیع شده باقی میماند.
چرا ممکن است تراکنش شما به تاخیر بیفتد؟
اگر تراکنش شما به نظر میرسد که گیر مانده است، به احتمال خیلی قوی مشکل در ممپول است.
در اینجا به عوامل اصلی آن اشاره میکنیم:
1. ازدحام در شبکه
ساعتهای شلوغ ازدحام ترافیکی بیشتر امکانپذیر است. چرا؟ چون اکثریت در همین ساعتها رفت و آمد میکند.
دنیای ارز دیجیتال نیز اینگونه است. در زمان که یک میمکوین بزرگ ایردراپ میگردد، یا اینکه بازار گاوی (bullish) است، ترافیک ایجاد میشود. یعنی کاربران بیشتر اقدام به ارسال تراکنش میکند.
زمانی که افراد زیادی اقدام به ارسال ارز دیجیتال کند، ممپول شلوغ میگردد.
چون ظرفیت بلاک و ظرفیت پردازش یک بلاکچین محدود است (مخصوصا بیتکوین و اتریوم) بعضی تراکنشها باید منتظر بماند.
2. کارمزد پایین تراکنش
بعضی از کیف پولها اجازه میده که شما کارمزد تراکنش را تعیین کنید.
در این صورت، اگر یک فرستند کارمزد خیلی پایین انتخاب کرده باشند، ممکن زمان زیادی طول بکشند تا توسط یک استخراج کننده و یا اعتبار سنج انتخاب و وارد بلاک گردد.
انتخاب یک تراکنش از ممپول و گذاشته آن به بلاک نیز مانند قانون عرضه و تقاضای بازار کار میکند. یعنی هر فردی که کارمزد بیشتر پرداخت کند، تراکنش او زودتر پردازش میگردد.
3. حافظه محدود ممپول
اگر شما یک ارز مانند بیتکوین در زمان ازدحام زیاد ارسال کرده و کارمزد پایین انتخاب کرده باشید، ممکن است که تراکنش شما مدت زیادی در ممپول باقی بماند. بعد از مدتی که دیگر تراکنشها پردازش شد (ممکن است روزها طول بکشند) نوبت تراکنش شما میآید.
اگر تراکنشهای جدید که وارد میگردد هزینه بیشتر پرداخت کند، ممکن است که تراکنش حتا برگشت بخورند. شما دوباره آن را در کیف پول خود دیده و مجبور میشوید که دوباره ارسال کنید. اینبار شاید با کارمزد بیشتر.
4. مشکلات فنی
بعضی مشکلات فنی مانند تنظیم نادرست نودها، مشکلات اتصال نود، و یا عدم بهروز بودن نرمافزار نود نیز میتواند سبب تاخیر در تراکنش شما گردد.
چگونه ممپول را بررسی کنیم؟
خبر خوب این است که شما نیاز به گمانهزنی در مورد ازدحام شبکه ندارید — بلکه شما میتوانید آن را مشاهده کنید.
مانند کاوشگر تراکنشها، ممپل نیز دارای کاوشگر است که نشان میدهد که:
- چه مقدار تراکنش در انتظار است
- کارمزدهای آن؛ و
- سطح کُلی ازدحام
برای درک بیشتر ممپولهای بیتکوین و اتریوم را به برای شما به معرفی میگیریم.
کاوشگر ممپول بیتکوین
معروفت ترین کاوشگر مکان ممپول بیتکوین؛ blockchain.com است. به همینخاطر ما نیز همین را برای توضیح انتخاب کرده ایم.
کاوشگر بالا ممپول بیتکوین را در هر دقیقه نشان میدهد.
محور افقی نشاندهنده زمان و محور عمودی نشاندهنده حجم تراکنشهای تایید نشده است.
رنگها نشان دهنده کارمرزد تراکنش ساتوشی در هر بایت مجازی (sat/vB) است و ارتفاع رنگ نشاندهنده حجم معاملات با کارمزد مربوط است.
مثلا در ساعت 14:08 رنگ سرخ با مشخصات (1: 0.41 MvB) نشانی کردیم. که در آن:
- 1: نشاندهنده کارمزد یک ساتوشی در مقابل هر بایت مجازی (sat/vB) است. این پایینترین سطح کارمزد در نمودار است.
- 0.41 MvB: اندازه کل تمام تراکنشهای تأیید نشده در آن سطل، که با مگا بایت مجازی اندازهگیری میشود. یک «بایت مجازی» یک واحد وزنی است که در قوانین اندازه بلاک/بلوک بیتکوین استفاده میشود و «مگا» در اینجا به معنای تقریباً یک میلیون از آنهاست.
در نتیجه؛ (1: 0.41 MvB) نشان میدهد حدود 0.41 میلیون بایت مجازی تراکنش در ممپول وجود دارد که یک ساتوشی در هر بایت بایت مجازی (1 sat/vB) پرداخت میکنند.
کاوشگر ممپول اتریوم
وبسایت etherscan.io یک ممپول اتریوم ساده دارند که از اصطلاح تراکنشهای در انتظار شبکه اتریوم (Ethereum Network Pending Transactions) استفاده میکند.
نمودار بالا فقط تراکنشهای در انتظار را در واحد زمانی دقیقه نشان میدهد..
اگر میخواهید یک تراکنش را بررسی کنید که در لیست انتظار است یا نه، هش ترکنش خود را سمت راست که با کتور سیاه نشانی شده است، پِست کنید.
شما اگر ممپول را بهخاطر بررسی هزینه تراکنش بررسی میکنید، باید روی گس (Gas Gwei) سمت بالا که با وکتور سبز نشانی شده است کلیک کنید.
در صفحه بعدی، جزییات کامل در مورد گس فی (کارمزد تراکنش) میتوانید بدست آورید.
چگونه از تاخیر تراکنش جلوگیری کنیم؟
من و شما و هیچ کس دوست ندارد که ساعتها و روزها برای تایید تراکنش منتظر بماند.
خبر خوب این است که شما میتوانید سرعت آن را افزایش دهید.
در ادامه این بخش پُست، به شما پنج راهکار آوردهایم. دو اولی آن ساده و سه گزینه بعدی آن نیاز به دقت و آگاهی بیشتر دارد.
- کارمزد رقابتی انتخاب کنید: از ممپولهای دیدن کرده و کارمزد مناسب را رانتخاب کنید. بعضی از کیف پولها به شما پیشنهاد میکند که کارمزد شما چه قدر باشند، شما میتوانید آن را تنظیم و کمی بیشتر انتخاب کنید. پرداخت کمیبیشتر میتواند ساعتها یا روزها از هدر رفتن وقت شما جلوگیری کند.
- در جریان عدم ازدحام ارسال کنید: شبکههای کریپتو زمانهای خلوت و شلوغ دارند. در ممپولها رفته و دریابید که شبکه شلوغ است یا خلوت. مثلا، در جریان که بازار اروپا و آمریکا بسته است، هزینه تراکنش معمولا پایین است — چون در این زمان حتا بازار جاپان نیز بسته و بازار خلوت است.
- تراکنشها را بستهبندی کنید: اگر به چندین آدرس ارز ارسال میکنید، میتوانید آن را بستهبندی کرده (batch) و یکبار ارسال کنید. این سبب میگردد که بار شبکه کاهش یافته و هزینه تراکنش شما نیز کاهش یابد.
- از گزینه افزایش سرعت (Speed Up) یا جایگزین کارمزد تراکنش (Replace by Fee) کاربگیرید: بعضی کیف پولها به شما اجازه میدهد که تراکنش خود را دوباره با کارمزد بیشتر ارسال کنید. این ویژگی به استخراج کنندگان یا اعتبارسنجها میگوید که قبلی را فراموش و این یکی را گرفته سریعتر پردازش کن.
- کیف پول خود را بهروز نگهدارید: اپلیکیشنهای که بهروز نیست ممکن است که موثر نباشند.
چرا ممپول مهم است؟
به زبان خیلی ساده و خلاصه ممپول کمک میکند که:
- تاخیریها را پیشبینی کنید: با بررسی نمودار و جدولها شما میتوانید پیشبینی کنید که امکان تاخیری تراکنش شما وجود دارد یا خیر
- پول ذخیره کنید: با ارسال تراکنش در زمان مناسب میتوانید پول پسانداز کنید. یعنی هزینه کمتر پرداخت کنید.
- آگاه بمانید: ممپول به شما میگوید که کاربران شبکه فعال است یا غیر فعال. فعال بودن شبکه این موضوع را میرساند که سلامتی شبکه وجود دارد.
خلاصه کلام
تراکنش شما زمانی که به تاخیر میافتد، در ممپول مانده است. این همان سالن انتظار تراکنشها است که فقط آنانی که کارمزد کافی پرداخت کند، بار اول بیرون میشود.