Reliable UDP communication over unreliable networks with TCP-like delivery guarantees.
- Reliable message delivery over UDP
- Packet fragmentation and reassembly
- ACK-based retransmission system
- Send and receive queues per endpoint
- NAT traversal ready (via STUN, optional)
- Simple API using IPEndPoint
dotnet add package M9Studio.UdpLikeTcpvar socket = new M9Studio.UdpLikeTcp.Socket();
var target = new IPEndPoint(IPAddress.Loopback, 12345);
byte[] message = Encoding.UTF8.GetBytes("Hello over UDP!");
socket.SendTo(target, message);byte[] received = socket.ReceiveFrom(remoteEP);
Console.WriteLine("Received: " + Encoding.UTF8.GetString(received));socket.DataReceived += (sender) =>
{
byte[] buffer = socket.ReceiveFrom(sender);
Console.WriteLine($"Received {buffer.Length} bytes from {sender}");
};
socket.Connected += (sender) =>
{
Console.WriteLine($"{sender} is connected");
};- Supports .NET 8.0+
- Cross-platform: Windows, Linux, macOS
- STUN and public IP detection supported externally