Utility Computing and Cloud Networking. Delivering Networking as a Service



Similar documents
Virtualization, SDN and NFV

Software Defined Network (SDN)

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

Bring your virtualized networking stack to the next level

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

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

CERN Cloud Infrastructure. Cloud Networking

Software Defined Networking (SDN) and OpenStack. Christian Koenning

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

SDN Architecture and Service Trend

The Role of Virtual Routers In Carrier Networks

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

OpenStack/Quantum SDNbased network virtulization with Ryu

Cisco Virtual Topology System: Data Center Automation for Next-Generation Cloud Architectures

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

White Paper. SDN 101: An Introduction to Software Defined Networking. citrix.com

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

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

Designing Virtual Network Security Architectures Dave Shackleford

Group-Based Policy for OpenStack

Transform Your Business and Protect Your Cisco Nexus Investment While Adopting Cisco Application Centric Infrastructure

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

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

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

Simplify IT. With Cisco Application Centric Infrastructure. Roberto Barrera VERSION May, 2015

Definition of a White Box. Benefits of White Boxes

Research trends in abstraction of networks and orchestration of network services

HAWAII TECH TALK SDN. Paul Deakin Field Systems Engineer

Expert Reference Series of White Papers. vcloud Director 5.1 Networking Concepts

Network Virtualization for the Enterprise Data Center. Guido Appenzeller Open Networking Summit October 2011

How To Use Openstack At Cern

Roman Hochuli - nexellent ag / Mathias Seiler - MiroNet AG

Cisco and Red Hat: Application Centric Infrastructure Integration with OpenStack

Cloud Networking Disruption with Software Defined Network Virtualization. Ali Khayam

Defining SDN. Overview of SDN Terminology & Concepts. Presented by: Shangxin Du, Cisco TAC Panelist: Pix Xu Jan 2014

Analysis of Network Segmentation Techniques in Cloud Data Centers

JUNIPER. One network for all demands MICHAEL FRITZ CEE PARTNER MANAGER. 1 Copyright 2010 Juniper Networks, Inc.

How To Orchestrate The Clouddusing Network With Andn

Telecom - The technology behind

Software-Defined Networking Architecture Framework for Multi-Tenant Enterprise Cloud Environments

OpenStack Introduction. November 4, 2015

How To Build An Openstack Cloud System

Challenges and Opportunities:

OpenStack Networking: Where to Next?

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

Open Source Networking for Cloud Data Centers

Network Virtualization Solutions

SDN, NFV & Future Technologies. Chris Thompson Director of Product Management, Cloud Connectivity Solutions

Installation Runbook for F5 Networks BIG-IP LBaaS Plugin for OpenStack Kilo

Software Defined Environments

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS

Data Center Virtualization and Cloud QA Expertise

SDN Applications in Today s Data Center

VIRTUALIZED SERVICES PLATFORM Software Defined Networking for enterprises and service providers

2013 ONS Tutorial 2: SDN Market Opportunities

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

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

OVN: Open Virtual Network for Open vswitch. Ben Pfaff Justin Pettit

Networking in the Era of Virtualization

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

Extending Networking to Fit the Cloud

Bringing OpenFlow s Power to Real Networks

Spotlight On Backbone Technologies

Data Center Network Virtualisation Standards. Matthew Bocci, Director of Technology & Standards, IP Division IETF NVO3 Co-chair

CloudEngine 1800V Virtual Switch

Panel: Cloud/SDN/NFV 黃 仁 竑 教 授 國 立 中 正 大 學 資 工 系 2015/12/26

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

SDN PARTNER INTEGRATION: SANDVINE

Multi Provider Cloud. Srinivasa Acharya, Engineering Manager, Hewlett-Packard

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

Network Virtualization

VMware

Underneath OpenStack Quantum: Software Defined Networking with Open vswitch

Building an Open, Adaptive & Responsive Data Center using OpenDaylight

OpenDaylight Network Virtualization and its Future Direction

