搜索
bottom↓
回复: 24

分享个ucos tcpip协议栈的诡异情况供大家了解

[复制链接]

出0入90汤圆

发表于 2020-3-21 15:26:38 | 显示全部楼层 |阅读模式
最近ucos以及它的绝大部分组件都全部开源了。作为老牌RTOS,作为一个上过火星的操作系统。后面估计也会有不少朋友会重新使用这个历史悠久的RTOS。
那么,作为ucos的网络协议栈组件的uc tcpip,我有近1年的使用经验。我是在zynq上面使用ucos和uc tcpip的,在此之前它是以lib的形式提供的。

下面我给大家分享一个诡异的使用情况供大家了解。
我们的设备已经陆续研发1年,在这1年中,网络设备都是正常使用的,但是在1月底的时候。因为小批量的,于是几十台设备放到一起运行。
几次意外事件发现,当服务器断网后一段时间再恢复后,总会有些设备和服务器断开连接,必须断电重启。

最近我们使用十台设备以及多个交换机、路由器,用各种组网的形式,找出了这个问题出现的情况了。
再服务器于多级交换机和设备连接的时候,如果服务器所处的位置在拓扑图里面比设备要低的时候,就会出现这种诡异的情况 “拔掉服务器的网线,然后十台设备会在10分钟左右陆续出现ping不通,30分钟后基本都ping不通

如果使用其他的网络拓扑结构,那么所有的异常情况,不管是怎么操作,设备都会一切正常,很耐操。只有在上面那种情况下才会出现。
感觉就是uc tcpip在这种结构下,底层的程序死掉了。连ping都ping不通。由于这个是lib文件的。所以也没法验证这个时候它的底层2个线程里面到底是怎么回事。所有的网络操作返回值都说是正常的。

所以大家要注意了,当然你们运气好的是这个uc tcpip现在已经开源了。你们要是运气不好遇到了类似的情况还有机会解决。
我们这边准备改成lwip了。也不知道lwip会不会出现什么诡异的问题。至少半个月的工作量。

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入90汤圆

 楼主| 发表于 2020-3-21 17:40:01 | 显示全部楼层
是为了加快产品开发。如果一开始多花点时间上linux,现在可能就根本没有这些破事了。中间开发确实也很顺利很快。中间开发了3个版本。分别用于不同场合。
这一代的才发现这种问题。

出0入90汤圆

 楼主| 发表于 2020-3-21 22:39:42 | 显示全部楼层
guxingganyue 发表于 2020-3-21 22:19
如果服务器所处的位置在拓扑图里面比设备要低的时候  
这个 低 怎么理解啊 ...

好比1级交换机下面挂2个交换机。然后交换机下面再挂2个交换机。然后再挂2个交换机。服务器在最下面。设备放在上面的交换机。
这个时候就会出问题。

如果服务器所处交换机等级比所有设备都高,就没有任何问题。

出0入90汤圆

 楼主| 发表于 2020-3-21 22:40:13 | 显示全部楼层
ddcour 发表于 2020-3-21 18:37
上过火星的ucos组件比不上一直开源的lwip么?

ucos上过火星,但是uc tcpip不一定上过啊。

出0入90汤圆

 楼主| 发表于 2020-3-22 21:12:44 | 显示全部楼层
多谢各位的回复,有一些还是比较有启发的。
不过,我的问题和你们的都不一样,我正常通信都是没有问题的。问题是在某种组网模式下,拔掉服务器的网线后,才会出现这样的情况。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 21:38

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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