OVN: Open Virtual Network for Open vswitch. Ben Pfaff (@Ben_Pfaff) Justin Pettit (@Justin_D_Pettit)



Similar documents
OVN: Open Virtual Network for Open vswitch. Russell Bryant Kyle Mestery Justin Pettit

OpenStack: OVS Deep Dive

Underneath OpenStack Quantum: Software Defined Networking with Open vswitch

CERN Cloud Infrastructure. Cloud Networking

Open vswitch and the Intelligent Edge

Utility Computing and Cloud Networking. Delivering Networking as a Service

Software Defined Networking (SDN) OpenFlow and OpenStack. Vivek Dasgupta Principal Software Maintenance Engineer Red Hat

Outline. Why Neutron? What is Neutron? API Abstractions Plugin Architecture

Palo Alto Networks. Security Models in the Software Defined Data Center

Virtualization, SDN and NFV

Programmable Networking with Open vswitch

Research trends in abstraction of networks and orchestration of network services

Using SouthBound APIs to build an SDN Solution. Dan Mihai Dumitriu Midokura Feb 5 th, 2014

Network Virtualization and Software-defined Networking. Chris Wright and Thomas Graf Red Hat June 14, 2013

Linux KVM Virtual Traffic Monitoring

Datacenter Network Virtualization in Multi-Tenant Environments

Windows Server 2012 Hyper-V Virtual Switch Extension Software UNIVERGE PF1000 Overview. IT Network Global Solutions Division UNIVERGE Support Center

CS244 Lecture 5 Architecture and Principles

Bringing OpenFlow s Power to Real Networks

Software Defined Networking using VXLAN

Software Defined Network (SDN)

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

OpenStack Networking: Where to Next?

OpenDaylight and OpFlex. Scott Mann

Quantum Hyper- V plugin

Bring your virtualized networking stack to the next level

Ryu SDN Framework What weʼ ve learned Where weʼ ll go

SDN v praxi overlay sítí pro OpenStack Daniel Prchal daniel.prchal@hpe.com

OpenStack/Quantum SDNbased network virtulization with Ryu

VIRTUALIZED SERVICES PLATFORM Software Defined Networking for enterprises and service providers

Enhancing Hypervisor and Cloud Solutions Using Embedded Linux Iisko Lappalainen MontaVista

What is SDN? And Why Should I Care? Jim Metzler Vice President Ashton Metzler & Associates

智 慧 應 用 服 務 的 資 料 中 心 與 底 層 網 路 架 構

Building an Open, Adaptive & Responsive Data Center using OpenDaylight

How Linux kernel enables MidoNet s overlay networks for virtualized environments. LinuxTag Berlin, May 2014

Brocade SDN 2015 NFV

Designing Virtual Network Security Architectures Dave Shackleford

IO Visor: Programmable and Flexible Data Plane for Datacenter s I/O

2013 ONS Tutorial 2: SDN Market Opportunities

May 13-14, Copyright 2015 Open Networking User Group. All Rights Reserved Not For

SDN CONTROLLER. Emil Gągała. PLNOG, , Kraków

Overlay networking with OpenStack Neutron in Public Cloud environment. Trex Workshop 2015

SOFTWARE DEFINED NETWORKING: INDUSTRY INVOLVEMENT

CONNECTING PHYSICAL AND VIRTUAL WORLDS WITH VMWARE NSX AND JUNIPER PLATFORMS

SDN/OpenFlow. Dean Pemberton Andy Linton

Ethernet-based Software Defined Network (SDN) Cloud Computing Research Center for Mobile Applications (CCMA), ITRI 雲 端 運 算 行 動 應 用 研 究 中 心

Connecting Physical and Virtual Networks with VMware NSX and Juniper Platforms. Technical Whitepaper. Whitepaper/ 1

PLUMgrid Open Networking Suite Service Insertion Architecture

White Paper. Juniper Networks. Enabling Businesses to Deploy Virtualized Data Center Environments. Copyright 2013, Juniper Networks, Inc.

Network Virtualization: Delivering on the Promises of SDN. Bruce Davie, Principal Engineer

OVSDB/Neutron Support in Lithium and Beyond. ODL Technical Work Stream Call February 23, 2015

SDN in the Public Cloud: Windows Azure. Albert Greenberg Partner Development Manager Windows Azure Networking

Ethernet-based Software Defined Network (SDN)

OpenDaylight Network Virtualization and its Future Direction

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

Software Defined Networking A quantum leap for Devops?

Sales Slide Midokura Enterprise MidoNet V1. July 2015 Fujitsu Limited

CloudEngine 1800V Virtual Switch

SDN AND SECURITY: Why Take Over the Hosts When You Can Take Over the Network

Extending Networking to Fit the Cloud

The Road to SDN: Software-Based Networking and Security from Brocade

Qualifying SDN/OpenFlow Enabled Networks

Automating Network Security

