Azure Accelerated Networking: SmartNICs in the Public Cloud

Slides:



Advertisements
Similar presentations
Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
Advertisements

Programming Protocol-Independent Packet Processors
Lecture 2: Modern Trends 1. 2 Microprocessor Performance Only 7% improvement in memory performance every year! 50% improvement in microprocessor performance.
Keith Wiles DPACC vNF Overview and Proposed methods Keith Wiles – v0.5.
FPGA chips and DSP Algorithms By Emily Fabes. 2 Agenda FPGA Background Reasons to use FPGA’s Advantages and disadvantages of using FPGA’s Sample VHDL.
Performance Analysis of the IXP1200 Network Processor Rajesh Krishna Balan and Urs Hengartner.
Microsoft Virtual Academy Module 4 Creating and Configuring Virtual Machine Networks.
Hosting Virtual Networks on Commodity Hardware VINI Summer Camp.
SDN : What We’ve Learned Martìn Casado I’ve. Outline SDN : a History SDN : a Definition SDN : What I’ve Learned.
WHO WILL BENEFIT FROM THIS TALK Hardware vendors planning support for Windows Server 8 OEMs planning to source networking equipment for systems running.
The Central Processing Unit (CPU) and the Machine Cycle.
SKILL AREA: 1.2 MAIN ELEMENTS OF A PERSONAL COMPUTER.
EE3A1 Computer Hardware and Digital Design
1 - CPRE 583 (Reconfigurable Computing): Reconfigurable Computing Architectures Iowa State University (Ames) Reconfigurable Architectures Forces that drive.
Next Generation Operating Systems Zeljko Susnjar, Cisco CTG June 2015.
1 - CPRE 583 (Reconfigurable Computing): Reconfigurable Computing Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture.
Copyright © 2005 – Curt Hill MicroProgramming Programming at a different level.
New-School Machine Structures Parallel Requests Assigned to computer e.g., Search “Katz” Parallel Threads Assigned to core e.g., Lookup, Ads Parallel Instructions.
Level 300 Windows Server 2012 Networking Marin Franković, Visoko učilište Algebra.
Introduction to Computers - Hardware
Shaopeng, Ho Architect of Chinac Group
Conclusions on CS3014 David Gregg Department of Computer Science
Instructor Materials Chapter 7: Network Evolution
Jehandad Khan and Peter Athanas Virginia Tech
Lynn Choi School of Electrical Engineering
ECE354 Embedded Systems Introduction C Andras Moritz.
What is Fibre Channel? What is Fibre Channel? Introduction
Spatial Analysis With Big Data
Instructor: Dr. Phillip Jones
Architecture & Organization 1
From Silicon to Microelectronics Yahya Lakys EE & CE 200 Fall 2014
WinHEC /9/2018 1:06 AM © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE.
Course Name: Computer Application Topic: Central Processing Unit (CPU)
3.2 Virtualisation.
Aled Edwards, Anna Fischer, Antonio Lain HP Labs
Networking overview Sujata
Parallel Processing and GPUs
Highly Efficient and Flexible Video Encoder on CPU+FPGA Platform
Marrying OpenStack and Bare-Metal Cloud
Architecture & Organization 1
NVIDIA Fermi Architecture
OSDI ‘14 Best Paper Award Adam Belay George Prekas Ana Klimovic
Workload Optimized OpenStack made easy
Open vSwitch HW offload over DPDK
CSCI1600: Embedded and Real Time Software
The performance requirements for DSP applications continue to grow and the traditional solutions do not adequately address this new challenge Paradigm.
Alternative Processor Panel Results 2008
Chapter 1 Introduction.
Reprogrammable packet processing pipeline
Building continuously available systems with Hyper-V
All or Nothing The Challenge of Hardware Offload
Programmable Networks
Windows Virtual PC / Hyper-V
Top #1 in China Top #3 in the world
CSCI1600: Embedded and Real Time Software
Lecture 14, Computer Networks (198:552)
Enrich your NIC's capabilities with DPDK Soft NIC
NetCloud Hong Kong 2017/12/11 NetCloud Hong Kong 2017/12/11 PA-Flow:
EE 193: Parallel Computing
Your Programmable NIC Should Be a Programmable Switch
NetFPGA - an open network development platform
CSE 502: Computer Architecture
Migrating Your Data to the Cloud? Location Matters
Microsoft Virtual Academy
Microsoft Virtual Academy
Husky Energy Chair in Oil and Gas Research
Flow Processing for Fast Path & Inline Acceleration
Sean Choi, Seo Jin Park, Muhammad Shahbaz,
Interrupt Message Store
Openstack Summit November 2017
Presentation transcript:

Azure Accelerated Networking: SmartNICs in the Public Cloud CIS 800 – lecture 3

Motivation – Simple Version They have an existing system called VFP Virtual switch for Hyper-V / Azure Provides core SDN functionality for Azure networking services, including: Address Virtualization for VNET VIP -> DIP Translation for SLB ACLs, Metering, and Security Guards Uses programmable rule/flow tables to perform per- packet actions Programmed by multiple Azure SDN controllers, supports all dataplane policy at line rate with offloads

Motivation – Simple Version Wanted to use Single Root IO Virtualization (SR-IOV) for performance But SR-IOV was a poor fit for what they needed Claims to be for virtualization, but doesn’t allow composition Also relies on hardware vendors for new features

Solution – Simple Version Let’s just do it ourselves! Buy some programmable FPGAs (still cheaper than CPUs) Hire some hardware programmers (probably already have some)

What is an FPGA, Really? Field Programmable Gate Array Chip has large quantities of programmable gates – highly parallel Program specialized circuits that communicate directly Two kinds of parallelism: Thread-level parallelism (stamp out multiple pipelines) Pipeline parallelism (create one long pipeline storing many packets at different stages) FPGA chips are now large SoCs (can run a control plane)

Solution – Simple Version Let’s just do it ourselves! Buy some programmable FPGAs (still cheaper than CPUs) Hire some hardware programmers (probably already have some) Straightforward solution Mirrors trends elsewhere in the datacenter Servers and Switches configurations are custom

Motivation – More General 2009: 1Gbps 2012: 10Gbps 2015: 40Gbps 2017: 50Gbps Soon: 100Gbps? NIC Speed, Gbps 60 50 40 30 20 10 2009 2012 2015 2017 The network is getting faster, but CPU (at least single core) is not!

Silicon alternatives + + + + + + + Registers Control Unit (CU) Arithmetic Logic Unit (ALU) CPUs G/NPUs FPGAs ASICs FLEXIBILITY EFFICIENCY Moore’s law means CPUs won’t keep up with network speed

Silicon alternatives + + + + + + + Registers Control Unit (CU) Arithmetic Logic Unit (ALU) CPUs G/NPUs FPGAs ASICs FLEXIBILITY EFFICIENCY GPUs are great for bulk processing, but latency is not great

Silicon alternatives Slow to change + + + + + + + Registers Control Unit (CU) Arithmetic Logic Unit (ALU) CPUs G/NPUs FPGAs ASICs FLEXIBILITY EFFICIENCY Slow to change Limited to exactly what the hardware vendor is willing to provide

Hardware or Bust SR-IOV is a classic example of an “all or nothing” offload – its latency, jitter, CPU, performance benefits come from skipping the host entirely If even one widely-used action isn’t supported in hardware, have to fall back to software path and most of the benefit is lost even if hardware can do 99% of the work Other examples: RDMA, DPDK, … a common pattern This means we need to consider carefully how we will add new functionality to our hardware as needed over time How do we get the performance of hardware with programmability of software?

SmartNIC – Accelerating SDN