OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3980|回复: 9

STM32 lwip的服务器模式,无法重复连接,怎么解决啊?

[复制链接]

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
发表于 2016-7-25 09:58:15 | 显示全部楼层 |阅读模式
20金钱
问题是这样的,我使用LWIP建立了一个服务器,然后我设置这个服务器只能让一个客户端连接进来,设置如下
tcp_listen_with_backlog(tcp_echoserver_pcb, TCP_LISTEN_BACKLOG);
其中TCP_LISTEN_BACKLOG就是允许的客户端连接数,我TCP_LISTEN_BACKLOG设置成了1,然后我用网络调试助手在进行第一次连接后,能和板子通信上,数据收发啥的都很正常,接着我主动断开了客户端,再次尝试连接到板子,就连接不上去了。如果我把TCP_LISTEN_BACKLOG设置成2,问题也是一样的,正常连接2次后,第三次也是无法连接,所以我怀疑是不是在我客户端断开连接后,服务器少做了什么操作,类似于释放什么资源,或关闭套接字啥的,我程序里面只做了tcp_close(tpcb)操作,不懂是不是还少了啥!!求大神们解答~~实在是郁闷,到底少了啥操作!!

最佳答案

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
 楼主| 发表于 2016-7-25 09:58:16 | 显示全部楼层
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
 楼主| 发表于 2016-7-25 09:58:36 | 显示全部楼层
问题是这样的,我使用LWIP建立了一个服务器,然后我设置这个服务器只能让一个客户端连接进来,设置如下 tcp_listen_with_backlog(tcp_echoserver_pcb, TCP_LISTEN_BACKLOG); 其中TCP_LISTEN_BACKLOG就是允许的客户端连接数,我TCP_LISTEN_BACKLOG设置成了1,然后我用网络调试助手在进行第一次连接后,能和板子通信上,数据收发啥的都很正常,接着我主动断开了客户端,再次尝试连接到板子,就连接不上去了。如果我把TCP_LISTEN_BACKLOG设置成2,问题也是一样的,正常连接2次后,第三次也是无法连接,所以我怀疑是不是在我客户端断开连接后,服务器少做了什么操作,类似于释放什么资源,或关闭套接字啥的,我程序里面只做了tcp_close(tpcb)操作,不懂是不是还少了啥!!求大神们解答~~实在是郁闷,到底少了啥操作!!
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
 楼主| 发表于 2016-7-25 09:59:26 | 显示全部楼层
问题是这样的,我使用LWIP建立了一个服务器,然后我设置这个服务器只能让一个客户端连接进来,设置如下

tcp_listen_with_backlog(tcp_echoserver_pcb, TCP_LISTEN_BACKLOG);

其中TCP_LISTEN_BACKLOG就是允许的客户端连接数,我TCP_LISTEN_BACKLOG设置成了1,然后我用网络调试助手在进行第一次连接后,能和板子通信上,数据收发啥的都很正常,接着我主动断开了客户端,再次尝试连接到板子,就连接不上去了。如果我把TCP_LISTEN_BACKLOG设置成2,问题也是一样的,正常连接2次后,第三次也是无法连接,所以我怀疑是不是在我客户端断开连接后,服务器少做了什么操作,类似于释放什么资源,或关闭套接字啥的,我程序里面只做了tcp_close(tpcb)操作,不懂是不是还少了啥!!求大神们解答~~实在是郁闷,到底少了啥操作!!
回复

使用道具 举报

3

主题

177

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1603
金钱
1603
注册时间
2016-1-28
在线时间
265 小时
发表于 2016-7-25 10:04:59 | 显示全部楼层
帮顶!
回复

使用道具 举报

28

主题

85

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
273
金钱
273
注册时间
2015-3-23
在线时间
54 小时
发表于 2016-7-26 11:51:19 | 显示全部楼层
会不会内存没释放,再一次连内存溢出啦。。。不懂耶。
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
 楼主| 发表于 2016-7-27 10:10:44 | 显示全部楼层
没人会么?
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
 楼主| 发表于 2016-7-29 10:18:42 | 显示全部楼层
没人知道么?
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
 楼主| 发表于 2016-7-29 13:48:57 | 显示全部楼层
没人会么?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165352
金钱
165352
注册时间
2010-12-1
在线时间
2108 小时
发表于 2016-7-29 20:35:38 | 显示全部楼层
参考我们综合实验的实现机制
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 22:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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