68user's page 掲示板

Prev< No. 1753〜1755> Next  [最新発言に戻る] [過去ログ一覧]
No. 1753 # 金床 [E-mail] 2001/02/28 (水) 14:36:42
お邪魔致します。このサイトの情報はPerlでのネットワークプログラム作成時に
大変参考にさせて頂いております。以前も一度この掲示板にてお世話になりました。

本日はFTPとHTTPの比較について質問がありやって来ました。

昨日書店で立ち読みした、発売したばかりの
ASCII NETWORK MAGAZINE4月号
http://biz.ascii24.com/biz/n-mag/article/2001/02/23/623348-000.html
に、比較的初心者向けのFTPプロトコルの解説記事があったのですが、その冒頭に

「FTPはHTTPよりわずかに速いため、現在もよく利用される」

という(言い回しが違うかもしれません)記述がありました。これは本当でしょうか?

CやPerlでsocket関数を使いTCPのアプリケーション層のプログラムを作っている
と、プロトコルがFTPであるのかHTTPであるのか(もしくはSMTPやPOP3なのか)は
データを受信(または送信)するアプリケーションが判断することで、ネットワーク上
では区別されないように思えました。

ポート番号で区別できるという考えもありますが、もちろんWell-Knownポート以
外を使ったHTTPやFTPでの通信も可能ですよね。

IPパケットレベルでHTTPとFTPのパケットが区別され、FTPの方がわずかに速く通
信が可能という事はあるのでしょうか?いきなりで申し訳ありませんが、お答え頂ければ
幸いです。

No. 1754 # 68user 2001/02/28 (水) 15:37:35
>>1752 CZ
> そうですか? スレッド表示など特に秀逸だと思ったのですが。
あ、アイコンがわかりにくいので拒否反応を示しただけですから、
聞き流してくださいまし。

> Internet Explorerやw3m等から見るとソースがこんな具合に
> なっています。
IE5.5 で確認しました。原因究明はウチに帰って元データを
見てからにします。

>>1753 金床
> FTPはHTTPよりわずかに速いため
FTP はコントロールコネクションとデータコネクションがありますが、
HTTP はコネクションは1本しか張らないので、FTP の方がわずかに
速い *かも* しれません。でも、誤差の範囲内だと思います。

なので、(この部分を見る限りでは) 不適切な解説だと僕は思います。

> IPパケットレベルでHTTPとFTPのパケットが区別され、FTPの方が
> わずかに速く通信が可能という事はあるのでしょうか?
アプリケーションゲートウェイ (delegate とか) で帯域制限でも
しない限り ありえないです。金床さんが書かれている考え方は
正しいです。

No. 1755 # 金床 [E-mail] 2001/02/28 (水) 16:04:36
お答え頂きありがとうございます。

>FTP はコントロールコネクションとデータコネクションがありますが、
>HTTP はコネクションは1本しか張らないので、FTP の方がわずかに
>速い *かも* しれません。でも、誤差の範囲内だと思います。

これは、FTPのデータコネクションでは目的のデータ(ファイルやファイルリストなど)しかネットワーク上を
転送されないのに対し、HTTPでは最初にHTTPリクエストがネットワーク上を通るので、その分という事でしょうか。

それとも、データコネクションでのデータ受信(送信)中も、コントロールコネクションが何らかの役割を果たして
いるという意味でしょうか。つまり、転送されるデータが巨大になればなるほどFTPとHTTPで差がでてくるような
現象が存在するのでしょうか?

最初に書くべきでしたが、私がここで対象にしている「FTPとHTTPの転送速度の差」は、
数Kb〜数百Kb程度の小さなファイルでのやりとりではなく、巨大なデータ(少なくとも10Mb程度)
で現れる(かもしれない)差の事です。

>アプリケーションゲートウェイ (delegate とか) で帯域制限でも
>しない限り ありえないです。
なるほど、やはりそうですよね。少し安心しました。

Prev< No. 1753〜1755> Next  [最新発言に戻る] [過去ログ一覧]