ネットワーク スループットの測定


Measuring_network_throughput

は、ネットワーク スループットの測定という名前でWikibooksに正常にインポートされました。このページを百科事典の記事に書き直すことができる場合は、そうしてこのメ​​ッセージを削除するか、{{ wikibooks }} を使用してウィキブックへのリンクを追加して
ネットワークのスループットは、さまざまなプラットフォームで使用できるさまざまなツールを使用して測定できます。、これらのツールが測定する目的の背後にある理論と、これらの測定に関する問題について説明します。
ネットワークのスループットを測定する理由。多くの場合、通信リンクまたはネットワーク アクセスの最大データ スループットをビット/秒で測定することに関心が測定を実行する一般的な方法は、あるシステムから別のシステムに「大きな」ファイルを転送し、ファイルの転送またはコピーを完了するのに必要な時間を測定することです。次に、ファイル サイズを時間で割ってスループットを計算し、メガビット、キロビット、またはビット/秒でスループットを取得します。
残念ながら、このような演習の結果は、多くの場合、理論上の最大データ スループットを下回るグッドプットとなり、通信リンクが正しく動作していないと人々が信じるようになります。実際、レイテンシー、TCP 受信ウィンドウのサイズ、システムの制限など、伝送オーバーヘッドに加えて、スループットで説明される多くのオーバーヘッドがつまり、計算されたグッドプットは、達成可能な最大スループットを反映し
コンテンツ
1 理論: 短いまとめ
2 帯域幅テスト ソフトウェア
3 命名法
3.1 接尾辞の混乱と一貫性のない使用
4 圧縮
5 オーバーヘッドとデータ形式
5.1 HDLC 5.2 PPP 5.3 イーサネット 5.4 その他の低レベル プロトコル
5.4.1 フレームリレー
5.4.2 ATM
5.4.3 MPLS
6 高レベルのプロトコル
7 スループットの測定に使用できるツール
8 こちらもご覧ください
9 参考文献
10 外部リンク

理論: 短いまとめ
最大帯域幅は次のように計算できます: T 時間r o
あなた g 時間 p あなたt ≤ R W I N R T T
{ mathrm {スループット} leq {frac {mathrm {RWIN} }{mathrm {RTT} }},!}

ここで、RWIN は TCP 受信ウィンドウ、RTT はパスの往復時間です。TCP ウィンドウ スケール オプションがない場合の最大 TCP ウィンドウ サイズは 65,535バイトです。例: 最大帯域幅 = 65,535 バイト / 0.220 秒 = 297886.36 B/秒 * 8 = 2.383 Mビット/秒。これらのエンドポイント間の単一の TCP 接続では、契約帯域幅がそれより大きくても、テストされる帯域幅は 2.376 Mbit/s に制限されます。

帯域幅テスト ソフトウェア
帯域幅テスト ソフトウェアは、ネットワークまたはインターネット接続の最大帯域幅を決定するために使用されます。これは通常、一定期間内に最大量のデータをダウンロードまたはアップロードしようとするか、最小時間内に一定量のデータをダウンロードまたはアップロードしようとすることによって行われます。このため、帯域幅テストを実行すると、インターネット接続を介したインターネット送信が遅延し、データ料金が高騰する可能性が

命名法
ビット レート(データレート単位)
名前
シンボル
多数
ビット/秒
ビット/秒1 1
メトリック プレフィックス( SI )
キロビット/秒
キロビット/秒10 3 1000 1
毎秒メガビット
メガビット/秒10 6 1000 2
毎秒ギガビット
ギガビット/秒10 9 1000 3
テラビット/秒
テラビット/秒10 12 1000 4
バイナリ プレフィックス( IEC 80000-13 )
キビビット/秒
キビット/秒2 10 1024 1
毎秒メビビット
ミビット/秒2 20 1024 2
ギビビット/秒
ギガビット/秒2 30 1024 3
毎秒テビビットTibit/s 2 40 1024 4
桁数 (データ)
通信リンクのスループットは、1 秒あたりのビット数 (bit/s)、1 秒あたりのキロビット数 (kbit/s)、1 秒あたりのメガビット数 (Mbit/s)、および 1 秒あたりのギガビット数 (Gbit/s) で測定されます。このアプリケーションでは、キロ、メガ、およびギガは、 1,000 (キロ)、1,000,000 (メガ)、および 1,000,000,000 (ギガ)による乗算を示す標準のSIプレフィックスです。
通常、ファイル サイズはバイト単位で測定されます。通常はキロバイト、メガバイト、ギガバイトで、1 バイトは 8 ビットです。最新の教科書では、1998 年の国際電気標準会議(IEC) 規格に従って、1 キロバイトは 1,000 バイト、1 メガバイトは 1,000,000 バイトなどと定義されています。ただし、Windows システムで採用されている規則では、1 キロバイトを 1,024 (または 2 10 ) バイトとして定義し、これは 1 kibibyteに相当し ます。同様に、「1 メガバイト」のファイル サイズは 1,024 × 1,024 バイトであり、1メビバイトに等しい)、「1 ギガバイト」は 1,024 × 1,024 × 1,024 バイト = 1ギビバイト)。

