Struktur Data Jaringan

Data jaringan terdiri dari paket data yang dikirim atau diterima melalui jaringan. NDIS menyediakan struktur data untuk menjelaskan dan mengatur data tersebut. Struktur data jaringan utama untuk NDIS 6.0 dan yang lebih baru adalah:

Gambar berikut menggambarkan hubungan antara struktur ini.

Diagram yang mengilustrasikan struktur data jaringan NDIS 6.0, termasuk NET_BUFFER, NET_BUFFER_LIST, dan NET_BUFFER_LIST_CONTEXT.

Di NDIS 6.0 dan yang lebih baru, NET_BUFFER adalah blok penyusun dasar untuk mengemas data jaringan. Setiap struktur NET_BUFFER memiliki rantai MDL. MDL memetakan alamat buffer data ke ruang data yang ditentukan struktur NET_BUFFER. Pemetaan data ini identik dengan rantai MDL yang NDIS 5. x dan driver sebelumnya digunakan dalam struktur NDIS_PACKET . NDIS menyediakan fungsi untuk memanipulasi rantai MDL.

Beberapa struktur NET_BUFFER dapat dilampirkan ke struktur NET_BUFFER_LIST. Struktur NET_BUFFER diatur sebagai daftar tertaut yang dihentikan NULL. Hanya driver yang berasal dari struktur NET_BUFFER_LIST, atau NDIS, yang harus memodifikasi daftar tertaut secara langsung untuk menyisipkan dan menghapus struktur NET_BUFFER.

NET_BUFFER LIST berisi informasi yang menjelaskan semua struktur NET_BUFFER yang dilampirkan ke daftar. Jika driver memerlukan ruang tambahan untuk informasi konteks, driver dapat menyimpan informasi tersebut dalam struktur NET_BUFFER_LIST_CONTEXT. NDIS menyediakan fungsi untuk mengalokasikan, membebaskan, dan mengakses data dalam struktur NET_BUFFER_LIST_CONTEXT.

Beberapa struktur NET_BUFFER_LIST dapat dilampirkan untuk membentuk daftar struktur NET_BUFFER_LIST. Struktur NET_BUFFER_LIST diatur sebagai daftar tertaut yang dihentikan NULL. Driver dapat mengubah daftar tertaut secara langsung untuk menyisipkan dan menghapus struktur NET_BUFFER_LIST.

NET_BUFFER

Struktur NET_BUFFER

daftar NET_BUFFER

Struktur NET_BUFFER_LIST

NET_BUFFER_LIST_CONTEXT

Struktur NET_BUFFER_LIST_CONTEXT