免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 9681 | 回复: 5
打印 上一主题 下一主题

[桌面系统] 各位朋友大家好,小弟有个疑问:如何在Linux下使用iperf测试TCP带宽? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-30 11:04 |只看该作者 |倒序浏览
各位朋友大家好,首先祝大家生活工作愉快!

我在使用iperf测试工具时,有些地方不时很明白。如果大家有时间的话,希望大家能指导一下:
我这里在做测试,分别针对UDP和TCP做测试:
测试UDP是这样测的:
服务器端:iperf -s -p23456 -u -D
然后客户端执行:iperf -c  hostIP -i 5 -p 23456 -u -b 600M -t 1200
可是相对应的,测试TCP时:
服务器端:iperf -s -p23456 --t -D
服务器端的命令不知道怎么写,写成这样:
iperf -c  hostIP -i 5 -p 23456 -t -b 600M -t 1200
是不行的,我理解着如果“iperf -c  hostIP -i 5 -p 23456 -u -b 600M -t 1200”不加其中的-u的话
,应该默认使用TCP协议,是这样吗?
另外在测试TCP时不能使用-b参数来指定带宽,按照手册上所讲,-b
参数仅支持UDP协议,这样的话,如何达到指定测试带宽的目的呢?
按照rockonline前辈的blog :http://blog.chinaunix.net/u2/63791/showart_686264.html上面的提示,我使用的是:
iperf -c xxx.xxx.xxx.xxx  -i 2 -l 16K  -p 23456 -n 44800 -t 1800
可以却提示:
connect failed: Connection timed out
write1 failed: Broken pipe
write2 failed: Broken pipe
------------------------------------------------------------
Client connecting to xxx.xxx.xxx.xxx, TCP port 23456
TCP window size:   256 KByte (WARNING: requested 1.00 MByte)
------------------------------------------------------------
[  3] local 0.0.0.0 port 48441 connected with xxx.xxx.xxx.xxx port 23456
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 0.0 sec  0.00 Bytes  0.00 bits/sec
然后,我又尝试如下方式
iperf -c 202.102.254.138  -i 1 -p23456 -w 1M
提示:
connect failed: Connection timed out
write1 failed: Broken pipe
write2 failed: Broken pipe
------------------------------------------------------------
Client connecting to xxx.xxx.xxx.xxx, TCP port 23456
TCP window size:   256 KByte (WARNING: requested 1.00 MByte)
------------------------------------------------------------
[  3] local 0.0.0.0 port 48441 connected with xxx.xxx.xxx.xxx port 23456
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 0.0 sec  0.00 Bytes  0.00 bits/sec
如果大家有时间的话,希望能得到大家的指点,小弟非常感谢。

论坛徽章:
0
2 [报告]
发表于 2008-11-30 11:05 |只看该作者

补充一下:

补充一下:
系统RHEL 5 64位,iperf 版本2.0.4,编译安装的,编译时除--prefix外未加其它参数。

论坛徽章:
0
3 [报告]
发表于 2008-11-30 16:00 |只看该作者
iperf我使用过。
也简单总结了一下用法:
http://blog.chinaunix.net/u2/84810/showart.php?id=1419721

测试tcp时使用-w设定tcp窗口大小,而且我认为-b应该对tcp也是管用的。

你server和client都是linux机吗?

我当初使用的时候遇到的问题是在我的server在windows上,总是出问题,放到linux就没问题了。

还有端口我想不用指定就可以,一般用默认就行了。

论坛徽章:
0
4 [报告]
发表于 2008-11-30 23:11 |只看该作者
-l 参数是制定包的长度 ,不应该超过1500,

不加-u参数就是测试tcp。

你先测试一下小流量的也就是不加带宽的参数看看是否能够测试。

用最简单的参数如下:

server端:
iperf -s -i 1

client端:
iperf -c hostip -i 1

这是最简单的命令,先看看是否能测试。

论坛徽章:
0
5 [报告]
发表于 2008-12-01 10:04 |只看该作者

谢谢楼上的回复。

简单的测试,是可以实现的。但是如果在测试TCP是指定带宽的话,-b参数确实是不支持的,提示如下:
WARNING: option -b implies udp testing

论坛徽章:
0
6 [报告]
发表于 2008-12-01 10:10 |只看该作者

谢谢楼上的回复。

客户端和server端都在linux上。系统和iperf的版本也是一样的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP