TDI驱动源代码

时间:2016-04-18 20:17:23
【文件属性】:

文件名称:TDI驱动源代码

文件大小:567KB

文件格式:RAR

更新时间:2016-04-18 20:17:23

驱动,C++

这个是TDI驱动,本来做这个驱动的目的, 是想在应用层程序实时动态获得每个进程打开的网络端口的变化情况。 因为想不到更好的办法,同时也要兼容WIN7和WINXP,所以才使用TDI来实现。 代码是自己开发的框架,没借用tdifw等源码, 代码测试可在 64和32位位win7,winxp上运行。 除了实现获得动态变化的端口之外, 还顺便实现了每个进程的流量监控,以及每个进程的每个连接的流量情况, 还有简单的禁止某个进程访问网络,至于每个进程限速的功能,暂时没实现, 有兴趣的朋友可在此基础上做扩展, 等你做好之后就能把握理解360流量防火墙的限速的核心部分了。 应用层部分只提供了接口代码,没有做更详细的开发,有兴趣的朋友可开发。 做这驱动大概只用了10天时间,时间比较仓促,还望大牛们纠错指出。


【文件预览】:
bin
----xlantdi.sys(26KB)
----xtdi_app.exe(232KB)
driver
----obj_mgr.cpp(14KB)
----rbtree.c(9KB)
----xlantdi.sys(26KB)
----xfilter.h(6KB)
----xlantdi.pdb(419KB)
----buildchk_win7_x86.log(5KB)
----buildfre_win7_amd64.log(7KB)
----ioctl.h(2KB)
----xfilter.cpp(10KB)
----makefile(537B)
----xioctl.cpp(8KB)
----xf_send.cpp(1KB)
----main.cpp(2KB)
----xf_recv.cpp(8KB)
----xf_create.cpp(7KB)
----xioctl.h(475B)
----xtdi.h(2KB)
----objchk_win7_x86()
--------i386()
----xf_connect.cpp(5KB)
----sources(769B)
----rbtree.h(4KB)
----obj_mgr.h(5KB)
----objfre_win7_amd64()
--------amd64()
app
----xtdi_app.dsp(4KB)
----xtdi_api.h(568B)
----xtdi_api.c(8KB)
----xtdi_app.dsw(539B)
说明.txt

网友评论

  • 学习中。。。。。
  • 不错的TDI代码,值得学习!
  • 好象是WFP哦!
  • 可以用,谢谢分享!
  • 正在学习中 ,谢谢楼主
  • 学习中,貌似win7以上版本要用另外一个东东吧,貌似叫mfp,这个在xp下应该好用,等我验证后再来做最后结论
  • 挺有学习价值的东西,感谢楼主
  • 正在做tdi方面的驱动,谢谢分享
  • 非常好的可学习代码,结构清晰明确
  • 正在做tdi方面的驱动,可以借鉴
  • 很不错,现在正在学习。。。
  • 正在学习,对网络 流量监控有一定帮助
  • 还没有仔细阅读,应该不错
  • 这个不错,架构非常合理,我在这基础上实现了一个防火墙,很好!
  • 很不错的代码,学习了,很给力
  • 谢谢,很不错的,可以使用!
  • 赞啊,找了很久才找到完整的
  • 非常好的代码,值得学习
  • 值得学习,正在研究中,对过滤驱动的学习帮助很大
  • 非常好,大有裨益。感谢分享。
  • 这个代码,还是用到了tdifw的框架。与tdifw比,少了创建\device\raw\设备。
  • 非常好的代码,值得学习
  • 学习学习了,找了好多地方呢
  • 为什么我找不到几个关键函数在哪里实现的代码?看到了声明,但没看到实现,大家都没遇到过吗?xf_cbk_create,xf_cbk_cleanup还有这个。
  • 编译通过了,不知道是不是可以直接用.net加载sys文件 正在尝试
  • 很好,入门的好例子,谢谢~~~
  • 编译可以通过,不过就是自己在修改代码的时候会比较蒙。。
  • 谢谢楼主分享,还在研究中
  • 非常好的代码,值得学习
  • 楼主的这个demo帮助我完成了项目,不可多得的好东西,建议去github或者googlecode开个项目维护起来,