|
||||||||
|
||||||||
|
|
Công Cụ | Xếp Bài |
04-11-2013, 09:46 AM | #1 |
Guest
Trả Lời: n/a
|
Sử dụng Netperf để kiểm tra băng thông card mạng
Sử dụng Netperf để kiểm tra băng thông card mạng
How to test the throughput/performance of your network using Netperf In this multi-part series, I will explain how to use GNU tools and Linux to have a free network throughput test setup. In Part 1 of the series we will use only one NIC to create single unicast TCP/UDP stream to saturate the linkspeed. First of all what I used to have this test setup (you can adapt it to your needs) HW : - 2 HP Blade on same enclosure chassis with 10Gig HP Flex NICs. (servers) - HP VC Flex 10 (the network device) Software :- Centos 5.4 x64 - I only installed core GNU packages + development libraries. No unnecessary service/software loaded. Even I took XWindow(Gnome/KDE) out of the package and run the system in rulevel 3. - Disable Firewall/SELinux - netperf rpm (ftp://ftp.netperf.org/netperf/netperf-2.4.5.tar.gz) I made the first run of the test using single Vnet (counterpart of VLANs in HP Virtual Connect). You can also use the same tools to create a setup that utilize Shared Uplink Sets (trunk links on VC). In order to set this up create a Vnet for your load VLAN(Vnet_LOAD). Create the profiles for the blades and assign one FlexNIC with 100Mb to management VNet and the other one to VNet_LOAD (10Gb) Netperf is based on client server model. After installing the software on both blades you execute different processes on different nodes. netserver as the name states is the server part of the test suite. You can also use the [root@SERVER ~]# netserver Starting netserver at port 12865 Starting netserver at hostname 0.0.0.0 port 12865 and family AF_UNSPEC while netperf is the tool that executes the test and gives output. [root@CLIENT ~]# netperf -H SERVER -l 15 TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to SERVER (*******) port 0 AF_INET Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 87380 16384 16384 15.00 9387.92 The default test is TCP_STREAM you can also define other tests like UDP Request Response to fully saturate Full Duplex Link : [root@CLIENT ~]# netperf -t UDP_RR -H SERVER -l 15 UDP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to SERVER (*********) port 0 AF_INET Local /Remote Socket Size Request Resp. Elapsed Trans. Send Recv Size Size Time Rate bytes Bytes bytes bytes secs. per sec 129024 129024 1 1 15.00 21045.72 Also you can fetch the CPU utilization info while doing the test using -c (local) and -C(remote) parameters [root@CLIENT ~]# netperf -t UDP_RR -H SERVER -l 15 -c -C UDP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to SERVER (*******) port 0 AF_INET Local /Remote Socket Size Request Resp. Elapsed Trans. CPU CPU S.dem S.dem Send Recv Size Size Time Rate local remote local remote bytes bytes bytes bytes secs. per sec % S % S us/Tr us/Tr 129024 129024 1 1 15.00 20964.03 2.06 2.03 15.759 15.481 For detailed documentation and command line options you can check : http://www.netperf.org/netperf/train...UJSTF.8R2DBD.J On the next parts of the series I will focus on different types of throughput/load tests like multi flow & multi IP throughput testing using netperf & some Linux tweaking and IP multicast testing using MGEN. |
|
|