端末経由でインターネットの速度を確認するには?

のようなサイトに行くのではなく、 speedtest.net、私はUbuntuのターミナルから私の現在のインターネット速度をチェックしたいと思います。 どうすればいいですか?

私はお勧めします speedtest-cli このためのツール。 ブログ記事を作成しました(Linuxコマンドラインからのインターネット接続速度の測定)それは、ダウンロード、インストール、およびそれの使用の詳細に入ります。

ショートバージョンはこちら: (ルートは必要ありません)

curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -

出力:

Retrieving speedtest.net configuration...Retrieving speedtest.net server list...Testing from Comcast Cable (x.x.x.x)...Selecting best server based on ping...Hosted by FiberCloud, Inc (Seattle, WA) [12.03 km]: 44.028 msTesting download speed........................................Download: 32.29 Mbit/sTesting upload speed..................................................Upload: 5.18 Mbit/s

2018年の更新:

を使用して pip install --user speedtest-cli ディストリビューションのリポジトリから入手可能なバージョンよりもおそらく新しいバージョンを取得します。

2016年の更新:

speedtest-cli 今Ubuntuのリポジトリにあります。 Ubuntu16.04(Xenial)以降の使用の場合:

sudo apt install speedtest-clispeedtest-cli

コマンドラインでこれを試してみてください

wget --output-document=/dev/null http://speedtest.wdc01.softlayer.com/downloads/test500.zip

これも試してみてください

sourceforge.net/projects/tespeed/

上記のリンクから入手しました

Iperfをインストールするのに気にすることができない場合は、既知の量のデータをシフトするコマンドの前に、iperfをインストールすることができます。 time コマンドを実行し、合計を行います。

iperfはシンプルで使いやすいです。

クライアントとサーバーが必要です。

(サーバー上)

 user@server$ iperf -s

