WEB开发网
开发学院操作系统windows 2008 深度剖析WinPcap之(四)——WinPcap的体系架构 阅读

深度剖析WinPcap之(四)——WinPcap的体系架构

 2009-09-11 00:00:00 来源:WEB开发网   
核心提示: NDIS支持三种类型的网络驱动程序:1) 网络接口卡或NIC驱动程序NIC 驱动直接管理网络接口卡(network interface cards,NIC),深度剖析WinPcap之(四)——WinPcap的体系架构(4),NIC驱动程序在其下面直接与硬件打交道,在其上面提供一个接口,一个中间层

NDIS支持三种类型的网络驱动程序:

1) 网络接口卡或NIC驱动程序

NIC 驱动直接管理网络接口卡(network interface cards,NIC)。NIC驱动程序在其下面直接与硬件打交道,在其上面提供一个接口,允许高层(驱动)在网络上发送数据包,处理中断,复位网卡,停止 NIC,请求与设置驱动的操作特性。NIC驱动即可为微端口( miniports),也可为遗留的全NIC驱动。

微端口驱动程序

微端口驱动程序仅实现特定的硬件操作来管理NIC,包括发送与接收NIC上的数据。对所有底层NIC驱动程序通用的操作,诸如同步管理,是由DICS提供的 。微端口不直接调用操作系统的例行程序;它们与操作系统的接口是NDIS.

微端口不保持绑定的跟踪。它仅把数据包向上传递给NIDIS,并由NDIS确定这些数据包传递给合适的协议。

全NIC驱动程序

全NIC驱动程序被编制为即执行特定硬件操作,也执行所有同步与排队这些通常由NDIS完成的操作。全NIC驱动程序,例如,需要维护它们自己的绑定信息以标识所接收的数据。

2) 中间层驱动程序

中间层驱动程序是一个上层驱动程序(诸如协议驱动程序)与微端口驱动程序之间的接口。对上层驱动程序而言,一个中间层驱动程序看起来像一个微端口驱动程序。对一个微端口驱动程序而言,一个中间层驱动程序看起来像一个协议驱动程序。一个中间层协议驱动程序可以位于另一个中间层驱动程序的顶部,尽管这样的分层对系统性能有负面影响。开发中间层驱动程序的典型原因,是在一个已有的遗留协议驱动程序与一个微端口驱动程序之间介质转换任务,而该微端口驱动程把NIC作为一种对协议驱动程序而言是未知的新介质类型来管理。例如,一个中间层驱动程序能够从LAN协议转换到ATM协议。一个中间层驱动程序不能与用户层的应用程序通信,只能与其它NDIS驱动程序进行通信。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:深度 剖析 WinPcap

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接