TFTP, czyli Trivial File Transfer Protocol, to prosty protokół przesyłania plików, szeroko stosowany w sieciach komputerowych do przesyłania plików między systemami. Działa z minimalną złożonością w porównaniu z innymi protokołami przesyłania plików, takimi jak FTP, dzięki czemu nadaje się do scenariuszy, w których prostota i niski koszt są korzystne.
TFTP wykorzystuje UDP (User Datagram Protocol) jako protokół transportowy. Zwykle działa poprzez port UDP 69, gdzie zarówno klient, jak i serwer komunikują się za pomocą tego portu. Bezpołączeniowy charakter protokołu UDP umożliwia protokołowi TFTP wysyłanie pakietów danych bez ustanawiania formalnego połączenia, co czyni go lekkim, ale oznacza również, że nie zapewnia mechanizmów zapewniających niezawodność, takich jak usuwanie błędów czy kontrola przepływu.
Format protokołu TFTP jest prosty i składa się z prostych komunikatów typu żądanie-odpowiedź wymienianych między klientem a serwerem. Komunikaty TFTP obejmują żądania odczytu i zapisu (RRQ i WRQ), pakiety potwierdzenia (ACK), pakiety danych (DATA), komunikaty o błędach (ERROR) i opcjonalne rozszerzenia opcji (takie jak negocjowanie rozmiaru bloku). Ten minimalistyczny format zapewnia efektywność przesyłania plików przez sieć.
Tak, TFTP jest rzeczywiście protokołem bezpołączeniowym. W przeciwieństwie do protokołów połączeniowych, takich jak TCP, które ustanawiają połączenie przed przesłaniem danych i zapewniają niezawodne dostarczanie poprzez mechanizmy takie jak potwierdzenia i retransmisje, protokół TFTP działa bezpośrednio przez UDP, wysyłając pakiety bez ustanawiania formalnego połączenia. Takie podejście upraszcza protokół, ale wymaga wyższych warstw lub aplikacji do obsługi niezbędnej niezawodności lub odzyskiwania błędów, jeśli to konieczne.