troushoo

Microsoft よりフリーで公開されているネットワークベンチマークツール:NTttcp

概要

Microsoft よりフリーで公開されているネットワークベンチマークツールNTttcp を紹介します。

内容

Microsoft より、ネットワークベンチマークツールNTttcp が公開されています。
NTttcp はWindows 用とLinux 用のものが公開されています。

以下、Linux 用のNTttcp の使い方を紹介します。

NTttcp のインストール
1. Github より、ソースコードをダウンロードします。

git clone https://github.com/Microsoft/ntttcp-for-linux.git

2. ダウンロードしたソースコードをビルドします。
make
sudo make install

Ubuntu でmake を使用できるようにするには、build-essential のインストールが必要です。
sudo apt-get install build-essential

NTttcp の使用例
1. 受信側でNTttcp を起動しておきます。
ntttcp -r

2. 送信側で、受信側のIP アドレスを指定し、テストを開始します。
ntttcp -s10.0.0.4

3. テスト結果が表示されます。
「throughput」にてスループットが変わります。以下の黄色の部分です。
(ちなみに今回のテストは、Azure のD2 v2 のUbuntu 14.04 を2台同じ仮想ネットワーク内に立てて行いました。)

以下は受信側の結果です。

tr@***:~/ntttcp-for-linux/src$ ntttcp -r
NTTTCP for Linux 1.1.0
---------------------------------------------------------
13:15:51 INFO: Network activity progressing...
13:16:51 INFO:  Thread  Time(s) Throughput
13:16:51 INFO:  ======  ======= ==========
13:16:51 INFO:  0        60.00   43.18Mbps
13:16:51 INFO:  1        60.00   63.02Mbps
13:16:51 INFO:  2        60.00   39.09Mbps
13:16:51 INFO:  3        60.00   73.00Mbps
13:16:51 INFO:  4        60.00   64.60Mbps
13:16:51 INFO:  5        60.00   75.83Mbps
13:16:51 INFO:  6        60.00   78.13Mbps
13:16:51 INFO:  7        60.00   22.39Mbps
13:16:51 INFO:  8        60.00   46.72Mbps
13:16:51 INFO:  9        60.00   99.52Mbps
13:16:51 INFO:  10       60.00   36.72Mbps
13:16:51 INFO:  11       60.00   55.02Mbps
13:16:51 INFO:  12       60.00   69.15Mbps
13:16:51 INFO:  13       60.00   83.19Mbps
13:16:51 INFO:  14       60.00   62.97Mbps
13:16:51 INFO:  15       60.00   67.50Mbps
13:16:51 INFO: #####  Totals:  #####
13:16:51 INFO: test duration    :60.00 seconds
13:16:51 INFO: total bytes      :7350201034
13:16:51 INFO:   throughput     :980.02Mbps
13:16:51 INFO: total cpu time   :15.79%
13:16:51 INFO:   user time      :2.21%
13:16:51 INFO:   system time    :13.58%
13:16:51 INFO:   cpu cycles     :143667204541
13:16:51 INFO: cycles/byte      :19.55
---------------------------------------------------------


以下は送信側の結果です。

tr@netubu1404v2:~/ntttcp-for-linux/src$ ntttcp -s10.0.0.5
NTTTCP for Linux 1.1.0
---------------------------------------------------------
13:15:51 INFO: Network activity progressing...
13:15:51 ERR : failed to bind socket: 5 to a local ephemeral port. errno = 99
13:16:51 INFO:  Thread  Time(s) Throughput
13:16:51 INFO:  ======  ======= ==========
13:16:51 INFO:  0        60.00   4.88Mbps
13:16:51 INFO:  1        60.00   23.72Mbps
13:16:51 INFO:  2        60.00   6.71Mbps
13:16:51 INFO:  3        60.00   8.13Mbps
13:16:51 INFO:  4        60.00   22.46Mbps
13:16:51 INFO:  5        60.00   4.98Mbps
13:16:51 INFO:  6        60.00   31.46Mbps
13:16:51 INFO:  7        60.00   4.61Mbps
13:16:51 INFO:  8        60.00   6.17Mbps
13:16:51 INFO:  9        60.00   7.85Mbps
13:16:51 INFO:  10       60.00   11.78Mbps
13:16:51 INFO:  11       60.00   13.58Mbps
13:16:51 INFO:  12       60.00   12.65Mbps
13:16:51 INFO:  13       60.00   11.83Mbps
13:16:51 INFO:  14       60.00   27.77Mbps
13:16:51 INFO:  15       60.00   21.37Mbps
13:16:51 INFO:  16       60.00   4.00Mbps
13:16:51 INFO:  17       60.00   24.50Mbps
13:16:51 INFO:  18       60.00   5.66Mbps
13:16:51 INFO:  19       60.00   30.86Mbps
13:16:51 INFO:  20       60.00   26.84Mbps
13:16:51 INFO:  21       60.00   12.50Mbps
13:16:51 INFO:  22       60.00   30.30Mbps
13:16:51 INFO:  23       60.00   6.68Mbps
13:16:51 INFO:  24       60.00   28.01Mbps
13:16:51 INFO:  25       60.00   22.70Mbps
13:16:51 INFO:  26       60.00   20.52Mbps
13:16:51 INFO:  27       60.00   7.34Mbps
13:16:51 INFO:  28       60.00   4.84Mbps
13:16:51 INFO:  29       60.00   5.59Mbps
13:16:51 INFO:  30       60.00   4.11Mbps
13:16:51 INFO:  31       60.00   8.04Mbps
13:16:51 INFO:  32       60.00   6.27Mbps
13:16:51 INFO:  33       60.00   5.99Mbps
13:16:51 INFO:  34       60.00   30.02Mbps
13:16:51 INFO:  35       60.00   4.70Mbps
13:16:51 INFO:  36       60.00   27.56Mbps
13:16:51 INFO:  37       60.00   12.76Mbps
13:16:51 INFO:  38       60.00   29.92Mbps
13:16:51 INFO:  39       60.00   29.88Mbps
13:16:51 INFO:  40       60.00   7.32Mbps
13:16:51 INFO:  41       60.00   3.74Mbps
13:16:51 INFO:  42       60.00   20.87Mbps
13:16:51 INFO:  43       60.00   5.07Mbps
13:16:51 INFO:  44       60.00   21.67Mbps
13:16:51 INFO:  45       60.00   4.72Mbps
13:16:51 INFO:  46       60.00   10.15Mbps
13:16:51 INFO:  47       60.00   19.07Mbps
13:16:51 INFO:  48       60.00   12.48Mbps
13:16:51 INFO:  49       60.00   28.35Mbps
13:16:51 INFO:  50       60.00   22.93Mbps
13:16:51 INFO:  51       60.00   5.73Mbps
13:16:51 INFO:  52       60.00   19.24Mbps
13:16:51 INFO:  53       60.00   24.89Mbps
13:16:51 INFO:  54       60.00   15.87Mbps
13:16:51 INFO:  55       60.00   23.77Mbps
13:16:51 INFO:  56       60.00   5.44Mbps
13:16:51 INFO:  57       60.00   17.58Mbps
13:16:51 INFO:  58       60.00   6.48Mbps
13:16:51 INFO:  59       60.00   33.85Mbps
13:16:51 INFO:  60       60.00   5.98Mbps
13:16:51 INFO:  61       60.00   4.44Mbps
13:16:51 INFO:  62       60.00   30.30Mbps
13:16:51 INFO:  63       60.00   27.23Mbps
13:16:51 INFO: #####  Totals:  #####
13:16:51 INFO: test duration    :60.00 seconds
13:16:51 INFO: total bytes      :7400325120
13:16:51 INFO:   throughput     :986.71Mbps
13:16:51 INFO: total cpu time   :4.94%
13:16:51 INFO:   user time      :0.85%
13:16:51 INFO:   system time    :4.09%
13:16:51 INFO:   cpu cycles     :143675176823
13:16:51 INFO: cycles/byte      :19.41
---------------------------------------------------------


