Kerangka Shoal secara signifikan mengurangi latensi konsensus Bullshark di Aptos, meningkatkan 40%-80%.

Kerangka Shoal: Bagaimana Mengurangi Latensi Bullshark di Aptos

Ringkasan

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

Shoal adalah sebuah framework yang meningkatkan protokol konsensus berbasis Narwhal ( melalui pipeline dan reputasi pemimpin seperti DAG-Rider, Tusk, Bullshark ). Pipeline mengurangi latensi pengurutan DAG dengan memperkenalkan satu titik jangkar setiap putaran, dan reputasi pemimpin lebih lanjut meningkatkan latensi dengan memastikan titik jangkar terkait dengan node validasi tercepat. Selain itu, reputasi pemimpin memungkinkan Shoal memanfaatkan konstruksi DAG asinkron untuk menghilangkan semua skenario timeout. Ini memungkinkan Shoal untuk memberikan atribut yang kami sebut sebagai respons universal, yang mencakup respons optimis yang biasanya dibutuhkan.

Teknologi ini sangat sederhana, melibatkan menjalankan beberapa instance protokol dasar satu per satu secara berurutan. Oleh karena itu, ketika diinstansiasi dengan Bullshark, kita mendapatkan sekelompok "ikan hiu" yang sedang melakukan perlombaan estafet.

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

Motivasi

Dalam mengejar kinerja tinggi jaringan blockchain, orang-orang selalu memperhatikan pengurangan 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 kendala utama yang didasarkan pada protokol pemimpin, yang dapat diuntungkan dari paralelisasi. Sistem Narwhal memisahkan penyebaran data dari logika konsensus inti, mengusulkan arsitektur di mana semua validator secara bersamaan menyebarkan data, sementara komponen konsensus hanya mengurutkan sejumlah kecil metadata. Makalah Narwhal melaporkan throughput 160.000 TPS.

Sebelumnya diperkenalkan Quorum Store, yaitu implementasi Narwhal yang memisahkan penyebaran data dan konsensus, serta bagaimana menggunakannya untuk memperluas protokol konsensus saat ini Jolteon. Jolteon adalah protokol berbasis pemimpin, yang menggabungkan jalur cepat linier Tendermint dan perubahan pandangan gaya PBFT, yang dapat mengurangi latensi Hotstuff sebesar 33%. Namun, jelas bahwa protokol konsensus berbasis pemimpin tidak dapat memanfaatkan potensi throughput Narwhal dengan baik. Meskipun penyebaran data dipisahkan dari konsensus, dengan meningkatnya throughput, pemimpin Hotstuff/Jolteon tetap terbatas.

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

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

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

Latar Belakang DAG-BFT

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

Salah satu atribut kunci DAG tidak ambigu: jika dua node validasi memiliki titik v yang sama dalam pandangan lokal DAG mereka, maka mereka memiliki sejarah kausal v yang sepenuhnya sama.

Penjelasan Mendalam tentang Kerangka Shoal: Bagaimana Mengurangi latensi Bullshark di Aptos?

Urutan Total

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

Meskipun logika interseksi kelompok pada struktur DAG berbeda, semua protokol konsensus berbasis Narwhal yang ada memiliki struktur berikut:

  1. Titik jangkar yang dijadwalkan: Setiap beberapa putaran, akan ada seorang pemimpin yang ditentukan sebelumnya, puncak pemimpin tersebut disebut titik jangkar;

  2. Titik jangkar urutan: validator secara independen namun pasti menentukan urutan titik jangkar mana yang akan dimasukkan dan mana yang akan dilewati;

  3. Urutan sejarah kausal: Validator memproses daftar titik jangkar terurut mereka satu per satu, dan mengurutkan semua simpul tidak terurut sebelumnya dalam sejarah kausal setiap titik jangkar.

