RunningTrexOnAzure

598 views
Skip to first unread message

amitkumar...@gmail.com

unread,
Aug 3, 2018, 7:37:05 AM8/3/18
to TRex Traffic Generator
I am trying to run Trex on Linux Vm (ubuntu 18.04 LTS) on Microsoft Azure platform but the first command "./dpdk_setup_ports.py -s" is not able to identify the ethernet devices. After a little code digging of the script I found that it is using "lspci" command to get the interface information. But since on Azure Cloud, drivers are hyper-v specific, lspci is not able to read the network devices.

So how to run Trex on Microsoft Azure.

Any suggestions are welcome.

hanoh haim

unread,
Aug 4, 2018, 2:38:50 PM8/4/18
to amitkumar...@gmail.com, TRex Traffic Generator
Google shows that MS have moved to ThunderXV and claim to 30Gb/sec.

I would try to add the DPDK driver to prove this.

You can have a look into the ENA commit for a reference.

Thanks,
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/578864bd-aa58-4d42-8afe-aa3429351893%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
Hanoh
Sent from my iPhone

amitkumar...@gmail.com

unread,
Aug 6, 2018, 1:55:38 AM8/6/18
to TRex Traffic Generator

Thanks for the feedback.
I checked that the latest dpdk version contains driver support for Hyper-V "https://github.com/DPDK/dpdk/tree/master/drivers/net/netvsc" and "https://github.com/DPDK/dpdk/tree/master/drivers/bus/vmbus". However it seems that this is not merged with latest Trex version. So can you please provide a updated Trex merged with latest DPDK library with Hyper-V support; or if you can provide with the list of required modules required to be incoprporated. I am running Trex version v2.44.

hanoh haim

unread,
Aug 6, 2018, 2:07:38 AM8/6/18
to amitkumar...@gmail.com, TRex Traffic Generator

amitkumar...@gmail.com

unread,
Aug 7, 2018, 7:50:54 AM8/7/18
to TRex Traffic Generator

I was finally able to include Hyper-v support driver ('netvsc' driver and 'vmbus' bus); thanks to you :). However, the "scripts/dpdk_setup_ports.py" is not modified accordingly for reading the interfaces based on netvsc driver on my Azure VM. Hence, "dpdk_setup_ports.py -s" command is showing no interfaces. Can you provide the updated scripts? It will be of great help!

hanoh haim

unread,
Aug 7, 2018, 10:16:35 AM8/7/18
to amitkumar...@gmail.com, TRex Traffic Generator
It is not pci driver, it is vdev.

Have a look here for example of name:

interfaces: ['--vdev=net_af_packet0,iface=eth2', '--vdev=net_af_packet1,iface=eth3']

The above is af_packet vdev.


Thanks,
Hanoh


For more options, visit https://groups.google.com/d/optout.
--

amitkumar...@gmail.com

unread,
Aug 14, 2018, 9:17:04 AM8/14/18
to TRex Traffic Generator
Thanks for the solution. I am now able to run Trex on Azure platform easily. Just added the interfaces as vdev (as you mentioned) in trex_cfg.yaml and all is working fine.
I would also like to mention that no patching was required in DPDK library (DPDK was not required). Standard trex installation was done.

Thanks again :)

(Sorry for late acknowledgement)

hanoh haim

unread,
Aug 14, 2018, 1:10:04 PM8/14/18
to amitkumar...@gmail.com, TRex Traffic Generator
Can you explain to others how you did that?
What is the performance? are you using AF_PACKET?

--
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.

For more options, visit https://groups.google.com/d/optout.

amitkumar...@gmail.com

unread,
Aug 16, 2018, 5:55:04 AM8/16/18
to TRex Traffic Generator
The topology is a client-server layout using ASTF model.
To generate traffic, I used ASTF python script that opens a TCP connection and sends some data to the server. The script is then run with the t-rex command with the help of -f option (./t-rex-64 -f astf-dev/<script_name>.py .... ). On server and client, "--astf-server-only" and "--astf-client-mask 1" flags were used respectively.

Yes, "af_packet" was used in configuration file (/etc/trex_cfg.yaml).

Client : ['--vdev=net_af_packet0,iface=eth1','dummy'];
Server : ['dummy', '--vdev=net_af_packet0,iface=eth0']

My application still is in development stage and hence the bottleneck happens at my application. Right now, I am not in a position to tell you how much b/w can be rechable using trex. For my application ~500Mbps throughput was enough and it was acheiveable in Azure using TRex.

amitkumar...@gmail.com

unread,
Aug 16, 2018, 6:28:00 AM8/16/18
to TRex Traffic Generator
Forgot to mention about installation...

For installation, the following link was downloaded wget --no-cache https://codeload.github.com/cisco-system-traffic-generator/trex-core/zip/master.

After unziping the latest directory, took help from here.
https://github.com/cisco-system-traffic-generator/trex-core/wiki#how-to-build-trex

hanoh haim

unread,
Aug 16, 2018, 7:30:14 AM8/16/18
to amitkumar...@gmail.com, TRex Traffic Generator
This configuration will have a limited performance. You will need native DPDK driver to solve this as I’ve suggested.


Thanks,
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.

For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages