ممپول چیست؟ برای آشنایی با ممپول یا استخر تراکنشها و درک آن ابتدا نیاز است پاسخ سوال زیر را بیابیم:
کدام تراکنشها در شبکه ثبت میشوند؟
در ادامه میبینیم که بیت کوین با یک روش عالی به این سوال پاسخ داده است!
هر نود در شبکه بیت کوین اطلاعات مربوط به تراکنشهای جدید را به اشتراک میگذارد.
تراکنشهایی که در شبکه بیت کوین انجام میشوند، مستقیما به بلاک چین اضافه نمیشوند بلکه ابتدا در جایی بهنام استخر حافظه یا استخر تراکنش ”memory pool” جمع آوری و ذخیره میشوند.
هر کامپیوتری که برنامه بیت کوین را اجرا میکند، یک فضای ذخیرهسازی موقت برای تراکنشها ایجاد میکند که استخر حافظه نامیده میشود. در واقع ممپول “mempool” کوتاه شده یا مخفف “memory pool” است.
هر نود بیت کوین دارای ممپول مخصوص به خود است که در آن تراکنشهایی را ذخیره میکند که مورد بررسی قرار گرفته و تایید شدهاند.
ممپول چیست ؟ بهطور کلی، ممپول یک صف سازمان یافته است که در آن تراکنشها قبل از اضافه شدن به یک بلاک جدید، ذخیره و مرتب میشوند.
- ممپول یا استخر تراکنش، تراکنشهای تازه یا تایید نشده را نگهداری میکند.
- بلاکچین، تراکنشهای بایگانی شده یا همان تراکنشهای تایید شده را نگهمیدارد.
تراکنشهای بیت کوین در ابتدا تراکنشهای تایید نشده هستند و قبل از تایید و اضافه شدن به بلاک چین، ابتدا در ممپول قرار میگیرند.
در شبکه بیت کوین تمام فول نودها دارای یک ممپول یا استخر حافظه هستند.
فرض میکنیم در یک سمت از شبکه شما شروع به انجام تراکنشی میکنید. (تراکنش بنفش)
سپس به سمت دیگر شبکه بروید و از مقدار بیت کوین استفاده شده در تراکنش اول استفاده کنید و تراکنش را (با رنگ قرمز) وارد کامپیوتر کنید.
هردوی تراکنشها در سراسر شبکه منتشر میشوند.
کامپیوتری که قبلا تراکنش بنفش را دریافت کرده، تراکنش قرمز را رد میکند.
بنابراین اکنون هردوی تراکنشها در شبکه وجود دارند.
اما هنوز این تراکنشها در فایل نوشته نشدهاند و این بدان معناست که فایل هنوز بهروز نشده است.
اتفاقی که بعد از آن رخ خواهد داد این است که همه این کامپیوترها دست به کار میشوند و تلاش میکنند تا تراکنشهای خود را از ممپول یا استخر حافظه به فایل (بلاک در بلاکچین) منتقل کنند.
کامپیوترها با یکدیگر رقابت میکنند تا اولین کسانی باشند که تراکنشهای ممپول را در فایل (بلاکچین) به ثبت برسانند.
فرض کنید کامپیوتر زرد رنگ اولین کامپیوتری است که میتواند این کار را انجام دهد.
پس تراکنش خود را از استخر حافظه به فایل اضافه میکند.
بعد از انجام این کار، کپی فایل خود را به هر نود دیگری که به آن متصل است ارسال میکند.
و آنها کپی فایلهای خود را به روز میکنند.
در تصویر زیر، نود یا کامپیوتری را میبینید که فایل بهروز شده قرمز رنگی را در ممپول دریافت میکند که دقیقا مانند تراکنش بنفش است و قصد دارد همان مقدار بیت کوین را در جایی دیگر خرج کند.
به نظر شما چه اتفاقی برای این تراکنش قرمز در ممپول میافتد؟
از آنجایی که همان مقدار بیت کوین در تراکنش بنفش قبلا خرج شده، کامپیوتر تراکنش قرمز را از ممپول بیرون میاندازد!
سپس این نود، فایل بهروز شده را به کل شبکه ارسال میکند.
نودهای دیگر نیز همین کار را انجام میدهند و هرگونه تراکنش متناقض را از ممپول خود حذف میکنند.
حالا همه کامپیوترها فایل بهروز شده را در اختیار دارند.
خب دیدید که مشکل تراکنشهای متناقض در شبکه چگونه حل میشود.
پس ممپول در واقع مانند یک اتاق انتظار برای تراکنشهای معلق (تایید نشده) است و نودها با یکدیگر رقابت میکنند و در تلاشند تا تراکنشهای خود را به فایل (بلاکچین) اضافه کنند.
یک مثال دیگر!
در این مثال شخص بنفش مقداری بیت کوین را دریافت میکند.
اما زمانی که شما به عنوان یک شخص کلاهبردار سعی دارید همان مقدار بیت کوین را برای شخصی دیگر (قرمز) بفرستید، دیگر این ایده شما جوابگو نیست!…
به این فرآیند رقابت نودها، برای انتقال تراکنشها از ممپول یا استخر تراکنش به فایل (بلاک چین)، استخراج “mining” (ماینینگ) میگویند.