This wiki has been migrated to and is now deprecated. Please use that site instead.

Trivial File Transfer Protocol (TFTP)

TFTP is used to transfer files in a very simple way.

Compared to other file transfer protcols (like: ["FTP"] or ["HTTP"]), TFTP is much simpler (and much smaller in code size) and therefore easier to implement. Because of this, it's often used in embedded devices (e.g. thin clients) to get files from a server at bootup time (typically in conjunction with ["BOOTP"]).

Sometimes TFTP is also used to upload firmware files from the user to an embedded device, but as these devices become more and more advanced, ["HTTP"] is more often used for this purpose today.


XXX - add a brief description of TFTP history

Protocol dependencies

Example traffic

XXX - Add example traffic here (as plain text or Ethereal screenshot).


The TFTP dissector is (fully functional, partially functional, not existing, ... whatever the current state is).

Preference Settings

There are no TFTP specific preference settings.

Example capture file

XXX - Add a simple example capture file to the SampleCaptures page and link from here. Keep it short, it's also a good idea to gzip it to make it even smaller, as Ethereal can open gzipped files automatically.

Display Filter

A complete list of TFTP display filter fields can be found in the [ display filter reference]

Capture Filter

You cannot directly filter TFTP protocols while capturing. However, if you know the ["UDP"] port used (see above), you can filter on that one.