Installation Guide Avi Networks Cloud Application Delivery Platform Integration with Cisco Application Policy Infrastructure

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

Building Scalable Multi-Tenant Cloud Networks with OpenFlow and OpenStack

Enabling Application Aware Networks The Next Generation Data Centre with Citrix NetScaler & Cisco Nexus. Ralph W. Lorkins Lead Systems Engineer

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

VXLAN: Scaling Data Center Capacity. White Paper

OpenStack, OpenDaylight, and OPNFV. Chris Wright Chief Technologist Red Hat Feb 3, CHRIS WRIGHT OpenStack, SDN and NFV

SOFTWARE DEFINED NETWORKING

VMware. NSX Network Virtualization Design Guide

Building Scalable, Open, Programmable and Application Centric Data Center with Cisco ACI. 林 瑝 錦 / Jerry Lin Cisco Systems 2015 July

Introduction to Network Virtualization in IaaS Cloud. Akane Matsuo, Midokura Japan K.K. LinuxCon Japan 2013 May 31 st, 2013

Quantum Hyper- V plugin

PLUMgrid Open Networking Suite Service Insertion Architecture

SDN and NFV in the WAN

Flexible Building Blocks for Software Defined Network Function Virtualization (Tenant-Programmable Virtual Networks)

Ethernet-based Software Defined Network (SDN)

CPLANE NETWORKS. Production-ready OpenStack Networking. White Paper

SDN/Virtualization and Cloud Computing

Linux KVM Virtual Traffic Monitoring

Creating and Using the OpenStack Aware Network

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

Transcription:

Utility Computing and Cloud Networking Delivering Networking as a Service

Overview Utility Computing OpenStack Virtual Networking Network Functions Virtualization

Utility Computing

Utility Computing: Everything as a Service Goal of Utility Computing: Deliver computation, storage, and networking/communication as a service Like electricity, gas, water What does as a service mean? You pay for only as much as you use MIPS/Gigabytes/Bytes per second You deploy your application on a virtualized compute/storage/networking platform Someone else, the cloud provider, takes care of maintaining the platform Source: http://www.vaultium.com/blog/wp-content/uploads/2011/06/cloud-business.jpg

Advantages of as a Service No need for a large, up front capital investment in hardware and system software infrastructure Your cost scales as your business grows Your operating costs are reduced by the cloud provider s economy of scale Reduction in system administration costs for hardware and system software Elimination of additional costs for power, cooling, etc. Equipment utilization improves through multiple customers using the same virtualized platform With proper management, reduction in energy use Source: http://dyamar.com/images/software-as-service.jpg

First Major Success: Three Tier Apps Client (top) Tier is Web browsers on Internet Ajax programming for UI HTTP/HTTPS to connect with cloud provided Application Tier Application (middle) Tier is Web server with business logic Stateless or soft state Can be easily regenerated Example: customer shopping cart Autoscaling starts new instances of Application Tier VMs as load ramps up and removes them as load ramps down Load balancing distributes load between Application Tier VM replicas Database (bottom) Tier contains all the state Can be SQL database Also NoSQL (graph) JDBC or some other protocol to connect Middle Tier Networking reqirements for 3 Tier applications are straightforward Source: http://www.ibm.com/developerworks/websphere/techjournal/0911_kirby/images/scalingoptions3tierapps.g

Networking for 3 Tier Apps Web Clients Web Clients use TCP to access Web application Load Balancer evens load on application instances DNS or other technique used for load balancing Keeps track of load Tells autoscaler when load exceeds threshold Autoscaler brings up a new instance when required Database is replicated, highly available Doesn t matter which instance the application accesses UDP used for JDBC In principle, virtual networks not required Just TCP, DNS The Internet Autoscaler Load Balancer Cloud Data Center Business Business Business Logic Logic Logic Replicated High Availability Database

Next Challenge: Enterprise LAN as a Service Wanted: Open source API allowing tenant operations on virtual network abstractions Create Read Update Delete Virtual Data Store VM The Internet VM Cloud Data Center VM Corporate LAN Virtual Corporate LAN Source: wikimedia.org

