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

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

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

ممپول (Mempool) چیست؟

ممپول مخفف Memory Pool و به معنی استخر حافظه هست. توی شبکه هایی مثل بیت کوین، هر نود کامل (Full Node) میتونه ممپول خودش رو داشته باشه و تراکنش هایی رو که هنوز وارد بلاک نشدن، به صورت موقت توش نگه داره.

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

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

ممپول چه اطلاعاتی درباره وضعیت شبکه به ما میدهد؟

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

با بررسی ممپول میتونید متوجه بشید:

چه تعداد تراکنش در انتظار تایید هستن
کارمزد تراکنش های موجود توی صف چقدره
با توجه به شرایط فعلی شبکه، تراکنش شما احتمالا چقدر زمان برای تایید شدن نیاز داره

توضیح ساده ممپول

ممپول چطور کار میکند؟

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

تراکنش چطور وارد ممپول میشود؟

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

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

در آموزش بیت کوین، بررسی مسیر تراکنش از زمان ارسال تا تایید، کمک میکنه دلیل بعضی تاخیرها رو بهتر بشناسید. تراکنش بعد از ارسال باید چند بررسی رو پشت سر بذاره و در صورت تایید شدن، وارد ممپول نودها میشه.

نود قبل از پذیرش تراکنش چه چیزهایی رو بررسی میکند؟

هر نود قبل از اینکه یه تراکنش رو بپذیره، چند مورد رو بررسی میکنه، از جمله:

  • معتبر بودن امضای دیجیتال
  • وجود موجودی یا خروجی کافی برای خرج کردن
  • خرج نشدن دوباره دارایی ها (Double Spend)
  • رعایت حداقل کارمزد مورد پذیرش نود
  • قرار نداشتن اندازه تراکنش خارج از محدوده مجاز

اگه تراکنش این بررسی ها رو با موفقیت پشت سر نذاره، نود اون رو قبول نمیکنه و وارد ممپول نمیکنه. همین مرحله بررسی امضا و جلوگیری از خرج دوباره دارایی هاست که پایه امنیت کل شبکه رو میسازه.

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

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


بیشتر بخوانید: استخراج بیت کوین چگونه است؟ آموزش ماینینگ بیت کوین


بعد از قرار گرفتن تراکنش در بلاک چه اتفاقی میافتد؟

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

اینجاست که تراکنش واقعا وارد فاز دائمی میشه و دیگه چیزی شبیه یه رکورد موقت نیست. برای اینکه بفهمید این ثبت دائمی دقیقا چه معنایی داره و چرا برگشتن ازش تقریبا غیرممکنه، خوبه یه نگاه به مفهوم بلاکچین بندازید؛ همون ساختاری که هر بلاک رو به بلاک قبلی وصل میکنه و همین وصل بودن باعث میشه تراکنش تأییدشده عملا غیرقابل تغییر بمونه.

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

تفاوت Pending ،Mempool و Confirmed چیست؟

این سه اصطلاح به وضعیت های مرتبط با یک تراکنش اشاره دارن، اما معنی یکسانی ندارن. 

  • Pending: وقتی کیف پول وضعیت تراکنش رو Pending نشون میده، یعنی تراکنش هنوز به مرحله مورد انتظار نرسیده. این وضعیت به تنهایی مشخص نمیکنه که تراکنش حتما در ممپول قرار داره؛ ممکنه کیف پول هنوز اطلاعات به روزی از شبکه دریافت نکرده باشه.

  • Mempool: تراکنشی که در ممپول یک نود قرار داره، دریافت و پذیرفته شده، اما هنوز در بلاک ثبت نشده. از اونجا که ممپول نودها یکسان نیست، ممکنه وضعیت یک تراکنش در ابزارهای مختلف متفاوت نمایش داده بشه.

  • Confirmed: وقتی تراکنش وارد یک بلاک معتبر میشه، اولین تاییدیه رو دریافت میکنه. با اضافه شدن بلاک های بعدی، تعداد تاییدیه ها افزایش پیدا میکنه و اطمینان از باقی موندن تراکنش در زنجیره بیشتر میشه.

چه چیزی تعیین میکند کدام تراکنش زودتر تأیید شود؟

