Dipublikasikan pada tanggal 04 Feb 2022
Disadur oleh andre cahyadi (@prosperaan)
Untuk komunitas Cardano Indonesia
Referensi:
(https://iohk.io/en/blog/posts/2021/11/26/network-traffic-and-tiered-pricing/)
(https://iohk.io/en/blog/posts/2021/06/10/stablefees-and-the-decentralized-reserve-system/)
Semakin meningkatnya penggunaan Cardano di masa depan, sangat mungkin terjadi suatu waktu dimana tidak semua transaksi dapat di-input ke dalam blockchain meskipun parameter – parameter blockchain sudah diatur sedemikian rupa (lihat post Parameter – Parameter Blockchain di Cardano). Walaupun kapasitas dapat ditingkatkan dengan mengalihkan sebagian besar transaksi ke Hydra atau solusi layer 2 lainnya, namun core system (layer 1) tetap harus dapat beroperasional secara agile dan adaptif dengan setiap kemungkinan kondisi yang dapat terjadi.
Salah satu cara yang diteliti untuk mengatasi permasalahan di atas adalah dengan mempartisi setiap block ke dalam 3 tier sesuai dengan use case-nya (tiered pricing). Setiap tier memiliki presentase maksimum untuk mengisi block dan didesain untuk jenis transaksi yang berbeda:
a. Immediate (20%)
b. Balanced (30%)
c. Fair (50%)
Immediate & Balanced
User harus menginformasikan tier yang diinginkan agar transaksinya di-include ke dalam block. Ada maksimum fee (fee threshold) yang berlaku disini. Jenis transaksi yang serupa membayar besaran fee yang sama. Setiap block akan mulai diisi dari tier ‘immediate’ terlebih dahulu, dilanjutkan dengan ‘balanced’, dan terakhir ‘fair’. Ketika berganti ke block baru, fees untuk immediate dan balanced akan di-update mengikuti demand atau load di block sebelumnya, untuk menjamin setiap tier dapat betul – betul memaksimalkan presentase block yang sudah disediakan.
Sumber: Blog IOHK
Fee threshold ‘immediate’ lebih tinggi daripada balanced dan bereaksi lebih cepat dengan level demand yang ada, untuk menjamin transaksi dapat segera diproses. Sedangkan fee threshold untuk ‘balanced’, lebih lambat bereaksi dan lebih stabil dimana tier ini tidak cocok untuk transaksi yang sensitif dengan waktu. Fees yang lebih rendah menjadi keunggulan di tier ini walaupun dengan waktu tunggu yang bervariasi.
Fair
Selagi tier ‘immediate’ dan ‘balanced’ ditujukan untuk meng-handle transaksi dengan level urgensinya masing – masing, di sisi lain tier ‘fair’ digunakan untuk meng-handle transaksi biasa. Segmen ini menjaga fees tetap rendah (atau dapat diimplementasikan dengan stablefees di masa depan, lihat post Babel Fees & Stablefees). Selama permintaan untuk tier ini tidak sebesar immediate dan balanced (fit into half of the block), segmen ini dapat berjalan seperti operasional Cardano saat ini.
Namun, ketika permintaan tiba – tiba naik, sebuah mekanisme khusus dapat segera dijalankan. Mekanisme ini akan memfilter transaksi berdasarkan prioritas, bukan fees. Contoh penerapannya adalah mendahulukan transaksi dengan melihat usia dan jumlah UTXO transaksi yang dihitung dengan rumus,
Level prioritas = (jumlah input * usia) / ukuran transaksi dalam bytes.
Ketika berganti ke block baru, level prioritas ini akan di-adjust (sama seperti fee threshold di immediate dan balanced) untuk memfilter transaksi yang prioritasnya terlalu rendah. Dengan pendekatan ini, menjamin fees tetap di harga rendah dan dapat diprediksi, serta membatasi aktor jahat yang ingin mempermainkan harga ketika permintaan sedang tinggi dengan selalu menyediakan cara yang murah untuk di-include ke dalam block.
Fees Multiplier vs First Price Auction Model
Setiap tier di atas, diasosiasikan dengan fees multiplier yang dihitung secara deterministik. Tier ‘fair’ memiliki multiplier sebesar 1x, sedangkan tier ‘balanced’ dan ‘immediate’ memiliki multiplier sebesar 1.5x dan 3x. Pendekatan ini memiliki keuntungan dibandingkan dengan ‘first-price auction model’ yang digunakan di blockchain lain seperti Bitcoin dan Ethereum. Di dalam model tersebut, user harus selalu membayar di atas variable fees agar transaksinya dapat di-include ke dalam block. Jika ada rich users, mereka dapat menentukan fees (pada umumnya menjadi sangat tinggi) yang diinginkan agar transaksinya dapat segera diproses. Efek negatif lanjutannya adalah secara tidak sengaja seperti membentuk permintaan akan Bitcoin atau Ethereum dan meningkatkan harganya karena fees bidding yang tidak jelas ini.
Pendekatan dengan tiered pricing jelas lebih baik, karena tidak setiap transaksi memiliki kebutuhan yang sama. Setiap user dapat memilih service yang diinginkan sesuai dengan use case-nya masing – masing, serta dapat memprediksi sendiri besaran fees yang diperlukannya.