NDIS_OFFLOAD 구조체(ntddndis.h)
NDIS_OFFLOAD 구조는 네트워크 어댑터로 오프로드할 수 있는 몇 가지 계산 작업을 지정합니다.
구문
typedef struct _NDIS_OFFLOAD {
NDIS_OBJECT_HEADER Header;
NDIS_TCP_IP_CHECKSUM_OFFLOAD Checksum;
NDIS_TCP_LARGE_SEND_OFFLOAD_V1 LsoV1;
NDIS_IPSEC_OFFLOAD_V1 IPsecV1;
NDIS_TCP_LARGE_SEND_OFFLOAD_V2 LsoV2;
ULONG Flags;
NDIS_IPSEC_OFFLOAD_V2 IPsecV2;
NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD Rsc;
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD EncapsulatedPacketTaskOffloadGre;
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_V2 EncapsulatedPacketTaskOffloadVxlan;
UCHAR EncapsulationTypes;
NDIS_RFC6877_464XLAT_OFFLOAD Rfc6877Xlat;
NDIS_UDP_SEGMENTATION_OFFLOAD UdpSegmentation;
} NDIS_OFFLOAD, *PNDIS_OFFLOAD;
멤버
Header
NDIS_OFFLOAD 구조체의 NDIS_OBJECT_HEADER 구조체입니다. Header에서 지정하는 구조체의 Type 멤버를 NDIS_OBJECT_TYPE_OFFLOAD 설정합니다.
다음과 같이 NDIS_OBJECT_HEADER 구조체의 Revision 및 Size 멤버를 설정합니다.
- NDIS 6.83 이상 드라이버의 경우:
- 수정 버전을 NDIS_OFFLOAD_REVISION_6(NDIS 6.83)로 설정합니다.
- 크기를 NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_6 설정합니다.
- NDIS 6.70 이상 드라이버의 경우:
- 수정 버전을 NDIS_OFFLOAD_REVISION_5(NDIS 6.70)로 설정합니다.
- 크기를 NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_5 설정합니다.
- NDIS 6.50 이상 드라이버의 경우:
- 수정 버전을 NDIS_OFFLOAD_REVISION_4(NDIS 6.50)로 설정합니다.
- 크기를 NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_4 설정합니다.
- NDIS 6.30 이상 드라이버의 경우:
- 수정 버전을 NDIS_OFFLOAD_REVISION_3(NDIS 6.30)로 설정합니다.
- 크기를 NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_3 설정합니다.
- NDIS 6.1 및 6.20 드라이버의 경우:
- 수정 버전을 NDIS_OFFLOAD_REVISION_2(NDIS 6.1)로 설정합니다.
- 크기를 NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_2 설정합니다.
- NDIS 6.0 드라이버의 경우:
- 수정 버전을 NDIS_OFFLOAD_REVISION_1(NDIS 6.0)로 설정합니다.
- 크기를 NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_1 설정합니다.
Checksum
에서 체크섬 오프로드 정보 NDIS_TCP_IP_CHECKSUM_OFFLOAD 구조체입니다.
LsoV1
의 LSOV1(대규모 송신 오프로드 버전 1) 정보 NDIS_TCP_LARGE_SEND_OFFLOAD_V1 구조체입니다.
IPsecV1
IPsec(인터넷 프로토콜 보안)은 에서 정보를 오프로드합니다. NDIS_IPSEC_OFFLOAD_V1 구조체입니다.
LsoV2
LSOV2(대규모 송신 오프로드 버전 2) 의 오프로드 정보 NDIS_TCP_LARGE_SEND_OFFLOAD_V2 구조체입니다.
Flags
네트워크 어댑터가 지원하는 속성을 지정하는 플래그의 비트 OR입니다. 다음 플래그가 정의됩니다.
값 | 의미 |
---|---|
|
네트워크 어댑터는 IPsecV2 및 TCP 체크섬을 지원합니다. |
|
네트워크 어댑터는 IPsecV2 및 UDP 체크섬을 지원합니다. |
IPsecV2
IPsec(인터넷 프로토콜 보안)은 NDIS_IPSEC_OFFLOAD_V2 구조에서 버전 2 정보를 오프로드합니다.
Rsc
NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD 구조에서RSC(세그먼트 병합) 오프로드 정보를 수신합니다.
EncapsulatedPacketTaskOffloadGre
NVGRE(제네릭 라우팅 캡슐화) 태스크를 사용하여 네트워크 가상화는 NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD 구조에서 정보를 오프로드합니다. 이 멤버는 NVGRE 형식 패킷에 대한 작업 오프로드를 지원하는 미니포트 드라이버에서만 설정해야 합니다.
EncapsulatedPacketTaskOffloadVxlan
VXLAN 캡슐화된 패킷 태스크는 NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_V2 구조에서 정보를 오프로드합니다. 이 멤버는 VXLAN 형식 패킷에 대한 작업 오프로드를 지원하는 미니포트 드라이버에서만 설정해야 합니다. VXLAN은 NVGRE와 비슷하지만 다른 프로토콜을 사용합니다.
EncapsulationTypes
캡슐화된 패킷 태스크 오프로드에 대해 사용하도록 설정된 캡슐화 형식입니다.
Rfc6877Xlat
464XLAT 하드웨어는 NDIS_RFC6877_464XLAT_OFFLOAD 구조의 정보를 오프로드합니다.
UdpSegmentation
UDP USO(구분 오프로드) 하드웨어는 NDIS_UDP_SEGMENTATION_OFFLOAD 구조에서 정보를 오프로드합니다.
설명
NDIS_OFFLOAD 구조체는 다음 위치에서 사용됩니다.
- NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES 구조체의 DefaultOffloadConfiguration 멤버
- NDIS_BIND_PARAMETERS 구조체의 DefaultOffloadConfiguration 멤버
- NDIS_FILTER_ATTACH_PARAMETERS 구조체의 DefaultOffloadConfiguration 멤버
- NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버(OID_TCP_OFFLOAD_CURRENT_CONFIG OID 요청에 사용됨)
- NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG 상태 표시의 StatusBuffer 멤버
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista,NDIS 6.0 이상에서 지원됩니다. |
지원되는 최소 서버 | Windows Server 2008 |
머리글 | ntddndis.h(Ndis.h 포함) |
추가 정보
NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG NDIS_TCP_LARGE_SEND_OFFLOAD_V1 NDIS_TCP_LARGE_SEND_OFFLOAD_V2NVGRE(일반 라우팅 캡슐화) 작업 오프로드를 사용한 네트워크 가상화
OID_TCP_OFFLOAD_CURRENT_CONFIG
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기