Using OpenStack With OpenDaylight. Dave Meyer, Brocade Kyle Mestery, Cisco Brent Salisbury, Red Hat Madhu Venugopal, Red Hat

White Paper. Contrail Architecture

Performance of Network Virtualization in Cloud Computing Infrastructures: The OpenStack Case.

Using Network Virtualization to Scale Data Centers

SDN software switch Lagopus and NFV enabled software node

Group-Based Policy for OpenStack

Building Scalable Multi-Tenant Cloud Networks with OpenFlow and OpenStack

Introduction to Software Defined Networking (SDN) and how it will change the inside of your DataCentre

How To Make A Vpc More Secure With A Cloud Network Overlay (Network) On A Vlan) On An Openstack Vlan On A Server On A Network On A 2D (Vlan) (Vpn) On Your Vlan

CloudStack Networking. Paul Angus Cloud

OPENFLOW, SDN, OPEN SOURCE AND BARE METAL SWITCHES. Guido Appenzeller (Not representing Anyone)

VXLAN: Scaling Data Center Capacity. White Paper

VNF & Performance: A practical approach

VMware. NSX Network Virtualization Design Guide

Network Virtualization

Virtual Firewalls. Ivan Pepelnjak NIL Data Communications

Telecom - The technology behind

ARISTA WHITE PAPER Solving the Virtualization Conundrum

Accelerating Micro-segmentation

How To Orchestrate The Clouddusing Network With Andn

Testing Software Defined Network (SDN) For Data Center and Cloud VERYX TECHNOLOGIES

The State of Stateful Services. Joe Stringer, Jarno Rajahalme

Cloud Networking From Theory to Practice" Ivan Pepelnjak NIL Data Communications"

How To Use Openstack At Cern

Open Fabric SDN The Comprehensive SDN approach. Jake Howering, Director SDN Product Line Management Bithika Khargharia, PhD, Senior Engineer

HAWAII TECH TALK SDN. Paul Deakin Field Systems Engineer

Software Defined Networks

How To Write A Network Plan In Openflow V1.3.3 (For A Test)

Achieving a High-Performance Virtual Network Infrastructure with PLUMgrid IO Visor & Mellanox ConnectX -3 Pro

Cisco Prime Network Services Controller. Sonali Kalje Sr. Product Manager Cloud and Virtualization, Cisco Systems

Transcription:

OVN: Open Virtual Network for Open vswitch Ben Pfaff (@Ben_Pfaff) Justin Pettit (@Justin_D_Pettit)

Virtual Networking Overview Provides a logical network abstraction on top of a physical network VMA VMB VM1 VM2 VMA VM3 VM4 L-Switch VM1 L-Switch VM2 HV1 HV2 VMC L-Router L-Switch L-Switch VMB VMC VM5 VM3 VM4 VM5 Physical Logical 2

What is OVN? Open source virtual networking for Open vswitch (OVS) Provides L2/L3 virtual networking Logical switches L2/L3/L4 ACLs (no connection tracking yet) Logical routers Security groups Multiple tunnel overlays (Geneve, STT, and VXLAN) TOR-based and software-based logical-physical gateways Work on same platforms as OVS Linux (KVM and Xen) Containers? DPDK Hyper-V Integration with: OpenStack Other CMSes

The Particulars Developed by the same community as Open vswitch Vendor-neutral Architecture and implementation have all occurred on public mailing lists Developed under the Apache license 4

Goals Production-quality Straight-forward design Scale to thousands of hypervisors (each with many VMs and containers) Improved performance and stability over existing plugin 5

Container Integration Containers nested inside VMs can be in logical networks too! C1 C2 C3 C4 VMA VMB VM1 VM2 C2 C4 VM1 VM2 VMA VM3 VM4 L-Switch L-Switch HV1 HV2 C1 C3 VMC L-Router L-Switch L-Switch VMB VMC VM5 VM3 VM4 VM5 Physical Logical 6

OpenStack Integration with OVN OVN has its own Neutron driver Use instead of OVS ML2 driver and agent Goal: Reliability and good integration with OVS Existing OVS plugin has poor reputation Goal: Avoid needing Neutron-specific agents on hypervisors Currently, Neutron L3 and DHCP agents are used OVN will supplant these over time. Long term goal (?): Supplant existing OVS driver in deployments

Designed to Scale Configuration coordinated through databases Local controller converts logical flow state into physical flow state Desired state clearly separated from run-time state Grouping techniques reduce Cartesian Product issues 8

OVN Architecture ovn-controller OpenStack/ CMS Plugin Northbound DB ovn-northd Southbound DB HV-1 ovn-controller ovsvswitchd ovsdbserver ovsvswitchd ovsdbserver HV-n 9

The OVN Databases ovn-northbound OpenStack/CMS integration point High-level, desired state Logical ports -> logical switches -> logical routers ovn-southbound Run-time state Location of logical ports Location of physical endpoints Logical pipeline generated based on configured and run-time state 10

