如何计算数据流的最佳UDP数据包大小?

时间:2010-05-12 01:35:28

标签: udp network-protocols wireless ipv6

使用UDP停止等待协议,通过IPv6连接所需吞吐量为1280 Kbps的数据源的短无线电链路,该区域内没有其他客户端或明显的噪声源。我怎样才能计算最佳数据包大小以最小化开销?

更新

我认为到目前为止显示我的工作是一个想法: IPv6有一个40字节的头,因此包括ACK响应,即每个数据包的80字节开销。 为了满足吞吐量要求,需要每秒发送1280个K / p数据包,其中p是数据包有效负载大小。

因此,根据我的计算,这意味着总开销为(1280 K / p)*(80),将其投入Wolfram会产生一个没有最小值的函数,因此没有“最佳”值。

我做了很多数学计算,试图将误码率误差计算到那里,但遇到了同样的事情;如果没有最小值,我该如何选择最佳值?

2 个答案:

答案 0 :(得分:1)

您最好的选择是使用网络模拟框架。这是一个难题,并没有一个简单的答案。

NS2SimPy可以帮助您设计离散事件模拟以找到最佳条件,如果您在数据包丢失方面了解您的模型。

答案 1 :(得分:0)

始终使用网络上可用的最大数据包大小,然后在部署中配置网络MTU以获得最可靠的设置。

考虑延迟要求,如何生成有效负载,是否需要在发送数据包之前等待足够的数据,还是可以立即发送?

无线电信道已经针对低噪声包进行了优化,您通常会有其他实施要求,例如电源要求:批量发送或轻载连续负载。