Bagikan melalui


Mengelola Konteks Penerusan Sakelar yang Dapat Diperluas Hyper-V

Catatan Halaman ini mengasumsikan bahwa Anda terbiasa dengan informasi dan diagram dalam Gambaran Umum Hyper-V Extensible Switch dan Penerusan Hibrid.

Struktur NET_BUFFER_LIST untuk setiap paket yang melintasi jalur data sakelar Hyper-V yang dapat diperluas berisi data out-of-band (OOB). Data ini menentukan port sumber dari mana paket berasal, serta satu atau beberapa port tujuan untuk pengiriman paket. Data OOB ini dikenal sebagai konteks penerusan sakelar yang dapat diperluas.

Catatan Konteks penerusan sakelar yang dapat diperluas berbeda dari struktur NET_BUFFER_LIST_CONTEXT . Ini memungkinkan ekstensi untuk mengalokasikan struktur konteks mereka sendiri tanpa memengaruhi konteks penerusan.

Konteks penerusan sakelar yang dapat diperluas dialokasikan dan dikosongkan dengan cara berikut:

Semua ekstensi sakelar yang dapat diperluas dapat memanggil fungsi handler sakelar yang dapat diperluas berikut untuk mengakses data dalam konteks penerusan paket:

AllocateNetBufferListForwardingContext
Mengalokasikan konteks penerusan sakelar yang dapat diperluas dan menyiapkan struktur NET_BUFFER_LIST untuk operasi kirim atau terima dalam sakelar yang dapat diperluas.

CopyNetBufferListInfo
Menyalin konteks penerusan dari struktur NET_BUFFER_LIST paket sumber ke struktur NET_BUFFER_LIST paket tujuan. Data ini mencakup port sumber sakelar yang dapat diperluas dan informasi adaptor jaringan. Informasi port tujuan switch yang dapat diperluas juga dapat disalin ke paket tujuan.

FreeNetBufferListForwardingContext
Membebaskan sumber daya dalam konteks penerusan sakelar yang dapat diperluas dari struktur NET_BUFFER_LIST . Data ini digunakan untuk operasi kirim atau terima dalam sakelar yang dapat diperluas Hyper-V, dan sebelumnya dialokasikan dengan memanggil fungsi AllocateNetBufferListForwardingContext .

GetNetBufferListDestinations
Mengembalikan port tujuan dari konteks penerusan struktur NET_BUFFER_LIST paket.

Ekstensi penerusan bertanggung jawab untuk menambahkan port tujuan untuk paket, kecuali paket tersebut adalah paket NVGRE. (Untuk informasi selengkapnya, lihat Penerusan Hibrid.) Ekstensi memanggil fungsi pengatur sakelar yang dapat diperluas berikut untuk menambahkan atau memperbarui port tujuan dalam konteks penerusan paket:

AddNetBufferListDestination
Menambahkan satu tujuan ke area konteks penerusan sakelar yang dapat diperluas untuk paket yang ditentukan oleh struktur NET_BUFFER_LIST .

Catatan Panggilan ini menerapkan perubahan pada area konteks penerusan. Dalam hal ini, ekstensi penerusan tidak perlu memanggil UpdateNetBufferListDestinations.

GrowNetBufferListDestinations
Meningkatkan ukuran array port tujuan di area konteks penerusan struktur NET_BUFFER_LIST paket.

UpdateNetBufferListDestinations
Melakukan modifikasi yang dilakukan ekstensi pada satu atau beberapa port tujuan sakelar yang dapat diperluas dari paket. Fungsi ini memperbarui konteks penerusan struktur NET_BUFFER_LIST paket dengan perubahan ini.

Catatan Setelah ekstensi penerusan menerapkan perubahan untuk port tujuan ke konteks penerusan, port tujuan tidak dapat dihapus dan hanya anggota IsExcluded dari struktur NDIS_SWITCH_PORT_DESTINATION port tujuan yang dapat diubah. Untuk informasi selengkapnya, lihat Mengecualikan Pengiriman Paket ke Port Tujuan Switch yang Dapat Diperluas.

Konteks Penerusan Sakelar yang Dapat Diperluas Hyper-V

Jenis data konteks penerusan sakelar Hyper-V yang Dapat Diperluas