A use case for Schema Mount

Slides:



Advertisements
Similar presentations
November 2013 Jan Medved, Reinaldo Penno
Advertisements

Performance Evaluation of Open Virtual Routers M.Siraj Rathore
Gap Analysis of Simplified Use of Policy Abstractions (SUPA) Presenter: Jun Bi draft-bi-supa-gap-analysis-02 IETF 92 SUPA BoF Dallas, TX March 23, 2015.
Logical Interface Overview Date: [ ] Authors: NameAffiliationPhone Juan Carlos ZúñigaInterDigital Notice:
Protocol for I2RS I2RS WG IETF #89 London, UK Dean Bogdanovic v0.1.
Members: Acee Lindem, Anees Shaikh, Christian Hopps, Dean Bogdanovic, Lou Berger, Qin Wu, Rob Shakir, Stephane Litkowski, Yan Gang Wiki:
Dissuasion, Working Group Scope and Deliverables Lou Berger Pat Thaler
IETF 92 Dallas, TX Yang Data Model for OSPF Protocol draft-ietf-ospf-yang-00 Yingzhen Qu Derek Yeung YingZhen Qu
Draft-wilton-netmod-intf-ext-yang-01 draft-wilton-netmod-intf-vlan-yang-01 Rob Wilton IETF 94 – Yokohama, NETMOD WG.
Network Device YANG Organizational Model draft-rtgyangdt-rtgwg-device-model-03 Authors: Acee Lindem, Christian Hopps, Dean Bogdanovic, Lou Berger (Ed.)
Connectionless OAM yang model Deepak Kumar Qin WU Zitao Wang Reshad Rahman Srihari Raghavan 1IETF96, Berlin, Germany.
Design Work of Tunnel Models
YANG Roque Gagliano.
Yang Data Model for Tunnel Policy draft-li-rtgwg-tunnel-policy-yang-00
YANG Data Model for RIP draft-liu-rtgwg-yang-rip-01
draft-ietf-teas-yang-te-topo-05
Connectionless OAM yang model
draft-ietf-l3sm-l3vpn-service-model IETF 94 - Yokohama
DetNet Data Plane Discussion
draft-litkowski-isis-yang-isis-cfg IETF 90 - Toronto
Dave Allan Requirements and Framework for Unified MPLS Sub-Network Interconnection draft-allan-unified-mpls-req-frmwk-00 Dave.
draft-ietf-teas-yang-te-topo-06
Can SUPA Aid ECA Policy Development in I2RS Yang
Routing Area Yang Architecture Design Team Update
Presenter: Jeffrey Zhang
Scaling Data Center Networks
draft-ietf-teas-yang-te-topo-01
OpState & Schema Mount Update NETMOD WG Chairs IETF 95 Buenos Aires
LIME Base YANG Model Work Update draft-tissa-lime-yang-oam-model draft-wang-lime-yang-pm Deepak Kumar Qin WU IETF93 Prage,Czech.
Routing Area Yang Architecture Design Team Update
YANG Data Models for TE and RSVP draft-ietf-teas-yang-rsvp-06 draft-ietf-teas-yang-te-05 Tarek Saad and Rakesh Gandhi.
YANG Data Models for TE and RSVP draft-ietf-teas-yang-te-03 draft-ietf-teas-yang-rsvp-03 Tarek Saad (Presenter)
Virtualization overview
draft-ietf-teas-yang-te-04
NETCONF Configuration I/F Advertisement by WSDL and XSD
DetNet Data Plane Discussion
OSPF Extensions for ASON Routing draft-ietf-ccamp-gmpls-ason-routing-ospf-03.txt IETF67 - Prague - Mar’07 Dimitri.
draft-ietf-teas-yang-te-topo-04
Chapter 5 Network and Transport Layers
IETF 101 NETMOD Working Group
YANG Data Models for TE and RSVP draft-ietf-teas-yang-rsvp-06 draft-ietf-teas-yang-te-05 Tarek Saad and Rakesh Gandhi.
IETF 103 NETMOD BBF YANG Update
draft-ietf-rtgwg-ni-model-03 Impact on LxVPN device models
IETF YANG Routing Types Update
Interface extensions YANG & VLAN sub-interface YANG Status update
IETF 98 NETMOD Working Group
NMDA Q & A draft-dsdt-nmda-guidelines &
DetNet DetNet Flow Information Model draft-farkas-detnet-flow-information-model-02 Balázs Varga, János Farkas, Rodney Cummings, Jiang Yuanlong and.
YANG Mount draft-clemm-netmod-mount IETF 98 Chicago, 30 March 2017
Routing Area Yang Architecture Design Team Update
Post WG LC NMDA datastore architecture draft
YANG Data Models for TE and RSVP draft-ietf-teas-yang-te-08 draft-ietf-teas-yang-rsvp-07 draft-ietf-teas-yang-rsvp-te-01
Yingzhen Qu YANG Data Model for OSPF Protocol draft-ietf-ospf-yang-08 draft-ietf-ospf-sr-yang-02 IETF99, Prague Derek Yeung
YANG Data Models for TE and RSVP draft-ietf-teas-yang-te-06 draft-ietf-teas-yang-rsvp-07 draft-ietf-teas-yang-rsvp-te-00 draft-ietf-mpls-base-yang-04 code.
Key Manager Domains February, 2019.
draft-ietf-teas-yang-te-topo-08
Fast Reroute for Node Protection in LDP- based LSPs
PMIP6 extensions for inter-access handovers and flow mobility
draft-lee-rtgwg-actn-applicability-enhanced-vpn-03
YANG Data Model for FlexE Interface Management
YANG Data Models for TE and RSVP draft-ietf-teas-yang-te-19 draft-ietf-teas-yang-rsvp-10 draft-ietf-teas-yang-rsvp-te-05 draft-ietf-teas-yang-te-mpls-01.
Scope and Approach of ONF OIMT Internet Protocol Work Items
draft-ietf-teas-yang-l3-te-topo-02
QoS Yang Model Aseem Choudhary, Norm Strahle, Ing-Whar Chen,
YANG Models for MPLS-TP
RIFT YANG draft-zhang-rift-yang-01
DetNet Data Plane Solutions draft-ietf-detnet-dp-sol-ip-02  draft-ietf-detnet-dp-sol-mpls-02  Bala’zs Varga, Jouni Korhonen, Janos Farkas, Lou Berger,
NETMOD Versioning Design Team Update
Interface extensions YANG & VLAN sub-interface YANG Status update
YANG Data Models for TE and RSVP draft-ietf-teas-yang-te-21 draft-ietf-teas-yang-rsvp-11 draft-ietf-teas-yang-rsvp-te-07 Tarek Saad, Juniper Networks Rakesh.
Presentation transcript:

