Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
阅读:1790回复:24

那位兄弟在线,并且对passthru熟悉,了解也些,

楼主#
更多 发布于:2003-10-22 10:17
那位兄弟在线,并且对passthru熟悉,了解也些,
我是初学者,有一些初级问题请教,
请+我QQ:11087235
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-10-22 10:20
不知道老牛要问什么? :D
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-10-22 10:21
一些很低级的问题,
能不能QQ上聊一下,引导我一下,OK?
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2003-10-22 10:24
公司QQ死活上不去:(
我就知道一点点的,黑僧、mikelou,antpower都厉害呢

上msn?
arthurtu2@hotmail.com
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-10-22 10:26
=yixia,我时时看msn能不能上
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-10-22 10:29
算了,这里问吧,偶也不怕丢人了

我的passthru安装上了以后,
为什么ptReceive没有反应,看不到有包来呀
我要怎么做才能那到数据包
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2003-10-22 10:35
你的意思是ptreseive没有被调用?
是不是走的PtReceivePacket呀?
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-10-22 10:37
感觉ptRceivePacket也米掉用
而且ptRceivePacket不是在面向连接或者包指针的时候才掉用么?

passthru不用做什么改洞,直接安装了就应该可以收到数据包的,对伐?
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
8楼#
发布于:2003-10-22 10:41
是啊,不用改的。
在ptreceive加上dbgprint,看看有输出没有。

不会是没有安装上吧? :P
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-10-22 10:45
装上了呀
passthru.sys+filter.dll,
安装以后在网络组件那里多了一个sample filter
而且前边也打勾了,是这么用么?
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
10楼#
发布于:2003-10-22 10:52
对呀。有dbg输出吗?
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-10-22 10:53
TNND,
终于看到了
还是跑到ptreceivepacket里面了,
可是为什么呀?
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
12楼#
发布于:2003-10-22 11:22
下面是老胡的一段话 :D :D

首先请你注意,protocolreceive和protocolreceivepaket的参数是完全不同的,protocolrecevie只是给了一个lookahead和全包长,protoclreceviepacket给的却是一个packet结构。这两者是有区别的。我认为之所以ndis保留ptreceive,主要是因为兼容问题,因为ndis3来说,是不支持所谓oob数据的,我的大多数ndis经验也停留在ndis3上面,对于ndis5,我也是去年3月份才开始学习的。当然估计ms保留receive这个接口,还有一部分是效率的原因。然后我们来看看raw data和packet结构有什么不同。无疑,packet结构中包含了raw data,但是同时还包含了其他一些东西,最主要的就是oob data。我们都知道,tcp其实并非真正支持带外数据,那么这个out of band又是什么意思呢?ms在oob_data数据结构中存放了许多和这个包在发送接受过程中miniport和protocol应该采取的策略,例如time_out,ipchksum,tcpchksm等等。
        
          因为protocolrecieve只是上传raw data,那么,oob数据怎么得到呢?ms于是设计了一个函数,叫做NdisGetReceivedPacket,这样,你就可以在这个函数中得到oob数据。如果你的网卡根本就不支持oob的高级功能,那么得到一个null也就不奇怪了。这个函数好像是ndis5的新功能,因为我的记忆中,ndis3没有oob,当然也就不存在这个函数了。
          
            当NdisGetReceivedPacket返回null,就是说,你不能够这么简单的得到数据包了。这个时候,你只能用ndis3的老方法老老实实的判断headlen和packetsize的关系,对于绝大多数网卡和den来说,headbuf就是所有的包数据,但是对于非常非常老的网卡和慢速猫来说,你还必须调用transferdata来得到后续数据。这种设计我在学习ndis3的时候觉得很精妙,因为如果一个协议发现这个数据根本就不是自己感兴趣的包,就不需要后续数据了,但是现在看来,网卡都是主dma的,这个过程并不消耗cpu时间。
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
13楼#
发布于:2003-10-22 11:24
这是DDK上的 :D

ReceiveHandler
This is a required function. ProtocolReceive is called with a pointer to a lookahead buffer containing data received over the network. If this buffer contains less than the full net packet, ProtocolReceive calls NdisTransferData with a packet descriptor to get the remainder of the net packet. If the underlying driver calls NdisMIndicateReceivePacket to indicate receives, the lookahead buffer passed to ProtocolReceive will always contain a full net packet.

ReceivePacketHandler
This is an optional function. A ProtocolReceivePacket function is provided if the intermediate driver will be layered over any NIC driver that indicates an array of pointer(s) to one or more packet descriptors or that supplies out-of-band data with its receive indications by calling NdisMIndicateReceivePacket. If a developer is unsure of the environment in which the intermediate driver will execute, this function should be provided because the intermediate driver will achieve better performance over any underlying NIC driver that makes multipacket receive indications.
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2003-10-22 11:30
呵呵,懂了一些了

在问一下,照这么说,那岂不Receive and receivepacket我都要做同样的操作?因为我并能能确定底层的nic到底要通过那个方式来送给我数据,对么?

还有im和虚拟网卡有什么关系?我仅仅是想截获数据包,分析,判断是否上送,用理解关于虚拟网卡的部分么?

MSN上不了,头大
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
15楼#
发布于:2003-10-22 11:37
这个我还没有考虑呢:P,我的刚好是ptreceive,呵呵。

虚拟网卡的?应该不用管吧?IMD在网卡上面的。 :P
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2003-10-22 11:41
我的packet也是在recieve上面
可是passthru就不是了,苦恼

我安装passthru,有一台机器就有虚拟网卡,有一个没有,
应该是安装选择的不一样吧,米有注意,
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
17楼#
发布于:2003-10-22 11:46
你是说那个假的miniport NIC没有?装passthru应该有的啊。

-------------
我的packet也是在recieve上面
可是passthru就不是了,苦恼
-------------
这个没有懂 :P
Buddha
驱动老牛
驱动老牛
  • 注册日期2001-04-29
  • 最后登录2013-05-18
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望17点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2003-10-22 12:24
packet是ddk的另一个例子
protocol的

以前我用packet截获数据,因为不过滤,这个就可以
现在不行了:(


我的passthru安装了就是没有miniport nic,奇怪吧,
我还以为安装是选想不同呢,没留神,你们的每台机器都一样么?
<table style="filter: glow(color=sky blue, strength=10)"> <font color=white> 猫生病了, 老鼠大声朗诵诗集, 并修剪盆花. 猫生病了, 老鼠慢慢刷牙洗脸, 并打扫房间. 猫生病了, 老鼠倚在窗边欣赏夜色, 并对流星许愿. 猫生病了, 老鼠也病了, 它说:"我还是习惯那种时时紧张, 处处小心, 夜夜逃亡的生活." 午夜, 我听到老鼠在叹息, 且不再读诗了. </font></table>
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
19楼#
发布于:2003-10-22 12:33
我就在2台pc上试了的,2个都有。
其中一台还有个虚拟拨号连接,都有了个miniport NIC
上一页
游客

返回顶部