先来说说交换机的基本性能指标:
传输速率:这是我们最常听见的,比如说某某交换机是百兆的、千兆的等等。这个百兆和千兆就是交换机的传输速率。他是交换机的各个端口的数据交换速度。目前常见的有10Mbps、100Mbps、1000Mbps,注意这里是Mb不是MB,很多人为此不解,说百兆交换机的传输速度只有10M左右,其实是10M左右就对了,这里不解释,自己查查吧。对于自适应交换机,特点在于它能够自动调节传输速率,以及全半单双工模式。
背板带宽:交换机各个接口处理器和数据总线之间所能吞吐的最大数据量,它标志着交换机总的数据交换能力。当交换机的所有端口容量乘以端口数量之和的2倍小于背板带宽时,能实现全双工无阻塞交换,证明交换机具有发挥最大数据交换性能的条件。
端口数:这个指标没什么可说的。
我在网上下载了一个iperf工具来测试交换机的带宽,遇到奇怪的问题,交换机两端链接的电脑不一样,测试出来的最大带宽竟然有差别,我很纳闷。弄半天,最后发现-l参数(小写的L,不是大写的i),这个参数可以设置缓冲大小,iperf的发包大小貌似没办法固定(至少我没发现),只能通过-M参数设置最大分段大小,即所谓的MSS,也就是tcp最大mtu(maximum transport unit)值。
另外我在测试的过程中发现,如果使用-d参数进行双向测试的时候,交换机连接的是两个不同操作系统,例如windows和linux之间,当客户端建在windows系统上时,还必须在windows上建立一个服务端才能进行双向测试,否则只能单向发送数据到linux系统;如果客户端建立在linux系统上时就不存在这个问题,只需在windows上建立一个服务端即可进行双向测试。
一下为我测试时使用的参数:
服务端:iperf –s -i 1 –w 1M –l 1M –p PortNum
客户端:iperf –c Host_IP –i 1 –w 1M –t 300 –d –l 1M –p PortNum
我将我是用的参数列举如下:-M参数未使用
-i sec 以秒为单位显示报告间隔,eg:iperf -c 222.35.11.23 -i 2
-l 缓冲区大小,默认是8KB,eg:iperf-c 222.35.11.23 -l 16(这个简介影响发包大小,从而影响测试结果,需要选取合适大小,怎么选我的办法是参考-w的参数)
-w 指定TCP窗口大小,默认是8KB
-M 设定TCP数据包的最大mtu值(设置MSS最大分段大小,即最大传输大小的值,linux系统上提示系统不支持该操作,可能和版本有关,在windows上可以设置。)
-d 同时进行双向传输测试
-t 测试时间,默认10秒,eg:iperf -c 222.35.11.23 -t 5
iperf的使用手册网上到处都是,可以下一个看看,有问题欢迎留言讨论。