(クライアント上)

 user@client$ iperf -c server.domain ------------------------------------------------------------ Client connecting to 192.168.1.1, TCP port 5001 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [  3] local 192.168.1.3 port 52143 connected with 192.168.1.1 port 5001 [ ID] Interval       Transfer     Bandwidth [  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec

より多くの細部

まあ私は使用します wget それのために。 その小さなツールは、私が持っているどのような速度をうまく私に伝えます。

それを使用するには、インターネット内のファイルを指しているだけで、比較的大きいので、より良い見積もりを得ることができます。

例えば

タイピング: wget http://hostve.com/neobuntu/pics/Ubu1.avi Ubu1のダウンロードを開始します。aviファイルと、それがダウンロードされているどのような速度で表示されます。

enter image description here

もちろん、いくつかの推奨事項があります:

  1. スピードは良いサーバーで自分自身をテストします。 私のリンクの場合、速度は200KB未満なので、速度が高い場合、サーバーは実際の速度ではなくボトルネックになります。

  2. 表示される最高速度は、接続とサーバーの接続が提供できる最高速度です。 接続が512KBで、ダウンロードしている場所が400KBの場合、ダウンロード元のサーバーの最大接続数であるため、最大接続数は400KBになります。

  3. あなたは、信頼性の高い速度チェックを持っているか、少なくとも分か二のためにそれを行うには、少なくとも5回のテストを行う必要があります。 これは、より正確なチェックをするのに役立ちます。

  4. より正確な速度を得るには、少なくとも4つまたは5つの異なるテストソースが必要です。 これは、あなたの距離、サーバー内の問題、およびそれへの接続などの影響を受ける可能性があるため、同じサイトからのみテストしないでください。 常に異なるサーバーからテストします。

アリア2

これは次の代替手段です。 wget. の欠点 wget 並列接続の欠如です。 Aria2を使用するには、それをダウンロードする必要があります:

   sudo apt-get install aria2

それを使用するのは簡単です:

enter image description here

画像では、 -×4 私たちが使用したいどのように多くの並列接続です。 次の行のCNパラメーターは、そのサイトからのダウンロードが許可されたアクティブな並列接続の数を示しています。 この場合、CNは4である。 しかし、我々はより多くの接続を持ってしようとした場合、我々はこのような何かを得るだろう:

enter image description here

8つの並列接続を設定しましたが、CN:5で示されているように、サイトでは最大5つしか許可されていませんでした。 これはによって解決できます -j 必要な最大同時接続(デフォルトでは5)をaria2cに指示するオプションですが、サーバーがこれを制限している場合、-jは機能しません。

Speedtest-cliはpythonアプリケーションなので、次のようにしてインストールする方がはるかに簡単です:

pip install speedtest-cli

または:

easy_install speedtest-cli

あなたのシステムにPythonがどのようにインストールされているかによっては、上記を行うにはrootである必要があります。

私は好きに起こる speedometer Ubuntuのcli。

speedometer -r eth0

受信データ速度のライブグラフを見るために。

私は定期的にこのようなものを使用しています:

% wget -O /dev/null --progress=dot:mega http://cachefly.cachefly.net/10mb.test ; date--2020-01-06 03:31:05--  http://cachefly.cachefly.net/10mb.testResolving cachefly.cachefly.net (cachefly.cachefly.net)... 2607:7700::18:0:1:cdea:afaf, 205.234.175.175Connecting to cachefly.cachefly.net (cachefly.cachefly.net)|2607:7700::18:0:1:cdea:afaf|:80... connected.HTTP request sent, awaiting response... 200 OKLength: 10485760 (10M) [application/octet-stream]Saving to: <</dev/null>>     0K ........ ........ ........ ........ ........ ........ 30% 3.02M 2s  3072K ........ ........ ........ ........ ........ ........ 60% 3.97M 1s  6144K ........ ........ ........ ........ ........ ........ 90% 3.94M 0s  9216K ........ ........                                    100% 3.99M=2.8s2020-01-06 03:31:08 (3.62 MB/s) - <</dev/null>> saved [10485760/10485760]Mon Jan  6 03:31:08 CST 2020%

あなたは変更することができます 10mb のパート /10mb.test1mb, 4mb, 5mb, 10mb, 50mb, 100mb, 200mb, 400mb, 2000mb, 4000mb、およびおそらくいくつかの他の値。

また、変更することもできます --progress=dot:mega への部分 --progress=dot:default, --progress=dot:binary, --progress=dot:mega--progress=dot:giga これは、結果を誰かと共有したり、自分のレコードのためにグラフのようなものとして保存したりする必要があるときに役立ちます。

それは100MBをダウンロードするのにかかる時間をテストする単純なワンライナー(上で動作します /bin/sh も):

t=$(date +"%s"); wget http://speedtest.tele2.net/100MB.zip -O ->/dev/null ; echo -n "MBit/s: "; expr 8 \* 100 / $(($(date +"%s")-$t))

説明:

  1. タイムスタンプをstore tに格納します
  2. ダウンロード100mbが、何も保存しないでください
  3. 計算 8 * 100mb / $t

大きなファイルでtimeoutコマンドを使用してwgetの複数のインスタンスを実行する:

#!/bin/bashtimeout 5 wget -q url_1/100MB.zip &timeout 5 wget -q url_2/file.zip &timeout 5 wget -q url_3/sample.mov &timeout 5 wget -q url_4/speech.mp4 &

そして、ダウンロードされた合計バイトを計算し、あなたがバイト/秒の数字を取得します5秒を分割するためのスクリプトを書きます。 非常に正確でなければならず、帯域幅を最大にするためにインスタンスを追加することができます。

私はまだ完全なスクリプトをテストしていませんが、単一行のコマンド"timeout5wget url"が機能し、結果として部分的にダウンロードされたファイルが得られ

あなたが使用することができます tespeed . からのサーバーを使用する端末ネットワーク速度テストです Speedtest.net. 最も近いテストサーバーを使用しますが、ユーザーが手動で指定したサーバーを使用することもできます。

 git clone git://github.com/Janhouse/tespeed.git cd tespeed git submodule init git submodule update ./tespeed.py 

enter image description here

より多くの情報の使用のため :

 ./tespeed.py  -h

それは速度テストにより多くの選択を提供します。

私がspeedtest-cliで得ている結果は、私が得たものの下にありますspeedtest.net speedtest-cliダウンロード18.27Mbits/sアップロード3.43Mbits/s speedtest.net ダウンロード59.38Mbits/sアップロード12.14Mbits/s私はspeedtest-cliがネットワーク速度の有効なテストであるとは考えられません。

@user375058speedtest-cliは同じサーバー(など)を使用します。)としてSpeedTest.netspeedtest-cliと`speedtest-cli’を考慮する必要があります。www.speedtest.net"ちょうど別のフロントエンドで、同等であること。 両方が同じサーバーを使用している場合、一貫して大幅に異なる結果が得られた場合、私は驚くでしょう。 彼らが同じサーバーを使用していない場合、比較の根拠はありません。 最後に、両方のユーティリティのための私の結果は、実行から実行に2-4の要因によって異なります。 私はあなたが2-4のサーバーをテストし、各サーバーのために3-4の実行を実行し、ツールを比較することをお勧めします。

sudo apt install speedtest-cli

@user375058:私は実際に私が提案したことをしました。 私の結果については、以下の私のコメントのリンクを参照してください。