R1秋PM_Q5について

guestさん  
AP シルバーマイスター
(No.1)
https://www.ap-siken.com/kakomon/01_aki/pm05.html

設問1(2)解説文において
「同時にブラウザは4つのTCPコネクションを確立し、」とあります。
図2では、【4】ブロックから成る右肩下がりの横線(?)が【4】ラインならんでいますが、、、4つのTCPコネクションというのはどちらの【4】から読み取ったものでしょうか?

また、図2の続きを書くとしたらどうなるのでしょうか?
***想像1:【4】ブロック説***************
img01:[  1  ][   2   ][ 3 ][  4  ]
img05:[ 5 ][  6  ][    7    ][  8  ]
img09:[   9   ][ 10 ][  11  ][    12    ]
img13:[ 13 ][    14    ][    15    ][16]
img17:[  17  ][  18  ][ 19 ][    20    ]
***想像2:【4】ブロックは偶然説***********
img01:[  1  ][   2   ][ 3 ][  4  ]
img05:[ 5 ][  6  ][    7    ][  8  ]
img09:[   9   ][ 10 ][  11  ][    12    ]
img13:[ 13 ][    14    ][    15    ][16]
img17:(img04が読み込まれた後)   [ 17 ][  18  ]……
2020.03.10 10:41
そらさん 
(No.2)
この投稿は投稿者により削除されました。(2020.03.12 10:44)
2020.03.12 10:44
そらさん 
(No.3)
4つのTCPコネクションというのは、図2のimage001.jpg,image005.jpg,image009.jpg,image013.jpgの4か所が、0.1秒辺りから同時に読込まれているという処からきています。
TCPコネクション確立後、すぐに画像を読込み始めますが、それが4か所同時に始まっているので、4つのTCPコネクションということになるのです。

