IEC104规约的秘密之十五----文件传输慢的原因
104在用于终端用4G无线与主站进行通讯的业务中,其中有传告警图片和告警小视频的需求。
但在实际应用中,最后只能用于传输图片,小视频就别想了。就连传输一个几百k的图片都需要几分钟。104文件传输怎么会这么慢?
如下图,分析过104文件传输的报文,将一个文件传输的结束时间去起始时间得到传输时间,然后用文件长度除以传输时间,我们看到速度大概是2.5kByte/s。速度真是惨不忍睹,根本无法传输更大的文件或视频,否则不仅等待时间太长,而且稍微中断还得进行断点续传,断点续传再做得差点,文件就根本送不上去了。
分析过各种原因,比如4G速度慢,但手机怎么这么快。APN通道慢?报文加解密慢?安全网关?防火墙?
但最终都说是因为104传输文件慢。
我们来分析以下104传输文件,104是平衡传输,不是一问一答的规约。虽然需要帧确认,但我们可以将k,w调大一点,则可以保证子站可以源源不断的将报文送出去,中间可以不用停顿。每一帧的大小最大只能是255,这个是规约的限制,其中非文件自己的损耗我们可以计算以下:
其中非文件内容的长度如上图红框,一共有27个字节,报文总长255,因此损耗是27/255=11%。就是说文件传输大约是9折。
那104文件传输到底慢在什么地方,这个问题一直困扰我很久了。昨天终于得到了解答,这个是在研究4G模块时发现的,设备和4G模块之间是用串口进行通讯的!!!!最大速度是115200,也就是最大只有11k的速度。这个速度怎么能让文件的速度提上去呢?就是后面用5G也不行。
难道没有解决办法了,问了AI后,原来4G模块还有其他的接口,比如说USB,可以将速度提上去,只是价格高点而已。手机这么快原来是这样!
最终原因是设备本身硬件的原因,不能将锅让104来背。