Bagikan melalui


Alur Paket melalui Jalur Data Sakelar yang Dapat Diperluas

Topik ini menjelaskan bagaimana paket berpindah ke atau dari port sakelar yang dapat diperluas melalui jalur data sakelar hyper-V yang dapat diperluas.

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. Untuk informasi selengkapnya tentang ekstensi, lihat Ekstensi Sakelar Yang Dapat Diperluas Hyper-V.

Catatan Halaman ini mengasumsikan bahwa Anda terbiasa dengan informasi dalam Gambaran Umum Hyper-V Extensible Switch dan Hybrid Forwarding.

Semua lalu lintas paket yang tiba di sakelar yang dapat diperluas dari port-nya mengikuti jalur yang sama melalui tumpukan driver switch yang dapat diperluas. Misalnya, lalu lintas paket yang diterima dari koneksi adaptor jaringan eksternal atau dikirim dari koneksi adaptor jaringan komputer virtual (VM) bergerak melalui jalur data yang sama.

Gambar berikut menunjukkan jalur data sakelar yang dapat diperluas untuk NDIS 6.40 (Windows Server 2012 R2) dan yang lebih baru.

Diagram memperlihatkan arsitektur sakelar yang dapat diperluas Hyper-V untuk NDIS 6.40 dan versi yang lebih baru.

Gambar berikut menunjukkan jalur data sakelar yang dapat diperluas untuk NDIS 6.30 (Windows Server 2012).

Diagram memperlihatkan arsitektur sakelar yang dapat diperluas Hyper-V untuk NDIS 6.30.

Untuk informasi selengkapnya tentang komponen untuk antarmuka sakelar yang dapat diperluas, lihat Arsitektur Sakelar Yang Dapat Diperluas Hyper-V.

Jalur data sakelar yang dapat diperluas memiliki bagian-bagian berikut, tercantum dalam urutan paket mengalir melaluinya:

Tepi protokol yang terlalu berlebih

  1. Paket tiba pada sakelar yang dapat diperluas dari adaptor jaringan yang terhubung ke port sakelar. Paket-paket ini pertama kali dikeluarkan sebagai permintaan pengiriman dari tepi protokol sakelar yang dapat diperluas ke bawah jalur data ingress switch yang dapat diperluas.

    Tepi protokol sakelar yang dapat diperluas menyiapkan paket untuk jalur data masuk. Tepi protokol mengalokasikan area konteks untuk paket ini yang berisi konteks penerusan sakelar yang dapat diperluas out-of-band (OOB). Ini mengisi data OOB dengan informasi tentang port sumber dan koneksi adaptor jaringan tempat paket dikirimkan ke sakelar yang dapat diperluas.

    Untuk informasi selengkapnya tentang konteks penerusan, lihat Konteks Penerusan Sakelar Yang Dapat Diperluas Hyper-V.

  2. Di NDIS 6.40 (Windows Server 2012 R2) dan yang lebih baru, jika paket adalah paket NVGRE dari adaptor jaringan eksternal, sakelar yang dapat diperluas mengatur bendera NativeForwardingRequired dalam informasi out-of-band (OOB) paket. Untuk informasi selengkapnya, lihat Penerusan Hibrid.

  3. Jika paket tiba di port tempat lalu lintas memiliki subnet virtual, sakelar yang dapat diperluas mengatur anggota VirtualSubnetId dari struktur NDIS_NET_BUFFER_LIST_VIRTUAL_SUBNET_INFO untuk paket.

    Catatan Subnet virtual bisa menjadi subnet HNV atau subnet virtual pihak ketiga.

Jalur data Ingress

  1. Ekstensi mendapatkan paket dari jalur data masuk saat fungsi FilterSendNetBufferLists dipanggil. Ekstensi meneruskan paket ke ekstensi yang mendasar pada jalur data masuk dengan memanggil NdisFSendNetBufferLists. Ekstensi pemfilteran dan penerusan juga dapat menghilangkan paket dari jalur data masuk dengan memanggil NdisFSendNetBufferListsComplete.

  2. Saat mengambil ekstensi mendapatkan paket pada jalur data masuk, mereka dapat memeriksa data paket. Namun, menangkap ekstensi tidak boleh menyelesaikan permintaan pengiriman untuk paket pada jalur data masuk. Ekstensi ini harus selalu meneruskan paket ke ekstensi yang mendasar dalam tumpukan driver sakelar yang dapat diperluas.

    Ekstensi penangkapan juga dapat berasal dari paket pada jalur data masuk. Misalnya, ekstensi dapat berasal dari paket untuk melaporkan kondisi lalu lintas ke aplikasi pemantauan jarak jauh.

    Untuk informasi selengkapnya tentang paket asal dengan ekstensi, lihat Lalu Lintas Paket Asal.

  3. Saat memfilter ekstensi mendapatkan paket pada jalur data ingress, ekstensi tersebut dapat melakukan hal berikut:

    • Hilangkan paket berdasarkan kebijakan sakelar atau port yang dapat diperluas khusus.

      Untuk informasi selengkapnya tentang kebijakan ini, lihat Kebijakan Sakelar yang Dapat Diperluas Hyper-V.

      Catatan Paket yang diperoleh pada jalur data ingress tidak memiliki port tujuan yang ditentukan dalam data OOB paket. Akibatnya, ekstensi pemfilteran hanya boleh memberlakukan kebijakan kustom berdasarkan data paket atau port sumber paket atau koneksi adaptor jaringan.

  • Mengkloning atau memodifikasi paket yang diperoleh dari jalur data masuk.

  • Masukkan paket baru ke jalur data ingress.

  1. Di NDIS 6.40 dan yang lebih baru, setelah menangkap dan memfilter ekstensi tetapi sebelum ekstensi penerusan pada jalur data ingress, sakelar yang dapat diperluas melakukan hal berikut:

    • Jika paket adalah paket NVGRE dari adaptor jaringan eksternal, alamat di header paket adalah alamat ruang alamat penyedia (PA). Sakelar yang dapat diperluas menunjukkan ini dengan mengatur bendera NativeForwardingRequired dalam informasi out-of-band (OOB) paket. Untuk informasi selengkapnya, lihat Penerusan Hibrid.

    • Sakelar yang dapat diperluas menerapkan kebijakan masuk bawaan ke paket. Kebijakan ini dapat mencakup daftar kontrol akses masuk (ACL), DHCP Guard, dan Router Guard.

  2. Jika ekstensi penerusan tidak diaktifkan di tumpukan driver sakelar yang dapat diperluas, array port tujuan untuk paket ditentukan oleh sakelar yang dapat diperluas.

  3. Jika ekstensi penerusan diaktifkan, ekstensi harus melakukan hal berikut ketika mendapatkan paket pada jalur data masuk:

    • Di NDIS 6.40 dan yang lebih baru, jika paket adalah paket NVGRE (lihat Penerusan Hibrid), ekstensi penerusan tidak dapat mengubah array port tujuan dalam data OOB paket di jalur data masuk. Namun, itu dapat menjatuhkan paket.

    • Jika paket bukan paket NVGRE, ekstensi penerusan harus menambahkan port tujuan ke array port tujuan dalam data OOB paket.

    • Ekstensi penerusan harus menghilangkan paket berdasarkan kebijakan sakelar atau port standar atau yang dapat diperluas kustom. Kebijakan sakelar atau port standar mencakup properti keamanan dan LAN virtual (VLAN). Jika ekstensi penerusan tidak diaktifkan di tumpukan driver switch yang dapat diperluas, kebijakan ini diberlakukan oleh sakelar yang dapat diperluas.

      Catatan Ketika ekstensi penerusan memfilter paket di jalur data masuk, ekstensi tersebut menerapkan aturan pemfilteran berdasarkan port sumber serta port tujuan yang ditetapkan ekstensi ke paket.

Selain itu, ekstensi penerusan dapat melakukan hal berikut:

  • Mengkloning atau memodifikasi paket yang diperoleh dari jalur data masuk.

  • Masukkan paket baru ke jalur data ingress.

Tepi miniport yang mendasar

  1. Ketika paket tiba di tepi miniport yang mendasar dari sakelar yang dapat diperluas, sakelar yang dapat diperluas menerapkan kebijakan bawaannya ke paket. Kebijakan ini mencakup daftar kontrol akses (ACL) dan properti kualitas layanan (QoS). Jika paket tidak dihilangkan karena kebijakan ini, sakelar yang dapat diperluas berasal dari indikasi terima untuk paket dan meneruskan paket ke jalur data keluar.

    Catatan Jika pencerminan port diaktifkan pada port tempat paket akan dikirimkan, tepi miniport menambahkan port tujuan ke data OOB paket untuk port cermin. Tepi miniport melakukan ini terlepas dari apakah ekstensi penerusan diinstal dan diaktifkan dalam tumpukan driver sakelar yang dapat diperluas. Tepi miniport hanya menambahkan port cermin jika belum ditentukan dalam array port tujuan untuk paket.

  2. Jika ekstensi penerusan tidak diaktifkan, sakelar yang dapat diperluas menentukan port tujuan untuk paket dan menambahkan port tujuan ini ke data OOB paket sebelum meneruskan paket ke jalur data keluar.

  3. Dalam NDIS 6.40 dan yang lebih baru, komponen HNV melakukan enkapulasi atau dekapsulasi NVGRE yang diperlukan setelah ingress dan sebelum keluar, sehingga ekstensi penerusan dapat melihat paket dalam bentuk enkapsulasi dan didekapsulasi. Misalnya, jika paket tiba dari adaptor jaringan eksternal dan ditujukan untuk VM internal, ekstensi penerusan mendapatkan paket yang dienkapsulasi pada masuk dan paket yang didekapsulasi saat keluar.

    Catatan Dalam paket yang dienkapsulasi, alamat di header paket adalah alamat ruang alamat penyedia (PA). Dalam paket yang didekapsulasi, ini adalah alamat ruang alamat pelanggan (CA).

    1. Jika paket adalah paket NVGRE yang tiba dari adaptor jaringan eksternal, komponen Hyper-V Network Virtualization (HNV) dari sakelar yang dapat diperluas melakukan dekapsulasi NVGRE pada paket. Komponen HNV menentukan tujuan untuk paket sesuai dengan kebijakan HNV, dan kemudian sakelar yang dapat diperluas meneruskan paket ke jalur data keluar.

    2. Jika paket tiba dari VM internal, komponen HNV akan melakukan enkaplasi NVGRE pada paket jika kebijakan HNV ditetapkan untuk paket. Komponen HNV menentukan tujuan untuk paket sesuai dengan kebijakan HNV, dan kemudian sakelar yang dapat diperluas meneruskan paket ke jalur data keluar.

    3. Jika tidak, ekstensi penerusan meneruskan paket ke jalur data keluar.

  4. Di NDIS 6.30, jika ekstensi penerusan diaktifkan, ekstensi tersebut harus meneruskan paket ke jalur data keluar.

