CORD: Putting the Pedal to the Metal Larry Peterson ONF

Slides:



Advertisements
Similar presentations
System Center 2012 R2 Overview
Advertisements

“It’s going to take a month to get a proof of concept going.” “I know VMM, but don’t know how it works with SPF and the Portal” “I know Azure, but.
Central Office Re-architected as a Datacenter (CORD)
OpenCloud: Value-Add Cloud
© 2013, CYAN, INC. 11 Software Defined Metro Networks TNC2013 Virtualization and Innovation Robin Massey SE Manager EMEA
2014 Redefining the Data Center: White-Box Networking Jennifer Casella October 9, 2014 #GHC
SDN-O LCM for Mercury Release Key Points and Overview
ONAP E2E Flow `.
Open Networking and SDN
Orchestration and Controller Architecture Alignment Vimal Begwani AT&T
+ Timon Sloane VP, Standards & Membership.
Rationalizing ONAP Architecture for R2 and Beyond Vimal Begwani – AT&T
Instructor Materials Chapter 7: Network Evolution
Run Azure Services in your datacenter
GRUPPO TELECOM ITALIA FG IMT-2020 Workshop and Demo Day: Technology Enablers for 5G Geneva, 7 December 2016 Towards a 5G Operating Platform: a use case.
Univa Grid Engine Makes Work Management Automatic and Efficient, Accelerates Deployment of Cloud Services with Power of Microsoft Azure MICROSOFT AZURE.
Cloudifying Central Office: Can we do it with ODL?
COMPANY PROFILE: CORENT TECHNOLOGY INC.
Orchestration and Controller Alignment for ONAP Release 1
Multi-layer software defined networking in GÉANT
ONAP Multi-VIM/Cloud Long Term Architecture and Use Cases (Under Community Discussion across Use Case, Optimization Framework, OOM,
Azure Architect – IaaS or PaaS?
DocFusion 365 Intelligent Template Designer and Document Generation Engine on Azure Enables Your Team to Increase Productivity MICROSOFT AZURE APP BUILDER.
Dockerize OpenEdge Srinivasa Rao Nalla.
5G Exchange Open Coopetative Ecosystem The Concept
Connected Maintenance Solution
Requirements for Building a Virtualized Central Office
ONAP Interface to External Controllers
Connected Maintenance Solution
Multi-VIM/Cloud High Level Architecture
Welcome! Thank You! Good morning! Welcome to our CORD Build event!
CORD Roadmap – Release Management –
Building Applications with Windows Azure and SQL Azure
ONAP Amsterdam Architecture
Dustin Wu QCT Telco Solution
The Improvement of PaaS Platform ZENG Shu-Qing, Xu Jie-Bin 2010 First International Conference on Networking and Distributed Computing SQUARE.
Experience with E-CORD
CORD Build Event.
Agenda Where we are (Amsterdam Architecture)
Outline Outline Why CORD? CORD Technology Differentiators
NGAGE Intelligence Leverages Microsoft Azure Platform to Provide Essential Analytics for Hybrid SharePoint Server/Office 365 Environments MICROSOFT AZURE.
CORD – Technical Overview
GGF15 – Grids and Network Virtualization
Open Source Access Manager™ ONAP Proposal
CORD Roadmap – Release Management –
ONAP Amsterdam Architecture
OpenNebula Offers an Enterprise-Ready, Fully Open Management Solution for Private and Public Clouds – Try It Easily with an Azure Marketplace Sandbox MICROSOFT.
Xiaodong Duan& Weiqiang Cheng
ONOS Drake Release September 2015.
Indigo Doyoung Lee Dept. of CSE, POSTECH
Documenting ONAP components (functional)
Lifecycle Management for the Multi-Access Edge Cloud: Experience with CORD Larry Peterson.
Software Defined Networking (SDN)
Building Open Source-Based Cloud Solutions with OpenDaylight
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
DeFacto Planning on the Powerful Microsoft Azure Platform Puts the Power of Intelligent and Timely Planning at Any Business Manager’s Fingertips Partner.
Data Security for Microsoft Azure
ONAP Beijing Architecture Chris Donley 1/9/18
Virtual Central Office Looking Ahead to the 5G Edge
Extending MPLS/BGP VPNs to End-Systems
Developing for the cloud with Visual Studio
XtremeData on the Microsoft Azure Cloud Platform:
OpenStack Summit Berlin – November 14, 2018
Enabling Telco Edge Cloud with Open Source Software and Disaggregated Hardware
One-line presentation title
Microsoft Virtual Academy
NFV and SD-WAN Multi vendor deployment
ONAP Architecture Principle Review
Containers on Azure Peter Lasne Sr. Software Development Engineer
Title: Robust ONAP Platform Controller for LCM in a Distributed Edge Environment (In Progress) Source: ONAP Architecture Task Force on Edge Automation.
Presentation transcript:

CORD: Putting the Pedal to the Metal Larry Peterson ONF

CORD and Car Analogies CORD is like a car in that it is an integrated whole, as opposed to a pile of parts that must be assembled.  Yes, but it doesn’t just use off-the-shelf components. CORD is like a concept car.  Yes, but it’s built to be driven on the street, not just admired in the showroom.

Halo Car “…goes out of its way to push the technology…” “…spurs the imagination…” ‘’...closest thing to a concept car you can find on the street…” “…the technology developed is often incorporated into future production vehicles…”

CORD: A Community Halo Project You Are Here January 2015 September 2016 (1.0) September 2017 (4.0) Concept Proof of Concept Version “1.0” Stabilized Platform Transitioning to Distro

Edge Service Delivery Platform Commodity Clouds Telco Cloud Users Access Edge For illustration purposes; sizing is done independent of general design. 10GPON also an option (as is Mobile-CORD and Enterprise-CORD).

Architectural Requirements (1) Built using commodity servers and white-box switches Leverage merchant silicon Achieve performance and reliability in software (2) Support a wide range of services Bundled Legacy and Disaggregated Greenfield Server-based (NFV) and Switch-based (SDN) (3) Built as an extensible platform Scale hardware up/down to meet performance requirements Select access devices and services to meet functional needs Leverage declarative models to configure and control

Architectural Requirements (4) Support multi-tenancy Platform isolates multiple business units and service vendors Each service isolates multiple end-users (subscribers) (5) Operationally robust Adopts best practices in scalable cloud design Supports zero-touch provisioning

Pushing Technology Boundaries Merchant Silicon x Disaggregation Extensible Platform Multi-Tenant Bring Cloud Technology to the Access Network Bring Access Technology to the Cloud

Data Center N W E WAN Routers Switching Fabric Compute Storage For illustration purposes; sizing is done independent of general design. 10GPON also an option (as is Mobile-CORD and Enterprise-CORD).

OpenStack/Kubernetes Access Edge R-CORD: VOLTHA (XGS-PON) M-CORD: xRAN I/O I/O E-CORD: VNaaS TRELLIS: Fabric + Overlay ROADM (Core) PON, RAN (Access) For illustration purposes; sizing is done independent of general design. 10GPON also an option (as is Mobile-CORD and Enterprise-CORD). OpenStack/Kubernetes

CORD Architecture CORD Controller OCP Hardware Commodity Servers Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF ONOS OpenStack / K8S OCP Hardware Commodity Servers White-Box Switches Merchant Silicon Access (Req 1)

CORD Architecture CORD Controller OCP Hardware Virtualization Agnostic – VMs – Containers – Micro-Services – … Instruction Set Agnostic – Server-based (VNF) – Switch-based (SDN) Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF (Req 2,5) ONOS OpenStack / K8S OCP Hardware

CORD Architecture CORD Controller OCP Hardware Trellis – Fabric – VTN – vRouter – MCAST Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF ONOS OpenStack / K8S OCP Hardware

CORD Architecture CORD Controller OCP Hardware R-CORD – vOLT R-CORD – vOLTHA – vSG / vBNG Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF ONOS OpenStack / K8S OCP Hardware

CORD Architecture CORD Controller OCP Hardware M-CORD – xRAN M-CORD Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF M-CORD – vEPC ONOS OpenStack / K8S OCP Hardware

CORD Architecture CORD Controller OCP Hardware E-CORD – vEE – VNaaS Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF ONOS OpenStack / K8S OCP Hardware

CORD Architecture CORD Controller OCP Hardware Virtualization Agnostic – VMs – Containers – Micro-Services – … Instruction Set Agnostic – Server-based (VNF) – Switch-based (SDN) Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF (Req 2,5) ONOS OpenStack / K8S OCP Hardware

CORD Architecture CORD Controller OCP Hardware Provisions Services Mediates Trust Enforces Policies Assembles Data Paths CORD Controller (Req 3,4) Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF ONOS OpenStack / K8S OCP Hardware

CORD Architecture CORD Controller Service Control Plane Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App Ctrl App VNF ONOS OpenStack / K8S Service Data Plane OCP Hardware

Backend Services and Resources XOS Constructed from Micro-Services GUI REST API VIM TOSCA Views (UIs) CORD Controller (XOS) Event Bus XOS Core DB Data Model Synchronizers Backend Services and Resources

XOS Generative Toolchain Models Policies Language to Define & Operate on Models – xproto models: protobufs + extensions policies: logic formulae applied to models Generative Tool Chain – xosgen XOS Core Auto-generated code to… implement interfaces, execute synchronizers, enforce security test end-to-end integration, validate consistency, apply policy

Example Model and Policy policy grant_policy < ctx.user.is_admin | exists Privilege:Privilege.object_type = obj.object_type & Privilege.object_id = obj.object_id & Privilege.accessor_type = "User" & Privilege.accessor_id = ctx.user.id & Privilege.permission = "role:admin" > message Privilege::grant_policy (XOSBase) { required int32 accessor_id = 1 [null = False]; required string accessor_type = 2 [null = False, max_length=1024]; required int32 controller_id = 3 [null = True]; required int32 object_id = 4 [null = False]; required string object_type = 5 [null = False, max_length=1024]; required string permission = 6 [null = False, default = "all", max_length=1024]; required string granted = 7 [content_type = "date", auto_now_add = True, max_length=1024]; required string expires = 8 [content_type = "date", null = True, max_length=1024]; }

XOS Generative Toolchain GUI REST API VIM TOSCA Generated Code – API Tests – Northbound Interfaces – Enforce Security Policy – Object Relation Mapper – Synchronizer Framework Event Bus XOS Core DB Sync Sync Sync Sync

Synchronizer Framework XOS auto-generates code for… Dependency management Error recovery Work partitioning Parallelization Logging Service developer writes… A Sync_Step( ) that is invoked when Service model changes An Ansible Template that specifies a VNF-specific playbook

Models and Frameworks Previous five slides have been about mechanism XOS is a framework for specifying and evaluating models CORD also includes a set of core models Familiar building blocks – Instances, Networks Virtualization-agnostic infrastructure – Slice ISA-agnostic Service graph – Service, ServiceDependency Subscribers – CordSubscriberRoot Per-user service chains – ServiceInstance, ServiceInstanceLink

Core Models Instance = (VM | Container | Slice = Service = Controller Instance Instance Instance Instance Instance Instance Instance Instance Instance Instance = (VM | Container | Container-in-VM) Slice = (Instances[ ] + Networks[ ]) Service = (Controller + Slices[ ]) vOLT Controller vSG vRouter Service Graph = (Services[ ] + Dependencies[ ])

(ServiceInstances[ ] + ServiceInstanceLinks[ ]) Core Models Service Graph R R-CORD Service Controller Controller Controller vOLT vSG vRouter Subscriber Service Instance Service Instance Service Instance Service Chain = (ServiceInstances[ ] + ServiceInstanceLinks[ ])

Core Models Nested Services Network Slicing EPC-as-a-Service Controller SPGW Control vMME vSPGW-c vSPGW-u EPC-as-a-Service Controller SPGW Control vMME vSPGW-c vSPGW-u EPC-as-a-Service Controller SPGW Control vMME vSPGW-c vSPGW-u EPC-as-a-Service Controller vHSS eNB Nested Services Network Slicing

Build System Serves multiple masters… Developers that want tight development loops for the components they are working on. Integrators that want flexible configurability to combine and test targeted solutions. Operators that want determinist builds that include only certified components and supports zero-touch.

Multi-Stage Build System Configure cord_profile: rcord, mcord, ecord,… cord_scenario: local, mock, single, cord,… Build Fetch – onto development machine Build – containers (if necessary) Publish – to repository on head node

Multi-Stage Build System Deploy Run management containers (XOS, ONOS, OpenStack) on head node Docker Compose today / plans to have Kubernetes help manage Boot Bring up compute nodes and switches Leverage MAAS and PXE

Build Tooling A set of YAML files represents all configuration state All builds start at build/podconfig/profile-scenario.yml A set of Docker images define the canonical representation of the system Makes it easier to identify “golden” components Makes it easier to iterate on a specific component during development A set of Ansible roles separates configuring/installing/deploying containers Makes it easy to adapt CORD to new scenarios A sequence of Make targets represent build milestones  Makes it easy to roll back and incrementally re-build

CORD as Configurable Platform Having built CORD from commodity hardware and disaggregated software services, the operator has wide latitude in how to reassemble the building blocks Two Adjustable Levers Sizing – Number and mix of hardware components Configuration – Set of on-boarded software services If you go and talk to service providers around the globe they will tell you they want essentially two things: 1. Economies of a data center 2. Agility of a cloud provider Each service provider may articulate it differently but it comes down to these two high level requirements. What do these requirements mean? This means service providers want to build their infrastructure like the datacenters – that is build it using a few commodity building blocks that use open source software and hardware. For example datacenters use commodity servers, white boxes for the leaf and spine switches, and many open source software platforms and tools. The net result is that the service providers can scale their infrastructure and significantly reduce capex and opex. Agility means they want to introduce new revenue generating services quickly – what cloud providers do so well. In short this comes down to: reduce expenses and grow revenue Every business needs to do that, especially service providers given their business realities and compete well with OTT providers.

(Up to 16 Racks with 32x40GE switches) Scale Up – Hardware Leaf Leaf Leaf Spine Leaf Leaf Leaf Leaf Leaf Leaf Spine Leaf Leaf Leaf Access Access Compute Spine Compute Compute Compute Access Access Compute Spine Compute Compute Compute Access Access Compute Spine Compute Compute Compute Access Access Compute Spine Compute Compute Compute … … … … … … … Access Access Compute Spine Compute Compute Compute Full POD (Up to 16 Racks with 32x40GE switches) Scale Up – Have the resources to take advantage of proximity to customers.

Scale Up – Software Provision Services On-Demand CORD Controller vOLT vSG vRouter Residential Subscribers vCDN Controller Controller OpenStack Controller Controller Monitoring ONOS Provision Services On-Demand Scale Up – Realize full promise of CORD, from Access to SaaS.

Scale Down – Lite-and-Right CORD Switch Single/Partial Rack (No Spine Switches) Switch Compute Minimal Compute (All services run in containers) Compute OLT Merchant Silicon Access Blades (e.g., OLT) OLT … OLT If you also “scale down” the software so the Service Graph includes just vOLT, the resulting configuration = “White-Box OLT” vOLT Controller Scale down… in the limit Light-and-Right CORD = Commodity OLT “device”. (Note: with just one service, you can get by without XOS, but be aware even a single-function POD has other supportive elements).

Multi-Access Edge Cloud vOLT Controller … R-CORD Sub-Graph… vBBU … M-CORD Sub-Graph… vEE … E-CORD Sub-Graph… CORD Controller Switch Switch Compute Compute OLT Access Devices = OLT + BBU + ETH BBU … ETH Scale down… in the limit Light-and-Right CORD = Commodity OLT “device”. (Note: with just one service, you can get by without XOS, but be aware even a single-function POD has other supportive elements).

Current Status M-CORD MAE E-CORD R-CORD 1.0 2.0 3.0 4.0 4.1 5.0 (Dec-2017) R-CORD VOLTHA

Service Portfolio (4.1) vSG – Virtual Subscriber Gateway vOLT – Virtual OLT vRouter – Virtual Router  vEG – Virtual Enterprise Gateway vEE – Virtual Enterprise Ethernet vHSS – Virtual Home Subscriber Server vMME – Virtual Mobility Management Entity vEPC – Virtual Evolved Packet Core vTR – Virtual Truck Roll HyperCache – Akamai CDN SGW – Virtual Serving Gateway (User) vSGWc – Virtual Serving Gateway (Control) vPGW – Virtual Packet Gateway (User) vPGWc – Virtual Packet Gateway (Control) vBBU – Virtual Broadband Base Unit xRAN – Virtual Radio Access Network ONOS – Network OS OpenStack – Intrastructure-as-a-Service Swarm – Container Management Service Fabric – Fabric Management Service VTN – Virtual Tenant Network A-CORD – Monitoring-as-a-Service LBaaS – LoadBalancer-as-a-Service VNaaS – VirtualNetwork-as-a-Service Helper Services AAA – Access Control  AddressManager – Allocate IP Addresses IGMP – Multicast Signalling MCAST – Multicast SADIS – xxx

CORD and ONAP ONAP (Global) Subscriber Database (Global) CORD (Local) Design Studio Customer Portal ONAP (Global) Subscriber Database (Global) Provisions and Orchestrates Services (Multi-Tenant Platform) Returns Subscriber Profiles (Multi-Tenant Service) CORD (Local) DCAE Collectors Assemble Per-Subscriber Data Paths Across Disaggregated Services and White-Box Switches Database Cache

A-CORD – Monitoring-as-a-Service Analytics Engines Control Decision Real-time Analytic Apps Diagnostic Analytic Apps Security Analytic Apps Change Observability Observed Data CORD Controller Monitoring-as-a-Service Service Controller Programmable Observability Data Storage MaaS … Configuration Collection TSDB Program & Observe Control Programmable Probes Enterprise Metro Ethernet BBUs (Multi-RATs) PON OLT MACs ROADM (Core) VNF VNF VNF VNF

Learn About CORD Hands-on CORD learning and skill development Developed and Hosted by Criterion Networks In collaboration with ONF Online subscription-based pricing model Now in Beta (by invitation) Duration Total Lab 12 Hrs Lab I CORD Network Management 4 Hrs $125 Lab II CORD Virtual Networks 4 Hrs $125 Lab III CORD Services Framework 4 Hrs $125

More Information Software – https://guide.opencord.org Community – https://wiki.opencord.org

VOLTHA

SDN Controller (ONOS Cluster) Trellis API (CLI + REST + Java) SDN Controller (ONOS Cluster) Fabric Control Mcast AAA DHCP Relay OpenFlow 1.3 vRouter … NETCONF Flow Objectives API BRCM ASIC OF-DPA Indigo OF Agent OF-DPA API OCP Software - ONL ONIE OCP Bare Metal Hardware BRCM SDK API Switch software stack Bare-metal Open-source White Box White Box White Box White Box White Box White Box White Box White Box White Box White Box White Box ToR