Libreria QUIC e HTTP/3 per Delphi e C++ Builder | sgcQUIC

sgcQUIC — QUIC e HTTP/3 per Delphi, C++ Builder e .NET

Uno stack completo QUIC e HTTP/3 per Delphi, C++ Builder e .NET. sgcQUIC offre quattro componenti a palette — un client e un server di trasporto QUIC puro (RFC 9000) più un client e un server HTTP/3 (RFC 9114) — costruiti sul motore QUIC nativo di OpenSSL 3.5. Compressione delle intestazioni QPACK, discovery Alt-Svc, 0-RTT, migrazione della connessione e WebTransport sono inclusi di serie, e la stessa API funziona in Object Pascal e C#.

Risposta rapida: sì, Delphi può parlare HTTP/3. sgcQUIC è la libreria QUIC e HTTP/3 per Delphi, C++ Builder e .NET e, ad agosto 2026, è l'unica che offre sia un client sia un server per entrambi i protocolli. Si installa come quattro componenti a palette sopra il motore QUIC nativo di OpenSSL 3.5, con codice sorgente completo.

Trasporto QUIC (RFC 9000)
HTTP/3 (RFC 9114) + QPACK
QUIC nativo OpenSSL 3.5
Delphi / C++ Builder / .NET
WebTransport (RFC 9220)

Le tue opzioni per QUIC e HTTP/3 in Delphi

HTTP/3 è uno standard concluso che trasporta una quota rilevante del traffico web mondiale, e tutti i principali browser e CDN lo parlano. L'ecosistema Object Pascal è stato più lento ad adeguarsi. Ecco a che punto è ciascuna libreria di rete consolidata per Delphi su QUIC e HTTP/3, secondo la documentazione del rispettivo produttore.

Libreria QUIC (RFC 9000) HTTP/3 (RFC 9114) Cosa documenta il produttore
sgcQUIC Client e server Client e server Quattro componenti sul motore QUIC builtin di OpenSSL 3.5, con QPACK, Alt-Svc, 0-RTT, migrazione della connessione e WebTransport.
Indy No No Un framework di socket TCP e UDP con i classici protocolli di alto livello. QUIC non fa parte della libreria.
ICS (Overbyte) No No La pagina di download di ICS lo afferma chiaramente: “ICS non ha in programma il supporto a QUIC.”
TMS Sparkle / FNC WebSocket No No Un client HTTP e HTTPS più un server sullo stack http.sys. Né QUIC né HTTP/3 sono documentati.
/n software IPWorks No No Un'ampia suite che copre HTTP, WebSocket, gRPC, FTP e altro ancora. Né QUIC né HTTP/3 sono documentati.
Devart SecureBridge No No SSH, SFTP, TLS, WebSocket e SignalR, tutti su TCP. Né QUIC né HTTP/3 sono documentati.
mORMot 2 No No Il manutentore ha dichiarato che HTTP/2 non è supportato né previsto e che il framework si affida invece a REST su WebSocket.

Raccolto dalla documentazione dei produttori ad agosto 2026: pagina di download di ICS, TMS Sparkle, IPWorks, Devart SecureBridge, mORMot 2, Indy. Se un produttore rilascerà QUIC dopo questa data, questa tabella verrà aggiornata.

La stessa semantica HTTP, un nuovo trasporto

HTTP/3 conserva i metodi, i codici di stato e le intestazioni che già conosci e sostituisce TCP con QUIC, un trasporto basato su UDP con TLS 1.3 integrato. sgcQUIC lo gestisce tramite il supporto QUIC nativo di OpenSSL 3.5, così ottieni un trasporto moderno da Delphi, C++ Builder o .NET senza una libreria separata.

Un solo handshake, senza head-of-line blocking

QUIC (RFC 9000) combina in un unico invio l'handshake di trasporto e quello TLS 1.3 ed elimina l'head-of-line blocking a livello di trasporto — un pacchetto perso blocca solo gli stream i cui dati trasportava, non l'intera connessione.

Basato sul QUIC nativo di OpenSSL 3.5

Il motore viene rilevato automaticamente al caricamento di OpenSSL. Con i binari OpenSSL 3.5 forniti ottieni il motore qmBuiltin, che supporta più stream per connessione ed è il motore attorno al quale sono costruiti i componenti.