A use case for Schema Mount February 22, 2016 The term schema mount is used to be solution neutral

Schema Mount Use Case We cover a single use case Not all possible use cases Use case driven by draft-rtgyangdt-rtgwg-device-model-02 Repo: https://github.com/ietf-rtg-area-yang-arch-dt/meta-model/ Authors: Acee Lindem, Christian Hopps, Dean Bogdanovic, Lou Berger (Ed.) Contributors: Anees Shaikh, Kevin D'Souza, Luyuan Fang, Qin Wu, Rob Shakir, Stephane Litkowski, Yan Gang Netmod -- Feb 22, 20116

Topics Challenges Original solution Schema mount based solution Concluding observations Netmod -- Feb 22, 20116

Challenge 1: LNEs – Logical Network Elements Network Device (Physical or Virtual) Logical Network Element Logical Network Element Net Instance Net Instance Net Instance Net Instance Net Instance Net Instance Interfaces Interfaces Separate management sub-domains Sub-domains can be managed independently and, optionally, by a top level manager Conceptually LNE ~= "Guest“ Network-device ~= "Host" Netmod -- Feb 22, 20116

Challenge 2: NIs – Network Instances Network Device (Physical or Virtual) Logical Network Element Logical Network Element Net Instance Net Instance Net Instance Net Instance Net Instance Net Instance Interfaces Interfaces Separate routing / switching domains Can represent of an RFC 4364 VRF or a Layer 2 Virtual Switch Instance (VSI) or a bridge/router (i.e., both) General virtualized instance implying a separate L2, L3, or L2/L3 context. For L3, this implies a unique IPv4/IPv6 address space. Netmod -- Feb 22, 20116

Top-level is sometimes referred to as root-level Challenge Context There are many “top-level” modules out there Some RFCs Many drafts Many private/proprietary/consortia Some from other SDOs (e.g., from IEEE) None are LNE aware One is almost NI aware draft-ietf-netmod-routing-cfg has routing instances One example: RFC7223 – A “top-level” module Top-level is sometimes referred to as root-level Namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces"; +--rw interfaces | +--rw interface* [name] | +--rw name string | +--rw description? string | +--rw type identityref | +--rw enabled? boolean | +--rw link-up-down-trap-enable? enumeration Netmod -- Feb 22, 20116

