ONF Transport API - Open Networking Foundation · 2020. 10. 21. · TAPI Feature Set • Topology...

25
ONF Transport API Opening up Disaggregated Optical Transport Applications * Karthik Sethuraman, NEC Andrea Mazzini, Nokia Stephane St Laurent, Infinera Lyndon Ong, Ciena Dec 3, 2018 *animated slides

Transcript of ONF Transport API - Open Networking Foundation · 2020. 10. 21. · TAPI Feature Set • Topology...

  • ONF Transport API Opening up Disaggregated Optical Transport

    Applications * KarthikSethuraman,NECAndreaMazzini,Nokia

    StephaneStLaurent,InfineraLyndonOng,CienaDec3,2018

    *animatedslides

  • ONF TAPI Introduction & Overview

    2

  • TransportAPI–SimpleProblemStatement

    OpenStandardT-API

    ONOS ODL Proprietary

    Network OrchestratorAPP

    ONOS APIs ODL APIs Proprietary APIs

  • ONFTransportAPI(TAPI):FunctionalArchitecture

    Topology Service

    Connectivity Service

    Path Computation Service

    Shared Network Information Context

    Virtual Network Service

    Notification Service

    NE Network Elements NE NE SDN Controller

    NE NE SDN Controller

    NE NE Application

    Transport API or Other SBIs

    Transport API or Other NBIs

    OAM Service

  • TAPIRI-PrototypingController-agnosticAPI

    ONOS NBI Mapper

    TAPIClient(Python)

    ODL NBI Mapper TAPI Server Backend

    TAPIReferenceNetworkDB(JSON)

    TAPIServer(Python)

    Transport API

    NetworkDomain(UniMgr)NetworkDomain(ODTN)

    Available/ShortlyAvailable

    Topology Service

    Connectivity Service

    Path Computation Service

    Virtual Network Service

    Notification Service

    OAM Service

  • OIFTransportAPIInteropDemo(2014,2016,2018)

    Domain Controller

    Domain Controller

    Domain Controller

    Multi-Domain Controller

    Technology,VendorSpecificmodels

    TAPI Agent

    OSS/App/Orchestrator

    CommonAbstractionmodel

    TransportAPI

    TestVendors

    TestCarriersTransportAPI

    TAPI Agent

    Multi-Domain Controller

    TAPI Agent TAPI Agent

    TAPI Agent

  • MEF3.0OpticalTransportImplementationProject

  • ONFODTN(OpenDisaggregatedTransport)Architectures

    WSS TRN

    OpenDisaggregatedSystem

    OpenConfig OpenConfig

    MUX WSSAMP MUXTRN

    ONOS

    WithoutOLSController(FuturePh2.0)TAPI

    OLSController

    WSS TRN

    OpenLineSystem(OLS)

    OpenConfig OpenConfig

    MUX WSSAMP MUXTRN

    ONOS

    WithOLSController(CurrentPh1.5)

    TAPI

    Hastopology

    TAPI

    TBD

  • ConfluenceofStandardsandOpenSource

    TAPI FRS Use cases & Requirements

    TAPI UML Information Model

    TAPI YANG Data Schema

    OpenAPI (RESTConf) Schema

    ONF Core Information Model

    ONF Technology Specification Models

    UML-YANG Generation Tool

    YANG-OpenAPI Generation Tool ONFTAPISDK

    EAGLEModelingTools

    Open Model Profile

    CodeOTN (ITU-T G.

    874.1)

    ETH (ITU-T G.

    8052)

    Photonic (ITU-T G.807.1*) Python Reference

    Implementation

    Python Stub Generation Tool

    Optical Transport

    MEF

    MEF3.0Implementations

    Packet WAN

    Multi-carrier T-SDN Interop

    Implementation Agreements & Certification

    OIF

    InteropImplementations

    NRM

    MEFModels

    NRP

    ONFOIMT

    ONFOTCC

    ITU-TSG15

    Technology Generic Core Model (ITU-T G.7711)

  • TAPIFeatureSet

    •  TopologyService–  Logical(abstract/virtual)Topology,

    Node,Link&Edge-Point(Acrossallayers)

    •  ConnectivityService–  Retrieve&RequestP2P,P2MP,MP2MP

    connectivity(Acrossalllayers)

    •  PathComputationService–  RequestforComputation&Optimization

    ofpaths•  VirtualNetworkService

    –  Create,Update,DeleteVirtualNetworktopologies

    •  NotificationFramework–  Subscriptionandfiltering–  Autonomous/Pushmechanism

    •  NodeConstraints–  Abilitytospecifyconnectivity/blocking

    constraints

    •  Resilience&Protection–  Multi-layer,Multi-Domain–  Basedonusecasesunderdiscussion

    •  OAM/Monitoring/PM–  ConsistentMulti-layerabstractionand

    model–L0-L2

    •  Alarm/TCA/Counter•  Multi-Technology

    –  PhotonicMediaspecmodels–  ETH&OTNenhancements–  MicrowareTBD

    TAPISDK1.x(H22016) TAPISDK2.x(H22018)

  • TransportAPISummary

    •  Providesfunctionsnecessaryformulti-domainorchestration

    –  Topologyviewandabstraction–  Connectivityestablishment–  HierarchicalAbstraction–  Migrationpathforlegacysystems

    •  Differenttypesoftopologyabstraction–  AbstractNode(single,edge,sliced,etc)–  AbstractLink–  Complete(1-to-1)internaltopology

    •  Supportsmultipletransporttechnologies–  PacketTransport(Ethernet,MPLS-TP)–  OpticalTransport(OTN,DWDM)

    •  InteroperabilityonNorth-SouthOrchestrator/Controllerinterface

    •  TAPI2.xfixes&enhancements–  PhotonicModelupdatesbasedonODTNfeedback–  ETH,L1&OAMalignmentduetointeractionwith

    MEF(NRM-OAM/SOAM,L1)projects–  YANG&OpenAPI/RESTConfBestPractices

    –  BasedonMEF-PRESTO(ODL),ODTN(ONOS)andOIF(TAPIInterop)activityfeedback

    •  TAPI3.0Items(Current)–  EquipmentInventory&configuration

    –  Equipment,Holders(Rack/Shelf,etc),Connectors,Fiber,etc

    –  TopologyPacs/Datatypes(Capacity,Cost,Latency,Riskparameters)enhancements

    –  Rationalize/tunethecomponent-systempatternforTopology&Connectivity

    GeneralBenefits TAPINextSteps

  • ONF TAPI Logical Topology & Forwarding Concepts with Photonic Example

    12

  • SimplePhysicalNetworkExampletoillustrateT-API

    •  ANetworkProviderwith2operatordomains:•  Transponderdomain•  OLS/ROADMdomain

    •  AndwithtwoCustomers(RedandGreen)connectedtoTransponders•  NoSwitchingonTPDNodes-DSRsaremappedintoODUintoOTSi•  OnlyPhotonicswitchingassumedonROADMS

    NodeEdgePoint(NetworkInternal)NodeEdgePoint(NetworkEdge)ServiceInterfacePoint

    LogicalTerminationPointsshown

    ConnectivityServiceEndPoint

    UNI1(200G) UNI3

    (200G)

    UNI2(200G)

    NNI1(200G)

    NNI2(200G)

    NNI3(400G)

    UNI4(200G)

    TPD3

    TPD3

    RDM2

    RDM1 TPD1

    TPD2

    RDM4 RDM3 RDM5

    OLS Domain

    TPD Domain

    AbbreviationsTPD–TransponderNodeRDM–ROADMNodeUNI–User-NetworkInterfaceNNI–Network-NetworkInterfaceNMC–NetworkMediaChannelNMCA–NMCAssemblyOTSi–OpticalTributarySignalOTSiA–OTSiAssembly

  • ExampleT-APIContexts

    TPD-1 TPD2 TPD3 OLS

    OtherA

    dminInterfaces

    TAPI Provider Internal Context Resource Groups

    Device Context TPD1

    Device Context TPD2

    Device Context TPD3

    Controller Context OLS

    Customer Context RED

    Resource Group

    TAPI

    Customer Context GREEN

    Resource Group

    TAPI

    Admin Context BLUE.Admin

    Resource Group

    TAPI

    Client Application RED Client Controller GREEN

    Resource Group Resource Group

    TPD Controller Admin APP

    Blue

    Client

    Server

    Client

    Server

    TAPIProviderSDNControllerOrchestration/Virtualization

    (basedonONFArchitecturev1.1)

  • UNI1

    UNI2

    TPD3

    TPD3

    TPD1 TPD2

    TPD Domain UNI4

    UNI3

    Example1:HierarchicalTAPIControlDomains&AbstractedOLSTopology

    NNI1

    NNI2

    NNI3

    OLS Domain

    OLS Node

    TAPI Context-R

    TAPI Context-G

    TransponderDomainController

    UNI 1 UNI 3 UNI2 UNI 4

    Abstraction & Orchestration

    Customer(s)view

    NetworkProviderView

    OLSOperatorView

    RDM2

    RDM1

    RDM4 RDM3 RDM5 OLS Domain

    NNI2

    NNI1

    AbbreviationsTPD–TransponderNodeRDM–ROADMNodeUNI–User-NetworkInterfaceNNI–Network-NetworkInterfaceNMC–NetworkMediaChannelNMCA–NMCAssemblyOTSi–OpticalTributarySignalOTSiA–OTSiAssembly

    NodeEdgePoint(NetworkInternal)NodeEdgePoint(NetworkEdge)ServiceInterfacePoint

    LogicalTerminationPointsshown

    ConnectivityServiceEndPoint

    OLSDomainController

    OLS TAPI Context

    NNI 1

    NNI 2 NNI 3

    Abstraction & Orchestration

    NNI3

  • Example 1: E2E Connectivity Request Flow (Omnipotent view) DSRConnectivityService1

    PhotonicConnectivityService2DSRConnectivityService2

    PhotonicConnectivityService1

    UNI1 UNI3

    UNI2

    NNI1

    NNI2

    NNI3

    UNI4

    TPD3

    TPD3

    RDM2 RDM1 TPD1

    TPD2

    RDM4 RDM3 RDM5

    OLS Domain

    TPD Domain

    OTSi1-1

    OTSi1-1OTSi1-2

    OTSi1-2

    OTSi2-1

    OTSi2-1

    OTSi2-2

    OTSi2-2

    NMCA1

    NMCA2

    NodeEdgePoint(NetworkInternal)NodeEdgePoint(NetworkEdge)ServiceInterfacePoint

    LogicalTerminationPointsshown

    ConnectivityServiceEndPoint

    AbbreviationsTPD–TransponderNodeRDM–ROADMNodeUNI–User-NetworkInterfaceNNI–Network-NetworkInterfaceNMC–NetworkMediaChannelNMCA–NMCAssemblyOTSi–OpticalTributarySignalOTSiA–OTSiAssembly

    OTSiA1 DSR1 100G

    DSR2 100G OTSiA2

  • Example1:E2EConnectivityRequestFlow(actualTAPIContextsview)

    OLS TAPI Context NNI 1

    NNI 2

    NNI 3

    TransponderDomainController

    TAPI Context-G

    UNI 1 UNI 3

    TAPI Context-R UNI2 UNI 4 Customer(s)view

    NetworkProviderView

    OLSOperatorView

    DSRConnectivityService2

    DSRConnectivityService1 DSRConnectivityService2

    DSRConnectivityService1

    PhotonicConnectivityService1

    PhotonicConnectivityService2

    PhotonicConnectivityService1PhotonicConnectivityService2

    NodeEdgePoint(NetworkInternal)NodeEdgePoint(NetworkEdge)ServiceInterfacePoint

    LogicalTerminationPointsshown

    ConnectivityServiceEndPoint

    AbbreviationsTPD–TransponderNodeRDM–ROADMNodeUNI–User-NetworkInterfaceNNI–Network-NetworkInterfaceNMC–NetworkMediaChannelNMCA–NMCAssemblyOTSi–OpticalTributarySignalOTSiA–OTSiAssembly

    UNI1

    UNI2

    TPD3

    TPD3

    TPD1 TPD2

    TPD Domain UNI4

    UNI3NNI1

    NNI2

    NNI3

    OLS Domain

    OLS Node

    RDM2

    RDM1

    RDM4 RDM3 RDM5 OLS Domain

    NNI2

    NNI1

  • Example1:ConnectivityRequestFlow/wprovisionedConnectivity

    Resources

    OLS TAPI Context NNI 1

    NNI 2

    NNI 3

    TransponderDomainController

    TAPI Context-G

    UNI 1 UNI 3

    TAPI Context-R UNI2 UNI 4 Customer(s)view

    NetworkProviderView

    OLSOperatorView

    DSRConnectivityService2

    DSRConnectivityService1 DSRConnectivityService2

    DSRConnectivityService1

    PhotonicConnectivityService1

    PhotonicConnectivityService2

    PhotonicConnectivityService1PhotonicConnectivityService2

    NodeEdgePoint(NetworkInternal)NodeEdgePoint(NetworkEdge)ServiceInterfacePoint

    LogicalTerminationPointsshown

    ConnectivityServiceEndPoint

    AbbreviationsTPD–TransponderNodeRDM–ROADMNodeUNI–User-NetworkInterfaceNNI–Network-NetworkInterfaceNMC–NetworkMediaChannelNMCA–NMCAssemblyOTSi–OpticalTributarySignalOTSiA–OTSiAssembly

    UNI1

    UNI2

    TPD3

    TPD3

    TPD1 TPD2

    UNI4

    UNI3

    NNI1

    NNI2

    NNI3

    OLS Domain

    OLS Node

    RDM2

    RDM1

    RDM4 RDM3 RDM5 OLS Domain

    NNI2

    NNI1

    NMCA1

    NMCA2

    OTSi1-1

    OTSi1-1OTSi1-2

    OTSi1-2

    OTSi2-1

    OTSi2-1

    OTSi2-2

    OTSi2-2

    NMCA1

    NMCA2

    OTSiA1 DSR1 100G

    DSR2 100G OTSiA2

  • TPD3

    TPD3

    TPD1 TPD2

    UNI3

    UNI4

    UNI1

    UNI2

    Example2:AlternateTAPIControlDomains–Orchestrationarchitecture

    Customer(s)viewNetworkProviderView

    RDM2

    RDM1

    RDM4 RDM3 RDM5 OLS Domain

    NNI2

    NNI1

    NNI3

    OperatorsView

    TAPI Context-R

    TAPI Context-G

    ServiceOrchestrator

    UNI 1 UNI 3 UNI2 UNI 4

    Abstraction & Orchestration

    TPD3

    TPD3 UNI4

    UNI3

    UNI1

    UNI2

    TPD1 TPD2

    NNI2

    TPD Domain

    NNI3

    NNI1

    TPDDomainControllerTPD TAPI Context

    NNI 1 NNI 2 NNI 3

    Abstraction & Orchestration

    UNI 1

    UNI 2

    UNI 3

    UNI 4

    OLSDomainController

    OLS TAPI Context NNI 1 NNI 3 NNI 2

    Abstraction & Orchestration

    RDM2 RDM1

    RDM4 RDM3 RDM5

    NNI1

    NNI2

    NNI3

  • TAPI Context-G UNI 1 NNI 1

    UNI 2 NNI 2

    NNI 3 UNI 3

    UNI 4

    Example2:AlternateTAPIControlDomains–E2EConnectivityRequest

    Flow

    Customer(s)view

    NetworkProviderView

    RDM2

    RDM1

    RDM4 RDM3 RDM5 OLS Domain

    NNI2

    NNI1

    NNI3

    OperatorsView

    TPD3

    TPD3 UNI4

    UNI3

    UNI1

    UNI2

    TPD1 TPD2

    NNI2

    TPD Domain

    NNI3

    NNI1

    OLS TAPI Context NNI 1

    NNI 2

    NNI 3

    TAPI Context-G

    UNI 1 UNI 3

    TAPI Context-R UNI2 UNI 4 DSRConnectivityService1 DSRConnectivityService2

    PhotonicConnectivityService1

    PhotonicConnectivityService2

    DSRCS1-1 DSRCS1-2DSRCS2-1 DSRCS2-2

    TPD3

    TPD3

    TPD1 TPD2

    UNI3

    UNI4

    UNI1

    UNI2

    RDM2 RDM1

    RDM4 RDM3 RDM5

    NNI1

    NNI2

    NNI3

  • RecursiveNode&TopologyaspectsofTAPIForwardingDomain

    B

    A

    A.3

    A.5

    A.4

    C

    Node-B appears a Topology of Nodes A & C and Link A-C

    TAPIContextàNetworkDomainViewNodeaspectoftheFDTopologyaspectoftheFDObserver

    Node-C appears as a Topology with NULL elements

    Node-A appears a Topology of Nodes A.1 - A.5 & Links between them

    01

    A FD(Node)LTP(NodeEdgePoint)

    Link01.1 LTP(ServiceInterfacePoint)

    A FD(Topology)

    C

    A.1

    A.2 03

    11

    12

    15

    17

    18

    19

    20

    13

    14 16

    A

    04

    05

    Context appears as a Topology of one Node B and SIPs (off-network relationships/Links)

    B 02

    01

    01.1

    01.n

    02.1

    02.n

    Mapping

  • RecursiveConnectivitydecompositionofTAPIForwardingConstruct

    B

    A

    A.3

    A.5

    A.4

    C

    Node-B appears a Topology of Nodes A & C and Link A-C. Connection (01-02) decomposes into 2 lower-level Connections (01-04) & (03-02)

    TAPIContextàNetworkDomainViewNodeaspectoftheFDTopologyaspectoftheFDObserver

    Node-A appears a Topology of Nodes A.1 - A.5 & Connection (01-04) further decomposes into 3 lowest-level connections (01-12), (17-18) & (20, 04)

    01

    A FD(Node)LTP(NodeEdgePoint)

    Link01.1 LTP(ServiceInterfacePoint)

    A FD(Topology)

    A.1

    A.2 03

    11

    12

    15

    17

    18

    19

    20

    13

    14 16

    Context appears as a Topology of one Node B and a Connection (01-02)

    01.1

    01.n

    02.1

    02.n

    Mapping

    A

    04

    05

    B

    01

    02

  • TAPI2.1PhotonicLTPModel(stillunderreviewfor2.2)ROADMTRANSPONDER

    OTSi

    OMSLink

    OMS OMS

    SMC

    OTS

    OMS

    SMC

    NMC NMCNMCA NMCA

    SMCA

    Add/DropPort

    SMCA

    LinePort

    OTSiA

    SMC

    SMCA SMC

    1:1

    1:1

    OTSi OTSiA

    s

    1..2

    1

    C/Lbands

    N n

    S

    1..c

    1

    s*n

    s` S`

    N`r

    p

    n`

    1..r

    OTU(OTUCn)

    c~FlexO

    ODU(ODUCn)

    r`

    MediaChannelCEP{lowerFreq,upperFreq}MediaChannelAssembly[{lowerFreq,upperFreq},{lowerFreq,upperFreq},..]

    ServiceInterfacePoint

    NodeEdgePoint

    ConnectionEndPoint(TTP+CTP)

    ConnectionEndPoint(CTPonly)

    ConnectionEndPoint(InversemuxCTPonly)

    ConnectionEndPoint(TTPonly)

    NodeEdgePointGroup

    MIP

    DownMEP

    UpMEP

    OPM

    NonIntrusiveMonitoringNoSpecificOAMsignalingOpticalPowerMonitoring

    SMC

    1

    NMCA NMC

    r

    Notexplicitlymodeled

    OTSLink

    Notexplicitlyrepresented

    OMSLink

    p`

    1:1 1:1 1:11:1

    OTSi

    1:1

    DegreePort

    NMC NMCA

    1:1

    SMCA SMC

    q q`

    1

  • References Thank you J

    24

  • Links…. •  TAPI Wiki:

    §  https://wiki.opennetworking.org/display/OTCC/TAPI

    •  TAPI SDK §  https://github.com/OpenNetworkingFoundation/tapi

    •  Core model: TR-512 V1.4 (November 2018) §  https://3vf60mmveq1g8vzn48q2o71a-wpengine.netdna-ssl.com/wp-content/uploads/2018/12/

    TR-512_v1.4_OnfCoreIm-info.zip

    •  UML, Papyrus, YANG Guidelines TR 514/515 (July 2018) §  Last published version à https://www.opennetworking.org/software-defined-standards/models-apis/ §  Latest working draft

    •  https://wiki.opennetworking.org/display/OIMT/Infrastructure+Sub-team+Guidelines •  https://wiki.opennetworking.org/display/OIMT/UML+-+YANG+Guidelines

    •  UML to YANG & YAMG-OpenAPI Mapping Tools §  Github repository: https://github.com/OpenNetworkingFoundation/EagleUmlYang §  Github repository: https://github.com/OpenNetworkingFoundation/EagleYangOpenApi