接尾辞の混乱と一貫性のない使用
よく使われる表現を省略して表現するのは普通のことです。ファイル サイズについては、「64 k」ファイル (64 キロバイトを意味する) または「100 メガ」ファイル (100 メガバイトを意味する) があると誰かが言うのが普通です。回線のビット レートについて話すとき、人々はスループット、帯域幅、速度という用語を同じ意味で使用し、回線を「64 k」回線または「2 メガ」回線と呼びます。つまり、64 kbit/s または 2 Mbit/s を意味します。 s (接続帯域幅のリストも参照してください)。ただし、「64 k」回線は「64 k」ファイルを 1 秒で送信しません。これは、電気通信やコンピューティングに不慣れな人にとっては明らかではない可能性があるため、誤解が生じることが実際には、64 キロバイトのファイルは 64 × 1,024 × 8 ビットのサイズであり、64 k 回線は 64 × 1,000 ビット/秒のレートでビットを送信するため、64 キロバイトのファイルを 64 回線で送信するのにかかる時間はk 回路は、少なくとも (64 × 1,024 × 8)/(64 × 1,000) 秒になり、8.192 秒になります。

圧縮
一部の機器では、送信時にデータを圧縮することで問題を改善できます。これは、ほとんどのアナログモデムといくつかの一般的なオペレーティング システムの機能です。64kのファイルを圧縮して圧縮できれば、送信にかかる時間を短縮できます。これはユーザーには見えないように実行できるため、圧縮率の高いファイルは予想よりもかなり速く送信される可能性がこの「目に見えない」圧縮は簡単に無効にできないため、ファイルを使用してスループットを測定し、送信時間を計る場合は、圧縮できないファイルを使用する必要が通常、これはランダム データのファイルを使用して行われます。これは、真にランダムに近づくほど圧縮が難しくなります。
データを圧縮できないと仮定すると、64 キロビット/秒の通信リンクで 64 キロバイトのファイルを送信するのに 8.192 秒は理論上の最小時間であり、実際には達成できません。これは、接続の両端でデータの一貫したビューが得られるように、合意された方法でデータをフォーマットするために使用されるオーバーヘッドの影響によるものです。
圧縮ファイルの送信に関して、すぐには明らかでない問題が少なくとも 2 つ
圧縮によってネットワーク自体のスループットが向上するわけではありません。エンド ツー エンド (サーバーからクライアント) の観点から見ると、圧縮によってスループットが向上します。これは、ファイルの圧縮により、同じ伝送量の情報量が増加するためです。
サーバーとクライアントでファイルを圧縮すると、両端でより多くのプロセッサ リソースが必要になります。ファイルがまだ圧縮されていない場合、サーバーはプロセッサを使用してファイルを圧縮する必要がクライアントは、受信時にファイルを解凍する必要がこれは、エンド ツー エンドのスループットを向上させるための費用 (サーバーとクライアントにとって) と見なすことができます (ただし、ネットワーク自体のスループットは変化していません) 。

