sgcQUIC — QUIC & HTTP/3 voor Delphi, C++ Builder & .NET

sgcQUIC — QUIC & HTTP/3 voor Delphi, C++ Builder & .NET

Een complete QUIC- en HTTP/3-stack voor Delphi, C++ Builder en .NET. sgcQUIC geeft je vier paletcomponenten — een pure QUIC-transportclient en -server (RFC 9000) plus een HTTP/3-client en -server (RFC 9114) — gebouwd op de native QUIC-engine in OpenSSL 3.5. QPACK-headercompressie, Alt-Svc-discovery, 0-RTT, connectiemigratie en WebTransport zijn standaard aanwezig, en dezelfde API werkt in Object Pascal en C#.

QUIC-transport (RFC 9000)
HTTP/3 (RFC 9114) + QPACK
Native QUIC van OpenSSL 3.5
Delphi / C++ Builder / .NET
WebTransport (RFC 9220)

Dezelfde HTTP-semantiek, een nieuw transport

HTTP/3 behoudt de methoden, statuscodes en headers die je al kent en vervangt TCP door QUIC, een op UDP gebaseerd transport met ingebouwde TLS 1.3. sgcQUIC stuurt dit aan via de native QUIC-ondersteuning in OpenSSL 3.5, zodat je modern transport krijgt vanuit Delphi, C++ Builder of .NET zonder een aparte library.

Eén handshake, geen head-of-line blocking

QUIC (RFC 9000) combineert de transport- en TLS 1.3-handshakes in één flight en elimineert head-of-line blocking op transportniveau — een verloren pakket blokkeert alleen de streams waarvan het data bevatte, niet de hele verbinding.

Gebouwd op native QUIC van OpenSSL 3.5

De engine wordt automatisch gedetecteerd wanneer OpenSSL wordt geladen. Met de meegeleverde OpenSSL 3.5-binaries krijg je de qmBuiltin-engine, die meerdere streams per verbinding ondersteunt en de engine is waar de componenten omheen zijn gebouwd.

QPACK-headercompressie

HTTP/3 comprimeert headers met QPACK (RFC 9204), de HTTP/3-vervanger van HPACK, ontworpen voor de out-of-order aflevering van QUIC, met dynamische-tabelupdates die via speciale encoder- en decoderstreams worden verstuurd.

Connectiemigratie

QUIC-verbindingen worden geïdentificeerd met een connection ID in plaats van de vier-tupel van adressen, waardoor een sessie een netwerkwissel van de client overleeft — een verbinding kan een apparaat volgen van wifi naar mobiele data zonder nieuwe handshake.

0-RTT en meerdere streams

Een nieuwe verbinding wordt in één round trip voltooid en een hervatte sessie kan 0-RTT-data meesturen in de eerste flight. Op de builtin-engine plaatsen EnableMultiStream en OpenStream meerdere onafhankelijke QUIC-streams op één verbinding.

WebTransport-sessies

WebTransport (RFC 9220) wordt onderhandeld via Extended CONNECT en geeft de applicatie rechtstreeks QUIC-streams, gebouwd voor bidirectioneel verkeer met lage latency bovenop de builtin-engine.

Vier componenten, twee lagen

Een puur QUIC-transportpaar voor streams en datagrammen, en een HTTP/3-paar dat request/response spreekt over dezelfde engine. Elk linkt naar zijn eigen pagina met Delphi-, C++ Builder- en .NET-voorbeelden.

TsgcQUICClient

Pure QUIC-transportclient. Opent een QUIC-verbinding, verstuurt en ontvangt bytes over één of meerdere streams (RFC 9000), met 0-RTT en connectiemigratie — QUIC zonder HTTP-semantiek.

Bekijk component →

TsgcQUICServer

Pure QUIC-transportserver. Bindt aan een UDP-poort, termineert TLS 1.3 en genereert een event voor elke QUIC-verbinding en -stream, zodat je je eigen protocol bovenop QUIC bouwt.

Bekijk component →

TsgcHTTP3Client

HTTP/3-client (RFC 9114). Alle verbs als blokkerende of asynchrone aanroepen, QPACK-compressie, Alt-Svc-discovery, server push, Extended CONNECT-tunnels en WebTransport-sessies.