Kunci untuk memenuhi keamanan adalah memastikan bahwa pada langkah (2), semua node validasi yang jujur membuat daftar titik jangkar terurut, sehingga semua daftar berbagi awalan yang sama. Di Shoal, berikut adalah pengamatan terhadap semua protokol di atas:

Semua validator setuju dengan titik jangkar berurutan pertama.

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

Bullshark latensi

Latensi Bullshark tergantung pada jumlah putaran antara titik jangkar terurut dalam DAG. Meskipun versi sinkronisasi Bullshark yang paling praktis memiliki latensi yang lebih baik dibandingkan versi asinkron, itu masih jauh dari yang terbaik.

Pertanyaan 1: Rata-rata latensi blok. Di Bullshark, setiap putaran genap memiliki titik jangkar, dan setiap putaran ganjil puncaknya diartikan sebagai suara. Dalam kasus umum, diperlukan dua putaran DAG untuk mengurutkan titik jangkar, namun, puncak dalam sejarah kausal titik jangkar membutuhkan lebih banyak putaran untuk menunggu titik jangkar diurutkan. Dalam kasus umum, puncak di putaran ganjil memerlukan tiga putaran, sedangkan puncak non-jangkar di putaran genap memerlukan empat putaran.

Masalah 2: Latensi kasus kesalahan, analisis latensi di atas berlaku untuk situasi tanpa kesalahan, di sisi lain, jika pemimpin dalam satu putaran tidak cukup cepat untuk menyiarkan titik jangkar, maka titik jangkar tidak dapat diurutkan ( sehingga dilewatkan ), sehingga semua simpul yang tidak terurut dari beberapa putaran sebelumnya harus menunggu titik jangkar berikutnya diurutkan. Ini akan secara signifikan mengurangi kinerja jaringan replikasi geografis, terutama karena timeout Bullshark digunakan untuk menunggu pemimpin.

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

Kerangka Shoal

Shoal meningkatkan Bullshark( atau protokol BFT berbasis Narwhal lainnya) melalui pipeline, memungkinkan adanya satu titik jangkar di setiap putaran, dan mengurangi latensi semua simpul non-jangkar di DAG menjadi tiga putaran. Shoal juga memperkenalkan mekanisme reputasi pemimpin tanpa biaya di DAG, yang membuat pemilihan cenderung berpihak pada pemimpin yang cepat.

Tantangan

Dalam konteks protokol DAG, pipeline dan reputasi pemimpin dianggap sebagai masalah yang sulit, karena alasan berikut:

  1. Jalur produksi sebelumnya mencoba mengubah logika inti Bullshark, tetapi pada dasarnya tampaknya tidak mungkin.

  2. Reputasi pemimpin diperkenalkan dalam DiemBFT dan dipformalkan dalam Carousel, adalah pemilihan dinamis pemimpin masa depan berdasarkan kinerja masa lalu validator di (Bullshark, yang merupakan ide dari jangkar ). Meskipun ada perbedaan dalam identitas pemimpin tidak melanggar keamanan dalam protokol ini, di Bullshark, hal itu dapat menyebabkan urutan yang sama sekali berbeda, yang mengarah pada inti masalah, yaitu pemilihan jangkar roda secara dinamis dan deterministik diperlukan untuk menyelesaikan konsensus, dan validator perlu mencapai kesepakatan tentang sejarah terurut untuk memilih jangkar masa depan.

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

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

Protokol

Di Shoal, kami mengandalkan kemampuan untuk melakukan perhitungan lokal di atas DAG, dan mewujudkan kemampuan untuk menyimpan dan menafsirkan kembali informasi dari beberapa putaran sebelumnya. Dengan semua validator menyetujui wawasan inti dari titik jangkar berurutan pertama, Shoal menggabungkan beberapa instansi Bullshark secara berurutan untuk memprosesnya secara pipeline, sehingga ( titik jangkar berurutan pertama adalah titik peralihan instansi, serta ) sejarah kausal dari titik jangkar digunakan untuk menghitung reputasi pemimpin.

Jalur Aliran