کارمزد تراکنش (Fee) یکی از عوامل اصلی در تعیین اولویت تراکنشه. توی شبکه های مبتنی بر استخراج، ماینرها معمولا تراکنش هایی رو در اولویت قرار میدن که نسبت کارمزد به فضای اشغال شده اونها توی بلاک بیشتر باشه. عوامل دیگه ای هم میتونن روی ترتیب انتخاب تراکنش ها اثر بذارن:

  • سایز تراکنش: تراکنش های کوچک تر فضای کمتری از بلاک اشغال میکنن
  • زمان ورود به ممپول: توی شرایط مشابه، زمان ورود میتونه روی ترتیب قرار گرفتن تراکنش اثر بذاره
  • سیاست های خاص ماینر یا استخر استخراج

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

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

  • کارمزد پایین: اگه کارمزد تراکنش شما نسبت به تراکنش های موجود توی صف پایین باشه، تراکنش هایی که کارمزد بیشتری دارن توی اولویت قرار میگیرن و تراکنش شما ممکنه مدت بیشتری منتظر بمونه.

  • شلوغی شبکه: وقتی تعداد تراکنش های ورودی بیشتر از ظرفیت بلاک ها باشه، صف ممپول طولانی میشه. توی چنین شرایطی، تراکنش های کم کارمزد ممکنه ساعت ها یا حتی روزها منتظر بمونن.

  • سیاست های نود: نودها برای پذیرش و نگهداری تراکنش ها سیاست های مشخصی دارن. ممکنه تراکنش هایی با کارمزد خیلی پایین اصلا پذیرفته نشن یا بعد از مدتی از ممپول حذف بشن.

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

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

اگه کارمزد تراکنش خیلی پایین باشه و شبکه هم شلوغ باشه، ممکنه تراکنش برای مدت طولانی وارد بلاک نشه و در نهایت از ممپول بعضی نودها حذف بشه.

چرا بعضی تراکنش ها در ممپول بیشتر میماند؟

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

زمان ورود به ممپول هم توی بعضی شرایط میتونه اثرگذار باشه. برای تراکنش هایی که شرایط کارمزدی مشابهی دارن، تراکنشی که زودتر وارد صف شده باشه ممکنه زودتر انتخاب بشه.

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

اگه تراکنش شما برای مدت طولانی تایید نشده، قبل از هر اقدامی وضعیت اون رو بررسی کنید. وارد اکسپلورر شبکه بشید و TXID یا شناسه تراکنش رو جستجو کنید. اگه تراکنش هنوز در ممپول دیده میشه، به میزان کارمزد و شرایط فعلی شبکه توجه کنید. در صورتی که تراکنش در اکسپلورر نمایش داده نمیشه، لزوما به معنی تایید شدن یا از بین رفتن اون نیست. ممکن هست از ممپول نودی که اکسپلورر ازش اطلاعات میگیره حذف شده باشه یا هنوز در دسترس اون نود نباشه.

بعد از بررسی وضعیت تراکنش، میتونید یکی از راهکارهای زیر رو انتخاب کنید:

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

  • کارمزد رو افزایش بدید (RBF):  قابلیت Replace-By-Fee یا RBF در بعضی کیف پول ها امکان انتشار نسخه جایگزین یک تراکنش تایید نشده با کارمزد بالاتر رو فراهم میکنه. این روش زمانی کاربرد داره که تراکنش اولیه از RBF پشتیبانی کنه و کیف پول هم امکان افزایش کارمزد رو در اختیارتون بذاره. هنگام استفاده از این قابلیت، کارمزد پیشنهادی رو با توجه به شرایط فعلی شبکه تنظیم کنید. افزایش کارمزد به تنهایی تضمین نمیکنه که تراکنش بلافاصله تایید بشه.
  • از CPFP استفاده کنید: در روش Child Pays for Parent (CPFP)، یه تراکنش جدید ایجاد میشه که به تراکنش قبلی وابسته هست و کارمزد بالاتری داره. به این ترتیب، مجموع کارمزد موثر دو تراکنش برای ماینر جذاب تر میشه و احتمال انتخاب هر دو تراکنش افزایش پیدا میکنه.

  • بررسی کنید آیا تراکنش از ممپول حذف شده: بعضی نودها بعد از مدتی تراکنش های تایید نشده رو از ممپول حذف میکنن. این زمان به سیاست و تنظیمات نود بستگی داره و ممکنه ۷۲ ساعت یا بیشتر طول بکشه. بعد از حذف تراکنش از ممپول، اگه تراکنش دیگه توی شبکه قابل استفاده نباشه، میتونید اون رو دوباره با کارمزد مناسب ارسال کنید.

اقدامات بعد از گیر کردن تراکنش در ممپول

اگر تراکنش از ممپول حذف شود، دقیقا چه اتفاقی برای آن می افتد؟

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

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

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

چطور وضعیت تراکنش رو در ممپول بررسی کنیم؟

برای بررسی وضعیت تراکنش میتونید از اکسپلوررهای بلاک چین مثل mempool.space ،Blockchain.com یا Blockchair استفاده کنید. کافیه TXID یا شناسه تراکنش رو وارد کنید تا اطلاعاتی مثل موارد زیر رو ببینید:

  • تراکنش توی ممپول قرار داره یا نه
  • چند تاییدیه دریافت کرده
  • چه مقدار کارمزد پرداخت شده
  • وضعیت فعلی تراکنش و برآورد زمان تایید

