draft-ietf-rtgwg-ni-model-03 Impact on LxVPN device models

Slides:



Advertisements
Similar presentations
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—5-1 Module Summary The VRF table is a virtual routing and forwarding instance separating sites.
Advertisements

L3vpn end-system draft Pedro Marques. Overview Defines a mechanism to associate an end- system virtual interface to an L3VPN. – Co-located forwarder:
L3VPN WG2014-Jul-221 Ingress Replication P-Tunnels in MVPN I ngress Replication (IR) is one of the MVPN P-tunnel technologies But there’s a lot of confusing.
VXLAN Nexus 9000 Module 6 – MP-BGP EVPN - Design
BGP L3VPN Virtual CE draft-fang-l3vpn-virtual-ce-01 Luyuan Fang Cisco John Evans Cisco David Ward Cisco Rex Fernando Cisco John Mullooly Cisco Ning So.
IETF 90 Toronto Yang Data Model for OSPF Protocol draft-yeung-netmod-ospf-01 and beyond Derek Yeung Derek Yeung Dean Bogdanovic
Members: Acee Lindem, Anees Shaikh, Christian Hopps, Dean Bogdanovic, Lou Berger, Qin Wu, Rob Shakir, Stephane Litkowski, Yan Gang Wiki:
IETF 92 Dallas, TX Yang Data Model for OSPF Protocol draft-ietf-ospf-yang-00 Yingzhen Qu Derek Yeung YingZhen Qu
YANG Data Model for IPv4-in-IPv6 Softwire draft-sun-softwire-yang November 2014 Q. Sun, H. Wang, Y. Cui, I. Farrer (presenter), M. Boucadair.
Network Device YANG Organizational Model draft-rtgyangdt-rtgwg-device-model-03 Authors: Acee Lindem, Christian Hopps, Dean Bogdanovic, Lou Berger (Ed.)
TRILL T RANSPARENT T RANSPORT OVER MPLS draft-muks-trill-transport-over-mpls-00 Mohammad Umair, Kingston Smiler, Donald Eastlake, Lucy Yong.
EVPN: Or how I learned to stop worrying and love the BGP Tom Dwyer, JNCIE-ENT #424 Clay Haynes, JNCIE-SEC # 69 JNCIE-ENT # 492.
Design Work of Tunnel Models
A use case for Schema Mount
L2VPN Yang Model IETF 93 Prague, CZ draft-shah-pals-mpls-l2vpn-yang-00
Multicast in BGP/MPLS VPN
YANG Data Model for RIP draft-liu-rtgwg-yang-rip-01
draft-ietf-teas-yang-te-topo-05
Connectionless OAM yang model
draft-litkowski-isis-yang-isis-cfg IETF 90 - Toronto
Virtual Subnet : A L3VPN-based Subnet Extension Solution
Routing Area Yang Architecture Design Team Update
Presenter: Jeffrey Zhang
IETF 97 Seoul, South Korea Yang Data Model for OSPF Protocol draft-ietf-ospf-yang-06 draft-ietf-ospf-sr-yang-00 Derek Yeung Derek Yeung
Multicast Information Model draft-zhang-mboned-multicast-info-model-00 Sandy. Zhang Linda Wang (Presenting) Mboned WG IETF 97#Seoul.
draft-ietf-teas-yang-te-topo-01
pim wg multicast YANG team
L2VPN/EVPN/L3VPN Yang IETF-96 Berlin.
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)
IETF 97 Seoul, South Korea Yang Data Model for OSPF Protocol draft-ietf-ospf-yang-06 draft-ietf-ospf-sr-yang-00 Derek Yeung Derek Yeung
TRILL MPLS-Based Ethernet VPN
draft-ietf-teas-yang-te-04
draft-ietf-teas-yang-te-topo-04
IGMP & MLD Snooping YANG Model
draft-ietf-pim-igmp-mld-yang-04
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-Push On-change Notification Capability
Extending MPLS/BGP VPNs to End-Systems
YANG Key-Chain Model IETF 97, Seoul
Interface extensions YANG & VLAN sub-interface YANG Status update
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.
RIFT YANG draft-zhang-rift-yang-00
YANG Mount draft-clemm-netmod-mount IETF 98 Chicago, 30 March 2017
YANG Data Models MPLS Base and Static LSPs draft-ietf-mpls-base-yang-04 draft-ietf-mpls-static-yang-04 Tarek.
Routing Area Yang Architecture Design Team Update
Post WG LC NMDA datastore architecture draft
OSPF WG Status IETF 98, Chicago
draft-liu-netmod-yang-schedule-02
EVPN a very short introduction
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
Routing Area Common YANG Data Types
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.
draft-ietf-teas-yang-te-topo-08
IS-IS VPLS for Data Center Network draft-xu-l2vpn-vpls-isis-02
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.
draft-ietf-teas-yang-l3-te-topo-02
QoS Yang Model Aseem Choudhary, Norm Strahle, Ing-Whar Chen,
LISP YANG model (-09 update)
RIFT YANG draft-zhang-rift-yang-01
Task 62 Scope – Config / Operational State
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.
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.
Interface extensions YANG & VLAN sub-interface YANG Status update
Presentation transcript:

