我连续发送多个 udp 数据包到远程电脑。问题是,如果数据量太大,通道之间的某些设备会遇到缓冲区溢出。我打算限制/节流/控制 udp 数据包的发送速率。有人可以给我一些关于如何找到最佳速率发送间隔的指导吗?
顺便说一句,请停止建议使用 tcp 而不是 udp。目标不是可靠地发送数据,而是测量最大吞吐量。
反复试验。观点。
- 建立第二个连接(基于 UDP 或 TCP),仅用于发送控制命令。
- 向那里发送有关丢失数据包等的统计信息。然后双方可以决定数据速率是否太高。
- 可能先降低数据速率,然后提高数据速率,直到看到丢失的数据包。
永远不要(!)假设所有数据包都会到达。意味着:您需要(!)一种方法来查找丢失的数据包。即使在完美的条件下,数据包有时也会丢失。
如果损失可以接受并且只应该最小化,那么统计方法几乎是我认为处理这个问题的唯一方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)