我正在解决计算机网络自上而下方法中的问题,并希望对端到端延迟计算有所了解。在这个阶段,我们不考虑处理、传输或传播延迟。
N = link
L = packet length
R = transmission rate
端到端延迟是N*L/R
(N
串联链接,在链接之间使用存储转发)。
作者要求将上述公式推广到在 N 个链路上发送 P 个数据包。
我得出的解决方案是(N*L/R)*P
。
这是一个合理的解决方案吗?
附注。这不是在家工作。
我正在解决计算机网络自上而下方法中的问题,并希望对端到端延迟计算有所了解。在这个阶段,我们不考虑处理、传输或传播延迟。
N = link
L = packet length
R = transmission rate
端到端延迟是N*L/R
(N
串联链接,在链接之间使用存储转发)。
作者要求将上述公式推广到在 N 个链路上发送 P 个数据包。
我得出的解决方案是(N*L/R)*P
。
这是一个合理的解决方案吗?
附注。这不是在家工作。
因此,这假设所有数据包的长度相同并且所有链路的带宽相同。
我认为您犯的一个错误是您的公式查看单个数据包的端到端延迟,然后将其乘以数据包的数量。在这种情况下,第一个数据包将被端到端发送,然后第二个数据包将被端到端发送等。
在现实中,许多数据包可以在任何时候在网络内传输。如果我们考虑的唯一延迟是序列化,那么会发生以下情况:
所以实际上,您需要逐个查看通过第一个链接发送所有数据包所花费的时间,然后查看最后一个数据包遍历其余链接所花费的时间。
因此,如果您将 (L/R) 视为通过一条链路传输一个数据包所花费的时间。
然后考虑这些延迟中有 P 个延迟通过第一条链路逐个传输所有数据包
并且有 (N-1) 个这样的延迟来通过剩余的链路传输最后一个数据包
那么这个公式就是:
(P + (N-1)) * (L/R)
注意:这个公式非常简单,假设没有传播延迟、节点处理延迟或排队延迟等。
在t =N*L/R
第一次到达目的地。
在t =N*L/R +L/R
第二个数据包到达目的地。
在t = N*L/R +L/R+L/R
第 3 个数据包到达目的地。
相似地,
在t = N*L/R + (P-1)*L/R
第P
th 个数据包到达目的地。所以total delay = N*L/R + (P-1)*L/R = (N+P-1)*L/R