IPv4-パケット構造
レイヤー3プロトコル(OSI)であるインターネットプロトコルは、レイヤー4(トランスポート)からデータセグメントを取得し、それをパケットに分割します。IPパケットは、上位層から受信したデータユニットをカプセル化し、独自のヘッダー情報に追加します。
カプセル化されたデータは、IPペイロードと呼ばれます。IPヘッダーには、もう一方の端でパケットを配信するために必要なすべての情報が含まれています。
IPヘッダーには、バージョン番号(このコンテキストでは4)を含む多くの関連情報が含まれています。その他の詳細は次のとおりです。
Version−バージョン番号 使用されるインターネットプロトコルの数(例:IPv4)。
IHL−インターネットヘッダーの長さ。IPヘッダー全体の長さ。
DSCP−差別化サービスコードポイント。これはサービスの種類です。
ECN−明示的輻輳通知。ルートで見られる混雑に関する情報を伝達します。
Total Length − IPパケット全体の長さ(IPヘッダーとIPペイロードを含む)。
Identification−送信中にIPパケットがフラグメント化された場合、すべてのフラグメントに同じ識別番号が含まれます。それらが属する元のIPパケットを識別するため。
Flags−ネットワークリソースの要求に応じて、IPパケットが大きすぎて処理できない場合、これらの「フラグ」は、フラグメント化できるかどうかを示します。この3ビットフラグでは、MSBは常に「0」に設定されます。
Fragment Offset −このオフセットは、元のIPパケット内のフラグメントの正確な位置を示します。
Time to Live−ネットワークでのループを回避するために、すべてのパケットはTTL値が設定されて送信されます。これにより、このパケットが通過できるルーター(ホップ)の数がネットワークに通知されます。各ホップで、その値は1ずつデクリメントされ、値が0に達すると、パケットは破棄されます。
Protocol−このパケットが属するプロトコル、つまり次のレベルのプロトコルである宛先ホストのネットワーク層に通知します。たとえば、ICMPのプロトコル番号は1、TCPは6、UDPは17です。
Header Checksum −このフィールドは、ヘッダー全体のチェックサム値を保持するために使用され、パケットがエラーなしで受信されたかどうかをチェックするために使用されます。
Source Address −パケットの送信者(または送信元)の32ビットアドレス。
Destination Address −パケットの受信者(または宛先)の32ビットアドレス。
Options −これはオプションのフィールドであり、IHLの値が5より大きい場合に使用されます。これらのオプションには、セキュリティ、レコードルート、タイムスタンプなどのオプションの値が含まれる場合があります。