こちらの解説は、当サイトの午後問題のところで、物凄く分かりやすく解説されているので、もしご一読されていないのでしたら、確認されると良いと思います。
2020.03.11 10:53
guestさん  
AP シルバーマイスター
(No.4)
ご回答ありがとうございます。そちらの4でしたか(´▽`)
もちろん解説文は読みましたが確信は持てませんでした。
では、図2の続きをかくとしたら、想像2のようになるのでしょうか?

img01~16までしかないのであればわかるのですが、図2を見る限りそうではなさそうです。
img01~100まであるとすれば、
1つめのTCPコネがimg01、
2つめのTCPコネがimg26からはじまるとおもったのです。
2020.03.11 18:19
そらさん 
(No.5)
図2のような読込みの順番になるのは、ただ単にHTMLにそういう順番に記載されているからです。
ブラウザは、サーバからindex.htmlを受信すると、HTMLの一行目から順に解析(パース)を開始します。解析の時に再度サーバから受信する必要があるリソース(CSS,JS,imageなど)が見つかった場合、片っ端から"送信用ソケットバッファ"に要求を放り込みます。このバッファはキュー構造なので、OSI参照モデル第4層のトランスポート層でバッファの先頭からデータを取り出してパケットを作り、サーバにパケットを送ります。
なので図2のimage001.jpg,image005.jpg,image009.jpg,image013.jpgが最初に読み込まれているように見えるのは、HTMLにそういう順番で記載されてるからです。
おそらく画像をテーブルタグなどでマークアップしたようなデザインになっていると思われます。テーブルイメージを図示すると以下のようになるのではないでしょうか?

[image001][image005][image009][image013]
[image002][image006][image010][image014]
[image003][image007][image011][image015]
[image004][image008][image012][image016]

さてimage016以降ですが"想像2"の通りになるかもしれませんし、そうじゃないかもしれません。ここはあまり気にしなくていいのではないのでしょうか。

ところで、No.3 は間違っています。最初にお詫び申し上げます。
実際にデベロッパーツールで試して気が付いたのですが、この問題のように綺麗に4つ同時に読込みが開始されるというのもどうも怪しいようです。
それでは「4」という数字はどこからやってくるのかというと、「128ソケット」と「32ユーザ」からです。
つまり、 4 = 128 ÷ 32 となります。これは、1つのブラウザにつき4ソケットが利用できるという意味で、1TPCコネクション = 1ソケット というルールを理解しているかが問われています。
それでは、この図2は何の意味があるのかというと「HTTPパイプライン機能はオフになっている」という一文に連動して、設問4(1)の「どのような時間か」を答えさせるヒントになっているようです。

コロナウイルス騒ぎで試験実施がどうなるかわかりませんが、お互い良い結果を得るために頑張りましょう!
2020.03.12 13:42
guestさん  
AP シルバーマイスター
(No.6)
はい、頑張りましょう!
・・・なのですが、「4」という数字はあくまで図2から読み取れる内容だそうです。
(1)の解説文でも、
「図2を見ると1つのブラウザが最大で4つのTCPコネクションを同時に確立している」
とあります。
(「128ソケット」と「32ユーザ」からも読み取れるのかもしれませんが。。。)

一方で、なぜ、img01,05,09,13から読み込まれたのか?については、自分の中で納得できました。ありがとうございます!
そらさんの図を使わせていただくと・・・
********************
[image001][image005][image009][image013][image018]
[image002][image006][image010][image014]
[image003][image007][image011][image015]
[image004][image008][image012][image016]
←--------ここは空欄とする--------→ [image017]
********************
となっている可能性もあり、こればかりは想像の世界ということですね。
2020.03.12 17:11
guestさん  
AP シルバーマイスター
(No.7)
あれからも考えてみましたが、No.3は間違っていないのではないでしょうか?
http/2では、「image01,02,03を要求」ができるところ、
http/1.1では「まずはimage01を要求」しかできない。
ところが図2ではimage01,05,09,13を同時に要求・読込ができている。。。
No.5で「1TCPコネクション = 1ソケット」とのことですが、
同時に4枚の写真  =  4TCPコネ  =  4ソケット
と考えると、同時に【4】枚の写真が読み込まれている(右肩下がりの横線(?)が【4】ライン)の【4】からきているとみてよさそうな気がしてきました( -ω-)
2020.03.13 17:36
管理人 
(No.8)
解説中の「4つのTCPコネクションを確立し」というのは、htmlファイルのパース後にimage01,05,09,13が並列にダウンロードされていることを指しています。また、同時に存在するコネクション数が最大で4であることからもわかります。
2020.03.13 18:28
guestさん  
AP シルバーマイスター
(No.9)
ご回答ありがとうございます。
そらさんのNo.3の考え方でよかったのですね(´▽`)

ついで聞きになってしまいますが、
設問1(2)の解説文で
「1つのブラウザが【最大で】4つのTCPコネクションを同時に確立している」
とありますが、32ユーザすべてが4コネクションなのでしょうか?
それとも、推奨通り2コネしか確立しなかったブラウザや、6コネ確立しようと思ったが5コネまでに制限されたブラウザなどがあって、【平均】4つのコネクションなのでしょうか?
2020.03.13 22:30
管理人 
(No.10)
図を見返してみるとimage016以降が省略されており、image017以降において5つ目や6つ目のコネクションが確立されている可能性も捨てきれない気がします。
よって、解説中の記述を最大で4ではなく、「少なくとも4」に変えた方が適切ではないかと感じました。この立場に立つと最大数を4と断定して32ユーザまで利用できるとするのではなく、多くても32ユーザまでしか利用できないとした方が適切かもしれません。
2020.03.14 09:44
guestさん  
AP シルバーマイスター
(No.11)
なるほど「多くても32ユーザまでしか利用できない」ですか
たしかに言われてみれば、テストの回ごとで今回は32ユーザ、今回は28ユーザでアウトだったとなるとどれを信用してよいやらですからね。
「多くてもnユーザまで」を測定したところn=32だったと。

まあいずれにせよ、http/2なら確実1ブラウザ1ソケットなので”機械様のきまぐれ”とやらに悩まされなくてよいという話ですね(^^;)
2020.03.14 14:19

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。

その他のスレッド


Pagetop