OpenStack Virtual Networking

OpenStack History 2010 NASA and Rackspace partner to form OpenStack Inaugural Design Summit in San Antonio attracts around 200 people 2011 Diablo first release usable by applications 2012 Rackspace offers commercial OpenStack cloud service Openstack Foundation formed under umbrella of Linux Foundation OpenStack Networking introduced in Folsom release Known as Quantum at that time but now Neutron Led by Nicira, now VMWare 2013 First International Design Summit in Hong Kong attracts over 5000 attendees Fastest growing open source project in history! First additional service, Load Balancing as a Service (LBaaS), introduced in Grizzly release Neutron ML2 driver architecture in Havana release 2014 Distributed Virtual Router and IPv6 support in Juno release Copyright @ Openstack Foundatoin, 2012

OpenStack Cloud Controller High Level Architecture Source: openstack.org

OpenStack Cloud Controller Components API Server Enables tenant command and control of virtualized compute, storage and network resources Represents cloud resources toward tenants as abstractions Message Queue Brokers interaction between compute, storage, and networking resource managers Resource Managers Manages the partitioning of compute, storage, and networking resources between the cloud s tenants Each resource has at least one resource manager Storage has several

API Server Detail API endpoints are HTTP servers Each individual service (Compute, Networking, etc.) has a separate API server Operations handled by API endpoints: Authentication, authorization Dispatching tenant requests to appropriate resource manager Some API servers also handle resource management Programming model: REpresentational State Transfer (REST) RPC Stateless: no pointers or other state, uuids instead Resource representation: Typed abstractions for major resource classes (VMs, networks, etc.) Object properties represented as Attributes Some resource classes can be subclassed Operational model: Create, Read, Update, Delete (CRUD) Some operations complete asynchronously Example: allocating a tenant network may take time because lots of devices may need to be touched

Message Queue Detail Make me a new tenant virtual network! 1) REST Create Call Polling Networking API Server 4) Make a new tenant network for Ampelfrau! 10) Done! 3) Yup! 2) Is she OK? Authentication Service Message Bus 5) Networking service, make a network for Ampelfrau! Message Queue Service! OpenStack Networking Database 6) That s me! 8) Ampelfrau network is now active Networking Service Sources Ampelfrau: wikimedia.org Keystone logo: github.org Bus: metrotransit.org 7) (goes off and does it)

OpenStack System Component Interaction We will focus here! Source: http://docs.openstack.org/admin-guide-cloud/content/conceptual-architecture.html wikimedia.org

Basic Neutron Abstractions Network Virtual isolated Layer 2 broadcast domain with connections to specific VMs and other networks Networks are subclassed (later ) Subnet A Network supporting a specific, routable IP prefix A Subnet can also optionally have following attributes: A gateway, A list of DNS name servers Host routes Subnet attributes pushed to VMs instantiated on the subnet Port Virtual port on a logical network switch MAC addresses and IP addresses associated with a Port If IP addresses, then Port is associated with a subnet Ports are used to attach VMs and other Networks to their owning Network VM 10.1.2.6 ba:dd:ad:fa:df:4 2 10.1.2.0/8 ba:dd:ad:fe:df:e d VM 10.1.2.5 ba:dd:ad:fa:df:7 7 N1 Note: All calls are REST (HTTP RPC) with attributes/responses provided as JSON or XML Request/Response bodies.

Network API Calls Source: developer.openstack.org

Subnet API Calls Source: developer.openstack.org

Port API Calls Source: developer.openstack.org

Neutron Architecture and Interconnection Plug-ins support different vendor equipment and virtualization types Heat Orchestration Engine calls into Neutron to connect VM vnic to a virtual network Neutron calls into Keystone Authentication Service to ensure tenant is authorized to operate on a virtual network. Horizon GUI calls into Neutron to CRUD Neutron tenant networks. Other subsystems call into Neutron for various services. Source: openstack.org

