Winsock 2 SPI 的技术特点

采用 Winsock 2 SPI 进行应用层封包过滤

Winsock 2 SPI 工作在 API 之下 Driver 之上,属于应用层的范畴。利用这项技术可以截获所有的基于 Socket 的网络通信。比如:IE、OUTLOOK 等常见的应用程序都是使用 Socket 进行通信。它的技术特点主要有:

优点:

1. 工作在应用层,以 DLL 的形式存在,编程、调试方便。
2. 跨 Windows 平台,可以直接在 Windows 98/ME/NT/2000/XP上通用,Windows 95 只需安装上 Winsock 2 for 95,也可以正常运行。
3. 效率高,由于工作在应用层,CPU 占用率低。
4. 封包还没有按照低层协议进行切片,所以比较完整,很容易做内容过滤。
5. 做防色情之类的软件,不用根据具体的浏览器进行分别编程,既简单又安全。

缺点:

1. 不用 Socket 的网络通信无法拦截,比如:使用NetBios的网上邻居,和使用ICMP协议的Ping。
2. 微软对SPI设计的问题,导致如果安装顺序出错很容易造成网络瘫痪。这意味着如果同时安装几个使用SPI技术的软件,而且有使用非标准安装方式的软件,很容易有的被绕过或者不能正常网络通信。所以建议编写SPI程序一定要用标准的安装方式。

SPI 在 操作系统种的结构如下图:我们需要处理的是传输服务提供者。

层次结构图:费尔个人防火墙的XFILTER.DLL处的就是基础服务提供者的位置。



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1341169

 

你可能感兴趣的:(socket,windows,网络,工作,编程,防火墙)