File Transfer Protocol, or FTP, is a system for transfering files from one computer to another. The files can have any form; text files, images, compressed files, raw data, etc.

FTP is a client-server system. A person who wants to transfer files runs a program called the FTP client and connects to an FTP server somewhere on the internet or an intranet. The server asks for identification in the form of a username and usually a password. The person supplies these to the client which passes them along to the server. The username and password must be obtained independently of the FTP protocol, usually in the form an account assigned to that person, except that many FTP servers provide a form of public access to the username anonymous for which any password is accepted.

Once connected, the person can navigate the file system the server makes available, retrieve directory listings and files, send files to the server, create directoies, rename or delete files, and possibly perform other operations. However, the files which the server makes available and the operations it permits are typically dependent on the account used to connect to FTP. The anonymous account typically has the least permissions, usually limited to retriving directory listings and files and possibly sending files to one directory set aside for uploads.

The protocol is defined by RFC 959.