Kerangka Shoal: Optimisasi latensi Bullshark di Aptos

Kerangka Shoal: Bagaimana Menurunkan Latensi Bullshark di Aptos

Aptos Labs telah menyelesaikan dua masalah terbuka penting dalam DAG BFT, secara signifikan menurunkan latensi, dan untuk pertama kalinya menghilangkan kebutuhan akan timeout dalam protokol nyata yang deterministik. Secara keseluruhan, dalam kondisi tanpa kesalahan, latensi Bullshark ditingkatkan sebesar 40%, dan dalam kondisi dengan kesalahan ditingkatkan sebesar 80%.

Shoal adalah sebuah kerangka kerja yang meningkatkan setiap protokol konsensus berbasis Narwhal ( seperti DAG-Rider, Tusk, Bullshark ) melalui pipeline dan reputasi pemimpin. Pipeline mengurangi latensi pengurutan DAG dengan memperkenalkan anchor point di setiap putaran, sementara reputasi pemimpin lebih lanjut memperbaiki masalah latensi dengan memastikan anchor point terkait dengan node validasi tercepat. Selain itu, reputasi pemimpin memungkinkan Shoal untuk memanfaatkan konstruksi DAG asinkron untuk menghilangkan timeouts di semua skenario. Ini memungkinkan Shoal untuk memberikan atribut respons universal, yang mencakup respons optimis yang biasanya diperlukan.

Teknologi ini sangat sederhana, melibatkan menjalankan beberapa instance protokol dasar secara berurutan. Oleh karena itu, saat menginstansiasi Bullshark, kita mendapatkan sekelompok "ikan hiu" yang sedang berlari dalam perlombaan estafet.

Penjelasan Rinci Kerangka Shoal: Bagaimana Mengurangi latensi Bullshark di Aptos?

Latar Belakang

Dalam mengejar kinerja tinggi jaringan blockchain, orang selalu memperhatikan Drop kompleksitas komunikasi. Namun, pendekatan ini tidak menghasilkan peningkatan throughput yang signifikan. Misalnya, Hotstuff yang diimplementasikan dalam versi awal Diem hanya mencapai 3500 TPS, jauh di bawah target 100k+ TPS.

Terobosan terbaru berasal dari pemahaman bahwa penyebaran data adalah hambatan utama dari protokol pemimpin, yang dapat diuntungkan dari paralelisasi. Sistem Narwhal memisahkan penyebaran data dari logika konsensus inti, mengusulkan agar semua validator menyebarkan data secara bersamaan, sementara komponen konsensus hanya mengurutkan sejumlah kecil metadata. Makalah Narwhal melaporkan throughput 160.000 TPS.

Quorum Store yang diperkenalkan sebelumnya adalah implementasi dari Narwhal, yang memisahkan penyebaran data dan konsensus, digunakan untuk memperluas protokol konsensus saat ini, Jolteon. Jolteon adalah protokol berbasis pemimpin yang menggabungkan jalur cepat linear Tendermint dan perubahan tampilan gaya PBFT, yang menurunkan latensi Hotstuff sebesar 33%. Namun, protokol konsensus berbasis pemimpin tidak dapat memanfaatkan potensi throughput Narwhal secara maksimal.

Oleh karena itu, diputuskan untuk menerapkan Bullshark di atas Narwhal DAG, sebuah protokol konsensus dengan nol biaya komunikasi. Sayangnya, struktur DAG yang mendukung throughput tinggi Bullshark membawa biaya latensi 50% dibandingkan dengan Jolteon.

Artikel ini memperkenalkan bagaimana Shoal dapat secara signifikan mengurangi latensi Bullshark.

Penjelasan mendalam tentang kerangka Shoal: Bagaimana cara mengurangi latensi Bullshark di Aptos?

Latar Belakang DAG-BFT

Setiap simpul dalam Narwhal DAG terkait dengan satu putaran. Untuk memasuki putaran ke-r, validator harus terlebih dahulu memperoleh n-f simpul dari putaran ke-r-1. Setiap validator dapat menyiarkan satu simpul per putaran, dan setiap simpul harus merujuk setidaknya n-f simpul dari putaran sebelumnya. Karena asinkronisitas jaringan, validator yang berbeda mungkin melihat tampilan lokal DAG yang berbeda pada waktu yang berbeda.

