1 Peer Mount Eric Voit Alex Clemm 13-Nov-2014. 2 Four Drafts Requirements for Peer Mounting of YANG subtrees from Remote Datastores draft-voit-netmod-peer-mount-requirements-01.

Slides:



Advertisements
Similar presentations
G : DCM Signaling Mechanism Using GMPLS RSVP-TE ITU-T Workshop on IP-Optical, Chitose, Japan 7/11/2002 Dimitrios Pendarakis, Tellium, Inc. ITU-T.
Advertisements

November 2013 Jan Medved, Reinaldo Penno
Proposal: Model-Driven SAL for the OpenDaylight Controller
Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
January 2014 Thomas D. Nadeau
OpenDaylight: An Open Source SDN for Your OpenStack Cloud Stephan Baucke, Ericsson Kyle Mestery, Cisco Anees Shaikh, IBM Chris Wright,
Multi-Layer Switching Layers 1, 2, and 3. Cisco Hierarchical Model Access Layer –Workgroup –Access layer aggregation and L3/L4 services Distribution Layer.
Dynamic Routing Scalable Infrastructure Workshop, AfNOG2008.
IPv4 and IPv6 Mobility Support Using MPLS and MP-BGP draft-berzin-malis-mpls-mobility-00 Oleg Berzin, Andy Malis {oleg.berzin,
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
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.
Class 3: SDN Stack Theophilus Benson. Outline Background – Routing in ISP – Cloud Computing SDN application stack revisited Evolution of SDN – The end.
Layer 2: Redundancy and High Availability Part 1: General Overview on Assignment 1.
MIF API draft-ietf-mif-api-extension-05 Dapeng Liu.
(part 3).  Switches, also known as switching hubs, have become an increasingly important part of our networking today, because when working with hubs,
Extension to LDP-VPLS for Ethernet Broadcast and Multicast draft-delord-l2vpn-ldp-vpls-broadcast-exten-03 Presenter: Zhihua Liu, China Telecom IETF79,
1 Chapter Overview Creating Sites and Subnets Configuring Intersite Replication Troubleshooting Active Directory Replication.
SNMP ( Simple Network Management Protocol ) based Network Management.
Interoperability is Key to Accelerating SDN Adoption Neela Jacques Executive Director OpenDaylight Projectt.
1 A Common API for Transparent Hybrid Multicast (draft-waehlisch-sam-common-api-04) Matthias Wählisch, Thomas C. Schmidt Stig Venaas {waehlisch,
Draft-campbell-dime-load- considerations-01 IETF 92 DIME Working Group Meeting Dallas, Texas.
Model-based Programmable Networks
Overcast: Reliable Multicasting with an Overlay Network CS294 Paul Burstein 9/15/2003.
Status of Work Feb 2, What and how fits? (option 1) Network Manager Network Elements (routers, switches, etc) RESTCONF / NETCONF Service Management.
© 2014 Cisco - Cisco INTERNAL only – All Rights Reserved1 Requirements for Subscription to YANG Datastores draft-ietf-i2rs-pub-sub-requirements-01 NECONF.
March 12, 2008© Copyright 2008 John Buford SAM Overlay Protocol draft-buford-irtf-sam-overlay-protocol-01.txt John Buford, Avaya Labs Research IETF 71.
YANG in a Nutshell The YANG Gang IETF 71. YANG has... A reasonable self-contained specification A focus on readers and reviewers Text-based , patch,
Device Identification & Driver Management TSC Update January 8, 2015.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
1 YANG PUB-SUB Proposed project to Beryllium release of ODL Aug 6 th 2015 Alexander Clemm Ambika Prasad Tripathy Einar Nilsen-Nygaard Eric Voit Suryamani.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNP 1 v3.0 Module 1 Overview of Scalable Internetworks.
1 | © 2015 Infinera Open SDN in Metro P-OTS Networks Sten Nordell CTO Metro Business Group
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
Moving towards an IRS WG Charter Ross Callon IETF 85, Atlanta.
Subscribing to datastore push updates draft-netmod-clemm-datastore-push-00.txt Alexander Clemm, Alberto Gonzalez Prieto, Eric Voit.
HP Openview NNM: Scalability and Distribution. Reference  “HP Openview NNM: A Guide to Scalability and Distribution”,
Netconf Schema Query Mark Scott IETF 70 Vancouver December 2007
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.
Clustering in OpenDaylight
Notification + Yang-push Meeting #2 3 - May
Author: Maros Marsalek (Honeycomb PTL)
I2rs Requirements for NETCONF IETF 93. Requirement Documents
DECADE Requirements draft-gu-decade-reqs-05 Yingjie Gu, David A. Bryan, Y. Richard Yang, Richard Alimi IETF-78 Maastricht, DECADE Session.
Atrium Router Project Proposal Subhas Mondal, Manoj Nair, Subhash Singh.
1 Peer Mount Eric Voit Alexander Clemm 5-Nov-2015.
SIP wg Items Jonathan Rosenberg dynamicsoft Caller Preferences: Changes Discussion of Redirects –Previous draft only proxy –Nothing different for redirect.
Subscriptions for Event Notification + Yang-push IETF NETCONF WG Contributors Call 26 - May
1 Needing an extensible Mount syntax across Schema, Alias, & Peers IETF 95 Eric Voit, Alex Clemm April 4 th 2016.
SDN controllers App Network elements has two components: OpenFlow client, forwarding hardware with flow tables. The SDN controller must implement the network.
YANG Modelling and NETCONF Protocol Discussion
Multi-layer software defined networking in GÉANT
The SUPA Information Model
draft-ietf-teas-yang-te-topo-01
Chapter 18 MobileApp Design
Subscribing to YANG datastore push updates draft-netconf-yang-push-00 IETF #94 Yokohama A. Clemm A. Gonzalez Prieto
Subscribing to YANG datastore push updates draft-ietf-netconf-yang-push-02 NETMOD WG IETF #95 Buenos Aires 4-April-2015 Alexander Clemm Alberto Gonzalez.
draft-ietf-teas-yang-te-topo-04
Subscriptions for Event Notification + Yang-push
Factory default Setting draft-wu-netmod-factory-default-01
Stream Issues Alex, Ambika, Eric, Tim
YANG-Push and related drafts 1
Dynamic Routing and OSPF
NMDA Q & A draft-dsdt-nmda-guidelines &
YANG Mount draft-clemm-netmod-mount IETF 98 Chicago, 30 March 2017
Post WG LC NMDA datastore architecture draft
Evolution of the Subscription & Event Notification Drafts IETF #98 Chicago Eric Voit 28-Mar-2017 DRAFT Authors on at least 1 drafts Andy Bierman Alexander.
Subscription to Multiple Stream Originators
Task 62 Scope – Config / Operational State
Presentation transcript:

1 Peer Mount Eric Voit Alex Clemm 13-Nov-2014

2 Four Drafts Requirements for Peer Mounting of YANG subtrees from Remote Datastores draft-voit-netmod-peer-mount-requirements-01 (Requirements & Use Cases showing how/why Peer Mount.) Mounting YANG-Defined Information from Remote Datastores draft-clemm-netmod-mount-02 (Technology draft. Multiple implementations including OpenDaylight MD-SAL) Cloud SLA YANG Model incorporating Peer Mount Semantics draft-tripathy-cloud-sla-yang-model-00 (Example YANG model using Peer Mount syntax. Will show running Demo) Subscribing to datastore push updates draft-netmod-clemm-datastore-push-00 (Pub/Sub mechanism for YANG objects, applicable well beyond Peer Mount) Tomorrow

3 Requirements Draft Requirements for Peer Mounting of YANG subtrees from Remote Datastores draft-voit-netmod-peer-mount-requirements-01 E. Voit, A. Clemm, S. Mertens Example Use Case “Peer Mount” Basics Contents of Requirements Draft

4 Network Services delivered via a federated set of devices in a Cloud Cloud Cloud VM Location agnostic many-to-many policing SLA protections between tenants VM Network acts as a unit for targeted abstractions

5 Cloud SLA spanning a set of Network Elements. Dynamically adjust policers as traffic moves about the cloud Data Center 1 VM Data Center n VM Federated Counter Federated Counter Forward to DDoS Appliance if Bandwidth Threshold hit

6 Cloud Policer + DDoS Thresholding Device policers dynamically updated against Cloud SLA of 100Mb/s DDoS Scrubber inserted when Traffic Spikes over 600 Mb/s Threshold From 2 rate 3 color policer by Device, to “n” rate “m” actions for a Cloud Currently running on OpenDaylight

7 What is needed from a Solution Laser Focus on Application Developer Simplicity App developers want distributed database and convergence complexities hidden. And they certainly don’t want to learn and invoke protocols to get remote objects. Single Authoritative owner for an Object Applications don’t want to care which Network Element across a set of devices is the authoritative owner of a particular replicated object. Multiple controllers and overlapping domains is a reality. Apps still don’t care. Transparent Subscriptions and Caching Applications need timely access to remote information, which can necessitate the introduction cache infrastructure.

8 Network Abstractions already span Devices IETF has specified many Controllers. Industry is adding more. There are classes of applications which expose multi-device abstractions across overlapping sets of devices. Layered abstractions build on each other, they must interoperate and converge High Availability VRRP mLACP/ICCP Anycast-RP Topology Maintenance OSPF Designated Router BGP Route Reflection BGP LS Cloud Functionality Cloud Policer Traffic Redirection Example controllers devicedomain

9 Peer Mounting the Authoritative Copy Network Wide Data, Locally Addressable Excerpt of authoritative network-wide datastore assembled on each device Device type agnostic: peering of Controller & Network Element Intelligence Local & remote objects treated identically by users/apps Network Element Network Element Network Element Network Element Network Element Network Element Controller Datastore Authoritative copy of object Locally addressable copy of authoritative object a.k.a.: Peer Mount App

10 Peer Mounting the Authoritative Copy “Mount” is a Remote Object Binding Application requests object from local Datastore Target Data Node Mount request is sent to object owner On Demand: Subtree containing requested object is returned; object passed back to application Optional: Transparent caching mechanisms + Pub/Sub speeds performance as needed Periodic: Object update passed every ‘X’ seconds. Timeframes can be synchronized across devices On Change: Push Object when there us change on Mount Server Controller Datastore Controller Datastore Application Node B Mount Point Node A Transport (e.g., Netconf, HTTP, Multicast) Transport (e.g., Netconf, HTTP, Multicast) Node C object 1 object 2 (Mounted) Network Element / NFV Network Element / NFV Datastore Node C (Target Data Node) object 1 object 2 Node D Mount Server Network Element / NFV Network Element / NFV Datastore Node C (Target Data Node) object 1 object 2 Node D Mount Client Mount Server Underlying technologies have broad applicability and can be lightly coupled with Peer Mount Optional Caching Optional Pub/Sub

11 Auto-discovery of link, group, or area misconfigurations. Controller optional. Applications have visibility into one or more exposed local YANG abstractions Network. Element 2 Network. Element 2 Network. Element 1 Network. Element 1 Consistency Checker Datastore 1500 Datastore 1500 Datastore Change made here Datastore NE 1 Running Config Ethernet 1 Frame Size 1500 Frame Size NE 2 Running Config Ethernet 2 Frame Size NE 2 Running Config Ethernet 2 Ethernet 1 Ethernet 2 Jumbo Change notification seen here Remote running config mounted from here

12 Requirements Draft 1. Business Problem 2. Terminology 3.Solution Context 3.1. Peer Mount 3.2. Eventual Consistency and YANG Example Use Cases 4.1. Cloud Policer 4.2. DDoS Thresholding 4.3. Service Chain Classification, Load Balancing and Capacity Management 5. Requirements 5.1. Application Simplification 5.2. Caching Considerations Caching Overview Pub/Sub of Object Updates 5.3. Lifecycle of the Mount Topology Discovery and Creation of Mount Topology Restrictions on the Mount Topology 5.4. Mount Filter 5.5. Auto-Negotiation of Peer Mount Client QoS 5.6. Datastore Qualification 5.7. Local Mounting 5.8. Mount Cascades 5.9. Transport Security Considerations High Availability Reliability Alignment to late joining peers Liveliness Merging of datasets Distributed Mount Servers Configuration Assurance and Monitoring Mirrors existing implementations of Data Distribution Services (DDS) Mirrors existing implementations of Data Distribution Services (DDS) Blue – decent shape Yellow – Work in progress

13 Peer Mount Benefits Seen in current prototypes Application Robustness Distributed YANG object trees available to applications Intersecting domain abstractions Application Simplification Major code size reduction → data access only to local Datastore Transparent access to data independent of location Caching and polling becomes hidden infrastructure Performance Unsolicited & periodic object Pub/Sub with transparent caching Ability to cascade updates across multiple tiers of Mount Synchronization Avoid need for redundant models for local and remote information Receipt of unsolicited push of Authoritative object change Multiple Controller support Misconfiguration Types Eliminated Authoritative copy is explicitly known Mount & monitor the actual state of the network (not just one-time “ACK”). Controller Network Element Network Element Network Element Network Element

14 Peer Mount Technology Draft Mounting YANG-Defined Information from Remote Datastores draft-clemm-netmod-mount-02 A Clemm, J Medved, E Voit (Multiple implementations including OpenDaylight MD-SAL)

15 Purpose Allow YANG Datastores to reference information in remote datastores YANG Server (Netconf, RESTconf) allows its clients/applications to access data that is conceptually federated across a network Incorporate information from remote systems into consolidated view Visibility and validation of parameters with cross-device dependencies Location transparency* *Caveats apply with regards to cross-network transactions. Focus on data retrieval. Why - draft-voit-netmod-peer-mount-requirements Ease for app developers/users Federated information from a single source, without need for additional brokering/middleware Avoid need for redundant models NMS Model Layering: “device”-level concepts must be reiterated at “network” layer where needed Heavy systems, slow TTM, less standards adoption as a result “It can be used also for controllers” Controller/device boundaries are blurry, less relevant

16 Datastore mount concept Mount client: Contains mount points at which to attach remote subtrees into data tree Requests whose scope contains remote data are proxied/forwarded to remote system Acts as application/client to the remote system Mount server Authoritative owner of the data May not be aware that mounting occurs (mount client is “just another application”) Notes Caching optimizations possible  draft-netmod-datastore-push-00 Circular mounting prohibited Focus on retrieval of remote data NETCONF-style network transactions per ACID results in issues We can keep configuration out of scope for now Notifications and RPCs currently outside scope

17 JAVA SAL APIs (Generated) Open Daylight - Model-Driven SAL Network Elements MD-SAL NETCONF … Network Topology Nodes Paths NE … SystemFlows Table … … Flow ConfigStats Tunnels … NE Config Stats … Table … Flow Applications Internal Plugin RESTCONF NETCONF NE RESTCONF Transformer/ Adapter Transformer/ Adapter NB REST API Platform Service Plugin JAVA SAL APIs (Generated) Network Service Plugin NB REST API BGP-LS PCEP OF x.y OfConfig / OVSDB NB API LinksEndPoints

18 Usage example rw controller-network +-- rw network-elements +-- rw network-element [element-id] +-- rw element-id +-- rw element-address | M interfaces... list network-element { key "element-id"; leaf element-id { type element-ID; } container element-address {... } mnt:mountpoint "interfaces" { mnt:target "./element-address"; mnt:subtree "/if:interfaces"; }... NE1.... fastethernet-1/0 ethernetCsmacd 1/ Instance information Module structure Mountpoint declaration YANG modules defines YANG mount extensions + data model for mountpoint management YANG extensions: Mountpoint: Defined under a containing data node (e.g. container, list) Target: References data node that identifies remote server Subtree: Defines root of remote subtree to be attached

19 Mountpoint management rw mount-server-mgmt +-- rw mountpoints | +-- rw mountpoint [mountpoint-id] | +-- rw mountpoint-id string | +-- rw mount-target | | +--: (IP) | | | +-- rw target-ip yang:ip-address | | +--: (URI) | | | +-- rw uri yang:uri | | +--: (host-name) | | | +-- rw hostname yang:host | | +-- (node-ID) | | | +-- rw node-info-ref mnt:subtree-ref | | +-- (other) | | +-- rw opaque-target-id string | +-- rw subtree-ref mnt:subtree-ref | +-- ro mountpoint-origin enumeration | +-- ro mount-status mnt:mount-status | +-- rw manual-mount? empty | +-- rw retry-timer? uint16 | +-- rw number-of-retries? uint8 +-- rw global-mount-policies +-- rw manual-mount? empty +-- rw retry-time? uint rw number-of-retries? uint8 RPCs for manual mount, unmount Mountpoints can be system-administered Applications&users are not exposed to this System administration can add bindings Update on-demand, periodic, on-change Not shown: Mount bindings - data update subscriptions Mount policies grouping

20 Summary of changes since -01 Caching considerations and mount bindings – tie-in with datastore push Usage guidelines - modeling best practices Editorial improvements throughout TBD issues: System administration – keep target as part of mountpoint declaration? Remove possibility for configuration? (currently usage discouraged/limited but still permitted)

21 Example Usage of Mount Cloud SLA YANG Model incorporating Peer Mount Semantics draft-tripathy-cloud-sla-yang-model-00 A Tripathy, E Voit, A Clemm “Peer Mount” Semantics used in a Model Worthy of Note Demo (Model in Action)

22 Derived (∑ of mounted device counters) Set Multi-device abstraction value Mount of Device info (extract RFC 7223) Get interface info from elsewhere Add a policy object, continually update YANG Model including Mount Semantics +--rw ietf-cloud-sla +--rw policies +--rw policy [policy-name] +--rw policy-name string +--rw policy-max-bw? uint64 +--ro network-aggregate-bw? uint64 +--rw nes +--rw ne [ne-id] +--rw ne-id string +--rw policing-policies | +--rw policed-bandwidth* [ifref] | +--rw ifref mounted-interface-ref | +--rw bandwidth? uint64 +--ro interfaces-state +--M interface-statistics

23 Worthy of Note Mounting RFC 7223 interface stats = more objects than desired Value of Mount Filter highlighted Network Element counters exposed under policy Read-only copy is effectively an alias (making application writing easier) Interface Ref enables adding centrally managed information with Mounted objects New objects can in turn be Mounted back to distributed devices Subscription to counters superior to continual requests Current standards don’t cover. One reason for Push draft.

24 Cloud Policer Demo Cloud Service on Federated Network Devices OpenDaylight MD-SAL Controller Cisco Asr9K Network Elements Peer Mounting of Network Element YANG counters by controller Peer Mounting of controller application derived Policer Rate by Network Elements Controller application does nothing but read and write from local YANG abstraction

25 Summary of First Three Drafts

26 Some Mailing List Q&A Question/AssertionAnswer How can this scale and converge?The Object Management Group has been standardizing a Data Distribution Service (DDS). It is very similar. Current revenue is ~$100M+ and growing.Object Management GroupstandardizingData Distribution Service (DDS) YANG is for devices onlyImplementation in OpenDaylight and elsewhere have multi-device abstractions. IETF has multi-device abstractions. If IETF doesn’t serve these needs, the technology will fork. Unnecessarily. It is true that WG in charge of Netconf+Netmod architecture is unclear. RFC6244 asserts a device boundary which has been surpassed by reality. We should get clarity for evolving charters. YANG should support ACID onlyEventual consistency is industry proven for classes of problems. This includes convergence between some abstract and granular policies. IETF doesn’t care about controllersDeclaring multi-device abstractions out-of-scope means that certain applications won’t be portable between controllers and Network Devices. In any case, the IETF has defined controllers for years. “Peer Mount” should be read only.Agree. Write is possible, but very hard. So let’s ignore it for now.

27 Recommended Actions 1. Netconf will be analyzing “Peer Mount” drafts in interim meetings. Work with Netconf and Ops AD to apportion WG ownership and charters appropriately. 2. Based on output of (1), explore netmod Charter change to include multi-device abstractions. (e.g., something like Peer-Mount)

28 End Day 1

Subscribing to datastore push updates draft-netmod-clemm-datastore-push-00.txt Alexander Clemm, Alberto Gonzalez Prieto, Eric Voit

Motivation Many applications require continuous updates to datastore contents – Mount clients (peer mount): caching of remote data – Service assurance: continuous monitoring – Big Data: analyze network state Periodic polling has limitations (known from SNMP) – Additional load on network and devices – Lack of robustness, dealing with missed polling cycles – Difficult calibration, synchronization of polling cycles across network (makes polled data difficult to compare) Current interactions with datastore are request/response based – RFC 6470 defines configuration change notifications – YANG datastores contain increasingly operational data

Solution Requirements (1/2) Provide push mechanism as alternative to polling Configuration and management of subscriptions – Create/Delete – Subscription scope Operational data Subtrees and filters – Subscription policy Periodic On change (with dampening) – Optional: subscription monitoring – Optional: suspend/resume

Solution Requirements (2/2) Negotiation capability – Resource limitations: not every subscription may be supported – Implementation limitations (on change may be difficult) – Negotiate update frequency, size, policy (on change vs periodic Tie-in with security – RFC 6536/NACM – receive updates only for authorized data Work in conjunction with Netconf/RESTconf/YANG framework – Leverage RFC 5277 notification capability – Possibility to decouple transport and subscriptions Allow for pub/sub, multicast transports at a later point, outside scope

Subscription Model module: ietf-datastore-push +--rw datastore-push-subscription +--rw stream string +--rw subscription-id subscription-identifier +--rw (filter)? | +--:(subtree) | | +--rw subtree-filter | +--:(xpath) | +--rw xpath-filter yang:xpath rw (notification-trigger) | +--:(periodic) | | +--rw period yang:timeticks | +--:(on-change) | +--rw (change-policy) | +--:(update-dampening) | | +--rw period yang:timeticks | +--:(delta-policy) | +--rw delta uint32 +--rw start-time? yang:date-and-time +--rw stop-time? yang:date-and-time (next revision) Selected discussion items RW vs RO and create method (edit vs. On-change subpolicies options or choices “on-change” feature Delta policy

Subscription Negotiation Leverage RFC 5277 Server may reject a subscription request – Implementation limitations (e.g. on-change) – Resource limitations (e.g. update size, frequency) Response to include “acceptable” parameter settings (no guarantee) Additional notifications to indicate if server cannot keep “subscription promise) Optional: client throttling of subscription via suspend/resume Selected discussion items vs edit- config Subscription throttling via suspend/resume

Push Data Stream and Transport Push-update notifications – Subscription correlator Ties update to a specific subscription – Data node with datastore update Per subscription Filtered per NACM rules Leverage element (per RFC 5277) Alternative transport mappings conceivable but outside scope

Conclusion There is a need for a mechanism for datastore push updates, and subscribing to such updates Drivers – Peer Mount – Service Assurance – Operational data increasingly part of YANG data models – Move beyond SNMP-style polling-based management Properties of the solution – Data model at its core  Netmod – Fits in with YANG/Netconf/REStconf framework – Addresses subscription, negotiation, transport – Addresses requirements, PoC exists Ask: Adopt as WG Document

Backup

38 Not Pub/Sub Pre-dates YANG Tied to Netconf, not to the YANG model. Want data to be distributed should be agnostic to transport protocol Different boxes could use different protocols under the covers No mechanisms for time synchronized delivery across domain Application developer simplicity Transparent caching: requires additional mechanisms to ensure single view across domain

39 Business Imperative Virtualization = explosion in Objects Evolving choices in abstraction Easy ButtonGUICLI API 50%+ of outages from mis-config Speed to activation too slow Mechanize logic in human brains Peering of Controller & Network Element Intelligence Peering of Controller & Network Element Intelligence