*References are provided at the bottom of this article.

Introduction
File Transfer Protocol (FTP) is used to transfer files between different computers. It transfers files unencrypted, which has been addressed with through adding security measures or by making a secure connection and using FTP through that connection. Although there are alternatives, it is still used today. There are many protocols for transferring files and FTP is what is most often employed. Netscape created Secure Socket Layers to ensure encrypt the data being transferred.
History
FTP was created by Abhay Bhushan and submitted for review April 16, 1971 in Request For Comment (RFC) 114. Bhushan proposed FTP as a method for uniformly presenting data to users so navigation of this system would be consistent. According to IETF's (Internet Engineering Task Force) website the current internet standard for FTP is RFC 959 although there have been proposed revisions for security purposes. When Bhushan first presented FTP, Network Control Protocol (NCP) was the standard for computer connections but this title has been changed to TCP (Transmission Control Protocol) which you may be familiar with seeing in written TCP/IP (TCP/Internet Protocol).
Overview
FTP uses port 20 and 21 of the server to send data and control the connection to and from the client. Servers are computers that provide a service to another computer named the client. The core contrast between either is that servers are automated computers that respond to input from the client.
Connections are started by client's request to port 21 of the server. Authentication is requested at this point, by some servers, other servers simply comply with the request and open up port 20 for data transfer.
There are two modes that FTP operates within, active and passive. Active FTP involves the server providing the client with data from its port 20 to the clients port of 1024 or greater up to 65535. Passive mode is best for clients who have firewall protections because the client initiates all the connections to the server. Firewall protections are implementations that filter data traffic with outside networks and may protect against data being received or sent.
This protocol allows a user to access files from server as if they were logged into their own computer but restrictions are often implemented. Restrictions to a client's access vary depending on how the server is set up. For instance Google has a service for email, Gmail, that allows users to access all of their own emails. A user can see what they've sent and received as long as they haven't deleted the information entirely. The user may not, however, access another users emails, sent or received. Google is the server for all the clients that use Gmail accounts and they imposed this restriction for user privacy as well as their own protection. If some entity was able to access the server, or servers, that run Gmail they would be able download every Gmail account's contents and the programs that run Gmail.
Anonymous connection to FTP is possible and sometimes offered by servers that provide these services. Using FTP anonymously means that you don't log in with your username, instead you are assigned 'anonymous' and your email address is typically used as your password.
Although browsers support FTP they are less secure and so the use of an interface is advised over a browser connection. There are several graphical FTP interfaces available, some of which are free. Filezilla is a widely known graphical interface although there are many other free graphical FTP interfaces like Cyberduck or Core FTP LE. The key is finding a distribution of the interface that works with your computer's operating system (OS). Filezilla and Cyberduck both work on multiple OS's.
Security & Secure FTP Connections
Secure shell (SSH) login may be used in to create a secure connection for FTP to work in, this is known as SFTP. Data is encrypted in binary and uses only one channel, port 22, when using SFTP. User ID, password, and public/private keys are used in connecting with SFTP.
FTPS, is FTP using Secure Socket Layer (SSL). It utilizes ports 21 and 22, 21 is for the control channel and 22 is for data. Human readable text is encrypted with SSL and the connection is authenticated by user ID, password, and certificate(s) .
Additional Information:

Internet Engineering Task Force. (2018). About the IETF
FrenchToast Philip explains FTP, it's modes, and ports.
Youtube. (2016). What is File Transfer Protocol? (Active vs Passive Mode)
by
FrenchToast Philip
Key Terms