Neutron Plugin Architecture Resource and Attribute Extension API ProviderNetwork PortBinding Router LBaaS FWaaS. Core API Port Subnet Message Message Queue Queue Neutron Server L3 Services Firewall Load Balancer Neutron Service plugins HA Proxy IP Tables IP Tables Cisco (Nexus, N1Kv) More vendor plugins OVS Neutron Core plugins Core + Extension REST APIs Message queue for REST API ML2 Network DHCP Agent L3 Agent IPTables on Network Node L2 Agent OVS on Compute Node communicating with Neutron agents Core and service plugins Hardware and software devices Different vendor core plugins Service plugin backend drivers Source: http://de.slideshare.net/lewtucker/open-stack-atlanta-2014tucker

Implementing the Network Abstraction Each Network abstraction has below it a virtual network and a physical network A segment is a section of virtual network that is implemented by a particular overlay protocol Examples: VLAN VxLAN GRE Physical network support provided by particular hardware and software devices: Software Examples: OpenVSwitch Cisco Nexus 1000V OpenDaylight SDN Controller Hardware Examples: Cisco Nexus 3000 ToR Switch Pica8 P-3922 OpenFlow ToR Switch

Example: GRE Segment over OVS and Pica8 GRE Segment Pica8 3922 ToR Pica8 3922 ToR OVS Data Center Network OVS

Function of Plugins Plugins provide the bridge between the Neutron API and the network protocols and hardware that implement the logical and physical network Plugins convert the API calls into: Updates to the Openstack databases indicating a tenant virtual network has been created/updated/deleted Specific hardware or software device configuration calls Protocol operations for setting up a virtual network Plugins are like drivers in an operating system

Every hardware or software device supplier must write and support duplicate code! Three Types of Code in Plugins Boilerplate code that deals with OpenStack related issues Database updates Authentication Protocol specific code for implementing a particular type of virtual network segment Encapsulating and decapsulating packets in GRE headers Tagging packets with a specific VLAN tag Device specific code that implements the virtual network for a particular hardware or software mechanism OpenFlow and OVSDB protocol for implementing GRE tunnels on OVS Cisco 3000 CLI commands for configuring VLAN trunking

ML2 Architecture ML2 driver only Resource and Attribute Extension API ProviderNetwork PortBinding Router LBaaS FWaaS. Core API Network Port Subnet REST API Message Message Queue Queue Neutron Server L3 Services Firewall Load Balancer Brocadew HA More Proxy vendor IP drivers Tables IP Tables OpenDayLi ght OVS Cisco Nexus Mechanism Drivers VXLAN GRE VLAN Type Drivers Neutron Service plugins ML2 Cisco (Nexus, N1Kv) More vendor plugins OVS Neutron Core plugins deals with the OpenStack overhead DHCP Agent L3 Agent IPTables on Network Node Type driver only deals with the details of implementing a particular segment type L2 Agent OVS on Compute Node Database updates, etc. Example: GRE tunnels Mechanism driver only deals with the details of a particular supplier s hardware or software device Example: OpenVSwitch Southbound Interfaces Source: http://de.slideshare.net/lewtucker/open-stack-atlanta-2014tucker

SDN and Neutron From Neutron s viewpoint, an SDN controller looks like a device Details of actual physical network control hidden under controller northbound API From the SDN controller s viewpoint, Neutron looks like another northbound application Specific northbound API crafted for supporting Neutron ML2 mechanism driver code simply becomes a passthrough to the SDN controller API

Neutron with OpenDaylight ML2 Provider Data Center Network OpenDaylight OpenFlow Enabled Devices Additional Virtual & Physical Devices OpenStack Neutron OpenStack Service OVSDB Neutron Open vswitches OpenFlow OVSDB

