Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сетевые данные состоят из пакетов данных, отправляемых или полученных по сети. NDIS предоставляет структуры данных для описания и упорядочивания таких данных. Основные сетевые структуры данных для NDIS 6.0 и более поздних версий:
На следующем рисунке показаны связи между этими структурами.
схема
В NDIS 6.0 и более поздних версиях NET_BUFFER является основным стандартным блоком для упаковки сетевых данных. Каждая NET_BUFFER структура имеет цепочку MDL. MdLs сопоставляют адреса буферов данных с пространством данных, указанным структурами NET_BUFFER. Это сопоставление данных идентично цепочкам MDL, которые NDIS 5.x и более ранних драйверов, используемых в структуре NDIS_PACKET. NDIS предоставляет функции для управления цепочкой MDL.
К структуре NET_BUFFER_LIST можно подключить несколько структур NET_BUFFER. Структуры NET_BUFFER организованы в виде последовательного связанного списка, завершаемого значением NULL. Только драйвер, создающий структуру NET_BUFFER_LIST или NDIS, должен изменить связанный список непосредственно для вставки и удаления структур NET_BUFFER.
структуры NET_BUFFER LIST содержат сведения, описывающие все структуры NET_BUFFER, присоединенные к списку. Если драйверу требуется дополнительное пространство для контекстной информации, драйвер может хранить такие сведения в NET_BUFFER_LIST_CONTEXT структурах. NDIS предоставляет функции для выделения, освобождения и доступа к данным в структурах NET_BUFFER_LIST_CONTEXT.
Для создания списка структур NET_BUFFER_LIST можно присоединить несколько таких структур. Структуры NET_BUFFER_LIST организованы в виде последовательного связанного списка, завершаемого значением NULL. Драйверы могут изменять связанный список, непосредственно вставляя и удаляя структуры NET_BUFFER_LIST.