著者 : Ville Koskinen   2021年11月16日投稿のブログ記事 (元の英文記事へのリンク)

ファイル転送プロトコル(FTP)の廃止

Mascot Server のデータベース設定画面、Database Managerでは、配列データベースをWEBサイトからダウンロードし取得する事ができます。取得の際、FTP(File Transfer Protocol)、HTTP (Hyper Text Transfer Protocol)、HTTPS(HTTP Secure)といったプロトコルを利用可能です。 FTPプロトコルはこれら3つのプロトコルの中で最も古く、最初に登場したのは 登場したのは1971年でした。数年前までは大容量ファイルのダウンロードに最適かつ唯一の選択肢で、FASTAファイルはFTP サーバーにのみ設置されていました。 しかし、その技術的優位性は時とともに失われ、FTPと同様の機能を有するだけでなく、FTPが抱えていたいくつかの問題点を克服する新しいプロトコルが登場しています。

FTPの問題点としては以下の内容が挙げられます。

  • エラーチェックがない
  • FTPサーバーは、ファイアウォールやプロキシサーバーを介してアクセスすることが困難な場合がある
  • FTPは暗号化にほとんど対応していない

FTPに代わり、HTTPSがデフォルトのプロトコルとして使用されることが多くなっています。 今年の初めに、neXtProt プロジェクトでは FTP サーバーを廃止し、HTTPS のみでダウンロードできるようにしました。これに限らず、FTPが誕生して50年経過したのを機に様々なところでFTP廃止に向けた動きが出ています。Mozillaは 統合されたFTPクライアント機能をFirefoxから削除されることを発表しました。 GoogleもChrome 95でFTPサポートを削除しました。 Googleと同じChromiumプロジェクトをベースにしたMicrosoft Edgeでも、 バージョン88でFTPのサポートを廃止しました。(訳者注:そのため現在手軽にFTPをブラウザで利用するためには、Internet Explorerを起動して利用する必要があります)

この記事を書いている時点では、NCBIやEBI,Uniprotなど、すべての主要なタンパク質配列データベースを置いているサーバーでFTPでもHTTPSでもどちらでも利用できます。一部のサーバーでは HTTP でのアクセスも可能ですが、ほとんどのサーバーではリクエストを HTTPS にリダイレクトしています。(唯一の例外は ftp.thegpm.org で、FTP と HTTP のみサポートしています。 HTTPしかサポートしておらず、HTTPSを使おうとすると証明書エラーが発生します)。

FTP に比べて HTTPS が優れている点として、エラー検出が組み込まれている事が挙げられます。 これはプロトコルがそもそもどのように実装されているかに起因しています。まず HTTPS クライアント(ウェブブラウザなど)では、暗号化された TLS 接続をダウンロードサイトのサーバーと確立します。次に、クライアントプログラムは、TLS接続を通じてHTTPトラフィックをトンネリングします。TLSは低レベルの暗号プロトコルで、データを暗号化するとともに副次的にデータの整合性もチェックします。もし例えばネットワークの信頼性が低い場合やデータパケットが誤った順序で到着するなどで転送エラーが発生した場合、接続はエラーで終了します。その後HTTPSクライアントでは最後に整合性が確認された地点からからダウンロードを再開することもできます。これに対してFTP にはエラー検出機能がないため、転送中に問題が発生した場合、有無をいわさず破損したデータと扱われダウンロード終了となってしまいます。

Database Managerにおいて、カスタムデータベースで設定されているFTPダウンロードについては引き続きサポートをします。しかしMASCOT側で予め各種設定を定めてその設定内容をユーザーがそのまま使用しているようなpredefined データベースにおいては、2021年11月からFTPを使用しなくなります。

DownloadのためのURLはHTTPに切り替えられました。この変更が適用されたURLは、 SwissProt, contaminantsや すべてのESTデータベース、また、NCBIからダウンロードした生物種関連のファイルへのリンクです。 対象のダウンロードサーバーがHTTPからHTTPSにリダイレクトされている場合、Database Managerは自動的に接続をHTTPSに変更します。その他の機能はすべてこれまでと変わりません。

切り替えに伴う小さな副作用として、データベースのナンバリングが挙げられます。 SwissProt、Trembl、ESTデータベースのようないくつかのデータベースでは公式の発表に合わせたバージョン管理を行っています。この記事を書いている時点では、SwissProtの最新バージョンは2021_03です。Database Managerで更新操作を行った場合、これまでならバージョン管理の機能が有効に働いて既に持っているバージョンと公開バージョンが同じ場合はダウンロードをしないように調整されていました。しかし今回の切り替え後にデータベースを更新した場合このチェック機構は全く働かず、これまでと同じバージョン2021_03を再度ダウンロードして、それに対してバージョン”2021_03x”と命名してしまう可能性があります(バージョンの衝突を避けるために「x」が付加されます)。より新しいバージョンのデータベースがリリースされれば、これらの問題は解消されるとともに新たなバージョンのデータベースも正しくナンバリングされる予定です。

お使いのMascotのバージョンによってはその他にも問題が生じる可能性があります。以下に列挙します。

Mascot Server 2.7以降

Mascot バージョン 2.7 以降では、ネイティブな HTTPS をサポートしているため、データベースの更新はこれまで通り動作します。

Mascot Server 2.6

バージョン2.6をお持ちの方は、HTTPSを完全にサポートするパッチ2.6.2をインストールしてください。パッチはここから無料でご利用いただけます。

Mascot Server 2.5

バージョン2.5では、HTTPSに対して一部サポートしています。 単純なURL記述に対しては、HTTPからHTTPSへのリダイレクトにそのまま対応しているためデータベースの更新機能は引き続き動作します。しかし、predefined の各種Uniprot proteomeデータベースはご利用できないので注意が必要です。URLに複雑なクエリ文字列が含まれている事が影響し、Mascot 2.5 は HTTPS でダウンロードすることができません。

Mascot Server 2.4

Mascot Server 2.4はHTTPSをサポートしていません。 Mascot Server 2.4 で SwissProt のようなpredefinedデータベースを有効にしてDatabase Managerがデータベースファイルのダウンロードを試みても失敗してしまいます。今後配列データベース並びにtaxonomyの関連ファイルを手動でダウンロードし、ファイル名を変更し、正しい場所にファイルをコピーする必要があります。手順は「シーケンスデータベースセットアップヘルプ」をご覧ください。

Mascot Server 2.3以前のバージョン

バージョン2.3以前はDatabase Managerがないため、影響はありません。必要に応じてスクリプトのURLを直接書き換えてご利用ください。


Keywords: , , ,