web-dev-qa-db-ja.com

複数のリンクを持つ2つのホスト間のパスのスループットを決定する方法

検索中に似たような質問を見たので、ここがこの質問をするのに最も適切な場所かもしれないと思いました。

複数のリンクがある場合のデータ転送パスのスループットを計算する方法がわかりません。 2つのホスト間に次の接続があるとします。

A <----- L1 -----> * <----- L2 -----> * <----- L3 -----> B

問題は、3つのリンクのそれぞれがKbps単位の特定の転送速度によって特徴付けられることを示しています。問題の説明では、指定されたパスのスループットの計算が求められ、このスループットの計算が与えられると、任意の長さのファイルを転送するために必要な時間も決定されます。

L1 = 100Kpbs、L2 = 200Kbps、L3 = 300Kbpsがあると仮定します。

最初に、ホストAからホストBに1ビットを転送するのにかかる合計時間を調べてこの問題に取り組みました。これは、各リンクの転送速度の逆数の合計になります。

  • time_taken = #bits_to_transfer *(1/L1 + 1/L2 + 1/L3)

ただし、上記で指定したこの場合、これは同等の転送速度で54.5Kbpsになります。私たち少なくとものデータ転送速度は100Kpbsであるため、この結論は明らかに間違っています。少し前に戻って、リンク全体を次のタイプの単一の連続リンクと見なす場合、これが確かに正しい答えであることに気付きました。

A <----- L_equivalent -----> B

しかし、それは私たちが持っているものではありません。物理的な空間には、実際には3つの異なるリンクパスがあるからです。そのため、複数のビットが異なるリンクを介して同時に送信される可能性があることを期待する必要があります。上記の解決策は、任意の時点でAからBに1ビットを転送し、前者が到着した後にのみ次のビットを送信する場合に正しいでしょう。


tl; dr

実際には、最初にAからL1を介してビットを送信し、次にL1が同じビットをL2に送信するときに、別のビットをL1に転送してそれに応じて続行する場合はありません。それでは、AとBの間のこのパスのスループットは、最も遅いリンクである100Kbpsの転送速度にすぎないというのは正しい結論ですか?

2
sherrellbc

あなたが結論することは理にかなっています。パスのどこかにボトルネックがあります-L1 = 100Kpbsあなたの例では。したがって、最大スループットはこの最低値を超えることはありません。

実際の例は、ポート速度100Mb/sでアクセスレベルスイッチに接続された企業のワークステーションです。このスイッチは、1Gb/sの速度で配電レベルスイッチに接続されています。ディストリビューションスイッチは、10Gb/s対応の接続でコアスイッチに接続されています。

ここでワークステーションを見てみましょう。ラインのどこかに10Gb/s対応の接続があるにもかかわらず、接続速度は100Mb/sのままです。

1
VL-80

リンクが使用されていないシナリオでは、最大で最小容量のリンクのスループットが得られます。したがって、L1、つまり100Kbpsです。これが、100Mbpsのケーブルインターネットリンクがある場合、あなたと目的地の間のリンクが混雑している、または小さいために、それよりはるかに少ないことが多い理由です。

また、スループットと速度(または遅延)を混同しているようです。スループットは、特定の間隔(kbps)でのパケット数と、特定の宛先にパケットが到達する速度を示す速度です。衛星リンクのスループットは優れていますが、距離が関係しているため、遅延がひどいです。

1
Dude named Ben