Matrice delle funzionalità sgcQUIC — QUIC, HTTP/3, WebTransport | eSeGeCe

sgcQUIC Matrice delle funzionalità

Tutto ciò che fa sgcQUIC, mappato tra i quattro componenti e gli RFC che implementano. La coppia QUIC pura offre stream e datagrammi; la coppia HTTP/3 aggiunge richiesta/risposta, QPACK e WebTransport. Ogni funzionalità si comporta allo stesso modo in Delphi, C++ Builder e .NET, e ogni licenza include il codice sorgente completo. Clicca su un componente per la sua pagina dedicata con utilizzo ed esempi.

HTTP/3

RFC 9114 + QPACK

WebTransport

RFC 9220

Standard e piattaforme

TLS 1.3 / OpenSSL 3.5

Quattro componenti a palette

Due livelli: trasporto QUIC puro, e richiesta/risposta HTTP/3 costruita sopra di esso.

ComponenteClasseFamigliaDescrizione
Client QUICTsgcQUICClientQUICClient di trasporto QUIC puro: stream e datagrammi, 0-RTT, migrazione della connessione (RFC 9000).
Server QUICTsgcQUICServerQUICServer di trasporto QUIC puro: si lega a una porta UDP, termina TLS 1.3, genera eventi per connessione e per stream.
Client HTTP/3TsgcHTTP3ClientHTTP/3Client HTTP/3 con QPACK, Alt-Svc, server push, Extended CONNECT e WebTransport (RFC 9114).
Server HTTP/3TsgcHTTP3ServerHTTP/3Server HTTP/3: serve le richieste su QUIC, server push, sessioni WebTransport e datagrammi.

Trasporto QUIC (RFC 9000)

Il livello di trasporto, esposto direttamente per costruire il tuo protocollo sopra QUIC.

FunzionalitàClientServerNote
Handshake unico combinato di trasporto + TLS 1.3Un solo invio completa la connessione; nessun round trip TLS separato.
Stream bidirezionali indipendentiUn pacchetto perso blocca solo gli stream i cui dati trasportava.
Stream unidirezionaliOpenStream(aUnidirectional := True) sul motore builtin.
Più stream per connessioneEnableMultiStream / OpenStream sul motore qmBuiltin.
Ripresa 0-RTTUna sessione ripresa può trasportare dati anticipati nel primo invio.
Migrazione della connessioneBasata su connection ID; sopravvive al cambio di rete del client.
Invio / ricezione byteWriteDataWriteData(connection, …)Payload String o TBytes su uno stream.
Eventi del ciclo di vita della connessioneOnQUICConnect / OnQUICDisconnectOnQUICConnect / OnQUICDisconnectPiù OnQUICException per gli errori di trasporto.
Evento dati stream in ingressoOnQUICStreamDataOnQUICStreamData / OnQUICDataSi attiva all'arrivo dei byte dello stream.

HTTP/3 (RFC 9114) e QPACK (RFC 9204)

Semantica HTTP su QUIC, con i meccanismi specifici di HTTP/3 esposti come metodi ed eventi.

FunzionalitàClientServerNote
Metodi di richiestaGET, HEAD, POST, PUT, DELETE, PATCH, OPTIONS, TRACE, CONNECT, QUERYOgnuno una chiamata bloccante sul client, la maggior parte con una variante asincrona.
Compressione delle intestazioni QPACKRFC 9204, con aggiornamenti della tabella dinamica su stream dedicati di encoder/decoder.
Discovery Alt-SvcOnAltSvcannunciaRFC 7838; il client analizza l'intestazione e lascia che la tua app decida quando passare.
Server pushSetMaxPushId / OnPushPromise / OnPushpush da OnH3RequestIl client annuncia un limite e può rifiutare le risposte inviate in push.
Tunnel Extended CONNECTExtendedConnect / TunnelSend / OnTunnelDataOnH3TunnelData / TunnelSendRFC 9220 tunnelizza un altro protocollo attraverso uno stream di richiesta.
Evento richiestaOnH3RequestSi attiva per ogni richiesta; l'applicazione compila la risposta.
Chiusura controllataOnGoAwayGOAWAYSegnalazione di chiusura connessione di RFC 9114.
Certificato / chiaveQUICOptions.SSLOptions.CertFile / KeyFileCertificato PEM e chiave privata per il listener.

WebTransport (RFC 9220)

Sessioni negoziate tramite Extended CONNECT che consegnano direttamente all'applicazione stream QUIC.

FunzionalitàClientServerNote
Stabilire una sessioneWebTransportConnectOnWebTransportSessionAvviata tramite una richiesta Extended CONNECT di HTTP/3.
Stream bidirezionaliTraffico bidirezionale a bassa latenza sul motore builtin.
DatagrammiSendDatagramDatagrammi non affidabili insieme agli stream della sessione.
Richiede il motore builtinUna sessione necessita di più stream su una connessione (qmBuiltin).

Standard, TLS e piattaforme

Uno stack basato su standard sul motore QUIC nativo di OpenSSL 3.5.

AreaDettaglio
RFC 9000Trasporto QUIC — stream, connection ID, migrazione, handshake combinato di trasporto + TLS.
RFC 9114HTTP/3 — semantica HTTP mappata sugli stream QUIC.
RFC 9204QPACK — compressione delle intestazioni per HTTP/3.
RFC 9220Avvio di WebTransport su HTTP/3 (Extended CONNECT).
RFC 7838Alt-Svc — disponibilità di HTTP/3 annunciata dal server.
TLSTLS 1.3, integrato nell'handshake QUIC.
Motore crittograficoQUIC nativo in OpenSSL 3.5 (qmBuiltin, multi-stream). Esiste un percorso qmCustom per build in stile quictls, limitato a un singolo stream per connessione.
PiattaformeWin32, Win64 e Linux64, oltre a macOS, iOS e Android dove il motore QUIC di OpenSSL 3.5 è disponibile.
LinguaggiDelphi e C++ Builder (dalla 7 alla 13), e .NET con le classi Tsgc dallo stesso nome.
La scelta più conveniente: All-AccessTutti i prodotti eSeGeCe, con Supporto Premium incluso, a partire da €1,059/anno.
Vedi i prezzi All-Access

Sviluppa con sgcQUIC

Scarica la versione di prova gratuita e inizia a inviare traffico su QUIC e HTTP/3 in Delphi, C++ Builder o .NET.