オーバーヘッドとデータ形式
多くの人が使用する一般的な通信リンクは、非同期スタート/ストップ、または単に「非同期」のシリアル リンクです。自宅またはオフィスのコンピュータに外部モデムが接続されている場合、接続が非同期シリアル接続を介している可能性がその利点は、シンプルであることです。送信、受信、およびシグナル グラウンド (またはシグナル コモン) の 3 本のワイヤのみを使用して実装できます。RS232インターフェイスでは、アイドル状態の接続に継続的に負の電圧が印加されます。「ゼロ」ビットは信号グランドに対する正の電圧差として表され、「1」ビットは信号グランドに対する負電圧であるため、アイドル状態と区別できません。これは、アイドルと区別するために「1」ビットがいつ開始されるかを知る必要があることを意味します。これは、データがリンクを介して送信される速度を事前に合意し、開始ビットを使用してバイトの開始を知らせることによって行われます。この開始ビットは「ゼロ」ビットになります。ストップ ビットは「1」ビット、つまり負電圧です。
実際には、ビット転送の速度、1 文字あたりのビット数、パリティ、およびストップ ビット (文字の終わりを意味する) の数など、より多くのことが事前に合意されています。したがって、9600-8-E-2 と指定すると、毎秒 9,600 ビット、1 文字あたり 8 ビット、偶数パリティ、および 2 ストップ ビットになります。
非同期シリアル接続の一般的なセットアップは 9600-8-N-1 (9,600 ビット/秒、1 文字あたり 8 ビット、パリティなし、1 ストップ ビット) – 1 つの 8 ビット文字を送信するために合計 10 ビットが送信されます。 (1 つのスタート ビット、送信されるバイトを構成する 8 ビット、および 1 つのストップ ビット)。これは 20% のオーバーヘッドであるため、9,600 ビット/秒の非同期シリアル リンクは 9600/8 バイト/秒 (1200 バイト/秒) ではデータを送信しませんが、実際には、この場合は 9600/10 バイト/秒 (960 バイト/秒) です。 s)、これは予想よりもかなり遅いです。
悪化する可能性がパリティが指定され、2 つのストップ ビットを使用する場合、1 つの 8 ビット文字を運ぶためのオーバーヘッドは 4 ビット (1 つのスタート ビット、1 つのパリティ ビット、2 つのストップ ビット)、つまり 50% です! この場合、9600 ビット/秒の接続は 9600/12 バイト/秒 (800 バイト/秒) を伝送します。非同期シリアル インターフェイスは、通常、最大 230.4 kbit/s のビット転送速度をサポートします。パリティなしでストップ ビットが 1 に設定されている場合、これはバイト転送速度が 23.04 kbyte/s であることを意味します。
非同期シリアル接続の利点は、その単純さに欠点の 1 つは、データを運ぶ効率が低いことです。これは、同期インターフェイスを使用することで解決できます。このタイプのインターフェイスでは、クロック信号が別のワイヤに追加され、ビットがクロックと同期して送信されます。インターフェイスは、個々の文字の開始ビットと停止ビットを探す必要がなくなりました。送信クロックと受信クロックの同期を維持するメカニズムを備えているため、データは既知の区切り文字で区切られた複数の文字のフレームに分割されます。フレーム通信には、 HDLC、PPP、およびイーサネットの 3 つの一般的なコーディング方式が

HDLC
HDLCを使用する場合、各バイトに開始ビット、オプションのパリティ、および 1 つまたは 2 つのストップ ビットを持たせるのではなく、バイトを 1 つのフレームにまとめます。フレームの開始と終了は「フラグ」によって通知され、エラー検出はフレーム チェック シーケンスによって実行されます。フレームのアドレスの最大サイズが 32 ビット、制御部分の最大サイズが 16 ビット、フレーム チェック シーケンスの最大サイズが 16 ビットの場合、フレームあたりのオーバーヘッドは最大 64 ビットになる可能性が各フレームが 1 バイトしか伝送しない場合、データ スループットの効率は非常に低くなります。ただし、バイトは通常 1 つにまとめられるため、64 ビットの最大オーバーヘッドがあっても、24 バイトを超えるフレームは非同期シリアル接続よりも効率的です。データとして伝送されるバイト数が異なる可能性があるため、フレームのサイズが異なる可能性があるため、HDLC 接続のオーバーヘッドが固定されていないことを意味します。

PPP
「ポイント ツー ポイント プロトコル」(PPP) は、インターネット リクエスト フォー コメント ドキュメント RFC 1570、RFC 1661、および RFC 1662 によって定義されています。パケットのフレーミングに関して、PPP は HDLC と非常に似ていますが、ビットデータの透過性を維持しながらフレームを区切るためのバイト指向 (「オクテット詰め込み」) 方式と同様に指向方式です。

イーサネット
イーサネットは、フレーム化された「ローカル エリア ネットワーク」(LAN) テクノロジです。2 つのシステム間の接続でフレームが電気的に定義される方法は、実装された HDLC または PPP を使用する一般的な広域ネットワーク テクノロジとは異なりますが、これらの詳細はスループットの計算には重要ではありません。イーサネットは共有メディアであるため、ファイルを相互に転送している 2 つのシステムだけが接続に排他的にアクセスできるとは限りません。複数のシステムが同時に通信しようとしている場合、任意のペア間のスループットは、使用可能な公称帯域幅よりも大幅に低くなる可能性が

その他の低レベル プロトコル
専用のポイント ツー ポイント リンクは、システム間の多くの接続に対する唯一のオプションではありません。フレーム リレー、ATM、およびMPLSベースのサービスも使用できます。データ スループットを計算または推定する場合、フレーム/セル/パケット フォーマットの詳細と、テクノロジの詳細な実装を理解する必要が

フレームリレー
フレーム リレーは、修正された HDLC 形式を使用して、データを伝送するフレーム形式を定義します。

