概要
ここではIPv4で使用されているヘッダー情報について解説していきます。ヘッダー情報は下記の内容で構成されています。
バージョン
4ビットで構成されたIPヘッダーのバージョンを示す情報。現在では「4」が使用されています。
ヘッダ長
4ビットで構成され、ヘッダの大きさを表し単位は4オクテットとなっています。つまりオプションなしのヘッダ長は20オクテットなので「5」が入力されています。
DSCPフィールド、ECNフィールド
6ビットのDSCPフィールドと2ビットのECNフィールドで構成されでおり、DSCPフィールドはDiffServと呼ばれる品質制御で利用され、全部で8つの品質制御クラスを設定する事が出来ます。
ECNフィールドはネットワークの輻輳を通知するために利用されています。
パケット長(Tortal Length)
IPヘッダーとIPデータを加えたパケット全体のオクテット長を16ビットで表します。つまり2の16乗である65536オクテットが扱える最大長となりますが、分割処理などの機能により上位層から見れば特に問題ありません。
識別子(ID:Identification)
16ビットで構成されフラグメント(分割処理)を復元する際の識別子として使用されます。この識別子は送信する度に1づつ加算され、重複しないようになっています。また、識別する際にはこのIDだけではなく送信先アドレスや宛先アドレス、プロトコルなどと合わせて識別判定を行います。
フラグ(Flags)
3ビットで構成されパケット分割に関する情報を持っています。内容には分割可否や分割の最後のパケットであることを示すことに使用されます。
フラグメントオフセット(FO:Fragment Offset)
13ビットで構成されており、分割されたパケットの復元位置を示します。単位は8オクテットであり、最大は65536オクテットまで表現可能です。
生存時間(TTL:Time To Live)
8ビットで構成され、インターネットを通信する間に何個のルーターを中継してもよいかを示す値です。ルーターを一つ通過するたびに1づつ減算され0になればそのパケットは破棄されます。
プロトコル(Protocol)
8ビットで構成され、IPヘッダーの次に連なるヘッダーのプロトコルを示します。
ヘッダチェックサム
16ビットで構成され、IPヘッダーの破損をチェックするために使用されます。
まずチェックサムを「0」にしてから16ビット単位で1の補数を求め、それらの和に対してさらに1の補数を求め、それをチェックサムに入力します。
送信元IPアドレス(Source Address)
32ビットで構成された送信元のIPアドレスを表します。
宛先IPアドレス(Destination Address)
32ビットで構成された宛先のIPアドレスを表します。
オプション(Options)
可変長の長さを持ち、通常時は使用されません。テストやデバッグに使用します。内容としては「セキュリティラベル」「ソースルート」「ルートレコード」「タイムスタンプ」など。
パディング(Padding)
オプションを付加した場合に32ビットの整数倍になるようにこのパディングで「0」を付加して調整します。
データ(Data)
IPの上位層のヘッダーも含めたデータが格納されます。
コメント