イーサネットのフレームの構成を解説します。IPでは1つのデータの塊をパケットと表現しますが、イーサネットの場合は1つのデータの塊をフレームと表現します。下記にイーサネットのフレームの構成を紹介します。
イーサネットフレーム構成
イーサネットのフレームの構成を紹介します。
イーサネットのフレームの種類として、EthernetⅡフレーム以外(IEEE802.3など)に複数種類がありますが、IPv4,IPv6などで利用する形式はEthernetⅡフレームとなっているため、今回はEthernetⅡフレームの構成を紹介します。
※IEEE802.3フレームの構成では、NetWareやNetBIOSなどで利用されます。
IFG ( Inter Frame Gap )
フレームとフレームの間隔のサイズとして最小値12Byteが定義されています。そのため、フレームが連続している送信されている際でも、必ずフレームの間隔として12Byteの隙間が存在します。
※イーサネットは従来の高速ディジタル通信と違い送信するデータがない場合はフレームを送信しません。送信データがない場合は、当然ながらフレーム間隔は12Byte以上になります。
プリアンブル
フレームの開始時にプリアンブルとして8Byteのデータを送信します。
※厳密に記載すると 最初プリアンブル(10101010)x7として7Byte分、最後の1ByteをSFD(10101011)
フレームの開始(このパターン後は宛先MACアドレス)の検出や信号の同期用に活用されていました。最近のイーサフレーム持続的に信号を送出しているため、不要となっていますが、互換性のため現在もプリアンブルを送信する形となっています。
MACアドレス ( 送信先MAC アドレ / 送信元MACアドレス )
イーサフレームには送信先や送信元をMACアドレスを利用して送信先(ブロードキャスト、マルチキャスト、端末(ユニキャスト))、自身の端末を送信元MACアドレスとし送信します。
MACアドレスはは48bit(6Byte)で構成されています。一般的には 16進数で表記されることが一般的です。 FFFF.FFFF.FFFF (ブロードキャスト) , 0000-5e00-0101 ( ユニキャスト) 装置によって2byteマイに区切り(. や -) 、大文字、小文字の差など表記が異なります。
U/L ( Unique / Local ) bit
Macアドレスの先頭から7bit目を U/L として、IPv4アドレスでいう、グローバルアドレスとプライベートアドレスの識別子になります。
- 0 グローバルアドレス
- 1 ローカルアドレス
0として記載があるMACアドレスはIEEEに申請し重複しないように払い出されたアドレスになります。IEEEに管理料を支払うことで取得することが可能です。
IEEEからグローバルアドレスとして取得した場合は MACアドレスの先頭3Byteが指定されます。その先頭3byteをOUI(OUI Oraganizationaly Unique Identifier)と後半部3Byte(UAA Universal Administered Address) と呼ばれます。
例として Ciscoが取得している OUIの例として 00-DF-1D が払い出されています。末尾の3Byte(UAA) を任意に割り当てすることができますので、CiscoのOUI 00-DF-1Fでは 00-DF-1F-00-00-00 から 00-DF-1F-FF-FF-FF まで利用することが可能です。
MACアドレスの先頭3ByteがOUIになるので、U/bitが0の場合は先頭3ByteのMACでどのでメーカの機器か判断することが可能です。下記は IEEE で管理されている OUI の一覧になります。
I/G ( Individual / Group ) bit
MACアドレス最終ビット I/G bit となってなり、
- 0 ( Individual ) ユニキャストアドレス(1対1通信用)
- 1 ( Group ) グループアドレス (1対N通信用)
マルチキャストやブロードキャストで利用する場合はこのbit が1となります。
タイプ
データ部分に格納しているプロトコルの種類が格納されています。このタイプコードを見るとでデータ部分が格納されいているプロトコルを判断できます。
下記によく利用されるタイプコードをいくつか紹介しています。
タイプコード | プロトコル |
---|---|
0x0800 | IPv4 |
0x0806 | ARP |
0x8035 | RARP |
0x86dd | IPv6 |
0x8847 | MPLS |
データ
46Byteから1500Byteに送信先に伝えるデータ(情報)を格納する箇所になります。
データは46Byte以上を格納する必要があります。伝えるデータが46Byte未満の場合は、ダミーデータ「0」であるパディングデータで埋めて46Byteのフィールドサイズを確保する。
FCS
フレームが正しく受信できたことを確認するためにチェック用のフィールになります。
フレーム全体の巡回冗長検査(CRC)が格納されます。受信時に受信したフレーム全体をCRC計算を行い、受信したフレーム内のCRCを比較して同一であれば途中でbitに変更がないことを確認に利用します。
イーサフレームのサイズ
イーサフレームは宛先MACアドレスからFCSまでになり、64Byte〜1518Byteになります。
標準規格としては上記記載通りですが、1518Byte以上のジャンボフレーム(Jumbo Frame)対応製品も出ています。