Salah satu atribut kunci dari DAG adalah non-ambiguity: jika dua node validasi memiliki vertex v yang sama dalam pandangan lokal DAG, maka mereka memiliki sejarah kausal v yang sepenuhnya sama.

Penjelasan mendetail tentang kerangka Shoal: Bagaimana cara mengurangi latensi Bullshark di Aptos?

Urutan Lengkap

Konsensus total tentang semua simpul dalam DAG dapat dicapai tanpa biaya komunikasi tambahan. Untuk itu, validator dalam DAG-Rider, Tusk, dan Bullshark menginterpretasikan struktur DAG sebagai protokol konsensus, di mana simpul mewakili usulan dan tepi mewakili suara.

Semua protokol konsensus berbasis Narwhal yang ada memiliki struktur berikut:

  1. Titik jangkar yang dijadwalkan: Setiap beberapa putaran, ada pemimpin yang telah ditentukan sebelumnya, puncak pemimpin disebut titik jangkar.

  2. Titik urut: Validator secara independen tetapi deterministik menentukan titik mana yang dipesan dan titik mana yang dilewatkan.

  3. Urutan sejarah kausal: Validator memproses daftar titik jangkar terurut satu per satu, mengurutkan semua simpul tidak terurut sebelumnya dalam sejarah kausal masing-masing titik jangkar berdasarkan aturan deterministik.

Kunci untuk memenuhi keamanan adalah memastikan bahwa dalam langkah (2), semua daftar titik jangkar terurut yang dibuat oleh node verifikasi yang jujur berbagi awalan yang sama. Shoal membuat pengamatan berikut tentang semua protokol ini:

Semua validator setuju pada titik jangkar terurut pertama.

Bullshark latensi

Latensi Bullshark tergantung pada jumlah putaran antara titik jangkar yang terurut di dalam DAG. Meskipun beberapa versi sinkron memiliki latensi yang lebih baik dibandingkan versi asinkron, namun jauh dari yang terbaik.

Pertanyaan 1: Rata-rata latensi blok. Di Bullshark, setiap putaran genap memiliki satu titik jangkar, sementara titik puncak di setiap putaran ganjil diartikan sebagai suara. Dalam kasus umum, dibutuhkan dua putaran DAG untuk mengurutkan titik jangkar, namun titik puncak dalam sejarah kausal titik jangkar memerlukan lebih banyak putaran untuk menunggu pengurutan titik jangkar. Biasanya, titik puncak putaran ganjil memerlukan tiga putaran, sedangkan titik puncak non-jangkar pada putaran genap memerlukan empat putaran.

Masalah 2: Kasus gangguan latensi. Jika seorang pemimpin putaran gagal menyampaikan titik jangkar dengan cukup cepat, maka titik jangkar ( tidak dapat diurutkan dan dilewati ), semua vertex yang tidak terurut dari beberapa putaran sebelumnya harus menunggu urutan titik jangkar berikutnya. Ini secara signifikan menurunkan kinerja jaringan replikasi geografis, terutama karena Bullshark menggunakan waktu tunggu untuk pemimpin.

Penjelasan mendetail tentang kerangka Shoal: Bagaimana cara mengurangi latensi Bullshark di Aptos?

Kerangka Shoal

