在使用电脑作为上位机,lwip的udp协议给stm32h7发送40k的文件时,发现IP层切片重组有问题。在使用wireshark抓包后发现40k的文件被切分成了每个1k的包进行发送,但是是每个包单独发送的,没有被正确的添加标识字段和标志位,分片偏移量。也就是相当于一个文件被当成了40个文件。
这种情况是什么原因呢?
用udp协议给stm32h7发送大数据文件IP切片出错
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- qllaoda 2022-11-02 10:10关注
你看一下是IP层切片的还是UDP层切片的,一般来说,IP层切片是要避免的,因为这种包一般无法通过路由器,而且一些嵌入式协议栈可能不支持,因为它会占据太多的RAM,在lwip的配置里应该禁用IP分片。
用UDP发送的时候,应该避免一次发送超过MTU长度的数据
从你的描述看,可能是被分成了多个UDP包,所以你在IP标头里才看不到偏移量之类的信息本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 pcl运行在qt msvc2019环境运行效率低于visual studio 2019
- ¥15 MAUI,Zxing扫码,华为手机没反应。可提高悬赏
- ¥15 python运行报错 ModuleNotFoundError: No module named 'torch'
- ¥100 华为手机私有App后台保活
- ¥15 sqlserver中加密的密码字段查询问题
- ¥20 有谁能看看我coe文件到底哪儿有问题吗?
- ¥20 我的这个coe文件到底哪儿出问题了
- ¥15 matlab使用自定义函数时一直报错输入参数过多
- ¥15 设计一个温度闭环控制系统
- ¥100 rtmpose姿态评估