Bekijk component →

TsgcHTTP3Server

HTTP/3-server. Bedient verzoeken over QUIC, erft van TsgcQUICServer, genereert een event per verzoek en kan responses pushen, WebTransport-sessies openen en datagrammen versturen.

Bekijk component →

Bekijk de volledige feature-matrix →

Een GET-verzoek over HTTP/3

Verbind met een host en poort, en verstuur vervolgens verzoeken. De standaardpoort is 443. Dezelfde API in Delphi, C++ Builder en .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();

De RFC's die sgcQUIC implementeert

Een op standaarden gebaseerde stack, geen propriëtair transport.

RFC 9000 — QUIC

Het QUIC-transport: een enkele gecombineerde transport- + TLS 1.3-handshake, onafhankelijke streams, connection ID's en migratie. Rechtstreeks beschikbaar via TsgcQUICClient en TsgcQUICServer.

RFC 9114 — HTTP/3

HTTP-semantiek over QUIC: de methoden, statuscodes en headers die je kent, gemapt op QUIC-streams. Geïmplementeerd door TsgcHTTP3Client en TsgcHTTP3Server.

RFC 9204 — QPACK

Headercompressie voor HTTP/3, ontworpen voor de out-of-order aflevering van QUIC, met een dynamische tabel die wordt gesynchroniseerd via speciale encoder- en decoderstreams.

RFC 9220 — WebTransport

Bootstrapping van WebTransport over HTTP/3 met Extended CONNECT, waarbij de applicatie QUIC-streams krijgt voor bidirectioneel verkeer met lage latency.

Een add-on voor sgcWebSockets

sgcQUIC wordt gelicentieerd als add-on. Alle licenties bevatten de volledige broncode, 1 jaar updates en 70% verlengingskorting.

sgcQUIC

€149

Single-, Team- en Site-licenties beschikbaar. Volledige broncode inbegrepen.

  • TsgcQUICClient & TsgcQUICServer
  • TsgcHTTP3Client & TsgcHTTP3Server
  • Delphi, C++ Builder & .NET
  • Volledige broncode
  • 1 jaar updates

★ Vereist sgcWebSockets

sgcQUIC vereist sgcWebSockets Enterprise.

Bekijk prijzen en bestel
3,000+Developers
20+Years
761+Components
30+API Integrations
5Platforms
Niet-goed-geld-terug-garantie van 30 dagenNiet tevreden? Vraag binnen 30 dagen na aankoop een volledige terugbetaling aan. Bekijk het terugbetalingsbeleid

Lever QUIC en HTTP/3 zonder je IDE te verlaten

Voeg het transport waar het moderne web naartoe beweegt toe aan je Delphi-, C++ Builder- of .NET-toepassing, met de taal die je al gebruikt.

Andere producten van eSeGeCe

Combineer sgcQUIC met onze andere Delphi-, C++ Builder- en .NET-componentbibliotheken.

sgcWebSockets

Enterprise WebSocket-, HTTP/2-, MQTT-, AMQP-, WebRTC- en AI/LLM-componenten. sgcQUIC is een add-on voor sgcWebSockets Enterprise.

Meer informatie →

sgcHTML

89 data-aware server-side HTML/UI-componenten voor Delphi, C++ Builder en .NET, met Bootstrap 5 en htmx.

Meer informatie →

sgcSign

Enterprise digitale handtekeningen — XAdES, PAdES, CAdES en ASiC met 10 sleutelproviders en 21 EU-landprofielen.

Meer informatie →

sgcOpenAPI

OpenAPI 3.0-parser en SDK-generator. Zet elke OpenAPI-specificatie in seconden om in een sterk getypeerde Delphi-client.

Meer informatie →

sgcBiometrics

Native componenten voor Windows Hello, vingerafdruk en het Windows Biometric Framework voor Delphi en C++ Builder.

Meer informatie →

sgcIndy

Bijgewerkte Indy TCP/IP-componenten met moderne TLS, IPv6 en HTTP/2-ondersteuning voor Delphi 7 tot en met 13.

Meer informatie →