- Notifications
You must be signed in to change notification settings - Fork1.2k
SuperSocket is a high-performance, extensible socket server application framework for .NET. It provides a robust architecture for building custom network communication applications with support for multiple protocols including TCP, UDP, and WebSocket.
License
kerryjiang/SuperSocket
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
SuperSocket is a high-performance, extensible socket server application framework for .NET. It provides a robust architecture for building custom network communication applications with support for multiple protocols including TCP, UDP, and WebSocket.
- Project homepage:https://www.supersocket.net/
- Documentation:https://docs.supersocket.net/
- License:https://www.apache.org/licenses/LICENSE-2.0
Key features of SuperSocket include:
Flexible Pipeline Architecture:SuperSocket implements a pipeline-based processing model that allows for efficient handling of incoming data with customizable filters.
Protocol Abstraction:The framework abstracts away low-level socket operations and provides a clean interface for implementing various protocols through pipeline filters. It has built-in support for TCP, UDP, WebSocket, and even custom protocols.
Middleware Support:Extensible middleware system allowing for custom processing of connections and packages.
Session Management:SuperSocket provides comprehensive session handling capabilities, managing connection lifecycles from establishment to termination.
Command Handling System:Command-based processing model to handle client requests efficiently.
WebSocket Support:Full implementation of the WebSocket protocol with extensions like compression.
Modern .NET Integration:SuperSocket is built for modern .NET and integrates seamlessly with the dependency injection, configuration, and logging facilities in the .NET ecosystem.
Cross-Platform:As a .NET library, SuperSocket works across platforms supported by .NET.
Client Support:The framework includes client components for establishing connections to socket servers, including proxy capabilities.
High Performance:SuperSocket is designed for high throughput and low latency with efficient memory usage through buffer pooling and minimal allocations
SuperSocket is suitable for a wide range of applications including:
- Real-time communication systems
- IoT device connectivity
- Game servers
- Chat applications
- and any scenario requiring custom network protocols
Package | MyGet Beta Release | NuGet Stable Release |
---|---|---|
SuperSocket.ProtoBase | ||
SuperSocket.Primitives | ||
SuperSocket.Connection | ||
SuperSocket.Kestrel | ||
SuperSocket.Server | ||
SuperSocket.Server.Abstractions | ||
SuperSocket.Command | ||
SuperSocket.Client | ||
SuperSocket.Client.Proxy | ||
SuperSocket.WebSocket | ||
SuperSocket.WebSocket.Server | ||
SuperSocket.Udp | ||
SuperSocket.SerialIO | ||
SuperSocket.ProtoBuf | ||
SuperSocket.MessagePack |
Nightly build packages:https://www.myget.org/F/supersocket/api/v3/index.json
- 2025:
- More documents
- Performance test/tuning
- Fix issues of the existing features
- Other features requested by users
About
SuperSocket is a high-performance, extensible socket server application framework for .NET. It provides a robust architecture for building custom network communication applications with support for multiple protocols including TCP, UDP, and WebSocket.
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.