《Deep Dive into Neutron.pdf》由会员分享,可在线阅读,更多相关《Deep Dive into Neutron.pdf(23页珍藏版)》请在三一文库上搜索。
1、Date: Authors: Open vSwitch in Neutron ?1 Performance Challenges and Hardware Offl oad Hong Kong, 6th Nov. 2013 Yongsheng Gong Bo Liang PAGE:OPEN VSWITCH USAGES IN NEUTRON 197 Deployments ?2 Hyper-V 5% Nicira 5% Brocade 3% big switch 2% NEC 2% Source Reference: http:/www.openstack.org/summit/portl
2、and-2013/session-videos/presentation/ openstack-user-committee-update-and-survey-results PAGE:OPEN VSWITCH USAGES IN NEUTRON Agendas ?3 1 Open vSwitch usages in Neutron 2 Open vSwitch & Openfl ow 3 Problem Statement 4 Acceleration Solutions PAGE:OPEN VSWITCH USAGES IN NEUTRON Open vSwitch usages in
3、Neutron ?4 PAGE:OPEN VSWITCH USAGES IN NEUTRON Popular Deployment ?5 Public Switch 10.10.1.0/24 ? CONTROLLER? ? KEYSTONE? NOVA-COMPONENTS? GLANCE? NEUTRON-SERVER? CINDER ? NETWORK NODE? ? OVS-AGENT? DHCP-AGENT? L3-AGENT? METADATA-AGENT? ? COMPUTE NODE? ? NOVA-COMPUTE? OVS-AGENT Private Switch 172.16
4、.0.0/24 OVSOVS PAGE:OPEN VSWITCH USAGES IN NEUTRON ? COMPUTE NODE OVS phynetgre br-int ? COMPUTE NODE OVS phynetgre br-int ? COMPUTE NODE OVS phynetgre br-int VM Traffi c Path ?6 PAGE:OPEN VSWITCH USAGES IN NEUTRON VLAN Bridges ?7 ? Router br-int br-ex br-eth1 qr-c0bfa11f-ce(tag=1) tapcfbfc01f-a1(ta
5、g=1) 10.0.0.1 10.0.0.2 eth1 qg-9c24ade1c0-c1 eth2 ? br-int br-eth1 (veth) tap99c710cc-ce(tag=1) tapa98bfce2c-11(tag=1) eth1 vlan100 74.125.31.101 74.125.31.1 74.125.31.254 10.0.0.3 10.0.0.4 veth PAGE:OPEN VSWITCH USAGES IN NEUTRON GRE Bridges ?8 ? br-tun Router br-int br-ex gre-2(remote_ip=“1.1.1.2”
6、) patch-int (peer=patch-tun) patch-int (peer=patch-tun) qr-c0bfa11f-ce(tag=1) tapcfbfc01f-a1(tag=1) 10.0.0.1 10.0.0.2 eth1 1.1.1.1 qg-9c24ade1c0-c1 eth2 ? br-tun br-int gre-2(remote_ip=“1.1.1.1”) patch-int (peer=patch-tun) patch-int (peer=patch-tun) tap99c710cc-ce(tag=1) tapa98bfce2c-11(tag=1) eth1
7、1.1.1.2 74.125.31.101 74.125.31.1 74.125.31.254 10.0.0.3 10.0.0.4 PAGE:OPEN VSWITCH USAGES IN NEUTRON Neutron Workfl ow ?9 1 Start Neutron-Server 2 Start Open vSwitch Agent OVS ETH1ETH2 BR-INT BR-EX BR-TUN 3 Start L3-Agent 4 Start DHCP-Agent 5 Start METADATA-Agent QDHCP QROUTER 6 Create Networks 7 C
8、reate Routers VM1 8 Boot VMs dnsmasq gives ip: 10.0.0.2set gateway 10.0.0.1 PAGE:OPEN VSWITCH USAGES IN NEUTRON GRE Tunnel ?10 Host1Host2 Host3 Tunnel 1-2 Tunnel 1-3 Tunnel 2-3 PAGE:OPEN VSWITCH USAGES IN NEUTRON Open vSwitch & Openfl ow ?11 PAGE:OPEN VSWITCH USAGES IN NEUTRON Open vSwitch & Openfl
9、ow ?12 OVS Openflow Controller Secure Channel Openflow Protocol BR 1234567 L2 switching:“in_port=*,actions=output:7” incoming packet packet Broadcast: “in_port=1,actions=output:fl ood” incoming packet packet packet packet packet packet packet ovsdb PAGE:OPEN VSWITCH USAGES IN NEUTRON Flow Tables wit
10、h L2 Population ?13 Table 10 LEARN_FROM_TUN Table 2 GRE_TUN_TO_LV Table 0 Table 1 PATCH_LV_TO_TUN Table 20 UCAST_TO_TUN Table 21 FLOOD_TO_TUN dl_dst=00:00:00:00:00:00/01:00:00:00:00:00 1 Patch in port in_port=2 in_port=1 dl_dst=01:00:00:00:00:00/01:00:00:00:00:00 2 GRE Tunnel Port ovs bridge br-tun
11、PAGE:OPEN VSWITCH USAGES IN NEUTRON Problem Statement ?14 PAGE:OPEN VSWITCH USAGES IN NEUTRON GRE Head ?15 OUTER IP HEADERGRE HEADERINNER IP HEADERPAYLOADGRE HEADER Checksum Key Sequence Number Reserved ProtocolCKSReservedVER HTTP Server MTU Compatible Problem PAGE:OPEN VSWITCH USAGES IN NEUTRON MTU
12、 Comparison ?16 mtu1400mtu 1500 PAGE:OPEN VSWITCH USAGES IN NEUTRON GRE Tunnel Extensibility ?17 Tunnels: N - 1 PAGE:OPEN VSWITCH USAGES IN NEUTRON Flow Match ?18 user space kernel SourceDestination First Packet Subsequent PAGE:OPEN VSWITCH USAGES IN NEUTRON Improved Architecture ?19 ? COMPUTE NODE
13、OVS/LinuxBridge phynet br-int ? COMPUTE NODE OVS/LinuxBridge phynet br-int ? COMPUTE NODE OVS/LinuxBridge phynet br-int ? COMPUTE NODE? OVS/LinuxBridge phynet br-int ? COMPUTE NODE? OVS/LinuxBridge phynet br-int ? COMPUTE NODE? OVS/LinuxBridge phynet br-int A Switch Running OVS A Switch Running OVS
14、Tunnel Between Switchs PAGE:OPEN VSWITCH USAGES IN NEUTRON Other Solutions Flow Matching DPDK, PF_RING, netmap GRE Tunnel VxLAN ?20 PAGE:OPEN VSWITCH USAGES IN NEUTRON OVS Hardware Comparison ?21 ovscentec v330 PAGE:OPEN VSWITCH USAGES IN NEUTRON OVS Debugging Tips Test basic connectivity Use tcpdump to see if expected packets are on the wire Try it without OVS Use “ovs-ofctl dump-fl ows bridge” to see if packets hit the fl ows ?22 PAGE:OPEN VSWITCH USAGES IN NEUTRON Date:Hong Kong, 6th Nov. 2013 Authors:Yongsheng Gong, Bo Liang ?23 Thanks! Thats all for today