5

HTTPパケットの最大サイズはいくつですか?HTTP GETリクエストへの応答のサイズに興味があります(これではありませんこの質問はリクエストサイズに関するものです)。サイズはありますか?1GiBファイルをダウンロードした場合、それは1つのHTTP GETリクエストとして終了しますか?(直感的には、これは起こらないと思います-また、部分的なダウンロード/マルチスレッドダウンローダーは機能しません)。

IPパケットとTCPパケットの最大長が、複数のIPパケットに断片化されている長さよりも長いことを知っています。そのようなことはHTTPでも起こりますか?この質問に対する回答を探している理由は、1c/10Kのgetリクエストを請求するAWSS3課金スキームを理解するためです。したがって、1GiBに対していくつのGETリクエストが処理され始めます。

4

1 に答える 1

2

キム・スンヨンによるAWSS3フォーラムで回答を得ました

GETリクエストを使用して5GiBファイルをダウンロードする場合。S3の課金システムは、それを1つのGETリクエストと5GiBのデータ転送としてカウントします。参考までに、5GiBのうち2GiBでファイルのダウンロードを停止すると、2GiBのデータ転送のみがカウントされます。

呼び出しを複数の連続するGET範囲呼び出しに分割しない限り、GET要求は通常はフラグメント化されません。

したがって、1GiBデータブロックごとに範囲ヘッダーを使用して5つの個別のGETリクエストを発行すると、5つのGETリクエストとしてカウントされますが、5GiB(1GiB x 5回)のデータ転送は同じです。追加のHTTPプロトコルヘッダーにより、技術的には5GiBをわずかに超えます。

これが正しければ、HTTP GET応答のパケット断片化はありません(ただし、それらは複数のTCPパケットに遭遇し、失われたTCPパケットはTCPによって処理され、別のGET要求を再開するように違法にはなりません)

于 2012-10-25T20:19:06.887 に答える