什么是 Ethr?

Ethr 是一個用 golang 編寫的跨平臺并可支持多種協議的網絡性能測量工具。支持 TCP, UDP, HTTP, HTTPS 等多種協議,對帶寬、連接/s, 延遲、數據包/s、丟失和抖動有一個全面的網絡性能測量。

Ethr 特性與優勢

  • 跨平臺,支持多種協議
  • 支持多線程,支持多客戶端與單個服務器的通信
  • 與其他工具相比提供了更多的測試指標
  • 可作為服務端或者客戶端對網絡性能進行測量

快速體驗 Ethr

安裝 Ethr

go install github.com/microsoft/ethr@latest
  1. 啟動服務端, 默認監聽 8888 端口, 默認使用 TCP 協議
ethr -s -ui
# ethr -s -ui -port 9999

  1. 使用客戶端進行測試
  • -c 指定 server
  • -t 指定測試類型
  • b: Bandwidth
  • c: connections/s
  • p: Packets/s
  • l: Latency, Loss & Jitter
  • tr: TraceRoute
  • mtr: MyTraceRoute with Loss & Latency
  • -p 指定協議
  • -n 指定線程數
  • -4 代表 ipv4(-6 代表 ipv6)
  • -d 表示測試時間
ethr -c localhost -t c -p tcp -n 64 -4 -d 100s

ethr -c localhost -t p -p udp -n 64 -6 -d 100s

  1. 對指定服務進行測試
  • -x 指定服務端地址
  • -n 使用 8 個線程
  • -t c 測量每秒連接數

更多使用請通過ethr --help 進行查看。