FTP is one of the oldest computer network protocols. It appeared in 1971, long before HTTP and even before TCP. At first it worked on top of the NCP protocol, then became a part of TCP/IP suite. It’s widely used today for software distribution and access to remote file hosts. The first FTP client applications were interactive command-line tools that implemented standard commands and syntax. Graphical user interfaces have since been developed for many operating systems.
The protocol is built on a client-server architecture and uses different network connections to transfer commands (TCP port 21) and data (TCP port 20) between the client and the server. FTP clients can be authenticated by passing username and password to the server in plain text, or, if allowed by the server, they can connect anonymously.
FTP in its “clean” form, despite being the de facto standard for transferring files between remote computers, has serious security issues (the password is transmitted over the network in the unencrypted form). Therefore, it’s strongly recommend to use secure FTPS protocol. Clients can also use the SSH protocol for secure transmissions, hiding (encrypting) login and password and encrypting content. FTP with SSH encryption is called SFTP.
To access the server or remote computer via FTP there are special programs called FTP clients. There are a lot of FTP clients and FTP support is built into many file managers and even directly into operating systems. The most popular free programs are:
Protocol, port, TCP/IP, HTTP, HTTPS, SSH