我的小办公室有一个 30Mbit/s 的互联网连接,两三个人在上面工作。我们可以以高昂的成本获得两倍的带宽。
我想带宽升级会稍微改善所有与互联网相关的任务的延迟,从而稍微提高生产力。
我想根据每秒的流量数据来估计这次升级可以实现的生产力提升。是否有任何经验法则可用于此类计算?
例如,可以计算带宽达到最大值的频率。如果带宽每天达到 10 分钟的最大值,那么将带宽加倍可能会减少 5 分钟的等待时间(在最佳情况下)。显然延迟和带宽之间的关系比这更复杂。有没有办法更准确地进行这种估计?
我的小办公室有一个 30Mbit/s 的互联网连接,两三个人在上面工作。我们可以以高昂的成本获得两倍的带宽。
我想带宽升级会稍微改善所有与互联网相关的任务的延迟,从而稍微提高生产力。
我想根据每秒的流量数据来估计这次升级可以实现的生产力提升。是否有任何经验法则可用于此类计算?
例如,可以计算带宽达到最大值的频率。如果带宽每天达到 10 分钟的最大值,那么将带宽加倍可能会减少 5 分钟的等待时间(在最佳情况下)。显然延迟和带宽之间的关系比这更复杂。有没有办法更准确地进行这种估计?
我从 Cisco CCIE 那里学到了一条经验法则,他说,如果一个链路在一个工作日内的平均利用率超过 50%,您应该考虑升级连接。
这是计算链接利用率和效率的官方方法:
链路利用率只是特定链路上的平均流量,表示为总链路容量的百分比。链路效率是一个不太常用的术语,它被定义为传输一帧(或多帧)数据所花费的时间与传输和确认一帧或多帧数据所花费的总时间之比:
Utilization (U) or Efficiency=(Time taken to transmit frame)/(Total transmission time)
具有停止等待 ARQ 的链路的效率可以确定如下: 如果传输一个帧或数据块所花费的时间是 tf,则帧和确认的传播延迟都是 td,传输一个数据块所花费的时间确认为 ta,总处理时间为 tp,则:
U = (tf) / (tf + ta + tp + 2td)
在许多情况下,可以忽略确认传输时间和处理时间,给出:
U = (tf) / (tf + 2td) = (1) / (1 + 2a) ; where a = td / tf
例子:
连接两台计算机的点对点卫星传输链路采用停止等待ARQ策略,具有以下特点:
Data transmission rate = 64 kbps
Frame size, n = 2048 bytes
Information bytes per frame, k = 2043 bytes
Propagation delay, td = 180 ms
Acknowledgement size, ta = 10 bytes
Round-trip processing delay, tp = 50 ms
确定吞吐量和链路效率。
解决方案:
Frame transmission time tf = (2048 x 8) / (64000) = 0.256 sec.
Acknowledgement transmission time ta = (10 x 8) / (64000) = 1.25 msec.
Total time to transmit frame and receive an acknowledgement is:
tf + ta + tp + 2td = 0.256 + 0.00125 + 0.05 + 0.36 = 0.66725 sec.
Throughput k = (2043 x 8) / (0.66725) = 24.494 Kbps.
请注意,由此产生的吞吐量大大低于 64 kbps 的传输速率。
现在可以计算链路效率(Utilization),忽略 ta 和 tp,如下所示:
a = (td) / (tf) = (0.18) / (0.256) = 0.7
U = (1) / (1 + 2a) = (1) / (1 + 1.4) = 41.67 %.
资料来源: https ://uomustansiriyah.edu.iq/media/lectures/5/5_2017_03_18!09_07_27_PM.pdf