zoukankan      html  css  js  c++  java
  • 排队时延(Queuing delay)

    网络时延的构成

    Network delay including four parts:

    Processing delay - time routers take to process the packet header.

    Queuing delay - time the packet spends in routing queues

    Transmission delay - time it takes to push the packet's bits onto the link.

    Propagation delay - time for a signal to reach its destination.

    本文关注的是其中的排队时延(Queuing delay)。

    为什么会有排队时延?

    A:When packets arrive at a router, they have to be processed and transmitted.

    A router can only process one packet at a time. If packets arrive faster than the router

    can process them the router puts them into the queue until it can get around to

    transmitting them.

    As a queue begins to fill up due to traffic arriving faster than it can be processed,

    the amount of delay a particular packet experiences traversing the queue increases.

    数据报的到达速度 > 路由器的处理速度,就会将数据报暂存起来,等待处理。

    排队时延的影响因素?

    路由器利用率 = 每秒到达的数据报个数 /  路由器每秒能处理的数据报个数。

    路由缓存大小:和最大排队时延成比例。

     

    几个参数

    路由器的传输速度(Transmission rate),10Mbps / 100Mbps / 1000Mbps / 10Gbps。

    路由器的服务速度(Service rate):Transmission rate / average packet size,路由器每秒最多能处理的数据报个数。

    数据报的到达速度(Arrival rate):每秒有多少个数据报到达路由器。

    路由器利用率(Resource utilization):Arrival rate / Service rate,表示路由器的使用情况。

    T:路由器的传输速度。

    S:路由器的服务速度。

    A:数据报的到达速度。

    U:路由器的利用率。

    P:数据报的平均大小。

    D:排队时延。

    时延曲线(delay curve)可以用以下函数来表示:

    几个结论:

    (1) T和A相同时,P越小,D越小。

    同一条链路,发送10个小包,和发送10个大包相比,小包经历的排队时延小。

    当然,这个时候10个小包所占用的带宽也少。

    (2) 路由器的利用率

    对于高优先级、低延迟的流来说,路由器的利用率不能太高。

    对于低优先级、时延敏感度低的流来说,路由器的利用率不受限制。

    从上图可以看到:

    U <= 80%,D随着U的增长而缓慢增长。

    U > 80%,D随着U的曾展而剧烈增长。

    因此,要保证排队时延不剧烈增长,U要小于80%,即数据报的发送速度 < 0.8 * 路由器传输速度。

    例如,对于一个1000Mbps的路由器来说,数据报的发送速度在800Mbps以下为佳。

    当数据报的发送速度超过800Mbps时,排队时延就会猛涨,响应也巨慢。

    (3) 最大排队时延

    最大排队时延和路由缓存大小是成比例的。

    如果使用了一个很大的路由缓存,则当排队时延很大的时候,也不会发生丢包,这显然是不合理的。

    当路由缓存满了的时候,路由器就会把数据报丢掉,这就是拥塞丢包。

    这个时候,路由器所经受的排队时延应该是最大的。

    同时,路由的变化也会导致时延的变化。

    Reference

    [1] http://www.hill2dot0.com/wiki/index.php?title=Queuing_delay

    [2] http://en.wikipedia.org/wiki/Queuing_delay#cite_note-4

  • 相关阅读:
    Qt:移动无边框窗体(使用Windows的SendMessage)
    github atom 试用
    ENode框架Conference案例转载
    技术
    NET 领域驱动设计实战系列总结
    mac 配置Python集成开发环境
    User、Role、Permission数据库设计ABP
    Oracle 树操作
    Oracle 用户权限管理方法
    Web Api 2, Oracle and Entity Framework
  • 原文地址:https://www.cnblogs.com/aiwz/p/6333300.html
Copyright © 2011-2022 走看看