2023年7月11日发(作者:)
嵌⼊式Linux使⽤iperf3同时压⼒测试4个⽹⼝解决⽅案⽂章⽬录iperf介绍iperf是⼀种命令⾏⼯具,⽤于通过测量服务器可以处理的最⼤⽹络吞吐量来诊断⽹络速度问题。它在遇到⽹络速度问题时特别有⽤,通过该⼯具可以确定哪个服务器⽆法达到最⼤吞吐量。安装iperf被测Linux板⼦板⼦是Linux环境,⼀般情况都会有iperf3,在⽬录
usr/bin 下,可以查找到iperf3PC主机因为电脑是windows环境,考虑到使⽤Ubuntu是虚拟机的状态下运⾏,会影响到⽹络的测试,因此直接使⽤iperf 的windows版本对于windows版的Iperf,直接将解压出来的和复制到C:WindowsSystem32,这样cmd可以直接打开iperf使⽤Windows打开cmd进⼊后,测试⼀下iperf如何使⽤,以及正常运⾏是什么状态基本的使⽤⽅法,如果Windows环境就是 iperf3 替换成 rf3 -c 服务端ip -p 监听的端⼝号 -b 带宽 -i 时间间隔(单位秒) -t 持续时间(单位秒) -R(反向传输) -u(采⽤udp模式)选项描述-F更改运⾏测试的格式。例如,您可以使⽤-f k以每秒Kbits⽽不是每秒Mbits的速度获得结果。有效选项包括m(Mbits,默认),k(Kbits),K(KBytes)和M(MBytes)。强制iPerf使⽤IPv6⽽不是IPv4。更改带宽测试之间的间隔。例如,-i 60将每60秒⽣成⼀个新的带宽报告。默认值为零,执⾏⼀次带宽测试。更改端⼝。未指定时,默认端⼝为5001.您必须在客户端和服务器上都使⽤此标志。将iPerf绑定到特定的接⼝或地址。如果通过server命令传递,则将设置传⼊接⼝。如果通过client命令传递,则将设置传出接⼝。-V-i-p-B然后就是测试⼀下单个⽹⼝连接(保证两个连接的⽹卡在同⼀⽹段!)测试服务端(接收,这⾥接收端是windows环境,所以需要⽤)启动: -s客户端(发送)启动;iperf3 -u -c 192.168.0.2 -i 1 -t 60 -b 100M以udp模式向服务端 192.168.0.2 发送100M带宽的数据,持续60秒,每秒发送⼀次报告。Linux⽹⼝初始化配置板⼦上存在4个⽹⼝,需要配置IP,为了避免⼀些不必要的⿇烦,分别在四个⽹段ifconfig eth1 192.168.1.232ifconfig eth2 192.168.2.232ifconfig eth3 192.168.3.232初始化完成之后,就是接下来的测试⼯作,PC段的四个⽹卡ip也分别为192.168.0.2192.168.1.2192.168.2.2192.168.3.2同时测试4个⽹⼝吞吐量Linux板⼦Linux板⼦根据实际的信息流向,三个⽹⼝使⽤udp发送,也就是需要开三个客户端通过UDP发送对板⼦的控制因为只能通过串⼝或者⽹⼝,因此没有办法像电脑操作打开多个窗⼝使⽤ 后台运⾏ + 隐藏打印iperf3 -c 192.168.1.2 -u -p 6001 -t 9999 -b 1000m >/dev/null &iperf3 -c 192.168.2.2 -u -p 6002 -t 9999 -b 1000m >/dev/null &iperf3 -c 192.168.3.2 -u -p 6003 -t 9999 -b 1000m >/dev/null &注意:因为使⽤的是UDP,所以要配置数据带宽,-b 1000m,不然速度会很低将打印信息输出到 >/dev/null,可以不在调试界⾯打印& 隐藏到后台运⾏通过top查看cpu占⽤率以及后台使⽤情况jobs -l
接着就是设置第四个⽹⼝,作为服务端,接受数据,使⽤TCP协议iperf3 -s -p 6000 >/dev/null &linux后台运⾏和关闭、查看后台任务插播⼀段linux后台运⾏和关闭、查看后台任务的命令fg将后台中的命令调⾄前台继续运⾏。如果后台中有多个命令,可以⽤fg %jobnumber(是命令编号,不是进程号)将选中的命令调出。ctrl + z可以将⼀个正在前台执⾏的命令放到后台,并且处于暂停状态。kill法⼦1:通过jobs命令查看job号(假设为num),然后执⾏kill %num法⼦2:通过ps命令查看job的进程号(PID,假设为pid),然后执⾏kill pid前台进程的终⽌:Ctrl+cbg将⼀个在后台暂停的命令,变成在后台继续执⾏。如果后台中有多个命令,可以⽤bg %jobnumber将选中的命令调出。windows 电脑因为Linux端已经配置完成,所以windows这边对应接受和发送就可以了⾸先是三个接收 -s -p -s -p -s -p 6003然后是⼀个发送 -c 192.168.0.232 -p 6000 -t 9999结果按照设定时间测试完成后,会输出测试结果(拿了⼀个测试千兆⽹⼝的图⽚,意思⼀下)iperf测试UDP丢包率因为TCP是有链接,错误也会重发,所以不存在丢包率的指标。但是对于UDP iperf也可以⽤于UDP数据包吞吐量、丢包率和延迟指标,但是由于UDP协议是⼀个⾮⾯向连接的轻量级传输协议,并且不提供可靠的数据传输服务,因此对UDP应⽤的关注点不是传输数据有多快,⽽是它的丢包率和延时指标。通过iperf的“-u”参数即可测试UDP应⽤的传输性能,下测试的是在iperf客户端传输1000MB的UDP数据包的输出结果.:
发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1689026510a197066.html
评论列表(0条)