Every network engineer has used Trivial FTP at some point in their careers to
update the software or configuration of network devices,
and for good reason.
This module explores TFTP in depth, but I'll warn you, it's relatively simple.
Here's the lineup for this module.
At this point in the course, we have covered many file transfer alternatives.
Why do we need another one?
I'll answer this question and explain how TFTP works.
Next,
I will jump right into a demonstration to show how
TFTP uploads and downloads operate, followed by packet analyses.
Securing TFTP from a network perspective is an
interesting topic worth a brief discussion,
so I'll provide my thoughts here.
Last,
I'll compare TFTP to FTP and provide some real-life examples of
where to use each one when given a choice.
TFTP is defined in RFC 1350,
and I thought it would be fun to paraphrase parts of the
RFCs purpose section to make my point.
First, TFTP is, as you may well guess, trivial.
As a developer, creating a TFTP server is relatively simple,
and as an operator, it's easy to use.
In the previous modules, we learned about all the message types,
caveats, operating modes, and security techniques relating to FTP.
TFTP has none of that.
TFTP is the archetypal file transfer application,
since file transfer is all it can do.
As a one-trick pony, there are no fancy features,
such as directory listing, permission changing,
or security settings.
The protocol is built on top of User Datagram Protocol,
or UDP, which is the first file transfer application we've learned about that is.
TFTP introduces application-level acknowledgements, since UDP is unreliable at layer 4.