yick 发表于 2015-10-27 11:23:50

请试着分析一下文件大小与网络传输之间的关系

最近在测试一款产品,主要是基于云端服务器和ARM平台之间的测试。
即云端服务器和ARM之间的通信,是通过TCP/IP网络传输和SPI的网络传输,然后接到设备端外接的SDIO口的Wifi模块。

现象:
然后测试就发现在带宽比较小的时候,似乎只能下载小文件,而一旦下载大文件,
设备就会死掉(可能死在某个中断里了)。如果带宽比较大的时候,大小文件都没有太大问题。

猜测及疑问(请坛友帮我分析解答一下):
1.TCP/IP的传输是数据包的传输,那么每个数据包的字节大小是多少,是由工程师设定的吗?它的大小与带宽之间的传输时间有没有关系?
2.SDIO_的Wifi模块,和芯片及SD卡之间的PCB图是什么样子的?是wifi模块->芯片->SD卡吗?
3.上面现象中说的‘小文件可以传输,大文件下载到一半’的时候,机器就死机,很明显是机器这边没有处理好服务器端的数据,也就是说在
特定的时间内,当大文件还在传输的时候,已经过了CPU处理的时间了。也就是说CPU的主频或者定时器的频率、及TCP/IP的传输没有处理
好吗?

PS:我没有源码也没做过这方面工作,只能凭着以往的经验来猜测这些,所以很多都是瞎猜的,有不对的还望各位不要介意。

yick 发表于 2015-10-27 12:23:58

不要沉,顶一个。

yick 发表于 2015-10-27 15:27:59

没人知道吗?

kayatsl 发表于 2015-10-28 10:46:41

1.TCP/IP的传输是数据包的传输,那么每个数据包的字节大小是多少,是由工程师设定的吗?它的大小与带宽之间的传输时间有没有关系?

工程师, 路由, TCP的另一端 共同决定,与带宽和传输时间没关系.

2.SDIO_的Wifi模块,和芯片及SD卡之间的PCB图是什么样子的?是wifi模块->芯片->SD卡吗?

    对的

3.上面现象中说的‘小文件可以传输,大文件下载到一半’的时候,机器就死机,很明显是机器这边没有处理好服务器端的数据,也就是说在
特定的时间内,当大文件还在传输的时候,已经过了CPU处理的时间了。也就是说CPU的主频或者定时器的频率、及TCP/IP的传输没有处理
好吗?

   TCP是流协议, 会保证包顺序和包到达 , 卡死我猜测很可能两个原因,
   1. 是你写SD卡的地方有问题
   2. 你上面又提到SPI, 有提到SDIO , 我不知道你这几个设备是怎么接的 , 有没有共用总线,如有, 请考虑总线冲突.

yick 发表于 2015-10-28 13:08:35

kayatsl 发表于 2015-10-28 10:46
1.TCP/IP的传输是数据包的传输,那么每个数据包的字节大小是多少,是由工程师设定的吗?它的大小与带宽之间 ...

谢谢,总线冲突我也不知道,我没有源码。

yick 发表于 2015-10-29 09:22:14

这个没人知道了吗
页: [1]
查看完整版本: 请试着分析一下文件大小与网络传输之间的关系