| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
FTP Data Connection Management, Normal (Active) and Passive Data Connections and Port Usage (Page 2 of 4) Normal (Active) Data Connections The first method is sometimes called creating a normal data connection (because it is the default method) and sometimes an active data connection (to contrast it to the passive method we will see in a moment). In this type of connection, the Server-DTP initiates the data channel by opening a TCP connection to the User-DTP. The server uses the special reserved port number 20 (one less than the well-known control FTP port number, 21) for the data connection. On the client machine, the default port number used is the same as the ephemeral port number used for the control connection, but as well see shortly, the client will often choose a different port for each transfer. Let's take an example to see how this works. Suppose the User-PI established a control connection from its ephemeral port number 1678 to the server's FTP control port of 21. Then, to create a data connection for data transfer, the Server-PI would instruct the Server-DTP to initiate a TCP connection from the server's port 20 to the client's port 1678. The client would acknowledge this and then data could be transferred (in either direction remember that TCP is bidirectional). In practice, having the clients control and data connection on the same port is not a good idea; it complicates the operation of FTP and can lead to some tricky problems. For this reason, it is strongly recommended that the client specify a different port number using the PORT command prior to the data transfer. For example, suppose the client specifies port 1742 using PORT. The Server-DTP would then create a connection from its port 20 to the client's port 1742 instead of 1678. This process is shown in Figure 290.
Home - Table Of Contents - Contact Us The TCP/IP Guide (http://www.TCPIPGuide.com) Version 3.0 - Version Date: September 20, 2005 © Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved. Not responsible for any loss resulting from the use of this site. |