ONF Connect 2019 Next-Gen SDN Tutorial - Open Networking Foundation

1y ago
1.4K Views
80 Downloads
2.45 MB
26 Pages
Last View : Today
Last Download : 22d ago
Upload by : Arnav Humphrey
Transcription

ONF Connect 2019 Next-Gen SDN Tutorial September 10, 2019 These slides: http://bit.ly/ngsdn-tutorial-slides Exercises and VM: http://bit.ly/ngsdn-tutorial-lab Copyright 2019 - Open Networking Foundation

NG-SDN Tutorial - Before we start. Get USB keys with VM from instructors Or download: http://bit.ly/ngsdn-tutorial-lab Option to use Docker instead of VM Copy and import VM into VirtualBox User: sdn - Password: rocks If VirtualBox complains about a missing network adapter, remove that in the VM configuration (adapter 2) Update deps inside VM (requires Internet access) cd /ngsdn-tutorial git pull origin master make pull-deps These slides: http://bit.ly/ngsdn-tutorial-slides Copyright 2019 - Open Networking Foundation

Mininet topology for hands-on exercises spine1 MAC: 00:bb:00:00:00:00:01 gRPC port: 50003 1 1 spine2 MAC: 00:bb:00:00:00:00:02 gRPC port: 50004 2 1 2 2 1 leaf1 MAC: 00:aa:00:00:00:00:01 gRPC port: 50001 3 4 5 leaf2 MAC: 00:aa:00:00:00:00:02 gRPC port: 50002 6 h1a MAC: 00:00:00:00:00:1a IP: 2001:1:1::a/64 h1b MAC: .:00:1b IP: 2001:1:1::b/64 2 h1c MAC: .:00:1c IP: 2001:1:1::c/64 3 h2 MAC: .:00:20 IP: 2001:1:2::1/64 h3 MAC: .:00:30 IP: 2001:2:3::1/64 4 h4 MAC: .:00:40 IP: 2001:2:4::1/64 Each host is configured with IPv6 gateway address on the same subnet as the host, but ending with .::ff. E.g., for h1a, the gateway address is 2001:1:1::ff Same IPv6 subnet Copyright 2019 - Open Networking Foundation

Instructors Brian O’Connor ONF Carmelo Cascone ONF Copyright 2019 - Open Networking Foundation

Schedule 8.00am-9.00am registration / breakfast / technical set up for hands-on lab 9.00am-9:20am - NG-SDN overview 9.20am-10.45 - P4 and P4Runtime basics (with hands-on lab) 10.45am-11.15am - break 11.15am-12.30pm - YANG, gNMI and OpenConfig basics (with hands-on lab) 12.30pm-1.30pm- lunch 1.30pm-3.00pm - Using ONOS as the control plane (with hands-on lab) 3.00pm-3.30pm - break 3.30pm-5.00pm - Use cases (with hands-on lab) Copyright 2019 - Open Networking Foundation

NG-SDN Overview Copyright 2019 - Open Networking Foundation

Software Defined Networking (SDN) v1 Introduction of Programmatic Network Interfaces Data Plane programming: OpenFlow Configuration and Management: NETCONF and YANG Promise: Enable separation of data plane and control plane Unlock control and data plane for independent innovation TODO picture of SDN Copyright 2019 - Open Networking Foundation

SDN v1 Problems Programmatic Network Interfaces are Inconsistent OpenFlow provided no data plane pipeline specification; every vendor’s pipeline is different Every vendor provides their own models for configuration or management Differences in protocol implementations require custom handling in the control plane Reality: Control planes are written and tested against specific hardware Some control planes have worked around this by building their own abstractions to handle these differences, but new abstractions are either least common denominator (e.g. SAI) or underspecified (e.g. FlowObjectives) Other control planes have exploited specific APIs are essentially locked in to specific vendors Copyright 2019 - Open Networking Foundation

Network Function Virtualization (NFV) v1 Migrate specialized networking hardware (e.g. firewall, load balancer) to commodity servers Virtualized network functions (VNFs) are packaged and distributed as VMs or containers, which are easier to deploy Firewall L. B. Copyright 2019 - Open Networking Foundation

NFV v1 Problems CPUs are not the right hardware for many network functions Latency and jitter are higher than alternatives Higher cost per packet and increased power consumption NFV data plane topologies are inefficient Additional switching hops required to implement sequences of VNFs (service chains), especially when placement algorithms are not optimized Copyright 2019 - Open Networking Foundation

Combining SDN and NFV SDN (fabric) and NFV (overlay) are managed separately Increased operational complexity / opex Difficult to optimize across different stacks Lack of visibility for troubleshoot and end-to-end optimization Separate resource pools Overall, the benefits of SDN/NFV using 1st generation architectures are not without their costs. Ctrl Ctrl Ctrl CtrlCtrl Ctrl App App App App App App OpenStack / K8S Network OS OCP Hardware Copyright 2019 - Open Networking Foundation Ctrl Ctrl Ctrl CtrlCtrl VNF App App App App App

