我正在使用两个GPRS调制解调器(Siemens TC65)开发基于客户端/服务器的系统。应用程序从客户端向服务器发送相对较小的帧(每个128字节),反之亦然。最初我使用UDP连接(使用UDPDatagramConnection),但后来我决定改为TCP连接(使用SocketConnection和ServerSocketConnection)并比较两者之间的延迟。
我相隔4秒左右进行了40次测试,使用完全相同的应用程序(仅更改连接方法)在一天的同一时间测量往返时间,以确保流量相似,令人惊讶的是我得到了结果如下:
我原以为UDP会更快,但TCP的平均速度是UDP的两倍。我无法证明这一点。我读了这样的线程 UDP vs TCP, how much faster is it? 他们提供帮助,但我不确定Neagle的算法是否与它有任何关系,因为我等待每一帧到达之后才发送下一帧。
我会提出任何证明这些结果的技巧。 在GPRS下进行连接还有什么影响吗?