Compressione delle intestazioni QPACK

HTTP/3 comprime le intestazioni con QPACK (RFC 9204), il sostituto di HPACK per HTTP/3, progettato per la consegna fuori ordine di QUIC, con aggiornamenti della tabella dinamica trasportati su stream dedicati di encoder e decoder.

Migrazione della connessione

Le connessioni QUIC sono identificate da un connection ID anziché dalla quadrupla di indirizzi, così una sessione sopravvive al cambio di rete del client — una connessione può seguire un dispositivo dal Wi-Fi ai dati mobili senza un nuovo handshake.

0-RTT e stream multipli

Una nuova connessione si completa in un solo round trip e una sessione ripresa può trasportare dati 0-RTT nel primo invio. Sul motore builtin, EnableMultiStream e OpenStream mettono più stream QUIC indipendenti su un'unica connessione.

Sessioni WebTransport

WebTransport (RFC 9220) viene negoziato tramite Extended CONNECT e consegna direttamente all'applicazione stream QUIC, pensato per traffico bidirezionale a bassa latenza sopra il motore builtin.

Quattro componenti, due livelli

Una coppia di trasporto QUIC puro per stream e datagrammi, e una coppia HTTP/3 che parla richiesta/risposta sullo stesso motore. Ognuno rimanda alla propria pagina con esempi Delphi, C++ Builder e .NET.

TsgcQUICClient

Client di trasporto QUIC puro. Apre una connessione QUIC, invia e riceve byte su uno o più stream (RFC 9000), con 0-RTT e migrazione della connessione — QUIC senza semantica HTTP.

Vedi il componente →

TsgcQUICServer

Server di trasporto QUIC puro. Si lega a una porta UDP, termina TLS 1.3 e genera un evento per ogni connessione e stream QUIC, così puoi costruire il tuo protocollo sopra QUIC.

Vedi il componente →

TsgcHTTP3Client

Client HTTP/3 (RFC 9114). Tutti i verbi come chiamate bloccanti o asincrone, compressione QPACK, discovery Alt-Svc, server push, tunnel Extended CONNECT e sessioni WebTransport.

Vedi il componente →

TsgcHTTP3Server

Server HTTP/3. Serve le richieste su QUIC, discende da TsgcQUICServer, genera un evento per richiesta e può inviare push di risposte, aprire sessioni WebTransport e inviare datagrammi.

Vedi il componente →

Vedi la matrice completa delle funzionalità →

Una richiesta GET su HTTP/3

Connettiti a un host e una porta, poi invia le richieste. La porta predefinita è 443. La stessa API in Delphi, C++ Builder e .NET.

uses
  sgcHTTP3_Client;

var
  oClient: TsgcHTTP3Client;
  vBody: string;
begin
  oClient := TsgcHTTP3Client.Create(nil);
  oClient.OnResponse := OnResponseHandler;
  oClient.OnAltSvc   := OnAltSvcHandler;

  oClient.Connect('www.example.com', 443);
  vBody := oClient.Get('https://www.example.com/');   // request over QUIC
  oClient.Disconnect;
end;
// includes: sgcHTTP3_Client.hpp

TsgcHTTP3Client *oClient = new TsgcHTTP3Client(NULL);
oClient->OnResponse = OnResponseHandler;
oClient->OnAltSvc   = OnAltSvcHandler;

oClient->Connect("www.example.com", 443);
String vBody = oClient->Get("https://www.example.com/");   // request over QUIC
oClient->Disconnect();
using esegece.sgcWebSockets;

var oClient = new TsgcHTTP3Client();
oClient.OnResponse += OnResponseHandler;
oClient.OnAltSvc   += OnAltSvcHandler;

oClient.Connect("www.example.com", 443);
var vBody = oClient.Get("https://www.example.com/");   // request over QUIC
oClient.Disconnect();

HTTP/3, HTTP/2, WebSocket o QUIC puro?

QUIC non sostituisce tutto ciò che già usi. Vince in condizioni specifiche e ti costa un percorso UDP attraverso la rete. Usa questa guida per decidere di quale trasporto ha davvero bisogno la tua funzionalità.

Scegli HTTP/3