Questions Can we get the benefits of SDN and NFV without paying these costs? Can we incorporate lessons learned from production deployments of SDN v1 and NFV v1? Can we take advantage of new networking hardware efficiently and rapidly? Copyright 2019 - Open Networking Foundation

Next-Gen Software Stack Components Copyright 2019 - Open Networking Foundation

NG-SDN Big Picture Revolutionary New Capabilities Evolutionary Roadmap Next-Gen SDN Interfaces are defined Stratum now released to Open Source ONOS 2.2 supports NG APIs µONOS will provide new configuration subsystem that will be compatible Cloud native tool chains established P4, P4Runtime, OpenConfig, gNMI, gNOI Kubernetes Ready to embark on Verification Copyright 2019 - Open Networking Foundation

What is Stratum? Open source, production targeted, thin switch OS that implements NG-SDN interfaces and models P4 Program P4Runtime gNMI gNOI Switch (Broker) Interface TestVectors Runner P4 Compiler Table Mgr Node Chassis Mgr Chip Abstraction Managers Platform Mgr Switch SDK Platform API Switch Chip(s) Peripheral(s) Copyright 2019 - Open Networking Foundation Stratum agent TestVectors

Stratum implementation of 3 APIs Control – P4Runtime with P4-defined pipelines Manage match-action table entries and other forwarding pipeline state Configuration – gNMI with OpenConfig models Configure everything else that is not the forwarding pipeline. e.g. set port speed, read port counters, manage fans, etc. Operations – gNOI Execute operational commands on device. e.g, reboot, push SSL certificates, etc. All of Stratum’s APIs are defined gRPC / Protobuf Copyright 2019 - Open Networking Foundation

Aside: gRPC (gRPC Remote Procedure Call) Use Protocol Buffers to define service API and messages Automatically generate client/server stubs in: C / C C# Dart Go Java Node.js PHP Python Ruby Transport over HTTP/2.0 and TLS Efficient single TCP connection implementation that supports bidirectional streaming Copyright 2019 - Open Networking Foundation

Slide from Vijay Pai Copyright 2019 - Open Networking Foundation

gRPC Service Example More details here: https://grpc.io/docs/guides/ Copyright 2019 - Open Networking Foundation

Achieving ASIC Independence L3 Routing (IPv6 w/ ECMP) My Station (Routing Classifier) ACL (Redirect, drop & Pkt in) L2 Forwarding demo.p4 Generate control plane contract demo.p4info P4 compiler Allocate resources to realize the pipeline, and generate runtime mapping bmv2 backend Tofino backend (Barefoot) bcm demo.bin bmv2 demo.bin bf demo.bin Copyright 2019 - Open Networking Foundation Stratum fpm backend (Broadcom)

Achieving Platform Independence Stratum gNMI Server openconfig.yang OpenConfig.yang OpenConfig.yang OpenConfig Mapper Stratum Config DB Stratum Platform Manager OpenNetworkLinux ONL Platform API (ONLPv2) ONLP Platform impl. libonlp- platform .so Copyright 2019 - Open Networking Foundation

Stratum Switch Support Today Switch Vendor Switching ASIC AG9064v1 Tofino 64 x 100 Gbps 32 x 100 Gbps Wedge100BF-65X 65 x 100 Gbps Up to 6.5 Tbps Tomahawk Wedge100BF-32X Z9100 32 x 100 Gbps AS7712 32 x 100 Gbps D5054 BF6064X 32 x 100 Gbps 48 x 25 Gbps D7032 32 x 100 Gbps 64 x 100 Gbps T7032-IX1 32 x 100 Gbps Up to 3.2 Tbps 2 software switches: bmv2 (functional software switch) & dummy switch (used for API testing) Near-term future platforms: Additional platforms for existing targets Existing vendors Asterfusion, . Mellanox SN2700 (Spectrum) Datacom platforms (PowerPC-based) Copyright 2019 - Open Networking Foundation

Building and Installing Stratum Traditional Switch Image Management Step 1: Build ONL image offline (or download a pre-built one) Containerized Stratum Deployment Stratum ONL Builder Container Repository Stratum Dockerfile Switch SDKs ONLPI Drivers Switch Image Repository ONL Image ONL-ONLPv2 AMD64 INSTALLED.installer ONL Image with Stratum ONL-ONLPv2-STRATUM AMD64 INSTALLED.installer Step 2: Install ONL on boot via ONIE Switch Copyright 2019 - Open Networking Foundation stratum bcm stratum bf ONL Builder Stratum can be packaged with the switch OS image or deployed as a container on a bare switch OS

