Share via


イーサネット フレームの分割の概要

このセクションでは、プロバイダーが分割するイーサネット フレームの種類に応じて、ヘッダー データ分割プロバイダーに適用される特定のヘッダー データ分割要件について説明します。

: このトピックの一般的な要件を読んだ後、後続のトピックを使用して、イーサネット フレームの種類ごとに特定の要件を理解できます。 以降のトピックは、前のトピックの要件に基づいて構築されています。 たとえば、フレームに IPv4 と UDP の情報が含まれている場合は「IPv4 フレームの分割」と「UDP ペイロードでのフレームの分割」に関するトピックを読む必要があります。

ヘッダー データ分割プロバイダーがヘッダー データ分割要件に準拠してフレームを分割する場合、指定された NET_BUFFER_LIST 構造体には、NblFlags メンバーに NDIS_NBL_FLAGS_HD_SPLIT フラグが設定されている必要があります。 ヘッダー データ分割プロバイダーがフレームを分割しない場合は、NblFlags で次のフラグをクリアしてフレームを示す必要があります。

  • NDIS_NBL_FLAGS_HD_SPLIT

  • NDIS_NBL_FLAGS_SPLIT_AT_UPPER_LAYER_PROTOCOL_HEADER

  • NDIS_NBL_FLAGS_SPLIT_AT_UPPER_LAYER_PROTOCOL_PAYLOAD

ヘッダーデータ分割 NET_BUFFER_LIST フラグおよびその他の受信表示要件の設定の詳細については、「ヘッダーデータ分割を使用した受信表示」を参照してください。

ヘッダー データ分割プロバイダーが、ヘッダー データ分割プロバイダーの要件の外部で受信フレームを分割できる場合があります。 このような場合、プロバイダーは、IP ヘッダー、IPv4 オプション、IPsec ヘッダー、IPv6 拡張ヘッダー、または上位層プロトコル ヘッダーの途中でイーサネット フレームを分割しないでください。ただし、最初の MDL に、先読みサイズに指定された NDIS 以上のバイト数が含まれている場合を除きます。 先読みサイズの詳細については、OID_GEN_CURRENT_LOOKAHEAD を参照してください。

このセクションには、次が含まれます。

IPv4 フレームの分割

IPv6 フレームの分割

断片化された IP フレームの分割

上位層プロトコル ヘッダーの開始でのフレームの分割

TCP ペイロードでのフレームの分割

UDP ペイロードでのフレームの分割

TCP と UDP 以外のフレームの分割