How to Get Out to the Internet? Neutron supports a basic router abstraction Router abstraction supports a NAT function NAT function located on uplink gateway ports NAT creates one-one mapping between a public IP address and a private IP address on the Neutron Network Connecting a Router to a Network provides connectivity to outside Subnets Including the Internet How is the Internet represented in Neutron? V?? Internet

Subclasses of Neutron Networks Tenant network subclass Created by any tenant Tenant can only specify details through the Neutron API Implementation details hidden Provider network subclass Created only by a user with administrative privileges Details of how implemented can be specified Usually match some existing network in the data center Provider Network allows representation of Internet as a Neutron object

OpenStack Datacenter Network Design Provider Network VID=01 Gehfrau VID=02 Gehmann VID=03 Stopfrau Tenant Network for Stopfrau VM VM VM Internet Tenant Network for Gehmann VM VM VM Provider Edge (PE) Router Neutron Server Customer Edge (CE) Router Source: wikimedia.org

Network Functions Virtualization

Operator Network Infrastructure as a Service? Can public operator network services be put into the cloud? Example public operators: Deutsche Telekom, ATT, Vodaphone/Verizon Example services offered by public operators IP Multimedia Subsystem for voice/media calls Authentication, Authorization, Accounting, Billing Enterprise Virtual Private Networks (VPN) Service assurance, operations support, network management For wireless networks, the whole Evolved Packet Core control/data plane TSI Network Functions Virtualization (NFV) addresses virtualization of operator networks

Goals of NFV Rapid service innovation through software-based deployment and operationalization of end-to-end services Customers can compose services through service portal Improved operational efficiencies resulting from common automation and operating procedures Zero touch deployment Reduced power usage achieved by migrating workloads and powering down unused hardware Managing data centers for power efficiency Standardized and open interfaces between network functions and their management entities so that such decoupled network elements can be provided by different players Open source, startup contributions to market Greater flexibility in assigning Virtualized Network Functions (VNFs) to hardware Improved capital efficiencies compared with dedicated hardware implementations Deploy on virtualized white box server platform Source: http://blogs.ixiacom.com/default/assets/image/blog%20images/network%20virtualization.png

Key requirement for NFV is virtualization of compute and networking SDN and NFV NFV is about deploying operator network services in a virtualized environment SDN is about separating the control and data planes and controlling routing and forwarding from a centralized controller Note: Some researchers include SDN and NFV under SDNv2 NFV can be deployed on an OpenFlow or non-openflow networks

NFV Definitions Network Function Functional building block with well defined interfaces Example: router Virtualized Network Function Software implementation of network function that can be deployed on a virtualized platform Example: software router Service chain A directed graph of middleboxes through which customer packets must flow before being delivered to the end host

NFV Architecture Source: ETSI NFV Working Group

What are Service Chains? Middleboxes perform specific functions on packets Operator configures a service chain for particular customers Today, services are deployed as specific hardware boxes The Internet Firewall NAT Clients Deep Packet Inspection

Can Cloud Networking Support VNFs? Problem: most VNFs have state, cloud is designed for stateless applications Example: IP Multimedia subsystem keeps state on outstanding voice and media sessions State must be highly accessible and cannot be regenerated quickly When a VM moves, need to move state along Solution: Need to re-engineer application Problem: software implementations of networking VNFs don t achieve line speed forwarding Example: software routers abandoned in the early 1990s for ASICs Solution: Specialized system software for forwarding applications

Software Routers: Intel DPDK Architecture Source: embeddeded.communities.intel.com

Software Routers: DPDK Performance Gigibit Throughput Broadband Network Gateway (BNG) can be implemented on a virtualized platform Source: software.intel.com

Summary Utility computing provides compute, networking, and storage as a service Three tier applications don t need virtual networks but more advanced applications do Enterprise LAN as a service OpenStack Neutron provides virtual networking to tenants Abstractions are Network, Subnet, Port Neutron supports a plugin architecture ML2 plugin separates boilerplate, type and mechansim code Neutron Provider networks support access to outside Operator network services virtualized through ETSI NFV

Acknowledgements Lew Tucker, Cisco