Mac純正のスピードテストツール「NetworkQuality」を使ってみる

インターネットの通信速度は時間帯などの環境に大きく依存します。
度々、ネットワークの品質は、pingやサードパーティのスピードテストサイトなどをよく用いることが多いですが、
Macには、デフォルトでネットワーク品質のチェックツールがあります。

networkQualityコマンドとは?

networkQualityコマンドはmacOSのMontereyから追加された、ネットワークの品質を手軽に確認することができるコマンドです。

何がわかるか

コマンドを実行すると、以下のことがわかります。
・1分間あたりのラウンドトリップ数
・アップロードの通信速度
・ダウンロードの通信速度

なお、このコマンドのターゲットサーバはAppleのCDNです。

結果例

いくつかのオプションが用意されています。

オプションなし
==== SUMMARY ====
Uplink capacity: 106.190 Mbps
Downlink capacity: 163.791 Mbps
Responsiveness: Low (23 RPM)
Idle Latency: 31.250 milliseconds
-v オプション

networkquality -vでは、デフォルトのテストで提供される情報よりも多くの情報が提供されます。

==== SUMMARY ====
Uplink capacity: 72.022 Mbps (Accuracy: High)
Downlink capacity: 169.089 Mbps (Accuracy: High)
Responsiveness: Low (42 RPM) (Accuracy: High)
Idle Latency: 39.125 milliseconds (Accuracy: High)
Interface: en0
Uplink bytes transferred: 122.279 MB
Downlink bytes transferred: 595.782 MB
Uplink Flow count: 20
Downlink Flow count: 12
Start: 2023/01/27 0:06:59
End: 2023/01/27 0:07:22
OS Version: Version 13.2 (Build 22D49)
-c オプション

networkquality -vでは、結果をJSONで出力することができます。

{
  "base_rtt" : 36.791667938232422,
  "dl_flows" : 12,
  "dl_throughput" : 214678960,
  "end_date" : "2023/01/27 0:24:00",
  "il_h2_req_resp" : [ 
  ],
  "il_tcp_handshake_443" : [  
  ],
  "il_tls_handshake" : [ 
  ],
  "interface_name" : "en0",
  "lud_foreign_h2_req_resp" : [
  ],
  "lud_foreign_tcp_handshake_443" : [
  ],
  "lud_foreign_tls_handshake" : [
  ],
  "lud_self_h2_req_resp" : [ 
  ],
  "os_version" : "Version 13.2 (Build 22D49)",
  "responsiveness" : 27,
  "start_date" : "2023/01/27 0:23:43",
  "ul_flows" : 20,
  "ul_throughput" : 45521264
}