کلمه Mempool مخفف عبارت «Memory Pool» به‌معنای «استخر حافظه» و در واقع فضایی موقتی است که تراکنش‌های تأییدنشده یک بلاک چین در آن نگهداری می‌شوند. هنگامی‌که از کیف پول خود مقداری بیت کوین ارسال می‌کنید، آن تراکنش بلافاصله به بلاکچین افزوده نمی‌شود، بلکه ابتدا وارد نسخه‌‌ای از ممپول نودها (ماینرها یا اعتبارسنج‌ها) می‌شود. سپس ماینرها یا اعتبارسنج‌ها، تراکنش شما را انتخاب کرده و در داخل یک بلاک قرار می‌دهند تا با استخراج یا اعتبارسنجی آن، به بلاک چین افزوده شود.

در این مطلب، نحوه ساخت ممپول، اهمیت آن برای بلاک چین‌هایی مانند بیت کوین و اتریوم را بررسی کرده و روش‌های خارج کردن یک تراکنش از Mempool را آموزش می‌دهیم.

فهرست مقاله

Mempool چیست؟

ممپول یا استخر حافضه، نسخه‌ای از یک «اتاق انتظار» برای یک «نود بلاک چین» است که تراکنش‌های تأییدنشده وارد آن می‌شوند. به زبان ساده‌تر، پیش از اینکه تراکنش شما تأیید شود، ابتدا وارد فضایی به‌نام مم‌پول اختصاصی نودها می‌شود که دیگر تراکنش‌های تازه‌ساخته‌شده نیز در آن قرار می‌گیرند تا نودها (ماینر یا اعتبارسنج) آن‌ها را براساس معیارهای اولویت‌دهی خودشان، در یک بلاک قرار داده و سپس به بلاکچین اضافه کنند.

نکته مهم اینجاست که هیچ مم‌پول جهانی و واحدی وجود ندارد؛ هر نود یا گره (Node) در شبکه، نسخه ممپول مخصوص به خودش را نگهداری می‌کند. بنابراین، ممکن است نودهای مختلف، مجموعه متفاوتی از تراکنش‌ها را در ممپول خود داشته و در هر لحظه، تراکنش متفاوتی را دریافت کرده باشند.

نود چیست؟

نود یا گره، کامپیوتری است که نسخه‌ای از دفترکل توزیع‌شده بلاک چین را نگهداری می‌کند و با دیگر نودهای شبکه در ارتباط است. در شبکه‌های بلاک چینی مختلف، تعداد نودهای متفاوتی وجود دارد که هر کدام ممکن است در نقاط جغرافیایی متفاوتی از جهان مستقر باشند. برای مثال، یک نود بیت کوین می‌تواند در ایران و نود دیگری در استرالیا قرار داشته باشد.

به‌دلیل این فاصله جغرافیایی، ارسال اطلاعات از یک نود در ایران به یک نود در استرالیا ممکن است با کمی تأخیر همراه باشد. همین تفاوت در زمان انتشار داده‌ها، یکی از دلایل وجود نسخه‌های متفاوت مم‌پول در میان نودهای یک شبکه مانند بیت کوین است.

نود بلاک چین

به‌طور کلی، دو نوع نود اصلی به‌نام فول‌نود (Full node) و لایت‌نود (Light Node) در شبکه‌های بلاکچینی وجود دارد که هرکدام وظیفه متفاوتی در شبکه دارند. برای آشنایی بیشتر با مفهوم نود و نحوه کار آن‌ها، مطلب نود (Node) چیست ما را مطالعه کنید.

نحوه اولویت‌دهی و تأیید تراکنش‌ها در ممپول چگونه است؟

برای درک نحوه کار Mempool و اولویت‌دهی انتخاب تراکنش‌ها توسط نودها، ابتدا باید با نحوه تأیید تراکنش‌ها در یک بلاک چین آشنا شوید. برای راحتی کار، ما نحوه کار بلاک چین بیت کوین را در نظر می‌گیریم.

۱. ایجاد تراکنش