Original (draft -01) Approach An explicit structure with LNEs and NIs +--rw device (Real or virtual) +--rw info +--rw hardware +--rw interfaces (RFC7223, RFC7277, drafts) +--rw qos +--rw logical-network-elements (logical partition) +--rw networking-instances (rtg-cfg draft, e.g., VRF/VSI) Pro: Can support any type of device No YANG modification required Cons: Every model and device would see at least 1 LNE and NI Would impact every module Each module would need to pick path based on model type Physical at the top Per management domain, under LNE Per VRF/VSI, under NI Netmod -- Feb 22, 20116

Current (draft -02) Approach Rely on “schema” mount Works for any module – without modification Adds two tables LNE: logical-network-inventory NI: networking-instance Each table defines a per {LNE, NI} instance root Under which any top-level model may be instantiated Note this is defined in the schema Choice of available model is up to the implementation Some type of device profile definition is expected ietf-yang-library is used to enumerate available models The term schema mount is used to be solution neutral Netmod -- Feb 22, 20116

Example: A Top-Level Device Namespace "urn:ietf:params:xml:ns:yang:..."; +--rw ietf-yang-library | +--rw interfaces +--rw hardware +--rw qos +--rw system-management +--rw networking-services +--rw oam-protocols +--rw routing +--rw mpls +--rw ieee-dot1Q +--rw ietf-acl +--rw ietf-key-chain +--rw logical-network-element +--rw networking-instance module: network-device +--rw system-management +--rw system-management-global | +--rw statistics-collection | ... +--rw system-management-protocol* [type] | +--rw type=syslog | +--rw type=dns | +--rw type=ntp | +--rw type=ssh | +--rw type=tacacs | +--rw type=snmp | +--rw type=netconf module: network-device +--rw networking-services +--rw networking-service* [type] +--rw type=ntp-server +--rw type=dns-server +--rw type=dhcp-server module: network-device +--rw oam-protocols +--rw oam-protocol* [type] +--rw type=bfd +--rw type=cfm +--rw type=twamp module: network-device +--rw routing +--rw control-plane-protocols | +--rw control-plane-protocol* [type] | +--rw type identityref | +--rw policy +--rw ribs +--rw rib* [name] +--rw name string +--rw description? string +--rw policy module: network-device +--rw mpls +--rw global +--rw lsps* [type] +--rw type=static +--rw type=constrained-paths +--rw type=igp-congruent Netmod -- Feb 22, 20116

Example: LNE Model //network-device state module: logical-network-element +--rw logical-network-inventory +--rw logical-network-element* [name] +--rw name="one" string +--rw manged=true boolean +--rw root schema-mount //Example LNE state when exposed to network-device +--rw ietf-yang-library +--rw interfaces +--rw hardware +--rw qos +--rw system-management +--rw networking-services +--rw oam-protocols +--rw routing +--rw mpls +--rw ieee-dot1Q +--rw networking-instance Netmod -- Feb 22, 20116

Example: LNE Model module: networking-instance +--rw networking-instances +--rw networking-instance* [name] +--rw name string +--rw type? identityref +--rw enabled? boolean +--rw description? string +--rw networking-instance-policy | ... +--rw root? schema-mount augment /if:interfaces/if:interface: +--rw bind-networking-instance-name? string augment /if:interfaces/if:interface/ip:ipv4: augment /if:interfaces/if:interface/ip:ipv6: Netmod -- Feb 22, 20116

Key Requirements of This Use Case That any data model can be instantiated within another module Instantiated means that information is maintained only within the ‘mounted’ context This use case only requires mounting of top-level models That no additional model is needed to support 1 The schema defines what other modules can be mounted That a server can control which models are mounted That all capabilities that exist with the mounted module are available e.g. RPC operations, notifications, and augmentations Netmod -- Feb 22, 20116

Observations We are happy with any solution that enables our use case Both solutions drafts address some, but not all of the use case Both require additional modules Both solutions look like reasonable starting points Perhaps can merge them and add additional needed capability We need a solution direction ASAP Without some form of schema mount we will need to revert to the draft -01 ridge structure Netmod -- Feb 22, 20116