V yang memetakan putaran ke pemimpin. Shoal menjalankan instansi Bullshark satu per satu, sehingga untuk setiap instansi, anchor ditentukan sebelumnya oleh pemetaan F. Setiap instansi memesan sebuah anchor, yang akan memicu perpindahan ke instansi berikutnya.

Pada awalnya, Shoal meluncurkan instance pertama Bullshark di putaran pertama DAG dan menjalankannya sampai titik jangkar berurutan pertama ditentukan, seperti di putaran r. Semua validator setuju dengan titik jangkar ini. Oleh karena itu, semua validator dapat dengan pasti setuju untuk menginterpretasikan ulang DAG mulai dari putaran r+1. Shoal hanya meluncurkan instance Bullshark baru di putaran r+1.

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

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

Reputasi Pemimpin

Selama periode pengurutan Bullshark, melewatkan titik jangkar akan meningkatkan latensi. Dalam kasus ini, teknologi pipeline tidak dapat berbuat banyak, karena instans baru tidak dapat dimulai sebelum instans sebelumnya memesan titik jangkar. Shoal memastikan bahwa pemimpin yang sesuai untuk menangani titik jangkar yang hilang kemungkinan besar tidak akan dipilih di masa depan dengan menggunakan mekanisme reputasi untuk memberikan skor kepada setiap node validasi berdasarkan sejarah aktivitas terbaru masing-masing node validasi. Validator yang merespons dan berpartisipasi dalam protokol akan mendapatkan skor tinggi, jika tidak, node validasi akan diberikan skor rendah, karena mungkin mengalami keruntuhan, lambat, atau berbuat jahat.

Ideanya adalah untuk secara deterministik menghitung ulang pemetaan F yang telah ditentukan dari putaran ke pemimpin setiap kali pembaruan skor, yang menguntungkan pemimpin dengan skor lebih tinggi. Agar validator dapat mencapai konsensus pada pemetaan baru, mereka harus mencapai konsensus pada skor, sehingga mencapai konsensus pada sejarah yang digunakan untuk menghasilkan skor.

Di Shoal, pipeline dan reputasi pemimpin dapat digabungkan secara alami, karena keduanya menggunakan teknologi inti yang sama, yaitu menafsirkan ulang DAG setelah mencapai konsensus pada titik jangkar terurut pertama.

Sebenarnya, satu-satunya perbedaan adalah, setelah mengurutkan 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. Kemudian, node validator mulai dari putaran ke-r+1 menggunakan fungsi pemilihan titik jangkar yang diperbarui F' untuk menjalankan instance baru Bullshark.

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

Tidak ada lagi timeout

Timeout memainkan peran penting dalam semua implementasi BFT sinkronisasi bagian deterministik berbasis pemimpin. Namun, kompleksitas yang mereka perkenalkan meningkatkan jumlah status internal yang perlu dikelola dan diamati, yang meningkatkan kompleksitas proses debugging, dan memerlukan lebih banyak teknik observabilitas.

Keterlambatan juga akan meningkat secara signifikan karena sangat penting untuk mengonfigurasi mereka dengan tepat, dan sering kali memerlukan penyesuaian dinamis, karena sangat bergantung pada lingkungan ( jaringan ). Sebelum beralih ke pemimpin berikutnya, protokol akan membayar penalti keterlambatan penuh untuk pemimpin yang mengalami kegagalan. Oleh karena itu, pengaturan waktu habis tidak boleh terlalu konservatif, tetapi jika waktu habis terlalu pendek, protokol mungkin akan melewatkan pemimpin yang baik. Misalnya, kami mengamati

APT-6.51%
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
  • 2
  • Posting ulang
  • Bagikan
Komentar
0/400
ZenZKPlayervip
· 07-28 17:03
Peningkatan sangat nyata ya
Lihat AsliBalas0
DaoResearchervip
· 07-25 20:32
latensi indikator layak untuk diteliti
Lihat AsliBalas0
  • Sematkan
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)