利用netcat進行網絡吞吐量測試
阿新 • • 發佈:2017-09-13
連接 保持 color tro /dev/ size ron 16px 吞吐量
> 實際傳輸時間。
最近工作過程中遇到一個問題:在linux現有命令的基礎上(封閉只讀系統),如何需要對產品的wifi模塊進行吞吐量測試?
在進行測試前,我首先看了一下當前系統擁有的命令以及搜索相關資料,
發現使用nc這個命令,配合dd的時候能夠進行吞吐量測試(局域網)。
使用這種方法測試的優點:免去嵌入新的軟件。缺點:只能粗略測出上下行帶寬(吞吐量)
工具準備
1.dd for windows
2.netcat (windows版)
測試設備上傳速度
PC端:
nc -lvvp [port] | dd of=NUL
※ port為端口,與設備端保持一致即可。 NUL類似於linux中的/dev/null,用於接收上傳數據。
設備端:
dd if=/dev/zero bs=10M count=10 | nc [ip] [port]
※ ip為pc端的本地ip,這段代碼意思為取/dev/zero中數據,以10M為一塊,輸出10塊數據。
測試設備下載速度
PC端:
dd if=\\?\Device\Harddisk0\Partition0 bs=10M count=10 --size --progress | nc -lvvp 8000
※ PC端沒有類似/dev/zero,所以用\\?\Device\Harddisk0\Partition0代替。
設備端:
nc [ip] [port] | dd of=/dev/null
弊端:
在測上傳速度的時候,設備是馬上發送數據的(dd時間已經在計了),但是設備與PC連接上需要時間,從而導致 總傳輸時間
利用netcat進行網絡吞吐量測試