What is FTP Protocol in Networking?

FTP (File Transfer Protocol) was developed on April 16, 1971, by Abhay Bhushan for MIT resource research and was defined in 1985 in RFC 959.

What is FTP Protocol in Networking?

What is FTP Protocol?

It is the protocol used to access an Internet host and then transfer files between that host and the computer you use.

This is a protocol that allows file transfer between two computers. Although it is a protocol, it is also a program. Using this protocol, you can transfer files between two computers through a program.

It is also the name of the program used to process this protocol and is based on the client/server architecture. Therefore, you run a client program on your computer and connect it to a server program running on its host computer.

In computing, it is a network protocol for transfer between systems connected to a TCP (Transmission Control Protocol) network based on the client-server architecture. You can connect to a server from a client computer to download or send files from the server, regardless of the operating system used on each computer.

Security

The FTP service is normally provided to the user by the Application layer of the TCP/IP network layer model, using network ports 20 and 21. The main problem with this is that it is designed to offer maximum connection speed. However, it is not maximum security because all information exchange from the user’s login name and password on the server to the transfer of any file is done in plain text, without any encryption type, so that a potential attacker can catch this traffic, access the server or be suited to the transferred files.

The FTP program has emerged as a UNIX support service, but today versions are available for almost the most popular operating systems. The traditional UNIX FTP program launches a text-based command processor; however, most modern versions use a graphical user interface with drop-down menus or drop-down menus. General consensus suggests that graphic versions are easier to use; however, after mastering things, though not fancy, command processor-based versions are usually faster.

To solve this problem, applications such as SCP and SFTP included in the SSH (Secure Shell) package are useful for file transfer but only to encrypt all traffic.

Historical

In 1968, ARPANET was born as a small network of several computers transmitting information via packet switching, and three years later, a group of MIT researchers presented their first “Protocol for the transmission of files on the Internet” Protocol for file transfer on the Internet. (RFC 114). It was a very simple email-based protocol, but it laid the foundation for the future File Transmission Protocol.

In 1985, fifteen years after the first offer, the development of the protocol currently in force for the transmission of files on the Internet was completed based on the client-server philosophy.

The big internet boom took place in 1995. This year can be considered the birth of commercial internet. Since then, its growth has exceeded all expectations. This year, the World Wide Web has surpassed FTP, which became the preferred service on the network after Telnet became popular in the previous year.

With the advent of the World Wide Web and browsers, it is no longer necessary to know complex FTP commands, you can use this protocol by typing the URL of the server you want to connect to the web browser.

The original version of FTP was released as RFC 114 on April 16, 1971, and was later replaced by RFC 765 (June 1980) and RFC 959 (October 1985), which is currently in use. Many proposed alternatives such as RFC 2228 (June 1997), which offered security extensions to the 1985 version, and RFC 2428 (September 1998), which added support for IPv6 and defined a new passive mode type.

Model

In the model, the PI (user protocol) user interprets the control connection at port 21. Standard commands are created by user-PI and transmitted to the server process via the control connection. Standard responses are sent from the server-PI to the user-PI by the control link in response to commands.

These commands specify the parameters of the data connection (data port, transfer mode, representation type, and structure) and the process (storage, import, add, delete, etc.) in the file system. The user data transfer (DTP) operation or another process must wait for the server to initiate the connection to the specified data port (port 20 in standard or active mode) and transfer data based on the specified parameters.

Communication between client and server is independent of the file system used on each computer. It is therefore not important for operating systems to be different, because entities communicating with each other PI and DTP use the same standardized protocol.

It should also be noted that the data connection is bidirectional, that is, it can be used simultaneously for sending and receiving, and it does not need to be available for the entire duration of the connection.

   FTP Server

The FTP server is a special program that runs normally on a server computer connected to the Internet (although it is connected to other types of networks). Its function is to allow data exchange between different servers/computers. Usually, server programs are not found on personal computers, so a user normally uses FTP to connect to a computer remotely and thus exchange information with it.

The most common applications of FTP servers are usually web hosting, which your customers use as a backup server to load web pages and their corresponding files, or as a backup server for important files that a company might have. For this, there are communication protocols for encrypted transmission of data such as SFTP.

   FTP Client

If a browser does not have FTP functionality or you want to upload files to a remote computer, you must use a client program. A client program is installed on the user’s computer and connects to a server and is a program that uses this protocol to download or upload files.

To use an FTP client, you need to know the name of the file, the computer it’s on, the computer you want to transfer the file to, and the folder it resides in.

Some basic console mode FTP clients are built into operating systems such as Microsoft Windows, DOS, GNU/Linux, and Unix. However, clients with additional options and graphic interfaces are also available. Although it is already integrated with many browsers, it is more reliable when connecting to anonymous servers using a client program.

   Anonymous Access

Anonymous FTP servers freely offer their services to all users and allow them to access their files without having to have a ‘Registered User’ or user account. Allowing everyone to access certain information without having to create an account for each user is the most convenient way out of the web service.

If a server has ‘anonymous FTP’ service by simply typing the word “anonymous”, the user will have access to that system when requested. No preset password is required, but for that moment you will only need to enter one, normally you will use your own e-mail address.

Although it has fewer privileges than a normal user, this is the only way to access FTP files. Normally you can only read and copy existing files, but you cannot change or create new ones. An anonymous FTP server is normally used to store large files. Files that are useless if they are not transferred to the user’s machine, such as programs and web page servers (HTTP), are reserved to store text information for online reading.

   Web-Based FTP client

