Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Windows TCP/IP-Protokolltreiber erlegt eine Reihe von Anforderungen für den Empfang von Ethernet-Frames auf. Jeder Treiber, der aus dem Ursprung stammt, erhält Hinweise auf Ethernet-Frames oder ändert Hinweise auf zugrunde liegende Treiber muss die allgemeinen Anforderungen unterstützen, die TCP/IP auferlegt. Zu diesen Treibern gehören Ethernet-Miniporttreiber, MUX-Zwischentreiber und Filtertreiber.
Hinweis Wenn ein Treiber diese Anforderungen nicht erfüllt, können sich überlastende Treiber (z. B. TCP/IP-Transport, MUX-Zwischentreiber und Filtertreiber) unvorhersehbar verhalten.
Treiber, die Ethernet-Empfangsanzeigen enthalten, müssen die folgenden Anforderungen unterstützen:
Der Treiber muss eine NET_BUFFER_LIST-Struktur für den empfangenen Ethernet-Frame zuweisen. Jede NET_BUFFER_LIST-Struktur muss die Out-of-Band-Daten (OOB) enthalten, die im NetBufferListInfo-Member des für die jeweilige Verwendung erforderlichen NET_BUFFER_LIST definiert sind.
Der Treiber muss eine NET_BUFFER-Struktur für den Frame zuordnen und mit einer NET_BUFFER_LIST-Struktur verknüpfen. Der Ethernet-Miniport muss einer NET_BUFFER_LIST Struktur genau eine NET_BUFFER Struktur zuweisen, wenn empfangene Daten angegeben werden. Diese Einschränkung gilt nur für den Ethernet-Empfangspfad. Sie gilt nicht für andere Medientypen, z. B. die native 802.11-WLAN-Schnittstelle. oder NDIS im Allgemeinen.
Ab NDIS 6.1 kann in bestimmten Szenarien eine NET_BUFFER-Struktur mehreren Speicherdeskriptorlisten (MDLs) für den empfangenen Ethernet-Frame zugeordnet werden. Obwohl eine NET_BUFFER_LIST-Struktur eine einzelne NET_BUFFER-Struktur enthalten muss, ermöglicht es dem Treiber, die empfangenen Paketdaten durch die Verwendung mehrerer MDLs in separate Puffer aufzuteilen.
Beispielsweise teilen Ethernet-Treiber, die die Header-Daten-Split-Schnittstelle unterstützen, einen empfangenen Ethernet-Frame auf, indem sie eine verknüpfte Liste mehrerer MDLs verwenden, die einer einzelnen NET_BUFFER-Struktur zugeordnet sind. Weitere Informationen finden Sie unter Header-Data Split.
Aus Gründen der Einfachheit und Leistung wird dringend empfohlen, dass Treiber, die keine Header-Datenteilung unterstützen, nur eine MDL für jede NET_BUFFER Struktur verwenden.
Hinweis In NDIS 6.0 für Windows Vista darf jede NET_BUFFER-Struktur nur eine MDL enthalten.
Treiber dürfen empfangene Ethernet-Frames nicht in der Mitte des IP-Headers, IPv4-Optionen, IPsec-Headers, IPv6-Erweiterungsheaders oder Protokollheaders der oberen Ebene aufteilen, es sei denn, die erste MDL enthält mindestens so viele Bytes wie NDIS für die Lookaheadgröße angegeben.
NDIS-Protokoll- und Filtertreiber müssen geteilte Ethernet-Frames in Empfangsanzeigen unterstützen, wenn diese geteilten Frames den Einschränkungen entsprechen, die im vorherigen Listenelement definiert sind. Die Einschränkungen stellen sicher, dass die Protokoll- und Filtertreiber mit zukünftigen Windows-Versionen kompatibel sind.