Directory - File System
FTP - File Transfer Protocol
FTPS - File Transfer Protocol using SSL
HTTP - Hypertext Transfer Protocol
IETF - Internet Engineering Task Force
IP - Internet Protocol
NCP - Network Control Protocol
OS - Operating System
RFC - Request for Comments
SFTP - SSH File Transfer Protocol
SSH - Secure Shell
SSL - Secure Socket Layer
TCP - Transmission Control Protocol
TLS - Transport Layer Security
Resources:
alternative To. (2018). Alternatives to Core FTP for Mac with any license
Begin Linux. (2009). Ubuntu 9.10: FTP Connections
Business Dictionary. (2018). What is errata?
Computer Hope. (2017). Abhay Bhushan
Daniel Haxx. (2017). FTP vs HTTP
Digital Trends. (2016). WTF is FTP? The file transfer protocol, explained
FileZilla. (2018). Overview
Gibson Research Corporation. (2018). Port Authority DatabasePort 20
Globalscape. (2012). Why use HTTP for file transfers
Go Anywhere. (2011). SFTP vs. FTPS: What's the Best Protocol for Secure FTP?
Hosted FTP. (2018). FTP vs FTPS vs SFTP - What is the difference
How to Forge. (2017). How to use the Linux ftp command to up- and download files on the shell
Indiana University. (2018). Use FTP to transfer files
Indiana University. (2018). What is a firewall?
Internet Engineering Task Force. (2018). RFCs
Internet Society. (2018). About the IETF
Microsoft. (2016). FTP over SSL <ssl>
Microsoft. (2014). Revisiting FTP Basics
Pi Up My Life. (2018). How to Setup Raspberry Pi FTP
Quora. (2016). Why does the IETF not correct the errata in RFC?
Request For Comment (1971). A File Transfer Protocol
Request For Comment (1971). A FIRST CUT AT A PROPOSED TELNET PROTOCOL
Request For Comment (1980). File Transfer Protocol
Request For Comment (1985). File Transfer Protocol (FTP).
Request For Comment (1994). Firewall-Friendly FTP
Request For Comment (1998). FTP Extensions for IPv6 and NATs
Request For Comment (1971). FTP Security Extensions
Request For Comment (1994). How to Use Anonymous FTP
Secureworks. (2016). What is Firewall Security?
Server Fault. (2011). What port does SFTP use?
Server Fault. (2009). What firewall ports do I need to open when using FTPS?
Slack Site. (2018). Active FTP vs. Passive FTP, a Definitive Explanation
Stack Overflow. (2008). What is the largest TCP/IP network port number allowable for IPv4?
Stack Overflow. (2009). What is the difference between active and passive FTP?
SSH. (2018). SSH (SECURE SHELL)
SSL. (2005). Q10241 - FAQ: What is SSL?
Tech Radar. (2017). The best free FTP client 2017
Tech Republic. (2010). Review: FileZilla FTP client
Techwalla. (2018). HTTP Vs. FTP File Transfer
Tec Mint. (2013). How to install and Configure OpenSSH Server In Linux
The Cisco Learning Network. (2008). Port 20 and 21
The Cisco Learning Network. (2015). Why does FTP have 2 port numbers?
The TCP/IP Guide. (2005). FTP Overview, History and Standards
The TCP/IP Guide. (2005). TCP/IP Overview and History
The Windows Club. (2018). Cyberduck: Free FTP, SFTP, WebDAV, Google Drive client for Windows PC
What Is. (2011). Request for Comments (RFC)
Wikipedia (2018). Abhay Bhushan
Wikipedia (2018). File Transfer Protocol
Wikipedia (2018). FTPS
Wikipedia (2018). Internet Draft
Wikipedia (2018). Request for Comments
Wired. (2010). FTP for Beginners
Youtube. (2010). Active FTP vs Passive FTP Demistified Part 1
Youtube. (2014). Explaining FTP for Dummies
Youtube. (2012). What is FTP (File Transfer Protocol) and how do I use it?
#online #internet #withreferences #references #withreference #withcitation #citation #cited #example #examples #source #sources #filetransferprotocol #whatisfiletransferprotocol #filetransfer #file #files #transferringfiles #FTP #ftp #TCP #TCPIP #IP #File #FileTransferProtocol #sshftp #ssh #transfer #Transfer #transferfile