Panduan Stake-weighted Quality of Service di Solana

Apa itu Stake-weighted Quality of Service (QoS)?

Stake-weighted QoS (Quality-of-Service) adalah fitur implementasi yang, bila diaktifkan, memungkinkan pemimpin (produsen blok) untuk mengidentifikasi dan memprioritaskan transaksi yang diproksikan melalui validator yang di-stake sebagai mekanisme resistensi sybil tambahan. Mengingat bahwa Solana adalah jaringan proof of stake, adalah hal yang wajar untuk memperluas kegunaan stake-weighting ke quality of service transaksi. Dalam model ini, validator dengan stake 0,5% akan memiliki hak untuk mengirimkan hingga 0,5% paket ke pemimpin dan akan mampu menahan serangan sybil dari seluruh jaringan.

Operator yang mengaktifkan fitur ini akan meningkatkan keamanan dan performa jaringan dengan mengurangi kemungkinan validator ber-stake rendah atau tanpa stake (kualitas rendah) mampu "menenggelamkan" transaksi yang berasal dari validator berkualitas lebih tinggi (stake lebih tinggi) (alias peningkatan Resistensi Sybil).

Salah satu potensi manfaat dari penerapan Stake-weighted QoS dapat terwujud jika perjanjian tertentu antara Validator dan node RPC telah ditetapkan. Node RPC dapat mendaratkan lebih banyak transaksi dalam blok dengan menyetujui untuk melakukan peering dengan Validator, dan Validator dapat menjual lebih banyak kapasitas ke node RPC. Perjanjian ini harus dibuat langsung antara operator RPC dan Validator serta mencakup implementasi langkah-langkah yang tercantum di bawah ini dalam dokumen ini untuk menyelesaikan peering.

Siapa yang diuntungkan oleh Stake-weighted QoS?

Operator infrastruktur RPC komersial dan bursa kemungkinan besar akan menjadi penerima manfaat utama dari Stake-weighted QoS. Operator RPC akan berada dalam posisi ideal untuk memperoleh atau menegosiasikan kesepakatan dengan validator ber-stake yang memungkinkan mereka mencapai persentase transaksi yang lebih baik yang mendarat dalam blok secara keseluruhan. Bursa (atau entitas lain) yang mengelola node validator dan node RPC mereka sendiri pada infrastruktur yang sama akan dapat mengaktifkan fitur ini secara internal, dengan keyakinan bahwa node RPC yang berjalan pada infrastruktur mereka sendiri dapat dipercaya.

Mengapa Stake-weighted QoS penting?

Dengan Stake-weighted QoS diaktifkan, validator yang memegang 1% stake akan memiliki hak untuk mengirimkan hingga 1% paket ke pemimpin. Dengan cara ini, validator dengan stake lebih tinggi dijamin mendapatkan kualitas layanan yang lebih tinggi, yang mencegah validator berkualitas rendah (dengan stake lebih sedikit) secara jahat membanjiri transaksi-transaksi tersebut, sehingga meningkatkan Resistensi Sybil secara keseluruhan.

Dengan kata lain, bayangkan seperti apa dunia jika mobil dengan satu penumpang bisa bebas menggunakan jalur carpool. Segera saja jalur carpool, yang dirancang untuk mengangkut lebih banyak orang menggunakan ruas jalan tol yang sama, akan menjadi tidak berguna. Fungsionalitas keseluruhan jalan tol akan terganggu dan lebih sedikit pengemudi yang dapat mencapai tujuan mereka. Efek ini serupa dengan apa yang terjadi ketika validator ber-stake rendah diizinkan untuk mengirimkan transaksi ke Leader dengan prioritas yang sama seperti validator ber-stake tinggi.

Siapa yang harus mengaktifkan Stake-weighted QoS?

Stake-weighted QoS sebaiknya diaktifkan oleh node Validator yang dipasangkan dengan node RPC yang sangat dipercaya. Ini berguna dalam situasi seperti menjalankan RPC dan Validator pada infrastruktur yang sama di mana tingkat kepercayaan sudah tinggi. Stake-weighted QoS paling efektif untuk konfigurasi kepercayaan tinggi dan mengharuskan Validator dan RPC untuk mencapai kesepakatan terlebih dahulu sebelum mengaktifkan fitur ini. Sangat disarankan agar Validator tidak mencoba mengaktifkan Stake-weighted QoS dengan RPC yang tidak dipercaya.

Stake harus diterapkan pada validator yang memproduksi blok. Tidak perlu, tidak disarankan, maupun tidak efektif untuk mendelegasikan stake ke server RPC.

