AT&T and OpenDaylight: A Platform for Programmable...

19
© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners. Date: 9/28/2016 AT&T and OpenDaylight: A Platform for Programmable Service Logic Brian Freeman Distinguished Member of Technical Staff

Transcript of AT&T and OpenDaylight: A Platform for Programmable...

Page 1: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.

Date: 9/28/2016

AT&T and OpenDaylight: A Platform for Programmable Service Logic

Brian Freeman Distinguished Member of Technical Staff

Page 2: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.2

Introduction

• AT&T has developed the Service Logic Interpreter as an application on top of Opendaylight to create a Platform for Programmable Service Logic

• Using a domain specific language based on a-cyclic directed graphs , AT&T has implemented a model driven application which enables service designers to create software defined network solutions within the ECOMP framework.

• The talk will cover a brief overview of • the Service Logic Interpreter language, • the graphical user interface,

• the integration points with OpenDaylight and

• enhancements to OpenDaylight that would be useful for the future.

Page 3: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.3

What is “A Platform for Programmable Service Logic” ?

• An application that interacts with the network through APIs • An application that does resource assignment through micro-service APIs. • An application that implements Service Provider engineering rules and

maintains customer data. • An application that has a language for dealing with

• the service, network and device models

• The service model to network model mapping

• The network model to device model mapping.

• An application that can deploy new service or update existing services without recompiling the controller code.

Page 4: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.4

Goals of “A Platform for Programmable Service Logic” ?

• Hide complexity from service designers • Create reusable functions for service designers • Create a mechanism to change network and customer logic without a code

release • Create a mechanism to specify how to fill out or map the data in the various

yang models • Create a mechanism to define the Northbound “Service” API via code

generation • Provide the ability for service designers to add “user defined” functions to the

language.

Page 5: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.

High-Level View of AT&T ECOMP

Service Definition Distribution

Net App Onboarding

Service & Network Design

vCEvCE

VNFsvCE

vCENet AppsVM

Instantiate Multi-tenant

VNFs

Network Adapters Application Adapters

Service Orchestrator

AIC Cloud

AIC PlatformOrchestrator OpenStack

Controller Framework

Net Ops

Service Logic

Service Logic

Service Logic

Service Logic

Service Logic

Service Recipe

VNF Adapter Application AdapterNeutron Adapter

Policy Creation Framework

Service Logic

Network Adapter

Network Transport

Application

SDN-C APP-C

Policy Mgmt.

Infrastructure Portal

Service Orders

OSS/BSS

Service Recipe (TOSCA+, HEAT,YANG) Distribution

OSS

Configuration Mgmt.

VM & Image Mgmt. Fault,

Performance, Usage

ASDC CatalogDiscovery

Design

HEAT Templates & Service Recipes

YANG Definitions, Adapters & VNF

Config.

A&AID2 Inventory

Registry

DCAE

Manual Fault & Performance Exceptions

Analytics

Distribution

Collection

5

Page 6: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.

AT&T SDN Controller Framework

SDN-C

API Handlers

Service Logic Interpreter

Network Adapters

SDN-C Database

Service Logic/Eng Rules

Assigned Resource Inventory

Directed Graph

Files – XML (Eng Rules)

Network Data Model

Files – YANG (i.e. IPAG EMT)

Service Data Model

Files - YANG (i.e.UNI port)

VRR Smart Adapter Support CLI/NetConf/BGP

OpenDaylight with AT&T

customizations

Security Applications

A&AI

Inventory

REST

API (REST)

Config Tree

OperationalTree

Service-related Artifacts for SLI, API Handlers, Network Adpaters

External API calls

Control Loop Applications

API (REST)

vCE/vPE Smart Adapter

VOIP VNF Adapter

OpenStack Adapter

Service Orchestrators

API (REST)

BGPCEP Adapter

Etc.

6

Directed Graph Builder

Page 7: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.

AT&T SDN Controller Framework

7

How does a Service Designer view the internals• Northbound “API Handler” (parses API calls)

• API Handler is auto-generated from NBI Yang using ODL “yangtools” with AT&T glue for RPCs

• Simple helper class to read md-sal, populate context, find DG and start execution.

• The “Service Logic Interface” • Java-based engine that interprets/processes the DGs

• The “Directed Graphs” • set of “nodes” that control the flow of data through SDN-C • Example: Service-configuration-operation (black) • Example: Service-configuration-notification (red) • Maps data from input (service model) to network model • Maps data from network model to adaptor (device model)

• A “Config Node” – action node in the DG • Java plug-in that generates the API calls to an adaptor

Service Orchestrator

Network Adaptor

SDNCAPI Handler

DG’s

Config Node

SLI

Page 8: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.8

Hooking the SLI into OpenDaylight

