我现在想把在中间层处理过的数据信息送回到ip层(也就是送回给上层的协议),请问我这么做能行的通么?请各位兄弟多多给些意见,给些帮助。
回复(19) 2003-12-15 09:43 来自版块 - NDIS网络接口开发
表情
youngyt但是如果我收到的包是被在传输过程中分片了的呢? 上面有位仁兄说了在IP头中禁止这样做 :cool:(2003-12-15 18:10)
ljjlovernet但是如果我收到的包是被在传输过程中分片了的呢?(2003-12-15 17:50)
ljjlovernet谢谢,可是我分都给完了,以后再送上吧(2003-12-15 17:47)
ljjlovernet我直接改注册表也可以限制mtu的大小,让他在加密之后不知过大。(2003-12-15 17:40)
wxl_50685330自己做分组重装一点儿问题也没有,但是原来协议栈的功能浪费了,插不进协议栈就不做分片重装了吧,做WIN上的是不太方便(2003-12-15 17:04)
wxl_50685330哈哈,做VPN的吧,看来做这个东西大家要的东西都一样喔:)我知道你的意思,这样做试试:在IM中的QUERYINFORMATION的时候在QUERY下层NIC的MTU告诉上层一个合适的值,这样确保IM做完处理的MAC帧小于1500(不加头部和帧同步码);对于在中途的分片,强行置IP...(2003-12-15 17:01)
ljjlovernet发包时还好说,我收包时呢?我得再这层作一次重组才可以把重组过的包上传给协议层。(2003-12-15 16:45)
ljjlovernethehe,我原意是这样的,你说的也有些小毛病,被分片的包序列号应该是一样的,只是他们的片偏移是不同的。另外他们分段标识都被标识了。 还是要写代码啊。 :P谁能帮俺找一个分片-重组的函数,小弟当感激不尽。 (2003-12-15 16:41)
youngyt楼主可能是想让IP帮你分片再发出去吧。 我想你这样在两层来回转是不现实的,我认为不可以。你要实现分片要自己写个函数就行了。 将变大的IP包的包头拆掉,将净苛分片,然后再给每个分片加上刚才拆掉包头,当然每个包头里还要改一下序列号。就是完全模仿IP分片嘛,呵呵~~ :D(2003-12-15 16:30)
cc_file是啊,所以要把mtu该小,比如改成1400字节,上面下来的包就最大只有1414字节,加密后不超过1500就可以了(2003-12-15 16:08)

返回顶部