The File Transfer Protocol (FTP) client is an application that runs on a user’s system that initiates file transfer requests—either sending or receiving files via the FTP server. FTP works on a client-server architecture and the FTP client is the entity that creates a Transfer Control Protocol (TCP) control connection with the FTP server. FTP clients were just command line interface (CLI) applications just a few decades ago. They now come in all sorts of easy-to-use, intuitive interfaces to facilitate and simplify file transfers. FTP clients are used for desktops, servers, and mobile devices, and are available as standalone apps, Web clients, and simply extensions to Web browsers.
The FTP server can support both active and passive connections with the FTP client. In an active FTP connection, the client opens a port and listens while the server actively connects to it. Whereas, in a passive connection, the server opens a port and listens passively, which allows clients to connect to it.
A passive connection is more secure and also preferred by IT admins because data connections are made from the FTP client to the FTP server. This is a more reliable method and it avoids inbound connections from the Internet back into individual clients. In firewalled deployments, all connections are made from the Internet to the server—not from the server back to the Internet. Passive mode is also known as "firewall-friendly" mode. The more secure file transfer protocols (such as SFTP, FTPS) that the FTP client supports, the more secure it becomes.
This is what FTP clients essentially do. So, what else can they do? Well, a lot more in terms of making your entire file transfer process simpler and more user-friendly. There are many features available with FTP clients that make your FTP user-experience, customization, and management options simpler and more convenient.
Here are some FTP client features:
- File transfer synchronization: FTP clients synchronize files and folders between local and remote folders. FTP clients can compare folders and display any missing files between the two in different colors for quick identification.
- Scheduled file transfer: FTP clients can automate file transfers by allowing you to schedule tasks based on who and when the files need to be sent.
- Post-transfer actions: FTP clients allow you to run scripts, launch applications, send email, and delete original files after completion of a file transfer.
- Facilitate bulk transfer: FTP clients enable you to upload or download multiple files and entire folder trees.
- Transfer queue: FTP clients display the file transfer process in queue fashion with progress bars, pause, and resume options for quick controls.
- Intuitive Navigation: Familiar “side-by-side” transfer window, drag and drop files from your desktop, thumbnail view of files, preview panes and detailed list views.
- Mobile Views: There are also mobile clients available for FTP server software that allow you direct dashboard visibility and management access from your mobile/smart phone and tablet consoles.
A 3rd-party FTP server software such as Serv-U® Managed File Transfer Server provides an out-of-the-box FTP client for simpler and more secure managed file transfers including options to transfer multiple files at once and upload very large files (>2GB).