Jalur Transmisi VMQ
Untuk permintaan transmisi, driver yang terlalu berlebihan menggunakan makro NET_BUFFER_LIST_RECEIVE_QUEUE_ID untuk mengatur pengidentifikasi antrean antrean antrean keluar dalam data keluar dengan informasi OOB NetBufferListFilteringInfo . Informasi NetBufferListFilteringInfo ditentukan dalam struktur NDIS_NET_BUFFER_LIST_FILTERING_INFO .
Driver NDIS dapat menggunakan makro NET_BUFFER_LIST_RECEIVE_QUEUE_ID untuk mengatur atau mendapatkan pengidentifikasi antrean struktur NET_BUFFER_LIST . Jika grup antrean berisi lebih dari satu antrean VM, pengidentifikasi antrean paket transmisi mungkin diatur ke pengidentifikasi antrean salah satu antrean VM dalam grup.
Driver protokol mengatur bit NDIS_SEND_FLAGS_SINGLE_QUEUE pada parameter SendFlags dari fungsi NdisSendNetBufferLists untuk menunjukkan bahwa semua struktur NET_BUFFER_LIST transmisi dalam panggilan adalah untuk antrean transmisi yang sama.
Driver Miniport mengatur bit NDIS_SEND_COMPLETE_FLAGS_SINGLE_QUEUE pada parameter SendCompleteFlags dari fungsi NdisMSendNetBufferListsComplete untuk menunjukkan bahwa semua NET_BUFFER_LISTs dalam panggilan dikirim pada antrean transmisi yang sama.
Untuk informasi selengkapnya tentang pengujian filter, lihat Operasi Filter VMQ.
Catatan Ketika VMQ dihapus (misalnya, selama migrasi langsung VM), dimungkinkan bagi driver miniport untuk menerima NBL yang berisi nilai QueueId yang tidak valid. Jika ini terjadi, miniport harus mengabaikan ID antrean yang tidak valid dan menggunakan 0 (antrean default) sebagai gantinya. QueueId ditemukan di bagian NetBufferListFilteringInfo dari data OOB NBL, dan diambil dengan menggunakan makro NET_BUFFER_LIST_RECEIVE_QUEUE_ID.