FTP: fifty years and millions of FTP servers worldwide

FTP, File Transfer Protocol

It has been fifty years since the release of the FTP protocol. FTP (File Transfer Protocol) dates from April, 1971 (RFC 114). Its original specification was written by computer scientist Abhay Bhushhan. After half a century of its release, the FTP protocol remains widely used and has millions of FTP servers all over the world.

Fifty years since the release of the FTP protocol

The File Transfer Protocol has been reviewed sixteen times over these past fifty years. For instance, in 1980 NCP — the network protocol which had been used so far — was replaced by TCP/IP. Revisions over the years have also amended and upgraded FTP with security extensions such as FTPS, IPv6 support, NAT, etc.

SpecificationDate
RFC 114April 1971
RFC 697July 1975
RFC 765June 1980
RFC 959October 1985
RFC 1579February 1994
RFC 1635May 1994
RFC 1639June 1994
RFC 1738December 1994
RFC 2228October 1997
RFC 2389August 1998
RFC 2428September 1998
RFC 2577May 1999
RFC 2640July 1999
RFC 3659March 2007
RFC 5797March 2010
RFC 7151March 2014

FTP: File Transfer Protocol

The File Transfer Protocol is a standard communication protocol based on a client-server architecture with separate control and data connections. FTP is used for transferring files between a server and a client over a network. For communication and data transfer, the File Transfer Protocol can run both in active and passive mode. The mode determines how data connections are established.

Besides, for ensuring a secure transmission, it can be secured with FTPS (SSL/TLS) or replaced with SFTP (SSH File Transfer Protocol). This way the content is encrypted and the username and password are protected.

Data transfer types

There are four types for transferring data over the network:

  • Type A: ASCII. It is used for text file transfer. As different platforms have different types of line endings, ASCII translates line endings to properly adapt them to each platform.
  • Type I: image or binary. It is used for image and video file transfer. It transfers files without changes.
  • Type E: EBCDIC. It is used for plain text transfer between hosts using the EBCDIC encoding.
  • Type L: local. Data is transferred in logical bytes of the size specified by the obligatory second parameter.

ASCII and Binary/Image are the most commonly used and implemented data transfer types.

Free and open-source FTP clients

ClientRelease dateLicense
NcFTP1991Clarified Artistic License
FAR Manager (File and Archive Manager)1996BSD
lftp1996GNU GPL
cURL1997MIT
gFTP1998GNU GPL
tnftp (formerly lukemftp)1999BSD
WinSCP (Windows Secure Copy)2000GNU GPL
FileZilla Client2001GNU GPL
Cyberduck2002GNU GPL
net2ftp2003GNU GPL
Fugu2003BSD
FireFTP2004MPL 1.1 / Charityware
Rclone2014MIT
MacfusionBSD

For further information, you can visit Wikipedia’s comparison of FTP clients.

Free and open-source FTP servers

ServerRelease dateLicense
WAR FTP Daemon1996
FileZilla Server2001GNU GPL
Pure-FTPd2001BSD
ProFTPdGNU GPL
vsftpd (very secure FTP daemon)GNU GPL

For further information, you can visit Wikipedia’s comparison of FTP servers.

Share it on Social Media!