Shoal meningkatkan Bullshark( atau protokol BFT berbasis Narwhal lainnya melalui jalur aliran, memungkinkan setiap putaran memiliki titik jangkar, mengurangi latensi semua vertex non-titik jangkar dalam DAG menjadi tiga putaran. Shoal juga memperkenalkan mekanisme reputasi pemimpin tanpa biaya dalam DAG, yang lebih cenderung memilih pemimpin yang cepat.

Tantangan

Dalam konteks protokol DAG, pipelining dan reputasi pemimpin dianggap sebagai masalah yang sulit, alasannya sebagai berikut:

  1. Upaya sebelumnya untuk memodifikasi logika inti Bullshark di jalur produksi tampaknya pada dasarnya tidak mungkin.

  2. Reputasi pemimpin diperkenalkan dalam DiemBFT dan diformalisasi dalam Carousel, memilih pemimpin masa depan secara dinamis berdasarkan kinerja masa lalu validator ) jangkar dalam Bullshark (. Meskipun ada perbedaan dalam identitas pemimpin tidak melanggar keamanan protokol ini, tetapi di Bullshark mungkin mengakibatkan urutan yang sepenuhnya berbeda, yang mengangkat inti masalah: pemilihan jangkar secara dinamis yang deterministik adalah apa yang diperlukan untuk menyelesaikan konsensus, dan validator perlu mencapai konsensus tentang sejarah terurut untuk memilih jangkar masa depan.

Sebagai bukti kesulitan masalah, implementasi Bullshark ) termasuk ( yang ada di lingkungan produksi saat ini tidak mendukung fitur-fitur ini.

Protokol

Shoal mengandalkan kemampuan untuk melakukan perhitungan lokal di atas DAG, mewujudkan kemampuan untuk menyimpan dan menginterpretasikan ulang informasi dari beberapa putaran sebelumnya. Dengan semua validator setuju pada wawasan titik jangkar berurutan pertama, Shoal secara berurutan menggabungkan beberapa instance Bullshark untuk pemrosesan pipeline, menjadikan ) titik jangkar berurutan pertama sebagai titik peralihan instance, ( sejarah kausal dari jangkar digunakan untuk menghitung reputasi pemimpin.

) jalur produksi

V yang diketahui yang memetakan putaran ke pemimpin. Shoal menjalankan instansi Bullshark satu per satu, di mana jangkar setiap instansi ditentukan sebelumnya oleh pemetaan F. Setiap instansi memesan satu jangkar, memicu perpindahan ke instansi berikutnya.

Pada awalnya, Shoal memulai instansi pertama Bullshark di putaran pertama DAG dan berjalan hingga menentukan titik jangkar terurut pertama, seperti di putaran r. Semua validator setuju dengan titik jangkar ini. Oleh karena itu, semua validator dapat dengan pasti setuju untuk menafsirkan ulang DAG mulai dari putaran r+1. Shoal hanya memulai instansi Bullshark baru di putaran r+1.

Dalam skenario terbaik, ini memungkinkan Shoal untuk memesan satu jangkar setiap putaran. Jangkar titik pertama diurutkan oleh instansi pertama. Kemudian, Shoal memulai instansi baru pada putaran kedua, yang memiliki jangkar sendiri, yang diurutkan oleh instansi tersebut, kemudian instansi baru lainnya memesan jangkar pada putaran ketiga, dan proses ini terus berlanjut.

Penjelasan Detail Kerangka Shoal: Bagaimana Mengurangi latensi Bullshark di Aptos?

Reputasi Pemimpin

Ketika melewati titik jangkar selama pengurutan Bullshark, latensi akan meningkat. Dalam kasus ini, jalur tidak dapat berfungsi, karena tidak dapat memulai instansi baru sebelum memesan titik jangkar dari instansi sebelumnya. Shoal memastikan bahwa pemimpin yang sesuai tidak mungkin dipilih di masa depan untuk menangani titik jangkar yang hilang dengan menggunakan mekanisme reputasi yang memberikan skor berdasarkan sejarah aktivitas terbaru setiap node validasi. Validator yang merespons dan berpartisipasi dalam protokol menerima skor tinggi, jika tidak, diberikan skor rendah, karena mereka mungkin mengalami kegagalan, lambat, atau berperilaku jahat.

Konsepnya adalah untuk secara deterministik menghitung kembali pemetaan F yang telah ditentukan dari putaran ke pemimpin setiap kali skor diperbarui, yang menguntungkan pemimpin dengan skor yang lebih tinggi. Agar para validator dapat mencapai konsensus pada pemetaan baru, mereka harus mencapai kesepakatan tentang skor, sehingga mencapai konsensus pada sejarah yang digunakan untuk menurunkan skor.

Di Shoal, jalur produksi dan reputasi pemimpin dapat secara alami bergabung, karena keduanya menggunakan teknologi inti yang sama, yaitu menginterpretasikan kembali DAG setelah mencapai konsensus pada titik jangkar terurut pertama.

