UDPS: A Simple And Efficient UDP Library
is a zero-bloat, simple and efficient DLL to send/receive reliable or unreliable data over UDP.
The library has just 4 functions: start/send/read/stop, so it's easy to understand and use.
The protocol is extremely lean, it adds just 6 bytes to each datagram.
Internal architecture is built on top of I/O Completion Ports and tries to avoid memory copy as much as possible.
It provides a clean separation from user code via its own thread and an internal queue, so you can take your time processing the requests without causing delays in sending or receiving.
int result = req.send("18.104.22.168", buffer, size);
if(!result) printf("\nError: %s.", req.error());
DLL size is just 24 Kb :)
As an example of how to use it, a useful command-line tool with the source code is included.
It can send or receive files directly from the command line and provides much simpler and faster workflow compared to something like FTP:
usend.exe /s 22.214.171.124 file.dat
And on another machine you run:
to receive the file. Very simple. (You might need to open UDP port 8583).
USend can also be added to the SentTo context menu and then you can send any file right from the Windows Explorer: