イーサネットフレーム(Ethernet Frame)は、ネットワーク通信においてデータを送信するための基本的な構造を提供します。このフレーム形式は、コンピュータネットワーク、特にローカルエリアネットワーク(LAN)で使用されます。イーサネットは、OSI参照モデルのデータリンク層と物理層で動作し、データの転送とエラーチェックを行います。イーサネットフレームは、送受信されるデータがどのようにパケット化されるかを規定し、その内容は標準化されています。
イーサネットフレームの構造
イーサネットフレームは、複数のフィールドから成り立っています。それぞれのフィールドは特定の目的を持っており、フレームの送受信を円滑に進めるために重要です。一般的なイーサネットフレームの構造は、以下のように分かれています:

-
プレアンブル(Preamble)
プレアンブルは、フレームの最初に位置し、最初の7バイトは「10101010」のパターンで構成されます。これにより、受信側はフレームの開始を認識します。最初のプレアンブルに続いて、1バイトの「Start Frame Delimiter (SFD)」があり、フレームの開始を明示します。これにより、受信側はフレームの境界を把握できるようになります。 -
宛先MACアドレス(Destination MAC Address)
イーサネットフレームの最初の6バイトは宛先MACアドレスを示します。MACアドレスは、ネットワークインターフェースカード(NIC)に割り当てられた一意の識別子で、物理的なネットワークデバイスを識別するために使用されます。 -
送信元MACアドレス(Source MAC Address)
次の6バイトは、送信元MACアドレスです。これは、データを送信したネットワークインターフェースカードのMACアドレスを指します。宛先と送信元のMACアドレスによって、ネットワーク内での通信相手を識別できます。 -
タイプ(Type/Length)
次に位置するフィールドは、2バイトで構成され、送信されるデータのタイプまたは長さを示します。このフィールドには、上位層のプロトコルを示す番号が入ることが多く、例えば、IPv4やARPなどのプロトコルの識別子が設定されます。これにより、受信機はデータがどのプロトコルに属しているかを認識し、適切に処理できます。 -
データ(Data/Payload)
データ部分は、実際のペイロード(伝送するデータ)が含まれます。この部分のサイズは、フレームのサイズに依存しますが、最大1500バイトまでとなっています。データ部分には、ユーザーが送信した情報が格納されており、送信されるアプリケーションデータがここに含まれます。 -
CRC(Cyclic Redundancy Check)
最後に、4バイトのCRCフィールドがあり、これがフレームの整合性をチェックするために使用されます。CRCは、エラーチェックを行い、データの誤りを検出します。受信側でエラーチェックを行い、エラーが検出された場合にはフレームの再送が要求されることがあります。
イーサネットフレームの構造
イーサネットフレームの一般的な構造は、次のようになります:
フィールド名 | 長さ(バイト) | 内容 |
---|---|---|
プレアンブル(Preamble) | 7 | 10101010パターン(フレーム開始の同期) |
スタートフレームデリミタ(SFD) | 1 | フレーム開始の識別子(0x10101011) |
宛先MACアドレス | 6 | 受信者のネットワークインターフェースカードのMACアドレス |
送信元MACアドレス | 6 | 送信者のネットワークインターフェースカードのMACアドレス |
タイプ/長さ | 2 | フレーム内のデータタイプ(例えば、IPv4、ARP、IPv6など) |
データ(ペイロード) | 46〜1500 | 実際に送信されるデータ |
CRC(誤り検出) | 4 | エラーチェック用のCRC(循環冗長検査)フィールド |
ヘッダーの内容と役割
イーサネットフレームのヘッダー部分は、データリンク層でデータの送受信を行う際に重要な役割を果たします。特に、宛先MACアドレス、送信元MACアドレス、タイプ/長さフィールドは、通信の目的地を指定し、送信元を識別するために不可欠です。タイプ/長さフィールドは、どのプロトコルが上位層で使用されるかを示し、データの処理方法に影響を与えます。
例えば、送信されるデータがIPv4である場合、タイプフィールドには「0x0800」という値が設定され、受信機はこのデータをIPv4として解釈します。ARPを使用する場合は、「0x0806」が設定されます。
また、CRCフィールドは、フレームの受信者がデータが正しく受信されたかを確認するために使用されます。CRCエラーが発生した場合、受信者は再送要求を行うことが一般的です。これにより、ネットワークの通信の信頼性が確保されます。
イーサネットフレームのバリエーション
イーサネットフレームにはいくつかのバリエーションがあります。最も一般的なものは、Ethernet IIフレーム形式です。この形式は、主にIPパケットやARPリクエストの転送に使用されます。しかし、イーサネットには他にも古いタイプのフレーム形式が存在しており、例えば、IEEE 802.3フレームがあります。このフレーム形式は、タイプフィールドではなく長さフィールドを使用して、ペイロードの長さを示します。
また、イーサネットの最大フレームサイズは通常1500バイトですが、Jumbo Frameという拡張が存在し、最大で9000バイトのデータを一度に送信できる場合もあります。この拡張は、大規模なデータ転送を行うネットワーク環境でよく使用されます。
結論
イーサネットフレームは、ネットワーク通信における基本的な単位であり、その構造とヘッダー部分の役割を理解することは、ネットワークエンジニアにとって非常に重要です。フレームの各フィールドは、データの送受信の正確性と効率性を確保するために設計されています。特に、MACアドレスやタイプ/長さフィールドは、データリンク層でのデータ転送を円滑にするために欠かせない要素です。