NDIS_TCP_LARGE_SEND_OFFLOAD_V1 구조체(ntddndis.h)
NDIS_TCP_LARGE_SEND_OFFLOAD_V1 구조는 NDIS_OFFLOAD 구조에서 LSOV1(대규모 송신 오프로드 버전 1) 정보를 제공합니다.
구문
typedef struct _NDIS_TCP_LARGE_SEND_OFFLOAD_V1 {
struct {
ULONG Encapsulation;
ULONG MaxOffLoadSize;
ULONG MinSegmentCount;
ULONG TcpOptions : 2;
ULONG IpOptions : 2;
} IPv4;
} NDIS_TCP_LARGE_SEND_OFFLOAD_V1, *PNDIS_TCP_LARGE_SEND_OFFLOAD_V1;
멤버
IPv4
다음 멤버를 포함하는 NDIS_TCP_LARGE_SEND_OFFLOAD_V1 내의 구조체입니다.
IPv4.Encapsulation
IPv4에 대한 캡슐화 설정입니다. 이 멤버에 대한 자세한 내용은 다음 설명 섹션을 참조하세요.
IPv4.MaxOffLoadSize
전송이 단일 패킷의 미니포트 드라이버에 전달할 수 있는 최대 사용자 데이터 바이트입니다. 전송은 MaxOffLoadSize 가 지정하는 것보다 더 많은 사용자 데이터 바이트를 포함하는 미니포트 드라이버에 패킷을 전달하지 않습니다. 이러한 패킷을 전송해야 하는 경우 전송 자체는 패킷을 더 작은 패킷으로 분할합니다.
IPv4.MinSegmentCount
전송이 분할을 위해 하드웨어로 오프로드하기 전에 큰 TCP 패킷을 나눌 수 있어야 하는 최소 세그먼트 수입니다. 미니포트 드라이버가 패킷에서 MinSegmentCount 가 지정한 만큼의 세그먼트를 만들 수 없다면 전송은 분할을 위해 미니포트 드라이버에 큰 패킷을 오프로드하지 않습니다. 큰 TCP 패킷이 최소 세그먼트 요구 사항을 충족하지 않는 경우 TCP/IP 전송 자체는 패킷을 더 작은 패킷으로 분할합니다.
IPv4.TcpOptions
미니포트 드라이버가 TCP 헤더에 TCP 옵션이 포함된 큰 TCP 패킷을 분할하거나 이 기능이 사용 또는 비활성화되었음을 나타내기 위해 미니포트 드라이버가 설정하는 ULONG 값입니다. TCP/IP 전송은 이 기능을 사용하거나 사용하지 않도록 설정하도록 이 값을 설정합니다.
IPv4.IpOptions
미니포트 어댑터가 IP 헤더에 IP 옵션이 포함된 대형 TCP 패킷을 분할할 수 있음을 나타내거나 이 기능이 활성화되거나 비활성화되었음을 나타내기 위해 미니포트 드라이버가 설정하는 ULONG 값입니다.
설명
NDIS_TCP_LARGE_SEND_OFFLOAD_V1 구조체는 NDIS_OFFLOAD 구조체의 LsoV1 멤버에 사용됩니다. NDIS_TCP_LARGE_SEND_OFFLOAD_V1 미니포트 어댑터가 큰 TCP 패킷을 더 작은 패킷으로 분할하기 위해 제공하는 현재 또는 지원되는 서비스를 지정합니다. 또한 NDIS는 LSO의 향상된 버전인 LSOV2(대규모 송신 오프로드 버전 2)를 제공합니다. LSOV2에 대한 자세한 내용은 NDIS_TCP_LARGE_SEND_OFFLOAD_V2.
NDIS_OFFLOAD 에 사용됩니다. NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES 구조체, NDIS_BIND_PARAMETERS 구조체, NDIS_FILTER_ATTACH_PARAMETERS 구조, OID_TCP_OFFLOAD_CURRENT_CONFIG OID 및 상태 표시를 NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG.
OID_TCP_OFFLOAD_CURRENT_CONFIG 경우 NDIS_OFFLOAD 구조는 미니포트 어댑터가 지원하는 작업 오프로드 기능을 지정합니다. 현재 오프로드 기능이 변경되면 미니포트 드라이버는 의 새 기능을 보고합니다. 상태 표시를 NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG.
NDIS_TCP_LARGE_SEND_OFFLOAD_V1캡슐화 멤버는 미니포트 어댑터에 대한 LSOV1 캡슐화 기능 또는 설정을 정의합니다.
에 대한 응답쿼리 요청을 OID_TCP_OFFLOAD_CURRENT_CONFIG NDIS는 캡슐화 멤버에서 지원되는 캡슐화 설정을 나타내는 캡슐화 플래그의 비트 OR을 제공합니다. 미니포트 드라이버는 이더넷 캡슐화(NDIS_ENCAPSULATION_IEEE_802_3)를 제공해야 합니다. 다른 유형의 캡슐화는 선택 사항입니다.
의 경우 상태 표시를 NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG 미니포트 드라이버는 캡슐화 멤버에서 현재 기능을 나타내는 캡슐화 플래그의 비트 OR을 제공합니다.
캡슐화 멤버에 대해 다음 플래그가 정의됩니다.
NDIS_ENCAPSULATION_NONE 또는 NDIS_ENCAPSULATION_NOT_SUPPORTED
캡슐화 오프로드가 지원되지 않음을 지정합니다.
NDIS_ENCAPSULATION_NULL
NULL 캡슐화를 지정합니다.
NDIS_ENCAPSULATION_IEEE_802_3
IEEE 802.3 캡슐화를 지정합니다.
NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
IEEE 802.3p 및 IEEE 802.3q 캡슐화를 지정합니다.
NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
각 NET_BUFFER_LIST 구조체의 NetBufferListInfo 멤버에 IEEE 802.3p 및 IEEE 802.3q 캡슐화 설정이 지정되도록 지정합니다.
NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
RFC 1483에 설명된 대로 라우트된 프로토콜에 대한 LLC(논리 링크 제어) 캡슐화를 지정합니다. 이 플래그는 이더넷 LLC/SNAP 캡슐화를 나타내는 데도 사용됩니다.
NDIS_TCP_LARGE_SEND_OFFLOAD_V1 TcpOptions 및 IpOptions 멤버의 값은 에서 미니포트 어댑터 지원을 지정합니다. OID_TCP_OFFLOAD_CURRENT_CONFIG OID 또는 상태 표시를 NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG. 이러한 멤버는 다음 값 중 하나를 가질 수 있습니다.
NDIS_OFFLOAD_NOT_SUPPORTED
미니포트 어댑터는 멤버가 지정하는 기능을 지원하지 않습니다.
NDIS_OFFLOAD_SUPPORTED
미니포트 어댑터는 멤버가 지정하는 기능을 지원합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | NDIS 6.0 이상에서 지원됩니다. |
머리글 | ntddndis.h(Ndis.h 포함) |