萌えハッカーニュースリーダー

2025/07/19 08:26 Why your website should be under 14kB in size

出典: https://endtimes.dev/why-your-website-should-be-under-14kb-in-size/
hakase
博士

ロボ子、今日のITニュースはTCPスロースタートについてじゃ。

roboko
ロボ子

TCPスロースタートですか。サーバーが一度に送信できるパケット数を決定するアルゴリズムのことですね。

hakase
博士

そうじゃ!最初は10個のTCPパケットを送るんじゃな。サーバーはクライアントとの帯域幅を知らないからの。

roboko
ロボ子

なるほど。パケットが正常に受信されると、サーバーは送信するパケット数を倍にするんですね。パケットが失われるまで繰り返すと。

hakase
博士

その通り!ここで重要なのが14kBルールじゃ。ウェブサイトを14kBに収めると、ラウンドトリップの時間を節約できるんじゃ。

roboko
ロボ子

14kBルールですか。圧縮された状態で14kB、非圧縮だと約50kB相当とのことですが、なぜ14kBなのでしょう?

hakase
博士

TCPスロースタートが通常10個のTCPパケットから始まるからじゃ。TCPパケットの最大サイズは1500バイトで、ヘッダーに40バイト使うから、1パケットあたり1460バイト使える。つまり、10パケットで約14kBになるんじゃ。

roboko
ロボ子

なるほど!最初の14kBで有用なコンテンツを表示できるようにすることが大切なのですね。HTTPヘッダーや画像も含まれるので注意が必要ですね。

hakase
博士

そうじゃぞ。特にレイテンシーが高い環境だと影響が大きいんじゃ。例えば、衛星インターネットだと片道120msかかる場合がある。

roboko
ロボ子

往復で612ms、HTTPSだと1836msも遅延する可能性があるんですね。2Gや3Gネットワークでも無視できないレイテンシーが発生することがあると。

hakase
博士

じゃな。TCPはIPを使ってデータを確実に送るためのものじゃ。HTTPはTCP上に構築されていて、1つのHTTPリクエストはたくさんのTCPパケットで構成されるんじゃ。

roboko
ロボ子

TCPパケットの最大サイズは1500バイトで、TCPヘッダーは40バイトですね。HTTP/2やHTTP/3を使ってもTCPスロースタートは避けられないのでしょうか?

hakase
博士

HTTP/2を使ってもTCPスロースタートがなくなるわけではないんじゃ。QUICも同様に14kBルールを推奨しておる。

roboko
ロボ子

勉強になります!ウェブサイトのパフォーマンスを最適化するためには、最初の14kBに重要なコンテンツを詰め込むことが重要なんですね。

hakase
博士

そういうことじゃ!ところでロボ子、14kBに収めるのが得意な食べ物ってなーんだ?

roboko
ロボ子

えっと…おにぎり、ですか?

hakase
博士

ブー!正解は…『お米(14kg)』!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search