ndis专题

NDIS Filter开发-Filter启动、暂停和绕过

下面分别讨论Filter驱动的启动和暂停状态以及所谓“绕过模式”。 启动Filter模块 若要启动已暂停的Filter模块,NDIS 会调用Filter驱动程序的 FilterSetModuleOptions 函数(如果有),然后调用 FilterRestart 函数。 Filter模块在 FilterRestart 函数中开始执行时进入“正在重启”状态。 如果驱动程序为 FilterSet

NDIS驱动程序堆栈

NDIS 6.0 引入了暂停和重启驱动程序堆栈的功能。 若要支持 NDIS 6.0 提供的堆栈管理功能,必须重写旧版驱动程序。 NDIS 6.0 还引入了 NDIS Filter驱动程序。 Filter驱动程序可以监视和修改协议驱动程序与微型端口驱动程序之间的交互。 与 NDIS 5 相比,Filter驱动程序更易于实现,并且处理开销更少。x 中间驱动程序。 出于这些原因,应使用Filter驱动

NDIS驱动开发-NET_BUFFER体系

网络数据由通过网络发送或接收的数据包组成。 NDIS 提供数据结构来描述和组织此类数据。 NDIS 6.0 及更高版本的主要网络数据结构包括: NET_BUFFERNET_BUFFER LISTNET_BUFFER_LIST_CONTEXT 它们之间的关系如下: 在 NDIS 6.0 及更高版本中, NET_BUFFER 是打包网络数据的基本构建基块。 每个NET_BUFFER结构都有一

NDIS小端口驱动(九)

PCIe设备难免会遇到一些重置设备的请求,例如重置总线的时候,但是由于NIC网卡的多样性,重置设备确实也有许多要注意的地方,另外还有一些包含WDM的NDIS驱动 微型端口驱动程序硬件重置 微型端口驱动程序必须向 NdisMRegisterMiniportDriver 注册 MiniportResetEx 函数。 MiniportResetEx 可以通过调用 NdisMResetComplet

NDIS小端口驱动(七)

NDIS微型端口驱动不可避免的可能和DMA相关,这种情况下,我们也需要考虑DMA相关的情况,不过,NDIS本身也支持常规的DMA操作,这里需要特殊对待的是Scatter/Gather DMA,因为NDIS似乎天然的需要这种技术。 NDIS Scatter/Gather DMA 对于 Arm 和 Arm64 处理器,我们强烈建议 NDIS 驱动程序编写器使用 WDF DMA 或 WDM DMA,

ppp and ndis

3g wcdma http://wenku.baidu.com/view/9811fcfcf705cc17552709c6.html http://wenku.baidu.com/view/27a345fcf705cc1755270970.html http://blog.csdn.net/hens007/article/details/7255488 2g gprs http://wenku.