1

I’m looking for a solution to run a performance test to an HBA and CNA interface cards on a stand-alone server running Linux OS (e.g Centos7), without having to connect it to another server/switch.

I have 3 types of cards - IB, ISCSI, FC:

Mellanox Technologies MT27600 [Connect-IB]
Mellanox Technologies MT27520 Family [ConnectX-3 Pro]
QLogic Corp. ISP8324-based 16Gb Fiber Channel

The goal is to ensure that the card's performance is according to the spec.

Server configuration: Each card has two ports connected via a loopback cable between the ports.

My question is how to configure these cards to allows me to perform a performance test between 2 ports of the same card using a utility like iperf.

Thanks,

  • I'd try to put the network interface for one port of each card into a network namespace, assign IP addresses, then use iperf as usual (one instance on the port in the main network namespace, one instance in the loopbacked port in the new network namespace). – dirkt Oct 5 '19 at 20:31
  • Can you elaborate or give some examples? For instance, one of my cards has 2 ports which represented as 2 interfaces in ifconfig, e.g eth3 and eth4. – doki.al Oct 6 '19 at 9:55
0

I'd try to put the network interface for one port of each card into a network namespace, assign IP addresses, then use iperf as usual (one instance on the port in the main network namespace, one instance in the loopbacked port in the new network namespace).

Details (untested): Something along the lines of

NS=ns1
IF1=eth3
IF2=eth4
ADDR1=10.0.0.1
ADDR2=10.0.0.2
ip netns add $NS
ip set $IF1 nets $NS
ip -n $NS addr add $ADDR1/24 dev $IF1
ip -n $NS link set $IF1 up
ip addr add $ADDR2/24 dev $IF2
ip link set $IF2 up

as root (sudo) should move one interface into a newly created network namespace, assign IP addresses, and activate the links. Now start an xterm (I prefer colored ones so I don't confuse them) in the new network namespace as the normal user your_user,

ip netns exec $NS su -c "xterm -bg $COL &" your_user

and run iperf -s in that window and iperf -c $ADDR1 in the main namespace (or vice versa, it shouldn't matter).

If something doesn't work, debug with ping, tcpdump etc. Having windows for both network namespaces makes debugging easy.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.