File Transfer Protocol Structure


File Transfer Protocol (FTP) refers to a specific standard which is employed in the processes of transferring files within a networked environment (Evans & Treharne, 2005, p. 258). FTP uses a TCP network to facilitate the transfer of various file formats among network hosts. The commonly used TCP network in TCP processes is the internet. The FTP is currently the most preferred network protocol in access, retrieval and transfer of files by network users. Wang, Feng, Zhang & Zhang (2010, p. 885) illustrate that FTP is based on the client-server network architecture which means the transfer of files between the server and the client employs a completely separate data connections and control mechanisms. It is through this protocol that authentication of users is achieved and therefore unauthorized access to the system prevented. Secure transfer of files through the FTP which is characterized by encryption techniques such as unique user names and passwords which authenticate users of a specific network (Evans & Treharne, 2005, p. 260). This paper describes and illustrates FTP architecture in terms of servers, clients, ports, models, data representations and its advantages and disadvantages.


Evans & Treharne (2005, p. 270) demonstrate that the FTP architecture employs two main ports within the network connections. These are the control and data transfer ports. These two ports are required so that the TCP services are effectively and efficiently utilized during the processes of file transfer. The control connection in the FTP architecture is commonly referred to as port 21. The data transfer connection, on the other hand, is referred to as port 20. The FTP architecture is illustrated on Figure 1 below with a demonstration of the two main connections. The client-server principle is also illustrated within the figure. It is through the client program that the users within networks are able to interact with the servers. The connections within the FTP allow users to access the services and files or information within the server terminal or computer (Spanbauer, 2007, p. 184). It is important to note that the FTP client program is the interface which allows the user to find the location of specific files and initiate the process of transferring them to the desired location (Wang, Feng, Zhang & Zhang, 2010, p. 890).

The Control Connection

Wang, Feng, Zhang & Zhang (2010, p. 892) illustrate that the operational model of the FTP architecture has a logical and distinct control channels which lie between the FTP server and the FTP client or user. The control channels play a significant role in ensuring that access of users to the server is controlled through an authentication process so that only authorized users are able to access files, retrieve, and transfer or use them. The FTP is designed in a manner that before any file transfer is achieved; a control connection is established (Muhammad & Corbett, 2006, p. 46). After the connection of the control, a FTP session is initiated that allows authentic users to access and transfer data within the network. During the process of control connection, the FTP server plays a passive role as illustrated on Figure 2 below. A server protocol interpreter which is referred to as Server-P1 listens to port 21 which is the control connection or TCP port which whose main function is to control access of users to the network (Evans & Treharne, 2005, p. 265). The Server-P1 then initiates the client server connection which involves setting up a TCP connection between the server and the client device via port 21 (Spanbauer, 2007, p. 184). At this stage, commands can be sent between Server-P1 and User-P1. It is however notable that once channels of communication or file transfer have been opened, login sequence is called by the FTP standard which is aimed at ensuring that only authentic users are able to transfer files within the network.

The Data Connection

The data connection in FTP architecture use the data transfer connection or port 20. During the process of data transfer, the client provides a passive open within an ephemeral port (Joyce, 2004, p. 16). The PORT command is used by the client to inform the server of the ephemeral port number. The server then provides an active open within the data transfer port 20 towards the ephemeral port. The server then creates an ephemeral port number also referred to as child server which is aimed at ensuring that the needs of the client for file transfer services are met as effectively and efficiently as possible (Mendelson, 2002, p. 137). It is notable that only authorized clients are allowed to use the services of the network as authenticated during the control connection phase of the network communication and file transfer processes (Joyce, 2004, p. 20).

Active Mode versus Passive Mode

During the processes of port or address negotiations within a FTP session, there are active negotiations between the server and client. These negotiations include communication of the port number and IP addresses which are used are the process of file or data transfer (Wang, Feng, Zhang & Zhang, 2010, p. 890). For this to be achieved, the client provides a PORT command when it is in the active mode. Otherwise a PASV command is issued in the passive mode (Muhammad & Corbett, 2006, p. 47). When the active mode is running, the client therefore provides the server with the PORT command which signals the server to automatically open an active process of data connection to the user or client. However when the passive mode is running, the PASV command from the client signals the server to choose and provide most appropriate port number and IP address to the client and listens to the client in a passive manner as the client tries to initiate data connection and transfer files within the network (Spanbauer, 2007, p. 184).

Basic Steps in File Transfer

Spanbauer (2007, p. 184) shows that within the FTP architecture, the process of file transfer follows various steps which are governed by specific commands, protocols and ports. The first main step is the establishment of the server-client connection. This is made possible through the control and data connections that have been described in the above sections. After the establishment of the connection, the client navigates through the files within the network in their different structures or formats with a view of identifying the file or group of files which are needed and meant to be retrieved or transferred. Then the client transfers files. It is notable that each of these steps is characterized by specifics which vary depending on the type of internet connection and the kind of client program which is used to access, retrieve and transfer files within the network (Fairbairn, Koehler & Ogden, 2007, p. 47). The various standards and protocols which define the different stages and processes of communication within the network also acts to define the variations which exist within the steps of file transfer in the FTP architecture (Evans & Treharne, 2005, p. 258).

