Q: Why does FTP require two TCP connections?
A: FTP clients use a control connection to establish a link to the server and transmit requests for data. This TCP connection remains open for the life of the FTP session. The server replies to client requests by opening (or allowing the client to open) a second TCP connection, that is used to transmit the requested data. Each file or file listing is transmitted using a separate data connection, that is opened specifically for that file and closed immediately afterwards.
For more information, see page 228 of TCP/IP Administration.