在假设数据包丢失之前,我应该重传多少次?

时间:2011-06-13 22:55:09

标签: networking protocols custom-protocol

我一直在创建一个类似于TCP的可靠网络协议,并且想知道重新传输阈值的一个好的默认值应该在数据包上(重新发送数据包的次数,然后再假设连接是破碎)。如何在网络上找到最佳重试次数?也;并非所有网络都具有相同的可靠性,因此我认为这种“最佳”值会因网络而异。有没有一种很好的方法来计算最佳重试次数?也;重试前我应该等多少毫秒?

2 个答案:

答案 0 :(得分:1)

这个问题无法回答,因为必须考虑很多现实世界的复杂性。

如果需要TCP,请使用TCP。如果你想为传输层设计一个自定义协议,你将会比编写成TCP的40年累积经验更糟糕。

如果你不看现有的文献,你将会错过一百个设计考虑因素,这些考虑因素在你坐在办公桌前是不会发生的。

答案 1 :(得分:0)

我最终允许应用程序设置此值,默认值为5次重试。在我们的测试场景中,这似乎适用于大量网络。