Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In de volgende afbeelding ziet u een eenvoudige CoNDIS-verzendbewerking, die betrekking heeft op een protocolstuurprogramma, NDIS en een minipoortstuurprogramma.
Zoals in de voorgaande afbeelding wordt weergegeven, roepen protocolstuurprogramma's de NdisCoSendNetBufferLists functie aan om NET_BUFFER_LIST structuren op een virtuele verbinding (VC) te verzenden. NDIS roept vervolgens de MiniportCoSendNetBufferLists functie van het miniportstuurprogramma aan om de NET_BUFFER_LIST structuren door te sturen naar een onderliggend minipoortstuurprogramma.
Alle op NET_BUFFER gebaseerde verzendbewerkingen zijn asynchroon. Daarom roept het minipoortstuurprogramma altijd de NdisMCoSendNetBufferListsComplete--functie aan en biedt het een juiste statuscode wanneer de gegevens worden verzonden. Het minipoortstuurprogramma kan de verzendbewerking voor elke NET_BUFFER_LIST structuur onafhankelijk van andere NET_BUFFER_LIST structuren voltooien. NDIS roept de ProtocolCoSendNetBufferListsComplete functie van het protocolstuurprogramma aan telkens wanneer de miniportstuurprogramma de NdisMCoSendNetBufferListsCompleteaanroept.
Protocolstuurprogramma's kunnen het eigendom van de NET_BUFFER_LIST structuren en alle bijbehorende structuren en gegevens terugvorderen zodra NDIS de ProtocolCoSendNetBufferListsComplete functie van het protocolstuurprogramma aanroept.
Het minipoortstuurprogramma of NDIS kan de structuren van NET_BUFFER_LIST in elke volgorde retourneren. Protocolstuurprogramma's zijn echter gegarandeerd dat de lijst met NET_BUFFER structuren die aan elke NET_BUFFER_LIST structuur zijn gekoppeld, niet is gewijzigd.
Protocolstuurprogramma's stellen het SourceHandle--lid in de NET_BUFFER_LIST-structuur in op dezelfde waarde als de parameter NdisVcHandle van NdisCoSendNetBufferLists. NDIS gebruikt de SourceHandle lid om de NET_BUFFER_LIST structuren te retourneren aan het protocolstuurprogramma dat de NET_BUFFER_LIST structuren heeft verzonden.
Tussenliggende stuurprogramma's stellen ook het SourceHandle--lid in de NET_BUFFER_LIST-structuur in op de NdisVcHandle--waarde. Als een tussenliggend stuurprogramma een verzendaanvraag doorstuurt, moet het stuurprogramma de SourceHandle--waarde opslaan die het bovenliggende stuurprogramma heeft opgegeven voordat deze naar het SourceHandle- lid schrijft. Wanneer NDIS een doorgestuurde NET_BUFFER_LIST structuur naar het tussenliggende stuurprogramma retourneert, moet het tussenliggende stuurprogramma de SourceHandle herstellen die het heeft opgeslagen.
Protocolstuurprogramma's kunnen verzenden aanvragen annuleren met behulp van dezelfde mechanismen als verbindingsloze stuurprogramma's. Zie Een verzendbewerking annulerenvoor meer informatie over het annuleren van verzendaanvragen.