To begin, FTP is short for File Transfer Protocol. The internet is made up of many protocols which are simply rules everyone agrees upon. Rules make it easy for computers to talk with each other across a network of computers connected to each other. Imagine if 10 people in a room spoke a different language. It would be hard to get anything done. But if all 10 people spoke Hungarian, or agreed to speak Hungarian, they could work together. Internet protocols work the same way.
What is FTP?
The file transfer protocol governs how data is sent over networks. FTP is a set of commands you can type into a command line interface tool like iTerm or use as you drag and drop files from your local computer to a remote computer with a more familiar software tool like Filezilla.
The most common use of FTP is to upload and download files used to build and maintain websites. When someone says, “I use FTP,” often they mean they use software that sends file transfer protocol commands between two computers connected to each other on a network. The FTP commands allow the person to manage files on their computer and the remote computer. The software they use is not FTP. The software is simply a tool, a way to send and receive FTP commands.
How Does FTP Work?
When you meet someone for the first time, what do you say? Most people say “hello.” The file transfer protocol does the same thing. It’s called a handshake. One computer says hello to another computer which acknowledges the hello and says hello back. Each of the two connected computers agree to speak the same language made up of commands defined as the file transfer protocol.
Once two computers use FTP to say hello, agree to speak the same file transfer protocol language of commands, and connect, the rest of the session is a set of commands which result in actions. You could request a file or folder be copied to your local computer. Or send files to the remote computer.
When the session is done, your local computer and the remote computer say goodbye and disconnect.
How do you use FTP?
Once connected, what you type into a command line interface tool or do with software like Filezilla, determines which commands are sent, how they are received by the other computer, and what happens next. If you type
get my-file.txt on your computer, the
get command is sent to the remote computer which will look up the file name
my-file.txt and send it to your local computer.
The same command is sent to the remote computer if you use software like Filezilla to drag the file
my-file.txt from the list of files on the remote computer to the list of folders and files on your computer. You simply don’t see the
get command sent, nor any responses. Instead, you see your file transferred to your local computer.
You can turn on a window pane in the FTP software to see commands as they are sent and received. However, the commands move so fast you often have to scroll up to see how computers interact with file transfer protocol commands.
Here’s an odd secret: you can use many web browsers to make FTP connections from your computer to other computers on a network. It’s slower, and definitely feels odd, but it works. You type the ftp address in the URL bar of your web browser, for example,
ftp.somesite.com, and the browser handles all the connection details.