Loading...

OpenVSwitch LACP BonDing Test Setup Problems E-Learning Free Ebook

I want to test LACP bonding on ovs. I have 3 Ubuntu computer.

Using 2 of them as a openvswitch and one of them as a host.

OpenVSwitch LACP BonDing Test Setup Problems


The first ubuntu (call it switch1) has three NIC (2 of them usb/eth converter)


  • 02:00.0 Network controller: Intel Corporation Centrino Wireless-N 1000 [Condor Peak]
  • 85:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8072 PCI-E Gigabit Ethernet Controller (rev 10)

The second ubuntu (call it switch2) has 2 NIC, one of them is usb/eth converter (same with Marvell Tech above)

The third ubuntu (call it host) will be host connected to switch1 and it has one embedded ethernet interface interface.

I want to bond (lacp=active) eth0 end eth1 on both switch 1 and switch 2. And connect switch1's eth0 to switch2's eth0 with a cable. And connect eth1's as well.


I did all setup. On switch1 :


sudo ovs-vsctl add-br br0
sudo ovs-vsctl add-bond br0 bond0 eth0 eth1 lacp=active bond_mode=balance-tcp
sudo ovs-vsctl add-port br0 eth2
sudo ovs-vsctl show
72a6ecb7-8ad9-4c6e-b727-503207e3844c
    Bridge "br0"
        fail_mode: standalone
        Port "eth2"
            Interface "eth2"
        Port "bond0"
            Interface "eth0"
            Interface "eth1"
        Port "br0"
            Interface "br0"
                type: internal


My first question is why my interfaces are disabled on bond ?

sudo ovs-appctl bond/show bond0
---- bond0 ----
bond_mode: balance-tcp
bond may use recirculation: yes, Recirc-ID : 2
bond-hash-basis: 0
updelay: 0 ms
downdelay: 0 ms
next rebalance: 7634 ms
lacp_status: configured
active slave mac: 00:00:00:00:00:00(none)

slave eth0: disabled
    may_enable: false

slave eth1: disabled
    may_enable: false

I made same ovs setup on Switch2. And connected switch1 and 2. to test bond connectivity i have planned to send a ping from host to anywhere, put a rule to switch1 that anything comes to port eth2 should be mirrored to bond0 on switch1.

sudo ovs-vsctl -- set Bridge br0 mirrors=@m -- --id=@bond0 get Port bond0 -- --id=@eth2 get Port eth2 -- --id=@m create Mirror name=mymirror select-dst-port=@eth2 select-src-port=@eth2 output-port=@bond0

After that when i check the mirror

sudo ovs-vsctl list Mirror
_uuid               : 9bb76b24-d169-4a9c-ab00-ef0bd1df91e6
external_ids        : {}
name                : mymirror
output_port         : []
output_vlan         : []
select_all          : false
select_dst_port     : [04e085fc-3b4d-448f-b8cc-6d4fd2038381]
select_src_port     : [04e085fc-3b4d-448f-b8cc-6d4fd2038381]
select_vlan         : []
statistics          : {tx_bytes=212272, tx_packets=1112}

I start send ping from host to switch 1 with ping -I eth0 anywhere.com and listen in switch1 with sudo tcpdump -i eth2 I can see arp messages from hosts

17:00:49.293446 ARP, Request who-has s3-website-us-west-1.amazonaws.com tell 192.168.50.51, length 46 ...

But when i try to listen eth0 or eth1 on Switch1, nothing comes those ports. I cannot listen bond0 port with tcpdump but i can check my mirrors.

sudo ovs-vsctl list Mirror
_uuid               : 9bb76b24-d169-4a9c-ab00-ef0bd1df91e6
external_ids        : {}
name                : mymirror
output_port         : []
output_vlan         : []
select_all          : false
select_dst_port     : [04e085fc-3b4d-448f-b8cc-6d4fd2038381]
select_src_port     : [04e085fc-3b4d-448f-b8cc-6d4fd2038381]
select_vlan         : []
statistics          : {tx_bytes=212272, tx_packets=1112}

I can see there are some tx/rx bytes so i expect from my switch1 to send everything comes from eth2 to switch2 via bond0. But when i check switch2 interfaces with tcpdump, i see nothing pass over switch2.

Here my second question arises, is there any way to listen packets on bond0 (for both switches) ?

And my last question, I suppose when i mirror eth2 traffic to bond0 as output port on switch1, it should forward packets to switch2; is there anything wrong with this setup, should I put some rules with ovs-ofctl ?

0 Response to "OpenVSwitch LACP BonDing Test Setup Problems E-Learning Free Ebook"

Post a Comment