UDP File sender and receiver
Can use broadcast address to send file on all computers in LAN
- Send file to one or all computers in LAN
- Reliability of data transmission
- Server timeout detection
- Change MTU
Clone the source repository from Github.
-
On the command line, enter:
git clone https://github.com/gistrec/File-Broadcaster.git git submodule init git submodule update --recursive --remote
-
You can probably use Github for Windows or Github for Mac instead of the command line, however these aren't tested/supported and we only use the command line for development. Use this link to download the command line version.
- Windows:
- Visual Studio 2015 or 2017
- Linux:
- g++
- pthread
- arpa
- Windows
- Open FileBroadcaster.sln via Visual Studio
- Build project
- Linux
- Open a terminal/console/command prompt, change to the directory where you cloned project, and type:
make all
- Open a terminal/console/command prompt, change to the directory where you cloned project, and type:
Parameter | Default | Description |
---|---|---|
p, port | 33333 | Sender and receiver port |
f, filename | none |
Transmitted and received file |
t, type | receiver | receiver or sender |
ttl | 15 | Seconds to wait cliend requests or sender responses |
mtu | 1500 | MTU packet size |
broadcast | 255.255.255.255 | Broadcast address. Can use to unicast. |
- Sender send
NEW_PACKET
packet to broadcast (or unicast) address - Sender send all parts of file via
TRANSFER
packet - If any pacckets were lost, receiver ask them sending
RESEND
packet to broadcast (or unicast) address - Sender wait
RESEND
packets or wait TTL and turns off - Receiver ask all lost parts, until the whole file is no downloaded or wait TTL and turns off