Поделиться через


Различия в виртуальных подключениях

Диспетчер вызовов использует сигнальные виртуальные машины для отправки и получения сигнальных сообщений от сетевых сущностей, таких как коммутаторы. Сигнальные виртуальные машины диспетчера вызовов видны NDIS. Диспетчер вызовов должен создавать, активировать, деактивировать и удалять все виртуальные машины с вызовами NDIS. Однако сигнальные виртуальные машины драйвера MCM непрозрачны для NDIS. Драйвер MCM не создает, не активирует, не отключает и не удаляет виртуальные машины с помощью вызовов NDIS. Вместо этого драйвер MCM выполняет такие операции внутри организации. Драйвер MCM должен вызывать NDIS для выполнения операций с виртуальными машинами, которые используются для отправки или получения данных клиента. Это связано с тем, что NDIS должен отслеживать клиентские виртуальные машины.

Так как драйвер MCM является одновременно диспетчером вызовов и драйвером мини-порта, некоторые функции, ориентированные на подключение, избыточны. В частности, MiniportCoCreateVc и MiniportCoDeleteVc являются избыточными и поэтому не предоставляются драйвером MCM. Операции VC обрабатываются следующими способами:

Драйвер MCM должен предоставить функцию MiniportCoOidRequest , чтобы клиент использовал при запросе или настройке сведений о драйвере мини-порта, а также функцию MiniportCoSendNetBufferLists для обработки операций отправки от клиента.