アカウント名:
パスワード:
ダウンロードが主のサイトでは制限していることが多いので、どうでもいいサイトで若干速くなっても、いざ大きいファイルをダウンロードするときに遅くなったのではむしろ損です。
httpって一つのファイルに複数同時接続しないよね。大きいファイル一つ二つなら同時接続数は関係ないと思う。
HTTP/1.0 では Keep Alive が使えませんので 1 サーバ当たりの同時接続セッション数を 4 を最大に、HTTP/1.1 では Keep Alive が使えるのでセッションの再利用が出来るため 2 を最大にしている、というのがこのストーリーの基本事項な訳で……。
HTML を受け取りながら解釈し、解釈中に取得する必要のある画像などが判明したら、空きセッションで取得したり、HTML を取得し終えたセッションを再利用したりするのは極めて普通の挙動です。
分割ダウンロードの場合は、HTTP/1.1 において定義されているファイルの位置を指定した一部取得機能を利用し、2 つのセッションで同時に 1 つのファイルの別の部分を取得するという話です。当然ながら、この場合にはファイルのサイズを知っていて、かつ、初期リクエストの段階からセッション 1 は最初の 1MB、セッション 2 は 1MB の地点からの 1MB ……といった形でパーツごとに拾っていく形を取ります。
自分の回線側がボトルネックになっている場合には全く意味がありませんが、サーバの応答側がボトルネックになっている場合 (セッション当たりの帯域を絞っている場合とか) には有効です。
こんな機構であるため、ある程度大きなファイルを取得する場合でないと有効性があまり大きくないため、一般的な閲覧で分割ダウンロードを行うようなブラウザはまず存在しないと言っていいかと思います。
そもそもサイズが分からないとできない話ですし、Web ブラウザは普通最初のアクションはサイズを知らない状態で GET で、キャッシュに情報があったら If-Modified-Since を付けた GET ですし。HEAD → GET なんてやられたら、動的コンテンツ全盛の現在ではかなりきついでしょうね。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲはアレゲ以上のなにものでもなさげ -- アレゲ研究家
利己的に増やさない (スコア:5, すばらしい洞察)
自分一人だけ割り込みできたら早くなりますが、皆が割り込みするようになったら、混雑してむしろ遅くなります。海外旅行等で経験した人もいると思います。
なんか囚人のジレンマに似てますね。
また、サイトによってはサーバ側で同時接続数を制限していることがあります。
IEやFirefoxの実装は知りませんが、昔ダウンロードソフトの類を使ったとき、(制限で)接続失敗してるのに何度も接続しようとしてかえって遅くなってました。
ダウンロードが主のサイトでは制限していることが多いので、どうでもいいサイトで若干速くなっても、いざ大きいファイルをダウンロードするときに遅くなったのではむしろ損です。
以上の理由から、サーバ運営者の迷惑をまるで考えないで利己的に考えても増やさないほうが良いと思います。
Re:利己的に増やさない (スコア:1)
httpって一つのファイルに複数同時接続しないよね。大きいファイル一つ二つなら同時接続数は関係ないと思う。
Re:利己的に増やさない (スコア:1)
あと俺の場合ディストリCD1~4とか、ゲームパッチ1.0->1.1、1.1->1.2、1.2->finalとか同一サイトから一つ二つでなく複数ダウンロードすることが多いので。
Re:利己的に増やさない (スコア:0)
Re:利己的に増やさない (スコア:1)
#細かいことは忘れました。過去の話ですから。
masamic
Re:利己的に増やさない (スコア:1)
HTTP/1.0 では Keep Alive が使えませんので 1 サーバ当たりの同時接続セッション数を 4 を最大に、HTTP/1.1 では Keep Alive が使えるのでセッションの再利用が出来るため 2 を最大にしている、というのがこのストーリーの基本事項な訳で……。
HTML を受け取りながら解釈し、解釈中に取得する必要のある画像などが判明したら、空きセッションで取得したり、HTML を取得し終えたセッションを再利用したりするのは極めて普通の挙動です。
分割ダウンロードの場合は、HTTP/1.1 において定義されているファイルの位置を指定した一部取得機能を利用し、2 つのセッションで同時に 1 つのファイルの別の部分を取得するという話です。当然ながら、この場合にはファイルのサイズを知っていて、かつ、初期リクエストの段階からセッション 1 は最初の 1MB、セッション 2 は 1MB の地点からの 1MB ……といった形でパーツごとに拾っていく形を取ります。
自分の回線側がボトルネックになっている場合には全く意味がありませんが、サーバの応答側がボトルネックになっている場合 (セッション当たりの帯域を絞っている場合とか) には有効です。
こんな機構であるため、ある程度大きなファイルを取得する場合でないと有効性があまり大きくないため、一般的な閲覧で分割ダウンロードを行うようなブラウザはまず存在しないと言っていいかと思います。
そもそもサイズが分からないとできない話ですし、Web ブラウザは普通最初のアクションはサイズを知らない状態で GET で、キャッシュに情報があったら If-Modified-Since を付けた GET ですし。HEAD → GET なんてやられたら、動的コンテンツ全盛の現在ではかなりきついでしょうね。
Re:利己的に増やさない (スコア:0)