Only getting 6,5gbps out of a 10g interface on a bare metal server

417 views
Skip to first unread message

karl...@gmx.at

unread,
Mar 8, 2018, 9:37:59 AM3/8/18
to TRex Traffic Generator
Hello

I'm using an Intel X520-DA2, a server with eight cores and TRex to simulate DDoS Traffic.

I can't seem to be able to get the full 20gbps out of the two 10G ports of an Intel X520-DA2. It always tops out around 13gbps. With my custom DDoS pcaps I can reach 9,5gbps on one interface and around 2,5-3gbps on the other. When I use --flip with my custom DDoS pcaps I get 6,5gbps on each interface.

Here I have tried using TUI and the following command:
"start -f stl/bench.py -m 100% --port 0 1 -t size=1514,vm=random --force"
As you can see it still tops out around 13gbps in total and 6,5gbps per interface:
Global Statistics
connection : localhost, Port 4501 total_tx_L2 : 13.00 Gb/sec
version : v2.31 total_tx_L1 : 13.17 Gb/sec
cpu_util. : 45.1% @ 6 cores (6 per port) total_rx : 0.00 b/sec
rx_cpu_util. : 0.0% / 0.00 pkt/sec total_pps : 1.07 Mpkt/sec
async_util. : 0.18% / 1.38 KB/sec drop_rate : 13.00 Gb/sec
queue_full : 188,608,488 pkts

Port Statistics
port | 0 | 1 | total
----------------------------------------------------------------------
owner | root | root |
link | UP | UP |
state | TRANSMITTING | TRANSMITTING |
speed | 10 Gb/s | 10 Gb/s |
CPU util. | 45.1% | 45.1% |
-- | | |
Tx bps L2 | 6.50 Gbps | 6.50 Gbps | 13.00 Gbps
Tx bps L1 | 6.58 Gbps | 6.58 Gbps | 13.17 Gbps
Tx pps | 536.46 Kpps | 536.46 Kpps | 1.07 Mpps
Line Util. | 65.83 % | 65.83 % |
--- | | |
Rx bps | 0.00 bps | 0.00 bps | 0.00 bps
Rx pps | 0.00 pps | 0.00 pps | 0.00 pps
---- | | |
opackets | 41560470 | 41565638 | 83126108
ipackets | 0 | 0 | 0
obytes | 62922551580 | 62930375932 | 125852927512
ibytes | 0 | 0 | 0
opackets | 41.56 Mpkts | 41.57 Mpkts | 83.13 Mpkts
ipackets | 0 pkts | 0 pkts | 0 pkts
obytes | 62.92 GB | 62.93 GB | 125.85 GB
ibytes | 0 B | 0 B | 0 B
----- | | |
oerrors | 0 | 0 | 0
ierrors | 0 | 0 | 0


Nothing here is virtualized, it's a CentOS 7 on bare-metal. The server is directly connected to another server which is the "DDoS victim", therefore there is no return traffic to be seen here.

Best regards
Karl

hanoh haim

unread,
Mar 8, 2018, 1:25:20 PM3/8/18
to karl...@gmx.at, TRex Traffic Generator
queue_full is high which means that the NIC is not happy with the HW  configuration.

Can you send trex_cfg.yaml?
What is the result with “vm=cached”?

Hanoh

--
You received this message because you are subscribed to the Google Groups "TRex Traffic Generator" group.
To unsubscribe from this group and stop receiving emails from it, send an email to trex-tgn+u...@googlegroups.com.
To post to this group, send email to trex...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/trex-tgn/0bfee170-95c8-48fb-bc4d-d622f5d8a5c8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
Hanoh
Sent from my iPhone

hanoh haim

unread,
Mar 9, 2018, 4:24:02 AM3/9/18
to karl...@gmx.at, TRex Traffic Generator
Hi,
The short answer RTFM.
The long answer, your trex_cfg is not optional try using our script dpdk_setup_ports.py 
Look into the manual how to do that.
Hanoh

Karl Gerhard

unread,
Mar 9, 2018, 7:03:38 AM3/9/18
to hanoh haim, TRex Traffic Generator
Hello,

