NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD 구조체(ntddndis.h)

NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD 구조에는 NVGRE(일반 라우팅 캡슐화) NVGRE-TO(작업 오프로드)를 사용하는 네트워크 가상화에 대한 오프로드 지원 상태가 포함됩니다. 이 구조체는 NDIS_OFFLOAD 구조체의 EncapsulatedPacketTaskOffloadGre 멤버에 사용됩니다.

구문

typedef struct _NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD {
  ULONG TransmitChecksumOffloadSupported : 4;
  ULONG ReceiveChecksumOffloadSupported : 4;
  ULONG LsoV2Supported : 4;
  ULONG RssSupported : 4;
  ULONG VmqSupported : 4;
  ULONG UsoSupported : 4;
  ULONG Reserved : 8;
  ULONG MaxHeaderSizeSupported;
} NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD, *PNDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD;

멤버

TransmitChecksumOffloadSupported

전송 체크섬에 대한 작업 오프로드 설정입니다.

ReceiveChecksumOffloadSupported

수신 체크섬에 대한 작업 오프로드 설정입니다.

LsoV2Supported

LSOv2(대규모 송신 오프로드 버전 2)에 대한 작업 오프로드 설정입니다.

RssSupported

RSS(수신 측 크기 조정)에 대한 작업 오프로드 설정입니다.

VmqSupported

VMQ(가상 머신 큐)에 대한 작업 오프로드 설정입니다.

UsoSupported

UDP 구분 오프로드(USO)에 대한 작업 오프로드 설정입니다.

Reserved

시스템에서 사용하도록 예약되었습니다.

MaxHeaderSizeSupported

이 멤버는 패킷의 시작부터 내부 TCP 또는 UDP 페이로드의 시작(TCP 또는 UDP 내부 헤더의 마지막 바이트)까지 NIC가 이러한 모든 작업 오프로드에 대해 지원해야 하는 최대 헤더 크기로 설정해야 합니다. 프로토콜 드라이버는 결합된 캡슐화 헤더가 이 크기를 초과하는 패킷의 처리를 오프로드하지 않을 것으로 예상됩니다.

참고: 256바이트는 가능한 모든 사례를 포함해야 하는 좋은 기본값입니다.

설명

초기 기능 보급 알림 및 NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIGNDIS_STATUS_TASK_OFFLOAD_HARDWARE_CAPABILITIES 상태 표시에서 TransmitChecksumOffloadSupported, ReceiveChecksumOffloadSupported, LsoV2Supported, RssSupported, VmqSupportedUsoSupported 멤버는 다음 플래그의 비트 OR로 설정할 수 있습니다.

용어 Description
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_NOT_SUPPORTED 미니포트 어댑터가 멤버가 지정하는 해당 작업 오프로드 기능을 지원하지 않도록 지정합니다.
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV4 미니포트 어댑터가 멤버가 캡슐화된 패킷의 내부 IP 헤더가 IPv4인 위치를 지정하는 해당 작업 오프로드 기능을 지원하도록 지정합니다.
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV4 미니포트 어댑터가 멤버가 캡슐화된 패킷의 외부 IP 헤더가 IPv4인 위치를 지정하는 해당 작업 오프로드 기능을 지원하도록 지정합니다.
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV6 미니포트 어댑터가 멤버가 캡슐화된 패킷의 내부 IP 헤더가 IPv6인 위치를 지정하는 해당 작업 오프로드 기능을 지원하도록 지정합니다.
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV6 미니포트 어댑터가 멤버가 캡슐화된 패킷의 외부 IP 헤더가 IPv6인 위치를 지정하는 해당 작업 오프로드 기능을 지원하도록 지정합니다.

예를 들어 미니포트 어댑터와 드라이버가 IPv6 헤더를 외부 IP 헤더로만 지원하지만 내부 IP 헤더로는 지원하지 않는 경우 TransmitChecksumOffloadSupported, ReceiveChecksumOffloadSupported, LsoV2Supported, RssSupported, VmqSupported 및 UsoSupported를 NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_INNER_IPV4 비트 OR 값, NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV4 및 usoSupported 로 설정합니다. NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_OUTER_IPV6.

IP 옵션 및 TCP 옵션과 관련하여 캡슐화된 패킷에 대해 다음과 같은 가정이 이루어졌습니다.

  • NIC가 일반 체크섬 오프로드 및 LSOv2 보급 알림에서 IpOptionsTcpOptions 지원을 지정하는 경우 NVGRE(일반 라우팅 캡슐화) 작업 오프로드를 사용한 네트워크 가상화 가 지원되는 경우 캡슐화된 패킷에 대한 옵션 처리를 지원해야 합니다. 즉, 캡슐화된 패킷 내에서 내부 및 외부 IP 옵션 및 TCP 옵션을 모두 지원합니다. NVGRE 작업 오프로드와 관련된 별도의 기능 보급 알림은 없습니다.

프로토콜 드라이버가 내부 및 외부 IP 헤더 버전이 다른 패킷을 의미하는 "혼합 모드" 패킷을 오프로드할 수 있습니다. 예를 들어 패킷은 외부 IP 헤더를 IPv6으로, 내부 IP 헤더를 IPv4로 가질 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 NDIS 6.30 이상에서 지원됩니다.
지원되는 최소 서버 Windows Server 2012
머리글 ntddndis.h(Ndis.h 포함)

추가 정보