本文へ移動
QKQuickKitEN
イーサネット・L2LOCALブラウザ内で処理

イーサネットフレームサイズ計算

ペイロードサイズ(または逆方向)から、イーサネット II のフレームサイズ、パディング、実際の回線上のサイズ、オーバーヘッド、効率を計算します。VLAN タグと任意の回線速度に対応します。

入力と主要な処理をブラウザ内で行い、その入力内容をQuickKitサーバーへ送信しない設計です。

フレームの内訳

イーサネットフレームのサイズとオーバーヘッド
ペイロード
追加パディング
L2 ヘッダー + FCS
L2 フレームサイズ
回線上のサイズ
総オーバーヘッド
オーバーヘッド率
効率
IEEE 上限判定用サイズ(ペイロード + タグ分)
IEEE 802.3 のサイズ上限
最大フレーム毎秒
最大ペイロードスループット

「ベビージャイアント」「ジャンボフレーム」はベンダー・機種依存の用語であり、IEEE 802.3 が分類や閾値を定義しているものではありません。本ツールはこれらをどのサイズにも適用しません。

仕組みと使い方

ペイロードサイズからイーサネット II のフレームサイズを、またはフレームサイズから最大ペイロード / MTU を計算します。本ツールの「ペイロード」は VLAN タグを含まない元のクライアントデータです。IEEE 802.3 が上限を定めているのは MAC クライアントデータで、本ツールはその上限と比較するためにペイロードへタグ分を加えた値を用います。この判定用サイズとペイロードの両方を表示しますが、これは上限判定に使うサイズであって、タグが MAC クライアントデータフィールドの内側にあると主張するものではありません。タグなしフレームは 18 バイト(宛先 6 + 送信元 6 + EtherType 2 + FCS 4)を加算し、802.1Q タグごとに 4 バイト増えます。IEEE 802.3 の 3.2.7 節は MAC クライアントデータの上限を 3 つ列挙し、それぞれに対応するフレームサイズを定めています:basic frame は 1500 バイト / フレーム 1518 バイト、Q-tagged frame は 1504 バイト / フレーム 1522 バイト、envelope frame は 1982 バイト / フレーム 2000 バイトです。IEEE 802.3as では Q-tagged frame および envelope frame に対して basic frame より大きい MAC クライアントデータの上限が定められています(Q-tagged の上限が 1500 ではなく 1504 なのはこのためです)。したがってタグを付けると適用される上限が上がるのであって、フレームがオーバーサイズになるわけではありません。本ツールでは VLAN タグ 1 つにより上限判定に用いるサイズが 4 バイト増え、1504 バイトの Q-tagged 上限および 1522 バイトのフレーム上限に対応します。QinQ の 1526 バイトも同様に envelope の上限内です。1518・1522・2000 は標準が定める値ですが、1526 はペイロード 1500 バイト + タグ 2 つとして本ツールが導出した値であり、IEEE 802.3 が定める上限ではありません。また IEEE 802.3 は、envelope frame の内側であっても元のクライアントデータは 1500 バイト以内であるべきとしており、ペイロードがこれを超える場合は別途表示します。IEEE 802.3 は「標準 / オーバーサイズ」という分類も、「ベビージャイアント」「ジャンボフレーム」という用語も定義していません。これらはベンダー用語で閾値もベンダー・機種依存のため、本ツールはどのサイズにも適用せず、用語の存在を注記するだけにとどめます。パディングは最小フレームサイズ 64 バイトに達するよう必要に応じて追加されるため、パディングが始まるペイロードサイズはタグ数によって変わります(タグなし 46 バイト、タグ 1 つ 42 バイト、タグ 2 つ 38 バイト)。「プリアンブル + SFD + IFG を数える」を有効(既定)にすると、回線上のサイズ・オーバーヘッド・効率のすべてに 7 バイトのプリアンブル、1 バイトの SFD、12 バイトのフレーム間ギャップ(合計 20 バイト)が含まれ、効率は ペイロード / (フレーム + 20) になります。指定した回線速度でのフレーム毎秒とスループットは、常にこの 20 バイトを含めて計算します。ジャンボフレーム(一般的にペイロード 9000 バイト、スイッチでは 9216 バイトのフレーム上限のこともある)は広く使われていますが、IEEE 802.3 では標準化されておらず、受け入れられるサイズもベンダーによって異なります。すべての計算はブラウザ内で実行されます。