如何根据延迟和带宽计算数据包时间

Mhd*_*wan 12 networking latency communication packets switching

我在主机和交换机之间有一个链接.

该链路具有带宽和延迟.如何计算从主机A传输到交换机1的2个数据包(大小为1KB)的时间?

这是图(我说的是第一个链接)

延迟和带宽

注意:我只想手动计算这些值,我想知道计算这些问题的原则/规律.

Mik*_*ton 15

Propagation time = (Frame Serialization Time) 
                  + (Link Media Delay) 
                  + (Queueing Delay) 
                  + (Node Processing Delay - if known)
Run Code Online (Sandbox Code Playgroud)

公式:

  • Frame Serialization Time = S/R
  • Link Media Delay = D/p
  • Queueing Delay = Q / R
  • 通常指定或测量节点处理延迟

可变解码器:

  • R:链接数据速率(位/秒)
  • S:数据包大小(位)
  • D:链接距离(米)
  • P处理延迟(秒)
  • p:中等传播速度(米/秒)
    • 铜的速度是210*10**6
    • 光纤速度为300*10**6
  • 问:队列深度(比特); 注意:如果链接没有拥塞,则没有队列深度

适用于您的问题:

我只计算主机A和交换机1之间链路的信息:

Frame Serialization Time =  Packet_size_bits / Link_data_rate_bps
                         = 2*1024*8 / (2*10**6)
                         = 0.00819 [seconds]
Link Media Delay         = 0.04 seconds [from diagram: 40ms]
Queueing Delay           = 0.0 [assume no congestion]
Node Processing Delay    = 0.0 [Host A had nothing specified for delay]
-----------------------------------------------------------------------
               Total     = 0.00819 + 0.04 + 0.0 + 0.0
                         = 0.04819 seconds
                         = 48.2 milliseconds for two 1KB packets to go from 
                                             Host A to Switch 1
Run Code Online (Sandbox Code Playgroud)

  • @MhdSyrwan,你有哪些参数?排队延迟?处理延迟与处理延迟属于同一类别.如果您没有参数,请将等式中的值设为零 (2认同)
  • 是的,延迟和链接媒体延迟是一回事. (2认同)

ugo*_*ren 6

相当粗略,公式是:

LATENCY + SIZE / THROUGHPUT<br>
In your example:<br>
LATENCY = 40ms = 0.04<br>
SIZE = 1000*2<br>
THGOUGHPUT = 2Mbps = 250,000 Bytes/second<br>
Run Code Online (Sandbox Code Playgroud)

底线:

0.04 + 2000 / 250000 = 0.048 = 48ms<br>
Run Code Online (Sandbox Code Playgroud)

请注意,我将所有单位转换为字节和秒,因此计算是有意义的.
这对于大型数据包更准确.对于小数据包,实数更大.