您的位置:首页 > 其它

Windows Filtering Platform 结构和简介

2009-03-18 10:59 225 查看
这两天一直在写一个用tdi实现的tcp Redirector ,说白了就是一个tcp连接的重定向器,本来已经写的差不多了,前两天在
google上搜索tdi的关键字时一不小心连接到在线msdn上,却看见一个噩耗,Windows vista已经不再支持tdi驱动,替代的方案是Windows Filtering PlatformWinsock Kernel

缓过神来心想,反正tdi驱动已经写完了,XP也不至于那么不济连个一年半载支撑不了吧(我一个同学还在用Windows 2000呢,他在外企,版权管的比较严)。既然写完了,就整理一下交了差,然后花点时间研究下vista中的替代方案Windows Filtering Platform

下面这张图是Windows Filtering Platform的结构图:



按照微软的说法,图中Filter Engine是
Windows Filter Platform的核心。它来执行网络数据的过滤操作,它处于网络堆栈的过滤层(filter layer)。而真正值得
我们关注的是图中的"Callout",Windows中有内置的"Callout”,而第三方也可以开
发"Callout Driver","Callout Driver“向Filter Engine注册一个"Callout",并标明这
个"Callout"感兴趣的数据类型,那么Filter Engine收到这一类的数据时就会传给对应的"Callout”处理。

我看了一下Windows vista中内置的callout,太多了就不在这里列举了,给个链接吧:http://msdn2.microsoft.com/en-us/library/aa504917.aspx

"Callout Driver"有如下的用途:
1.深度检查:对网络数据做复杂的检查,比如杀毒软件可以用它扫描病毒特征码。
2.修改网络消息包,比如可以修改IP包的包头。
3.修改网络流数据:比如保护少年儿童上网的产品可以过滤网络数据流中的成人内容。
4.数据日志:记录网络交互的数据到日志中去。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: