阅读:1415回复:3
请教高手,将IP包一分为二的实现源码
我现在想要实现一个功能,在passthru的基础上,通过修改miniport中的mpsend函数,将要发出的数据包mypacket分为packet1和packet2,以tcp报文为例,判断包的tcp报文长度是否大于128字节,例如收到的数据包tcp报文长度是200字节,则分为packet1 tcp报文长度是128字节,packet2 payload则是200-128=72字节,也就是说,如果数据包tcp报文长度大于128字节的,分为第一个包的tcp报文长度是128字节,第二个包的payload为余下的部分,不知该怎么实现?
|
|
|
沙发#
发布于:2008-04-21 12:20
不知道为什么需要一分为二,做网络数据包加密倒需要,不然直接修改网卡的Mtu
QQ:773709292 |
|
板凳#
发布于:2008-04-21 20:06
引用第1楼zhanSL于2008-04-21 12:20发表的 : 楼上说的很对,不过如果我想直接通过修改mpsend或者mpsendpacket函数来实现这一功能,不知有没有什么办法?还望指点! |
|
|
地板#
发布于:2008-04-21 20:16
从ndis考虑是可以的;
从tcp协议考虑可能会对协议栈的性能产生影响。 |
|