Fungsi Virtual SR-IOV (VFs)

PCI Express (PCIe) Virtual Function (VF) adalah fungsi PCIe ringan pada adaptor jaringan yang mendukung virtualisasi I/O root tunggal (SR-IOV).

VF dikaitkan dengan PCIe Physical Function (PF) pada adaptor jaringan, dan mewakili instance virtual adaptor jaringan. Setiap VF memiliki ruang Konfigurasi PCI sendiri. Setiap VF juga berbagi satu atau lebih sumber daya fisik pada adaptor jaringan, seperti port jaringan eksternal, dengan PF dan VC lainnya.

VF bukanlah perangkat PCIe lengkap. Namun, ini menyediakan mekanisme dasar untuk mentransfer data secara langsung antara partisi anak Hyper-V dan adaptor jaringan SR-IOV yang mendasarinya. Sumber daya perangkat lunak yang terkait untuk transfer data secara langsung tersedia untuk VF dan diisolasi dari penggunaan oleh VC lain atau PF. Namun, konfigurasi sebagian besar sumber daya ini dilakukan oleh driver miniport PF yang berjalan dalam sistem operasi manajemen partisi induk Hyper-V.

VF diekspos sebagai adaptor jaringan virtual (adaptor jaringan VF) dalam sistem operasi tamu yang berjalan di partisi anak Hyper-V. Setelah VF dikaitkan dengan port virtual (VPort) pada sakelar NIC adaptor jaringan SR-IOV, driver PCI virtual (VPCI) yang berjalan di VM mengekspos adaptor jaringan VF. Setelah terungkap, manajer PnP dalam sistem operasi tamu memuat driver miniport VF.

Catatan

Partisi anak Hyper-V juga dikenal sebagai mesin virtual (VM)."

Driver miniport VF adalah driver miniport NDIS yang diinstal di VM untuk mengelola VF. Setiap operasi yang dilakukan oleh driver miniport VF tidak boleh memengaruhi VF atau PF lain pada adaptor jaringan yang sama.

Driver miniport VF dapat berfungsi seperti driver perangkat PCI lainnya. Ini dapat membaca dan menulis ke ruang konfigurasi PCI VF. Namun, akses ke perangkat PCI virtual adalah operasi istimewa dan dikelola oleh driver miniport PF dengan cara berikut:

  • Saat driver miniport VF memanggil NdisMGetBusData untuk membaca data dari ruang konfigurasi PCI adaptor jaringan VF, tumpukan virtualisasi akan diberitahukan. Tumpukan ini berjalan dalam sistem operasi manajemen partisi induk Hyper-V. Ketika tumpukan diberitahu tentang permintaan baca, itu mengeluarkan permintaan metode pengenal objek (OID) dari OID_SRIOV_READ_VF_CONFIG_SPACE ke driver miniport PF. Data yang akan dibaca ditentukan dalam struktur NDIS_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS yang terkandung dalam permintaan OID.

    Driver membaca data yang diminta dari ruang konfigurasi VF PCI dan mengembalikan data dengan menyelesaikan permintaan OID. Data ini kemudian dikembalikan ke driver miniport VF ketika panggilan ke NdisMGetBusData selesai.

  • Ketika driver miniport VF memanggil NdisMSetBusData untuk menulis data ke ruang konfigurasi PCI adaptor jaringan VF, tumpukan virtualisasi diberitahu tentang permintaan tulis. Ini mengeluarkan permintaan metode OID OID_SRIOV_WRITE_VF_CONFIG_SPACE ke driver miniport PF. Data yang akan ditulis ditentukan dalam struktur NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS yang terkandung dalam permintaan OID.

    Driver menulis data ke ruang konfigurasi VF PCI dan mengembalikan status permintaan saat menyelesaikan permintaan OID. Status ini dikembalikan ke driver miniport VF setelah panggilan ke NdisMSetBusData selesai.

Driver miniport VF juga dapat berkomunikasi dengan driver miniport PF. Jalur komunikasi ini melalui antarmuka backchannel. Untuk informasi lebih lanjut, lihat SR-IOV PF/VF Backchannel Communication.

Nota Driver miniport VF harus menyadari bahwa itu berjalan dalam lingkungan virtual sehingga dapat berkomunikasi dengan driver miniport PF untuk operasi tertentu. Untuk informasi selengkapnya tentang cara pengemudi melakukan ini, lihat Mengin initializing vf Miniport Driver.