The importance of having both the passive and active modes is based on the fact that firewalls may be installed between the server and the client. The common connections within FTP architecture are characterized by a FTP server which is situated immediately behind a firewall and therefore blocks all traffic and only allows traffic which incomes from Port 21. This is commonly referred to as FTP traffic because the connection has been controlled and authenticated. In cases where the client issues a PASV command, the FTP server responds by issuing the client with the port and IP address which would be used reestablish a connection with the server.

Data Representations

The transfer of data within the FTP architecture is achieved through various data representations. These include the ASCII mode, ABCDIC mode, Image mode and Local mode (Lais, 2000, p. 74). The ASCII mode is used in the transfer of text formats of data. When necessary, data conversion takes place before it is transmitted through the preferred format. The ASCII mode is therefore not compatible with any data formats which are not presented in plain text (Wang, Feng, Zhang & Zhang, 2010, p. 895). The EBCDIC is same as the ASCII mode because it uses the EVCDIC set of characters in the transfer of plain text formats within the network. The image mode which is also referred to as the binary mode involves file transfer process in which transmission is achieved byte by byte which develops a byte-stream that is sent to the receiver or user of the network (Muhammad & Corbett, 2006, p. 46). The local mode on the other hand is used in the transfer of files among terminals without the need for converting them into the plain text format. Proprietary formats of data are therefore appropriately transferred in the local mode within the FTP architecture.

Advantages and Disadvantages of the FTP architecture

The FTP architecture is designed in a way that it allows high efficiency or speed in transferring files from one terminal or computer to another. Because of its efficiency, the protocol is widely used in file transfer within the internet regardless of the fact that it is one of the oldest protocols in network communication (Spanbauer, 2007, p. 184). The architecture is also easy to use. This is attributed to the fact that there is no need for several operations before files can be transferred within a specific network. The control of connections within the FTP architecture makes it one of the most secure protocols which allow organizations to ensure that the confidentiality and privacy of data within databases and networks are upheld. This is illustrated by the use of cryptographic tools such as passwords and usernames before clients are allowed to access and transfer data within the network. The transfer of files within the FTP architecture is both forth and backward which allows organizations to achieve two way communication and exchange of files among employees and management teams. The FTP is also designed to support the transfer many formats of files. The user interface within the FTP architecture is very friendly which further reflects its benefits over other protocols.

According to Fairbairn, Koehler & Ogden (2007, p. 46), the disadvantages of the FTP architecture are not related by the protocol itself but on the ability of the architecture to support the needs of users in the most effective manner. Firewalls that are used within the FTP architecture to prevent unauthorized access to the network have raised many concerns within companies and organizations because they have also prevented legitimate or authorized clients from accessing systems and networks and accessing resources such as files (Notess, 1994, p. 79). This has resulted to the need for network administrators to modify the rules of the firewalls to allow all authentic users to access the system. Muhammad & Corbett (2006, p. 47) add that there are several FTP clients which lead to questioning of their compatibility to FTP servers. The additional costs which are associated with the purchase of FTP client licenses to represent every user also demonstrate the disadvantages that are associated with this architecture.


File Transfer Protocol (FTP) is commonly used in file transfer and communication within networked environments because of its effectively designed architecture which ensures that connections are secure and efficient. The transfer of data in FTP architecture involves two main connections. One is the control connection which is commonly referred to as port 21 and the other one is the data transfer connection which is also called port 20. These connections are achieved through passive and active modes which are governed by issues of security and connection between the client and the server. Data is represented within the FTP architecture in different modes which include the ASCII mode, ABCDIC mode, Image mode and Local mode. The FTP architecture represents various benefits such as security, efficiency, format compatibility and user friendliness which makes it significantly applicable especially in TCP/IP based communications and file transfers via the internet.


Evans, N, & Treharne, H 2005, 'Investigating a file transfer protocol using CSP and B', Software & Systems Modeling, 4, 3, pp. 258-276

Fairbairn, S, Koehler, S, & Ogden, A 2007, 'Global Data Transfer of Large Files', R&D Magazine, 49, 11, pp. 46-47

Joyce, J 2004, 'FTP Clients Revisited', Scientific Computing & Instrumentation, 21, 9, pp. 16-44

Lais, S 2000, 'File Transfer Protocol', Computerworld, 34, 16, p. 74

Mendelson, E 2002, 'File-Transfer Programs', PC Magazine, 21, 11, p. 137

Muhammad, T, & Corbett, M 2006, 'File transfer for business', Black Enterprise, 26, 10, p. 46-48

Notess, GR 1994, 'Learning to FTP', Online, 18, 2, p. 79

Spanbauer, S 2007, 'Access Online Files With Windows' FTP Utility', PC World, 25, 12, p. 184

Wang, B, Feng, W, Zhang, S, & Zhang, H 2010, 'Concurrent multipath transfer protocol used in ad hoc networks', IET Communications, 4, 7, pp. 884-897

$ 10 .00