برای ارسال بیت کوین، کاربر ابتدا تراکنشی را از طریق کیف پول ارز دیجیتال خود ایجاد می‌کند. این تراکنش شامل جزئیاتی مانند مقدار بیت کوین ارسالی، آدرس دریافت‌کننده و کارمزد تراکنش است. کاربر سپس تراکنش را با کلید خصوصی خود امضا می‌کند که این عمل منجر به ایجاد یک امضای دیجیتال می‌شود.

۲. امضا و پخش تراکنش

پس از امضا، تراکنش در شبکه بیت کوین منتشر می‌شود. اکنون نودها این تراکنش را دریافت کرده و آن را اعتبارسنجی می‌کنند. فرایند اعتبارسنجی شامل بررسی موارد مختلفی است از جمله:

  • آیا فرستنده موجودی کافی دارد؟
  • آیا ساختار تراکنش درست است و با معیارهای شبکه تطابق دارد؟
  • آیا تراکنش تکراری نیست (دابل اسپندینگ صورت نگرفته است)؟

۳. ورود تراکنش به ممپول

پس از تأیید، تراکنش وارد Mempoolها می‌شود. هر نود در شبکه نیز مم‌پول مخصوص به خود را دارد. در این مرحله، تراکنش شما تا زمانی‌که توسط یکی از ماینرها انتخاب نشده باشد، در مم‌پول‌ها باقی می‌ماند. هنگامی‌که تراکنش توسط ماینری در بلاک قرار گیرد، از وضعیت «در انتظار تأیید» خارج می‌شود و پس از انتشار بلاک، از مم‌پول باقی نودها نیز حذف می‌شود.

۴. انتخاب و تجمیع تراکنش‌ها در بلاک

ممپول این امکان را به ماینرها می‌دهد تا تراکنش‌های درانتظار تأیید را مشاهده کرده و بر اساس معیارهایی مانند میزان کارمزد و اندازه تراکنش، تصمیم بگیرند کدام‌یک را در بلاک بعدی قرار دهند. به‌همین‌خاطر است که تراکنش‌های دارای کارمزد بالاتر معمولاً زودتر تأیید می‌شوند. ماینرها حتی می‌توانند برای جلوگیری از بزرگ‌شدن بیش‌ازحد نسخه ممپول خود، سیاست‌هایی مانند حذف تراکنش‌های با کارمزد پایین را برای مدیریت آن تعیین کنند.

در ادامه، ماینرها تراکنش‌ها را از مم‌پول خود جمع‌آوری کرده و آن‌ها را در قالب یک بلاک تجمیع می‌کنند. برای افزودن این بلاک به بلاکچین، ماینرها باید یک مسئله پیچیده ریاضی را حل کنند که به آن مکانیزم اثبات کار (Proof of Work) می‌گویند. اثبات کار شامل یافتن عددی تصادفی به‌نام نانس (Nonce) است که وقتی با داده‌های دیگر بلاک ترکیب و هش (Hashing) می‌شود، نتیجه حاصل باید با معیارهای خاص شبکه مطابقت داشته باشد.

۵. استخراج موفق بلاک و انتشار روی بلاک چین

پس از موفقیت در حل معمای اثبات کار و یافتن نانس معتبر، ماینر بلاک جدید را به شبکه اعلام می‌کند. سپس سایر نودها آن بلاک را از طریق بررسی صحت تراکنش‌های درون آن و اطمینان از تطابق با قوانین شبکه، تأیید می‌کنند. اگر بلاک معتبر شناخته شود، به زنجیره افزوده می‌شود و تمامی تراکنش‌های درون آن نیز تأییدشده و معتبر تلقی می‌شوند.

بیشتر بخوانید: استخراج ارز دیجیتال چیست؟

۶. حذف تراکنش از دیگر ممپول‌ها

پس از استخراج موفق بلاک، تراکنش‌های درون آن نیز از مم‌پول تمام نودها حذف شده و بلاک چین به‌روزرسانی می‌شود. البته گاهی اوقات به‌دلیل فاصله جغرافیایی زیاد بین نودهای شبکه بیت کوین، ممکن است برخی نودها، بلاک تأییدشده توسط اکثریت را با اندکی تأخیر دریافت کنند. دراین‌حالت، تراکنش‌های مربوطه تا زمان تکمیل فرآیند همگام‌سازی، موقتاً در مم‌پول آن نودها باقی می‌مانند.

آیا هر بلاک چین تنها یک ممپول واحد و جهانی دارد؟

خیر. همانطور که گفتیم، یک Mempool واحد و جهانی برای یک بلاک چین مانند بیت کوین وجود ندارد که کل تراکنش‌ها وارد آن شوند. بنابراین، به تعداد نودهای موجود در شبکه، مم‌پول وجود دارد.

دلیل این موضوع آن است که تمام نودها در یک زمان واحد، تراکنش‌های مشابهی را دریافت نمی‌کنند؛ بنابراین ممکن است برخی از نودها در یک لحظه خاص، اطلاعات بیشتری نسبت به سایرین ذخیره کرده باشند. از آنجاکه هر فرد (کامپیوتر) می‌تواند با سخت‌افزاری دلخواه نود مخصوص به خود را اجرا کند، ظرفیت نودها برای ذخیره تراکنش‌های تأییدنشده نیز متفاوت است.

نتیجه این تفاوت آن است که هر نود، نسخه خاص خود از تراکنش‌های «درانتظار تأیید» را دارد و این مسئله، دلیل اصلی تفاوت اندازه مم‌پول‌ها و تعداد تراکنش‌های ثبت‌شده در منابع مختلف است.

چرا ممپول‌ها برای بلاک چین‌ها مهم است؟

مم‌پول‌ها بخش جدایی‌ناپذیری از نحوه عملکرد یک نود بلاکچین هستند. همانطور که مشخص است، تأیید یک تراکنش در بلاک‌چین به‌معنای قرارگرفتن آن درون یک بلاک جدید روی زنجیره است.

بااین‌حال، همه نودها در شبکه نمی‌توانند بلاک جدید ایجاد کنند. برای مثال، در بلاک‌چین‌هایی با الگوریتم اثبات کار مانند بیت کوین، تنها ماینرها قادر به ایجاد بلاک هستند. به‌طور مشابه، در بلاکچین‌هایی با الگوریتم اثبات سهام (Proof of Stake) مانند اتریوم، تنها اعتبارسنج‌ها (Validators) می‌توانند بلاک تولید کنند.

بنابراین، زمانی که شما تراکنشی را امضا می‌کنید، باید منتظر بمانید تا یکی از ماینرها یا اعتبارسنج‌ها آن را در یک بلاک قرار داده و در شبکه منتشر کند. با‌این‌حال، ممکن است بین زمان امضای تراکنش و انتشار آن در شبکه، وقفه‌ای وجود داشته باشد. در این فاصله، تراکنش به محلی برای انتظار نیاز دارد و این محل، همان Mempool است.

چرا تراکنش‌ها در ممپول گیر می‌کنند؟

چرا تراکنش‌ها در ممپول گیر می‌کنند؟

دلایل متعددی وجود دارد که ممکن است باعث شود تراکنش شما در Mempool گیر کند. در ادامه، مهم‌ترین آن‌ها را بررسی می‌کنیم.

ازدحام شبکه

مهم‌ترین دلیل گیر کردن تراکنش‌ها در مم‌پول، ازدحام شبکه (Network Congestion) است. در هر لحظه، هزاران تراکنش درحال ارسال به شبکه هستند که ماینرها یا اعتبارسنج‌ها باید آن‌ها در بلاک‌ها قرار دهند.

همانطور که پیشتر اشاره کردیم، این افراد، معیارهایی مانند کارمزد و اندازه تراکنش‌ها را برای اولویت‌دهی در انتخاب‌هایشان در نظر می‌گیرند. ازآنجاکه برخی کاربران حاضرند برای تأیید سریع‌تر تراکنش خود کارمزد بیشتری بپردازند،هنگام شلوغی شبکه، میزان کارمزدها افزایش پیدا می‌کند.

بنابراین، اگر در دوره‌های شلوغ بلاکچین تراکنشی ارسال کنید، باید کارمزدی برابر یا بالاتر از میانگین شبکه تعیین کنید تا در اولویت پردازش قرار گیرد.

تعیین کارمزد (گس فی) بسیار پایین

