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-Transport unterstützt eine Reihe von Anforderungen für das Senden von Ethernet-Frames. Jeder Treiber (z. B. ein MUX-Zwischentreiber oder Filtertreiber), der Sendeanforderungen von überlastenden Treibern ändert, muss die Anforderungen unterstützen, die der TCP/IP-Transport implementiert.
Hinweis Wenn ein Treiber in einem Treiberstapel diese Anforderungen nicht erfüllt, können sich zugrunde liegende Miniporttreiber, MUX-Zwischentreiber und Filtertreiber unvorhersehbar verhalten.
Für Ethernet-Sendeanforderungen müssen Treiber die folgenden Anforderungen unterstützen:
Wenn ein Treiber eine Sendeanforderung erstellt, sollte der Treiber eine NET_BUFFER_LIST-Struktur für die Ethernet-Frames zuweisen. Das NetBufferListInfo-Element in jeder NET_BUFFER_LIST-Struktur muss die Out-of-Band-Daten (OOB) enthalten, die für die jeweilige Verwendung erforderlich sind. Die OOB-Daten gelten für alle NET_BUFFER Strukturen, die einer NET_BUFFER_LIST-Struktur zugeordnet sind.
Wenn ein Treiber eine Sendeanforderung erstellt, sollte der Treiber mindestens eine NET_BUFFER-Strukturen für die Ethernet-Frames zuordnen und diese Strukturen mit der NET_BUFFER_LIST-Struktur verknüpfen. Jede NET_BUFFER-Struktur, die mit einer NET_BUFFER_LIST-Struktur verknüpft ist, beschreibt einen einzelnen Ethernet-Frame. Der Treiber kann mehrere NET_BUFFER_LIST Strukturen in einer Sendeanforderung verketten.
Alle NET_BUFFER Strukturen, die einer NET_BUFFER_LIST-Struktur zugeordnet sind, müssen denselben Ethernet-Frametyp und die gleiche IP-Protokollversion (IPv4 oder IPv6) aufweisen.
Alle NET_BUFFER Strukturen, die einer NET_BUFFER_LIST-Struktur zugeordnet sind, müssen die gleichen Quell- und Ziel-MAC-Adressen aufweisen.
Wenn ein Treiber TCP- oder UDP-Frames sendet, müssen alle NET_BUFFER Strukturen, die einer NET_BUFFER_LIST-Struktur zugeordnet sind, derselben TCP- oder UDP-Verbindung zugeordnet sein. Hinweis Gemäß den folgenden Anforderungen können übertragene Ethernet-Frames aufgeteilt werden. Das heißt, mehrere Speicherdeskriptorlisten (Memory Descriptor Lists, MDLs) können einer NET_BUFFER-Struktur in einer Sendeanforderung zugeordnet werden.
Teilen Sie den MAC-Header des Ethernet-Sendeframes nicht auf mehrere MDLs auf. Behandeln Sie das VLAN-Flag (Virtual LAN) (oder Priority), falls vorhanden, als Teil des MAC-Headers. Daher muss sich dieses Flag in derselben MDL wie der rest des MAC-Headers befinden.
Wenn ein Treiber die Glieder in der MDL-Kette in einer NET_BUFFER-Struktur oder die NET_BUFFER-Kette in einer NET_BUFFER_LIST-Struktur ändert, muss der Treiber die Links zur ursprünglichen Konfiguration wiederherstellen, bevor er den Besitz des NET_BUFFER_LIST an einen überliegenden Treiber zurückgibt. Treiber sind jedoch nicht erforderlich, um die Verbindungen zwischen NET_BUFFER_LIST Strukturen wiederherzustellen.