Repository navigation
SuperSocket.ProtoBuf 2.0.0-beta.1
Pre-release
Pre-release
We're excited to announce the first beta release of SuperSocket.ProtoBuf 2.0.0! This library provides efficient Protocol Buffers integration for SuperSocket, enabling high-performance binary serialization and deserialization for network messages.
Features
- Protocol Buffers Integration: Seamless integration with Google Protocol Buffers for efficient binary serialization
- Type Registry System: Centralized type registry to manage message types and their unique identifiers
- Pipeline Filters: Custom pipeline filters to process incoming protobuf messages
- Package Encoders/Decoders: Built-in support for encoding and decoding protobuf messages
- Cross-Platform Support: Compatible with multiple platforms including:
- .NET 6.0, 7.0, 8.0, and 9.0
- Mobile platforms (iOS, Android, macOS, tvOS)
Core Components
ProtobufTypeRegistry: Central registry for mapping between message types and their identifiersProtobufPipelineFilter<T>: Processes incoming data streams and extracts protocol buffer messagesProtobufPackageDecoder<T>: Decodes binary data into strongly-typed protocol buffer messagesProtobufPackageEncoder<T>: Encodes protocol buffer messages for network transmission- Concrete implementations for direct
IMessagehandling
Getting Started
Installation
dotnet add package SuperSocket.ProtoBuf --version 2.0.0-beta.1Check the README for detailed usage examples and API documentation.
Protocol Format
Messages are encoded with an 8-byte header followed by the protobuf message payload:
- First 4 bytes: Message size in big-endian format
- Next 4 bytes: Message type ID in big-endian format
- Remaining bytes: The serialized protobuf message
Notes for Beta Users
As this is a beta release, we welcome your feedback and contributions:
- Please report any issues on our GitHub repository
- API signatures may change between beta and final release
- Performance optimizations are ongoing
License
SuperSocket.ProtoBuf is licensed under the Apache License 2.0.