Differenze nelle connessioni virtuali
Un gestore chiamate usa le schede virtuali di segnalazione per inviare e ricevere messaggi di segnalazione da e verso entità di rete, ad esempio commutatori. I controller di segnalazione di un gestore chiamate sono visibili a NDIS. Il gestore chiamate deve creare, attivare, disattivare ed eliminare tutte le macchine virtuali con chiamate a NDIS. I CONTROLLER di segnalazione di un driver MCM, tuttavia, sono opachi a NDIS. Un driver MCM non crea, attiva, disattiva ed elimina i pc di segnalazione con chiamate a NDIS. Al contrario, un driver MCM esegue queste operazioni internamente. Un driver MCM deve chiamare NDIS per eseguire operazioni sui computer usati per inviare o ricevere dati client. Ciò è dovuto al fatto che NDIS deve tenere traccia delle macchine virtuali client.
Poiché il driver MCM è sia un gestore chiamate che un driver miniport, alcune funzioni orientate alla connessione sono ridondanti. In particolare , MiniportCoCreateVc e MiniportCoDeleteVc sono ridondanti e pertanto non sono forniti da un driver MCM. Le operazioni VC vengono gestite da:
ProtocolCoCreateVc e ProtocolCoDeleteVc di un driver MCM funzionano quando un client richiede la creazione o l'eliminazione di un vc.
NdisMCmCreateVc e NdisMCmDeleteVc quando il driver MCM crea o elimina un vc.
NdisMCmActivateVc e NdisCmDeactivateVc quando il driver MCM attiva o disattiva un vc.
Un driver MCM deve fornire una funzione MiniportCoOidRequest per consentire a un client di eseguire query o impostare informazioni sul driver miniport e una funzione MiniportCoSendNetBufferLists per gestire le operazioni di invio da un client.