硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1402|回复: 11
收起左侧

[有问必答] 求助!F407+FreeRtos+lwip作为服务器,仅使用netconn_write往客户端发数据一段时间后会卡死阻塞

[复制链接]

5

主题

16

回帖

31

积分

新手上路

积分
31
发表于 2024-6-11 10:09:57 | 显示全部楼层 |阅读模式
项目使用stm32f407+freertos+lwip,单片机作为服务器。监听到客户端连接后只发送不接收,往客户端发送数据,数据频率大约5-6Hz,每次发送几十到一百多字节数据,跑一段时间后会阻塞在等待信号量获取函数里面,找了很久都没找到问题根源,求助大佬们分析以下原因
1718071736630.jpg
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-6-11 14:57:09 | 显示全部楼层

回帖奖励 +1 个金币

这样的话,有必要锁定是移植问题还是测试代码问题。

如果是移植问题,测试这个帖子的百万数据包,看看是不是会失败。

ThreadX NetX的百万连续ping包测试通过,无丢包,耗时4小时25分钟
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=99151


这两个勾选上测试

下载 (2).png
回复

使用道具 举报

7

主题

158

回帖

179

积分

初级会员

积分
179
发表于 2024-6-12 09:31:04 | 显示全部楼层
eric2013 发表于 2024-6-11 14:57
这样的话,有必要锁定是移植问题还是测试代码问题。

如果是移植问题,测试这个帖子的百万数据包,看看是 ...

这样固定是不行吧,LWIP的源码ICMP的协议就是改了个头 原数据返回了,没有申请空间释放内存那些。
最好 用UDP测试不同发包大小,才能确定是哪有问题
回复

使用道具 举报

5

主题

16

回帖

31

积分

新手上路

积分
31
 楼主| 发表于 2024-6-12 09:53:17 | 显示全部楼层
eric2013 发表于 2024-6-11 14:57
这样的话,有必要锁定是移植问题还是测试代码问题。

如果是移植问题,测试这个帖子的百万数据包,看看是 ...

为何一直显示超时,我用网络工具连接是可以正常收到数据的
企业微信截图_17181571682267.png
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-6-12 10:15:54 | 显示全部楼层
binss 发表于 2024-6-12 09:53
为何一直显示超时,我用网络工具连接是可以正常收到数据的

看来你的程序模板不行,不支持最快速ping。

不勾选两个对勾,试试是不是就正常了
回复

使用道具 举报

5

主题

16

回帖

31

积分

新手上路

积分
31
 楼主| 发表于 2024-6-12 10:22:32 | 显示全部楼层
eric2013 发表于 2024-6-12 10:15
看来你的程序模板不行,不支持最快速ping。

不勾选两个对勾,试试是不是就正常了

好奇怪,也是不行的,右边网络工具又可以
1718158918936.jpg
回复

使用道具 举报

5

主题

16

回帖

31

积分

新手上路

积分
31
 楼主| 发表于 2024-6-12 11:15:21 | 显示全部楼层
eric2013 发表于 2024-6-12 10:15
看来你的程序模板不行,不支持最快速ping。

不勾选两个对勾,试试是不是就正常了

不勾选,试了也不行,硬汉哥,我是用标准库移植的
回复

使用道具 举报

5

主题

16

回帖

31

积分

新手上路

积分
31
 楼主| 发表于 2024-6-12 13:36:41 | 显示全部楼层
mygod 发表于 2024-6-12 09:31
这样固定是不行吧,LWIP的源码ICMP的协议就是改了个头 原数据返回了,没有申请空间释放内存那些。
最好  ...

我用的是TCP,一定要改成udp测试码
回复

使用道具 举报

5

主题

16

回帖

31

积分

新手上路

积分
31
 楼主| 发表于 2024-6-12 17:30:47 | 显示全部楼层
ping通了5分钟,没出现什么问题
1718184598589.jpg
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-6-13 10:09:07 | 显示全部楼层
binss 发表于 2024-6-12 17:30
ping通了5分钟,没出现什么问题

这个不太行,才2万包就有一个超时

实验环境,应该百万包,无超时。

12.png
回复

使用道具 举报

5

主题

16

回帖

31

积分

新手上路

积分
31
 楼主| 发表于 2024-6-14 13:54:59 | 显示全部楼层
eric2013 发表于 2024-6-13 10:09
这个不太行,才2万包就有一个超时

实验环境,应该百万包,无超时。

所以说,是我的移植环境有问题么?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-6-14 14:26:57 | 显示全部楼层
binss 发表于 2024-6-14 13:54
所以说,是我的移植环境有问题么?

不能说有问题,只能说还不够好。

晚上开一晚上,早上了看看实际丢包多少。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-12 02:46 , Processed in 0.049191 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表