The problem appears to be outside ovs.
Somewhere you wrote that you are using a physical switch. Could you remove
that and connect the outside PC directly to the dpdk port?

If things still do not work, I would suggest to use the test_pmd (
http://dpdk.org/doc/guides/testpmd_app_ug/index.html) application to test
your card.

Once again, please let me know the results.

Mauricio Vasquez,

On Wed, Apr 20, 2016 at 1:01 PM, lifuqiong <lifuqi...@cncloudsec.com> wrote:

> Hi Mauricio Vasquez:
>
>     Thank you for your good advice.
>
>     I changed my environment as you metioned, And try to ping from VM to
> pc, but they cannot still ping each other.
>
>     The result is still my dpdk physical NIC drop packets. Is my NIC
> problem?
>
>
>
>     Here is my configuration:
>
> 1.  ovs-ofctl dump-flows ovsbr0
>
> NXST_FLOW reply (xid=0x4):
>
> cookie=0x0, duration=364.902s, table=0, n_packets=0, n_bytes=0,
> idle_age=364, in_port=1 actions=output:3
>
> cookie=0x0, duration=356.014s, table=0, n_packets=191, n_bytes=8334,
> idle_age=1, in_port=3 actions=output:1
>
>
>
> 2.  ovs-ofctl dump-ports ovsbr0
>
> OFPST_PORT reply (xid=0x2): 3 ports
>
>   port LOCAL: rx pkts=23, bytes=1278, drop=0, errs=0, frame=0, over=0,
> crc=0
>
>            tx pkts=631, bytes=28750, drop=0, errs=0, coll=0
>
>   port  1: rx pkts=272, bytes=26283, drop=188024, errs=0, frame=?, over=?,
> crc=?
>
>            tx pkts=0, bytes=0, drop=0, errs=0, coll=?
>
>   port  3: rx pkts=2110, bytes=192508, drop=?, errs=0, frame=?, over=?,
> crc=?
>
>            tx pkts=2462, bytes=205658, drop=0, errs=?, coll=?
>
>
>
> 3.  ovs-ofctl show ovsbr0
>
> OFPT_FEATURES_REPLY (xid=0x2): dpid:00002c534a01cd5e
>
> n_tables:254, n_buffers:256
>
> capabilities: FLOW_STATS TABLE_STATS PORT_STATS QUEUE_STATS ARP_MATCH_IP
>
> actions: output enqueue set_vlan_vid set_vlan_pcp strip_vlan mod_dl_src
> mod_dl_dst mod_nw_src mod_nw_dst mod_nw_tos mod_tp_src mod_tp_dst
>
> 1(dpdk0): addr:2c:53:4a:01:cd:5e
>
>      config:     0
>
>      state:      0
>
>      current:    100MB-FD
>
>      supported:  100MB-FD 1GB-HD 1GB-FD 10GB-FD AUTO_NEG AUTO_PAUSE_ASYM
>
>      speed: 100 Mbps now, 10000 Mbps max
>
> 3(vhost-user-0): addr:00:00:00:00:00:00
>
>      config:     PORT_DOWN
>
>      state:      LINK_DOWN
>
>      speed: 0 Mbps now, 0 Mbps max
>
> LOCAL(ovsbr0): addr:2c:53:4a:01:cd:5e
>
>      config:     0
>
>      state:      0
>
>      current:    10MB-FD COPPER
>
>      speed: 10 Mbps now, 0 Mbps max
>
> OFPT_GET_CONFIG_REPLY (xid=0x4): frags=normal miss_send_len=0
>
> *发件人:* Mauricio Vásquez [mailto:mauricio.vasquezber...@studenti.polito.it]
>
> *发送时间:* 2016年4月20日 18:00
> *收件人:* lifuqiong
> *抄送:* dev@openvswitch.org
> *主题:* Re: 答复: Reply: [ovs-dev] ovs + dpdk vhost-user match flows but
> cannot execute actions
>
>
>
> Hi lifuqion,
>
> It appears to me that the problem is that port1 is dropping the packets. I
> would suggest to create a simplified setup:
>
> - One dpdk physical NIC
>
> - One vhost-user port
>
> - Remove the NORMAL flow
> ovs-ofctl del-flows ovsbr0
>
> - Add a pair of flows between the physical NIC and the VM (please check
> the openflow numbers of the ports, you can use the ovs-ofctl show ovsbr0
> command)
> ovs-ofctl add-flow ovsbr0 "in_port=1 action=output:2"
> ovs-ofctl add-flow ovsbr0 "in_port=2 action=output:1"
>
> Try to ping, use the dump-flows and dump-ports commands to view the
> packets counters,
>
> Please let me know the results of that test.
>
> Mauricio Vasquez,
>
>
>
> On Wed, Apr 20, 2016 at 2:30 AM, lifuqiong <lifuqi...@cncloudsec.com>
> wrote:
>
> Hi Mauricio Vasquez:
>
>
>
> root@host52:~# ovs-vsctl show
>
> f2664a74-7523-4240-812a-4f022051346a
>
>     Bridge "ovsbr0"
>
>         Port "vhost-user-1"
>
>             Interface "vhost-user-1"
>
>                 type: dpdkvhostuser
>
>         Port "dpdk0"
>
>             Interface "dpdk0"
>
>                 type: dpdk
>
>         Port "ovsbr0"
>
>             Interface "ovsbr0"
>
>                 type: internal
>
>         Port "vhost-user-0"
>
>             Interface "vhost-user-0"
>
>                 type: dpdkvhostuser
>
>         Port "dpdk1"
>
>             Interface "dpdk1"
>
>                 type: dpdk
>
>
>
> root@host52:~# ovs-ofctl dump-flows ovsbr0
>
> NXST_FLOW reply (xid=0x4):
>
> cookie=0x0, duration=291278.976s, table=0, n_packets=4414, n_bytes=392730,
> idle_age=65534, hard_age=65534, priority=0 actions=NORMAL
>
>
>
>
>
> root@host52:~# ovs-ofctl dump-ports ovsbr0
>
> OFPST_PORT reply (xid=0x2): 5 ports
>
>   port  4: rx pkts=2472, bytes=207008, drop=?, errs=0, frame=?, over=?,
> crc=?
>
>            tx pkts=1893, bytes=181572, drop=49, errs=?, coll=?
>
>   port LOCAL: rx pkts=23, bytes=1278, drop=0, errs=0, frame=0, over=0,
> crc=0
>
>            tx pkts=631, bytes=28750, drop=0, errs=0, coll=0
>
>   port  1: rx pkts=272, bytes=26283, drop=127396, errs=0, frame=?, over=?,
> crc=?
>
>            tx pkts=0, bytes=0, drop=0, errs=0, coll=?
>
>   port  2: rx pkts=0, bytes=0, drop=0, errs=0, frame=?, over=?, crc=?
>
>            tx pkts=0, bytes=0, drop=0, errs=0, coll=?
>
>   port  3: rx pkts=1919, bytes=184174, drop=?, errs=0, frame=?, over=?,
> crc=?
>
>            tx pkts=2462, bytes=205658, drop=0, errs=?, coll=?
>
>
>
> Thank you.
>
> *发件人:* Mauricio Vásquez [mailto:mauricio.vasquezber...@studenti.polito.it]
>
> *发送时间:* 2016年4月19日 21:49
> *收件人:* lifuqiong
> *抄送:* dev@openvswitch.org
> *主题:* Re: Reply: [ovs-dev] ovs + dpdk vhost-user match flows but cannot
> execute actions
>
>
>
> Hi lifuqiong,
>
> Could you provide the output of the following commands in your setup?:
> ovs-vsctl show
> ovs-ofctl dump-flows
> ovs-ofctl dump-ports
>
> Mauricio Vasquez,
>
>
>
> On Sat, Apr 16, 2016 at 10:23 AM, lifuqiong <lifuqi...@cncloudsec.com>
> wrote:
>
> Hi Mauricio:
>
>          I changed my qemu version from 2.2.1 to 2.5.0 and the vms can
> communication with each other. But the VM cannot ping PC in the outside
> network. They in a same subnet.
>
>
>
> PC(192.168.0.103/24) ping vm(192.168.0.90);  vm’s host’s dpdk NIC and PC
> are in a L2 switch. And DPDK NIC connected to switch’s Port Eth1/0/8
>
> Investigation:
>
>          Binding VM’s IP and Mac in PC’s ARP table, and binding VM’s Mac
> in Port Eth1/0/8; PC is pinging vm, I can see Output packets of Eth1/0/8
> increasing regularly, which means the ping request packet has send to DPDK
> NIC.
>
>
>
> But the VM can not receive the packet?
>
>
>
>          My switch has NO vlan , the default VLAN is 1. But when I ping
> from vm1 to vm2 , showing MaC address in OVS which shows as follows:
>
> port  VLAN  MAC                Age
>
>     4     0  00:00:00:00:02:12    1
>
> 3     0  00:00:00:00:00:04    1
>
>
>
>
>
> What was the reason why VM cannot communication with the PC? Thank you
>
>
>
> *发件人:* lifuqiong [mailto:lifuqi...@cncloudsec.com]
> *发送时间:* 2016年4月15日 9:22
> *收件人:* 'Mauricio Vásquez'
> *抄送:* 'dev@openvswitch.org'
> *主题:* 答复: [ovs-dev] ovs + dpdk vhost-user match flows but cannot execute
> actions
>
>
>
> Hello Mauricio Vasquez:
>
>     It works. Thank you very much.
>
>
>
>
>
> *发件人:* Mauricio Vásquez [mailto:mauricio.vasquezber...@studenti.polito.it
> <mauricio.vasquezber...@studenti.polito.it>]
> *发送时间:* 2016年4月14日 14:55
> *收件人:* lifuqiong
> *抄送:* dev@openvswitch.org
> *主题:* Re: [ovs-dev] ovs + dpdk vhost-user match flows but cannot execute
> actions
>
>
>
> Hello lifuqiong,
>
> I faced the same problem some days ago (
> http://openvswitch.org/pipermail/dev/2016-March/068282.html), the bug is
> already fixed.
>
> Where are you downloading OVS from?, it appears that the bug is still
> present in the version on
> http://openvswitch.org/releases/openvswitch-2.5.0.tar.gz, please download
> ovs from git and switch to branch-2.5.
>
> Mauricio Vasquez,
>
>
>
> On Thu, Apr 14, 2016 at 4:28 AM, lifuqiong <lifuqi...@cncloudsec.com>
> wrote:
>
> I want to test dpdk vhost-user port on ovs to follow
> https://software.intel.com/en-us/blogs/2015/06/09/building-vhost-user-for-ovs-today-using-dpdk-200
> ;
> I create ovs+dpdk environment followed INSTALL.DPDK.md; and create 2 VM2,
> try to ping each other but show me “Destination Host Unreachable”;
> Dump-flows shows packets matched the flow, but can’t output to port 4, why
> ? I can’t get any useful error or warning info from ovs-vswitchd.log.
> While ping from vm1 to vm2, statistics on vm1 shows that eth1 RX_packet
> keeps zero, TX_PACKET keeps increasing.
> 1.
>         OVS: 2.5.0
>         Dpdk: 2.2.0
>         Qemu: 2.2.1
>
> 2. ovs-ofctl dump-flows ovsbr0
> NXST_FLOW reply (xid=0x4):
> cookie=0x0, duration=836.946s, table=0, n_packets=628, n_bytes=26376,
> idle_age=0, in_port=3 actions=output:4
> cookie=0x0, duration=831.458s, table=0, n_packets=36, n_bytes=1512,
> idle_age=770, in_port=4 actions=output:3
>
> 3. root@host152:/usr/local/var/run/openvswitch# ovs-vsctl show
> 03ae6f7d-3b71-45e3-beb0-09fa11292eaa
>     Bridge "ovsbr0"
>         Port "vhost-user-1"
>             Interface "vhost-user-1"
>                 type: dpdkvhostuser
>         Port "ovsbr0"
>             Interface "ovsbr0"
>                 type: internal
>         Port "dpdk1"
>             Interface "dpdk1"
>                 type: dpdk
>         Port "vhost-user-0"
>             Interface "vhost-user-0"
>                 type: dpdkvhostuser
>         Port "dpdk0"
>             Interface "dpdk0"
>                 type: dpdk
>
> 4. Start VM info:
> qemu-system-x86_64 -m 1024 -smp 2 -hda /root/vm11.qcow2 -boot c
> -enable-kvm -vnc 0.0.0.0:1 -chardev
> socket,id=char1,path=/usr/local/var/run/openvswitch/vhost-user-0 -netdev
> type=vhost-user,id=mynet1,chardev=char1,vhostforce -device
> virtio-net-pci,mac=00:00:00:00:01:12,netdev=mynet1 -object
> memory-backend-file,id=mem,size=1024M,mem-path=/dev/hugepages,share=on
> -numa node,memdev=mem -mem-prealloc -d exec
>
> qemu-system-x86_64: -netdev
> type=vhost-user,id=mynet1,chardev=char1,vhostforce: chardev "char1" went up
>
>
>
> 5. My build command as follows:
> #!/bin/bash
>
> ################ config and compile dpdk  ################ # cd dpdk #
> make config T=x86_64-native-linuxapp-gcc # make install
> T=x86_64-native-linuxapp-gcc
> ########################################################
>
> ################ config and compile ovs ################ # cd ovs #
> ./boot.sh # ./configure --localstatedir=/var
> --with-dpdk=/root/workplane/dpdk/x86_64-native-linuxapp-gcc
> # make
> # make install
> ########################################################
>
> ################ config and compile qemu ################ # cd qemu #
> ./configure # make # make install
> ########################################################
>
> ## set hugepage number, use boot cmdline or procfs echo 8 >
> /proc/sys/vm/nr_hugepages
>
> ## insert the kernel modules
> modprobe uio
> insmod $DPDK_BUILD/kmod/igb_uio.ko
> insmod $DPDK_BUILD/kmod/rte_kni.ko
> insmod $DPDK_DIR/lib/librte_vhost/eventfd_link/eventfd_link.ko
>
> # unbind the dpdk interface
>
> $DPDK_DIR/tools/dpdk_nic_bind.py --bind=igb_uio 01:00.0
> $DPDK_DIR/tools/dpdk_nic_bind.py --bind=igb_uio 01:00.1
>
> #Mount hugetable
> mkdir -p /dev/hugepages
> mount -t hugetlbfs -o pagesize=1G none /dev/hugepages
>
> #first time
> #ovsdb-tool create /usr/local/etc/openvswitch/conf.db
> /usr/local/share/openvswitch/vswitch.ovsschema
>
> ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock
> --remote=db:Open_vSwitch,Open_vSwitch,manager_options --pidfile --detach
> --log-file
>
> #firsttime only
> #ovs-vsctl --no-wait init
> ovs-vswitchd --dpdk -c 0x77 -n 2 --socket-mem 2048,0 -- unix:$DB_SOCK
> --pidfile --detach --log-file
>
>
> ##############################################################################
> ## Add brige
> /usr/local/bin/ovs-vsctl add-br ovsbr0 -- set bridge ovsbr0
> datapath_type=netdev
>
> ## Add dpdk port
> /usr/local/bin/ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0
> type=dpdk /usr/local/bin/ovs-vsctl add-port ovsbr0 dpdk1 -- set Interface
> dpdk1 type=dpdk # /usr/local/bin/ovs-vsctl add-port ovsbr0 dpdk2 -- set
> Interface dpdk2 type=dpdk # /usr/local/bin/ovs-vsctl add-port ovsbr0 dpdk3
> -- set Interface dpdk3 type=dpdk
>
> ## Add vhost-user port
> /usr/local/bin/ovs-vsctl add-port ovsbr0 vhost-user-0 -- set Interface
> vhost-user-0 type=dpdkvhostuser /usr/local/bin/ovs-vsctl add-port ovsbr0
> vhost-user-1 -- set Interface vhost-user-1 type=dpdkvhostuser
>
>
>
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
>
>
>
>
>
>
>
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to