Matrice des fonctionnalités sgcQUIC — QUIC, HTTP/3, WebTransport | eSeGeCe

sgcQUIC Matrice des fonctionnalités

Tout ce que fait sgcQUIC, réparti entre les quatre composants et les RFC qu'ils implémentent. La paire QUIC pure t'offre les streams et les datagrammes ; la paire HTTP/3 ajoute la requête/réponse, QPACK et WebTransport. Chaque capacité fonctionne de la même façon en Delphi, C++ Builder et .NET, et chaque licence inclut le code source complet. Clique sur un composant pour accéder à sa propre page avec exemples d'utilisation.

HTTP/3

RFC 9114 + QPACK

WebTransport

RFC 9220

Standards & plateformes

TLS 1.3 / OpenSSL 3.5

Quatre composants de palette

Deux couches : transport QUIC pur, et requête/réponse HTTP/3 construite dessus.

ComposantClasseFamilleDescription
Client QUICTsgcQUICClientQUICClient de transport QUIC pur : streams et datagrammes, 0-RTT, migration de connexion (RFC 9000).
Serveur QUICTsgcQUICServerQUICServeur de transport QUIC pur : se lie à un port UDP, termine TLS 1.3, déclenche des événements par connexion et par stream.
Client HTTP/3TsgcHTTP3ClientHTTP/3Client HTTP/3 avec QPACK, Alt-Svc, server push, Extended CONNECT et WebTransport (RFC 9114).
Serveur HTTP/3TsgcHTTP3ServerHTTP/3Serveur HTTP/3 : sert les requêtes sur QUIC, server push, sessions WebTransport et datagrammes.

Transport QUIC (RFC 9000)

La couche transport, exposée directement pour construire ton propre protocole sur QUIC.

CapacitéClientServeurNotes
Un unique handshake combiné de transport + TLS 1.3Un seul envoi complète la connexion ; pas d'aller-retour TLS séparé.
Streams bidirectionnels indépendantsUn paquet perdu ne bloque que les streams dont il transportait les données.
Streams unidirectionnelsOpenStream(aUnidirectional := True) sur le moteur builtin.
Streams multiples par connexionEnableMultiStream / OpenStream sur le moteur qmBuiltin.
Reprise 0-RTTUne session reprise peut transporter des données précoces dès le premier envoi.
Migration de connexionBasée sur le connection ID ; survit au changement de réseau du client.
Envoyer / recevoir des octetsWriteDataWriteData(connection, …)Charges utiles String ou TBytes sur un stream.
Événements de cycle de vie de la connexionOnQUICConnect / OnQUICDisconnectOnQUICConnect / OnQUICDisconnectPlus OnQUICException pour les erreurs de transport.
Événement de données de stream entrantOnQUICStreamDataOnQUICStreamData / OnQUICDataSe déclenche à l'arrivée des octets du stream.

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

La sémantique HTTP sur QUIC, avec la mécanique propre à HTTP/3 exposée sous forme de méthodes et d'événements.

CapacitéClientServeurNotes
Méthodes de requêteGET, HEAD, POST, PUT, DELETE, PATCH, OPTIONS, TRACE, CONNECT, QUERYChacune un appel bloquant côté client, la plupart avec une variante asynchrone.
Compression d'en-têtes QPACKRFC 9204, avec des mises à jour de table dynamique sur des streams dédiés d'encodeur/décodeur.
Découverte Alt-SvcOnAltSvcannonceRFC 7838 ; le client analyse l'en-tête et laisse ton application décider quand basculer.
Server pushSetMaxPushId / OnPushPromise / OnPushpush depuis OnH3RequestLe client annonce une limite et peut refuser les réponses envoyées par push.
Tunnels Extended CONNECTExtendedConnect / TunnelSend / OnTunnelDataOnH3TunnelData / TunnelSendRFC 9220 tunnelise un autre protocole à travers un stream de requête.
Événement de requêteOnH3RequestSe déclenche par requête ; l'application remplit la réponse.
Fermeture ordonnéeOnGoAwayGOAWAYSignalisation de fermeture de connexion de RFC 9114.
Certificat / cléQUICOptions.SSLOptions.CertFile / KeyFileCertificat PEM et clé privée pour le listener.

WebTransport (RFC 9220)

Sessions négociées via Extended CONNECT qui remettent directement à l'application des streams QUIC.

CapacitéClientServeurNotes
Établir une sessionWebTransportConnectOnWebTransportSessionAmorcée via une requête Extended CONNECT de HTTP/3.
Streams bidirectionnelsTrafic bidirectionnel à faible latence sur le moteur builtin.
DatagrammesSendDatagramDatagrammes non fiables aux côtés des streams de la session.
Moteur builtin requisUne session nécessite plusieurs streams sur une connexion (qmBuiltin).

Standards, TLS et plateformes

Une pile basée sur des standards, sur le moteur QUIC natif d'OpenSSL 3.5.

DomaineDétail
RFC 9000Transport QUIC — streams, connection IDs, migration, handshake combiné de transport + TLS.
RFC 9114HTTP/3 — sémantique HTTP mappée sur des streams QUIC.
RFC 9204QPACK — compression d'en-têtes pour HTTP/3.
RFC 9220Amorçage de WebTransport sur HTTP/3 (Extended CONNECT).
RFC 7838Alt-Svc — disponibilité de HTTP/3 annoncée par le serveur.
TLSTLS 1.3, intégré au handshake QUIC.
Moteur cryptographiqueQUIC natif dans OpenSSL 3.5 (qmBuiltin, multi-stream). Une voie qmCustom existe pour les builds de type quictls, limitée à un seul stream par connexion.
PlateformesWin32, Win64 et Linux64, plus macOS, iOS et Android là où le moteur QUIC d'OpenSSL 3.5 est disponible.
LangagesDelphi et C++ Builder (7 à 13), et .NET avec les classes Tsgc de nom identique.
Meilleur rapport qualité-prix : All-AccessTous les produits eSeGeCe, Support Premium inclus, à partir de €1,059/an.
Voir les tarifs All-Access

Développe avec sgcQUIC

Télécharge l'essai gratuit et commence à envoyer du trafic sur QUIC et HTTP/3 en Delphi, C++ Builder ou .NET.