共用方式為


NDIS_OFFLOAD_ENCAPSULATION 結構 (ndis/encapsulationconfig.h)

NDIS_OFFLOAD_ENCAPSULATION 結構會在與 OID_OFFLOAD_ENCAPSULATION OID 搭配使用時指定封裝設定。

語法

typedef struct _NDIS_OFFLOAD_ENCAPSULATION {
  NDIS_OBJECT_HEADER Header;
  struct {
    ULONG Enabled;
    ULONG EncapsulationType;
    ULONG HeaderSize;
  } IPv4;
  struct {
    ULONG Enabled;
    ULONG EncapsulationType;
    ULONG HeaderSize;
  } IPv6;
} NDIS_OFFLOAD_ENCAPSULATION, *PNDIS_OFFLOAD_ENCAPSULATION;

成員

Header

NDIS_OFFLOAD_ENCAPSULATION 結構的 NDIS_OBJECT_HEADER 結構。 將 Header 指定為 NDIS_OBJECT_TYPE_OFFLOAD_ENCAPSULATION 的 Type 成員、將 Revision 成員設定為 NDIS_OFFLOAD_ENCAPSULATION_ REVISION _1,並將 Size 成員設定為 NDIS_SIZEOF_OFFLOAD_ENCAPSULATION_REVISION_1。

IPv4

NDIS_OFFLOAD_ENCAPSULATION內的 結構,指定 IPv4 封裝,且包含下列成員:

IPv4.Enabled

啟用 IPv4 封裝的 ULONG 值。 如果通訊協定驅動程式啟用 IPv4 大型傳送卸除第 1 版 (LSOV1)、大型傳送卸除第 2 版 (LSOV2), 或總和檢查碼卸除,則通訊協定驅動程式會將 Enabled 設定為NDIS_OFFLOAD_SET_ON。 如果通訊協定驅動程式停用所有卸除,則會將 [已啟用] 設定為 [NDIS_OFFLOAD_SET_OFF]。 否則,通訊協定驅動程式會將 Enabled 設定為 NDIS_OFFLOAD_SET_NO_CHANGE。

IPv4.EncapsulationType

IPv4 封裝類型。 如果 Enabled 成員未設定為 NDIS_OFFLOAD_SET_ON,則此成員為零。 如果 Enabled 成員設定為 NDIS_OFFLOAD_SET_ON,通訊協定驅動程式必須將 EncapsulationType 設為下列其中一項:

價值 意義
NDIS_ENCAPSULATION_IEEE_802_3
指定 IEEE 802.3 封裝。 指定此值時,迷你埠驅動程式也應該在適用的情況下使用NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q或NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB封裝。 如需詳細資訊,請參閱 NDIS_OFFLOAD 檔。
NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
指定路由通訊協議的邏輯連結控件 (LLC) 封裝,如 RFC 1483 中所述。此旗標也用來指出乙太網路 LLC/SNAP 封裝。

IPv4.HeaderSize

IPv4 封包中使用的乙太網路標頭長度。 如果 Enabled 成員未設定為 NDIS_OFFLOAD_SET_ON,則此成員為零。 如果 Enabled 成員設定為 NDIS_OFFLOAD_SET_ON,通訊協定驅動程式必須將 HeaderSize 設為其使用的乙太網路標頭大小。

IPv6

NDIS_OFFLOAD_ENCAPSULATION內的 結構,指定 IPv6 封裝,且包含下列成員:

IPv6.Enabled

啟用 IPv6 封裝的 ULONG 值。 如果通訊協定驅動程式啟用 IPv6 LSOV1、LSOV2 或總和檢查碼卸除,則通訊協定驅動程式會將 Enabled 設為NDIS_OFFLOAD_SET_ON。 如果通訊協定驅動程式停用所有卸除,則會將 [已啟用] 設定為 [NDIS_OFFLOAD_SET_OFF]。 否則,通訊協定驅動程式會將 Enabled 設定為 NDIS_OFFLOAD_SET_NO_CHANGE。

IPv6.EncapsulationType

IPv6 封裝類型。 如果 Enabled 成員未設定為 NDIS_OFFLOAD_SET_ON,EncapsulationType 為零。 如果 Enabled 成員設定為 NDIS_OFFLOAD_SET_ON,通訊協定驅動程式必須將 EncapsulationType 設為下列其中一項:

價值 意義
NDIS_ENCAPSULATION_IEEE_802_3
指定 IEEE 802.3 封裝。 指定此值時,迷你埠驅動程式也應該在適用的情況下使用NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q或NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB封裝。 如需詳細資訊,請參閱 NDIS_OFFLOAD 檔。
NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
指定路由通訊協定的 LLC 封裝,如 RFC 1483 中所述。 此旗標也用來指出乙太網路 LLC/SNAP 封裝。

IPv6.HeaderSize

IPv6 封包中使用的乙太網路標頭長度。 如果 Enabled 成員未設定為 NDIS_OFFLOAD_SET_ON,則此成員為零。 如果 Enabled 成員設定為 NDIS_OFFLOAD_SET_ON,通訊協定驅動程式必須將 HeaderSize 設為其使用的乙太網路標頭大小。

言論

NDIS_OFFLOAD_ENCAPSULATION 結構會指定迷你埠配接器應該用於工作卸除服務的要求封裝設定。

在一組 OID_OFFLOAD_ENCAPSULATION中,通訊協定驅動程式會指定 InformationBuffer 中NDIS_OID_REQUEST 結構成員中的NDIS_OFFLOAD_ENCAPSULATION結構。

要求

要求 價值
最低支援的用戶端 NDIS 6.0 和更新版本支援。
標頭 ndis/encapsulationconfig.h (include ndis.h)

另請參閱

NDIS_OBJECT_HEADER

NDIS_OID_REQUEST

OID_OFFLOAD_ENCAPSULATION