[ovs-discuss] problem with LACP Failover

Ethan Jackson ethan at nicira.com
Mon Jul 30 21:06:16 UTC 2012


Well, based on the output you've given, the bond looks healthy.
You'll have to figure out where precisely the packets are getting
dropped.  Typically I do this by using ovs-dpctl dump-flows to figure
out what the datapath is a given packet.  If you're still stuck, you
may want to check out the ovs-appctl ofproto/trace command.  You can
give it an exact match datapath flow, and it will tell you in detail
how userspace came to its forwarding decision.

Ethan

On Fri, Jul 27, 2012 at 12:28 AM, Pacôme MASSOL <pacome at pmassol.net> wrote:
> Le 26/07/2012 23:21, Ethan Jackson a écrit :
>
>> Please keep replies on the list.
>>
>>
> Ooops sorry !
>
> Thank you for your help. What I tried since your last message :
>
>
> This my startup configuration (VMs halted) :
>
> -----
> killall ovsdb-server
> killall ovs-vswitchd
>
> for tap in `seq 0 3`; do ip tuntap del mode tap sw0p$tap; done;
>
> rmmod openvswitch
>
> modprobe openvswitch
>
> for tap in `seq 0 3`; do ip tuntap add mode tap sw0p$tap; done;
> for tap in `seq 0 3`; do ip link set sw0p$tap up; done;
>
> rm -f /etc/openvswitch/conf.db
> ovsdb-tool create /etc/openvswitch/conf.db
> /usr/share/openvswitch/vswitch.ovsschema
>
> mkdir  /var/run/openvswitch
> ovsdb-server --remote=punix:/var/run/openvswitch/db.sock --pidfile --detach
>
> ovs-vsctl --no-wait init
>
> ovs-vswitchd --pidfile --detach
>
> ovs-vsctl add-br sw0
> ovs-vsctl add-port sw0 sw0p2
> ovs-vsctl add-bond sw0 bond0 sw0p0 sw0p1
>
> ovs-vsctl set port bond0 bond_mode=balance-tcp
> ovs-vsctl set port bond0 lacp=active
> ovs-vsctl set port bond0 other_config:lacp-time=fast
> ----
>
>
> Then I launch the 2 VMS (Windows 10.0.0.1 with LACP Intel proprietary driver
> configured with 802.3ad and a simple Linux Debian guest 10.0.0.2)
>
> When the Windows  guest is on, I get on the host :
> # ovs-appctl bond/show bond0
> bond_mode: balance-tcp
> bond-hash-algorithm: balance-tcp
>
> bond-hash-basis: 0
> updelay: 0 ms
> downdelay: 0 ms
> next rebalance: 5899 ms
>
> lacp_negotiated: true
>
> slave sw0p1: enabled
>     active slave
>     may_enable: true
>
> slave sw0p0: enabled
>     may_enable: true
>
>
>
> From now, it is really confusing. From the Linux vm, I ping the Win VM, the
> first 8 pings are OK and then it stops (without any intervention).
>
>
> What Wireshark says under Windows :
> - bonded NIC : ICMP requests from Linux and Win ARP requests
> - first NIC : only Win ARP requests (+LACP announces)
> - second NIC : only ICMP requests from Linux (+LACP announces)
> What tcpdump says under Linux :
> - Win ARP Requests
> - Linux ARP Replies
> - ICMP Requests
>
>
> Linux ARP replies never reach the Win VM.
>
>
> Bond state on the host :
>
> # ovs-appctl bond/show bond0
> bond_mode: balance-tcp
> bond-hash-algorithm: balance-tcp
>
> bond-hash-basis: 0
> updelay: 0 ms
> downdelay: 0 ms
> next rebalance: 8452 ms
>
> lacp_negotiated: true
>
> slave sw0p1: enabled
>     active slave
>     may_enable: true
>     hash 237: 0 kB load
>
>
> slave sw0p0: enabled
>     may_enable: true
>     hash 80: 1 kB load
>
>
> _______________________________________________
> discuss mailing list
> discuss at openvswitch.org
> http://openvswitch.org/mailman/listinfo/discuss



More information about the discuss mailing list