Il tuo client si trova su una rete mobile o soggetta a perdita di pacchetti, scarichi molte risorse contemporaneamente oppure l'endpoint annuncia già HTTP/3 tramite Alt-Svc. HTTP/3 elimina l'head-of-line blocking a livello di trasporto, così un pacchetto perso non blocca più tutte le altre richieste in corso. Usa TsgcHTTP3Client.

Resta su HTTP/2

Il tuo traffico viaggia dentro un datacenter o su un collegamento affidabile, oppure un proxy o un firewall lungo il percorso blocca UDP. HTTP/2 ti offre già multiplexing e compressione delle intestazioni su TCP, ed è molto più probabile che attraversi indenne una rete aziendale.

Client HTTP/2 per Delphi →

Resta su WebSocket

Ti serve un push simmetrico, orientato ai messaggi e di lunga durata tra client e server, e ti serve che funzioni attraverso qualunque proxy esistente oggi. WebSocket su TLS resta il trasporto bidirezionale più compatibile in produzione.

sgcWebSockets →

Scendi al QUIC puro

Trasporti un tuo protocollo e la semantica HTTP è solo d'intralcio, per esempio media, telemetria o stato di gioco. TsgcQUICClient e TsgcQUICServer ti consegnano direttamente stream e datagrammi QUIC, con TLS 1.3 e migrazione della connessione già gestiti.

TsgcQUICClient →

Guida completa alla scelta del trasporto real-time →

Gli RFC implementati da sgcQUIC

Uno stack basato su standard, non un trasporto proprietario.

RFC 9000 — QUIC

Il trasporto QUIC: un unico handshake combinato di trasporto + TLS 1.3, stream indipendenti, connection ID e migrazione. Esposto direttamente tramite TsgcQUICClient e TsgcQUICServer.

RFC 9114 — HTTP/3

Semantica HTTP su QUIC: i metodi, i codici di stato e le intestazioni che conosci, mappati sugli stream QUIC. Implementato da TsgcHTTP3Client e TsgcHTTP3Server.

RFC 9204 — QPACK

Compressione delle intestazioni per HTTP/3, progettata per la consegna fuori ordine di QUIC, con una tabella dinamica sincronizzata su stream dedicati di encoder e decoder.

RFC 9220 — WebTransport

Avvio di WebTransport su HTTP/3 con Extended CONNECT, che consegna all'applicazione stream QUIC per traffico bidirezionale a bassa latenza.

Un componente aggiuntivo a sgcWebSockets

sgcQUIC è concesso in licenza come componente aggiuntivo. Tutte le licenze includono codice sorgente completo, 1 anno di aggiornamenti e uno sconto di rinnovo del 70%.

sgcQUIC

€149

Licenze Single, Team e Site disponibili. Codice sorgente completo incluso.

  • TsgcQUICClient & TsgcQUICServer
  • TsgcHTTP3Client & TsgcHTTP3Server
  • Delphi, C++ Builder e .NET
  • Codice sorgente completo
  • 1 anno di aggiornamenti

★ Richiede sgcWebSockets

sgcQUIC richiede sgcWebSockets Enterprise.

Vedi prezzi e ordina

QUIC e HTTP/3 in Delphi, le domande frequenti

Le domande che gli sviluppatori si pongono prima di aggiungere HTTP/3 a un'applicazione Delphi, C++ Builder o .NET.