The Daemons Central: ovn-northd Converts from the high-level northbound DB to the run-time southbound DB Generates logical flows based on high-level configuration Per-hypervisor: ovn-controller Registers chassis and VIFs to southbound DB Converts logical flows into physical flows (ie, VIF UUIDs to OpenFlow ports) Pushes physical configuration to local OVS instance through OVSDB and OpenFlow 11

Logical_Switch Name Ports LS1 LP1,LP2 Logical_Port Name MAC LP1 AA LP2 BB An Example Chassis (ovn-controller) Name Encap IP HV1 Geneve 10.0.0.10 HV2 Geneve 10.0.0.11 Bindings (ovn-controller) Name Chassis LP1 HV1 Pipeline (ovn-northd) Datapath Match Action LS1 eth.dst = AA LP1 LS1 eth.dst = BB LP2 LS1 eth.dst = <broadcast> LP1,LP2 12

Logical_Switch Name Ports LS1 LP1,LP2 Logical_Port Name MAC LP1 AA LP2 BB LP2 Arrives on HV2 Chassis (ovn-controller) Name Encap IP HV1 Geneve 10.0.0.10 HV2 Geneve 10.0.0.11 Bindings (ovn-controller) Name Chassis LP1 HV1 LP2 HV2 Pipeline (ovn-northd) Datapath Match Action LS1 eth.dst = AA LP1 LS1 eth.dst = BB LP2 LS1 eth.dst = <broadcast> LP1,LP2 13

Security Groups Security group: a firewall policy that typically allows all outbound connections plus inbound return traffic. Legacy OVS plugin uses namespaces and iptables Slow and badly integrated because of extra layers New OVS support for kernel-based connection state tracking Much faster (see OpenStack Vancouver presentation) Also being added to OVS DPDK switch OVN will use this new OVS feature to implement reflexive ACLs and construct security groups from them

Gateways Based on vtep OVSDB schema included with OVS Hardware: Arista, Brocade, Cumulus, Dell, HP, Juniper, Lenovo Software: Implement vtep schema in software, via DPDK Will become a reference for building OVS DPDK applications Later: move beyond the capabilities of the vtep schema to support fail-over, scale-out, and more stateful services

Trying out OVN

Test #1 - ovs-sandbox $ git clone http://github.com/openvswitch/ovs.git $ cd ovs $./boot.sh &&./configure && make $ make sandbox SANDBOXFLAGS= --ovn

Test #1 - ovs-sandbox $ ovn-nbctl lswitch-add sw0 $ ovn-nbctl lport-add sw0 sw0-port1 $ ovn-nbctl lport-add sw0 sw0-port2 $ ovn-nbctl lport-set-macs sw0-port1 00:00:00:00:00:01 $ ovn-nbctl lport-set-macs sw0-port2 00:00:00:00:00:02 $ ovs-vsctl add-port br-int lport1 -- \ set Interface lport1 external_ids:iface-id=sw0-port1 $ ovs-vsctl add-port br-int lport2 -- \ set Interface lport2 external_ids:iface-id=sw0-port2

Test #1 - ovs-sandbox # Trace OpenFlow flows for a packet from port 1 to 2 $ ovs-appctl ofproto/trace br-int \ in_port=1,dl_src=00:00:00:00:00:01,\ dl_dst=00:00:00:00:00:02 -generate

Test #2 - Multi-node DevStack $ git clone http://git.openstack.org/openstackdev/devstack.git $ git clone http://git.openstack. org/stackforge/networking-ovn.git $ cd devstack Get local.conf from networking-ovn/devstack/ local.conf.sample or computenode-local.conf.sample $./stack.sh

Status From start of coding to first ping: 6 weeks Limited testing so far: Small numbers of hypervisors and logical networks Simulated scale testing up to 500 hypervisors Feature progress: Gateways: In code review Connection tracking: RFC patches Security groups: In development L3: to-do 21

Features for 2016? Native IP management Integrate DHCP server into ovn-controller NAT Load-balancing 22

Resources Architecture described in detail in ovn-architecture (5) Configuration is through a number of databases OVN Northbound Interface between CMS and OVN (ovn-nb (5)) OVN Southbound Holds the configuration and state of the logical and physical components (ovn-sb (5)) Available in the master branch of the main OVS repo: https://github.com/openvswitch/ovs 23

How you can help Try it! Test it! Write Code! Report bugs and try it at scale Core OVN is being developed on ovs-dev mailing list: http://openvswitch.org/pipermail/dev/ #openvswitch on Freenode Neutron plugin for OVN is being developed here: http://git.openstack.org/stackforge/networking-ovn.git openstack-dev mailing list #openstack-neutron-ovn on Freenode 24

Thank you! Justin Pettit (@Justin_D_Pettit) Ben Pfaff (@Ben_Pfaff)