FTP

The File Transfer Protocol (FTP) is considered as the standard network protocol used when conducting a transfer of files between a client and server on a network. A protocol pertains to a system of rules that the network computers apply in order to communicate with one another. It is also a client-server protocol that is put to use when transferring files between different devices on the internet.[1] FTP uses the internet’s TCP/IP protocols in order to enable the process of transferring data.[2] It promotes the sharing of files across remote devices through reliable and efficient data transfer. FTP allows the people as users exchange and share data within their areas and across the entire internet.

Functionality

FTP works by using the model of a client-server in which the FTP server and the FTP client will perform the whole file transfer operation. The FTP server will be configured in the network and a specific file storage location like a folder will be identified. That specific location will now become the new storage for the shared data that will host the files that the user wants to share. The end users will need to access the said file server through FTP in order to start copying the files into their local folder or local system. The FTP is dependent on TCP/IP in order for a network to function and it relies on the use of one or more FTP clients.

The FTP client will act as the communication agent that will interact with the server to download and upload the files. Thus, FTP clients send out such connections to the FTP servers. While listening to the request from the client to either upload or download the files, the FTP server will already perform the files transfer operation.[3] Furthermore, when the FTP session will start between a client and a server, the client will initiate the control TCP connection along with the server end. The client will send the control information over this. When the server receives this, it will initiate a data connection with the client end. With this, there is only a limit of one file that can be sent over one data connection.

The control connection will remain active throughout the user session. FTP needs to maintain a state with its user throughout the session. This is unlike another protocol, HTTP, that is stateless and does not need to keep track of any user state.[4]

The following are the basic tasks that an FTP can really do:

  • Transfer files between different computers
  • Create directories
  • Remove directories
  • List files

Three types of data structures allowed by FTP:

  • Record structure – the files are made up of sequential records.
  • Page structure – the files are made up of independent indexed pages.
  • File structure – No internal structure and the files are considered to be a continuous sequence of data basis.

Transfer Protocols

Both FTP and HTTP are highly considered as the file transfer protocols most often used for transferring data between a client and server. HTTP functions the same with the joint functions between FTP and SMTP. However, they also have set differences.

FTP

  • Transfer files from one host to another host.
  • It establishes two connections, one for data and the other one is for the control connection.
  • FTP will appear in the URL.
  • Efficient in transferring huge files.
  • This requires a password.
  • The files that will be transferred to the host using FTP will be saved in the memory of the host device.

HTTP

  • This is used in order to access websites.
  • Only established data connection.
  • HTTP will appear in the URL.
  • Efficient in transferring smaller files just like the web pages.
  • It does not need any forms of authentication.
  • The content that will be transferred to a device using HTTP will be saved to the memory of the device.

Hence, FTP is older and is being replaced with the new protocols while HTTP will be there in the near future.[5]

FTP Types

FTP Explorer

This is a client application which was designed to look and feel very similar to the explorer file system view of the Windows user interface.

FTP by Mail

This allows the users who have no access to the internet and copy the files by using anonymous FTP through sending an email message and putting the word help in the body of the text.

FTP Site

This is a website where the users can just easily upload or download specific files.

FTP Server

This is a dedicated computer that provides FTP service. It invites the hackers and necessitates security hardware or software like utilizing usernames, passwords and file access control.

FTP Client

This is a computer application that accesses an FTP server. With this, the users need to block incoming FTP connection that attempts using passive mode and must check the viruses for all the files that are downloaded.

History

In 1971, the first FTP standard was published by Abhay Bhushan of MIT. This first version is also known as RFC 114. Between the years1971 and 1980, other versions were also brought into the industry, namely RFC 172, RFC 265, and RFC 354. In 1980, the currently used modern version of the FTP standard was published. Regarded as the second generation, in 1985, RFC 959 was rolled out.

Between 1980 to 1997, client-server functions were defined. In 1997, FTPS protocol was applied to FTP in the 3rd generation. In 1998, the extension for IPv6, NAT and extended passive mode were proposed. During the mid-2000s, SFTP was first proposed in 1997 as part of RFC 4251 standard. The organizations started to use MFT or managed file transfer solutions as a replacement for the basic FTP server. Compared to FTP, it offered higher levels of security, governance and file transfer control and it also supports FTPS and SFTP protocols.


  1. https://www.cloudwards.net/what-is-ftp/ ↩︎

  2. https://www.webopedia.com/TERM/F/ftp.html ↩︎

  3. https://www.serv-u.com/solutions/what-is-file-transfer-protocol ↩︎

  4. https://www.geeksforgeeks.org/computer-network-file-transfer-protocol-ftp/ ↩︎

  5. https://techdifferences.com/difference-between-http-and-ftp.html ↩︎