-
Notifications
You must be signed in to change notification settings - Fork 0
Resending UDP library
License
gk7huki/libreudp
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
The source is licensed fully under GPL. See LICENSE for details. To build: copy build_config.py.dist to build_config.py and edit the file to have correct paths etc. for your system. Release build: just run scons Debug build: run scons debug=yes Building the examples: scons example Building the unit tests: scons test For building scons is needed: http://www.scons.org/ Stand-alone Windows build available also: https://developer.berlios.de/project/showfiles.php?group_id=2672 ACE networking library is used to provide cross-platform support. You need it to use this library: http://www.cs.wustl.edu/~schmidt/ACE.html --- Some information: this library currently implements a simple resending UDP protocol. The resending is achieved by a simple ACK protocol: if ACK is not received during the timeout interval, the packet is resend again until resend threshold is reached (defaults: timeout 2 secs, send tries 3) with timeouts and resend. It follows pretty much the same interface as UDP sockets. It's good to know the following details: - the library sends acks only when send() method is called. If you have no payload to send after receive you can also just call send with NULL payload and 0 length to cause ReUDP library to send whatever it needs to send. - if the socket is set to non-blocking mode and the payload could not be sent because would block, the library will store the payload in a queue of buffers and will try sending it automatically when send() is called again. The send() method then returns success to the caller. - use needs_to_send() and needs_to_send_when() methods to determine if the library has to do sending and when (absolute time). Arto Jalkanen ajalkane@gmail.com
About
Resending UDP library
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published