این اطلاعات کمک میکنن بفهمید تراکنش توی چه مرحله ای قرار داره و دلیل احتمالی تاخیرش چیه.


بیشتر بخوانید: هش تراکنش چیست؟ آموزش پیگیری TXID تراکنش ارز دیجیتال (همه چیز درباره هش و TXID )


ممپول چه محدودیت ها و چالش هایی دارد؟

ممپول با وجود کاربردش، محدودیت هایی هم داره:

  • ظرفیت محدود: هر نود مقدار مشخصی از منابع خودش رو برای نگهداری تراکنش های ممپول اختصاص میده. وقتی این ظرفیت تحت فشار قرار بگیره، تراکنش های کم کارمزد ممکنه پذیرفته نشن یا از ممپول حذف بشن.

  • عدم هماهنگی کامل: ممپول نودهای مختلف دقیقا یکسان نیست. ممکنه یه تراکنش توی ممپول یه نود وجود داشته باشه، اما نود دیگه اون رو نپذیرفته باشه یا دیگه نگهش نداره.

  • حملات Spam: ارسال تعداد زیادی تراکنش میتونه منابع ممپول نودها رو درگیر کنه و فشار بیشتری به شبکه وارد کنه.

  • حذف خودکار: نودها ممکنه تراکنش های تایید نشده رو بعد از مدتی حذف کنن. بنابراین اینکه یه تراکنش مدت زیادی توی ممپول باقی بمونه، به معنی قطعی بودن تاییدش نیست.

آیا یک ممپول واحد برای کل شبکه وجود دارد؟

خیر. یه ممپول واحد برای کل شبکه وجود نداره. هر نود کامل ممپول خودش رو نگه میداره و محتوای اون میتونه با ممپول نودهای دیگه فرق داشته باشه.

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

ممپول در بیت کوین و سایر شبکه ها چه تفاوتی دارد؟

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

بیت کوین: تراکنش های تایید نشده توی ممپول نودها نگهداری میشن و وقتی شبکه شلوغ باشه، تراکنش های کم کارمزد ممکنه مدت زیادی منتظر بمونن. سیاست های پذیرش و کارمزد هم روی وضعیت ممپول اثر میذارن. چون بیت کوین اولین و شناخته شده ترین شبکه ایه که مفهوم ممپول توش تعریف شده، خیلی از این نکات رو میشه دقیق تر در آموزش بیت کوین دنبال کرد؛ اونجا بهتر مشخص میشه سیاست های کارمزد و پذیرش تراکنش دقیقا چطور روی رفتار ممپول این شبکه اثر میذارن.

اتریوم: توی اتریوم هم تراکنش های در انتظار تایید توی کلاینت ها نگهداری میشن، اما سازوکار کارمزدش با بیت کوین یکی نیست. بعد از اجرای EIP-1559، ساختار کارمزد شامل بخش هایی مثل base fee و priority fee است.

شبکه های لایه ۲: شبکه های لایه ۲ و راهکارهایی مثل رول آپ ها سازوکارهای خاص خودشون رو برای دریافت، پردازش و ارسال تراکنش ها دارن. به همین دلیل، نحوه مدیریت تراکنش های در انتظار توی اونها لزوما با ممپول بیت کوین یکی نیست.

جمع بندی

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

برای کاربر، مهم ترین نکته اینه که تاخیر تراکنش لزوما به معنی خراب شدنش نیست. با بررسی TXID، وضعیت ممپول و کارمزد تراکنش میتونید بفهمید بهتره منتظر بمونید یا اگه شبکه و کیف پول ازش پشتیبانی میکنن، از روش هایی مثل RBF یا CPFP استفاده کنید.

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

شناسه تراکنش (TXID) رو در اکسپلورر بلاک چین وارد کنید. اگه تراکنش هنوز تایید نشده و در ممپول نمایش داده میشه، میتونید کارمزد اون رو با تراکنش های در انتظار مقایسه کنید تا دلیل احتمالی تاخیر رو بهتر تشخیص بدید.

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

کارمزد پیشنهادی کیف پول رو با نرخ کارمزد تراکنش هایی که در صف انتظار هستن مقایسه کنید. در شبکه بیت کوین، نرخ کارمزد معمولا بر اساس ساتوشی به ازای هر واحد مجازی (sat/vB) بیان میشه. اگه نرخ تراکنش شما خیلی پایین تر از محدوده پیشنهادی باشه، احتمال داره برای تایید بیشتر منتظر بمونه.

ممکنه کیف پول هنوز وضعیت تراکنش رو به روز نکرده باشه، تراکنش به نودهای مورد بررسی اکسپلورر نرسیده باشه یا از ممپول اونها حذف شده باشه. TXID رو در اکسپلورر معتبر دیگری هم جستجو کنید و در صورت ادامه مشکل، وضعیت تراکنش رو از پشتیبانی کیف پول پیگیری کنید.

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