Bug 1732402 - fallback mode not working in ovs using a bonding in balance-tcp mode
Summary: fallback mode not working in ovs using a bonding in balance-tcp mode
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openvswitch
Version: 13.0 (Queens)
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: Open vSwitch development team
QA Contact: Eran Kuris
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-07-23 09:57 UTC by Miguel Angel Nieto
Modified: 2019-07-24 12:32 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-07-24 12:32:16 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Miguel Angel Nieto 2019-07-23 09:57:40 UTC
Description of problem:

I have configured a ovs bonding in mode balance-tcp and enabled the option lacp_fallback_ab. I also have lacp configured in the switch and it is working properly.

ovs-appctl bond/show dpdkbond1
---- dpdkbond1 ----
bond_mode: balance-tcp
bond may use recirculation: yes, Recirc-ID : 5
bond-hash-basis: 0
updelay: 0 ms
downdelay: 0 ms
next rebalance: 332 ms
lacp_status: negotiated
lacp_fallback_ab: true
active slave mac: 22:1c:bf:59:e7:12(dpdk2)

slave dpdk2: enabled
	active slave
	may_enable: true
	hash 168: 1 kB load

slave dpdk3: enabled
	may_enable: true

When I disable lacp in the switch, bonding should move to primary-backup and continue working in this mode, but the bonding stops sending traffic to the switch


Version-Release number of selected component (if applicable):
ovs-vsctl (Open vSwitch) 2.9.0
DB Schema 7.15.1
How reproducible:

I have a environment with a single compute connected to a switch through a ovs bonding. I have configured 2 vlan networks and 1 vm connected to each network. I have configured the switch in a routing mode so that it forwards traffic from 1 vlan to the other one. Then I ping from 1 vm to the other one

Switch configuration
oot# show interfaces xe-0/0/16    
description tigon09;
enable;
ether-options {
    802.3ad ae2;
}

{master:0}[edit]
root# show interfaces xe-0/0/17    
description tigon09;
enable;
ether-options {
    802.3ad ae2;
}

{master:0}[edit]
root# show interfaces ae2          
vlan-tagging;
aggregated-ether-options {
    minimum-links 1;
    lacp {
        passive;
    }
}
unit 0 {
    vlan-id 655;
    family inet {
        address 10.20.155.254/24;
    }
}
unit 1 {
    vlan-id 662;
    family inet {
        address 10.20.162.254/24;
    }
}

ovs configuration
   Bridge br-performance
        Controller "tcp:127.0.0.1:6633"
            is_connected: true
        fail_mode: secure
        Port "phy-br-pe498cb0"
            Interface "phy-br-pe498cb0"
                type: patch
                options: {peer="int-br-pe498cb0"}
        Port br-performance
            Interface br-performance
                type: internal
        Port "dpdkbond1"
            Interface "dpdk3"
                type: dpdk
                options: {dpdk-devargs="0000:05:0e.1", n_rxq="2"}
            Interface "dpdk2"
                type: dpdk
                options: {dpdk-devargs="0000:05:0a.1", n_rxq="2"}
    ovs_version: "2.9.0"


ovs-appctl bond/show dpdkbond1
---- dpdkbond1 ----
bond_mode: balance-tcp
bond may use recirculation: yes, Recirc-ID : 5
bond-hash-basis: 0
updelay: 0 ms
downdelay: 0 ms
next rebalance: 332 ms
lacp_status: negotiated
lacp_fallback_ab: true
active slave mac: 22:1c:bf:59:e7:12(dpdk2)

slave dpdk2: enabled
	active slave
	may_enable: true
	hash 168: 1 kB load

slave dpdk3: enabled
	may_enable: true


Actual results:

When I disable lacp in the switch, ovs stop sending traffic to the switch

Expected results:

it should start working in a primary-backup mode and continue working


Additional info:

Capture of the moment in which i disable lacp in the switch
09:56:40.984397 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 116, length 64
09:56:40.984407 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 116, length 64
09:56:40.984417 d0:07:ca:34:e9:f2 > fa:16:3e:c4:3d:6b, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 116, length 64
09:56:40.984462 fa:16:3e:c4:3d:6b > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.155.105 > 10.20.162.14: ICMP echo reply, id 17647, seq 116, length 64
09:56:40.984468 fa:16:3e:c4:3d:6b > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.155.105 > 10.20.162.14: ICMP echo reply, id 17647, seq 116, length 64
09:56:40.992611 d0:07:ca:34:e9:f2 > fa:16:3e:57:c6:56, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.155.105 > 10.20.162.14: ICMP echo reply, id 17647, seq 116, length 64
09:56:41.521410 22:1c:bf:59:e7:12 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:41.521435 a2:a7:64:43:43:85 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:42.521259 22:1c:bf:59:e7:12 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:42.521285 a2:a7:64:43:43:85 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:43.521502 22:1c:bf:59:e7:12 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:43.521528 a2:a7:64:43:43:85 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:44.521929 22:1c:bf:59:e7:12 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:44.521953 a2:a7:64:43:43:85 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:44.558872 fa:16:3e:c4:3d:6b > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 46: vlan 655, p 0, ethertype Reverse ARP, Reverse Request who-is fa:16:3e:c4:3d:6b tell fa:16:3e:c4:3d:6b, length 28
09:56:44.558934 fa:16:3e:57:c6:56 > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 46: vlan 662, p 0, ethertype Reverse ARP, Reverse Request who-is fa:16:3e:57:c6:56 tell fa:16:3e:57:c6:56, length 28
09:56:44.985382 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 120, length 64
09:56:44.985392 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 120, length 64
09:56:44.985423 d0:07:ca:34:e9:f2 > fa:16:3e:c4:3d:6b, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 120, length 64
09:56:45.522697 22:1c:bf:59:e7:12 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:45.522722 a2:a7:64:43:43:85 > 01:80:c2:00:00:02, ethertype Slow Protocols (0x8809), length 124: LACPv1, length 110
09:56:45.985412 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 121, length 64
09:56:45.985422 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 121, length 64
09:56:45.985430 d0:07:ca:34:e9:f2 > fa:16:3e:c4:3d:6b, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 121, length 64
09:56:46.985365 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 122, length 64
09:56:46.985375 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 122, length 64
09:56:46.985383 d0:07:ca:34:e9:f2 > fa:16:3e:c4:3d:6b, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 122, length 64
09:56:47.985366 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 123, length 64
09:56:47.985377 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 123, length 64
09:56:47.985384 d0:07:ca:34:e9:f2 > fa:16:3e:c4:3d:6b, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 123, length 64
09:56:48.985365 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 124, length 64
09:56:48.985376 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 124, length 64
09:56:48.985383 d0:07:ca:34:e9:f2 > fa:16:3e:c4:3d:6b, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 124, length 64
09:56:49.985366 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 125, length 64
09:56:49.985377 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 125, length 64
09:56:49.985384 d0:07:ca:34:e9:f2 > fa:16:3e:c4:3d:6b, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 125, length 64
09:56:50.985367 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 126, length 64
09:56:50.985378 fa:16:3e:57:c6:56 > d0:07:ca:34:e9:f2, ethertype 802.1Q (0x8100), length 102: vlan 662, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 126, length 64
09:56:50.985385 d0:07:ca:34:e9:f2 > fa:16:3e:c4:3d:6b, ethertype 802.1Q (0x8100), length 102: vlan 655, p 0, ethertype IPv4, 10.20.162.14 > 10.20.155.105: ICMP echo request, id 17647, seq 126, length 64

Comment 1 Miguel Angel Nieto 2019-07-24 12:32:16 UTC
there was a configuration problem in the switch. this is not a bug


Note You need to log in before you can comment on or make changes to this bug.