|
|
|
|
|
|
|
|
|
|
|
File Transfer Protocol (FTP) is a protocol that is part of the TCP/IP suite. It is the standard for transferring large amounts of data from server to server and from servers to clients. There is a very good chance that you have downloaded files from FTP sites many times, though it may have seemed you were only downloading from a website. FTP allows you to transfer files over a variety of hosts with different operating systems and file systems. There are so many FTP servers on the Internet, some are private with secure logon names, other ones are public with anonymous logins.
This paper will give a very brief outline of how the FTP Protocol functions and give the basic commands used during an FTP session. Keep in mind that these commands are generally automatic and are executed by either an FTP Client application, or done via your web browser. Though these methods are generally quicker than manually connecting to an FTP, it doesn't mean we should ignore the background behind how the technology works.
The FTP Protocol uses two connections to transfer a file. Each of these connections is quite a bit different, but work in conjunction with each other. The first connection is the Control Connection, which as the name implies controls the connection in regards to initiating the data streams and executing the commands. The second type of connection is the Data Connection, this connection is the actual connection that passes the files back and forth between the client and server.
Control Connection:
The control connection starts in a normal client / server manner. The client does an active open connection to port 21 of the FTP server to establish the control connection. The server is listening on port 21 for any active queries. Please keep in mind that though the primary FTP port is designated as porn 21, many servers, especially private ones are running on non-standard ports. The control connection as I mentioned early is the connection that allows you to pass commands between the client and server. Commands that must be sent are ones like LIST, STOR, and RETR. Once you enter a command on the control connection, you initiate the data connection.
Data Connection:
The data connection is spawned each time a file is moved between the client and server. The Control connection initiates the transfer with the PORT command, this tells the server to open an active connection to the clients passive port. The port command is typically the IP address followed by a 16 bit port number. The PORT command is issued in the following fashion:
PORT 24,82,116,92,4,150
That command should spawn a response of: 200 PORT Command Successful
After the PORT command has been initiated and is successful the next command in the data connection will be issued from the control connection. As I mentioned before this is typically a LIST, RERT or STOR. I will outline the basic FTP commands below for reference.
FTP Commands (Basic):
ABOR - Abort command and any data transfers
LIST - List the directory contents
PASS password - Used during authentication of login
USER username - Used during authentication of login
QUIT - Logoff / Quit session
RETR filename - Retrieve file from server STOR filename - Send a file to the server
SYST - Show System information
TYPE - Set the type of data, for instance ASCII
PORT - n1,n2,n3,n4,n5,n6 ( 1-4 = ip address, 5-6 port data)
HELP - Will give you additional available commands and more information
Reply Codes:
Reply codes are simply confirmations of things happening. One example of a reply code was went we got "200 PORT Command Successful" there are a handful of other reply codes, though generally the main ones are as follows.
125: Data Connection Open Start Transfer
200: Command OK
221: Goodbye / Terminate Connection
252: Write Error
331: Username OK, Enter Password
425: Can't Open Data Connection
500: Syntax Error on Command
501: Syntax Error on Arguments
Client Applications:
There are many different clients for FTP, and really it's up to personal taste in the end. A couple of the major ones are CuteFTP and FlashFXP. Personally I use FlashFXP when I'm in the Windows Environment. Just go to a freeware website or search on the search engines for a FTP Client and try a few out!
Summary of FTP:
The File Transfer Protocol is a wonderful and useful standard that has helped move data around the world safely and reliably for years. Everyone uses it from uploading their website to their web server, backing up their data to an off-site location, sharing their pictures with friends, or disseminating large data files for scientific research!
For even more information on the FTP, check out RFC 959.
Ken Dennis
http://KenDennis-RSS.homeip.net/
I recently took a good look at what was keeping... Read More
Each of the items in the checklist below is part... Read More
You use Ctrl+Alt+Del to see what's running on your PC,... Read More
In this era of Internet, most people are frequent users... Read More
How long do you think DVDs have around? 20 years?... Read More
What led them to this choice, as all four studios... Read More
Has This Ever Happened To You? OK.. it's Friday night,... Read More
Buying a receiver is one of the most important decisions... Read More
Passwords have a strange dual nature. The stronger and safer... Read More
If you don't have an mp3 player, and even if... Read More
First and foremost before I begin my ranting it is... Read More
The following practice, if done regularly, may help you to... Read More
Good Morning Mr. Sampson. Please type in you Personal Identification... Read More
Winter?the official start of the cold and flu season. Though,... Read More
I have a p3 500MHz PC with 128MB RAM, 10.2... Read More
JVC developed and used a high-performance reflective film to produce... Read More
MMC and SDFlash memory is available in so many formats... Read More
If you have a computer for home use or for... Read More
Tip #1 -- Rebates: A rebate is not always a... Read More
CCNAs and CCNA candidates hear it all the time: â??Get... Read More
In the first part of this home lab tutorial, CCNA... Read More
Youâ??ve studied hard; youâ??ve practiced your configurations; youâ??ve used your... Read More
When studying for your Cisco CCNA, CCNP, or CCIE exam,... Read More
Yes, it's true. You may have inadvertently invited a spy... Read More
Cisco Certification: Taking Your First Certification ExamYou've studied hard; you've... Read More
Windows Media Player 10 has been full of bugs from... Read More
If you have a computer for home use or for... Read More
ASR (Automated System Recovery) is a feature available on the... Read More
There are plenty of articles out there about how to... Read More
Peoples' private information needs to stay private, even after it... Read More
When studying for your Cisco CCNA, CCNP, or CCIE exam,... Read More
If you are a building a website or a forum,... Read More
This tip is on sharing files and folders on a... Read More
Simone is exasperated. She has to work on her university... Read More
No matter how fast your processor and regardless of how... Read More
Understanding digital camera prices makes finding the best camera value... Read More
PDA Medical BenefitsIf you are concerned about your medical history,... Read More
Feeling overwhelmed in selecting a new TV? With all the... Read More
Webmasters usually sit at their computers much longer in a... Read More
CCNA FAQQ. What exams do I have to take to... Read More
Below you will find some useful information and comments about... Read More
Plenty! When we made the decision to be our own... Read More
When you turn on your computer, does it act like... Read More
Do you remember the old saw about how computers would... Read More
Apache, MysQL and PHP for Windows could be a nice... Read More
If you use a computer, you need to know more... Read More
In the years of the dot com boom and bust,... Read More
Passwords have a strange dual nature. The stronger and safer... Read More
World War II - Germany decided to attack Poland. Poland... Read More
Tech support tells me to type 'regedt32' as opposed to... Read More
Personal Technology Personal Technology |