A “WEB-based FTP client” is nothing more than an FTP Client that we can access through the Web Browser without the need for another application. The user accesses a web server (HTTP) that lists the contents of a server. The user connects to a web server over HTTP, and the web server connects to the server over FTP. The web server acts as an intermediary by passing information from the FTP server on ports 20 and 21 to 80 HTTP ports the user sees.

There are always times when we are away from home, not carrying a laptop, and we need to perform some urgent tasks from a public access computer, a friend, work, university.

The most common is that the apps we need are not installed, and in most cases, we even lack the necessary permissions to install them. At other times, we are behind a Proxy or Firewall that does not allow us to access external servers.

With the web-based client, we can access the remote FTP server as if it were doing another WEB scan. One of the most popular Web-based FTP Clients is Net2Ftp. With a web-based FTP client, you can create, copy, rename and delete files and directories.

   File Transfer Types

It is important to know how we should move a file over the network. If we do not use the appropriate options, we can destroy the file information. Therefore, when executing the FTP application, we must remember to use one of these commands (or put the corresponding option in a program with a graphical interface):

  • ASCII

It is suitable for transferring only files containing printable characters (ASCII files, not files originating from word processing), for example, HTML pages, but for images that may contain.

  • Binary

This type is used when it comes to compressed files, computer executables, images, audio files.

   Abstract

By connecting to the remote computer with this protocol, you can list both folders and files and download them to your computer. Another use case is that you can easily upload or download files by accessing the Web Server.

In short, after establishing a connection between the client and the server, you can make any changes to the files on the server. So, you can delete or edit these files.

Also, when transferring files, a username and password are required. However, in some cases, an Anonymous account can be created to set up a common public access server.

This protocol uses TCP and uses 21 ports assigned by IANA by default.

When to Use It?

Although this protocol is insecure, it is still used today. For example, you can use the file protocol to send files between two locations. If you want to transfer your smaller files, you can also do this by Email.

Another example of use is; Used to update network devices or to back up and update configuration files.

How to Use FTP Command in CMD on Windows 10

You can simply use this protocol with the CMD command prompt on Windows operating systems. The command below is used to connect to the server.

C:\> ftp
ftp> open ftp.WEBSITENAME.com

Commands

You need to know and understand the FTP commands in CMD. The commands you can use in Windows Command Prompt are as follows.

Cd: Used to change directory.
Cd ..: Used to move to the previous directory.
Pwd: Used to indicate the path of the array.
Dir: Used to list files.
Ls: It is used to list files briefly.
Get: Used to receive the file. (File transfer)
Put: Used to send files. (File transfer)
Mget: It is used to import more than one file.
Mput: Used to send multiple files.
Ascii: Used to indicate that ASCII is used as a transfer mode.
Binary: Used to set BINARY as the transfer mode.
Delete: Used to delete a file.
Mkdir: It is used to create a new directory.
Rmdir: Used to delete an empty directory.
Help: Lists available commands.
Lcd: Used to change the directory on the local machine without leaving FTP.
Close: It just closes the connection without leaving FTP.
Quit: It is used to completely exit FTP.

 

Free Programs for File Transfer

There are also free FTP programs that provide a great convenience for configuring your files. These;

1. FileZilla (Windows and Mac Compatible.)
2. Cyberduck (Windows and Mac Compatible.)
3. FireFTP (Windows and Mac Compatible.)
4. FreeFTP (Windows Compatible.)
5. WinSCP (Windows Compatible.)

The most used and recommended program is FileZilla.

What is SFTP?

SFTP (Secure File Transfer Protocol) is an application-level protocol that enables file transfer and manipulation over a reliable data stream. It is used in conjunction with SSH to provide security for data and allows it to be used with other security protocols.

   SFTP Features

  • It allows different operations to be done on remote files.
  • Although most platforms have SFTP servers, they are implemented more frequently on Unix platforms.
  • It is designed to be a separate protocol.
  • It is not an Internet standard yet.
  • The most commonly used version is version 3, run by the popular SFTP OpenSSH server.
  • In version 4, it reduced its connections to the Unix platform, so it based many Windows applications on SFTP servers.
  • SFTP uses TCP port 22.
  • Security in the transmission is not provided directly by the SFTP protocol, but by SSH or the protocol used in this case.
  • To upload files, the transferred files can be associated with their basic attributes such as time, the latter is an advantage over the common FTP protocol because it does not have any credit to include files in the original date.
  • SFTP offers programs to clients using an interactive interface similar to traditional FTP programs.

   Using SFTP

  • It can be used to log on to a secure interactive FTP. It is similar to FTP, except that it uses a secure encrypted connection.
  • After authentication, you can use a command set similar to the one used by the FTP command.
  • You can get a list of all commands by running the man SFTP command in Shell.

   Final Word


In this article, we briefly provided information about the FTP. Although this protocol provides a fast file transfer, it is an insecure protocol. For this reason, we recommend using Secure FTP (SFTP) or SSH, which provides a secure data transfer rather than using this protocol. Thanks for following us!

   Related Articles


Using SSH
Telnet Protocol
Changing DNS
NAT Protocol
Sysprep Protocol

Add a Comment

Your email address will not be published. Required fields are marked *