OID_OFFLOAD_ENCAPSULATION
Sebagai permintaan kueri, driver yang terlalu berlebihan menggunakan OID_OFFLOAD_ENCAPSULATION OID untuk mendapatkan pengaturan enkapulasi offload tugas saat ini dari adaptor miniport yang mendasarinya. NDIS menangani kueri OID ini untuk driver miniport.
Sebagai permintaan yang ditetapkan, driver yang terlalu berlebihan menggunakan OID_OFFLOAD_ENCAPSULATION OID untuk mengatur pengaturan enkapulasi offload tugas adaptor miniport yang mendasarinya. Driver miniport yang mendukung offload tugas harus menangani permintaan set OID ini.
Keterangan
Anggota InformationBuffer dari struktur NDIS_OID_REQUEST berisi struktur NDIS_OFFLOAD_ENCAPSULATION .
Driver miniport
Jika driver miniport tidak mendukung offload dan OID ini, driver harus kembali NDIS_STATUS_NOT_SUPPORTED.
Driver Miniport harus menggunakan konten struktur NDIS_OFFLOAD_ENCAPSULATION untuk memperbarui kemampuan offload TCP yang saat ini dilaporkan. Setelah pembaruan, driver miniport harus melaporkan kemampuan offload tugas saat ini dengan indikasi status NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG . Indikasi status ini memastikan bahwa semua driver protokol yang terlalu berlebihan diperbarui dengan informasi kemampuan baru.
OID ini digunakan untuk mengaktifkan semua offload yang dikonfigurasi atau diaktifkan, atau menonaktifkan semua offload (dengan kata lain, perangkat keras mulai melakukan offload). Ini tidak memberikan kontrol yang baik atas offload individu. Sebagai gantinya, OID_TCP_OFFLOAD_PARAMETERS digunakan untuk mengonfigurasi offload individual dan juga dapat mengaktifkannya. Umumnya, sebagian besar offload tugas TCP/IP dapat dikonfigurasi dan diaktifkan dengan OID_TCP_OFFLOAD_PARAMETERS.
Namun, struktur NDIS_OFFLOAD_ENCAPSULATION OID ini juga mencakup dua jenis enkapulasi lainnya yang tidak tercakup dalam struktur NDIS_OFFLOAD_PARAMETERS OID_TCP_OFFLOAD_PARAMETERS: NDIS_ENCAPSULATION_IEEE_802_3 dan NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED. Driver miniport perlu menangani perbedaan ini dalam jenis enkapulasi yang dicakup oleh OID yang berbeda.
Jika OID ini dikeluarkan oleh driver protokol untuk menonaktifkan semua offload, anggota yang diaktifkan dari anggota NDIS_OFFLOAD_ENCAPSULATION akan diatur ke NDIS_OFFLOAD_SET_OFF.
Pengaturan enkapulasi (driver protokol)
Driver protokol mengatur OID_OFFLOAD_ENCAPSULATION setelah menentukan persyaratan enkapulasi sistem. Driver protokol dapat menentukan kemampuan adaptor miniport yang mendasar dari struktur NDIS_BIND_PARAMETERS atau dengan mengkueri OID_TCP_OFFLOAD_CURRENT_CONFIG. Driver protokol harus mengatur jenis enkapulasi yang didukung adaptor miniport pada setidaknya satu layanan offload.
Jika driver miniport mendukung jenis offload yang mendukung jenis enkapulasi yang diminta, driver harus mengembalikan NDIS_STATUS_SUCCESS sebagai respons terhadap satu set OID_OFFLOAD_ENCAPSULATION. Jika tidak, driver miniport harus mengembalikan NDIS_STATUS_INVALID_PARAMETER.
Untuk operasi pengiriman, driver protokol dapat mengeluarkan permintaan pengiriman hanya dengan menggunakan jenis offload yang didukung adaptor miniport dengan jenis enkapulasi yang diperlukan. Oleh karena itu, jika permintaan set OID OID_OFFLOAD_ENCAPSULATION gagal, driver protokol tidak boleh menggunakan pengaturan offload apa pun dalam mengirim permintaan yang diarahkan ke adaptor miniport tersebut.
Untuk operasi penerimaan, driver miniport tidak boleh memulai checksum atau layanan offload keamanan protokol Internet (IPsec) hingga setelah menerima permintaan OID_OFFLOAD_ENCAPSULATION yang ditetapkan OID.
Mendapatkan pengaturan enkapulasi saat ini (driver protokol)
Driver protokol dapat mengeluarkan kueri OID_OFFLOAD_ENCAPSULATION hanya setelah mengatur OID_OFFLOAD_ENCAPSULATION OID.
NDIS merespons dengan struktur NDIS_OFFLOAD_ENCAPSULATION yang berisi pengaturan enkapulasi saat ini.
Driver protokol harus siap untuk menangani kode kegagalan NDIS_STATUS_Xxx apa pun. Jika kegagalan terjadi, driver protokol tidak boleh mencoba melakukan operasi offload apa pun yang diarahkan ke adaptor miniport yang terpengaruh.
Lihat juga
NDIS_BIND_PARAMETERS
NDIS_OFFLOAD_ENCAPSULATION
NDIS_OID_REQUEST
NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG
OID_TCP_OFFLOAD_CURRENT_CONFIG
Persyaratan
Versi: Windows Vista dan Header yang lebih baru: Ntddndis.h (sertakan Ndis.h)