Satu-satunya perbedaan adalah, setelah pengurutan titik jangkar di putaran ke-r, validator hanya perlu menghitung pemetaan baru F' mulai dari putaran ke-(r+1) berdasarkan sejarah kausal titik jangkar yang terurut di putaran ke-r. Selanjutnya, node validator mulai menggunakan fungsi pemilihan titik jangkar yang diperbarui F' untuk menjalankan instance baru Bullshark dari putaran ke-(r+1).

Penjelasan Detail Kerangka Shoal: Bagaimana Mengurangi latensi Bullshark di Aptos?

Tanpa batas waktu

Timeout berperan penting dalam semua implementasi BFT yang deterministik berbasis pemimpin. Namun, kompleksitas yang diperkenalkan meningkatkan jumlah status internal yang perlu dikelola dan diamati, meningkatkan kompleksitas debugging, dan memerlukan lebih banyak teknik observabilitas.

Timeout juga akan secara signifikan meningkatkan latensi, karena penting untuk mengonfigurasinya dengan benar, biasanya memerlukan penyesuaian dinamis, sangat bergantung pada lingkungan ( jaringan ). Sebelum pindah ke pemimpin berikutnya, protokol akan membayar penalti latensi timeout penuh untuk pemimpin yang mengalami kegagalan. Oleh karena itu, pengaturan timeout tidak boleh terlalu konservatif, tetapi jika terlalu pendek, protokol mungkin melewatkan pemimpin yang baik. Misalnya, kami mengamati di bawah beban tinggi, pemimpin di Jolteon/Hotstuff kewalahan, dan timeout sudah berlalu sebelum kemajuan didorong.

Sayangnya, protokol berdasarkan pemimpin ### seperti Hotstuff dan Jolteon( pada dasarnya memerlukan latensi, untuk memastikan bahwa setiap kali pemimpin gagal, protokol dapat melanjutkan. Tanpa latensi, bahkan pemimpin yang gagal dapat berhenti menjalankan protokol selamanya. Karena tidak mungkin membedakan pemimpin yang gagal dan pemimpin yang lambat selama periode asinkron, latensi dapat menyebabkan node verifikasi mengubah semua pemimpin tanpa adanya aktivitas konsensus.

Di Bullshark, waktu habis digunakan untuk konstruksi DAG, untuk memastikan bahwa pemimpin yang jujur cukup cepat menambahkan titik jangkar ke DAG untuk pengurutan selama periode sinkronisasi.

Kami mengamati bahwa konstruksi DAG menyediakan "jam" yang memperkirakan kecepatan jaringan. Dalam keadaan tanpa jeda, selama n-f validator yang jujur terus menambahkan simpul ke DAG, putaran akan terus maju. Meskipun Bullshark mungkin tidak dapat mengurutkan ) dengan kecepatan jaringan karena masalah pemimpin (, DAG masih tumbuh dengan kecepatan jaringan, meskipun beberapa pemimpin memiliki masalah atau jaringan asinkron. Pada akhirnya, ketika pemimpin tanpa kesalahan cukup cepat untuk menyiarkan titik jangkar, seluruh sejarah kausal dari titik jangkar akan diurutkan.

Dalam evaluasi kami, dibandingkan Bullshark dengan dan tanpa latensi dalam situasi berikut:

  1. Pemimpin Cepat: Setidaknya lebih cepat dibandingkan validator lainnya. Dua metode memberikan latensi yang sama, karena jangkar terurut dan tidak menggunakan timeout.

  2. Pemimpin yang salah: Bullshark tanpa batas waktu memberikan latensi yang lebih baik, karena node verifikasi segera melewatkannya

APT-1.64%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 4
  • Posting ulang
  • Bagikan
Komentar
0/400
HashRateHermitvip
· 6jam yang lalu
latensi meningkat 80%? Ini adalah bull!
Lihat AsliBalas0
SelfRuggervip
· 6jam yang lalu
80% latensi berkurang, Ma De melihatnya pun berteriak bull
Lihat AsliBalas0
CommunitySlackervip
· 6jam yang lalu
bull beer latensi sudah dioptimalkan 80%
Lihat AsliBalas0
Hash_Banditvip
· 6jam yang lalu
sial, ini seperti saat kami mengoptimalkan kesulitan penambangan btc pada tahun 2013... keuntungan hashrate yang besar fr
Lihat AsliBalas0
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)