2014-07-21 36 views
1

我需要为每个Wifi发送两个双精度值和一个整数值。UDP与TCP:发送小数据

我需要大约每秒25包。 如果其中一个失去了它的问题。但绝不应该发生,25人中有10人会迷路。

这可能吗?

你推荐使用什么? UDP或TCP?

+1

UDP没有保证包将被交付,但头比TCP小。它也没有握手或确认。我不认为这个问题是相关的。你应该自己选择。您可以检查您的要求,优先考虑它们,然后根据规格(带宽,可靠性,速度等)做出选择。我会说UDP可以完成这项工作,除非有高包丢失。 – razvanz

回答

1

Wifi中数据包丢失的概率实际上取决于许多因素:设备,距离接入点的距离,对等点的活动等等。

40%的数据包丢失(10/25)非常极端,但可能发生在右侧(实际上:错误)设置。

你没有提到在你的系统中使用TCP有什么影响。开销是一个问题吗?如果没有 - 我会建议使用TCP,直到证明需要额外的性能增益,然后才考虑转移到UDP。

避免“过早优化”的种类。

+0

用于检查发件人为安全功能的TCP。但这不是必要的。但是如果TCP速度很快,那么我宁愿使用这个。 – brutus

+0

定期发送25个数据包的网络本身不应该有问题。它主要是可以限制它的软件。只是测试它。 –

0

你差不多不能使用TCP,因为单个数据包丢失将触发等待和重传,需要几秒钟。单个丢失的数据包将完全中断您的消息流。