【问题标题】:How can I calculate an optimal UDP packet size for a datastream?如何计算数据流的最佳 UDP 数据包大小?
【发布时间】:2011-02-18 10:16:12
【问题描述】:

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

更新

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

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

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

【问题讨论】:

  • 您可能正在寻找此类计算:sd.wareonearth.com/~phil/net/overhead,您还有多少带宽?
  • 假设是它的 802.11,因此使用 4、11、22 和 54 Mbps 数据速率,但我从另一所大学 (dutta.csc.ncsu.edu/csc570_fall08/wrap/hw3_sol.pdf) 找到了一个示例(问题 5)处理从另一个角度提出问题,但没有考虑误码率或数据率,当我在自己身上添加这些因素时,函数是双曲线的,所以我找不到最小值!赢不了!
  • 到目前为止,我已经尝试了 3 种数值方法(基于时间的假设设置距离无线电链路,以及基于如上所述的数据包大小,考虑和不考虑丢失和重传),除非有人想出任何好的方法想法,我出去了。 :( 感谢各位的尝试。

标签: udp network-protocols wireless ipv6


【解决方案1】:

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

考虑延迟要求,payload是如何生成的,是否需要等待足够的数据才能发送数据包,还是可以立即发送?

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

【讨论】:

  • 这正是我在现实生活中会做的,不幸的是大学不是现实生活。谢谢
【解决方案2】:

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

NS2SimPy 可以帮助您设计离散事件模拟以找到最佳条件,前提是您了解丢包方面的模型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-23
    • 2011-10-07
    • 2020-05-25
    • 2015-05-17
    • 2010-09-21
    • 2013-10-18
    • 2021-01-15
    相关资源
    最近更新 更多