ネットワーク上で発生する可能性のある並列処理の度合いを決定するものは何ですか?


7

私は、ネットワーク(LANとインターネットの両方)がトラフィックを処理する方法について詳しく学びたいと思っています。これの一部は並列​​性の問題です。

Speedtest.netのドキュメントでは、テストがどのように機能するかを説明する際に、実際のスレッドの構成を説明せずに、「最大4つのスレッド」を使用できることを述べています。

私の質問は、ネットワーク全体で発生する可能性のある並列処理の度合いを決定するものは何ですか?信号が宛先サーバーに到達したら、それはすべてそのサーバーのリソースと受信プログラム次第です。しかし、並列処理はネットワーク全体でどのように機能しますか?

たとえば、ネットワークインターフェイスカードは要求を受け取り、ケーブルを介してより迅速に転送するためにそれを分割しますか?それとも、すべてをより大きなチャンクにパッケージ化し、ルーター/スイッチにそれを行わせるだけですか?

具体的には、ビジネスネットワークの観点からこれを理解しようとしているので、ローカルケーブルモデムやローカルDSLアダプターなどについては心配していません。


2
非常に幅広いトピック。あなたが家に持っているDSLでは、それはあなたの家のモデムと遠端DSLAM(異なる周波数で送信される異なるシンボル)の間で非常に平行です。自宅のワイヤレスは並列です。10 GEを超えない限り、光イーサネットはシリアルです(そして、短距離マルチモードの10 GEでさえ、パラレルになる可能性があります)。パケットが実際にインターネットに到達すると、ECMPや802.1AXなどのさまざまなテクノロジーが並列化を導入しますが、単一のパケット内にはありません。うまくいけば、誰かがよりまとまりのある答えを考え出すことができます。
ytti

私は少し明確にしようと思います、それがローカルのセットアップにそれほど依存しているとは知りませんでした(私の考えでは、NICがそれを分割するのに役立つと思いました)。
Sean Long

ああ、これのどれも、並列性がネットワークにまったく見えないというspeedtestスレッドとは何の関係もありません。これは、パケットを押し出す遅いコードであり、遅いコードを相殺するために、同時に多くのコードを実行しますが、パケットレベルの並列処理は導入されません。
ytti

回答:


6

ネットワーク全体で発生する可能性のある並列処理の度合いを決定するものは何ですか?

いくつかのものをベースライン化しましょう...

Speedtest.netは、Webブラウザーとその帯域幅サーバーとの間にJavaScriptで4つの並列TCPソケットを設定します。Speedtest.netは、これらのソケットを介してバルクデータを転送し、結果を計測してスループット測定値を取得します。

4並列TCPストリームは、速度テスト間のパスでの遅延とパケット損失を克服するのに役立ちます...並列TCPストリームは、単一のTCPソケットよりもこれらの課題を克服するのに優れています... 方法の例については、このスーパーユーザーの回答を参照してくださいこれは、linuxコマンドラインからです。

ストリームが同じホスト間または異なるホスト間で並列であるかどうかは問題ではありません。イーサネットは数千の同時並列ストリームを処理できます...消費する帯域幅を超えて存在する並列ソケットの正確な数すら知りません。


5

あなたは主に10/100/1000イーサネットについて話していると思います。理解すべき重要な点は、イーサネットに関する限り、一度に送信できるフレームは1つだけであるということです(全二重で動作している場合、送信されるフレームと受信されるフレームは1つずつ)。常にNICを離れる複数のフレームという意味での「並列処理」はありません。ここで、バッファとキューについての議論が始まりますが、ここでは触れません。

ネットワークカードを使用するシステムは、多くの異なる場所(またはすべて同じ場所)に向かう、さまざまなトラフィックフローを維持することができます。ただし、同時にNICから離れることはありません。

詳細については、イーサネットに関するウィキペディアの記事を読むか、O'Reillyの書籍「イーサネット:決定版ガイド」をチェックすることをお勧めします。どちらも多くの関連ソースにリンクしています。


上記のコメントでyttiが指摘したように、これは、議論しているデータリンク/ネットワークテクノロジーによっても大きく異なる可能性があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.