Jalur data keluar

  1. Ekstensi mendapatkan paket dari jalur data keluar saat fungsi FilterReceiveNetBufferLists dipanggil. Ekstensi meneruskan paket ke ekstensi yang terlalu berlebihan pada jalur data keluar dengan memanggil NdisFIndicateReceiveNetBufferLists. Ekstensi pemfilteran dan penerusan juga dapat menghilangkan paket dari jalur data keluar dengan memanggil NdisFReturnNetBufferLists.

  2. Ketika ekstensi penerusan mendapatkan paket pada jalur data keluar, ekstensi tersebut dapat memeriksa informasi port tujuan paket dalam data OOB.

    Catatan Ekstensi mendapatkan informasi ini dari data OOB dengan memanggil GetNetBufferListDestinations.

Berdasarkan kebijakan sakelar atau port standar atau kustom, ekstensi dapat mengecualikan pengiriman paket ke satu atau beberapa port tujuan yang terkandung dalam data OOB.

  1. Di NDIS 6.40 (Windows Server 2012 R2) dan yang lebih baru, setelah ekstensi penerusan tetapi sebelum pemfilteran dan penangkapan ekstensi pada jalur data keluar, sakelar yang dapat diperluas menerapkan kebijakan keluar bawaan ke paket. Kebijakan ini dapat mencakup mode batang, mode pemantauan, ACL keluar, dan properti kualitas layanan (QoS).

  2. Saat memfilter ekstensi mendapatkan paket pada jalur data keluar, ekstensi tersebut dapat memeriksa informasi port tujuan paket dalam data OOB. Berdasarkan kebijakan sakelar atau port kustom, ekstensi dapat mengecualikan pengiriman paket ke satu atau beberapa port tujuan yang terkandung dalam data OOB.

    Jika ekstensi pemfilteran perlu memodifikasi data dalam paket, ekstensi harus terlebih dahulu mengkloning paket tanpa mempertahankan tujuan port. Kemudian, ekstensi harus menyuntikkan paket yang dimodifikasi ke jalur data masuk. Ini memungkinkan ekstensi yang mendasar untuk memberlakukan kebijakan pada paket yang dimodifikasi dan ekstensi penerusan dapat menambahkan tujuan port.

    Untuk informasi selengkapnya, lihat Kloning atau Lalu Lintas Paket.

  3. Saat mengambil ekstensi mendapatkan paket pada jalur data keluar, mereka dapat memeriksa data paket. Namun, jika ekstensi penangkapan perlu berasal dari paket untuk melaporkan kondisi lalu lintas ke aplikasi pemantauan jarak jauh, ekstensi harus berasal dari lalu lintas paket ini dengan memanggil NdisFSendNetBufferLists untuk memulai operasi pengiriman pada jalur data masuk.

  4. Ketika paket tiba di tepi protokol yang terlalu besar dari sakelar yang dapat diperluas, antarmuka sakelar yang dapat diperluas meneruskan paket ke semua port tujuan yang ditentukan.

  5. Setelah paket diteruskan, antarmuka menyelesaikan paket melalui jalur yang sama secara terbalik. Pertama, antarmuka memanggil fungsi FilterReturnNetBufferLists ekstensi untuk menyelesaikan paket yang diteruskan pada jalur data keluar. Kemudian, antarmuka memanggil fungsi FilterSendNetBufferListsComplete ekstensi untuk menyelesaikan paket yang diteruskan pada jalur data masuk.

    Ketika paket selesai pada jalur data egress dan ingress, ekstensi melakukan pembersihan paket yang diperlukan dan pasca-pemrosesan yang mungkin diperlukan.