Testing Stratum Devices Test Vectors serve as compliance tests for Stratum-based devices They can be written manually or generated automatically - Stratum comes with a Contract Definition language (cdlang) for generating test vectors Humans CDLang Compiler Test Vector Test Vectors TestVectors Runner Test Case Stimulus 1 Stimulus 2 . Automatic Test Vector Generators Test Scenarios in CDLang (low-level, can be plugged in to complex test frameworks) Expectation 1 Expectation 2 . gRPC Switch Under Test TestVectors Runner is a data-driven framework that enables users to execute TestVectors - Reference impl. in golang; supports P4RT/gNMI Switch Ports Traffic generators and validators Copyright 2019 - Open Networking Foundation

Tutorial Goals Learn how to work with P4 and YANG code Understand P4Runtime and gNMI and use CLI utilities to communicate with Stratum devices Gain experience running ONOS and Stratum Modify a simple Control Plane application that interacts with a P4-defined pipeline Copyright 2019 - Open Networking Foundation

Hands-on overview Goal: Build IPv6-based leaf-spine fabric with P4, Stratum and ONOS Getting there step-by-step: Exercise 1 - P4 and P4Runtime basics Exercise 2 - Yang, OpenConfig, and gNMI basics Exercise 3 - Using ONOS as the control plane for Stratum Exercise 4 - Modify P4 program and ONOS app to enable IP routing Copyright 2019 - Open Networking Foundation

Combining SDN and NFV SDN (fabric) and NFV (overlay) are managed separately Increased operational complexity / opex Difficult to optimize across different stacks Lack of visibility for troubleshoot and end-to-end optimization Separate resource pools OpenStack / K8S Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App .

Related Documents:

- Transport SDN - Intent-based NBI People/Organization - ONF Certified SDN Associate (OCSA) - ONF Certified SDN Engineer (OCSE) Implementations - OpenFlow1.6 complete - TTPs for interoperability - OpenFlow Certification - Multiple Labs (Global) - First Certifications (China) ONF Highlights in 2015

Regulatory Implications of SDN & NFV: An ONF Perspective Author: ONF Subject: BoR;Others;16;BoR (16) 10;2016.01.26 Keywords: Presentation " Regulatory Implications of SDN & NFV:An ONF Perspective" given on 21 Janury 2016 during the public BEREC expert workshop on "Regulatory implications of SDN and NFV". Created Date: 1/26/2016 3:21:20 PM

Foundation (ONF) [ONF ORG]. The current ONF definition of the SDN architecture is: "This architecture (SDN) decouples the network control and forwarding functions enabling the network control to become directly programmable and the underlying infrastructure to be abstracted for applications and network services.

Gen 3, 6.5 kV Gen 3, 900 V Gen 2, C2M Family 1.2 kV Gen 1, 1.2 kV Gen 3, 1.2 kV Scaling of State-of-Art Gen-3 SiC Power MOSFETs in R&D RCh/RON becomes larger for lower-V MOSFETs. For Gen-3 1200V MOSFET, RCh 40% of total RON. Future Prospective Reduce RCh/RON by: o Improving MOS INV o Higher packing density

gen-26 davar nanabhoy s practical book keeping & accountancy 12 07/07/1966 gen-27 ghatalia s v practical auditing 15 07/07/1966 gen-28 gupta rup ram advanced accounting 22.5 07/07/1966 gen-29 gupta rup ram auditing 12.5 07/07/1966 gen-30 gupta rup ram text book of auditing 7.5 07/07/1966 gen-31 gupta rup ram cost accounting 9 07/0

SPARC @ Oracle 16 x 2nd Gen cores 6MB L2 Cache 1.7 GHz 8 x 3 rd Gen Cores 4MB L3 Cache 3.0 GHz 16 x 3rd Gen Cores 8MB L3 Cache 3.6 GHz 12 x 3rd Gen 48MB L3 Cache 3.6 GHz 6 x 3 Gen Cores 48MB L3 Cache 3.6 GHz T3 T4 T5 M5 M6 S7 32 x 4th Gen Cores 64MB L3 Cache 4.1 GHz DAX1 M7 8 x 4th Gen Co

motion control valves) for emissions and low speed idle quality Gen 1 intake manifolds can be used on the Gen 2 heads/engine with minor modifications to the manifold shown in Figure 2 Figure 2 Gen 1 Intake interferes with Gen 2 Head in these locations on each side. These can be removed Gen 1 Intake Manifold Gen 1 Intake Manifold ribbing

To reflect Changes in Table GEN I-1, Table AOP I-1, Table ATM I-1 2 July 2019 . 4 July 2019 ; 19/05 GEN/AOP/ATM /SAR ICAO Secretariat, Kazakhstan To reflect Changes in Table GEN I-1, Table AOP I-1, Table ATM I-1, Table SAR I-1 . 15 August 2019 ; 20 August 2019 . 19/07 GEN/ATM ; Norway . To reflect Changes in Table GEN I-1, Table ATM I-1,