at_device icon indicating copy to clipboard operation
at_device copied to clipboard

ec200x 4G模块直吐模式导致数据丢失严重

Open largesun opened this issue 2 years ago • 2 comments

在调试移远EC600N模块时发现,at socket接收大量数据时,出现内存分配失败的现象,后面跟踪发现底层使用的直吐模式,有数据过来时mcu直接calloc缓存,当数据量大点时,比如下载几十KB或者更大的文件时,大量数据直接挤爆mcu的内存,导致出现因内存直接丢弃数据,建议使用模块的缓存模式和QIRD命令实现底层的at_socket,提高可靠性

largesun avatar May 07 '22 09:05 largesun

模块缓存也是有限的,使用缓存模式并不能解决数据积压问题,还可能会引入数据延迟问题和遗漏问题。

qiyongzhong0 avatar Jun 07 '23 09:06 qiyongzhong0

传输大量数据一般都是在传输协议上做控制,比如服务器每发送几KB就等待MCU处理确认,MCU处理完一帧服务器再发下一帧。每次发几KB可以取决于应用接收缓存。MCU SRAM大接收缓存就可以开大点。

yangpengya avatar Dec 26 '23 07:12 yangpengya