دلیل دیگر گیر کردن تراکنش در ممپول‌ها این است که ممکن است کارمزد و گس فی (Gas Fee) را آن‌قدر پایین تعیین کرده باشید که هیچ ماینر یا اعتبارسنجی آن را نپذیرد. همانطور که گفتیم، برخی ماینرها حتی می‌توانند برای جلوگیری از بزرگ‌شدن بیش‌ازحد نسخه ممپول خود، سیاست‌هایی مانند حذف تراکنش‌های با کارمزد پایین را برای مدیریت آن تعیین کنند.

بنابراین، اگر کارمزد پرداختی بسیار کمتر از حد معمول باشد، حتی در زمان‌های خلوت نیز شبکه توان یا تمایل به پردازش تراکنش شما نخواهد داشت. در چنین مواردی، لازم است مقدار گس فی را متناسب با شرایط فعلی شبکه تنظیم کنید.

کاهش نرخ هش

در شبکه بیت کوین، گاهی گیر کردن تراکنش‌ها ناشی از کاهش هش ریت (Hashrate) است. به بیان ساده، زمانی‌که توان محاسباتی شبکه افت می‌کند، ظرفیت پردازش تراکنش‌های درانتظار تأیید نیز کاهش می‌یابد. در این وضعیت، بلاک‌ها دیرتر استخراج می‌شوند و تراکنش‌ها مدت بیشتری در مم‌پول باقی می‌مانند.

چگونه تراکنش را از ممپول خارج کنیم؟

خارج کردن تراکنش از مم‌پول ممکن است کمی دشوار باشد، زیرا یک روش واحد وجود ندارد. انتخاب راه‌حل مناسب به این بستگی دارد که تراکنش شما چگونه در مم‌پول گیر کرده است. به‌طور کلی، سه گزینه اصلی برای رفع این مشکل شامل موارد زیر هستند:

  • لغو تراکنش
  • افزایش سرعت تراکنش
  • صبر و انتظار بیشتر

بااین‌حال، جزئیات اجرای هر کدام از این روش‌ها به نوع بلاک چین، شرایط فعلی شبکه و میزان کارمزدی که تعیین کرده‌اید، بستگی دارد.

لغو تراکنش

در برخی بلاک چین‌ها می‌توان تراکنش را لغو کرد، اما انجام این کار نیازمند پرداخت کارمزد تراکنش جدیدی است. برای مثال، در کیف پول‌های سخت‌افزاری لجر، امکان لغو تراکنش به‌صورت مستقیم وجود ندارد. برای این کار، باید کیف پول خود را به یک والت نرم‌افزاری مانند متامسک (Metamask) متصل کرده و سپس گزینه «Cancel» را در رابط کاربری آن انتخاب کنید. اجرای این روش برای خود ولت‌های نرم‌افزاری نیز ممکن است.

در شبکه‌هایی مانند اتریوم، روش پیشرفته‌تر دیگری نیز برای لغو تراکنش وجود دارد؛ ایجاد یک تراکنش جدید در کیف پول‌تان با این مشخصات:

  • همان آدرس گیرنده قبل را وارد کنید.
  • مقدار اتر را ۰ بگذارید.
  • مقدار نانس (Nonce) را مشابه نانس تراکنش قبلی قرار دهید.
  • کارمزد را بالاتر ببرید.

این کار باعث می‌شود ماینر/والیدیتورها، تراکنش جدید را زودتر از تراکنش قبلی استخراج/اعتبارسنجی کنند که به‌نوعی باعث لغو تراکنش قبلی می‌شود.

افزایش سرعت تراکنش

در هر دو شبکه اتریوم و بیت کوین می‌توانید سرعت تأیید تراکنش را در اکثر کیف پول‌های نرم‌افزاری افزایش دهید. در ولت‌های سخت‌افزاری نیز کافی است آن‌ها را به یک والت نرم‌افزاری مانند متامسک یا تراست والت متصل کنید.

این کار مستلزم پرداخت کارمزدی بالاتر است تا ماینرها یا اعتبارسنج‌ها انگیزه بیشتری برای انتخاب تراکنش شما داشته باشند.

صبر و انتظار بیشتر

آخرین گزینه این است که کمی صبر کنید. اگر میزان گس فی (کارمزد) شما خیلی پایین نبوده و تنها دلیل تأخیر، ازدحام شبکه باشد، تراکنش شما در نهایت تأیید خواهد شد. در بدترین حالت ممکن است مجبور شوید چند ساعت یا حتی چند روز منتظر بمانید تا شبکه خلوت‌تر شود و تراکنش شما پردازش شود.

