• ベストアンサー

FTPとファイルコピーの違いについて

FTPについて初心者なので教えてください。 たまにプログラムの中にFTPを使用してクライアントからサーバーにファイルをアップロードしているプログラムを見るのですが、自分としてはただ単にファイルをサーバーにコピーするプログラムでいいじゃないかと思うのですが、速さとか何か違いがあるのでしょうか?ご教授宜しくお願いします。 ちなみに言語はDelphi7です。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

「ファイルをサーバーにコピーするプログラム」は、基本的に機種依存です。 対して、FTPは全世界共通のプロトコル(通信言語)です。 どちらがより汎用性があるかどうかは、すぐにわかりますよね? また、企業などの場合は外部との通信を制限するためにファイアーウォールを設置するのが一般的ですが、「ファイルをサーバーにコピーするプログラム」を使った場合は、そのプログラムに合うようにファイアーウォールの制限を緩めてやらなければなりません。 こちらは、場合によっては2個3個以上の通信ポートに及ぶ場合もあります。 FTP通信だけを許可する場合に比べて、どちらがより強固なセキュリティを保てるかは、すぐにわかりますね。 さらに、速度でいえば、単に転送するデータだけの通信であるFTPに対して、Windowsの例ですが、ファイル共有ではGUIの表示情報までをも通信内に含有しているため、速度は遅くなります。 まぁ、もっと挙げていけば切りが有りませんが、自分には、逆にFTP以外の通信を使うことがありえません。

maechu
質問者

お礼

返信ありがとうございます。 ファイルをコピーするプログラムよりFTPを使用してファイルをアップロードするプログラムの方が速度も速いんですね。 これからはクライアントからサーバーにファイルをコピーする場合はFTPを使用することにします。

その他の回答 (3)

  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.4

サーバが同一LANにあるのなら, たとえば,サーバのWEBコンテンツエリアをネットワークドライブとしてクライアント機にマウントしておいて,普通にコピーするのが一番ラクダし早いでしょう. ところが,「よそのマシンのファイルシステムの一部がネットワークドライブとして見えている」という概念が扱えない人が多いのです.特にWEBコンテンツだと,サーバに置いたときのパス名を考えてリンクを張るとかが必要ですでややこしいのです.で,そういう利用者の面倒を見てられないので,ftpを使わせます. こういう場合もあるということで. もう一つ,可能性としては誰がどのファイルを何時アップロードしたか,記録を残すためにftpを使わせているのかもしれません.

maechu
質問者

お礼

返信ありがとうございます。 ただ、今回の質問はGUIでファイルをコピーするのではなく、Exeのプログラムの中でクライアントからサーバーにファイルをコピーする場合です。 一例として参考にさせていただきます。

noname#25358
noname#25358
回答No.2

 通常、コピーは「同一パソコン内」のファイル移動しかできません。  一般のLANでそれができるのは、ウィンドウズが「さも通常のコピーと同じような感覚でアップロードできるプロトコル」を独自に開発しているからです。  ただし、このプロトコルを利用するには、サーバーとクライアントが両方ともウィンドウズでなければならず、相手が Unix 系のマシンだったりすると使えません。  FTPプロトコルは30年前からほとんど仕様変更のないまま使われているため汎用性が極めて高く、現行のあらゆるマシンにサーバー/クライアントをインストールすることができますし、自作も手軽です。  おっしゃるような「単にコピーするプログラム」の場合、相手サーバーの素性が分かっている場合でないと使えない方法なので、そうでないケースではFTPを使うのが一般的です。

maechu
質問者

お礼

返信ありがとうございます。 クライアントとサーバーのOSが異なる場合に、FTPは有効だと言う事が良く分かりました。

  • inu2
  • ベストアンサー率33% (1229/3720)
回答No.1

コピーするだけなら、パーミッション変えられないっすよ 又、本来のFTPはクライアント側のソフトウェアを必要としないものです コマンドで全部まかなえます ただし、今の世の中はコンピュータやパソコンに詳しくない人が殆どですので、そういった人を対象に様々なFTPクライアントソフトや、web経由でアップロードする仕組みなどを提供しているにすぎません。 >単にファイルをサーバーにコピーするプログラム 結局、これはどんなプロトコルを利用しているのでしょうか? web経由の事を言っているのであればFTP経由のほうが速いですよ

maechu
質問者

お礼

返信ありがとうございます。 >web経由の事を言っているのであればFTP経由のほうが速いですよ 同一LAN内のクライアントからサーバーにファイルをコピーするだけなのですが、それでもFTPを使用した方が速度は速いですか? いまいちFTPを使用するメリットが感じられないのですが何か大きなメリットはありますか? 環境は以下の通りです。 サーバー  :Windows2003 クライアント:WindowsXP

関連するQ&A