12

ホストとスイッチの間にリンクがあります。

リンクには帯域幅と遅延があります。ホストAからスイッチ1に転送される2パケット(サイズ1KB)の時間を計算するにはどうすればよいですか?

これが図です(私は最初のリンクについて話しています)

レイテンシーと帯域幅

注:これらの値について手動で計算したいだけです。これらの問題を計算するための原則/法則を知りたいです。

4

2 に答える 2

15
Propagation time = (Frame Serialization Time) 
                  + (Link Media Delay) 
                  + (Queueing Delay) 
                  + (Node Processing Delay - if known)

数式:

  • 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
  • Q: キューの深さ (ビット); 注: リンクが混雑していない場合、キューの深さはありません

あなたの質問に適用する:

ホスト 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
于 2011-12-30T18:52:47.857 に答える
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>

結論:

0.04 + 2000 / 250000 = 0.048 = 48ms<br>

すべての単位をバイトと秒に変換したことに注意してください。これにより、計算は意味のあるものになります。
これは、大きなパケットの場合により正確です。小さいパケットの場合、実数は大きくなります。

于 2011-12-30T19:54:12.823 に答える