Fungsi utama dari mempool adalah menyimpan transaksi sebelum transaksi tersebut divalidasi.
Bitcoin dan Ethereum adalah contoh-contoh blockchain yang menggunakan mempools.
Kepadatan blockchain adalah alasan utama mengapa transaksi terjebak dalam waktu yang lama.
Jika Anda ingin transaksi berjalan cepat, gunakan biaya gas yang sesuai.
Kami sering melakukan transaksi di berbagai blockchain seperti Ethereum dan Bitcoin tetapi kita mungkin tidak sepenuhnya memahami beberapa teknikalitas mereka. Namun, mengetahui bagaimana beberapa komponen dari blockchain bekerja dapat membantu kita untuk mempercepat transaksi atau menurunkan biaya mereka.
Dalam analisis ini kita membahas Mempool dalam blockchain dan bagaimana cara kerjanya. Kami juga akan menjelaskan bagaimana Anda dapat menangani transaksi tertunda atau terlambat di jaringan Bitcoin dan Ethereum.
Baca juga: Apa Itu Penjelajah Blockchain?
Mempool, sebuah bentuk singkat dari memori pool, adalah ruang node untuk menyimpan informasi seperti transaksi yang belum dikonfirmasi. Ini berfungsi sebagai ruang tunggu untuk transaksi yang belum dikonfirmasi atau disetujui. Ingatlah bahwa transaksi hanya dimasukkan dalam blok ketika mereka diverifikasi atau disetujui.
Dengan kata lain, mempool adalah ruang tempat transaksi yang tertunda menunggu sebelum ditambahkan ke blok.
Ketika transaksi diverifikasi, itu berarti bahwa semua peserta di dalam blockchain dapat mengakses informasi tersebut. Namun, sebelum transaksi disetujui, berbagai node memverifikasi tanda tangan, memeriksa apakah output tidak lebih besar dari input, dan bahwa sistem belum mengirimkan aset digital. Jika salah satu dari kondisi ini tidak terpenuhi, validator atau penambang akan menolak transaksi.
Penting untuk memahami bahwa tidak ada mempool tunggal untuk blockchain. Oleh karena itu, setiap node pada jaringan blockchain memiliki memori pool sendiri, juga disebut sebagai transaction pool. Karena itu, mempool dari berbagai node membentuk collective blockchain’s memory pool.
Sebagai contoh, transaksi yang dilakukan pada Bitcoin Jaringan tidak ditambahkan langsung ke blockchain. Setiap node menyimpan transaksi dalam penyimpanan sementara untuk transaksi yang disebut mempool atau txpool. Akibatnya, mereka membentuk antrean yang perlu diperiksa dan divalidasi.
Oleh karena itu, kita dapat dengan mudah mendefinisikan mempool sebagai antrian terorganisir dari transaksi yang perlu diurutkan dan ditambahkan ke blok.
Memory Pool (Mempool) di sebuah Node- Babypips
Ingatlah bahwa transaksi hanya ada di mempool sebelum mereka dikonfirmasi atau dikemas ke dalam blok. Dalam diagram di atas, bagian berwarna biru adalah ruang mempool yang ada di dalam sebuah node. Diagram berikut menunjukkan distribusi mempool dalam sebuah jaringan.
Node lengkap dalam Jaringan Bitcoin memiliki Mempool - Babypips
Seperti yang terlihat pada gambar di atas, setiap node lengkap dalam jaringan seperti Bitcoin atau Ethereum memiliki mempool. Namun, setiap transaksi akan disiarkan ke seluruh node jaringan seperti yang terlihat pada diagram berikut.
Jaringan Node Bitcoin - Babypips
Seperti yang terlihat pada diagram, pengguna berwarna ungu memulai transaksi bitcoin yang disimpan di mempool sebelum disetujui. Penting untuk dicatat bahwa setelah transaksi diverifikasi, itu ditambahkan ke blok seperti yang ditunjukkan pada ilustrasi berikutnya.
Transaksi Ditambahkan ke File (Blok) - Babypips
Panah biru pada diagram menunjukkan apa yang terjadi ketika transaksi diverifikasi, itu dipindahkan dari txpool ke blok. Pada tahap itu semua komputer akan memiliki file yang diperbarui dari transaksi yang dikonfirmasi.
Secara umum, Mempools tidak bekerja dengan cara yang sama persis. Bagaimana mereka beroperasi tergantung pada arsitektur masing-masing blockchain. Dengan kata lain, mereka bekerja secara berbeda tergantung pada jenis mekanisme konsensus jaringan. Transaksi tersebut entah diverifikasi oleh validator atau penambang tergantung pada jaringan.
Sebagai contoh, transaksi di blockchain bitcoin diverifikasi oleh penambang karena menggunakan mekanisme konsensus proof-of-work. Di sisi lain, transaksi di jaringan Ethereum disetujui oleh validator karena blockchain menggunakan mekanisme konsensus proof-of-stake.
Baca juga: Membentuk Ulang Ethereum dan Potensi Masalah Kesehatan Jaringan
Jaringan bitcoin membutuhkan setidaknya enam konfirmasi per transaksi sedangkan blockchain Ethereum membutuhkan setidaknya tujuh konfirmasi. Pada dasarnya, setiap transaksi dalam mempool memiliki status tertentu. Entah itu tertunda atau dalam antrian. Ketika validator atau penambang memvalidasi transaksi yang dalam antrian, transaksi tersebut berubah menjadi tertunda.
Baca juga: Apa itu Jaringan Petir Bitcoin?
Mari kita lihat contoh sederhana tentang apa yang terjadi ketika Anda mengirim ETH ke seorang teman. Prosedurnya melibatkan memasukkan alamat dompet, menetapkan biaya gas dan mengonfirmasi transaksi.
Setelah Anda melakukan ini, transaksi Anda akan masuk antrian, menunggu verifikasi. Pada saat itu, transaksi akan disiarkan ke seluruh jaringan node tetapi belum menjadi bagian dari blok apa pun.
Jika validator memeriksa transaksi dan menemukan bahwa transaksi tersebut memenuhi semua kondisi, transaksi tersebut dipindahkan dari status antrian ke status tertunda, menunggu konfirmasi. Dari sana, salah satu validator mengambil transaksi dari mempool dan menambahkannya ke blok baru.
Pada tahap itu, beberapa validator menyetujuinya yang memungkinkan teman Anda menerima ETH.
Langkah 1: Pengirim memasukkan alamat tujuan, menerima biaya transaksi jaringan, dan menekan ‘KIRIM’
LANGKAH 2: Transaksi ditambahkan ke mempool terdekat dan diantri.
LANGKAH 3: Data mempool disiarkan ke node lain dalam jaringan.
LANGKAH 4: Sebuah node menyetujui transaksi dan statusnya berubah dari Antrian menjadi Tertunda.
LANGKAH 5: Seorang penambang memilih transaksi yang tertunda dan menambahkannya ke dalam blok.
LANGKAH 6: Sisa node-node lain menghapus transaksi dari mempool mereka.
LANGKAH 7: Transaksi selesai dan aset masuk ke dompet tujuan.
Sekarang setelah Anda memahami apa yang menyebabkan keterlambatan transaksi Anda saat diproses, mari kita lihat alasan mengapa beberapa transaksi terjebak dan tindakan apa yang dapat Anda lakukan.
Alasan utama mengapa transaksi terjebak di mempool adalah karena kemacetan jaringan. Ketika ada tekanan volume transaksi yang tinggi pada ruang blok yang tersedia, maka terjadi penumpukan di mempool. Ini terjadi jika jumlah transaksi tertunda lebih dari rata-rata transaksi dalam satu blok.
Beberapa peristiwa dan berita yang mempengaruhi tingkat lalu lintas di blockchain dapat menyebabkan kemacetan di jaringan. Misalnya, airdrop, penempatan di lebih banyak bursa, atau kemitraan baru dapat menyebabkan kemacetan. Namun, ada faktor-faktor yang dapat memungkinkan node untuk memberi prioritas pada transaksi tertentu.
Biaya Transaksi: Jumlah biaya yang terlampir pada transaksi-transaksi yang berbeda menentukan transaksi mana yang disetujui terlebih dahulu. Karena para penambang dan validator didorong oleh keuntungan, mereka memberi prioritas pada transaksi yang memiliki biaya lebih tinggi karena hal itu memungkinkan mereka mendapatkan imbalan yang lebih tinggi.
Oleh karena itu, para penambang dan validator mengatur transaksi di mempool mereka berdasarkan biaya per unit seperti satoshi / byte. Pada akhirnya, mereka menambahkan transaksi dengan biaya tertinggi ke blok terlebih dahulu. Sistem ini memaksa pengguna untuk menetapkan biaya tinggi untuk transaksi mereka.
Meskipun demikian, tergantung pada lalu lintas jaringan, pengguna dapat mengatur biaya gas yang optimal dan tetap memastikan transaksi mereka dikonfirmasi tepat waktu. Yang penting bagi pengguna adalah memeriksa faktor-faktor seperti data historis, kemacetan jaringan, volume transaksi, dan distribusi biaya di mempool sebelum mengatur biaya gas mereka sendiri.
Waktu konfirmasi: Pengguna mungkin juga perlu memeriksa waktu konfirmasi sebelum menetapkan biaya mereka. Ketika waktu konfirmasi tinggi, itu berarti para penambang dan validator memberikan prioritas pada transaksi dengan biaya tinggi. Pada dasarnya, ketika mempool penuh maka transaksi dengan biaya rendah akan memerlukan waktu yang lebih lama untuk diproses.
Ruang blok: Ruang blok juga menentukan jumlah waktu yang berlalu sebelum transaksi disetujui. Karena ruang blok selalu terbatas, para penambang dan validator memberikan prioritas pada transaksi yang memiliki biaya lebih tinggi. Ini berarti bahwa transaksi dengan biaya lebih rendah memakan waktu lama di mempool.
Ukuran Mempool dan Pengusiran: Setiap transaksi yang akan ditambahkan ke blok adalah sepotong data dengan ukuran yang diukur dalam kilobita. Oleh karena itu, mempool besar dapat mengakomodasi banyak transaksi. Biasanya, node mengatur ukuran mempool mereka yang seringkali 300MB untuk Bitcoin. Ketika mempool mencapai ambang batas, node dapat mengatur biaya transaksi minimum.
Ketika pengguna memahami dinamika seperti ini, menjadi mudah bagi mereka untuk mengatur biaya transaksi mereka dan mendapatkannya disetujui dalam jangka waktu yang wajar. Misalnya, mereka dapat menghindari membayar terlalu banyak selama periode dengan throughput rendah atau membayar terlalu sedikit selama puncak waktu ketika mereka memiliki transaksi yang sensitif terhadap waktu. Mereka juga dapat membuat perkiraan yang hampir benar tentang seberapa cepat transaksi mereka akan divalidasi.
Seringkali, transaksi terjebak di mempool karena beberapa alasan tetapi sebagian besar terkait dengan biaya gas. Namun, alasan terbesar mengapa beberapa transaksi terjebak di mempool adalah kemacetan jaringan. Ketika ada kemacetan, transaksi dengan biaya tinggi akan diproses terlebih dahulu sementara yang lain terjebak di sana.
Oleh karena itu, hal terbaik yang dapat dilakukan selama waktu puncak jaringan adalah meningkatkan biaya transaksi. Hal ini karena ketika terjadi kemacetan, biaya gas melonjak. Jadi, jika Anda melakukan transaksi selama waktu sibuk, Anda harus sesuaikan biaya Anda dengan yang dibayar pengguna jaringan lainnya.
Alasan lain mengapa transaksi terjebak di mempool adalah penurunan hash rate. Kami mengatakan bahwa hash rate telah turun ketika jaringan tidak memiliki daya komputasi fisik untuk mengeksekusi sejumlah besar transaksi yang tertunda.
Anda memiliki beberapa opsi ketika transaksi Anda terjebak di mempool. Opsi pertama adalah membatalkan transaksi tersebut. Dalam hal ini, Anda akan dikenakan biaya transaksi lagi. Misalnya, Anda dapat mengirim ulang transaksi dengan nonce yang sama.
Kedua, Anda dapat memilih untuk mempercepat transaksi dengan menghubungkan Ledger Anda ke dompet pihak ketiga seperti MetaMask atau Electrum. Namun demikian, Anda perlu membayar lebih untuk itu.
Opsi ketiga adalah menunggu sedikit lebih lama agar transaksi berhasil. Dengan melakukannya, Anda menunggu agar lalu lintas jaringan berkurang yang akan memungkinkan transaksi Anda berhasil tanpa biaya tambahan.
Transaksi yang dikirim ke jaringan Bitcoin tidak ditambahkan secara instan ke blockchain. Mereka pertama kali masuk ke mempool. Di masa lalu, transaksi seperti itu hanya memerlukan biaya yang diukur dalam satoshi per byte.
Namun, hal ini berubah setelah upgrade SegWit yang memungkinkan transaksi diukur dalam unit berat. Hal yang baik adalah fitur segwit memungkinkan lebih banyak data ditambahkan ke blok daripada sebelumnya. Secara khusus, ada 2MB data per blok meskipun dapat meningkat menjadi 4MB.
Awalnya, jaringan Ethereum membutuhkan transaksi untuk masuk ke mempool sebelum divalidasi. Namun, ketika blockchain beralih dari mekanisme konsensus proof-of-work ke proof-of-stake, itu memperkenalkan konsep block-builder.
Pada dasarnya, pembangun blok adalah pihak ketiga yang menggabungkan transaksi ke dalam paket transaksi yang dioptimalkan yang membentuk sebuah blok. Dalam hal ini, entitas pihak ketiga menggabungkan atau mengurutkan kembali beberapa transaksi dari mempool ke dalam paket. Dari sana, mereka menawarkan paket transaksi kepada validator untuk dimasukkan ke dalam blok. Entitas pihak ketiga mendapatkan imbalan atas melakukan tugas-tugas tersebut.
Secara ringkas, mempool adalah tempat di mana node blockchain menyimpan sementara transaksi sebelum divalidasi. Lamanya waktu transaksi tetap berada di mempool di Ethereum bergantung pada beberapa faktor seperti kemacetan lalu lintas jaringan dan biaya gas. Baik blockchain Bitcoin maupun Ethereum menggunakan kolam transaksi.
Mempool adalah ruang tempat transaksi yang tertunda menunggu sebelum ditambahkan ke blok. Setelah transaksi divalidasi, transaksi tersebut ditambahkan ke blok yang ada di blockchain.
Ketika beberapa transaksi berada di mempool, beberapa validator atau penambang mengambilnya dan menambahkannya ke blok. Namun, beberapa transaksi mungkin tetap antri atau tertunda untuk periode yang lama jika ada kemacetan lalu lintas jaringan.
Mempool BTC adalah ruang tunggu untuk transaksi yang diproses di jaringan Bitcoin. Biasanya, setiap simpul rantai blok bitcoin memiliki mempoolnya sendiri.
Mempool di Ethereum adalah ruang penyimpanan transaksi di node-node Ethereum sebelum mereka dikonfirmasi. Waktu yang berlalu sebelum transaksi ini dikonfirmasi bergantung pada lalu lintas jaringan Ethereum dalam periode tertentu.