求助:TCP透传丢包
Moderator: ESP_XCGuang
-
- Posts: 7
- Joined: Tue Feb 28, 2023 1:43 am
求助:TCP透传丢包
主机与ESP32C3-MINI1模组进行UART通信。开启透传模式,数据传输到服务器上。大概每100ms传输不到300个字节。一段时间后服务器老是解析出错,通过在服务器上抓包发现丢包引起。
波特率:750000
AT固件是基于最新的工程开启WBE配网指令编译后的版本。
如附件抓包图所示:
服务器一直请求2134571的包,然后也没有重传。
最后丢了这一包数据,服务器解析就出错了。
目前是已经按照指南里的提高WIFI吞吐量的方法,进行配置,将UART的缓冲区提高到16*1024了。也还是存在很大几率丢包。
是否还有其他方法能降低丢包率的。
有没有大佬帮忙看一下!!!
波特率:750000
AT固件是基于最新的工程开启WBE配网指令编译后的版本。
如附件抓包图所示:
服务器一直请求2134571的包,然后也没有重传。
最后丢了这一包数据,服务器解析就出错了。
目前是已经按照指南里的提高WIFI吞吐量的方法,进行配置,将UART的缓冲区提高到16*1024了。也还是存在很大几率丢包。
是否还有其他方法能降低丢包率的。
有没有大佬帮忙看一下!!!
- Attachments
-
- 附件抓包图
- ]DZ(M({L)[8KJ@LJ8B}~T13.png (58.51 KiB) Viewed 25490 times
-
- Posts: 7
- Joined: Tue Feb 28, 2023 1:43 am
Re: 求助:TCP透传丢包
充分测试几次之后发现,不是丢包的问题,是传输一段时间之后模组停止上传数据了,但与服务器的连接并未断开,还在与服务器进行应答,只是没有数据上传了,而我此时数据还是一直往模组发送的。
停止上传数据之前并无太大异常,就是经常有乱序包 。但是并不是一有乱序包就会停止上传数据。可否帮忙解答一下这个问题,不然这个项目很难进行下去了!!!
停止上传数据之前并无太大异常,就是经常有乱序包 。但是并不是一有乱序包就会停止上传数据。可否帮忙解答一下这个问题,不然这个项目很难进行下去了!!!
Re: 求助:TCP透传丢包
1. AT 版本信息可以提供下吗?(AT+GMR 命令查询)pengxinmin wrote: ↑Wed Mar 01, 2023 7:11 am充分测试几次之后发现,不是丢包的问题,是传输一段时间之后模组停止上传数据了,但与服务器的连接并未断开,还在与服务器进行应答,只是没有数据上传了,而我此时数据还是一直往模组发送的。
停止上传数据之前并无太大异常,就是经常有乱序包$ZLHBDR5D_4]TE$$1)AK]EC.png。但是并不是一有乱序包就会停止上传数据。可否帮忙解答一下这个问题,不然这个项目很难进行下去了!!!4{AA{DQ4U_1H_`E(YZ8M8_9.png
2. 有使用流控吗?(AT+UART_CUR 命令)
3. 可以把 TCPIP 的 log 打开(menuconfig 开启 Component Config ---> lwip ---> Enable lwip log 以及把 Component Config -----> log output 调整为 debug 模式),然后测试抓包并看下 log 是不是因为没有开流控,然后直接在 UART 那边挂了。
-
- Posts: 7
- Joined: Tue Feb 28, 2023 1:43 am
Re: 求助:TCP透传丢包
2.没有开启流控功能,开启流控是会对丢包有很大的改善吗。
1.当时那个固件是基于2.5.0的工程。然后按照指南文档里的5.4.1快速配置进行提高WiFi的吞吐性能。
后来我测试了官方固件2.4.2,数据会一直上传,只是会丢包。
然后我在2.4.2的基础工程上按照指南文档5.4.2的提示提高系统性能与UART的RX缓冲。数据也会一直上传,就是还是丢包。
3.想请教一下这个TCPIP 的 log,可以打印出丢包的信息吗。
目前还是存在丢包的问题。我的数据量理论上是1s中上传1K。按理应该不会频繁的丢包。
1.当时那个固件是基于2.5.0的工程。然后按照指南文档里的5.4.1快速配置进行提高WiFi的吞吐性能。
后来我测试了官方固件2.4.2,数据会一直上传,只是会丢包。
然后我在2.4.2的基础工程上按照指南文档5.4.2的提示提高系统性能与UART的RX缓冲。数据也会一直上传,就是还是丢包。
3.想请教一下这个TCPIP 的 log,可以打印出丢包的信息吗。
目前还是存在丢包的问题。我的数据量理论上是1s中上传1K。按理应该不会频繁的丢包。
-
- Posts: 7
- Joined: Tue Feb 28, 2023 1:43 am
Re: 求助:TCP透传丢包
好吧,今天又测试了一次,大概测了5个小时。最后我把门关起来了。可能WiFi信号弱了一点吧。最后又出现了不上传数据的情况。
在2.4.2的基础工程上按照指南文档5.4.2的提示提高系统性能与UART的RX缓冲。日志我再测试一下
在2.4.2的基础工程上按照指南文档5.4.2的提示提高系统性能与UART的RX缓冲。日志我再测试一下
-
- Posts: 7
- Joined: Tue Feb 28, 2023 1:43 am
Re: 求助:TCP透传丢包
日志显示connect fail,ret=-1
fd:58 errno:113 (Software caused connection abort)
tcp create 0 socket fail
麻烦看一下这是什么错误,因为什么引起的。 详情见附件txt文件。麻烦解答一下。
fd:58 errno:113 (Software caused connection abort)
tcp create 0 socket fail
麻烦看一下这是什么错误,因为什么引起的。 详情见附件txt文件。麻烦解答一下。
- Attachments
-
- SaveWindows2023_3_6_18-09-50.TXT
- (55.79 KiB) Downloaded 950 times
Re: 求助:TCP透传丢包
我有碰到跟你一样的问题,也没有解决。也是用了提高了吞吐量的方法,不知道会不会是提高了吞吐量导致的。但是这个ESP32模块能够接收数据,不过数据发了一阵之后就发不出来。
Re: 求助:TCP透传丢包
基本上可以认定跟加了增加吞吐量的那部分配置有关系,主要是wifi配置的改变引起。
Re: 求助:TCP透传丢包
你是参考 [如何提高 ESP-AT 吞吐性能][https://docs.espressif.com/projects/esp ... tml#esp-at] 修改了相关配置后编译 AT 固件测试出现了这个问题,使用默认的官方固件不会出现这个问题是吗?我正在尝试复现这个问题。
Re: 求助:TCP透传丢包
是的,在增加了那些部分之后,就会出现如果在透传模式下,如果tcp服务端断开链接之后再连上,会出现即使单片机那那边还在持续向esp32发数据,但是tcp服务端已经无法收到数据,看起来是esp32没有把透传数据发出去了,但是服务端数据可以发给esp32的情况。这个狠容易复现。
Who is online
Users browsing this forum: No registered users and 30 guests