NotizieCryptoNeoFS S3 Gateway v0.45.1 Ottimizza le Prestazioni di Lettura e Scrittura Tramite SDK RC21

NeoFS S3 Gateway v0.45.1 Ottimizza le Prestazioni di Lettura e Scrittura Tramite SDK RC21

Autore: CryptoNewsNet·

Punti chiave

  • NeoFS S3 Gateway v0.45.1 introduce un'ottimizzazione del percorso di scrittura che rimuove almeno una copia intermedia dei dati durante le operazioni PUT, riducendo l'allocazione di memoria e il carico della CPU.
  • Le richieste GET range ora recuperano sia le intestazioni degli oggetti che i dati del payload in una singola chiamata di rete invece di richiedere un round-trip separato, a vantaggio dello streaming multimediale e dei flussi di lavoro di download parziale.
  • Le Liste di Controllo degli Accessi Estese sono applicate simultaneamente alla creazione dei container, eliminando una richiesta di follow-up e chiudendo una finestra in cui i container appena creati potevano esistere senza la loro policy di accesso designata.
  • Una correzione dei metadati filtra gli attributi di sistema interni di NeoFS dalle risposte GetObject, garantendo che vengano restituiti solo i metadati definiti dall'utente e riducendo il rischio di perdita di informazioni in implementazioni multi-tenant.
  • La patch include un aggiornamento della dipendenza gRPC alla versione v1.82.1 che mitiga gli attacchi denial-of-service HTTP/2 frame flood e risolve le vulnerabilità di bypass dell'autorizzazione nel xDS permission matching.
NeoFS S3 Gateway v0.45.1 Ottimizza le Prestazioni di Lettura e Scrittura Tramite SDK RC21

Neo SPCC ha rilasciato NeoFS S3 Gateway v0.45.1 il 4 agosto. Questo aggiornamento patch introduce tre ottimizzazioni delle prestazioni e una correzione dei metadati per l'interfaccia compatibile con S3 della rete di archiviazione decentralizzata NeoFS. Poiché l'API Amazon S3 è diventata lo standard de facto per l'object storage sia sulle piattaforme centralizzate che decentralizzate, i miglioramenti alla velocità effettiva e alla correttezza del gateway S3 influiscono direttamente sulla facilità con cui gli sviluppatori possono migrare o creare applicazioni su NeoFS utilizzando strumenti familiari.

Due di questi miglioramenti delle prestazioni sono alimentati dal NeoFS SDK Go RC21, rilasciato pochi giorni prima insieme a NeoFS Node v0.55.0.

Basandosi sulla importante release di luglio di S3 Gateway v0.45.0 — che ha introdotto la configurazione degli namespace, la semplificazione delle regole EACL e la rimozione del supporto legacy per le access box — questa nuova patch non richiede alcuna migrazione per gli utenti esistenti di v0.45.0.

Ottimizzazioni del Write Buffering e delle Richieste GET Range

La prima ottimizzazione implementa l'interfaccia io.ReaderFrom per il writer del payload degli oggetti, una funzionalità introdotta in SDK RC21. Rimuovendo almeno una copia intermedia dei dati durante le operazioni PUT, questo aggiornamento riduce l'allocazione di memoria e il carico della CPU sul percorso di scrittura (#1320).

La seconda ottimizzazione migliora le richieste GET range. In precedenza, queste richieste richiedevano un round-trip separato per recuperare l'intestazione dell'oggetto prima di recuperare l'intervallo di dati specificato. Sfruttando i parametri di intervallo di byte di tipo HTTP di SDK RC21, il gateway può ora recuperare sia l'intestazione che il payload range in una singola chiamata di rete (#1319). Questo miglioramento avvantaggia significativamente lo streaming multimediale, i download parziali e i flussi di lavoro di caricamento multipart che dipendono dalle letture range S3.

Liste di Controllo degli Accessi Estese Applicate Durante la Creazione dei Container

Le Liste di Controllo degli Accessi Estese (EACL) sono ora applicate simultaneamente alla creazione del container in una singola chiamata di rete, eliminando la necessità di una richiesta di follow-up (#1304). Questa modifica riduce la latenza durante la creazione dei bucket S3 e chiude una breve finestra di vulnerabilità in cui un container appena creato poteva esistere senza la sua policy di accesso designata.

Correzione degli Attributi di Sistema

Una cruciale correzione filtra gli attributi di sistema interni di NeoFS dalle risposte dei metadati GetObject (#1321). Nelle versioni precedenti, questi attributi a livello di protocollo erano inclusi insieme ai metadati definiti dall'utente nelle risposte S3, esponendo inavvertitamente i dettagli di implementazione interni ai client. La correzione garantisce che vengano restituiti solo i metadati definiti dall'utente, allineando il sistema al comportamento previsto dell'API S3 e riducendo il rischio di perdita di informazioni in implementazioni multi-tenant.

Aggiornamenti delle Dipendenze

Insieme all'aggiornamento di SDK RC21, la versione 0.45.1 incorpora vari aggiornamenti di sicurezza e manutenzione, tra cui:

  • golang.org/x/crypto v0.52.0
  • golang.org/x/net v0.55.0
  • google.golang.org/grpc v1.82.1

L'aggiornamento gRPC affronta specificamente le mitigazioni per gli attacchi denial-of-service HTTP/2 frame flood e risolve gli scenari di bypass dell'autorizzazione riscontrati nel xDS permission matching. Queste classi di vulnerabilità HTTP/2 hanno subito sfruttamento attivo nell'ampio ecosistema infrastrutturale, rendendo gli aggiornamenti tempestivi delle dipendenze una pratica di sicurezza di base per i gateway di archiviazione esposti a client non attendibili.

Le note di rilascio complete sono disponibili qui: https://github.com/nspcc-dev/neofs-s3-gw/releases/tag/v0.45.1