Menerima Permintaan OID tentang Perubahan Konfigurasi Sakelar yang Dapat Diperluas Hyper-V
Antarmuka sakelar yang dapat diperluas memberi tahu ekstensi yang mendasar tentang perubahan pada konfigurasi komponen sakelar yang dapat diperluas dan parameter kebijakan dengan mengeluarkan permintaan set pengidentifikasi objek sakelar (OID) yang dapat diperluas. Permintaan ini dikeluarkan oleh tepi protokol sakelar yang dapat diperluas untuk memberi tahu ekstensi yang mendasar tentang perubahan pada konfigurasi komponen sakelar yang dapat diperluas dan parameter kebijakan. Permintaan OID ini bergerak melalui tumpukan driver sakelar yang dapat diperluas ke tepi miniport yang mendasar dari sakelar yang dapat diperluas.
Gambar berikut menunjukkan jalur kontrol sakelar yang dapat diperluas untuk permintaan OID untuk NDIS 6.40 (Windows Server 2012 R2) dan yang lebih baru.
Gambar berikut menunjukkan jalur kontrol sakelar yang dapat diperluas untuk permintaan OID untuk NDIS 6.30 (Windows Server 2012).
Catatan Dalam antarmuka sakelar yang dapat diperluas, driver filter NDIS dikenal sebagai ekstensi sakelar yang dapat diperluas dan tumpukan driver dikenal sebagai tumpukan driver sakelar yang dapat diperluas.
Tepi protokol sakelar yang dapat diperluas mengeluarkan permintaan set OID untuk jenis pemberitahuan berikut:
Perubahan pada konfigurasi port pada sakelar yang dapat diperluas.
Misalnya, driver protokol mengeluarkan OID_SWITCH_PORT_CREATE untuk memberi tahu ekstensi yang mendasar tentang pembuatan port pada sakelar yang dapat diperluas. Demikian pula, driver protokol mengeluarkan OID_SWITCH_PORT_DELETE untuk memberi tahu ekstensi tentang penghapusan port.
Untuk informasi selengkapnya tentang jenis pemberitahuan OID ini, lihat Hyper-V Extensible Switch Ports.
Perubahan pada koneksi adaptor jaringan ke port pada sakelar yang dapat diperluas.
Misalnya, driver protokol mengeluarkan OID_SWITCH_NIC_CONNECT untuk memberi tahu ekstensi yang mendasar tentang koneksi adaptor jaringan ke port pada sakelar yang dapat diperluas. Demikian pula, driver protokol mengeluarkan OID_SWITCH_NIC_DISCONNECT untuk memberi tahu ekstensi bahwa adaptor jaringan telah terputus dari port.
Untuk informasi selengkapnya tentang jenis pemberitahuan OID ini, lihat Hyper-V Extensible Switch Network Adapters.
Perubahan pada port sakelar yang dapat diperluas atau kebijakan pengalihan.
Misalnya, driver protokol mengeluarkan OID_SWITCH_PROPERTY_ADD untuk memberi tahu ekstensi yang mendasar tentang penambahan properti sakelar yang dapat diperluas. Demikian pula, driver protokol mengeluarkan OID_SWITCH_PORT_PROPERTY_DELETE untuk memberi tahu ekstensi tentang penghapusan properti port.
Untuk informasi selengkapnya tentang jenis pemberitahuan OID ini, lihat Mengelola Kebijakan Sakelar yang Dapat Diperluas Hyper-V.
Catatan Ekstensi tidak diberi tahu tentang perubahan pada port default atau kebijakan pengalihan yang dikelola oleh tepi miniport yang mendasar dari sakelar yang dapat diperluas.
Simpan atau pulihkan data port run-time.
Misalnya, driver protokol mengeluarkan OID_SWITCH_NIC_SAVE untuk memberi tahu ekstensi yang mendasarinya untuk menyimpan data run-time untuk port tertentu pada sakelar yang dapat diperluas. OID ini dikeluarkan ketika status Hyper-V sedang disimpan atau dimigrasikan ke host lain. Demikian pula, driver protokol mengeluarkan OID_SWITCH_NIC_RESTORE untuk memberi tahu ekstensi bahwa data port run-time sedang dipulihkan pada sakelar yang dapat diperluas.
Untuk informasi selengkapnya tentang jenis pemberitahuan OID ini, lihat Mengelola Hyper-V Extensible Switch Run-Time Data.
Driver miniport ekstensi sakelar yang dapat diperluas bertanggung jawab untuk menyelesaikan permintaan OID ini. Namun, dengan beberapa permintaan OID switch yang dapat diperluas, ekstensi yang mendasar dapat gagal dalam permintaan OID untuk mem-veto pemberitahuan. Misalnya, ketika driver protokol sakelar yang dapat diperluas memberi tahu driver filter tentang port baru yang akan dibuat pada sakelar yang dapat diperluas, ia mengeluarkan permintaan set OID_SWITCH_PORT_CREATE OID. Ekstensi pemfilteran atau penerusan yang mendasar dapat mem-veto pembuatan port dengan menyelesaikan permintaan OID dengan STATUS_DATA_NOT_ACCEPTED.
Ekstensi sakelar yang dapat diperluas harus mengikuti panduan ini ketika fungsi FilterOidRequest dipanggil untuk permintaan OID sakelar yang dapat diperluas:
Ekstensi tidak boleh mengubah data apa pun yang ditujukan oleh parameter OidRequest .
Untuk beberapa permintaan OID sakelar yang dapat diperluas, ekstensi dapat menyelesaikan permintaan OID dengan STATUS_DATA_NOT_ACCEPTED. Ini melakukan veto operasi pada komponen sakelar yang dapat diperluas yang permintaan OID-nya dikeluarkan.
Misalnya, ekstensi dapat menyelesaikan permintaan OID_SWITCH_NIC_CREATE dengan STATUS_DATA_NOT_ACCEPTED. Driver mungkin perlu melakukan ini jika tidak dapat memenuhi kebijakan yang dikonfigurasi pada port yang ditentukan tempat koneksi jaringan dibuat.
Ekstensi dapat menyelesaikan permintaan dengan cara ini untuk OID berikut:
Jika ekstensi tidak menyelesaikan permintaan OID, ekstensi harus memanggil NdisFOidRequest untuk meneruskan permintaan ke tumpukan driver sakelar yang dapat diperluas.
Catatan Sebelum driver memanggil NdisFOidRequest, driver harus memanggil NdisAllocateCloneOidRequest untuk mengalokasikan struktur NDIS_OID_REQUEST dan mentransfer informasi permintaan ke struktur baru.
Ekstensi harus memantau hasil penyelesaian permintaan OID ketika fungsi FilterOidRequestComplete-nya dipanggil. Ini memungkinkan ekstensi untuk menentukan apakah operasi pada komponen sakelar yang dapat diperluas berhasil diselesaikan atau diverifikasi oleh ekstensi yang mendasar.
Untuk informasi selengkapnya tentang cara memfilter dan meneruskan permintaan OID, lihat Memfilter Permintaan OID di Driver Filter NDIS.
NDIS dan protokol yang terlalu mendasar dan driver filter dapat mengeluarkan permintaan OID untuk teknologi offload perangkat keras ke adaptor jaringan fisik yang mendasar. Ini termasuk permintaan OID untuk teknologi offload, seperti antrean komputer virtual (VMQ), keamanan Protokol Internet (IPsec), dan virtualisasi I/O root tunggal (SR-IOV).
Ketika permintaan OID ini tiba di antarmuka sakelar yang dapat diperluas, permintaan OID di dalam NDIS_SWITCH_NIC_OID_REQUEST. Kemudian, tepi protokol sakelar yang dapat diperluas mengeluarkan permintaan OID dari OID_SWITCH_NIC_REQUEST yang berisi struktur ini.
Ekstensi penerusan sakelar yang dapat diperluas dapat memberikan dukungan untuk teknologi offload perangkat keras NDIS pada satu atau beberapa adaptor fisik yang terikat ke adaptor jaringan eksternal. Dalam konfigurasi ini, adaptor jaringan eksternal sakelar yang dapat diperluas terikat ke tepi miniport virtual dari driver menengah multiplexer (MUX) NDIS. Driver perantara MUX terikat dengan tim yang terdiri dari satu atau beberapa jaringan fisik pada host. Konfigurasi ini dikenal sebagai tim switch yang dapat diperluas. Untuk informasi selengkapnya tentang tim sakelar yang dapat diperluas, lihat Jenis Konfigurasi Adaptor Jaringan Fisik.
Dalam konfigurasi ini, ekstensi sakelar yang dapat diperluas diekspos ke setiap adaptor jaringan dalam tim. Ini memungkinkan ekstensi penerusan dalam tumpukan driver sakelar yang dapat diperluas untuk mengelola konfigurasi dan penggunaan adaptor jaringan individual dalam tim. Misalnya, ekstensi dapat memberikan dukungan untuk solusi load balancing failover (LBFO) melalui tim dengan meneruskan paket keluar ke adaptor individual. Ekstensi semacam itu dikenal sebagai penyedia tim. Untuk informasi selengkapnya tentang penyedia tim, lihat Ekstensi Penyedia Teaming.
Dengan menangani permintaan OID OID_SWITCH_NIC_REQUEST, penyedia tim dapat berpartisipasi dalam konfigurasi tim adaptor untuk offload perangkat keras. Misalnya, ekstensi dapat menghasilkan permintaan OID sendiri dari OID_SWITCH_NIC_REQUEST untuk mengonfigurasi adaptor fisik dengan parameter untuk offload perangkat keras.
Untuk informasi selengkapnya tentang cara menangani permintaan OID OID_SWITCH_NIC_REQUEST , lihat Meneruskan Permintaan OID ke Adaptor Jaringan Fisik.
Catatan Driver filter ekstensi dapat menghasilkan permintaan OID OID_SWITCH_NIC_REQUEST untuk mengeluarkan OID privat ke adaptor fisik apa pun yang terikat ke adaptor jaringan eksternal sakelar yang dapat diperluas.
Catatan Permintaan hidupkan ulang tumpukan menggunakan NdisFRestartFilter tidak akan selesai saat permintaan OID sakelar yang dapat diperluas tertunda. Untuk alasan ini, ekstensi yang menunggu mulai ulang tumpukan harus menyelesaikan permintaan OID yang sedang berlangsung.
Untuk informasi selengkapnya tentang jalur kontrol untuk permintaan OID sakelar yang dapat diperluas, lihat Jalur Kontrol Sakelar yang Dapat Diperluas Hyper-V untuk Permintaan OID.