WAN 驱动程序绑定和连接

本主题概述了 NDISWAN、过度部署协议驱动程序和基础 WAN 微型端口驱动程序之间的绑定和连接。

绑定

NDISWAN 绑定到一个或多个 WAN 微型端口驱动程序,一个或多个协议驱动程序绑定到 NDISWAN。

下图演示了 WAN 客户端协议驱动程序、NDISWAN 和 WAN 微型端口驱动程序之间的绑定关系。

说明 wan 客户端协议驱动程序、ndiswan 和 wan 微型端口驱动程序之间的绑定关系的示意图。

协议驱动程序绑定到 NDISWAN 一次,不绑定到 WAN 微型端口驱动程序。 此类绑定可节省内存并简化 WAN 微型端口驱动程序。 由于给定系统中通常有多个协议驱动程序,并且可能有多个 WAN 微型端口驱动程序,因此绑定数的减少可节省内存。 也就是说,每个协议不必绑定到每个 WAN 微型端口驱动程序。 此外,由于协议驱动程序只能依赖于单个 WAN 绑定,因此可以简化这些协议驱动程序。

连接

NDIS WAN 和 CoNDIS WAN 微型端口驱动程序为连接实现不同的模型:

  • NDIS WAN 微型端口驱动程序使用链接发送和接收数据。 链接是逻辑的点对点双向信道。 每个 NIC 可以有多个链接。 链接是动态建立和拆除的。 每个连接的链接链接速度和质量可能会有所不同。 但是,对于 NIC 支持的所有链接,填充参数和链接参数必须相同。 例如,如果 NDIS WAN 微型端口驱动程序指定 20 字节标头填充和 4 字节尾填充,则对于微型端口驱动程序的 NIC 支持的所有链接,此填充必须保持不变。

  • CoNDIS WAN 微型端口驱动程序通过虚拟连接 (VC) 发送和接收数据。 每个 NIC 可以有多个 NIC。 虽然数据传输速度可能因 VC 而异,但对于 NIC 支持的所有 VC,其他 VC 参数相同。 CoNDIS WAN 微型端口驱动程序可以为微型端口驱动程序可以发送和接收的任何网络数据包指定最大帧大小。 如果微型端口驱动程序指定了最大帧大小,则该最大帧大小对于该 NIC 上的所有 NIC 必须保持不变。

与其他微型端口驱动程序一样,每个 WAN 微型端口驱动程序必须至少有一个 NIC,它为其分配和维护特定于 NIC 的上下文区域。 NIC 特定的上下文区域只是一种存储、检索和使用有关 NIC (硬件详细信息(例如中断、总线类型、I/O 范围和内存) )以及维护连接的运行时状态的方法。 微型端口驱动程序应为其支持的系统中每个网络卡指定一个特定于 NIC 的上下文区域。

如果特定的 WAN 微型端口驱动程序指定它不需要 PPP 地址和控制字段压缩,则假定该微型端口驱动程序的 NIC 上的所有连接为 true。

WAN 微型端口驱动程序在广域网络上发送或接收数据包之前,必须创建连接:

  • 在 NDIS 环境中,应用程序必须设置源自发送节点的连接,或者通过发出或接受调用来接受源自远程节点上的连接。 连接设置、监督和拆解是通过 TAPI 完成的。 TAPI 请求和对 TAPI 的状态指示都经过 NDISTAPI。 有关 TAPI 和 NDISTAPI 的详细信息,请参阅 NDISTAPI 概述

  • 在 CoNDIS 环境中,必须创建 VC。 NDPROXY 驱动程序为应用程序发起的传出调用创建 VC。 同样,呼叫管理器 (或 MCM) 启动为传入呼叫创建 VC,呼叫管理器指示 NDISWAN 和 NDPROXY。 调用管理器必须与远程方通信,有时还要与远程方协商 VC 的参数。 连接设置、监督和拆解是通过 TAPI 完成的。 TAPI 请求和对 TAPI 的状态指示都经过 NDPROXY。 有关 TAPI 和 NDPROXY 的详细信息,请参阅 NDPROXY 概述