.NET WebSocket 라이브러리 | C# 클라이언트 & 서버 컴포넌트 | eSeGeCe

.NET WebSocket 라이브러리 — C#용 클라이언트와 서버

sgcWebSockets .NET은 C#을 위한 완전한 WebSocket 클라이언트 및 서버 라이브러리예요: RFC 6455 프레이밍, TLS, per-message-deflate 압축, 자동 재연결에 더해 MQTT, AMQP, STOMP, WAMP 서브 프로토콜과 HTTP/2가 같은 패키지에 들어 있어요. NuGet에서 esegece.sgcWebSockets로 설치하거나 무료 Community 에디션으로 시작하세요.

.NET Framework 2.0부터 .NET 9까지 하나의 라이브러리

Delphi 제품과 동일한 컴포넌트 스위트를 동일한 클래스 이름과 동일한 이벤트 기반 API로 C#에 이식했어요.

.NET WebSocket 라이브러리는 와이어 프로토콜 이상을 다뤄야 해요. System.Net.WebSockets는 RFC 6455 프레이밍을 제공해요; sgcWebSockets .NET은 그 위에 프로덕션 애플리케이션에 필요한 것을 더해요: TCP 또는 HTTP.SYS(IIS와 포트 공유)에서 실행되는 서버, watchdog 자동 재연결과 하트비트가 있는 클라이언트, 메시지 큐잉, 프록시 및 인증 지원, 그리고 별도의 의존성 셋을 더 가져와야 했을 메시징 서브 프로토콜(MQTT, AMQP, STOMP, WAMP)까지.

대상 프레임워크 범위가 이례적으로 넓어요: Windows, Linux, macOS에서 .NET Framework 2.0–4.8.1, .NET Core 1.0–3.1, .NET 5/6/7/8/9 및 .NET Standard 1.6/2.0. 레거시 WinForms 애플리케이션과 최신 ASP.NET Core 서비스가 동일한 패키지와 동일한 코드를 사용해요.

클라이언트

TsgcWebSocketClient: TLS, 프록시, 하트비트, watchdog을 갖춘 RFC 6455 클라이언트

서버

TsgcWebSocketHTTPServer: HTTP.SYS 위의 WebSocket + HTTP 서버, 포트 공유, SSL/TLS

NuGet

esegece.sgcWebSockets: 모든 .NET 대상용으로 nuget.org에서 설치

Community 에디션

Windows, Linux 64비트, macOS 64비트용 무료 다운로드 (시작 알림 포함)

WebSocket 프레이밍 그 이상

직접 만들어야 했을 부분들이 이미 상자 안에 들어 있어요.

WebSocket 클라이언트 & 서버

양쪽 모두 RFC 6455, per-message-deflate 압축 (RFC 7692) 및 제공된 전송에서 TLS 1.3까지 지원.

자동 재연결 watchdog

클라이언트의 WatchDogHeartBeat 속성이 장기 연결을 유지하고 네트워크 끊김 후 추가 코드 없이 다시 연결해요.

메시징 프로토콜

MQTT 3.1.1 / 5.0, AMQP 0.9.1 / 1.0, STOMP 및 WAMP 클라이언트 내장. 같은 라이브러리에서 RabbitMQ, HiveMQ, Azure Service Bus 또는 ActiveMQ와 통신하세요.

HTTP/2

같은 패키지의 네이티브 HTTP/2 클라이언트 (RFC 9113) — 이를 요구하는 Apple Push Notifications 같은 API를 위해.

HTTP.SYS 서버

서버 컴포넌트는 HTTP.SYS를 통해 바인딩하므로 IIS와 포트 80/443을 공유하고 하나의 프로세스에서 HTTP와 WebSocket 트래픽을 처리할 수 있어요.

SignalR 와이어 클라이언트

TsgcWSAPI_SignalRTsgcWSAPI_SignalRCore가 SignalR 클라이언트 와이어 프로토콜을 구현하므로, sgcWebSockets 클라이언트가 기존 ASP.NET Core SignalR 서버와 통신할 수 있어요.

AI/LLM API 클라이언트