اگر دلیل عدم تأیید تراکنش، کارمزد پایین آن باشد، باید مدت زمان بیشتری، مثلاً یک هفته منتظر بمانید تا نهایتاً تراکنش از میم‌پول بیرون انداخته شود. سپس می‌توانید دوباره تراکنشی با کارمزد بالاتر ثبت کنید.

ممپول اکسپلورر (Mempool Explorer) چیست؟

مم‌پول اکسپلورر (Mempool Explorer) ابزاری است که به شما اجازه می‌دهد اطلاعات لحظه‌ای و تاریخی مربوط به ممپول یک نود را مشاهده کنید، تراکنش‌های آن را به‌صورت تصویری ببینید و میان آن‌ها جست‌وجو کرده و جزئیاتشان را بررسی کنید.

برای مثال، وب‌سایت mempool.space یک ابزار کاربردی است که مم‌پول یک نود بیت کوین را به‌صورت تصویری نمایش می‌دهد. در این سایت، به اطلاعات زیر دسترسی دارید:

  • نمایش زنده وضعیت مم‌پول:
    • تراکنش‌های فعلی منتظر تأیید
    • حجم، کارمزدها، تعداد تراکنش‌ها و جزئیات دیگر تراکنش‌ها
  • بلاک‌های پیش‌بینی‌شده (Projected Blocks)
    • تراکنش‌هایی که ممکن است بعداً استخراج شوند (تراکنش‌های سبزرنگ سمت چپ خط‌چین سفید)
  • جست‌وجو و بررسی تراکنش‌ها:
    • امکان جست‌وجو بر اساس آدرس، شناسه تراکنش (TXID) و بلاک
    • مشاهده جزئیات هر تراکنش مانند کارمزد، زمان ارسال، وضعیت تأیید و ورودی/خروجی‌ها
  • نمایش تاریخی و آماری:
    • نمودارهای تاریخی مربوط به کارمزدها، تعداد تراکنش‌ها، اندازه مم‌پول و روند تغییرات آنها
    • امکان مشاهده تاریخچه بلاک‌ها و اطلاعات آماری بلاک چین بیت کوین
  • ابزارهای اطلاع‌رسانی و هشدار:
    • پیش‌بینی زمان افزایش یا کاهش تراکنش‌ها
    • اطلاع‌رسانی در مورد اوج ترافیک شبکه و وضعیت ازدحام تراکنش‌ها

اکسپلورر ممپول mempool.space

ممپول انواع ارزهای دیجیتال را چگونه ببینیم؟

ممپول‌ها برای ارزهای دیجیتالی مانند بیت کوین و اتریوم حیاتی هستند. در این قسمت، نحوه بررسی Mempool این ارزهای دیجیتال را بررسی می‌کنیم.

ممپول بیت کوین

در بخش قبل، سایت mempool.space را به‌عنوان یک ابزار برای بررسی مم‌پول نودهای مختلف بیت کوین معرفی کردیم،

علاوه‌براین، سایت Blockchain.com بخشی به‌نام «Bitcoin Mempool» دارد که تراکنش‌های درانتظار تأیید این ارز دیجیتال را نشان می‌دهد. بااین‌حال، همانطور که گفتیم، یک ممپول واحد برای بیت کوین وجود ندارد و هر نود، استخر حافظه مخصوص خود را دارد. بنابراین، مم‌پول Blockchain.com، نسخه اختصاصی نود متعلق به این سایت است.

ممپول بیت کوین در سایت blockchain.com
مم‌پول بیت کوین در سایت blockchain.com

ممپول اتریوم

مشابه بیت کوین، اتریوم نیز یک ممپول واحد ندارد و هرکدام از اعتبارسنج‌ها، نسخه مربوط به خودشان را دارند. بااین‌حال، با مراجعه به بخش «Pending Transactions» سایت اتراسکن (EtherScan) می‌توانید نسخه‌ای از ممپول متعلق به نود این سایت را مشاهده کنید.

تراکنش های در انتظار تایید در اتراسکن
تراکنش های درانتظار تأیید در اتراسکن

