Caricamento...
it

Firedancer presenta fd_quic: Un'implementazione ad alte prestazioni dei protocolli di rete QUIC e Solana per l'ingest delle transazioni

Firedancer, un client validatore indipendente per Solana costruito da Jump, ha recentemente annunciato la sua ultima pietra miliare tecnica, fd_quic, un'implementazione ad alte prestazioni dei protocolli di rete QUIC e Solana per l'inserimento delle transazioni.

Firedancer, un client validatore indipendente per Solana costruito da Jump, ha recentemente annunciato la sua ultima pietra miliare tecnica, fd_quic, un'implementazione ad alte prestazioni dei protocolli QUIC e Solana per l'ingestione delle transazioni. Questo passo avanti è accompagnato da significativi miglioramenti in termini di scalabilità e robustezza, rendendo la rete Solana più resistente agli attacchi di spam.

Protocollo QUIC e Solana

La rete Solana utilizza il protocollo QUIC per vari scopi, tra cui la propagazione delle transazioni. Lo stack di rete personalizzato di Firedancer'è stato progettato da zero per sfruttare il receive-side scaling (RSS), una forma di bilanciamento del carico accelerata dall'hardware. Ciò consente un'architettura parallela shared-nothing, in cui ogni core della CPU gestisce una parte del traffico in entrata con un overhead minimo.

RSS offre un migliore throughput e semplifica l'implementazione rispetto al bilanciamento del carico basato su software. Elimina la necessità di complessi scheduler globali, runtime asincroni, lock e atomici. La decisione di Firedancer'di bypassare lo stack di rete di Linux utilizzando XDP/AF_XDP, recenti tecnologie del kernel, ottimizza ulteriormente le prestazioni.

La complessità di QUIC

QUIC'le 151 pagine di specifiche comportano una notevole complessità. Non riuscendo a trovare una libreria C esistente che soddisfacesse i requisiti di licenza, prestazioni e affidabilità, Firedancer ne ha costruita una propria. La loro implementazione, fd_quic, vanta strutture dati e algoritmi ottimizzati, con allocazioni di heap (quasi) nulle durante la gestione del traffico, assicurando che il validatore non esaurisca la memoria.

Live Demo Highlights

Firedancer ha celebrato il suo viaggio di mesi per rendere QUIC veloce con una demo dal vivo che mostra tre obiettivi di progettazione: Compatibilità, prestazioni e scalabilità.

  • Compatibilità: Uno strumento di spam costruito da moduli del validatore di Solana Labs ha inviato numerose transazioni al validatore di Firedancer tramite QUIC, dimostrando che la loro implementazione di QUIC era corretta.
  • Performance: Un test ha superato i limiti di un singolo core della CPU che esegue fd_quic utilizzando più spammer. Il risultato è stato di 5,8 Gbps o 270k TPS, raggiungendo 1,4 milioni di TPS con piccole transazioni. Per generare questa velocità sono stati necessari otto core di CPU.
  • Scalabilità: Lo stesso test delle prestazioni è stato eseguito con RSS abilitato su un'interfaccia di rete da 25 Gbps e fd_quic in esecuzione su quattro core della CPU. Durante il test, un server Firedancer QUIC in esecuzione su soli quattro core della CPU su un singolo server ha ingerito in modo affidabile 21,8 Gbps di transazioni in entrata (circa 1,08 milioni di TPS con dimensioni di txn di ~1kB) dai clienti di Solana Labs. Questo test è stato limitato dall'hardware di rete disponibile (un collegamento a 25 Gbps), ma Firedancer invita gli utenti a spingersi oltre con la documentazione disponibile.

    Come il lavoro su altri componenti continua, la comunità blockchain attende con ansia i futuri sviluppi di Firedancer'

    .
Solana Weekly Newsletter

0

Notizie correlate