[ovs-discuss] unable to get all packets from the physical interface to OVS bridge

Anish M Anish.M at anritsu.com
Wed Sep 18 04:22:38 UTC 2019

Im trying to forward/mirror VM packets between two ovs-dpdk compute nodes. With the help of http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/ link, i could able to setup additional NIC for forwarding the packet from source ovs-dpdk compute node to the destination compute node. I could able to see all the vxlan forwarded packets at the destination compute node's additional NIC. But the same is not visible at the ovs bridge where is attached that additional NIC.

At both the compute nodes, i have same type of 2 port 10G NIC. ens1f0 & ens1f1.

ens1f0 is acting as DPDK port and im using it inside the openstack for DPDK VMs at both compute nodes.

In order to mirror DPDK VM traffic from one compute node to another compute node, i followed the above userspace-tunnelling link and able to forward VM traffic from source compute node towards the ens1f1( of the destination compute node.

ovs-vsctl --may-exist add-br br-phy \
    -- set Bridge br-phy datapath_type=netdev \
    -- br-set-external-id br-phy bridge-id br-phy \
    -- set bridge br-phy fail-mode=standalone \

ovs-vsctl --timeout 10 add-port br-phy ens1f1
ip addr add dev br-phy
ip link set br-phy up
ip addr flush dev ens1f1 2>/dev/null
ip link set ens1f1 up

Even though i receiving all the mirrored vxlan packets at ens1f1 port (checked using tcpdump), the same number of packets are not available inside the ovs br-phy bridge (only ~10% of the mirrored traffic is available inside the br-phy)

[root at overcloud-hpcomputeovsdpdk-0 ~]# ovs-ofctl dump-flows br-phy
 cookie=0x3435, duration=46778.969s, table=0, n_packets=30807, n_bytes=3889444, priority=0 actions=NORMAL

[root at overcloud-hpcomputeovsdpdk-0 ~]# ovs-ofctl dump-ports br-phy
OFPST_PORT reply (xid=0x2): 3 ports
  port LOCAL: rx pkts=77, bytes=5710, drop=0, errs=0, frame=0, over=0, crc=0
           tx pkts=30107, bytes=3604094, drop=28077, errs=0, coll=0
  port  ens1f1: rx pkts=4385104, bytes=596066321, drop=0, errs=0, frame=0, over=0, crc=0
           tx pkts=33606, bytes=4021526, drop=0, errs=0, coll=0
  port  "patch-tap-bint": rx pkts=30056, bytes=3591859, drop=?, errs=?, frame=?, over=?, crc=?
           tx pkts=739, bytes=294432, drop=?, errs=?, coll=?

In ens1f1, i could see lot of rx pkts, but in the br-phy flow im seeing only few packets.

Please provide any advice how i can mirror/forward packets between two OVS-DPDK compute nodes.

Best Regards,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20190918/773ddf8f/attachment.html>

More information about the discuss mailing list