ファイル転送プロトコルとは

ファイル転送プロトコルとは、ファイル転送をする際の規約や手順のことです。そもそもプロトコルとはコンピューター同士が通信する際の規格のことを指し、取り決めたルールに従うことでスムーズな通信が実現します。
ファイル転送を行う際、データ容量が大きいとそのまま送ることはできず、データを分解します。分解されたデータをパケットといいます。ファイル転送プロトコルは、どのように分解するのか、どのようにパケットを送受信するのか、どのようにデータを復元するのか、ということを決めたルールです。
ファイル転送プロトコルの種類
ファイル転送プロトコルにはいくつか種類がありますので、それぞれ解説します。
FTP(File Transfer Protocol)
FTPはインターネット初期の時代に登場したプロトコルで、文字どおりファイル転送プロトコルと呼ばれます。データファイルのアップロードやダウンロードに利用され、ファイル転送プロトコルの元祖です。
しかし、ユーザ名やパスワードなどの認証情報を暗号化せずに転送するのでセキュリティ面でデメリットがあります。そのため、次に紹介するFTPSやSCP、SFTPの利用が推奨されています。
FTPS(File Transfer Protocol over SSL/TLS)
FTPSは、FTPのデメリットを改善したファイル転送プロトコルです。SSL/TLSによって通信が暗号化され、安全にデータをやり取りできます。SSL/TLSとは、公開鍵暗号と共通鍵暗号という暗号化の技術を利用して安全に通信を行う仕組みのことです。なお、後述するHTTPSもSSL/TLSを用いています。
SCP(Secure Copy Protocol)
SCPは、SSH(Secure Shell)によって安全にファイル転送を行うプロトコルです。SSHとは、ネットワークに接続された端末の遠隔操作をする際、暗号化技術によって安全に通信を行うプロトコルを指します。パスワードなどの認証部分を含むすべてのネットワーク上の通信が暗号化できるため、コンピューター間で安心してファイル転送が可能になります。
SFTP(SSH File Transfer Protocol)
SFTPは、SCP同様に、高いセキュリティでファイル転送ができるプロトコルです。SFTPもSSHを用いており、ユーザ名やパスワードなどの認証情報を暗号化してファイル転送できます。
SCPとSFTPは同じ機能を提供しますが、相違点があります。SCPは転送の再開ができませんが、SFTPは転送を中断しても途中から再開できます。また、一般にSCPの方がSFTPよりも高速とされています。
HTTP(HyperText Transfer Protocol)
HTTPは通信プロトコルの一種で、Webサイトを閲覧する際に使われます。Webサーバとクライアント間で通信するためのプロトコルであり、HTML(Webページを作成するための言語)で記載されたテキストや画像の転送に必要です。
Webサイトを閲覧したい人が、Webブラウザから「このサイトを見たい」とWebサーバにリクエストを送信します。Webサーバは、リクエストしてきたブラウザに対して「それではどうぞ」と返答(レスポンス)して、ブラウザ上にWebサイトが表示されます。
適切なプロトコルを用いてファイル転送をしよう
ファイル転送を行う際は専用のサービスを利用しますが、そのサービスがどのプロトコルを利用しているのかをよく確認しましょう。プロトコルによって安全性や通信速度が異なるので、適したものを選択してください。