専門分野はなんでもそうだけれども。 コンピュータの仕組みをわかりやすく答えるというのは、難しい。
特殊な世界を学ぶ時に大切なのは、仕組みを端から理解することではなく、 大枠で「そういうものなのか」ということをまず(無理やりにでも)納得し、 それから、わかるところから細部の仕組みを理解していくのが近道であり、 必勝法であると考えます。
しかしながら、「そういうもの」ということで納得することが 苦手な人は多いのですね。 そして納得できない人ほど、細部の解説を聞きたがる人が多い。
わたしもそうだし! だって、丸っきりわからない世界なのに、まず森から見るなんて難しい。
とりあえず入り口にある、木を見てしまうだろう。 そしてこの木はクヌギなのかシイノキなのか、はたまた何の木なのか、 実がなるのか花が咲くのか、花粉はどうだとかが気になるのだ。
それが人の性というものだ。多分。
しかし、大まかな生態系(木の種類や生息している動物)を知ってから、 この地域にはこの木があるからこの動物がいるとか、 でも側にこの動物がいるから探しにくいとか、 そういうことを徐々に理解していくべきなのである。
自戒として、自分の胸に刻みたいと思います。 本当に。
長い前振りになってしまった。
何故こんなことをくどくどと、改めて話すかというと、 友達が”FTPとHTTPの違い”を人に聞かれたらしく、 「素人にもわかるように教えて」とわたしにメールが送られてきたからでありました。
そして答えたのですが、みごとに惨敗しました。 (わかってもらえなかった)
そして、学ぶことについて思いを巡らせ、 人が知るべきものの”段階”において、
下方から見た時は上のレベルの存在を、垣間見ることすら難しく、 上方から見た時には、既に見渡しがよくなり過ぎて、 相手が知るべきことの多さに、どこから手を差し伸べていいか難しいのだ。
そして、上がれば光が届くことをわかってもらえないもどかしさに、 涙を流すのだ。ほろほろほろ。
って、わたしの話が回りくどいからわかってもらえないんじゃ! しかし、努力はすべきである。 わかってもらおう、わかろうという相互の歩みよりがあるからこそ、 人々は気持ちをわかちあい(以下5行ほど省略)
という結論に達したのであります。 いや本当に長かった。 この日記も2日がかりだしっ。
しかして、本題の「FTPとHTTPの差」なのだけれど。
(なぜこんなに間が空くのだ(涙)↓)
知識レベル | 回答する言葉 |
わりかし知っている | 「全然別物」 |
いろいろやっている | 「そもそもHTTPは最近の出現であってうんぬん」 |
| 「ええと、HPとかアップロードしたことある?うんぬん」 |
まったく素人 | 「変わらないよ。だから気にするな」 |
相手によって、これだけ回答が変わるのですよ。
それでもなんとか言葉を紡いではみたものの、 わかってもらえなかったようでありました。
ということで、リベンジ。 これで理解してもらえるかしらん。
まず。
FTPというものの概要。
FTPはFile Transfer Protocolの略であります。 ファイルはわかるよね。それはわかるとして次。 Transferというのは転送。 Protocolは約束事。
大まかに言えば、一つのパソコンから別のパソコンに、 ファイルを転送するための約束ごとなのです。
ええと、ネットワークを使って、他人のパソコンにファイルを置きたいとします。 でも、ネットワークにつないだパソコンなら、誰でもどのパソコンにでも、 ファイルを置けたり消したりできたら困りますよね。
それよりなにより、ネットワークにつながっているパソコンが、 どこにあるかどうかもわからないし。
相手の家には電話はあるのはわかるけど、 電話番号を知らなければ、電話がかけられないのと一緒です。
そこで、FTPという約束ごとを使うのです。
FTPに必要な情報は、相手の電話番号(IPアドレス)、 それから不法侵入を防ぐ為の、ログインIDとパスワード。 まぁ他にもいろいろあるけど、割愛。
ホームページを作ったことのある人は、FTPソフト(FFFTPとか)を使って、 作成したHTMLをアップロードしたことがあると思いますが、 その仕組みのことです。
相手のパソコンに入り、そこを自分のパソコンのように使える機能と 考えてもいいかもしれないですね。 ファイルを保存したり削除したり、名前を変えたり。
ただ、誰にでもどんなことでもされたら困るので、 ログインIDによって、何が出来るかを変更したり、 どこを見ることが出来るかとかが変えたりします。
それでも、逆にサーバをいじられたら困るようなところは、 このFTPそのものを使えないように設定しちゃっています。 企業なんかはほとんどそうじゃないでしょうか。 (うちの会社もです。ハッカー対策には、玄関を開けないのが一番簡単)
んでHTTPというのは、 HyperText Transfer Protocolといって、 簡単に言えば、インターネットでHTMLを表示する仕組みです。
ブラウザから、アドレスに
http://www.google.com/
とか打つと、相手サーバに接続して、指定されたファイルがあれば表示してくれるし、 なければエラーが表示されますよね。
そういった、自分のパソコンからのリクエストを発信したり、 受け取った命令を理解し、情報を返したりする仕組みであります。
(ブラウザにはHTTPの命令を理解し、実行するHTTPDという機能が組み込まれているのです。 FTPソフトにはFTPDという機能。 ここでいうDというのは、DAEMONのことで、監視したり処理したりする神様的な役割を持つ機能に、DAEMON(デーモン)という名前を付けます)
昔はHTTPという仕組みはなかったので、 ファイルのやり取りはFTPを使うことしかありませんでした。
しかし、HTTPがものすごい勢いで普及。 そしてHTTPの仕組みの中には、ファイルのやりとりも含まれていて、 FTPのように、ファイルのダウンロードも出来るので、
「FTPとHTTPの違いってなに?」 といった質問をする人は、たいてい、
「ベクターのダウンロードとかで、HTTPとFTPの二つがあるんだけど、 それってどっちがいいの?どう違うの?」
ということになるのでしょう。
本来はそういった全然違う仕組みで、 更にはブラウザが、自動的にFTPサーバにログインしてくれる処理を、 やってくれているので、表向き二つに差が見られない為でしょう。
そして、ただ単に、ファイルをダウンロードするだけなら、 もうこの2つに差はないのです。 (だから初心者向けの回答は、「同じ。気にするな」になる)
じゃあなんで2つ用意しているかというと、 FTPというのは、ちゃんとログインして相手のサーバに入るということで、 相手のサーバ側で、一度に何人まで接続が出来るとかの管理が出来るんですね。 だから、そのサーバの処理能力を超えて接続することがない。(多分) その為、サーバに付加があまりかからないのです。
HTTPはそういうのがないから、サーバが混んでいると、 すごーくダウンロードに時間がかかったり、 挙句の果てに失敗したりする。
それに、FTPとHTTPという仕組みで、パソコン同士がやりとりする時には、 それぞれ専用の電話線(ポートという)が必要なんですよ。 無線で言えば、同じ周波数じゃないとだめってところですかね。
でも、前述の通り、セキュリティ上でFTPを使えなくしているところがあります。 相手が線を出していても、自分の線がなければ、電話が掛けられません。
今企業のほとんどはFTPを使えないようにしていると思うので、 なのでFTPを推奨しつつ、HTTPも用意したり、 最初からHTTPしか用意していなかったりするのです。
こんなんでわかるでしょうか。
識者の方で、突っ込みがあれば、是非是非お願いします。 わからなかったというお叱りがあれば、精進しますので、その方も是非。
というより、わからない人はここまで辿りつく前に寝ていると思う。 わたしも読み返し途中に、3回くらいくらくらしちゃった。
ああ、精進が足りないのです。しくしくしく。
|