FTPとは「File Transfer Protocol」の略で、本来は文字通り「ファイルを転送する」ためのプロトコルです。ただ最近では、FTPと言えばプロトコルそのものよりも、実際に転送を行なうツール類(例えば、WindowsやUNIXだと“ftp.exe”という名前になっています)や、手段(「このファイルをFTPしておきます」といった会話)だったりと幅広く使われています。
ですので、「File Transfer Protocolそのもの、あるいはこのプロトコルを実装したサーバーやクライアント、もしくはこれらを使ってファイルを転送すること」という、ややこしい定義が1番現実に合っている気もします。
最初に述べた通り、FTPは過去の貧弱な回線を有効に使うためのものなので、現在では次第に利用される範囲が減りつつあるのは事実です。とはいえ、最近ではギガバイト単位のファイル、DVDの内容をそのままISO化して配布なんていう強烈な例も出てきました。筆者が最近体験した例をご紹介すると、米NovellがSuSE Linux Professional 9.3を、そのままDVDメディアに焼くとブートできるisoイメージとして配布していますが、ファイルサイズは1.4GBにも達しています。このクラスとなると、httpを使ってダウンロードすると無駄に時間と帯域を浪費してしまいます。また、1.4GBものバイナリデータをテキストフォーマットに変換し、またあとでそれを戻すという処理も馬鹿になりません。そんなわけでNovellは配布をftpで行なっています。こうした用途に、引き続きftpは使われてゆくでしょう。
一方セキュリティ面では、ftpのセッション最初にユーザー名とパスワードを平文で送っているほか、データにもなんの暗号化を施してない関係で、盗聴されるとデータ自体までそのまま盗まれてしまいます。こうしたことを防ぐため、SSHの上でFTPセッションを通すSFTP(その23で少し触れました)と、FTP自体をSSL/TLSセッション上に通すFTPS(FTP over SSL/TLS)がありますが、どちらも幅広く使われているとは言いがたい状況です。