0

如果我们考虑停止和等待协议,吞吐量如何受到影响。我假设停止和等待会增加自己的传输数据延迟。是否有相同的数学方程式?

4

2 回答 2

0

“数学方程式”是“延迟 = 延迟 + 等待时间”。我自己称它为三年级算术。

于 2013-09-20T00:03:52.140 回答
0

发送停止和/或等待的任何类型协议的数据吞吐量都会受到延迟的影响,因为数据块之间会引入延迟。这会显着影响使用小块大小的协议,但也会影响像 TCP 这样的窗口协议。

最终,数据块之间需要在服务器和主机之间来回发送的数据包越多,数据块越小,吞吐量就会受到影响。

例如,TFTP 以固定的 512 字节块发送数据,需要交换 6 个数据包(每侧 3 个)才能发送另一个数据块。因此,在 ping(往返)为 10 毫秒的连接上,发送块之间的延迟至少为 30 毫秒。这意味着可以在一秒钟内传送 33 个 512 字节的数据块,在不考虑任何丢失或其他开销的情况下,最大吞吐量约为 17KBps (136 Kbps),假设带宽不受限制。

现在考虑一个 ping 时间为 50ms 的场景,因此块传输之间发生 150ms 的等待时间,512 字节每秒 6.66 个块相当于 3.4 KBps,或者说 27.3 Kbps 是最大理论吞吐量,同样不考虑带宽和其他因素.

这里使用的公式是理论最大吞吐量 = 1 秒 / 块之间的延迟 * 块大小。

下面是与 TCP 相关的主题的好读物。

http://bradhedlund.com/2008/12/19/how-to-calculate-tcp-throughput-for-long-distance-links/

SMB aka Samba aka CIFS aka Windows File Transfer 可以很好地说明吞吐量因在 WAN 链接上使用聊天协议而降低的方式。这是使用较旧 Windows 网络的 VPN 环境中的常见问题。

于 2013-09-20T01:11:01.977 回答