panke12345
驱动牛犊
驱动牛犊
  • 注册日期2008-03-25
  • 最后登录2008-04-23
  • 粉丝1
  • 关注0
  • 积分30分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
阅读:1416回复:3

请教高手,将IP包一分为二的实现源码

楼主#
更多 发布于:2008-04-20 21:39
我现在想要实现一个功能,在passthru的基础上,通过修改miniport中的mpsend函数,将要发出的数据包mypacket分为packet1和packet2,以tcp报文为例,判断包的tcp报文长度是否大于128字节,例如收到的数据包tcp报文长度是200字节,则分为packet1 tcp报文长度是128字节,packet2 payload则是200-128=72字节,也就是说,如果数据包tcp报文长度大于128字节的,分为第一个包的tcp报文长度是128字节,第二个包的payload为余下的部分,不知该怎么实现?
驱网无线,快乐无限
zhanSL
驱动小牛
驱动小牛
  • 注册日期2002-09-29
  • 最后登录2010-07-13
  • 粉丝0
  • 关注0
  • 积分25分
  • 威望273点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-04-21 12:20
不知道为什么需要一分为二,做网络数据包加密倒需要,不然直接修改网卡的Mtu

QQ:773709292
panke12345
驱动牛犊
驱动牛犊
  • 注册日期2008-03-25
  • 最后登录2008-04-23
  • 粉丝1
  • 关注0
  • 积分30分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-04-21 20:06
引用第1楼zhanSL于2008-04-21 12:20发表的  :
不知道为什么需要一分为二,做网络数据包加密倒需要,不然直接修改网卡的Mtu

QQ:773709292

楼上说的很对,不过如果我想直接通过修改mpsend或者mpsendpacket函数来实现这一功能,不知有没有什么办法?还望指点!
驱网无线,快乐无限
zhanSL
驱动小牛
驱动小牛
  • 注册日期2002-09-29
  • 最后登录2010-07-13
  • 粉丝0
  • 关注0
  • 积分25分
  • 威望273点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-04-21 20:16
从ndis考虑是可以的;
从tcp协议考虑可能会对协议栈的性能产生影响。
游客

返回顶部