سؤالات متداول

ممپول (Mempool) چیست و چه نقشی در بلاک چین دارد؟

ممپول یا «استخر حافظه»، فضایی موقت برای هر نود شبکه بلاکچین است که تراکنش‌های تأییدنشده در آن نگهداری می‌شوند تا ماینرها یا اعتبارسنج‌ها آن‌ها را در یک بلاک قرار دهند. ممپول نقش «اتاق انتظار تراکنش‌ها» را دارد تا شبکه بتواند تراکنش‌ها را به‌صورت منظم پردازش کند.

نود (Node) در بلاک چین چیست و چه ارتباطی با ممپول دارد؟

نود یا گره، کامپیوتری است که نسخه‌ای از دفترکل بلاکچین را نگهداری می‌کند و با دیگر نودها در ارتباط است. هر نود، ممپول مخصوص خود را دارد و تراکنش‌های تأییدنشده را موقتاً در آن ذخیره می‌کند تا در بلاک‌های بعدی شبکه گنجانده شوند.

آیا هر بلاک چین فقط یک ممپول واحد دارد؟

خیر. هیچ بلاک چین عمومی مانند بیت کوین یا اتریوم ممپول واحد و جهانی ندارد؛ به تعداد نودهای فعال در شبکه، ممپول وجود دارد. هر نود نسخه خاص خود از ممپول را نگهداری می‌کند و ممکن است مجموعه متفاوتی از تراکنش‌ها را در لحظه داشته باشد.

چرا اندازه ممپول‌های نودهای مختلف با هم متفاوت است؟

همه نودهای شبکه، تراکنش‌ها را در یک زمان دریافت نمی‌کنند. تفاوت در موقعیت جغرافیایی نودها، سرعت ارتباط شبکه، تعداد همتایان (Peers)‌ و ظرفیت سخت‌افزاری هر نود باعث می‌شود محتویات ممپول‌ها متفاوت باشد.

چرا تراکنش‌ها در ممپول گیر می‌کنند؟

رایج‌ترین دلایل گیر کردن تراکنش‌ها در ممپول شامل ازدحام شبکه، تعیین کارمزد بسیار پایین و کاهش توان پردازشی هستند.

چطور می‌توان تراکنشی را از ممپول خارج کرد؟

سه روش اصلی وجود دارد: لغو تراکنش، افزایش سرعت تراکنش یا صبر کردن. بااین‌حال، نحوه اجرای هر روش به ساختار و شرایط شبکه بستگی دارد.

ممپول اکسپلورر (Mempool Explorer)‌ چیست؟

ممپول اکسپلورر ابزاری برای مشاهده زنده و تاریخی ممپول‌هاست. شما می‌توانید تعداد تراکنش‌های در انتظار، کارمزدها، اندازه ممپول و حتی وضعیت بلاک‌های پیش‌بینی‌شده را ببیند. وب‌سایت‌هایی مانند mempool.space برای بیت کوین و Etherscan.io برای اتریوم، از معروف‌ترین ممپول اکسپلوررها هستند.

اگر ممپول پر شود چه اتفاقی می‌افتد؟

زمانی‌که ممپول یک نود پر شود، نود دارنده آن ممپول ممکن است تراکنش‌های با کارمزد پایین را حذف یا آستانه حداقلی کارمزد را تعیین کند تا فقط تراکنش‌های با فی بالاتر را بپذیرد. این کار از سقوط عملکرد شبکه و پر شدن حافظه RAM کامپیوتر جلوگیری می‌کند.

جمع‌بندی

ممپول (Mempool) یا استخر حافظه (Memory Pool)، قلب تپنده پردازش تراکنش‌ها در بلاک چین است؛ فضایی موقت که تراکنش‌ها پیش از ورود به بلاک در آن منتظر تأیید می‌مانند. هر نود در شبکه، نسخه خاص خود از مم‌پول را دارد و این تفاوت، ماهیت غیرمتمرکز شبکه را تقویت می‌کند. آگاهی از نحوه کار ممپول‌ها و عوامل تأخیر تراکنش‌ها، به شما کمک می‌کند تا کارمزدها را هوشمندانه‌تر تعیین کرده و عملکرد شبکه را بهتر درک کنید.