OpenAI, Anthropic, Gemini, DeepSeek, Grok, Ollama, Mistral 및 MCP 클라이언트가 같은 스위트로 제공되며, Delphi AI 제품군을 그대로 반영해요.

인증 & 보안

클라이언트와 서버는 Authentication, ProxyTLSOptions / SSLOptions 속성 그룹을 노출하고, 서버는 자격 증명 확인을 위한 OnAuthentication 이벤트를 추가로 제공해요.

Delphi와 동일한 API

두 플랫폼에서 동일한 Tsgc* 클래스 이름과 이벤트를 사용하므로, Delphi와 .NET을 나란히 운영하는 팀은 하나의 멘탈 모델만 유지하면 돼요.

C#으로 만드는 클라이언트와 서버

몇 가지 속성을 설정하고, 이벤트를 연결하고, Active를 설정하세요. 그게 패턴의 전부예요.

using esegece.sgcWebSockets;

var client = new TsgcWebSocketClient();
client.Host = "127.0.0.1";
client.Port = 80;
client.TLS = true;
client.Options.Parameters = "/ws/";

client.OnConnect    += (conn) => Console.WriteLine("#connected: " + conn.IP);
client.OnDisconnect += (conn, code) => Console.WriteLine("#disconnected: " + code);
client.OnMessage    += (conn, text) => Console.WriteLine(text);
client.OnException  += (conn, ex) => Console.WriteLine("#exception: " + ex.Message);

client.Active = true;
client.WriteData("hello");
using esegece.sgcWebSockets;

var server = new TsgcWebSocketHTTPServer();
server.Port = 80;

server.OnConnect    += (conn) => server.WriteData("welcome " + conn.IP);
server.OnMessage    += (conn, text) => server.WriteData(text);
server.OnDisconnect += (conn, code) => Console.WriteLine("#bye " + conn.IP);
server.OnAuthentication += (conn, user, pass, ref ok) =>
    { ok = (user == "admin" && pass == "s3cret"); };

server.Active = true;

무료 Community부터 Enterprise까지

무료 Community 에디션은 시작 알림이 표시되는 Windows, Linux 64비트, macOS 64비트용 완전한 작동 빌드로, 자신의 솔루션에서 라이브러리를 평가하는 가장 빠른 방법이에요. .NET 에디션은 Community, Professional, Enterprise이며, 세 가지 모두 WebSocket 클라이언트와 WebSocket 서버를 포함한 동일한 컴포넌트 세트를 제공해요. 상용 에디션의 차이는 기능이 아니라 라이선스에 있어요: Professional은 시작 알림을 제거하고, 공개 C# 인터페이스 소스를 추가하고, 상업적 재배포 라이선스를 부여하며, Enterprise는 어셈블리를 재빌드할 수 있는 전체 C# 소스 코드와 우선 지원을 추가해요.

에디션별, 컴포넌트별 세부 내역은 전체 .NET 기능 매트릭스를 참조하세요.

sgcWebSockets .NET 자세히 알아보기

.NET WebSocket 라이브러리 비교

중립적이고 출처를 인용한 조사: sgcWebSockets .NET vs System.Net.WebSockets, SignalR, WebSocket-Sharp, Fleck, Watson.

.NET WebSocket 클라이언트

.NET의 TsgcWebSocketClient 컴포넌트 참조: 속성, 메서드, 이벤트.

.NET WebSocket 서버

.NET의 TsgcWebSocketHTTPServer 컴포넌트 참조: HTTP.SYS, 포트 공유, TLS.

.NET 기능 매트릭스

모든 컴포넌트와 프로토콜을 에디션별, 대상 프레임워크별로.

블로그: NuGet 패키지

nuget.org에서 esegece.sgcWebSockets를 설치하고 첫 연결을 실행하기.

다운로드

Community 에디션, 컴파일된 데모 및 ASP.NET Core + React 샘플.

Best value: All-AccessEvery eSeGeCe product, Premium Support included, from €1,059/year.
See All-Access pricing

오늘 .NET 앱에 WebSocket을 추가하세요

NuGet에서 esegece.sgcWebSockets를 설치하거나 무료 Community 에디션을 받아 데모를 실행해 보세요.