メインコンテンツまでスキップ

4. パケットのパケットストリームへのグループ化 (Grouping packets into packet streams)

4. パケットのパケットストリームへのグループ化 (Grouping packets into packet streams)

本節では、圧縮のためにパケットをパケットストリームにまとめる方法を説明します。最適な圧縮率を達成するために、同じパケットストリームのパケットが類似したヘッダーを持つようにパケットをまとめるべきです。このグループ化が失敗すると、圧縮アルゴリズムがパケットストリームの既存のコンテキストを利用できることがほとんどなく、完全ヘッダーを頻繁に送信しなければならないため、ヘッダー圧縮のパフォーマンスが低下します。

グループ化は圧縮器によって行われます。圧縮器は適切と判断する任意の基準を使用してパケットをパケットストリームにグループ化できます。

4.1 パケットグループ化のガイドライン (Guidelines for grouping packets)

定義フィールド (Defining fields)

ヘッダーの定義フィールドは、同じパケットストリームに属するすべてのパケットに存在し同一でなければなりません。これらのフィールドは第 7 節で DEF とマークされています。定義フィールドには、フローラベル、IP ヘッダーの送信元と宛先アドレス、ルーティングヘッダーの最終宛先アドレス、次ヘッダーフィールド(IPv6)、プロトコルフィールド(IPv4)、ポート番号(UDP および TCP)、および認証・暗号化ヘッダーの SPI が含まれます。

フラグメント化されたパケット (Fragmented packets)

フラグメント化されたパケットと非フラグメント化されたパケットは同じパケットストリームにグループ化すべきではありません。フラグメントヘッダーや IPv4 ヘッダーの識別フィールドはパケットストリームの識別に使用すべきではありません。

上位プロトコル識別 (Upper protocol identification)

第 7 節で説明されていないヘッダーを識別する最初の次ヘッダーフィールドはパケットストリームの識別に使用すべきです。すなわち、同じ DEF フィールドと同じ上位層プロトコルを持つすべてのパケットはまとめてグループ化すべきです。

TTL フィールド(ホップ制限フィールド)

複雑な実装は TTL(ホップ制限)フィールドを監視し、頻繁に変化する場合は DEF フィールドとして使用することがあります。これは頻繁なルーティングの揺らぎがある場合に発生する可能性があります。

トラフィッククラスフィールド(IPv6)、サービスタイプフィールド(IPv4)

IPv6 ヘッダーのトラフィッククラスフィールドと IPv4 ヘッダーのサービスタイプは、同じ DEF フィールドを持つパケット間で頻繁に変化する場合があります。複雑な実装はこれに注意し、これらのフィールドを定義フィールドとして使用する準備をすべきです。

IP パケットがトンネリングされる場合、トンネル入口点で追加の IP ヘッダーでカプセル化され、トンネルエンドポイントに送信されます。このようなパケットをパケットストリームにグループ化するために、内部ヘッダーも検査してパケットストリームを決定すべきです。

これらのガイドラインは根拠のある推測であることを強調します。グループ化が失敗した場合、結果はパフォーマンスの低下ですが、不正な解凍にはなりません。