ネットワーク

イーサネットフレームの構造解説

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

イーサネットフレームの構造

イーサネットフレームは、複数のフィールドから成り立っています。それぞれのフィールドは特定の目的を持っており、フレームの送受信を円滑に進めるために重要です。一般的なイーサネットフレームの構造は、以下のように分かれています:

  1. プレアンブル(Preamble)
    プレアンブルは、フレームの最初に位置し、最初の7バイトは「10101010」のパターンで構成されます。これにより、受信側はフレームの開始を認識します。最初のプレアンブルに続いて、1バイトの「Start Frame Delimiter (SFD)」があり、フレームの開始を明示します。これにより、受信側はフレームの境界を把握できるようになります。

  2. 宛先MACアドレス(Destination MAC Address)
    イーサネットフレームの最初の6バイトは宛先MACアドレスを示します。MACアドレスは、ネットワークインターフェースカード(NIC)に割り当てられた一意の識別子で、物理的なネットワークデバイスを識別するために使用されます。

  3. 送信元MACアドレス(Source MAC Address)
    次の6バイトは、送信元MACアドレスです。これは、データを送信したネットワークインターフェースカードのMACアドレスを指します。宛先と送信元のMACアドレスによって、ネットワーク内での通信相手を識別できます。

  4. タイプ(Type/Length)
    次に位置するフィールドは、2バイトで構成され、送信されるデータのタイプまたは長さを示します。このフィールドには、上位層のプロトコルを示す番号が入ることが多く、例えば、IPv4やARPなどのプロトコルの識別子が設定されます。これにより、受信機はデータがどのプロトコルに属しているかを認識し、適切に処理できます。

  5. データ(Data/Payload)
    データ部分は、実際のペイロード(伝送するデータ)が含まれます。この部分のサイズは、フレームのサイズに依存しますが、最大1500バイトまでとなっています。データ部分には、ユーザーが送信した情報が格納されており、送信されるアプリケーションデータがここに含まれます。

  6. 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アドレスやタイプ/長さフィールドは、データリンク層でのデータ転送を円滑にするために欠かせない要素です。

Back to top button