keven007
驱动牛犊
驱动牛犊
  • 注册日期2002-03-06
  • 最后登录2002-07-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1780回复:7

怎样接收NdisMIndicateReceivePacket上传的包?

楼主#
更多 发布于:2002-04-01 16:52
由于NdisMIndicateReceivePacket上传的可能是以太帧队列,就是可能有好几个以太帧排在一起,当MAC帧的第13,14字节是类型时,无法得到该帧的长度信息,也就没有办法将这队列中的帧分开。
恳请大侠赐教!
jeffhu
驱动牛犊
驱动牛犊
  • 注册日期2002-02-21
  • 最后登录2005-09-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-04-02 15:28
好象有办法,如果读出的长度大于8000(忘了是多少)
肯定是另外的情况。
因为不会超过1500
hehe
keven007
驱动牛犊
驱动牛犊
  • 注册日期2002-03-06
  • 最后登录2002-07-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-04-03 09:55
你误解了我的问题。当第13和14字节是类型时,就没有LLC层,包长度就不能在包头确定,当几个包排成一队时,不知道第一个包应读到哪里为止,也不知道第二个包从哪里开始。
希望有经验的大侠帮忙啊!
jyhlc
驱动牛犊
驱动牛犊
  • 注册日期2002-03-11
  • 最后登录2005-11-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-04-03 17:10
怎么会无法将这个帧的队列分开呢?实在不行就只有直接读取类型,然后根据类型判断长度了。
keven007
驱动牛犊
驱动牛犊
  • 注册日期2002-03-06
  • 最后登录2002-07-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-04-03 18:16
但MAC帧是不定长的。我们并不预先知道各种类型的MAC帧长度啊。
xemexzj
驱动牛犊
驱动牛犊
  • 注册日期2001-11-07
  • 最后登录2006-03-15
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-04-03 18:33
由于NdisMIndicateReceivePacket上传的可能是以太帧队列,就是可能有好几个以太帧排在一起,当MAC帧的第13,14字节是类型时,无法得到该帧的长度信息,也就没有办法将这队列中的帧分开。
恳请大侠赐教!


请看清楚NdisMIndicateReceivePacket函数的原形

VOID
  NdisMIndicateReceivePacket(
    IN NDIS_HANDLE  MiniportAdapterHandle,
    IN PPNDIS_PACKET  ReceivePackets,
    IN UINT  NumberOfPackets
    );
ReceivePackets是一个PNDIS_PACKET数组
xeme
keven007
驱动牛犊
驱动牛犊
  • 注册日期2002-03-06
  • 最后登录2002-07-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-04-03 20:09
原来如此。谢谢。:)
keven007
驱动牛犊
驱动牛犊
  • 注册日期2002-03-06
  • 最后登录2002-07-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-04-03 20:13
但是在Packet的Sample中是通过哪个函数来实现对NdisMIndicateReceivePacket的接口?
游客

返回顶部