draft-ietf-rtgwg-ni-model-03 Impact on LxVPN device models Lou Berger <lberger@labn.net> Christan Hopps <chopps@chopps.org> Acee Lindem <acee@cisco.com> Dean Bogdanovic <ivandean@gmail.com> Xufeng Liu <Xufeng_Liu@jabil.com> Repo: https://github.com/ietf-rtg-area-yang-arch-dt/meta-model 1 IETF 99

LNEs and NIs: Modeling Device Partitioning Network Device (Physical or Virtual) Logical Network Element Logical Network Element Managed =true Net Instance Net Instance Net Instance Net Instance Net Instance Net Instance Interfaces Interfaces LNE: Logical Network Element NI: Network Instance Focus of this discussion Separate management sub-domains Sub-domains can be managed independently and by a top level manager (managed=true) Commonly called logical system or router; or virtual switch, chassis, fabric, or device context Can be supported via multiple logical devices and VMs Where only limited top level management of subdomains is supported 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. IETF 99

Status Summary Drafts use YANG Schema Mount to support virtual/logical partitioning of router and switch resources draft-ietf-netmod-schema-mount-05 Each LNE/NI gets an independent data instance With a YANG module root, and separate instances of YANG modules Implementations decide what modules are included under a root Modules included under mount point may be different from modules at device’s top level Both drafts have been updated and are ready for LC Technical details were in flux due to Schema Mount open issues Issues now resolved, expected LC without significant technical changes IETF 99

Schema Mount Tree Representation Example +--mp vrf-root? +--ro rt:routing-state/ | ... +--ro rt:routing/ +--ro if:interfaces@ +--ro if:interfaces-state@ ... Schema Mount Additions mp for schema mount points / for a mounted module @ for a node made available via a schema mount parent reference Module (nodes/leaves/etc) marked ro when schema mount config leaf = false See draft-ietf-netmod-yang-tree-diagrams-01 IETF 99

draft-ietf-rtgwg-ni-model-03 NIs are used to model: Information within an instance, i.e. CE context information Using one of 3 well known mount points: VRFs, VSIs, VSI+VRFs Per instance, related information in the core/PE instance Using LxVPN technology-specific augmentations L3VPN examples: BGP MPLS L3VPN over MPLS, over tunnels L2VPN examples: VPLS, EVPN+MPLS, EVPN+VxLAN, … IETF 99

LxVPN Support NI Type Root Type For per VRF, PE/core information draft-ietf-rtgwg-ni-model-03: module: ietf-network-instance +--rw network-instances +--rw network-instance* [name] +--rw name string +--rw enabled? boolean +--rw description? string +--rw (ni-type)? +--rw (root-type)? +--:(vrf-root) | +--mp vrf-root? +--:(vsi-root) | +--mp vsi-root? +--:(vv-root) +--mp vv-root? NI Type For per VRF, PE/core information Root Type For VRF/VSI information in the CE/Vxx context IETF 99

NI Likely Impact on BESS There are three types of LxVPN information to model: Core/PE + not instance specific Goes in augmentation of a module present at top level e.g., bgp, interfaces, or even top of network instances Core/PE + is associated with a named NI Goes into augmentation of: ni-types (preferred) or other module and associated with bind-ni-name (ala interfaces) CE-Context Information, per VRF/VSI Goes in augmentation of a module present under vrf/vsi-root Do any any of these exist? Reminder: Implementations, not models, decide what gets mounted at top level and under each vrf/vsi root +--rw network-instances +--rw network-instance* [name] +--rw name string +--rw enabled? boolean +--rw description? string +--rw (ni-type)? | +--:(l3vpn) //augmentation | +--rw l3vpn:l3vpn | | ... +--rw (root-type)? +--:(vrf-root) +--mp vrf-root +--ro rt:routing-state/ | +--ro router-id? | +--ro control-plane-protocols | +--ro control-plane-protocol* | +--ro ospf:ospf/ | ... +--rw rt:routing/ | +--rw router-id? | +--rw control-plane-protocols | +--rw control-plane-protocol* | +--rw ospf:ospf/ | ... +--ro if:interfaces@ | ... +--ro if:interfaces-state@ IETF 99

Thank you! IETF 99

LxVPN Technology Specific Information Two type of PE/Core information: Per VRF/VSI instance information May differs based on LxVPN technology L2VPN – VPLS, VxLAN, EVPN, … L3VPN – MPLS, IP tunnels, … Supported via ni-types choice statement Empty in base model To be augmented with technology specific cases Information shared across NI instances Supported via augmentations to any top top-level module(s) E.g., BGP or even top of NI model Type-specific augmentation augment "/ni:network-instances/ni:network-instance/ni:ni-type" { case l3vpn { container l3vpn { ... } Composite Tree +--rw network-instances +--rw network-instance* [name] +--rw name string +--rw enabled? boolean +--rw description? string +--rw (ni-type)? | +--:(l3vpn) //augmentation | +--rw l3vpn:l3vpn | | ... // config data IETF 99

Per VRF/VSI (CE Context) Information Supported via standard top level modules under a per-instance root mount point Specific modules included under a mount point is an implementation choice Modules are typically based on L2 or L3 type and not (PE) VPN technology Three types of Nis have been identified VRFs for L3VPNs VSIs for L2VPNs VSI+VRF for L2+L3VPNs (bridge/routers) Schema mount defines the schema (i.e., module list) on a per mount point name basis So need named mount point per type module: ietf-network-instance +--rw network-instances +--rw network-instance* [name] +--rw name string +--rw enabled? boolean +--rw description? string +--rw (ni-type)? +--rw (root-type)? +--:(vrf-root) | +--mp vrf-root? +--:(vsi-root) | +--mp vsi-root? +--:(vv-root) +--mp vv-root? //one root required per NI IETF 99

VRF Mount Point Example: OSPF in VRF "ietf-yang-schema-mount:schema-mounts": { "mount-point": [ { "module": "ietf-network-instance", "name": "vrf-root", "use-schema": [ "name": "ni-schema", "parent-reference": [ "/*[namespace-uri() = 'urn:ietf:...:ietf-interfaces']" ] } ], "schema": [ "module": [ "name": "ietf-routing", "revision": "2016-11-04", "namespace": "urn:ietf:params:xml:ns:yang:ietf-routing", "conformance-type": "implement" }, "name": "ietf-ospf", "revision": "2017-03-12", "urn:ietf:params:xml:ns:yang:ietf-ospf", module: ietf-network-instance +--rw network-instances +--rw network-instance* [name] +--rw name string +--rw enabled? boolean +--rw description? string +--rw (ni-type)? +--rw (root-type)? +--:(vrf-root) +--mp vrf-root +--ro rt:routing-state/ | +--ro router-id? | +--ro control-plane-protocols | +--ro control-plane-protocol* | +--ro ospf:ospf/ | ... +--rw rt:routing/ | +--rw router-id? | +--rw control-plane-protocols | +--rw control-plane-protocol* | +--rw ospf:ospf/ | ... +--ro if:interfaces@ | ... +--ro if:interfaces-state@ IETF 99

draft-ietf-rtgwg-lne-model-03: LNE Impact on BESS and LxVPNs None really But LNEs are related to NIs as both are used to manage logical partitioning of device resources and sometimes confused LNEs ~= VM/VNF Sometimes called: logical system or router; virtual switch, chassis, or fabric NI = VRF or VSI (Virtual Switch Instance) IETF 99

LNE: Module Tree module: ietf-logical-network-element +--rw logical-network-elements +--rw logical-network-element* [name] +--rw name string +--rw managed? boolean +--rw description? string +--mp root augment /if:interfaces/if:interface: +--rw bind-lne-name? -> /logical-network-elements/logical-network-element/name notifications: +---n bind-lne-name-failed +--ro name -> /if:interfaces/interface/name +--ro bind-lne-name -> /if:interfaces/interface/lne:bind-lne-name +--ro error-info? string LNE Root Covers cases of asynchronous interface  NI bind failures IETF 99

LNE: Module Example module: ietf-logical-network-element +--rw logical-network-elements +--rw logical-network-element* [name] +--rw managed? boolean +--rw name string +--mp root ... Managed=true +--ro yanglib:modules-state/ | ... +--rw sys:system/ +--ro sys:system-state/ +--ro rt:routing-state/ | +--ro router-id? quad | +--ro control-plane-protocols | +--ro control-plane-protocol* [] | +--ro ospf:ospf/ | +--ro instance* [af] | ... +--rw rt:routing/ +--rw if:interfaces/ +--ro if:interfaces-state/ ... IETF 99