インテルのみ表示可能 — GUID: xog1649991156672
Ixiasoft
5.1.3.3.1. 長さのチェック
MAC 機能は、基本フレーム、VLAN タグ付きフレーム、およびスタック VLAN タグ付きフレームのフレームおよびペイロード長をチェックします。
IP コアは、フレーム長が有効であるか、過小でも過大でもないかどうかをチェックします。有効なフレーム長は少なくとも 64 (0x40) バイトであり、さまざまなフレームタイプの次の最大値を超えません。
- Basic frames— MAX_RX_SIZE_CONFIGレジスターで指定されたバイト数。
- VLAN tagged frames— MAX_RX_SIZE_CONFIGレジスターで指定された値に 4 バイトを加えた値。
- Stacked VLAN tagged frames—MAX_RX_SIZE_CONFIGレジスターで指定された値に 8 バイトを加えた値。
基本 MAC フレームの長さ/タイプ フィールド、または VLAN タグ付きフレームのクライアントの長さ/タイプ フィールドの値が 0x600 未満の場合、IP コアはペイロード長もチェックします。 IP コアは、フレームを受信するときにペイロード長を追跡し、関連するフレーム フィールドに対して長さをチェックします。ペイロード長は、次の条件を満たす場合に有効です。
- 実際のペイロードの長さは、長さ/タイプまたはクライアントの長さ/タイプ フィールドの値と一致します。
- Normal frames:
- Basic frames—ペイロードの長さは 46 (0x2E) ~ 1536 (0x0600) バイト (1536 を除く) です。
- VLAN tagged frames—ペイロードの長さは 42 (0x2A) ~ 1536 (0x0600) の間で、1536 は除きます。
- Stacked VLAN tagged frames—ペイロードの長さは、1536 を除く 38 (0x26) ~ 1536 (0x0600) の間です。
- Jumbo frames:
- Jumbo basic frames— ペイロード長は 46 (0x2E) から MAX_RX_SIZE_CONFIG レジスタで指定された値から 18 バイトを引いた値までの間です。
- Jumbo VLAN tagged frames— ペイロード長は 42 (0x2A) から MAX_RX_SIZE_CONFIG レジスターで指定された値から 22 バイトを引いた値までの間です。
- Jumbo stacked VLAN tagged frames— ペイロード長は 38 (0x26) から MAX_RX_SIZE_CONFIG レジスタで指定された値から 26 バイトを引いた値までです。
RX MAC は、無効な長さまたは無効なペイロード長のフレームをドロップしません。フレームまたはペイロードの長さが有効でない場合、MAC 機能は出力エラー ビットをアサートします。
- avalon_st_rx_error[2] - アンダーサイズ・フレーム
- avalon_st_rx_error[3] - オーバーサイズ・フレーム
- L1_rx_error[4]——ペイロード長エラー
長さフィールドの値が実際のペイロード長より大きい場合、IP コアは l1_rx_error[4]をアサートします。長さフィールドの値が実際のペイロード長より小さい場合、MAC RX はフレームに過剰なパディングがあると見なし、 l1_rx_error[4]をアサートしません。
注: MAC のカウンタ制限は 0xFFFF です。この値より大きいサイズのフレームの場合、MAC は MAX_RX_SIZE_CONFIG にプログラムされた値に関係なく、オーバーサイズ・フレーム エラーをアサートします。これは TX データパスにも当てはまります。