Hi£º
   I have the following two questions.
   What shall I do?

problem1£ºWhen the cloud host accesses the external network through L3 router. TCP protocol has a large number of retransmissions, leading to TCP link failure, TCP data transmission error

problem2£ºTCP links data packets, duplicates ACK and TCP data transmission disorderly when the instances communicate across hosts through geneve, but the quality impact of TCP is relatively acceptable. 

openstack queens with ovn

environment

OS£º

    CentOS Linux release 7.3.1611 (Core)

kernel£º

    3.10.0-514.el7.x86_64

 

openstack£º kolla-ansible queens

networking-ovn£ºpython-networking-ovn-4.0.3

ovs and ovn£º

     openvswitch-ovn-central-2.10.90

     openvswitch-2.10.90

     openvswitch-ovn-host-2.10.90

     openvswitch-ovn-common-2.10.90

 

topology£º

openstack controller 10.200.105.19

openstack compute  10.200.105.16£¬10.200.105.17£¬10.200.105.18

openstack gateway   10.200.105.20

 

openstack controller                     gateway                                                              compute

   10.200.105.19                      10.200.105.20                                                10.200.105.[16-18]

   neutron_server

      ovn-northd ---------bond0------------|------------------------------------------------------------------|

             |                                             |                                                                               | 

      ovn-controller                      ovn-controller                                                         ovn-controller

            |                                              |                                                                               |

          ovs                                        ovs                                                                           ovs

           |  |                                          |  |                                                                            |  |

           |   |----------------------------------|--|------bond0-------------------------------------------------|--|

           |-------------------------------------|--------bond1--------------------------------------------------|

 

Packet forwarding£º


|   compute1                   |                   compute2                |                gateway                |

| 10.200.105.16              |                10.200.105.17           |             10.200.105.20          |

|     vm1                          |                       vm2                     |                                             |

|       |                              |                          |                        |                                            |

| br-int   <->  br-ex          |                br-int    <->     br-ex    |            br-int  <-> br-ex        |

  |                     |_____bond1_vlan___|___________|____________|________|

  |__________bond0_____________|_______________________|

 

1¡¢L3 data flow

     10.200.100.16                                       |           10.200.105.20

    vm1<--->br-int<-->geneve <->bond0  <¡ª->  bond0<-->geneve<--->br-ex<-->bond1<-->vlan<---->internet     

2¡¢vm1<->vm2

      10.200.100.16                                       |           10.200.105.17

     vm1<--->br-int<-->geneve <->bond0  <¡ª->  bond0<-->geneve<--->br-int<--->vm2

 

Configure£º

Openstack  Configure

1¡¢neutron.conf

...

service_plugins = networking_ovn.l3.l3_ovn.OVNL3RouterPlugin,qos

...

2¡¢cat /etc/kolla/neutron-server/ml2_conf.ini 
[ml2]
type_drivers = flat,vlan,local,geneve
tenant_network_types = geneve
mechanism_drivers = ovn
extension_drivers = port_security,qos
overlay_ip_version = 4

[ml2_type_vlan]
network_vlan_ranges = physnet1

[securitygroup]
enable_security_group = true

[ml2_type_geneve]
vni_ranges = 1:65536
max_header_size = 38

[ovn]
ovn_nb_connection = tcp:10.200.105.19:6641
ovn_sb_connection = tcp:10.200.105.19:6642
ovn_l3_mode = True
ovn_l3_scheduler = leastloaded
ovn_native_dhcp = True
neutron_sync_mode = repair
enable_distributed_floating_ip = True
ovsdb_log_level = DEBUG

[qos]
notification_drivers = ovn-qos

 

Ovn Configure

10.200.105.19

ovs-vsctl get open . external_ids
{hostname="10-200-105-19", ovn-bridge-mappings="physnet1:br-ex", ovn-encap-ip="10.200.105.19", ovn-encap-type="geneve,vxlan", ovn-remote="tcp:10.200.105.19:6642", rundir="/var/run/openvswitch", system-id="160e569c-a12f-41a3-8d2a-37bd9af0c7ed"}

 

10.200.105.20

ovs-vsctl get open . external_ids
{hostname="10-200-105-20", ovn-bridge-mappings="physnet1:br-ex", ovn-cms-options=enable-chassis-as-gw, ovn-encap-ip="10.200.105.20", ovn-encap-type="geneve,vxlan", ovn-remote="tcp:10.200.105.19:6642", rundir="/var/run/openvswitch", system-id="96e89c3c-5c85-498d-b42f-5aea559bdd42"}

 

10.200.105.[16-18]

ovs-vsctl get open . external_ids
{hostname="10-200-105-17", ovn-bridge-mappings="physnet1:br-ex", ovn-encap-ip="10.200.105.17", ovn-encap-type="geneve,vxlan", ovn-remote="tcp:10.200.105.19:6642", rundir="/var/run/openvswitch", system-id="a768ca6e-905d-4aac-aa1e-d18b38dedadf"}


ovn-nbctl show
2019-06-03T10:51:46Z|00001|ovsdb_idl|WARN|NB_Global table in OVN_Northbound database lacks ipsec column (database needs upgrade?)
2019-06-03T10:51:46Z|00002|ovsdb_idl|WARN|NB_Global table in OVN_Northbound database lacks options column (database needs upgrade?)
switch eddff890-b515-41d3-ad49-edcae9a3197b (neutron-7489be65-074f-49f0-9cf3-c520dcd3b08d) (aka v)
    port 066c4c72-a1f7-4311-8d40-ed7ca0f942b3
        addresses: ["fa:16:3e:a8:9d:05 192.168.2.212"]
    port edc6e2a9-47db-4a8a-8857-d8afa63d900d
        type: router
        router-port: lrp-edc6e2a9-47db-4a8a-8857-d8afa63d900d
    port provnet-7489be65-074f-49f0-9cf3-c520dcd3b08d
        type: localnet
        addresses: ["unknown"]
switch 23d3676d-9d95-403e-947c-bcd4b298bde0 (neutron-7dd91bd0-10dd-4022-868c-6d17be7380f7) (aka bb)
    port a764f462-7897-475f-9ef0-04b7c83e44db
        addresses: ["fa:16:3e:cd:23:b2 10.0.0.11"]
    port 71247f19-21bd-4eac-b3db-94e770abb50c
        type: router
        router-port: lrp-71247f19-21bd-4eac-b3db-94e770abb50c
    port 659f304c-266f-4b3f-946a-b3cf4ea988c5
        addresses: ["fa:16:3e:f8:5f:1b 10.0.0.9"]
router 3c5d2c44-e3c4-46e9-9f43-64c1cbc7e065 (neutron-f8611590-42a1-4c6a-b433-db9ade3194a2) (aka v)
    port lrp-edc6e2a9-47db-4a8a-8857-d8afa63d900d
        mac: "fa:16:3e:06:f4:ca"
        networks: ["192.168.2.205/16"]
        gateway chassis: [311c4582-71d1-4886-baf0-1aefa5f2ceab d61a09c2-87e2-4dff-91be-82e705ab85f4]
    port lrp-71247f19-21bd-4eac-b3db-94e770abb50c
        mac: "fa:16:3e:ef:06:c6"
        networks: ["10.0.0.1/24"]
    nat 4bc0e7cf-3bdb-4725-94e4-a29b62f7d8e0
        external ip: "192.168.2.205"
        logical ip: "10.0.0.0/24"
        type: "snat"


liujinxin@xiangcloud.com.cn