如何進行網絡測試
簡介
導致容器下行速度未達到設定速度或其他網絡問題的原因很多,以下是一些常見原因:
- 創建容器時,忽略或者錯誤選擇了容器帶寬(默認 1 Mbps);
- 終端用戶下行帶寬小於容器帶寬;
- 區域性網絡問題;
對於終端用戶,我們建議使用 Speedtest.net 進行網絡測試,以排除自身網絡問題; 對於容器本身,我們建議使用 speedtest-cli 進行網絡測試,以排除容器因素。
speedtest-cli 是一個使用 Python 編寫的 Linux 命令行工具,在 Python 2.4 至 3.4 版本(CentOS 6、Debian 7、Ubuntu 12.04/14.04 等發行版本都默認包含了 Python 2.7.*)下均可運行,通過調用 Speedtest.net 測試上下行的接口來完成速度測試,可以放心使用。
重要:開始測試前,請核實創建容器時選擇的帶寬,這將直接影響網絡測試結果。
下載 speedtest-cli
依次執行如下命令,下載 speedtest-cli 的 Python 腳本文件並賦予權限:
wget https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py chmod a+rx speedtest_cli.py mv speedtest_cli.py /usr/local/bin/speedtest-cli chown root:root /usr/local/bin/speedtest-cli
開始網絡測試
使用 speedtest-cli 命令即可開始測試:
speedtest-cli
開始測試後,將自動選擇 Speedtest.net 服務器進行網絡測試,並輸出分配到的測試服務器以及上下行速度。
重要:
- 請不要忽略創建容器時選擇的帶寬,這將直接影響使用體驗和網絡測試結果,你可以在容器設置界麵直接在線調整容器帶寬;
- 網易蜂巢機房位於浙江,若分配到的測試節點異常(比如分配到了深證節點),請自定義測試服務器(我們建議使用 浙江電信 7905 服務器,見下文)。
自定義測試服務器
使用如下命令,可以根據物理距離列出所有 Speedtest.net 服務器:
speedtest-cli --list |more
根據列表中每個服務器前的對應 ID(以下以浙江電信的服務器 7509 為例),通過如下命令使用指定的服務器進行網絡測試:
speedtest-cli --server 7509
使用MTR測試網絡情況
以 Ubuntu 容器為例,在容器內執行如下命令,安裝 MTR 測試工具
apt-get install mtr -y #Ubuntu
然後在容器內執行命令mtr 域名或IP
,如
mtr www.163.com
可以看到如下界麵
其中,第一列:顯示的是 IP 地址和域名;第二列:顯示的是每個對應 IP 的丟包率;第三列:顯示的是默認發送的數據包數目。第四列:顯示的最近一次的返回時延;第五列:顯示每次 Ping 的平均時延;第六列:顯示的是最短時延的;第七列:顯示的是最長延時;第八列:是標準偏差;
最後更新:2017-01-03 10:48:50