Two main mechanism for hooking the SLI into ODL • REST RPC

• Majority of the NBI interfaces use this mechanism since they are synchronous.

• Permits the Directed Graph to control the HTTP response

• OnDataChange/OnDataTreeChange Notification • Used for Neutron ML2 Agent processing and a few other services.

• Originally would have liked to use this for more but no On-Commit hook so we couldn’t control the HTTP response.

• Neutron and a few other NBI were asynchronous so we could use OnDataTreeChange

• Prefer this method since we use less “helper” code around the builder classes.

Page 9: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.9

What does a Directed Graph Look Like ?

Page 10: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.10

Directed Graphs (XML and Graphviz)

Yang model Module L3SDN-API { … rpc svc-configuration-operation { uses , container, list , leaf … }

Page 11: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.11

Example of Directed Graph Builder - [Demo of creating a Directed Graph and Important Nodes in Language]

Page 12: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.

▪Flow Control ➢ block ➢ call ➢ for ➢ return ➢ set ➢ switch

▪Device Management ➢ configure

▪Java Plugin Support ➢ execute

▪Recording ➢ record

12

Service Logic Interpreter basic nodes

▪Resource Management ➢ delete ➢ exists ➢ get-resource ➢ is-available ➢ notify ➢ release ➢ reserve ➢ save ➢ update

Page 13: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.13

Examples of User Defined Nodes

▪ Execute Nodes: ➢ IpAddressTools

➢ Generic RestApiCallNode

➢ IP Address Management Node

▪ Configure Nodes: ➢ BGP Adaptor

➢ PCEP Adaptor

➢ Legacy CLI Adaptor

➢ Smart CLI Adaptor

➢ Netconf Adaptor

public ConfigStatus configure(String key, Map<String, String> parameters, SvcLogicContext ctx) {

public void someFunction(Map<String, String> parameters, SvcLogicContext ctx) {

Page 14: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.14

Applications of the Programmable Platform

• SDN-G : Resource Assignment and Inventory Update & L3 VNF Configuration • APPC : L4-L7 VNF Configuration & VNF Management • SDN-FC : IP Flow Redirection

BGP ipv4 unicast, ipv4 flowspec, etc • SDN-MLC: MPLS Traffic Engineering and L0 Federated Controller Interface

BGP-LS, PCEP • SDN-W : NetBond • SDN-O : Operations

Page 15: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.15

Deployment Options

ODL

SDNC

SDN

-W

SDN

-O

ODL

SDNC

SDN

-Flow

SDN

-O

ODL

SDNC

SDN

-MLC

SDN

-FC

SDN

-O

ODL

SDNC

SDN

-F

Regional/Nodal

SDN

-O

ODL

SDNC

APP-C

SDN

-O

SDN

-F

SDN

-W

ODL

SDNC

SDN

-W

MoW RegionsCentral Central

Central Nodal

SDN

-G

Page 16: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.16

Enhancements to OpenDaylight

• Multi-threaded onDataTreeChange Notification For some application like BGP, a form of multi-threading would be a nice performance enhancement. Understand that it would not make sense in all environments. This could be tied to general adaptor elastic scaling

• MD-SAL Shard Management utilities When we store data in MD-SAL it would be useful to be able to do micro-sharding and split the processing across multiple nodes. General desire to have more control of where and how many nodes are running RPCs

• On-commit handler So we can call the SLI before committing data to the MD-SAL on a PUT/POST/DELETE via RESTCONF

• Better ENUM handling So we can convert Java ENUM back to original Yang value

• Better Disaster Recovery site synchronization options Today we do snapshot copies of MD-SAL to the DR site. We plan to use non-voting cluster member in DR site. Would like to consider eventually consistent replication or update the DR site with some low over head standard mechanism.

Page 17: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.17

Q&A

Page 18: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.

Page 19: AT&T and OpenDaylight: A Platform for Programmable …schd.ws/hosted_files/opendaylightsummit2016/c5/AT&… ·  · 2016-10-01AT&T and OpenDaylight: A Platform for Programmable Service

OpenDaylight at AT&T

© 2016 AT&T Intellectual Property. All rights reserved. AT&T, Globe logo, Mobilizing Your World and DIRECTV are registered trademarks and service marks of AT&T Intellectual Property and/or AT&T affiliated companies. All other marks are the property of their respective owners.19

Things that we use the most (today)

• Yangtools • MD-SAL • Clustering • BGP-LS • PCEP • BGP • Netconf • Northbound Services (MSO and other AT&T OSSs) • Custom Adaptors

• East/West Adaptors to AT&T OSS’s

• Southbound REST Adaptors

• Southbound CLI VNF Adaptors

SDK Platform

Over 30 AT&T Specific Karaf Feature Bundles