[dpdk-dev] vhost-switch TX corrupted packet with Fedora 21 VM

Choi, Sy Jong sy.jong.choi at intel.com
Thu Apr 16 04:55:48 CEST 2015


Hi

Sending packets out from virtio to dpdk vhost to phy will cause packets corruption
I have tested this using 
 - DPDK 2.0.0 using vhost-cuse, 
 - qemu 1.6.1. 
 - DPDK vhost-switch sample app.

Fedara 21 (kernel 3.19), packets corrupted.
Debian Wheezy (kernel 3.2), packets are ok.

Sometime the packets was not even sent out, and I keep getting this message. 
VHOST_DATA: (0) WARNING: This device is using an existing MAC address and has not been registered
VHOST_DATA: (0) WARNING: This device is using an existing MAC address and has not been registered

I think DPDK vhost-switch filter non register MAC address.
Occasionally, packets were being forwarded by vhost-switch.

Setup is very simple, just configure IP address (1.1.1.1/24) on the VM eth0, and ping an IP address (1.1.1.2) on the same subnet with Arp table entry added.									__
    +---------------------------------------------------+   |
    |   guest                                           |   |
    |   +-------------------------------------------+   |   |
    |   |               Ping  ICMP                  |   |   |
    |   +-------------------------------------------+   |   |
    |       :                                           |   |
    |       |                                           |   |  guest
    |       v                                           |   |
    |   +-------------------------------------------+   |   |
    |   |               Kernel Virtio               |   |   |
    +---+---------------+-----------+---------------+---+ __|
            :                                   
            |                                   
            v                                            __
    +---+---------------+----------+--------------=+---+   |
    |   | vhost net0    |                              |   |
    |   +---------------+                              |   |
    |       :                                          |   |
    |       |                                          |   |  host
    |       V                                          |   |
    |   +--------------+                               |   |
    |   |   phy port   |  vhost-switch                 |   |
    +---+--------------+-------------------------------+ __|
               :                           
               |                           
               V                           
    +--------------------------------------------------+
    |                                                  |
    |                traffic generator                 |
    |                                                  |
    +--------------------------------------------------+

ICMP packet has become:-
0010: 00000000100000001050b95a81000000 0088ffff1050b95a0088ffff2050b95a
0020: 0088ffff2050b95a0088ffff3050b95a 0088ffff3050b95a0088ffff4050b95a
0030: 0088ffff4050b95a0088ffff5050b95a 0088ffff5050b95a0088ffff6050b95a
0040: 0088ffff6050b95a

Regards,
Choi, Sy Jong
Platform Application Engineer



More information about the dev mailing list