首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >端到端延迟

端到端延迟
EN

Network Engineering用户
提问于 2018-07-22 03:37:39
回答 2查看 25K关注 0票数 6

我正在研究计算机网络自上而下的问题,并希望能对端到端的延迟计算有一些清晰的了解。在这一阶段,我们不考虑处理、传输或传播延迟。

代码语言:javascript
运行
复制
N = link
L = packet length 
R = transmission rate

端到端延迟是N*L/R (N串联链接,使用链路之间的存储和转发).

作者要求推广上述在N个链路上发送P包的公式。

我导出的解决方案是(N*L/R)*P

这是否一个合理的解决办法?

PS。这不是在家工作。

EN

回答 2

Network Engineering用户

回答已采纳

发布于 2018-07-22 06:50:25

因此,这假设所有的数据包都是相同的长度,所有的链路都是相同的带宽。

我认为你正在犯的一个错误是,你的公式着眼于单个数据包的端到端延迟,然后乘以数据包的数量。在这种情况下,第一个包将发送到端到端,然后第二个分组将发送端到端等。

实际上,许多数据包可以在任何时候在网络中传输。如果我们考虑的唯一延迟是序列化,则会发生以下情况:

  • 第一个数据包被序列化到第一个链路上。
  • 一旦第一个数据包被序列化到第一个链路上,由于我们只考虑序列化延迟,它就可以在第二个链路上开始序列化。
    • 同时,第二个数据包可以在第一个链路上开始序列化,它不能更快地开始,因为第一个链路在此之前一直在计时第一个数据包。

  • 在这个简单的模型中,第一和第二数据包分别在第二和第一链路上(分别)同时完成的序列化。
    • 第一个数据包现在可以在第三个链路上开始序列化。
    • 第二个数据包现在可以在第二个链路上开始序列化。
    • 第三个包现在可以在第一个链路上开始序列化。

  • 直到最后一个包被串行化到第一个链接为止。
  • 然后,每个数据包必须在每个剩余链路上序列化,直到到达最后一个链路为止。

所以说真的,你需要看一下在第一个链路上发送所有数据包所花费的时间,然后看看最后一个数据包遍历剩下的链接所花费的时间。

  • 因此,如果您认为(L/R)是通过一个链路传输一个包所需的时间。
  • 然后考虑到这些延迟中有P是通过第一个链路,一个接一个地传输所有数据包的。
  • 并且有(N-1)这些延迟来传送最后一个包在剩下的链路上。

那么这方面的公式是:

代码语言:javascript
运行
复制
(P + (N-1)) * (L/R)

注意:这个公式非常简单,假设没有传播延迟、节点处理延迟或队列延迟等。

票数 7
EN

Network Engineering用户

发布于 2019-11-03 03:55:55

t =N*L/R,第一个数据包到达目的地。

t =N*L/R +L/R,第二个包到达目的地。

t = N*L/R +L/R+L/R,第三个包到达目的地。

类似地,

t = N*L/R + (P-1)*L/RP第四包到达目的地。所以total delay = N*L/R + (P-1)*L/R = (N+P-1)*L/R

票数 1
EN
页面原文内容由Network Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://networkengineering.stackexchange.com/questions/51970

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档