UniNetty Project
UniNetty is a port of Azure/DotNetty, an asynchronous event-driven network framework designed for developing high-performance, maintainable protocol servers and clients, fully compatible with Unity3D.
If you'd like to support the project, we'd appreciate starring(⭐) our repos on Github for more visibility.
🚀 Features
-
Unity3D Compatibility : Integrate DotNetty's functionality into Unity projects, simplifying the implementation of networking features.
-
Unified API for various transport types : blocking and non-blocking socket
-
Flexible Event Model : Based on a flexible and extensible event model which allows clear separation of concerns
-
Highly Customizable Thread Model : single thread, one or more thread pools such as SEDA
-
Datagram Socket : True connectionless datagram socket support
UniNetty is divided into multiple modules, each contained in its own folder:
-
UniNetty.Logging : Logging framework used internally by UniNetty
-
UniNetty.Common : Provides utility functions and common components for asynchronous and concurrent operations.
-
UniNetty.Buffers : Manages efficient memory allocation and deallocation for network data buffers.
-
UniNetty.Transport : Implements core TCP and UDP transport functionalities with scalable event loop support.
-
UniNetty.Codecs : Handles encoding and decoding of data across network channels.
-
UniNetty.Codecs.Http : Supports HTTP/1.1 and handles full HTTP request/response lifecycle.
-
UniNetty.Codecs.Mqtt : Implements MQTT protocol for IoT communication with efficient message handling.
-
UniNetty.Codecs.Protobuf : Facilitates Protocol Buffers serialization and deserialization for compact binary communication.
-
UniNetty.Codecs.Redis : Implements Redis protocol for building Redis-compatible servers or clients.
-
UniNetty.Handlers : Includes handlers for SSL/TLS, WebSocket, and other essential network features.
-
Tests : Unit tests
-
Examples : Examples of usage
⚡ Getting Started
...
⚙ How it Works
...
📚 Documentation & Links
-
UniNetty Links
-
Official Links
🅾 License
UniNetty is licensed under MIT license, see LICENSE.txt for more information.
📹 Demo Video
...