Shoal çerçevesinin analizi: Aptos'taki Bullshark gecikme süresinde büyük bir düşüş
Aptos Labs yakın zamanda DAG BFT'deki iki kritik sorunu çözdü, gecikme süresini önemli ölçüde düşürdü ve belirleyici gerçek zamanlı protokollerde zaman aşımına olan ihtiyacı ilk kez ortadan kaldırdı. Genel olarak, hatasız durumda Bullshark'ın gecikmesi %40, arızalı durumda ise %80 oranında iyileşti.
Shoal, Narwhal tabanlı konsensüs protokolünü ( DAG-Rider, Tusk, Bullshark ) gibi güçlendiren bir çerçevedir. Akış hattı, her turda bir referans noktası tanıtarak DAG sıralama gecikmesini azaltır, liderin itibarı ise bu referans noktalarının en hızlı doğrulama düğümleriyle ilişkilendirilmesini sağlayarak gecikmeyi daha da iyileştirir. Ayrıca, liderin itibarı, Shoal'ın tüm senaryolarda zaman aşımını ortadan kaldırmak için asenkron DAG inşaatını kullanmasına olanak tanır. Bu, Shoal'a genel bir yanıt verme yeteneği kazandırır ve genellikle gerekli olan iyimser yanıt verme yeteneğini içerir.
Bu teknoloji oldukça basit olup, ardışık olarak temel protokollerin birden fazla örneğinin çalıştırılmasını içerir. Bullshark örneklemesi kullanıldığında, bu bir grup "köpekbalığı"nın bayrak yarışı yaptığına eşdeğerdir.
Arka Plan ve Motivasyon
Blok zinciri ağlarının yüksek performansını hedeflerken, iletişim karmaşıklığını azaltmak her zaman önemli bir konu olmuştur. Ancak, bu yaklaşım belirgin bir işlem hacmi artışı sağlamamıştır. Örneğin, erken dönem Diem'de uygulanan Hotstuff sadece 3500 TPS'ye ulaşmış, 100,000+ TPS hedefinin çok altında kalmıştır.
Son zamanlarda yaşanan突破, veri yayılımının liderlik protokollerine dayalı ana darboğaz olduğunu anlamaktan kaynaklanmaktadır ve bu süreç paralelleşmeden fayda sağlayabilir. Narwhal sistemi, veri yayılımını ana konsensüs mantığından ayırarak, tüm doğrulayıcıların aynı anda veri yayılmasını sağlamakta ve konsensüs bileşeninin yalnızca az miktarda meta veriyi sıraladığı bir yapı önermektedir. Narwhal belgesinde, 160.000 TPS'ye kadar bir throughput rapor edilmektedir.
Aptos daha önce Quorum Store'u, yani Narwhal uygulamasını tanıttı; bu uygulama, verilerin yayılımını ve konsensüsü ayırarak mevcut Jolteon konsensüs protokolünü genişletmek için kullanılıyor. Jolteon, Tendermint'in lineer hızlı yolunu ve PBFT tarzı görünüm değişikliklerini birleştirerek Hotstuff gecikmesini %33 oranında düşürüyor. Ancak, lider tabanlı konsensüs protokolleri Narwhal'ın verimlilik potansiyelinden tam anlamıyla yararlanamıyor.
Bu nedenle, Aptos, Narwhal DAG üzerinde, sıfır iletişim maliyetine sahip bir konsensüs protokolü olan Bullshark'ı uygulamaya karar verdi. Ancak, Jolteon ile karşılaştırıldığında, Bullshark'ı destekleyen yüksek verimlilikteki DAG yapısı %50'lik bir düşüş maliyeti getirdi.
Shoal çerçevesi, Bullshark gecikme süresini büyük ölçüde düşürmeyi amaçlamaktadır.
DAG-BFT Arka Planı
Narwhal DAG'daki her bir düğüm bir tur ile ilişkilidir. r. tura girdiğinde, doğrulayıcı önce r-1. turun n-f düğümünü elde etmelidir. Her doğrulayıcı her turda bir düğüm yayınlayabilir, her düğüm en az bir önceki turun n-f düğümünü referans almalıdır. Ağın asenkron doğası nedeniyle, farklı doğrulayıcılar herhangi bir zamanda DAG'ın farklı yerel görünümlerini gözlemleyebilir.
DAG'ın bir ana özelliği belirsizlik olmamasıdır: Eğer iki doğrulayıcı düğüm yerel DAG görünümünde aynı tepe noktası v'ye sahipse, o zaman onların v'ye ait nedensel geçmişleri tamamen aynıdır.
Genel Sıralama
DAG'daki tüm noktaların toplam sırasını ek iletişim maliyeti olmadan uzlaşmaya varmak mümkündür. Bunun için, DAG-Rider, Tusk ve Bullshark'taki doğrulayıcılar, DAG yapısını bir uzlaşma protokolü olarak yorumlar; burada noktalar önerileri, kenarlar ise oylamayı temsil eder.
Tüm Narwhal tabanlı konsensüs protokolleri aşağıdaki yapıya sahiptir:
Önceden belirlenmiş lider: Her birkaç turda bir önceden belirlenmiş bir lider vardır, zirvesi ise ana nokta olarak adlandırılır.
Sıralama ankraj noktaları: Doğrulayıcılar, bağımsız ancak belirleyici bir şekilde hangi ankraj noktalarını sıralayacaklarına ve hangi ankraj noktalarını atlayacaklarına karar verir.
Sıralı Nedensellik Tarihi: Doğrulayıcılar sıralı referans noktası listesini sırayla işler ve her referans noktasının nedensellik tarihindeki daha önce sıralanmamış zirveleri sıralar.
Güvenliğin anahtarı, adım (2)'de, tüm dürüst doğrulayıcı düğümleri tarafından oluşturulan sıralı referans noktası listesinin aynı öneki paylaşmasını sağlamaktır. Shoal, tüm doğrulayıcıların ilk sıralı referans noktasında mutabık olduğunu gözlemledi.
Bullshark gecikme süresi
Bullshark'ın gecikme süresi, DAG'deki sıralı referans noktaları arasındaki döngü sayısına bağlıdır. Bazı senkron versiyonları, asenkron versiyonlara göre daha iyi bir gecikme süresine sahip olsa da, hâlâ en iyi seviyede değildir.
Başlıca iki sorun var:
Ortalama blok gecikmesi: Yaygın durumlarda, tek sayılı tur noktasının sıralanması için üç tur, çift sayılı tur anahtar noktası olmayan noktaların sıralanması için dört tura ihtiyaç vardır.
Arıza Durumu Gecikmesi: Eğer bir lider, belirli bir turda ana noktayı zamanında iletemezse, ana nokta sıralanamaz ve atlanır. Önceki turlarda sıralanmamış olan noktalar, bir sonraki ana noktanın sıralanmasını beklemek zorundadır. Bu, coğrafi çoğaltme ağının performansını önemli ölçüde düşürür.
Shoal çerçevesi
Shoal, Bullshark( veya herhangi bir Narwhal tabanlı BFT protokolü ) aracılığıyla bir üretim hattı ile güçlendirerek, her turda bir referans noktası olmasına izin verir ve DAG'daki tüm referans noktası olmayan düğümlerin gecikme süresini üç tura düşürür. Shoal ayrıca DAG'da sıfır maliyetli bir lider itibarı mekanizması getirir ve hızlı liderlerin seçilmesine öncelik verir.
meydan okuma
DAG protokolü bağlamında, boru hattı ve liderin itibarı zorlu sorunlar olarak görülmektedir:
Önceki üretim hattı, temel Bullshark mantığını değiştirmeye çalıştı, ancak bu esasen imkansız gibi görünüyor.
Liderlerin itibarı DiemBFT'ye dahil edilir, Carousel'de resmi hale getirilir, doğrulayıcıların geçmiş performansına göre gelecekteki liderler dinamik olarak seçilir (Bullshark'taki bağlantı noktası ). Liderlik kimliğindeki farklılıklar güvenliği ihlal etmez, ancak Bullshark'ta tamamen farklı bir sıralama ile sonuçlanabilir.
Bu zorluklar, mevcut üretim ortamındaki Bullshark uygulamalarının bu özellikleri desteklememesine neden oldu.
protokol
Shoal, DAG üzerinde yerel hesaplama yapabilme yeteneğine dayanarak, önceki turların bilgilerini saklama ve yeniden yorumlama yeteneğini gerçekleştirir. Tüm doğrulayıcıların ilk sıralı ankraj noktasına dair içgörüde hemfikir olduğu temelinde, Shoal, birden fazla Bullshark örneğini sıralı olarak birleştirerek boru hattı işlemi gerçekleştirir, bu da:
İlk sıralı referans noktası, örneğin geçiş noktasıdır.
Ağırlıkların neden-sonuç geçmişi, liderlerin itibarını hesaplamak için kullanılır.
üretim hattı
V işlevi vardır. Shoal, her bir örneğin ankra noktasının F haritası tarafından önceden belirlendiği Bullshark örneklerini sırayla çalıştırır. Her örnek bir ankra noktası sıralar ve bir sonraki örneğe geçişi tetikler.
Shoal, DAG'ın ilk turunda Bullshark'ın ilk örneğini başlattı ve ilk sıralı ankraj noktasını ( olarak belirlemek için çalıştı, r. turda ) varsayalım. Tüm doğrulayıcılar bu ankraj noktasında hemfikir olduğu için, r+1. turdan itibaren DAG'ı yeniden yorumlamayı kesin olarak kabul edebilirler. Shoal, r+1. turda yeni bir Bullshark örneği başlatır.
İdeal koşullarda, bu Shoal'ın her turda bir ana noktayı sıralamasına olanak tanır. İlk tur ana noktası, ilk örnek tarafından sıralanır, ardından Shoal ikinci turda yeni bir örnek başlatır, o tur ana noktasını sıralar ve bu şekilde devam eder.
Liderlerin itibarı
Bullshark sıralama süreci, ana noktaları atladığında, gecikme süresi artar. Bu durumda, önceki örneğin sıralama ana noktası öncesinde yeni bir örneği başlatmak mümkün olmadığından, hat sıralama tekniği etkisiz kalır. Shoal, her doğrulama düğümüne itibar mekanizması aracılığıyla puan verir, son faaliyet geçmişine göre gelecekte ilgili yavaş liderlerin seçilme olasılığının daha düşük olmasını sağlar. Protokole yanıt veren ve katılan doğrulayıcılar yüksek puan alır, aksi takdirde düşük puan alır.
Her puan güncellemesi olduğunda, yüksek puan liderlerine yönelik olarak, turlar ile liderler arasındaki önceden tanımlanmış F haritasını kesin bir şekilde yeniden hesaplayın. Doğrulayıcıların yeni harita üzerinde uzlaşabilmeleri için, puan üzerinde uzlaşmaları ve böylece puanların türetildiği tarih üzerinde de uzlaşmaları gerekir.
Shoal'da, akış hatları ve liderlik itibarı doğal olarak bir araya gelir, çünkü her ikisi de aynı temel teknolojiyi kullanır: ilk sıralı ankra noktası üzerinde uzlaşmaya varıldıktan sonra DAG'ı yeniden yorumlamak.
Tek fark, r. tur sıralama sabit noktasının ardından, doğrulayıcıların yalnızca r. tur sıralı sabit noktaların nedensel geçmişine dayanarak, r+1. turdan itibaren yeni haritalama F'yi hesaplamasıdır. Ardından doğrulama düğümleri, r+1. turdan itibaren güncellenmiş sabit nokta seçim fonksiyonu F'yi kullanarak yeni Bullshark örneğini gerçekleştirir.
zaman aşımını ortadan kaldır
Zaman aşımı, tüm lider tabanlı belirleyici kısmi senkronizasyon BFT uygulamalarında kritik bir rol oynamaktadır. Ancak, bunların getirdiği karmaşıklık, yönetilmesi ve gözlemlenmesi gereken iç durum sayısını artırmakta, hata ayıklama karmaşıklığını artırmakta ve daha fazla gözlemlenebilirlik tekniği gerektirmektedir.
Zaman aşımı da gecikme süresini önemli ölçüde artırır, çünkü uygun şekilde yapılandırılmış zaman aşımının önemi büyüktür, genellikle dinamik olarak ayarlanması gerekir ve ortam ( ağına ) büyük ölçüde bağımlıdır. Protokol, bir sonraki lider seçilmeden önce arızalı lider için tam zaman aşımı gecikme cezası ödeyecektir. Bu nedenle, zaman aşımı ayarları çok temkinli olmamalıdır, ancak çok kısa olursa, protokol iyi liderleri atlayabilir.
Ne yazık ki, liderlerin protokolü (, Hotstuff ve Jolteon) gibi, her seferinde liderin arızalanması durumunda protokolün ilerlemesini sağlamak için temelde bir gecikme süresi gerektirir. Gecikme süresi olmadan, çöküşte olan bir lider bile protokolü sonsuza dek durdurabilir. Asenkron dönemlerde arızalı ve yavaş liderleri ayırt edemediğinden, gecikme süresi doğrulama düğümlerinin hiç bir konsensüs aktifliği olmadan tüm liderleri döndürmesine neden olabilir.
Bullshark'ta, DAG yapısı için zaman aşımı kullanılır, böylece senkronizasyon sırasında dürüst liderlerin, sıralama için DAG'a referans noktalarını yeterince hızlı eklemesini sağlar.
Shoal, DAG yapısının ağ hızını tahmin eden bir "saat" sağladığını gözlemledi. Duraksama olmaksızın, n-f kadar dürüst doğrulayıcı DAG'a tepe eklemeye devam ettikçe, tur devam edecektir. Bullshark, liderlik sorunları nedeniyle ( ağ hızında sıralama yapamasa da ), DAG hala ağ hızında büyümektedir, bazı liderlerin sorunlu veya ağın asenkron olmasına rağmen. Sonunda, hatasız liderler yeterince hızlı bir şekilde referans noktalarını yayınladığında, referans noktasının tüm nedensel tarihi sıralanacaktır.
Shoal'da, zaman aşımını önlemek liderlerin itibarı ile yakından ilişkilidir. Yavaş liderler için tekrar beklemek, gecikmeyi artırır ve liderlerin itibar mekanizması, yavaş doğrulayıcıların lider olarak seçilmesini dışlar. Bu şekilde, sistem hızlı doğrulama düğümlerini kullanarak tüm gerçek senaryolarda ağ hızıyla çalışır.
Dikkat edilmesi gereken, FLP olasılık sonuçlarının, belirli bir uzlaşma protokolünün zaman aşımını önleyemeyeceğini göstermesidir. Shoal bu sonucu atlatamaz çünkü tüm sabitlerin sıralanmasını engelleyebilecek teorik olarak düşmanca olay zaman çizelgeleri vardır. Aksine, yapılandırılabilir sürekli atlama noktası sayısından sonra, Shoal zaman aşımına geri dönecektir. Aslında, bu durum son derece olası değildir.
genel yanıt verme
Hotstuff makalesi, iyimser yanıt kavramını yaygınlaştırdı; resmi olarak tanımlanmamış olsa da, sezgisel olarak, protokolün iyi koşullar altında ( hızlı lider ve senkronize ağ ) altında ağ hızıyla çalışabileceği anlamına gelir.
Shoal, genel yanıt verebilirlik adı verilen daha iyi bir özellik sunar. Özellikle, Hotstuff ile karşılaştırıldığında, liderin yapılandırılabilir sürekli turlar içinde başarısız olması veya ağın asenkron dönemler yaşaması durumunda, Shoal ağ hızında çalışmaya devam eder.
Genel yanıt verme, asenkron dönemlerde ve liderin arızalandığı durumlarda katı bir şekilde daha iyi bir ilerleme garantisi sunar. Yavaş liderle senkronize olurken, bu özellikler kıyaslanamaz çünkü liderin ne kadar yavaş olduğuna bağlıdır. Ancak, liderin itibarı göz önünde bulundurulduğunda, Shoal'deki yavaş liderlerin nadiren ortaya çıkması gerekir.
Değerlendirme
Aptos, Narwhal üzerinde Quorum Store'ı gerçekleştirerek Bullshark ve Shoal'ı hayata geçirdi. Aşağıda bazı değerlendirme öne çıkan noktalar sunulmaktadır:
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
18 Likes
Reward
18
7
Share
Comment
0/400
OnchainFortuneTeller
· 07-12 17:39
Görünüşe göre APT boğa koşusu geliyor~
View OriginalReply0
AirdropSkeptic
· 07-10 22:26
Wuhu~ inanılmaz! Bu kadar hızlandı.
View OriginalReply0
UnluckyLemur
· 07-10 03:40
aptos her zaman bir şeyler yapar
View OriginalReply0
ZkSnarker
· 07-10 03:39
aslında boğa köpekbalığı çok daha ilginç hale geldi...
View OriginalReply0
SmartMoneyWallet
· 07-10 03:36
Hızlandırma %80 mi? Veriler çok yanıltıcı, on-chain TPS'de hiçbir değişiklik yok.
View OriginalReply0
0xLostKey
· 07-10 03:34
Hızın çok mu harika?
View OriginalReply0
BrokenYield
· 07-10 03:14
meh, başka bir geçici çözüm sistemik gecikme süresi riskleri için
Shoal çerçevesi Aptos Bullshark gecikme süresini büyük ölçüde düşürdü, evrensel yanıt verebilirlik sağladı.
Shoal çerçevesinin analizi: Aptos'taki Bullshark gecikme süresinde büyük bir düşüş
Aptos Labs yakın zamanda DAG BFT'deki iki kritik sorunu çözdü, gecikme süresini önemli ölçüde düşürdü ve belirleyici gerçek zamanlı protokollerde zaman aşımına olan ihtiyacı ilk kez ortadan kaldırdı. Genel olarak, hatasız durumda Bullshark'ın gecikmesi %40, arızalı durumda ise %80 oranında iyileşti.
Shoal, Narwhal tabanlı konsensüs protokolünü ( DAG-Rider, Tusk, Bullshark ) gibi güçlendiren bir çerçevedir. Akış hattı, her turda bir referans noktası tanıtarak DAG sıralama gecikmesini azaltır, liderin itibarı ise bu referans noktalarının en hızlı doğrulama düğümleriyle ilişkilendirilmesini sağlayarak gecikmeyi daha da iyileştirir. Ayrıca, liderin itibarı, Shoal'ın tüm senaryolarda zaman aşımını ortadan kaldırmak için asenkron DAG inşaatını kullanmasına olanak tanır. Bu, Shoal'a genel bir yanıt verme yeteneği kazandırır ve genellikle gerekli olan iyimser yanıt verme yeteneğini içerir.
Bu teknoloji oldukça basit olup, ardışık olarak temel protokollerin birden fazla örneğinin çalıştırılmasını içerir. Bullshark örneklemesi kullanıldığında, bu bir grup "köpekbalığı"nın bayrak yarışı yaptığına eşdeğerdir.
Arka Plan ve Motivasyon
Blok zinciri ağlarının yüksek performansını hedeflerken, iletişim karmaşıklığını azaltmak her zaman önemli bir konu olmuştur. Ancak, bu yaklaşım belirgin bir işlem hacmi artışı sağlamamıştır. Örneğin, erken dönem Diem'de uygulanan Hotstuff sadece 3500 TPS'ye ulaşmış, 100,000+ TPS hedefinin çok altında kalmıştır.
Son zamanlarda yaşanan突破, veri yayılımının liderlik protokollerine dayalı ana darboğaz olduğunu anlamaktan kaynaklanmaktadır ve bu süreç paralelleşmeden fayda sağlayabilir. Narwhal sistemi, veri yayılımını ana konsensüs mantığından ayırarak, tüm doğrulayıcıların aynı anda veri yayılmasını sağlamakta ve konsensüs bileşeninin yalnızca az miktarda meta veriyi sıraladığı bir yapı önermektedir. Narwhal belgesinde, 160.000 TPS'ye kadar bir throughput rapor edilmektedir.
Aptos daha önce Quorum Store'u, yani Narwhal uygulamasını tanıttı; bu uygulama, verilerin yayılımını ve konsensüsü ayırarak mevcut Jolteon konsensüs protokolünü genişletmek için kullanılıyor. Jolteon, Tendermint'in lineer hızlı yolunu ve PBFT tarzı görünüm değişikliklerini birleştirerek Hotstuff gecikmesini %33 oranında düşürüyor. Ancak, lider tabanlı konsensüs protokolleri Narwhal'ın verimlilik potansiyelinden tam anlamıyla yararlanamıyor.
Bu nedenle, Aptos, Narwhal DAG üzerinde, sıfır iletişim maliyetine sahip bir konsensüs protokolü olan Bullshark'ı uygulamaya karar verdi. Ancak, Jolteon ile karşılaştırıldığında, Bullshark'ı destekleyen yüksek verimlilikteki DAG yapısı %50'lik bir düşüş maliyeti getirdi.
Shoal çerçevesi, Bullshark gecikme süresini büyük ölçüde düşürmeyi amaçlamaktadır.
DAG-BFT Arka Planı
Narwhal DAG'daki her bir düğüm bir tur ile ilişkilidir. r. tura girdiğinde, doğrulayıcı önce r-1. turun n-f düğümünü elde etmelidir. Her doğrulayıcı her turda bir düğüm yayınlayabilir, her düğüm en az bir önceki turun n-f düğümünü referans almalıdır. Ağın asenkron doğası nedeniyle, farklı doğrulayıcılar herhangi bir zamanda DAG'ın farklı yerel görünümlerini gözlemleyebilir.
DAG'ın bir ana özelliği belirsizlik olmamasıdır: Eğer iki doğrulayıcı düğüm yerel DAG görünümünde aynı tepe noktası v'ye sahipse, o zaman onların v'ye ait nedensel geçmişleri tamamen aynıdır.
Genel Sıralama
DAG'daki tüm noktaların toplam sırasını ek iletişim maliyeti olmadan uzlaşmaya varmak mümkündür. Bunun için, DAG-Rider, Tusk ve Bullshark'taki doğrulayıcılar, DAG yapısını bir uzlaşma protokolü olarak yorumlar; burada noktalar önerileri, kenarlar ise oylamayı temsil eder.
Tüm Narwhal tabanlı konsensüs protokolleri aşağıdaki yapıya sahiptir:
Önceden belirlenmiş lider: Her birkaç turda bir önceden belirlenmiş bir lider vardır, zirvesi ise ana nokta olarak adlandırılır.
Sıralama ankraj noktaları: Doğrulayıcılar, bağımsız ancak belirleyici bir şekilde hangi ankraj noktalarını sıralayacaklarına ve hangi ankraj noktalarını atlayacaklarına karar verir.
Sıralı Nedensellik Tarihi: Doğrulayıcılar sıralı referans noktası listesini sırayla işler ve her referans noktasının nedensellik tarihindeki daha önce sıralanmamış zirveleri sıralar.
Güvenliğin anahtarı, adım (2)'de, tüm dürüst doğrulayıcı düğümleri tarafından oluşturulan sıralı referans noktası listesinin aynı öneki paylaşmasını sağlamaktır. Shoal, tüm doğrulayıcıların ilk sıralı referans noktasında mutabık olduğunu gözlemledi.
Bullshark gecikme süresi
Bullshark'ın gecikme süresi, DAG'deki sıralı referans noktaları arasındaki döngü sayısına bağlıdır. Bazı senkron versiyonları, asenkron versiyonlara göre daha iyi bir gecikme süresine sahip olsa da, hâlâ en iyi seviyede değildir.
Başlıca iki sorun var:
Ortalama blok gecikmesi: Yaygın durumlarda, tek sayılı tur noktasının sıralanması için üç tur, çift sayılı tur anahtar noktası olmayan noktaların sıralanması için dört tura ihtiyaç vardır.
Arıza Durumu Gecikmesi: Eğer bir lider, belirli bir turda ana noktayı zamanında iletemezse, ana nokta sıralanamaz ve atlanır. Önceki turlarda sıralanmamış olan noktalar, bir sonraki ana noktanın sıralanmasını beklemek zorundadır. Bu, coğrafi çoğaltme ağının performansını önemli ölçüde düşürür.
Shoal çerçevesi
Shoal, Bullshark( veya herhangi bir Narwhal tabanlı BFT protokolü ) aracılığıyla bir üretim hattı ile güçlendirerek, her turda bir referans noktası olmasına izin verir ve DAG'daki tüm referans noktası olmayan düğümlerin gecikme süresini üç tura düşürür. Shoal ayrıca DAG'da sıfır maliyetli bir lider itibarı mekanizması getirir ve hızlı liderlerin seçilmesine öncelik verir.
meydan okuma
DAG protokolü bağlamında, boru hattı ve liderin itibarı zorlu sorunlar olarak görülmektedir:
Önceki üretim hattı, temel Bullshark mantığını değiştirmeye çalıştı, ancak bu esasen imkansız gibi görünüyor.
Liderlerin itibarı DiemBFT'ye dahil edilir, Carousel'de resmi hale getirilir, doğrulayıcıların geçmiş performansına göre gelecekteki liderler dinamik olarak seçilir (Bullshark'taki bağlantı noktası ). Liderlik kimliğindeki farklılıklar güvenliği ihlal etmez, ancak Bullshark'ta tamamen farklı bir sıralama ile sonuçlanabilir.
Bu zorluklar, mevcut üretim ortamındaki Bullshark uygulamalarının bu özellikleri desteklememesine neden oldu.
protokol
Shoal, DAG üzerinde yerel hesaplama yapabilme yeteneğine dayanarak, önceki turların bilgilerini saklama ve yeniden yorumlama yeteneğini gerçekleştirir. Tüm doğrulayıcıların ilk sıralı ankraj noktasına dair içgörüde hemfikir olduğu temelinde, Shoal, birden fazla Bullshark örneğini sıralı olarak birleştirerek boru hattı işlemi gerçekleştirir, bu da:
üretim hattı
V işlevi vardır. Shoal, her bir örneğin ankra noktasının F haritası tarafından önceden belirlendiği Bullshark örneklerini sırayla çalıştırır. Her örnek bir ankra noktası sıralar ve bir sonraki örneğe geçişi tetikler.
Shoal, DAG'ın ilk turunda Bullshark'ın ilk örneğini başlattı ve ilk sıralı ankraj noktasını ( olarak belirlemek için çalıştı, r. turda ) varsayalım. Tüm doğrulayıcılar bu ankraj noktasında hemfikir olduğu için, r+1. turdan itibaren DAG'ı yeniden yorumlamayı kesin olarak kabul edebilirler. Shoal, r+1. turda yeni bir Bullshark örneği başlatır.
İdeal koşullarda, bu Shoal'ın her turda bir ana noktayı sıralamasına olanak tanır. İlk tur ana noktası, ilk örnek tarafından sıralanır, ardından Shoal ikinci turda yeni bir örnek başlatır, o tur ana noktasını sıralar ve bu şekilde devam eder.
Liderlerin itibarı
Bullshark sıralama süreci, ana noktaları atladığında, gecikme süresi artar. Bu durumda, önceki örneğin sıralama ana noktası öncesinde yeni bir örneği başlatmak mümkün olmadığından, hat sıralama tekniği etkisiz kalır. Shoal, her doğrulama düğümüne itibar mekanizması aracılığıyla puan verir, son faaliyet geçmişine göre gelecekte ilgili yavaş liderlerin seçilme olasılığının daha düşük olmasını sağlar. Protokole yanıt veren ve katılan doğrulayıcılar yüksek puan alır, aksi takdirde düşük puan alır.
Her puan güncellemesi olduğunda, yüksek puan liderlerine yönelik olarak, turlar ile liderler arasındaki önceden tanımlanmış F haritasını kesin bir şekilde yeniden hesaplayın. Doğrulayıcıların yeni harita üzerinde uzlaşabilmeleri için, puan üzerinde uzlaşmaları ve böylece puanların türetildiği tarih üzerinde de uzlaşmaları gerekir.
Shoal'da, akış hatları ve liderlik itibarı doğal olarak bir araya gelir, çünkü her ikisi de aynı temel teknolojiyi kullanır: ilk sıralı ankra noktası üzerinde uzlaşmaya varıldıktan sonra DAG'ı yeniden yorumlamak.
Tek fark, r. tur sıralama sabit noktasının ardından, doğrulayıcıların yalnızca r. tur sıralı sabit noktaların nedensel geçmişine dayanarak, r+1. turdan itibaren yeni haritalama F'yi hesaplamasıdır. Ardından doğrulama düğümleri, r+1. turdan itibaren güncellenmiş sabit nokta seçim fonksiyonu F'yi kullanarak yeni Bullshark örneğini gerçekleştirir.
zaman aşımını ortadan kaldır
Zaman aşımı, tüm lider tabanlı belirleyici kısmi senkronizasyon BFT uygulamalarında kritik bir rol oynamaktadır. Ancak, bunların getirdiği karmaşıklık, yönetilmesi ve gözlemlenmesi gereken iç durum sayısını artırmakta, hata ayıklama karmaşıklığını artırmakta ve daha fazla gözlemlenebilirlik tekniği gerektirmektedir.
Zaman aşımı da gecikme süresini önemli ölçüde artırır, çünkü uygun şekilde yapılandırılmış zaman aşımının önemi büyüktür, genellikle dinamik olarak ayarlanması gerekir ve ortam ( ağına ) büyük ölçüde bağımlıdır. Protokol, bir sonraki lider seçilmeden önce arızalı lider için tam zaman aşımı gecikme cezası ödeyecektir. Bu nedenle, zaman aşımı ayarları çok temkinli olmamalıdır, ancak çok kısa olursa, protokol iyi liderleri atlayabilir.
Ne yazık ki, liderlerin protokolü (, Hotstuff ve Jolteon) gibi, her seferinde liderin arızalanması durumunda protokolün ilerlemesini sağlamak için temelde bir gecikme süresi gerektirir. Gecikme süresi olmadan, çöküşte olan bir lider bile protokolü sonsuza dek durdurabilir. Asenkron dönemlerde arızalı ve yavaş liderleri ayırt edemediğinden, gecikme süresi doğrulama düğümlerinin hiç bir konsensüs aktifliği olmadan tüm liderleri döndürmesine neden olabilir.
Bullshark'ta, DAG yapısı için zaman aşımı kullanılır, böylece senkronizasyon sırasında dürüst liderlerin, sıralama için DAG'a referans noktalarını yeterince hızlı eklemesini sağlar.
Shoal, DAG yapısının ağ hızını tahmin eden bir "saat" sağladığını gözlemledi. Duraksama olmaksızın, n-f kadar dürüst doğrulayıcı DAG'a tepe eklemeye devam ettikçe, tur devam edecektir. Bullshark, liderlik sorunları nedeniyle ( ağ hızında sıralama yapamasa da ), DAG hala ağ hızında büyümektedir, bazı liderlerin sorunlu veya ağın asenkron olmasına rağmen. Sonunda, hatasız liderler yeterince hızlı bir şekilde referans noktalarını yayınladığında, referans noktasının tüm nedensel tarihi sıralanacaktır.
Shoal'da, zaman aşımını önlemek liderlerin itibarı ile yakından ilişkilidir. Yavaş liderler için tekrar beklemek, gecikmeyi artırır ve liderlerin itibar mekanizması, yavaş doğrulayıcıların lider olarak seçilmesini dışlar. Bu şekilde, sistem hızlı doğrulama düğümlerini kullanarak tüm gerçek senaryolarda ağ hızıyla çalışır.
Dikkat edilmesi gereken, FLP olasılık sonuçlarının, belirli bir uzlaşma protokolünün zaman aşımını önleyemeyeceğini göstermesidir. Shoal bu sonucu atlatamaz çünkü tüm sabitlerin sıralanmasını engelleyebilecek teorik olarak düşmanca olay zaman çizelgeleri vardır. Aksine, yapılandırılabilir sürekli atlama noktası sayısından sonra, Shoal zaman aşımına geri dönecektir. Aslında, bu durum son derece olası değildir.
genel yanıt verme
Hotstuff makalesi, iyimser yanıt kavramını yaygınlaştırdı; resmi olarak tanımlanmamış olsa da, sezgisel olarak, protokolün iyi koşullar altında ( hızlı lider ve senkronize ağ ) altında ağ hızıyla çalışabileceği anlamına gelir.
Shoal, genel yanıt verebilirlik adı verilen daha iyi bir özellik sunar. Özellikle, Hotstuff ile karşılaştırıldığında, liderin yapılandırılabilir sürekli turlar içinde başarısız olması veya ağın asenkron dönemler yaşaması durumunda, Shoal ağ hızında çalışmaya devam eder.
Genel yanıt verme, asenkron dönemlerde ve liderin arızalandığı durumlarda katı bir şekilde daha iyi bir ilerleme garantisi sunar. Yavaş liderle senkronize olurken, bu özellikler kıyaslanamaz çünkü liderin ne kadar yavaş olduğuna bağlıdır. Ancak, liderin itibarı göz önünde bulundurulduğunda, Shoal'deki yavaş liderlerin nadiren ortaya çıkması gerekir.
Değerlendirme
Aptos, Narwhal üzerinde Quorum Store'ı gerçekleştirerek Bullshark ve Shoal'ı hayata geçirdi. Aşağıda bazı değerlendirme öne çıkan noktalar sunulmaktadır:
Öncelikle,演