Привязки и подключения драйвера глобальной сети
В этом разделе представлен обзор привязок и подключений между NDISWAN, драйверами протоколов и базовыми драйверами мини-портов глобальной сети.
Привязки
NDISWAN привязывается к одному или нескольким драйверам мини-портов глобальной сети, а один или несколько драйверов протокола привязываются к NDISWAN.
На следующем рисунке показаны связи привязки между драйверами клиентских протоколов глобальной сети, драйверами NDISWAN и мини-портов глобальной сети.
Драйверы протокола привязываются один раз к NDISWAN и не привязываются к драйверам мини-портов глобальной сети. Этот тип привязки экономит память и упрощает драйверы мини-портов глобальной сети. Так как в данной системе обычно существует несколько драйверов протоколов и может быть несколько драйверов мини-портов глобальной сети, сокращение числа привязок экономит память. То есть каждый протокол не должен быть привязан к каждому драйверу мини-порта глобальной сети. Кроме того, поскольку драйверы протоколов могут полагаться только на одну привязку глобальной сети, эти драйверы протоколов можно упростить.
Соединения
Драйверы мини-портов NDIS WAN и CoNDIS WAN реализуют различные модели подключений:
Драйвер мини-порта NDIS WAN использует ссылки для отправки и получения данных. Ссылки — это логические двунаправленные каналы связи типа "точка — точка". На каждый сетевой адаптер может быть много ссылок. Связи устанавливаются и удаляются динамически. Скорость и качество связи могут отличаться для каждого соединения. Однако параметры заполнения и ссылок должны быть одинаковыми для всех ссылок, поддерживаемых сетевой картой. Например, если драйвер мини-порта NDIS WAN задает 20-байтовое заполнение заголовков и 4-байтовое заполнение хвоста, это заполнение должно оставаться постоянным для всех связей, поддерживаемых сетевой картой драйвера минипорта.
Драйвер мини-порта CoNDIS WAN отправляет и получает данные через виртуальные подключения. На каждый сетевой адаптер может быть несколько виртуальных компьютеров. Хотя скорость передачи данных может отличаться от VC к VC, другие параметры VC одинаковы для всех виртуальных машин, поддерживаемых сетевой картой. Драйвер мини-порта CoNDIS WAN может указать максимальный размер кадра для любого чистого пакета, который драйвер мини-порта может отправлять и получать. Если драйвер мини-порта указывает максимальный размер кадра, этот максимальный размер кадра должен оставаться постоянным для всех виртуальных машин на этой сетевой адаптере.
Как и другие драйверы мини-портов, каждый драйвер мини-порта глобальной сети должен иметь по крайней мере один сетевой адаптер, для которого он выделяет и поддерживает область контекста для сетевого адаптера. Контекстная область сетевого адаптера — это просто способ хранения, получения и использования сведений об оборудовании сетевой карты (например, прерывание, тип шины, диапазон операций ввода-вывода и память), а также для поддержания состояния времени выполнения для подключений. Драйвер мини-порта должен указать одну область контекста для конкретной сетевой карты для каждой сетевой карта в системе, которую он поддерживает.
Если определенный драйвер мини-порта глобальной сети указывает, что ему не требуется сжатие PPP-адреса и поля управления, предполагается, что это верно для всех подключений на сетевом адаптере драйвера мини-порта.
Прежде чем драйвер мини-порта глобальной сети сможет отправлять или получать пакеты в широкой сети, необходимо создать подключение:
В среде NDIS приложение должно настроить подключение, которое исходит от отправляющего узла, или принять соединение, которое возникает на удаленном узле, выполнив или приняв вызов. Настройка, контроль и снос подключения осуществляется с помощью TAPI. Запросы TAPI и индикаторы состояния для TAPI проходят через NDISTAPI. Дополнительные сведения о TAPI и NDISTAPI см. в разделе Обзор NDISTAPI.
В среде CoNDIS необходимо создать VC. Драйвер NDPROXY создает VC для исходящего вызова, инициированного приложением. Аналогичным образом диспетчер вызовов (или MCM) инициирует создание VC для входящего вызова, который диспетчер вызовов указывает NDISWAN и NDPROXY. Диспетчер звонков должен обмениваться данными, а иногда и согласовывать параметры для VC с удаленной стороной. Настройка, контроль и снос подключения осуществляется с помощью TAPI. Запросы TAPI и указания состояния для TAPI проходят через NDPROXY. Дополнительные сведения о TAPI и NDPROXY см. в разделе Обзор NDPROXY.