当前位置: 首页 > 科技观察

Iperf网络吞吐量-带宽测试的思考与总结

时间:2023-03-12 03:58:31 科技观察

Iperf测试:使用udp设置带宽2M、5M、10M,观察对正在进行的ping测试的影响。证明当iperf使用udp测试/使用一定或最大带宽时,也能影响tcp协议的流量。任务(1)(使用UDP,参数-u-b2M)设置不同的带宽#iperf3-c192.168.199.18-p54321-i1-t1800-u-b1M(2)双向同时测试(多开一个iperf在任一端端口/进程,然后在同一端使用参数-R测试)服务器执行:#iperf3-s-p54321#iperf3-s-p54322客户端执行:#iperf3-c192.168.199.18-p54321-i1-t1800-u-b1M#iperf3-c192.168.199.18-p54322-i1-t1800-u-b1M-R注意事项TCP协议测试不能计算时延和丢包率,不能指定发送带宽。(1)Iperf的主要功能:Iperf可以用来测试网络节点之间TCP或UDP连接的性能(包括环回),包括测试带宽、抖动和丢包率。抖动和丢包率适用于UDP测试,带宽测试适用于TCP和UDP。(2)双向同时测试方法:在任一端多开一个iperf端口/进程(注意Port不同),然后在另一端使用参数-R测试一个cmd窗口)#iperf3-s-p23451#iperf3-s-p50000在测试机B(客户端)上执行:#iperf3-c192.168.0.11-p23451-i1-t3600-u-b1M#iperf3-c192.168.0.11-p50000-i1-t3600-u-b1M-R(3)Jitter(抖动值)为连续传输时延差的平均值(4)环回测试iperf是否安装成功#iperf3-s----------------------------------------------------------Serverlisteningon5201----------------------------------------------------------#iperf3-c127.0.0.1Connectingtohost127.0.0.1,port5201[4]local127.0.0.1port58884connectedto127.0.0.1port5201[ID]IntervalTransferBandwidthRetrCwnd[4]0.00-1.00sec705MBytes5。92Gbits/sec0560KBytes...(5)测试吞吐量、抖动和丢包率如果需要同时测试以上三个参数,只能通过UDP获取。使用-u参数进行UDP测试(iperf默认为TCP)。在测试服务器结束时会给出一份报告。要获取带宽数据,需要不断增加客户端的带宽值,直到服务器端出现轻微的丢包。此时服务器端显示的带宽就是被测系统的吞吐量。(6)一般来说,我们在做性能测试的时候,需要指定包的长度。不同的数据包长度会导致不同的吞吐量,可以通过-l指定,通过-b指定带宽。(7)使用TCP测试带宽需要注意的问题有时候,我们需要使用TCP来测试网络带宽。这里有一个参数需要特别注意,就是TCP窗口大小,可以用-w参数指定。网络通道容量=带宽*往返时间,理论上TCP窗口的大小就是网络通道的容量。例如网络带宽为40Mbit/s,环回路径消耗2ms,则TCP窗口大小不小于40Mbit/s×2ms=80kbit=10Kbytes这时候我们可以查询iperf默认的TCP窗口大小判断是否需要设置该参数,本例中窗口大小应设计为大于10Kbytes,当然这只是理论值,实际测试中可能需要调整。