ATM
「非同期転送モード」(ATM) は、根本的に異なるデータ転送方法を使用します。可変長のフレームやパケットを使用するのではなく、データは固定サイズのセルで伝送されます。各セルの長さは 53 バイトで、最初の 5 バイトがヘッダーとして定義され、次の 48 バイトがペイロードとして定義されます。データ ネットワーキングでは通常、48 バイトを超えるデータ パケットが必要になるため、より大きなデータ パケットを標準的な方法で分割して小さいセルで伝送する方法を指定する定義済みの適応プロセスがこのプロセスは、伝送されるデータによって異なるため、ATM 命名法では、さまざまなATM アダプテーション レイヤーがほとんどのデータに対して定義されたプロセスは、ATM Adaptation Layer No. 5 またはAAL5と呼ばれます。
ATM リンクのスループットを理解するには、伝送されるデータにどの ATM アダプテーション レイヤが使用されたかを知る必要が

MPLS
マルチプロトコル ラベル スイッチング (MPLS) は、「ラベル」と呼ばれる標準タグまたはヘッダーを既存のデータ パケットに追加します。特定の状況では、ラベルが既にラベル付けされたパケットに追加されるように、MPLS を「スタック」方式で使用することが可能です。MPLS システム間の接続は、基礎となるトランスポート プロトコルのない「ネイティブ」にすることもできます。または、MPLS ラベル付きパケットをフレーム リレーまたは HDLC パケット内でペイロードとして伝送することもできます。スループットを正しく計算するには、このような構成を考慮する必要がたとえば、データ パケットに「ラベル スタッキング」を介して 2 つの MPLS ラベルを付加し、HDLC フレーム内のペイロードとして配置することができます。これにより、単一の MPLS ラベルがパケットに添付され、受信システムへの基になるプロトコルなしで「ネイティブに」送信されることを考慮に入れる必要があるオーバーヘッドがさらに発生します。

高レベルのプロトコル
ファイルの内容を HDLC または PPP フレームの「データ」フィールドにコピーするだけでファイルとデータを転送するシステムはほとんどありません。別のプロトコル層を使用して、HDLC または PPP フレームの「データ」フィールド内のデータをフォーマットします。このようなプロトコルとして最も一般的に使用されているのは、RFC 791 で定義されたインターネット プロトコル(IP) です。これにより、独自のオーバーヘッドが生じます。
繰り返しになりますが、単純にファイルの内容を IP パケットにコピーするシステムはほとんどありませんが、2 つのシステム間の接続を管理するさらに別のプロトコル、RFC 1812 で定義されている TCP (伝送制御プロトコル) を使用しています。これにより、独自のオーバーヘッドが追加されます。
最後に、最後のプロトコル層が実際のデータ転送プロセスを管理します。これに一般的に使用されるプロトコルは、”ファイル転送プロトコルです。

スループットの測定に使用できるツール
多くのツールが利用可能であり、そのうちのいくつかは独自のものであり、ベンダー アプリケーションに固有のものであるため、このセクションを網羅することはできません。
これらのツールの一部は、悪意のある目的で使用される可能性がこれらのツールを使用すると、テスターが善意のみを持っていたとしても、有害な結果につながる可能性がしたがって、これらの使用は、少なくとも、注意してツールを十分に理解して行う必要が HTTPing Iperf帯域幅測定ツール
Pingb 帯域幅推定ツール
IxChariot および IxChariot Pro エンドポイント
バンドチェック

こちらもご覧ください
漸近帯域幅
ネットワーク トラフィックの測定
トラフィック生成モデル
Speedof.me – HTML5 帯域幅テスト

参考文献
^ Comer, DE (2008). コンピュータ ネットワークとインターネット 第 5 版 ^ 「TCP スループット パフォーマンスの数学的モデリング」 (PDF) . ^ Comer, DE (2008). コンピュータ ネットワークとインターネット 第 5 版 ^ Comer, DE (2008). コンピュータ ネットワークとインターネット 第 5 版 ^ Cisco System, Inc. (2001-2006). Cisco IOS IP コンフィギュレーション ガイド ^ リディア・パルツィアーレ、DT (2006). TCP/IP のチュートリアルと技術概要 ^ Lammle、T. (2002). シスコ認定ネットワークアソシエイト。ロンドン ^ リディア・パルツィアーレ、DT (2006). TCP/IP のチュートリアルと技術概要 ^ Comer, DE (2008). コンピュータ ネットワークとインターネット 第 5 版 ^ Comer, DE (2008). コンピュータ ネットワークとインターネット 第 5 版 ^ スミス、S. (2003). MPLS の紹介。シスコ ^ リディア・パルツィアーレ、DT (2006). TCP/IP のチュートリアルと技術概要

外部リンク
Curlieでの帯域幅テスト
利用可能な帯域幅の測定に関するローレンス・バークレー国立研究所の論文”