Hello,

Today I've tried to use the following setup using openvswitch.


Three servers patched in a ring:

-------------------
|     server 1    |---
-------------------  |
          |          |
-------------------  |
|     server 2    |  | 
-------------------  |
          |          |
-------------------  |
|     server 3    |---
-------------------

All ports within the ring are added to a bridge with rstp enabled.
Setup like this:

ovs-vsctl add-br br0 -- set bridge br0 rstp_enable=true
ovs-vsctl add-port br0 ens4 vlan_mode=native-tagged
ovs-vsctl add-port br0 ens5 vlan_mode=native-tagged
ovs-vsctl add-port br0 ens6 vlan_mode=native-tagged # Not patched
# Adding a internal port
ovs-vsctl add-port br0 p1 tag=9 -- set interface p1 type=internal
ip addr add 10.0.0.1/24 dev p1
ip link set p1 up

After setting up (server2 has of course the ip 10.0.0.2, server3
10.0.0.3) the servers can not reach each other.
After restarting the openvswitch-switch service everything begin to
work as expected.
Before restarting it looks in tcpdumps like the traffic hits the bridge
but is not forwarded to the internal port.

Tried on:
 - Fedora 28 | Kernel 4.16 | Open vSwitch 2.8.1
 - Ubuntu Server 18.04 | Kernel 4.15 | Open vSwitch 2.9.0
 - Debian 9.5 | Kernel 4.9 | Open vSwitch 2.8.1

Tried to / saw:
 - delete the ovs-db on all nodes and reboot them (no change, after
restarting the service it started working)
 - rstp state was always good. One path in the ring has state
discarding
 - traffic hits the bridge, but not the internal port
 - on Debian also a reboot did not change the state, started working
when restarting the service after boot (initialisation via
/etc/network/interfaces, if interested I can post this config as well),
on Ubuntu and Fedora the reboot fixed the Problem.

 

Here are some additional informations from our try on Fedora:

ovs-dpctl show (after creation)
---------------------------------------------------
system@ovs-system:
        lookups: hit:36 missed:23 lost:0
        flows: 0
        masks: hit:105 total:0 hit/pkt:1.78
        port 0: ovs-system (internal)
        port 1: br0 (internal)
        port 2: ens4
        port 3: ens5
        port 4: ens6
        port 5: p1 (internal)
---------------------------------------------------

ovs-ofctl show br0 (after creation)
---------------------------------------------------
OFPT_FEATURES_REPLY (xid=0x2): dpid:0000005000000101
n_tables:254, n_buffers:0
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(ens4): addr:00:50:00:00:01:01
     config:     0
     state:      STP_FORWARD
     speed: 0 Mbps now, 0 Mbps max
 2(ens5): addr:00:50:00:00:01:02
     config:     0
     state:      STP_FORWARD
     speed: 0 Mbps now, 0 Mbps max
 3(ens6): addr:00:50:00:00:01:03
     config:     0
     state:      STP_FORWARD
     speed: 0 Mbps now, 0 Mbps max
 4(p1): addr:42:5f:34:f4:34:54
     config:     0
     state:      0
     speed: 0 Mbps now, 0 Mbps max
 LOCAL(br0): addr:00:50:00:00:01:01
     config:     PORT_DOWN
     state:      LINK_DOWN
     speed: 0 Mbps now, 0 Mbps max
OFPT_GET_CONFIG_REPLY (xid=0x4): frags=normal miss_send_len=0
---------------------------------------------------

ovs-dpctl show (after service restart)
---------------------------------------------------
system@ovs-system:
        lookups: hit:61 missed:53 lost:0
        flows: 8
        masks: hit:228 total:2 hit/pkt:2.00
        port 0: ovs-system (internal)
        port 1: br0 (internal)
        port 2: ens4
        port 3: ens5
        port 4: ens6
        port 5: p1 (internal)
---------------------------------------------------

ovs-ofctl show br0 (after service restart)
---------------------------------------------------
OFPT_FEATURES_REPLY (xid=0x2): dpid:0000005000000101
n_tables:254, n_buffers:0
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(ens4): addr:00:50:00:00:01:01
     config:     0
     state:      STP_FORWARD
     speed: 0 Mbps now, 0 Mbps max
 2(ens5): addr:00:50:00:00:01:02
     config:     0
     state:      STP_FORWARD
     speed: 0 Mbps now, 0 Mbps max
 3(ens6): addr:00:50:00:00:01:03
     config:     0
     state:      STP_FORWARD
     speed: 0 Mbps now, 0 Mbps max
 4(p1): addr:42:5f:34:f4:34:54
     config:     0
     state:      0
     speed: 0 Mbps now, 0 Mbps max
 LOCAL(br0): addr:00:50:00:00:01:01
     config:     PORT_DOWN
     state:      LINK_DOWN
     speed: 0 Mbps now, 0 Mbps max
OFPT_GET_CONFIG_REPLY (xid=0x4): frags=normal miss_send_len=0
---------------------------------------------------


If you need some additional informations do not hesitate to ask. The
issue is reproduceable very quickly in our lab.

Thank you.
best regards,
Stefan Schörghofer




_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to