带宽测试:iperf不显示数据,只显示Accepted connection

羌俊恩 社区创始人
运维领域优质创作者
博客专家认证
2022-09-05 19:04:51

一、现象

有时候 , 我们在用iperf测试流量时会发现sever端,收不到client发过来的包,没有任何输出。

二、可能原因

1、检查client侧发包的packet size是否大于server上网卡设置的MTU值,比如说,在 client端,使用iperf -c x.x.x.x -u -p xxx 命令发包,默认packet size是1470,加上udp和ip头的长度28, 等于1498;但是在server端, 网卡上的MTU如果小于1498,这时候,iperf -s -u -p xxx就没有任何的输出。一般不会出现这种情况,基本都是1500;


2、检查server端侧是否用了iptables,把udp端口发过来的包都drop掉了。可以通过“iptables -L -nv”查看是否丢包。

  执行iptables -A INPUT -p udp --dport xxxx -j ACCEPT,加上测试端口放通规则,再次测试;

3、如果server侧监听端口,已有其他进程监听相同端口;比如监听9099,系统有进程已监听udp,这时iperf也监听9099,这是client端如果用测试udp就会出现无输出状况,这时可监听TCP 9099验证;

4、相关资料显示yum源自带的3.1.7版本有bug,处理UDP打流会出现乱序,数据不准问题;

5、wget https://downloads.es.net/pub/iperf/iperf-3.9.tar.gz

yum install gcc gcc++* -y

./configure

make

make install

cd ./src

mv /bin/iperf3 /bin/iperf3.1.7

cp ./iperf3 /bin/

 

【补充】:制作rpm包 

 yum install rpm-build rpmdevtools -y

 rpmbuild --version  //rpm 从 4.5.x 版本开始,将 rpmbuid 的默认工作路径移动到用户家目录下的 rpmbuild目录里,即 $HOME/rpmbuild 
RPM version 4.11.3

6、UDP带宽测试:-w后的数字太大会报错

.\iperf3.exe -c 要测试的ip -p 9094 -b 100M -t 20 -w 20M

 

...全文
1196 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
羌俊恩 社区创始人 2022-09-07
  • 打赏
  • 举报
回复
羌俊恩 社区创始人 2022-09-06
  • 打赏
  • 举报
回复

yum源自带的iperf3-3.1.7再测试UDP打流时会出现乱序丢包的情况,请安装其他版本

羌俊恩 社区创始人 2022-09-07
  • 举报
回复
@羌俊恩 3.4.9

99,117

社区成员

发帖
与我相关
我的任务
社区描述
欢迎各位小伙伴踊跃加入,将日常运维中遇到的问题贴出来,解决方案分享出来,或自己的博客关于运维的文章分享到这里,来一起营造一个运维的知识库,以提升运维工作更加高效快捷,减少重复造车轮的无限循环。
devops经验分享开源 企业社区 北京·西城区
社区管理员
  • 羌俊恩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

本社区:旨在推进运维云化知识库建设,为更多运维提供参考及经验交流;加入社区的同学,如果运维工作中遇到问题或最后得到解决,有劳凑空发帖,分享共建FAQ社区。

得到解决方案的同学,请积极为发帖的同学点赞、评论、能力范围内打赏激励。另外本社区采用游戏修仙角色作为鼓励,对不同贡献者授予对应“勋章”。

最后祝愿社区繁荣昌盛,此致敬礼!!!

试试用AI创作助手写篇文章吧