struktur NDIS_PD_QUEUE_PARAMETERS (ndis.h)

Struktur ini digunakan untuk menahan parameter untuk transmisi atau menerima antrean saat memanggil salah satu rutinitas antrean.

Sintaks

typedef struct _NDIS_PD_QUEUE_PARAMETERS {
  NDIS_OBJECT_HEADER     Header;
  ULONG                  Flags;
  NDIS_PD_QUEUE_TYPE     QueueType;
  ULONG                  QueueSize;
  ULONG                  ReceiveDataLength;
  GROUP_AFFINITY         Affinity;
  ULONG                  TrafficClassId;
  ULONG                  MaximumPartialBufferCount;
  NDIS_PD_COUNTER_HANDLE CounterHandle;
} NDIS_PD_QUEUE_PARAMETERS;

Anggota

Header

Struktur NDIS_OBJECT_HEADER untuk struktur NDIS_PD_CONFIG . Atur anggota struktur ini sebagai berikut:

  • Jenis = NDIS_OBJECT_TYPE_DEFAULT
  • Revisi = NDIS_PD_QUEUE_PARAMETERS_REVISION_1
  • Ukuran = NDIS_SIZEOF_PD_QUEUE_PARAMETERS_REVISION_1

Flags

Anggota ini dicadangkan dan harus diatur ke 0 oleh penyedia.

QueueType

Jenis antrean. Untuk informasi selengkapnya, lihat, NDIS_PD_QUEUE_TYPE.

QueueSize

Jumlah maksimum struktur PD_BUFFER yang dapat dipegang antrean ini dan selalu sama dengan sejumlah formulir (2^k)-1 (63, 127, 255, 511, 1023, dll.). Ini meminjamkan dirinya untuk aritmatika indeks melingkar yang efisien.

ReceiveDataLength

Panjang data PD_BUFFER minimum.

Affinity

Afinitas prosesor adalah petunjuk bagi penyedia untuk pengoptimalan performa. Platform ini terutama akan memproses antrean pada prosesor yang ditunjukkan oleh masker ini. Penyedia harus mengatur nilai ini ke inti prosesor yang berasal dari tabel tidak langsung yang dikonfigurasi dari OID_GEN_RECEIVE_SCALE_PARAMETERS

TrafficClassId

MaximumPartialBufferCount

Untuk antrean transmisi, ini adalah jumlah maksimum struktur PD_BUFFER parsial yang diizinkan klien untuk merantai bersama-sama untuk membentuk satu paket L2. Nilai ini harus sama dengan nilai MaximumTxPartialBufferCount dalam struktur NDIS_PD_CAPABILITIES .

Untuk menerima antrean, ini adalah jumlah maksimum struktur PD_BUFFER parsial yang diizinkan penyedia untuk merantai bersama untuk membentuk satu paket L2 besar dengan RSC. Nilai ini harus kurang dari atau sama dengan nilai MaximumRxPartialBufferCount dalam struktur NDIS_PD_CAPABILITIES .

Catatan Klien tidak pernah memposting struktur PD_BUFFER dengan bendera parsial ke antrean penerima. Klien selalu diharuskan untuk memposting struktur PD_BUFFER dengan setidaknya ruang ukuran MTU, mulai dari posisi mulai data. Penyedia melakukan penautan hanya dalam kasus RSC. Beberapa penyedia mungkin tidak dapat mendukung penautan RSC, penyedia ini menetapkan nilai 1 ke anggota MaximumRxPartialBufferCount dalam struktur NDIS_PD_CAPABILITIES .
 

CounterHandle

Ini adalah handel ke penghitung antrean pengiriman untuk mengirimkan antrean dan penghitung antrean penerima untuk menerima antrean. Selama pembuatan antrean, klien dapat secara opsional menyediakan handel penghitung. Dalam hal ini dan tergantung pada jenis antrean, penyedia harus memperbarui nilai penghitung saat aktivitas terjadi pada antrean. Klien bertanggung jawab untuk menutup handel penghitung hanya setelah antrean ditutup.

Untuk antrean yang tidak langsung dibuat oleh klien, seperti RSS menerima antrean yang diperoleh menggunakan rutinitas NdisPDOnRssReceiveQueues, penyedia harus selalu memiliki handel penghitung terkait dengan antrean. Artinya, untuk sekumpulan antrean penerima RSS tertentu, penyedia harus memiliki satu penghitung antrean penerima khusus untuk setiap antrean penerima.

Keterangan

Struktur ini harus diselaraskan pada batas 8-byte.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10
Server minimum yang didukung Server Windows 2016
Header ndis.h

Lihat juga

NDIS_PD_QUEUE_TYPE

NdisPDAllocateQueue