Kerangka Shoal: Meningkatkan latensi konsensus Bullshark di Aptos
Aptos Labs baru-baru ini menyelesaikan dua masalah terbuka penting dalam DAG BFT, yang secara signifikan mengurangi latensi, dan untuk pertama kalinya menghilangkan kebutuhan akan timeout dalam protokol asinkron deterministik. Secara keseluruhan, latensi Bullshark meningkat 40% dalam kondisi tanpa kegagalan, dan 80% dalam kondisi dengan kegagalan.
Shoal adalah sebuah protokol yang meningkatkan konsensus berbasis Narwhal ( melalui pemrosesan pipeline dan mekanisme reputasi pemimpin seperti kerangka DAG-Rider, Tusk, Bullshark ). Pemrosesan pipeline mengurangi latensi pengurutan DAG dengan memperkenalkan sebuah anchor point di setiap putaran, sementara mekanisme reputasi pemimpin lebih lanjut memperbaiki masalah latensi dengan memastikan anchor point terhubung dengan node validasi tercepat. Selain itu, reputasi pemimpin memungkinkan Shoal untuk memanfaatkan konstruksi DAG asinkron untuk menghilangkan timeout dalam semua skenario. Ini memungkinkan Shoal untuk menyediakan atribut yang disebut respons universal, yang mencakup respons optimis yang biasanya dibutuhkan.
Teknologi Shoal relatif sederhana, melibatkan beberapa instance dari protokol dasar yang dijalankan secara berurutan. Ketika diinstansiasi dengan Bullshark, kami mendapatkan sekelompok "ikan hiu" yang sedang melakukan perlombaan estafet.
Latar Belakang dan Motivasi
Dalam upaya mencapai kinerja tinggi jaringan blockchain, orang-orang selalu memperhatikan pengurangan kompleksitas komunikasi. Namun, pendekatan ini tidak membawa 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, dan dapat mendapatkan manfaat dari paralelisasi. Sistem Narwhal memisahkan penyebaran data dari logika konsensus inti, mengusulkan suatu arsitektur di mana semua validator secara bersamaan menyebarkan data, sementara komponen konsensus hanya mengurutkan sejumlah kecil metadata. Makalah Narwhal melaporkan throughput 160.000 TPS.
Dalam artikel sebelumnya, kami memperkenalkan Quorum Store. Narwhal mengimplementasikan pemisahan penyebaran data dan Konsensus, serta cara menggunakannya untuk memperluas protokol Konsensus saat ini, Jolteon. Jolteon adalah protokol berbasis pemimpin, yang menggabungkan jalur cepat linier Tendermint dan perubahan pandangan gaya PBFT, dapat mengurangi latensi Hotstuff sebesar 33%. Namun, protokol Konsensus berbasis pemimpin tidak dapat memanfaatkan potensi throughput Narwhal secara maksimal. Meskipun penyebaran data dan Konsensus dipisahkan, pemimpin Hotstuff/Jolteon masih terbatas seiring dengan meningkatnya throughput.
Oleh karena itu, kami memutuskan untuk menerapkan Bullshark di atas Narwhal DAG, yang merupakan protokol konsensus tanpa biaya komunikasi. Sayangnya, dibandingkan dengan Jolteon, struktur DAG yang mendukung throughput tinggi Bullshark membawa 50% latensi.
Artikel ini akan menjelaskan bagaimana Shoal secara signifikan mengurangi latensi Bullshark.
Latar Belakang DAG-BFT
Setiap simpul dalam Narwhal DAG terkait dengan satu putaran. Untuk memasuki putaran r, validator harus terlebih dahulu memperoleh n-f simpul yang termasuk dalam putaran r-1. Setiap validator dapat menyiarkan satu simpul setiap putaran, dan setiap simpul harus merujuk setidaknya n-f simpul dari putaran sebelumnya. Karena asinkronisitas jaringan, validator yang berbeda mungkin akan mengamati pandangan lokal DAG yang berbeda pada waktu yang berbeda.
Salah satu atribut kunci dari DAG adalah tidak ambigu: jika dua node validasi memiliki simpul v yang sama dalam pandangan lokal DAG mereka, maka mereka memiliki sejarah kausal v yang sepenuhnya sama.
Urutan Umum
Dapat mencapai konsensus tentang urutan total semua simpul di DAG tanpa biaya komunikasi tambahan. Untuk itu, validator di DAG-Rider, Tusk, dan Bullshark menginterpretasikan struktur DAG sebagai protokol konsensus, di mana simpul mewakili usulan dan tepi mewakili suara.
Meskipun logika interseksi kelompok pada struktur DAG berbeda, semua protokol konsensus berbasis Narwhal yang ada memiliki struktur berikut:
Titik jangkar yang dijadwalkan: setiap beberapa putaran akan ada seorang pemimpin yang ditentukan sebelumnya, puncak pemimpin disebut titik jangkar.
Urutan Anchor: Validator secara independen tetapi secara deterministik menentukan urutan anchor mana yang akan dipilih dan mana yang akan dilewati.
Urutan sejarah kausal: Para validator memproses daftar titik jangkar yang terurut satu per satu dan mengurutkan semua simpul tak terurut sebelumnya dalam sejarah kausal setiap titik jangkar.
Kunci untuk memenuhi keamanan adalah memastikan bahwa pada langkah (2), semua node verifikasi yang jujur membuat daftar titik jangkar yang terurut, sehingga semua daftar berbagi awalan yang sama. Di Shoal, kami membuat pengamatan berikut tentang semua protokol di atas:
Semua validator setuju pada titik acuan terurut pertama.
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 dengan versi asinkron, namun itu masih jauh dari yang terbaik.
Pertanyaan 1: Rata-rata latensi blok. Dalam Bullshark, setiap putaran genap memiliki titik jangkar, dan setiap puncak pada putaran ganjil dianggap sebagai suara. Dalam situasi umum, dibutuhkan dua putaran DAG untuk mengurutkan titik jangkar, namun, puncak dalam sejarah kausal titik jangkar memerlukan lebih banyak putaran untuk menunggu titik jangkar diurutkan. Dalam situasi umum, puncak dalam putaran ganjil memerlukan tiga putaran, sementara puncak non-titik jangkar dalam putaran genap memerlukan empat putaran.
Masalah 2: Kasus kegagalan latensi. Analisis latensi di atas berlaku untuk situasi tanpa kegagalan, di sisi lain, jika pemimpin dalam satu putaran gagal untuk menyiarkan titik jangkar dengan cukup cepat, maka titik jangkar tidak dapat diurutkan ( sehingga dilewati ), 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 Bullshark menggunakan waktu tunggu untuk menunggu pemimpin.
Kerangka Shoal
Shoal telah menyelesaikan dua masalah latensi ini, dengan meningkatkan Bullshark( atau protokol BFT berbasis Narwhal lainnya) melalui pemrosesan pipelining, yang memungkinkan adanya satu titik acuan di setiap putaran, dan mengurangi latensi semua simpul non-rujukan dalam DAG menjadi tiga putaran. Shoal juga memperkenalkan mekanisme reputasi pemimpin tanpa biaya dalam DAG, yang membuat pemilihan cenderung pada pemimpin yang cepat.
tantangan
Dalam konteks protokol DAG, pemrosesan pipeline dan reputasi pemimpin dianggap sebagai masalah yang sulit, alasannya sebagai berikut:
Upaya pengolahan aliran sebelumnya mencoba memodifikasi logika inti Bullshark, tetapi secara esensial tampaknya tidak mungkin.
Reputasi pemimpin diperkenalkan dalam DiemBFT dan diformalisasi dalam Carousel, yang memilih pemimpin masa depan secara dinamis berdasarkan kinerja masa lalu validator dengan ide bahwa ( jangkar dalam Bullshark ). Meskipun adanya perbedaan dalam identitas pemimpin tidak melanggar keamanan dalam protokol ini, di Bullshark, itu dapat mengakibatkan urutan yang sangat berbeda, yang mengarah pada inti masalah, yaitu memilih jangkar putaran secara dinamis dan deterministik adalah penting untuk mencapai konsensus, dan validator perlu mencapai kesepakatan tentang sejarah yang terurut untuk memilih jangkar masa depan.
Sebagai bukti tingkat kesulitan masalah, kami mencatat bahwa implementasi Bullshark, termasuk yang saat ini ada di lingkungan produksi, tidak mendukung fitur-fitur ini.
protokol
Meskipun ada tantangan di atas, solusi tersembunyi dalam kesederhanaan. Di Shoal, kami mengandalkan kemampuan untuk melakukan komputasi lokal di atas DAG dan telah mencapai kemampuan untuk menyimpan dan menginterpretasikan kembali informasi dari beberapa putaran sebelumnya. Dengan semua validator setuju pada wawasan inti dari titik jangkar berurutan pertama, Shoal menggabungkan beberapa instance Bullshark secara berurutan untuk memprosesnya secara paralel, menjadikan ( titik jangkar berurutan pertama sebagai titik pergantian instance, serta ) sejarah kausal dari titik jangkar digunakan untuk menghitung reputasi pemimpin.
( pemrosesan aliran
V yang memetakan putaran ke pemimpin. Shoal menjalankan instance Bullshark satu per satu, sehingga untuk setiap instance, jangkar ditentukan sebelumnya oleh pemetaan F. Setiap instance mengurutkan sebuah jangkar, yang akan memicu peralihan ke instance berikutnya.
Pada awalnya, Shoal memulai instance pertama Bullshark pada putaran pertama DAG dan menjalankannya sampai titik jangkar terurut pertama ditentukan, misalnya pada putaran r. Semua validator setuju dengan titik jangkar ini. Oleh karena itu, semua validator dapat dengan pasti setuju untuk menafsirkan kembali DAG mulai dari putaran r+1. Shoal hanya memulai instance Bullshark baru pada putaran r+1.
Dalam kasus terbaik, ini memungkinkan Shoal untuk mengurutkan sebuah jangkar di setiap putaran. Jangkar putaran pertama diurutkan berdasarkan instance pertama. Kemudian, Shoal memulai instance baru di putaran kedua, yang memiliki sebuah jangkar, jangkar tersebut diurutkan oleh instance itu sendiri, kemudian, instance baru lainnya mengurutkan jangkar di putaran ketiga, dan proses tersebut berlanjut.
![Penjelasan detail Shoal Framework: Bagaimana mengurangi latensi Bullshark di Aptos?])https://img-cdn.gateio.im/webp-social/moments-0b0928cb6240e994c1514c75e080a4b2.webp###
( Reputasi Pemimpin
Selama periode pengurutan Bullshark, melompati titik jangkar akan meningkatkan latensi. Dalam kasus ini, teknik pemrosesan alur tidak dapat berfungsi, karena instansi baru tidak dapat diluncurkan sebelum titik jangkar instansi sebelumnya diurutkan. Shoal memastikan bahwa pemimpin yang sesuai untuk menangani titik jangkar yang hilang kemungkinan besar tidak akan dipilih di masa depan dengan memberikan skor kepada setiap node validasi berdasarkan sejarah aktivitas terbaru masing-masing node validasi menggunakan mekanisme reputasi. Validator yang merespons dan berpartisipasi dalam protokol akan mendapatkan skor tinggi, sebaliknya, node validasi akan diberikan skor rendah karena mungkin mengalami kegagalan, lambat, atau bertindak jahat.
Konsepnya adalah untuk secara deterministik menghitung ulang pemetaan F yang telah ditentukan dari putaran ke pemimpin setiap kali pembaruan skor, yang lebih condong ke pemimpin dengan skor lebih tinggi. Agar para validator dapat mencapai konsensus pada pemetaan baru, mereka harus mencapai konsensus pada skor, sehingga mencapai konsensus pada sejarah yang digunakan untuk menurunkan skor.
Di Shoal, pemrosesan pipeline dan reputasi pemimpin dapat secara alami digabungkan, 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 pada putaran ke-r, validator hanya perlu menghitung pemetaan baru F' mulai dari putaran ke-r+1 berdasarkan sejarah kausal titik jangkar yang terurut pada 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 tentang kerangka Shoal: Bagaimana mengurangi latensi Bullshark di Aptos?])https://img-cdn.gateio.im/webp-social/moments-859e732e16c3eee0e2c93422474debc2.webp###
( Tidak ada lagi batas waktu
Timeout memainkan peran penting dalam semua implementasi BFT 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 secara signifikan meningkatkan latensi, karena sangat penting untuk mengkonfigurasi mereka dengan tepat, dan sering kali memerlukan penyesuaian dinamis, karena sangat tergantung pada lingkungan ) jaringan ###. Sebelum berpindah ke pemimpin berikutnya, protokol akan membayar penalti keterlambatan penuh untuk pemimpin yang mengalami kegagalan. Oleh karena itu, pengaturan keterlambatan tidak boleh terlalu konservatif, tetapi jika waktu keterlambatan terlalu pendek, protokol mungkin akan melewatkan pemimpin yang baik. Misalnya, kami mengamati bahwa, dalam kondisi beban tinggi, pemimpin di Jolteon/Hotstuff menjadi kewalahan, dan keterlambatan telah terjadi sebelum mereka mendorong kemajuan.
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.
9 Suka
Hadiah
9
6
Posting ulang
Bagikan
Komentar
0/400
SchrodingerProfit
· 5jam yang lalu
Sekarang aptos akan To da moon lagi.
Lihat AsliBalas0
CodeAuditQueen
· 12jam yang lalu
Optimisasi algoritme yang kompleks juga memiliki risiko reentrancy daya komputasi. Semoga tidak terjebak dalam masalah.
Lihat AsliBalas0
metaverse_hermit
· 12jam yang lalu
aptos masih hidup tql
Lihat AsliBalas0
ReverseTradingGuru
· 12jam yang lalu
Sudah lagi-lagi diperbarui ya bull beer
Lihat AsliBalas0
DeadTrades_Walking
· 12jam yang lalu
Peningkatan efisiensi masih baik, ingat untuk mengirimkan skor.
Kerangka Shoal meningkatkan efisiensi konsensus Aptos: Bullshark latensi berkurang secara signifikan 40-80%
Kerangka Shoal: Meningkatkan latensi konsensus Bullshark di Aptos
Aptos Labs baru-baru ini menyelesaikan dua masalah terbuka penting dalam DAG BFT, yang secara signifikan mengurangi latensi, dan untuk pertama kalinya menghilangkan kebutuhan akan timeout dalam protokol asinkron deterministik. Secara keseluruhan, latensi Bullshark meningkat 40% dalam kondisi tanpa kegagalan, dan 80% dalam kondisi dengan kegagalan.
Shoal adalah sebuah protokol yang meningkatkan konsensus berbasis Narwhal ( melalui pemrosesan pipeline dan mekanisme reputasi pemimpin seperti kerangka DAG-Rider, Tusk, Bullshark ). Pemrosesan pipeline mengurangi latensi pengurutan DAG dengan memperkenalkan sebuah anchor point di setiap putaran, sementara mekanisme reputasi pemimpin lebih lanjut memperbaiki masalah latensi dengan memastikan anchor point terhubung dengan node validasi tercepat. Selain itu, reputasi pemimpin memungkinkan Shoal untuk memanfaatkan konstruksi DAG asinkron untuk menghilangkan timeout dalam semua skenario. Ini memungkinkan Shoal untuk menyediakan atribut yang disebut respons universal, yang mencakup respons optimis yang biasanya dibutuhkan.
Teknologi Shoal relatif sederhana, melibatkan beberapa instance dari protokol dasar yang dijalankan secara berurutan. Ketika diinstansiasi dengan Bullshark, kami mendapatkan sekelompok "ikan hiu" yang sedang melakukan perlombaan estafet.
Latar Belakang dan Motivasi
Dalam upaya mencapai kinerja tinggi jaringan blockchain, orang-orang selalu memperhatikan pengurangan kompleksitas komunikasi. Namun, pendekatan ini tidak membawa 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, dan dapat mendapatkan manfaat dari paralelisasi. Sistem Narwhal memisahkan penyebaran data dari logika konsensus inti, mengusulkan suatu arsitektur di mana semua validator secara bersamaan menyebarkan data, sementara komponen konsensus hanya mengurutkan sejumlah kecil metadata. Makalah Narwhal melaporkan throughput 160.000 TPS.
Dalam artikel sebelumnya, kami memperkenalkan Quorum Store. Narwhal mengimplementasikan pemisahan penyebaran data dan Konsensus, serta cara menggunakannya untuk memperluas protokol Konsensus saat ini, Jolteon. Jolteon adalah protokol berbasis pemimpin, yang menggabungkan jalur cepat linier Tendermint dan perubahan pandangan gaya PBFT, dapat mengurangi latensi Hotstuff sebesar 33%. Namun, protokol Konsensus berbasis pemimpin tidak dapat memanfaatkan potensi throughput Narwhal secara maksimal. Meskipun penyebaran data dan Konsensus dipisahkan, pemimpin Hotstuff/Jolteon masih terbatas seiring dengan meningkatnya throughput.
Oleh karena itu, kami memutuskan untuk menerapkan Bullshark di atas Narwhal DAG, yang merupakan protokol konsensus tanpa biaya komunikasi. Sayangnya, dibandingkan dengan Jolteon, struktur DAG yang mendukung throughput tinggi Bullshark membawa 50% latensi.
Artikel ini akan menjelaskan bagaimana Shoal secara signifikan mengurangi latensi Bullshark.
Latar Belakang DAG-BFT
Setiap simpul dalam Narwhal DAG terkait dengan satu putaran. Untuk memasuki putaran r, validator harus terlebih dahulu memperoleh n-f simpul yang termasuk dalam putaran r-1. Setiap validator dapat menyiarkan satu simpul setiap putaran, dan setiap simpul harus merujuk setidaknya n-f simpul dari putaran sebelumnya. Karena asinkronisitas jaringan, validator yang berbeda mungkin akan mengamati pandangan lokal DAG yang berbeda pada waktu yang berbeda.
Salah satu atribut kunci dari DAG adalah tidak ambigu: jika dua node validasi memiliki simpul v yang sama dalam pandangan lokal DAG mereka, maka mereka memiliki sejarah kausal v yang sepenuhnya sama.
Urutan Umum
Dapat mencapai konsensus tentang urutan total semua simpul di DAG tanpa biaya komunikasi tambahan. Untuk itu, validator di DAG-Rider, Tusk, dan Bullshark menginterpretasikan struktur DAG sebagai protokol konsensus, di mana simpul mewakili usulan dan tepi mewakili suara.
Meskipun logika interseksi kelompok pada struktur DAG berbeda, semua protokol konsensus berbasis Narwhal yang ada memiliki struktur berikut:
Titik jangkar yang dijadwalkan: setiap beberapa putaran akan ada seorang pemimpin yang ditentukan sebelumnya, puncak pemimpin disebut titik jangkar.
Urutan Anchor: Validator secara independen tetapi secara deterministik menentukan urutan anchor mana yang akan dipilih dan mana yang akan dilewati.
Urutan sejarah kausal: Para validator memproses daftar titik jangkar yang terurut satu per satu dan mengurutkan semua simpul tak terurut sebelumnya dalam sejarah kausal setiap titik jangkar.
Kunci untuk memenuhi keamanan adalah memastikan bahwa pada langkah (2), semua node verifikasi yang jujur membuat daftar titik jangkar yang terurut, sehingga semua daftar berbagi awalan yang sama. Di Shoal, kami membuat pengamatan berikut tentang semua protokol di atas:
Semua validator setuju pada titik acuan terurut pertama.
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 dengan versi asinkron, namun itu masih jauh dari yang terbaik.
Pertanyaan 1: Rata-rata latensi blok. Dalam Bullshark, setiap putaran genap memiliki titik jangkar, dan setiap puncak pada putaran ganjil dianggap sebagai suara. Dalam situasi umum, dibutuhkan dua putaran DAG untuk mengurutkan titik jangkar, namun, puncak dalam sejarah kausal titik jangkar memerlukan lebih banyak putaran untuk menunggu titik jangkar diurutkan. Dalam situasi umum, puncak dalam putaran ganjil memerlukan tiga putaran, sementara puncak non-titik jangkar dalam putaran genap memerlukan empat putaran.
Masalah 2: Kasus kegagalan latensi. Analisis latensi di atas berlaku untuk situasi tanpa kegagalan, di sisi lain, jika pemimpin dalam satu putaran gagal untuk menyiarkan titik jangkar dengan cukup cepat, maka titik jangkar tidak dapat diurutkan ( sehingga dilewati ), 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 Bullshark menggunakan waktu tunggu untuk menunggu pemimpin.
Kerangka Shoal
Shoal telah menyelesaikan dua masalah latensi ini, dengan meningkatkan Bullshark( atau protokol BFT berbasis Narwhal lainnya) melalui pemrosesan pipelining, yang memungkinkan adanya satu titik acuan di setiap putaran, dan mengurangi latensi semua simpul non-rujukan dalam DAG menjadi tiga putaran. Shoal juga memperkenalkan mekanisme reputasi pemimpin tanpa biaya dalam DAG, yang membuat pemilihan cenderung pada pemimpin yang cepat.
tantangan
Dalam konteks protokol DAG, pemrosesan pipeline dan reputasi pemimpin dianggap sebagai masalah yang sulit, alasannya sebagai berikut:
Upaya pengolahan aliran sebelumnya mencoba memodifikasi logika inti Bullshark, tetapi secara esensial tampaknya tidak mungkin.
Reputasi pemimpin diperkenalkan dalam DiemBFT dan diformalisasi dalam Carousel, yang memilih pemimpin masa depan secara dinamis berdasarkan kinerja masa lalu validator dengan ide bahwa ( jangkar dalam Bullshark ). Meskipun adanya perbedaan dalam identitas pemimpin tidak melanggar keamanan dalam protokol ini, di Bullshark, itu dapat mengakibatkan urutan yang sangat berbeda, yang mengarah pada inti masalah, yaitu memilih jangkar putaran secara dinamis dan deterministik adalah penting untuk mencapai konsensus, dan validator perlu mencapai kesepakatan tentang sejarah yang terurut untuk memilih jangkar masa depan.
Sebagai bukti tingkat kesulitan masalah, kami mencatat bahwa implementasi Bullshark, termasuk yang saat ini ada di lingkungan produksi, tidak mendukung fitur-fitur ini.
protokol
Meskipun ada tantangan di atas, solusi tersembunyi dalam kesederhanaan. Di Shoal, kami mengandalkan kemampuan untuk melakukan komputasi lokal di atas DAG dan telah mencapai kemampuan untuk menyimpan dan menginterpretasikan kembali informasi dari beberapa putaran sebelumnya. Dengan semua validator setuju pada wawasan inti dari titik jangkar berurutan pertama, Shoal menggabungkan beberapa instance Bullshark secara berurutan untuk memprosesnya secara paralel, menjadikan ( titik jangkar berurutan pertama sebagai titik pergantian instance, serta ) sejarah kausal dari titik jangkar digunakan untuk menghitung reputasi pemimpin.
( pemrosesan aliran
V yang memetakan putaran ke pemimpin. Shoal menjalankan instance Bullshark satu per satu, sehingga untuk setiap instance, jangkar ditentukan sebelumnya oleh pemetaan F. Setiap instance mengurutkan sebuah jangkar, yang akan memicu peralihan ke instance berikutnya.
Pada awalnya, Shoal memulai instance pertama Bullshark pada putaran pertama DAG dan menjalankannya sampai titik jangkar terurut pertama ditentukan, misalnya pada putaran r. Semua validator setuju dengan titik jangkar ini. Oleh karena itu, semua validator dapat dengan pasti setuju untuk menafsirkan kembali DAG mulai dari putaran r+1. Shoal hanya memulai instance Bullshark baru pada putaran r+1.
Dalam kasus terbaik, ini memungkinkan Shoal untuk mengurutkan sebuah jangkar di setiap putaran. Jangkar putaran pertama diurutkan berdasarkan instance pertama. Kemudian, Shoal memulai instance baru di putaran kedua, yang memiliki sebuah jangkar, jangkar tersebut diurutkan oleh instance itu sendiri, kemudian, instance baru lainnya mengurutkan jangkar di putaran ketiga, dan proses tersebut berlanjut.
![Penjelasan detail Shoal Framework: Bagaimana mengurangi latensi Bullshark di Aptos?])https://img-cdn.gateio.im/webp-social/moments-0b0928cb6240e994c1514c75e080a4b2.webp###
( Reputasi Pemimpin
Selama periode pengurutan Bullshark, melompati titik jangkar akan meningkatkan latensi. Dalam kasus ini, teknik pemrosesan alur tidak dapat berfungsi, karena instansi baru tidak dapat diluncurkan sebelum titik jangkar instansi sebelumnya diurutkan. Shoal memastikan bahwa pemimpin yang sesuai untuk menangani titik jangkar yang hilang kemungkinan besar tidak akan dipilih di masa depan dengan memberikan skor kepada setiap node validasi berdasarkan sejarah aktivitas terbaru masing-masing node validasi menggunakan mekanisme reputasi. Validator yang merespons dan berpartisipasi dalam protokol akan mendapatkan skor tinggi, sebaliknya, node validasi akan diberikan skor rendah karena mungkin mengalami kegagalan, lambat, atau bertindak jahat.
Konsepnya adalah untuk secara deterministik menghitung ulang pemetaan F yang telah ditentukan dari putaran ke pemimpin setiap kali pembaruan skor, yang lebih condong ke pemimpin dengan skor lebih tinggi. Agar para validator dapat mencapai konsensus pada pemetaan baru, mereka harus mencapai konsensus pada skor, sehingga mencapai konsensus pada sejarah yang digunakan untuk menurunkan skor.
Di Shoal, pemrosesan pipeline dan reputasi pemimpin dapat secara alami digabungkan, 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 pada putaran ke-r, validator hanya perlu menghitung pemetaan baru F' mulai dari putaran ke-r+1 berdasarkan sejarah kausal titik jangkar yang terurut pada 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 tentang kerangka Shoal: Bagaimana mengurangi latensi Bullshark di Aptos?])https://img-cdn.gateio.im/webp-social/moments-859e732e16c3eee0e2c93422474debc2.webp###
( Tidak ada lagi batas waktu
Timeout memainkan peran penting dalam semua implementasi BFT 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 secara signifikan meningkatkan latensi, karena sangat penting untuk mengkonfigurasi mereka dengan tepat, dan sering kali memerlukan penyesuaian dinamis, karena sangat tergantung pada lingkungan ) jaringan ###. Sebelum berpindah ke pemimpin berikutnya, protokol akan membayar penalti keterlambatan penuh untuk pemimpin yang mengalami kegagalan. Oleh karena itu, pengaturan keterlambatan tidak boleh terlalu konservatif, tetapi jika waktu keterlambatan terlalu pendek, protokol mungkin akan melewatkan pemimpin yang baik. Misalnya, kami mengamati bahwa, dalam kondisi beban tinggi, pemimpin di Jolteon/Hotstuff menjadi kewalahan, dan keterlambatan telah terjadi sebelum mereka mendorong kemajuan.
Sayangnya, protokol pemimpin ( seperti Hotstuff