4. 詳細なコマンドラインはヘルプはntttcp -h で確認できます。

tr@***:~/ntttcp-for-linux/src$ ntttcp -h
NTTTCP for Linux 1.1.0
---------------------------------------------------------
Author: Shihua (Simon) Xiao, sixiao@microsoft.com
ntttcp: [-r|-s|-D|-m <mapping>|-n|-6|-u|-p|-b|-B|-t|-N|-V|-v|-h]

        -r   Run as a receiver
        -s   Run as a sender
        -D   Run as daemon
        -e   [receiver only] use epoll() instead of select()
        -P   Number of ports listening on receiver side
        -n   [sender only] number of connections per receiver port    [default: 4]  [max: 512]
        -6   IPv6 mode    [default: IPv4]
        -p   Port number, or starting port number    [default: 5001]
        -b   <recv buffer size>    [default: 65536]
        -B   <send buffer size>    [default: 131072]
        -t   Time of test duration in seconds    [default: 60]
        -N   No sync, senders will start sending as soon as possible.
        -V   Verbose mode
        -h   Help, tool usage
        -m   <mapping>  for the purpose of compatible with Windows ntttcp usage
                  Where a mapping is a NumberOfReceiverPorts,Processor,BindingIPAddress set:
                  NumberOfReceiverPorts:    [default: 16]  [max: 512]
                  Processor:            *, or cpuid such as 0, 1, etc
                  e.g. -m 8,*,192.168.1.1
                          If receiver role: 8 threads running on all processors;
                        and listening on 8 ports of network on 192.168.1.1.
                          If sender role: receiver has 8 threads running and listening on 8 ports of network on 192.168.1.1;
                        and all sender threads will run on all processors.
Example:
        receiver:
        1) ./ntttcp -r
        2) ./ntttcp -r192.168.1.1
        3) ./ntttcp -r -m 8,*,192.168.1.1 -6
        4) ./ntttcp -r -m 8,0,192.168.1.1 -6 -V
        sender:
        1) ./ntttcp -s
        2) ./ntttcp -s192.168.1.1
        3) ./ntttcp -s -m 8,*,192.168.1.1 -n 16 -6
        4) ./ntttcp -s -m 8,0,192.168.1.1 -n 16 -6 -V



情報元
NTttcp Utility: Profile and Measure Windows Networking Performance (英語)
NTTTCP-for-Linux (英語)

関連記事
DiskSpd : Microsoft よりオープンソースで公開されているストレージのパフォーマンス測定ツール


  1. 2016/04/27(水) 22:42:35|
  2. ネットワーク
  3. | トラックバック:0
  4. | コメント:0
<<コンソールしか持たないLinux のパケットキャプチャーの結果を、リモートからWireshark で確認 | ホーム | Azure File Storage をDocker コンテナにボリュームとしてマウントするMicrosoft のドライバー>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://troushoo.blog.fc2.com/tb.php/286-c6f59e86
この記事にトラックバックする(FC2ブログユーザー)

スポンサーリンク

最新記事

月別アーカイブ

カテゴリ

ツール (92)
ネットワーク (76)
Visual Studio (56)
SOS・Psscor2/Psscor4 (25)
WinDbg (25)
Linux (24)
Azure (17)
Tips (20)
英語 (1)
About Me (1)
未分類 (0)

全記事表示リンク

全ての記事を表示する

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する