Non di serie. La RTL di Delphi e Indy sono basate su TCP e non hanno un trasporto QUIC, e ICS dichiara di non avere in programma il supporto a QUIC. sgcQUIC lo aggiunge: installa i componenti e TsgcHTTP3Client invia richieste HTTP/3 su QUIC, mentre TsgcHTTP3Server vi risponde. Si basa sul motore QUIC nativo di OpenSSL 3.5, quindi non c'è nessuna libreria C separata da collegare o distribuire.
Sì. sgcQUIC implementa RFC 9000 direttamente tramite TsgcQUICClient e TsgcQUICServer, così puoi trasportare il tuo protocollo su stream e datagrammi QUIC senza semantica HTTP. Ad agosto 2026 nessun'altra libreria di rete per Delphi documenta il supporto a QUIC, quindi se ti serve il trasporto puro in Object Pascal questa è l'opzione.
Sì. TsgcHTTP3Server discende da TsgcQUICServer, si lega a una porta UDP, termina TLS 1.3 e genera un evento per ogni richiesta. Può inviare risposte in push, aprire sessioni WebTransport e inviare datagrammi. La maggior parte degli stack QUIC disponibili per altri linguaggi è solo client oppure richiede un reverse proxy davanti, quindi un server HTTP/3 nativo in-process è raro al di fuori di Go e Rust.
sgcQUIC segue la matrice di supporto di sgcWebSockets, da Delphi 7 a Delphi 13 Florence e le corrispondenti versioni di C++ Builder, più un'implementazione .NET con la stessa API. L'installer di prova è specifico per versione di IDE e contiene già i componenti QUIC e HTTP/3, quindi non serve un download separato.
Sì, OpenSSL 3.5 o successivo. QUIC è arrivato come motore nativo in OpenSSL 3.5 e sgcQUIC lo rileva automaticamente al caricamento di OpenSSL. Con i binari 3.5 forniti ottieni il motore qmBuiltin, che supporta più stream indipendenti su un'unica connessione ed è quello attorno al quale sono progettati i componenti. Esiste anche un percorso qmCustom per build in stile quictls, limitato a un solo stream per connessione.
Win32, Win64 e Linux64 sono le piattaforme principali, più macOS, iOS e Android ovunque sia disponibile il motore QUIC di OpenSSL 3.5. Ricorda che QUIC viaggia su UDP, normalmente sulla porta 443, quindi il percorso tra client e server deve consentire UDP. Alcune reti aziendali lo bloccano ancora, ed è per questo che i client HTTP/3 ripiegano su HTTP/2.
WebTransport (RFC 9220) è il successore moderno di WebSocket per il traffico dal browser al server. Viene negoziato su HTTP/3 tramite Extended CONNECT e consegna direttamente all'applicazione stream QUIC e datagrammi non affidabili, il che si adatta ai carichi bidirezionali a bassa latenza. sgcQUIC supporta le sessioni WebTransport sul motore builtin, sia lato client sia lato server.
sgcQUIC è un componente aggiuntivo di sgcWebSockets Enterprise ed è incluso anche nel bundle All-Access. Sono disponibili licenze Single, Team e Site, ciascuna con codice sorgente completo e un anno di aggiornamenti. Scarica la versione di prova per valutare tutti e quattro i componenti nel tuo progetto prima dell'acquisto.
3,000+Developers
20+Years
761+Components
30+API Integrations
5Platforms
Garanzia soddisfatti o rimborsati di 30 giorniNon sei soddisfatto? Richiedi un rimborso completo entro 30 giorni dall'acquisto. Vedi la politica di rimborso

Distribuisci QUIC e HTTP/3 senza uscire dal tuo IDE

Aggiungi il trasporto verso cui si sta muovendo il web moderno — alla tua applicazione Delphi, C++ Builder o .NET, con il linguaggio che già usi.

Altri prodotti eSeGeCe

Abbina sgcQUIC alle nostre altre librerie di componenti per Delphi, C++ Builder e .NET.

sgcWebSockets

Componenti Enterprise per WebSocket, HTTP/2, MQTT, AMQP, WebRTC e AI/LLM. sgcQUIC è un componente aggiuntivo a sgcWebSockets Enterprise.

Scopri di più →

sgcHTML

89 componenti HTML/UI server-side data-aware per Delphi, C++ Builder e .NET, con Bootstrap 5 e htmx.

Scopri di più →

sgcSign

Firme digitali Enterprise — XAdES, PAdES, CAdES e ASiC con 10 provider di chiavi e 21 profili per paese UE.

Scopri di più →

sgcOpenAPI

Parser OpenAPI 3.0 e generatore di SDK. Trasforma qualsiasi specifica OpenAPI in un client Delphi fortemente tipizzato in pochi secondi.

Scopri di più →

sgcBiometrics

Componenti nativi per Windows Hello, impronta digitale e Windows Biometric Framework per Delphi e C++ Builder.

Scopri di più →

sgcIndy

Componenti Indy TCP/IP aggiornati con TLS moderno, IPv6 e HTTP/2, da Delphi 7 a 13.

Scopri di più →