A single-file TFTP (Trivial File Transfer Protocol) server implementation in Java.
Implements the TFTP protocol (RFC 1350) supporting both Read Request (RRQ) and Write Request (WRQ) operations over UDP. Handles:
- File reads from a configured read directory
- File writes to a configured write directory
- Error handling with standard TFTP error codes
- Timeout and retransmission (up to 3 retries)
- Standard 512-byte data blocks (last block signals end of transfer)
Java, UDP sockets (DatagramSocket/DatagramPacket), TFTP protocol
bash java TFTPServer
Reads from read/, writes to write/ (created automatically).
Course project — basic TFTP server demonstrating UDP protocol handling and file I/O.