thanks for your help!
I have now a new config file, created via "dpdk_setup_ports.py -i". It looks like this:
### Config file generated by dpdk_setup_ports.py ###

 - port_limit: 2
  version: 2
  interfaces: ['05:00.0', '05:00.1']
  port_info:
      - dest_mac: 90:e2:ba:xx:xx:xx
        src_mac:  90:e2:ba:xx:xx:xx
      - dest_mac: 90:e2:ba:xx:xx:xx
        src_mac:  90:e2:ba:xx:xx:xx

   platform:
      master_thread_id: 0
      latency_thread_id: 1
      dual_if:
        - socket: 0
          threads: [2,3,4,5,6,7]

Unfortunately that didn't change anything, still only 6,5gbps per interface on on bench.py in stateless trex.

Regards
Karl



From: hanoh haim [mailto:hhaim...@gmail.com]
Sent: Friday, Mar 9, 2018 10:23 AM CET
To: karl...@gmx.at
Cc: TRex Traffic Generator
Subject: [trex-tgn] Only getting 6,5gbps out of a 10g interface on a bare metal server

You received this message because you are subscribed to a topic in the Google Groups "TRex Traffic Generator" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/trex-tgn/5Vbyvbqztuw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to trex-tgn+u...@googlegroups.com.

To post to this group, send email to trex...@googlegroups.com.

hanoh haim

unread,
Mar 9, 2018, 7:07:09 AM3/9/18
to Karl Gerhard, TRex Traffic Generator
Interesting, can you send the output of /.dpdk_setup_port -t

Karl Gerhard

unread,
Mar 9, 2018, 7:34:25 AM3/9/18
to hanoh haim, TRex Traffic Generator
Yes, of course.

$ ./dpdk_setup_ports.py -t

+----+------+---------+-------------------+------------------------------------------------+---------+----------+----------+

| ID | NUMA |   PCI   |        MAC        |                      Name                      | Driver  | Linux IF |  Active  |

+====+======+=========+===================+================================================+=========+==========+==========+

| 0  | -1   | 01:00.0 | d4:ae:52:xx:xx:xx | NetXtreme II BCM5716 Gigabit Ethernet          | bnx2    | em1      | *Active* |

+----+------+---------+-------------------+------------------------------------------------+---------+----------+----------+

| 1  | -1   | 01:00.1 | d4:ae:52:xx:xx:xx | NetXtreme II BCM5716 Gigabit Ethernet          | bnx2    | em2      |          |

+----+------+---------+-------------------+------------------------------------------------+---------+----------+----------+

| 2  | -1   | 04:00.0 | 90:e2:ba:xx:xx:xx | 82576 Gigabit Network Connection               | igb     | p2p1     |          |

+----+------+---------+-------------------+------------------------------------------------+---------+----------+----------+

| 3  | -1   | 04:00.1 | 90:e2:ba:xx:xx:xx | 82576 Gigabit Network Connection               | igb     | p2p2     |          |

+----+------+---------+-------------------+------------------------------------------------+---------+----------+----------+

| 4  | -1   | 05:00.0 | 90:e2:ba:xx:xx:xx | 82599ES 10-Gigabit SFI/SFP+ Network Connection | igb_uio |          |          |

+----+------+---------+-------------------+------------------------------------------------+---------+----------+----------+

| 5  | -1   | 05:00.1 | 90:e2:ba:xx:xx:xx | 82599ES 10-Gigabit SFI/SFP+ Network Connection | igb_uio |          |          |

+----+------+---------+-------------------+------------------------------------------------+---------+----------+----------+


From: hanoh haim [mailto:hhaim...@gmail.com]
Sent: Friday, Mar 9, 2018 1:06 PM CET
To: Karl Gerhard

hanoh haim

unread,
Mar 9, 2018, 7:44:57 AM3/9/18
to Karl Gerhard, TRex Traffic Generator
I don’t see an issue. 82559 supports full line-rate. Bidirectional.
It is something with your board/pci that limit the rate.

Could you try sending from port 0 to port 1?
Thanks,
Hanoh

Karl Gerhard

unread,
Mar 9, 2018, 8:10:23 AM3/9/18
to hanoh haim, TRex Traffic Generator
Indeed, it could be the PCIe slot that's too slow.
Will open the server on Monday and check whether the card is in the correct slot (the server has multiple PCIe 2.0 x4 slots vs. just one PCIe 2.0 x8 slot).

Thank you very much for your help Hanoh.


From: hanoh haim [mailto:hhaim...@gmail.com]
Sent: Friday, Mar 9, 2018 1:44 PM CET
Reply all
Reply to author
Forward
0 new messages