coditva / Udt C
Licence: mit
A basic implementation of UDP-based Data Transfer protocol (UDT) in C
Stars: ✭ 59
Programming Languages
c
50402 projects - #5 most used programming language
Projects that are alternatives of or similar to Udt C
Socketify
Raw TCP and UDP Sockets API on Desktop Browsers
Stars: ✭ 67 (+13.56%)
Mutual labels: sockets, udp
XAsyncSockets
XAsyncSockets is an efficient Python/MicroPython library of managed asynchronous sockets.
Stars: ✭ 28 (-52.54%)
Mutual labels: sockets, udp
Message Io
Event-driven message library for building network applications easy and fast.
Stars: ✭ 321 (+444.07%)
Mutual labels: udp, sockets
ctsTraffic
ctsTraffic is a highly scalable client/server networking tool giving detailed performance and reliability analytics
Stars: ✭ 125 (+111.86%)
Mutual labels: sockets, udp
Libzt
ZeroTier Sockets - Put a network stack in your app
Stars: ✭ 486 (+723.73%)
Mutual labels: udp, sockets
Notifo
Multi channel notification service for collaboration tools, e-commerce, news service and more.
Stars: ✭ 32 (-45.76%)
Mutual labels: sockets
Chill Netcat
UDP-only netcat implementation with OCaml / MirageOS
Stars: ✭ 13 (-77.97%)
Mutual labels: udp
Transferz
A simple Android Application built with ❤️ using Flutter, for transferring files between devices.
Stars: ✭ 59 (+0%)
Mutual labels: udp
Notifier
NO LIBRARIES socket per page bridge for your Laravel application. (CLIENT PART INCLUDED)
Stars: ✭ 57 (-3.39%)
Mutual labels: sockets
Mts
Project of Multi-protocol Test Tool opensourced by Ericsson
Stars: ✭ 34 (-42.37%)
Mutual labels: udp
Python Voice Chat
Instant multi-person voice chat over the internet in Python 3
Stars: ✭ 51 (-13.56%)
Mutual labels: sockets
Gensio
A library to abstract stream I/O like serial port, TCP, telnet, UDP, SSL, IPMI SOL, etc.
Stars: ✭ 30 (-49.15%)
Mutual labels: udp
Nbnet
single header C(99) library to implement client-server network code for games
Stars: ✭ 58 (-1.69%)
Mutual labels: udp
Net Peercredlistener
A net.Listener implementation leveraging Unix domain socket features to reliably identify client processes.
Stars: ✭ 15 (-74.58%)
Mutual labels: sockets
Snifter
Snifter is a raw socket IP packet capturing library/app for Windows, with a tiny CPU and memory footprint
Stars: ✭ 38 (-35.59%)
Mutual labels: sockets
UDT Implementation in C
An implementation of the UDP-based Data Transfer (UDT) protocol in C. UDT is a much faster data transfer protocol than TCP and provides a socket interface to send/receive data just like any other protocol.
The documentation can be found in the header files (see include/udt.h
).
How to
make # compile
make clean # cleanup
export LD_LIBRARY_PATH=./src/:$LD_LIBRARY_PATH # export the library path
progs/server # start the server
progs/client # start the client
progs/sendfile # start the sendfile server
progs/recvfile "file/to/get" "file/to/saveas" # receive the file
Progress
- [x] Implement architecture.
- [x] Implement basic API.
- [x] Implement handshake.
- [x] Use threads for sender/receiver.
- [x] Implement data packet handling.
- [x] Implement
sendfile
,recvfile
. - [ ] Implement timer and use it to send various packets.
- [ ] Make this work with an existing UDT implementation.
- [ ] Implement a congestion control algorithm.
Bugs, suggestions
Please report bugs, suggestions here.
References
- Yunhong Gu and Robert L. Grossman, UDT: UDP-based Data Transfer for High-Speed Wide Area Networks, Computer Networks (Elsevier). Volume 51, Issue 7. May 2007.
- UDT Implementation in C++ : http://udt.sourceforge.net/software.html.
- UDT Manual : http://udt.sourceforge.net/udt4/.
License
MIT
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].