File Transfer Protocol (FTP) is a standardized network protocol used to transfer files between a client and a server over a computer network. It originated in the early days of the internet and has become a fundamental method for sharing documents, media, and other types of data between systems. The protocol operates primarily on two channels—a command channel for transmitting commands and responses, and a separate data channel for the actual file transfers—thus allowing for efficient and organized communication.
At its core, FTP relies on a client-server model, where the client initiates the connection and requests actions such as file uploads, downloads, or directory listings from the server. This interaction typically occurs over designated ports (commonly port 21 for commands and port 20 for data in active mode), and it supports both anonymous and authenticated access. Over time, various modes of operation have evolved, including active and passive modes, to address issues like firewall traversal and network address translation, thereby improving reliability and security in diverse network environments.
Despite its longevity and widespread use, FTP faces several modern challenges, particularly in terms of security. Traditional FTP transmits data, including user credentials, in clear text, making it vulnerable to interception and unauthorized access. As a result, enhanced versions such as FTPS (FTP Secure) and SFTP (SSH File Transfer Protocol) have been developed to provide encryption and better security measures. Nonetheless, FTP remains a critical tool in many legacy systems and continues to serve as a backbone for file distribution in various industries.
👉 See the definition in Polish: File Transfer Protocol (FTP): Protokół przesyłania plików
