Hi All,
I am configuring OVS-DPDK with multiple queues with vhost-user. I am using
below packages,
OVS --- Branch 2.6
DPDK --- 16.07
OVS Configuration :
ovs-vsctl --no-wait add-br br0 -- set bridge br0 datapath_type=netdev
ovs-vsctl --no-wait add-port br0 dpdk0 -- set Interface dpdk0 type=dpdk
ofport_request=1
ovs-vsctl --no-wait add-port br0 dpdk1 -- set Interface dpdk1 type=dpdk
ofport_request=2
ovs-vsctl --no-wait add-port br0 vhost-user-1 -- set Interface vhost-user-1
type=dpdkvhostuser ofport_request=3
ovs-vsctl set Open_vSwitch . other_config:pmd-cpu-mask=C
ovs-vsctl set Interface dpdk0 options:n_rxq=2
ovs-vsctl set Interface dpdk1 options:n_rxq=2
ovs-vsctl set Interface vhost-user0 options:n_rxq=2
ovs-ofctl del-flows br0
Flow 1: ovs-ofctl add-flow br0 in_port=1,action=set_queue=0,output:3 -O
openflow13
Flow 2: ovs-ofctl add-flow br0 in_port=2,action=set_queue=1,output:3 -O
openflow13
Flow 3: ovs-ofctl add-flow br0 in_port=3,action=output:1 -O openflow13
Qemu command:
qemu-system-x86_64 -cpu host -smp 5,cores=5 -hda vhost-user.img -m 4096M
--enable-kvm -object
memory-backend-file,id=mem,size=4096M,mem-path=/dev/hugepages,share=on -numa
node,memdev=mem -mem-prealloc -chardev
socket,id=char1,path=/usr/local/var/run/openvswitch/vhost-user0 -netdev
type=vhost-user,id=mynet1,chardev=char1,vhostforce,queues=2 -device
virtio-net-pci,mac=00:00:00:00:00:01,netdev=mynet1,mq=on,vectors=6
Inside VM (Running test-pmd) application:
./testpmd -c 0x1F -n 4 --socket-mem 1024 -- --burst=64 -i --txqflags=0xf00
--dissable-hw-vlan --rxq=2 --txq=2 --nb-cores=4
set stat_qmap rx 0 0 0
set stat_qmap rx 0 1 1
set stat_qmap tx 0 0 0
set stat_qmap tx 0 1 1
start
Issue: When I start sending traffic from external traffic generator, as per my
requirement traffic should flow as below,
Port 1 --- Port 3 (q0-rx --- q0--tx) --- port 1
Port 2 ----Port 3 (q1-rx --- q1--tx) --- port 1
But in the test PMD statistics I could see all traffic on q0 only. As per my
flow 2, port 2 traffic should be mapped to q1 inside VM.
When I configure multi queues using n_rxq option, Inside vswitchd logs I could
see below warning,
dpdk|WARN|Failed to enable flow control on device 0
show port stats 0
testpmd> show port stats 0
######################## NIC statistics for port 0 ########################
RX-packets: 20 RX-errors: 0 RX-bytes:
1200
RX-errors: 0
RX-nombuf: 0
TX-packets: 20 TX-errors: 0 TX-bytes:
1200
Stats reg 0 RX-packets: 20 RX-errors: 0 RX-bytes:
1200
Stats reg 1 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 2 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 3 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 4 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 5 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 6 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 7 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 8 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 9 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 10 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 11 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 12 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 13 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 14 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Stats reg 15 RX-packets: 0 RX-errors: 0 RX-bytes:
0
Throughput (since last show)
Rx-pps: 0
Tx-pps: 0
############################################################################
Please let me know whether I am configuring anything wrong, which causes the
incorrect queue mapping.
And what will be the configuration I have follow in order to define flows for
multi queue mapping. How can efficiently make use of all queues inside VM using
ovs-ofctl shows.
Also I would like to know is there any OVS CLI to display multi queue
statistics(rx/tx counters).
Thanks in Advance,
Regards,
Gayathri
The information contained in this electronic message and any attachments to
this message are intended for the exclusive use of the addressee(s) and may
contain proprietary, confidential or privileged information. If you are not the
intended recipient, you should not disseminate, distribute or copy this e-mail.
Please notify the sender immediately and destroy all copies of this message and
any attachments. WARNING: Computer viruses can be transmitted via email. The
recipient should check this email and any attachments for the presence of
viruses. The company accepts no liability for any damage caused by any virus
transmitted by this email. www.wipro.com
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev