eSeGeCe — Enterprise Communication Components for Delphi & .NET
FEATURED · sgcQUIC

Skip the round trips

TCP plus TLS needs three round trips before the first byte of a response arrives. QUIC folds the transport and the crypto handshake into one, and a resumed connection can send data on the very first packet. sgcQUIC gives Delphi, C++ Builder and .NET a native QUIC transport and an HTTP/3 client and server built on top of it, on the OpenSSL 3.5 QUIC engine.

  • RFC 9000, 9114, 9204
  • WebTransport (RFC 9220)
  • 0-RTT & connection migration
  • Delphi · C++ Builder · .NET

QUIC and HTTP/3, to the Letter of the RFCs

sgcQUIC is not a partial implementation. Transport, framing, header compression and the WebTransport extension are all covered, on top of the native OpenSSL 3.5 QUIC engine.

4 Components TsgcQUICClient, TsgcQUICServer, TsgcHTTP3Client and TsgcHTTP3Server, one palette page.
9000 RFC 9000 The QUIC transport protocol: streams, datagrams, flow control and connection migration.
9114 RFC 9114 HTTP/3, the same request and response semantics as HTTP/2, carried over QUIC streams.
9204 RFC 9204 QPACK header compression, designed for QUIC's out-of-order stream delivery.
9220 RFC 9220 WebTransport over HTTP/3, bidirectional streams and datagrams on one Extended CONNECT request.
sgcQUIC

A raw QUIC transport and an HTTP/3 client and server for Delphi, C++ Builder and .NET. An add-on to sgcWebSockets Enterprise, on the same native OpenSSL 3.5 QUIC engine. Full source, royalty-free deployment.

Raw QUIC, or HTTP/3 on Top

Use TsgcQUICClient and TsgcQUICServer for a bare transport with your own framing, or reach straight for TsgcHTTP3Client and TsgcHTTP3Server when the wire format is HTTP.

RFC 9000

QUIC Client & Server

TsgcQUICClient and TsgcQUICServer speak raw QUIC: multiple independent streams on one encrypted connection, unreliable datagrams, and connection migration when the client's IP address changes mid-session.

View the QUIC components →
RFC 9114

HTTP/3 Client & Server

TsgcHTTP3Client and TsgcHTTP3Server layer HTTP semantics on top: request and response headers compressed with QPACK, Alt-Svc discovery, and the same methods and status codes your HTTP/2 code already uses.

View the HTTP/3 components →
0-RTT

Session Resumption

A client that has connected before can send its first request on the very first packet, before the handshake finishes.

Migration

Connection Migration

A Connection ID identifies the session, not the IP address, so a phone moving from Wi-Fi to cellular keeps its streams open.

WebTransport

RFC 9220

Bidirectional streams and unreliable datagrams over one Extended CONNECT request, for browser clients that speak WebTransport.

Worked guides for the QUIC and HTTP/3 components:

One Request Over HTTP/3

The same shape as any other sgcWebSockets HTTP client: set properties, handle an event, call a method.

uses
  sgcHTTP3_Client;
var
  vClient: TsgcHTTP3Client;
begin
  vClient := TsgcHTTP3Client.Create(nil);
  vClient.Host := 'api.example.com';
  vClient.Port := 443;
  vClient.OnResponse :=
    procedure(Sender: TObject; const AStatus: Integer; const ABody: string)
    begin
      Memo1.Lines.Add(Format('%d: %s', [AStatus, ABody]));
    end;
  vClient.OnAltSvc :=
    procedure(Sender: TObject; const AAltSvc: string)
    begin
      Memo1.Lines.Add('Alt-Svc: ' + AAltSvc);  // h3 advertised over HTTP/2
    end;
  vClient.Connect;
  vClient.Get('/pets/42');
end;
uses
  sgcQUIC_Client;
var
  vQUIC: TsgcQUICClient;
begin
  vQUIC := TsgcQUICClient.Create(nil);
  vQUIC.Host := 'quic.example.com';
  vQUIC.Port := 4433;
  vQUIC.EnableMultiStream := True;
  vQUIC.OnQUICConnect :=
    procedure(Sender: TObject)
    var
      vStreamId: Int64;
    begin
      vStreamId := vQUIC.OpenStream;
      vQUIC.WriteData(vStreamId, 'ping');
    end;
  vQUIC.OnQUICStreamData :=
    procedure(Sender: TObject; const AStreamId: Int64; const AData: string)
    begin
      Memo1.Lines.Add(Format('stream %d: %s', [AStreamId, AData]));
    end;
  vQUIC.Active := True;
end;

The client and server share the same connection, stream and datagram model on both sides. The full feature matrix →

One Port, One Certificate, Two Protocols

TsgcHTTP3Server speaks HTTP/3 over QUIC on a UDP port, while TsgcHTTP3ServerBridge-style pairing with an existing HTTP/2 server lets legacy clients keep working over TCP. Advertise Alt-Svc and modern clients upgrade themselves.

HTTP3Server.pas
uses
  sgcHTTP3_Server;

procedure TForm1.FormCreate(Sender: TObject);
begin
  FServer := TsgcHTTP3Server.Create(nil);
  FServer.Port := 443;
  FServer.QUICOptions.SSLOptions.CertFile := 'server.crt';
  FServer.QUICOptions.SSLOptions.KeyFile  := 'server.key';

  // One handler for every incoming HTTP/3 request
  FServer.OnH3Request :=
    procedure(const Ctx: TsgcHTTP3Context)
    begin
      if Ctx.Path = '/pets/42' then
        Ctx.RespondJSON(200, '{"name":"Rex"}')
      else
        Ctx.Respond(404, 'Not found');
    end;

  FServer.Active := True;
end;

What that gives you

A single Delphi component that terminates QUIC, negotiates h3 and routes every request to one handler, with the same certificate your HTTP/2 server already loads.

Alt-Svc, so upgrades are automatic

A regular HTTP/2 response carries an Alt-Svc: h3=":443" header. Clients that understand it open QUIC on the next request, without a redirect or a second domain.

WebTransport, on the same port

An Extended CONNECT request upgrades a stream to WebTransport, giving a browser client bidirectional streams and datagrams alongside ordinary HTTP/3 requests.

Native QUIC, no external dependency

The QUIC and TLS 1.3 handshake run on OpenSSL 3.5's own QUIC engine. There is no separate QUIC library to build or vendor.

OpenSSL 3.5 TLS 1.3 Alt-Svc QPACK WebTransport

The HTTP/3 server component →

sgcQUIC is an add-on to sgcWebSockets Enterprise, so the license, the support channel and the update cadence are the ones you already have.

Nine Libraries, One Toolbox

sgcQUIC is one of ten eSeGeCe component libraries for Delphi, C++ Builder and .NET. They share conventions, they ship with full source, and they deploy royalty-free.

sgcQUIC

Raw QUIC transport and an HTTP/3 client and server, with WebTransport. An add-on to sgcWebSockets Enterprise.

Learn more →

sgcWebSockets

WebSocket, HTTP/2, MQTT, AMQP, WebRTC, AI and 30+ API integrations. The Enterprise license sgcQUIC builds on.

Learn more →

sgcHTML

Server-side HTML and UI components on Bootstrap 5 and htmx. Serve the rendered UI over the same HTTP/3 transport.

Learn more →

sgcAI

AI, LLM and MCP components for Delphi and C++ Builder. Seven LLM providers behind one component, plus MCP, embeddings and speech. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcMQ

MQTT, AMQP 0.9.1 and 1.0, Apache Kafka and STOMP client components for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcAuth

OAuth2 client, JWT client and WebAuthn support for Delphi and C++ Builder. Sign in with any OAuth2/OIDC provider, issue and verify JWTs, and add passkey authentication to native apps. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcHTTP

HTTP/2 client, gRPC client and Google Cloud Pub/Sub, Calendar and FCM clients for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcREST

REST server, OpenAPI server and OpenAPI client components for Delphi and C++ Builder. Publish REST APIs from an OpenAPI 3.x contract, or consume any OpenAPI-described API. Standalone, with the sgcWebSockets Core runtime bundled in.

Learn more →

sgcOpenAPI

OpenAPI 3.x parser, native Pascal SDK generator, OpenAPI server component, and 1,195+ pre-built cloud SDKs.

Learn more →

sgcSign

XAdES, PAdES, CAdES and ASiC for documents, Authenticode, ClickOnce, NuGet and VSIX for code.

Learn more →

sgcBiometrics

Windows Hello, fingerprint sensors and the Windows Biometric Framework for Delphi and C++ Builder.

Learn more →

sgcIndy

Updated Indy TCP/IP components with modern TLS, IPv6 and HTTP/2 for Delphi 7 through 13.

Learn more →

View pricing and editions Download the free trial

What Developers Say

Trusted by Delphi, C++ Builder, Lazarus and .NET developers around the world.

Your sgcWebSockets library is very useful and easy to setup. Keep up the good work!

Simone Moretti Delphi Developer

sgcWebSockets is amazing and your support is the best!

Christian Meyer Founder & CTO

Thanks so much for your help and support, I love your components.

Mark Steinfeld CTO

Latest from the blog

View all posts →

You are seeing the QUIC view of eSeGeCe.

Show me another angle →
30-Day Money-Back GuaranteeNot satisfied? Request a full refund within 30 days of purchase. See refund policy

Ship QUIC and HTTP/3 Without Leaving Your IDE

Raw QUIC transport, HTTP/3 client and server, and WebTransport, on the OpenSSL 3.5 QUIC engine. Full source, royalty-free deployment, as an add-on to sgcWebSockets Enterprise.