2009-08-11 7 views
3

FTP RFC(RFC959)を読んで、これまで使用したことのないいくつかのモードに気がつきましたが、実際には普及しているFTPソフトウェア(vsftpdなど)では実装されていないようです。特に、STRUコマンドの場合、ファイルモード「STRU F」のみが一般的に使用され、MODEコマンドについては、ストリームモード「MODE S」のみが一般的に使用される。どのFTP転送モードが広く使われていますか?

、相互運用可能なFTPクライアントとサーバソフトウェアを開発するためのベストプラクティスを、次のとき、そこで問題は、次のとおりです。

  • は、他のSTRUオプション(レコードおよびページ)をサポートすることが有用ですか?これらは非常に昔ながらのもののようです。
  • 他のMODEオプション(ブロックおよび圧縮)をサポートすると便利ですか?私はその点を圧縮して見ることができますが、私は特に、クライアント/サーバがブロックをそこに置くことを期待しているかどうか疑問に思っています。
  • 既存のFTP実装がどのオプションをサポートしているかについての調査はありますか?

(私は、圧縮された理由がわかりました。クライアント/サーバーがブロックモードを期待しているかどうかはさらに分かります)。

答えて

3

私はカスタムFTPサーバーを維持しており、この種の質問についてはhttp://cr.yp.to/ftp.htmlを定期的に参照しています。具体的には、私はTYPE/MODE/STRUの提案をhttp://cr.yp.to/ftp/type.htmlに辿り、それまで問題はなかった。

私が見たクライアントはありませんが、「STRU F」以外の接続がSTRU要求を送信しました。同様に、私は "モードS"を見たことがあります。

0

私は、オープンソースのFTPクライアントとサーバー(特に積極的に更新されているもの)を検索し、それらのうちどれだけが「廃止」転送モードを実装しているかを調べることをお勧めします。

FTPクライアントを1回(約7年前)作成し、最も基本的な転送モード(ASCIIとバイナリ、正しく覚えていれば)を実装しました。それを使用しているときに、どのサーバーにも問題はありませんでした。

+0

ASCIIは転送モードではなく、表現型です。転送モードまたはMODEは、S、B、C(ストリーム、ブロック、圧縮)のいずれかです。 –

0

ほとんどの場合、相互運用性に関心があるようです。答えは、クライアントとサーバーの間で少し異なります。

サーバーでは、クライアントが使用する基本モードを実装する必要があります。すべてのクライアントについて、最低1つの構成をサポートする必要があるため、組み合わせの数は比較的少なくなければなりません。最小限を超えて、能動的および受動的なモードをサポートすることがおそらく大きなものになるでしょう(mozillaコミュニティは長い間受動的なサポートを望んでいました、そしてit is probably never going to happen)。

あなたがクライアントである場合、URLのサポートと日付/時刻の適切な処理を提供することはおそらく最も大きな障壁です。

関連する問題