zoukankan      html  css  js  c++  java
  • 【Iperf】iperf测试wlan的性能

    1.概念:

    iperf命令是一个网络性能测试工具。iperf可以测试TCP和UDP带宽质量

    iperf可以测量最大TCP带宽,具有多种参数和UDP特性。iperf可以报告带宽延迟抖动数据包丢失

    利用iperf这一特性,可以用来测试一些网络设备如路由器,防火墙,交换机等的性能。

    iperf分为两种版本,Unix/Linux版和Windows版,Unix/Linux版更新比较快,版本最新。

    Windows版更新慢。Windows版的iperf叫jperf,或者xjperf。jperf是在iperf基础上开发了更好的UI和新的功能,简化了复杂命令行的参数构造,并保存测试结果,同时实时图形化显示结果。

    当然,Jperf 可以测试TCP 和UDP带宽质量。Jperf 可以测量最大 TCP带宽,具有多种参数和UDP 特性。Jperf 可以报告带宽,延迟抖动和数据包丢失。

      Linux 环境下,可以提高测试准确性。
      Iperf 功能介绍:
      1)TCP
        ·测量网络带宽
        ·报告 MSS/MTU 值的大小和观测值
        ·支持TCP 窗口值通过套接字缓冲
        ·当P 线程或 Win32 线程可用时,支持多线程。客户端与服务端支持同时多重连接

      2)UDP
        ·客户端可以创建指定带宽的UDP 流,
        ·测量丢包
        ·测量延迟
        ·支持多播
        ·当P线程可用时,支持多线程。客户端与服务端支持同时多重连接(不支持Windows)
        ·在适当的地方,选项中可以使用 K 和 M,使输出更友好
        ·可以指定运行的总时间,甚至可以设置传输的数据总量
        ·服务器支持多重连接,而不是等待一个单线程测试
        ·在指定时间间隔重复显示网络带宽,波动和丢包情况
        ·服务器端可作为 Windows 服务运行
        ·使用典型数据流来测试链接层压缩对于可用带宽的影响
        ·支持传送指定文件,可以定性和定量测试
    2.安装iperf

    对于windows版的iperf,直接将解压出来的iperf.exe和cygwin1.dll复制到%systemroot%目录即可,

    对于linux版的iperf,请使用如下命令安装: http://man.linuxde.net/iperf

    gunzip -c iperf-<version>.tar.gz | tar -xvf -

    cd iperf-<version>

    ./configure

    make

    make install

    对于ubuntu系统的iperf 可用wget和apt-get两种方式进行下载,当前说明以apt-get来进行说明

    ubuntu中由apt-get获得的文件包保存在/var/cache/apt/archives ,当前的获取到的压缩包如果是deb格式的,则当前可以用dpkg -i  压缩文件名字

    下载文件位置可以在/etc/apt/source.list文件中指定。

    3.使用

    在路由器上可使用编译过的iperf程序,在手机上可以下载iperf app来进行测试

    一、路由器上使用
    1、将iperf上传到 /usr/sbin文件下,命令:tftp -gr iperf ip(iperf所在主机ip)
    2、将库文件上传到lib目录下,命令:tftp -gr libuClibc++.so.0 ip(文件所在主机ip)

     路由器:

    使用tftp要让文件能够正常上传需要路由器能够ping得通主机ip

    root@ROUTER:~# cd /usr/sbin
    root@ROUTER:/usr/sbin# tftp -gr iperf 192.168.23.40(电脑ip)
    root@ROUTER:/usr/sbin# ls | grep iperf
    iperf
    root@ROUTER:/usr/sbin# cd
    root@ROUTER:~# cd /lib
    root@ROUTER:/lib# tftp -gr libuClibc++.so.0 192.168.23.40
    root@ROUTER:/lib# ls | grep libuClibc++.so.0
    libuClibc++.so.0

    二、iperf的使用参数说明:
    可用iperf -h或iperf -help来查看具体命令
    -s 以server模式启动,eg:iperf -s
    -c host 以client模式启动,host是server端地址,eg:iperf -c 222.35.11.23通用参数
    -f [k|m|K|M] 分别表示以Kbits, Mbits, KBytes, MBytes显示报告,默认以Mbits为单位,eg:iperf -c 222.35.11.23 -f K
    -i sec 以秒为单位显示报告间隔,eg:iperf -c 222.35.11.23 -i 2
    -l 缓冲区大小,默认是8KB,eg:iperf -c 222.35.11.23 -l 16
    -m 显示tcp最大mtu值
    -o 将报告和错误信息输出到文件eg:iperf -c 222.35.11.23 -o c:iperflog.txt
    -p 指定服务器端使用的端口或客户端所连接的端口eg:iperf -s -p 9999;iperf -c 222.35.11.23 -p 9999
    -u 使用udp协议
    -w 指定TCP窗口大小,默认是8KB
    -B 绑定一个主机地址或接口(当主机有多个地址或接口时使用该参数)
    -C 兼容旧版本(当server端和client端版本不一样时使用)
    -M 设定TCP数据包的最大mtu值
    -N 设定TCP不延时
    -V 传输ipv6数据包

    server专用参数
    -D 以服务方式运行ipserf,eg:iperf -s -D
    -R 停止iperf服务,针对-D,eg:iperf -s -R

    client端专用参数
    -d 同时进行双向传输测试
    -n 指定传输的字节数,eg:iperf -c 222.35.11.23 -n 100000
    -r 单独进行双向传输测试
    -t 测试时间,默认10秒,eg:iperf -c 222.35.11.23 -t 5
    -F 指定需要传输的文件
    -T 指定ttl值


    操作举例:
    1)TCP测试
    服务器执行:#iperf -s -i 1 -w 1M
    客户端执行:#iperf -c host -i 1 -w 1M
    其中-w表示TCP window size,host需替换成服 务器地址。
    2)UDP测试
    服务器执行:#iperf -u -s
    客户端执行:#iperf -u -c 10.32.0.254 -b 900M -i 1 -w 1M -t 60
    其中-b表示 使用带宽数量,千兆链路使用90%容量进行测试就可以了。

    几个命令参数:
    #iperf -c 10.1.1.1 //客户端命令
    iperf -s //服务端命令
    -f [b|B|k|K|m|M|g|G] //f参数表示单位
    -r //r参数表示双向数据测试,但要先测c到s的带宽
    -d //d参数和r近似,并且功能更强,可同时测试双向数据
    -w [2000] //w参数后跟数字,单位是byte,
    -p [12000] //p参数可指定端口号
    -t [20] //t参数默认表示测试10次,后加数字可以自己定义
    -i [2] //i参数表示测试开始到结束的间隔时间,单位s
    -u -b 10m //udp 10mbps 测试
    -m //最大mpu测试
    -P //并行测试
    -h //帮助

    详情上网查看

    参看链接

    https://www.cnblogs.com/yingsong/p/5682080.html

  • 相关阅读:
    poj 2728 Desert King(最小比率生成树,迭代法)
    HDU
    hud 2089 不要62 (数位dp)
    食物链(带全并查集)
    docNet基础学完感想
    zoj 1081 (改进的弧长算法)(转)
    zoj 1962 How Many Fibs?(字符串化为数字处理)
    zoj 1109 zoj 1109 Language of FatMouse(字典树)
    iOS开发网络数据之AFNetworking使用
    iOS 使用AFNetworking
  • 原文地址:https://www.cnblogs.com/chenxiaomeng/p/9310894.html
Copyright © 2011-2022 走看看