Bagaimana cara kerja Stake-weighted QoS?

Dengan Stake-weighted QoS diaktifkan, node RPC yang dipasangkan dengan validator mendapatkan stake "virtual" terkait cara pemimpin memperlakukan lalu lintas TPU (Transaction Processing Unit) masuk dari node RPC tersebut, yang pada umumnya tidak mungkin dilakukan. Secara definisi, node RPC bersifat "unstaked" dan "non-voting" alias "non-consensus" dan tidak dapat mengakses manfaat transaksi yang diprioritaskan melalui staking dengan cara yang sama seperti yang dilakukan node konsensus. Bagaimana cara menggunakan Stake-weighted QoS untuk mendaratkan transaksi? Mengaktifkan Stake-weighted QoS memerlukan konfigurasi node validator dan node RPC untuk membentuk hubungan peer yang dipercaya. Ini melibatkan langkah konfigurasi terpisah untuk node validator dan node RPC yang tercantum di bawah ini. Operator yang ingin mengaktifkan Stake-weighted QoS akan memerlukan hal-hal berikut sebelum memulai:

Sebuah validator dengan stake yang berjalan di jaringan DAN sebuah RPC yang di-peer dengan validator tersebut

Stake-weighted QoS tidak akan berfungsi kecuali KEDUA sisi dikonfigurasi dengan benar.

Mengonfigurasi node Validator

Pada validator, Anda harus mengaktifkan --staked-nodes-overrides /path/to/overrides.yml. Flag --staked-nodes-overrides membantu validator memprioritaskan transaksi yang dikirim dari sumber yang dikenal untuk menerapkan stake pada transaksi mereka. Ini dapat membantu validator memprioritaskan transaksi tertentu dari host yang dikenal di atas yang lain, memungkinkan penggunaan Stake-weighted QoS dengan RPC. RPC tidak boleh di-stake dalam bentuk apa pun.

Saat ini, Stake-weighted QoS memberikan prioritas stake-weighted untuk 80% kapasitas TPU pemimpin. Namun, terdapat opsi konfigurasi yang dapat digunakan untuk secara virtual menetapkan bobot stake yang berbeda ke peer TPU, termasuk menetapkan stake virtual ke peer yang unstaked.

File overrides untuk --staked-nodes-overrides terlihat seperti ini:

staked_map_id:
pubkey1: 1000000000000000
pubkey2: 4000000000000000

staked_map_id berisi peta dari public key identitas ke jumlah stake dalam lamport yang akan diterapkan ke setiap RPC. Bila diatur, validator akan memprioritaskan koneksi QUIC dengan RPC yang ditemukan pada publicKey identitas tersebut, menetapkan jumlah stake pada transaksi mereka. 80% kapasitas TPU pemimpin akan dibagi secara proporsional berdasarkan jumlah lamport yang ditentukan dalam file staked-nodes-overrides dan stake kluster yang ada.

Mengonfigurasi node RPC

Pada RPC, Anda harus menggunakan --rpc-send-transaction-tpu-peer untuk meneruskan transaksi ke pemimpin tertentu. Penggunaan tepatnya adalah --rpc-send-transaction-tpu-peer HOST:PORT. Host adalah alamat IP dari pemimpin yang memiliki staked-nodes-overrides diaktifkan dan Port adalah port QUIC TPU dari host tersebut. Port QUIC TPU untuk pemimpin dapat diidentifikasi dengan melakukan panggilan RPC ke getClusterNodes.

Peering akan terlihat seperti berikut:

Diagram RPC yang melakukan peering dengan Validator untuk Stake-weighted QoSDiagram RPC yang melakukan peering dengan Validator untuk Stake-weighted QoS

Kesimpulan

Stake-weighted QoS adalah fitur opsional yang hadir dalam v1.14 klien Solana, yang kini dikenal sebagai Agave. Agave adalah versi fork dari klien Solana Labs yang telah menjadi cabang aktif yang digunakan oleh tim Anza, organisasi spin-out yang terdiri dari mantan tim rekayasa Solana Labs.

Fitur Stake-weighted QoS kemungkinan besar akan berguna bagi operator infrastruktur RPC yang berada dalam posisi untuk membangun hubungan kepercayaan dengan operator node ber-stake. Ini juga akan berguna bagi Bursa, yang menjalankan node RPC maupun node validator dan mampu membangun koneksi kepercayaan tinggi secara internal.

Is this page helpful?

© 2026 Yayasan Solana. Semua hak dilindungi.