SlideShare a Scribd company logo
1 of 21
A 30-minute Introduction to NETCONF and YANG

Carl Moberg <calle@tail-f.com>
twitter: @cmoberg
Last updated 2011-11-18
Document Introduction

• This is a live documentation that I use to present the state
  of NETCONF and YANG in various contexts
• I use it to inform and get conversation going, not to provide
  complete and final documentation of NETCONF and YANG
• I update this document roughly quarterly, mostly with
  regards to industry support and working group
  timelines, check back or get in touch!




                                                                  2
Some Background

• NETCONF is an IETF configuration management protocol
  and YANG is its data modeling language
• In response to SNMP/SMI shortcomings for managing
  configuration e.g.:
   – Lack of support for simple things like backup-and-restore of element
     configuration
   – No concept of transactions (single- or multibox)
   – Many inherent limitations in SMI (e.g. label length)
• Lots of background text in RFC 3535 Overview of the 2002
  IAB Network Management Workshop



                                                                        3
NETCONF and YANG Brief Timeline


NETCONF                       YANG
• 2001                        • 2007
  IETF Meeting with poll of     YANG design team proposal
  SNMP SET usage
                              • Apr 2008
• June 2002
                                NETMOD WG established
  IAB Network Mgmt Workshop
                              • Oct 2010
• May 2003
                                YANG RFC 6020 published
  NETCONF WG established
• Dec 2006
  NETCONF core RFCs
  published



                                                            4
So What is NETCONF?

• NETCONF is an IETF network management protocol
  designed to support management of
  configuration, including:
  –   Distinction between configuration and state data
  –   Multiple configuration data stores (candidate, running, startup)
  –   Configuration change validations
  –   Configuration change transactions
  –   Selective data retrieval with filtering
  –   Streaming and playback of event notifications
  –   Extensible remote procedure call mechanism




                                                                         5
Ok, So What is YANG

• YANG is a data modeling language designed to write data
  models for the NETCONF protocol. It provides the following
  features:
   –   Human readable, and easy to learn representation
   –   Hierarchical configuration data models
   –   Reusable types and groupings (structured types)
   –   Extensibility through augmentation mechanisms
   –   Supports definition of operations (RPCs)
   –   Formal constraints for configuration validation
   –   Data modularity through modules and sub-modules
   –   Well defined versioning rules



                                                               6
NETCONF Layering Model


         Layer                NETCONF

        Content            Configuration Data


       Operations   <get> <get-config>   <notification>


                         <rpc>
          RPC
                      <rpc-reply>

        Transport
                         SSH, SSL, BEEP, etc
        Protocol


                                                          7
Basic NETCONF Operations

• Get configuration <get-config>
   – Retrieve all or part of a specified configuration from a named data store
• Get all information <get>
   – Retrieve running configuration and device state information
• Edit configuration <edit-config>
   – Loads all or part of a specified configuration to the specified target
     configuration
• Copy configuration <copy-config>
   – Create or replace an entire configuration datastore with the contents of
     another complete configuration datastore.
• Delete configuration <delete-config>
   – Delete a configuration datastore (not applicable to running)
• Lock and unlock <lock>, <unlock>
   – Short-lived lock and unlock of the configuration system of a device
• Close and kill session <close-session>, <kill-session>
   – Graceful (close) or forced (kill) termination of a NETCONF session
                                                                                8
YANG Feature Highlights

• YANG definitions directly map to NETCONF (XML) content
• YANG uses a compact C and Java-like syntax with
  readability is highest priority
• Data type system leverages work done for next-generation
  SNMP type system accommodating XML and XSD
  requirements
• YANG can be formally translated to DSDL
  (RelaxNG, Schematron and DSRL) as described in RFC
  6110
• There is also an informal translation to W3C XML Schema
  in the pyang tool

                                                             9
YANG Feature Highlights (cont’d)

• Organization
   – Leaf, leaf-list, container, lists, grouping, choice
• Data model structure
   – Module, submodule, augment, if-feature, when
• Constraints
   – Must, unique, min-elements, max-elements, mandatory
• Data types
   – Many built-in types, sub-typing, restrictions
• Reusable groupings
   – Grouping, uses



                                                           10
YANG Example

module acme-system {
    namespace "http://acme.example.com/system";
    prefix "acme”;

   organization "ACME Inc.”;
   contact "joe@acme.example.com";

   description
       "The module for entities implementing the ACME
        system.”;
   revision 2007-11-05 {
       description "Initial revision.”;
   }

   container system {
       leaf host-name {
           type string;
           description "Hostname for this system”;
       }

                                                        11
YANG Example (cont’d)


        list interface {
            key "name";
            description "List of interfaces in the system”;
            leaf name {
                type string;
            }
            leaf type {
                type string;
            }
            leaf mtu {
                type int32;
            }
        }
    }
}



                                                              12
Known NETCONF Vendor Implementations

  – Alaxala                                  – Juniper Networks
      • Ethernet switches                           • JUNOS 7.5 and later
  – BATM/Telco Systems                       – Nexor
      • T-Metro 7224                                • Messaging Gateways
  – BigBand                                  – RuggedCom
      • MSP2800                                     • RX5000 and MX5000
  – Brocade                                  – Sonus
      • NetIron XMR, CES, and CER                   • NBS5200 Session Border Controller
      • MLX Series                           – Taseon
      • VDX (Announced, not released)               • TN 320
  – Cisco                                    – Verivue
      • IOS 12.4(9)T and later                      • MDX 9020
      • IOS XE 2.1 and later
  – Edgeware
      • WTV-2X
  – Ericsson
      • SEA 20                           Entries in italics is new in this version of the
  – H3C                                  presentation
      • S9500E Series Routing Switches
                                         Please Note that this list is work in
  – Huawei
      • AR3200/2200 Enterprise Routers
                                         progress and feedback on accuracy and
                                         completeness is strongly encouraged
                                                                                            13
Available NETCONF Implementations

Commercial Products                 Open Source Projects
  – Applied Informatics
     • POCO NETCONF (server)           – Ncclient (client)
  – Centered Logic                     – NetconfX (client)
     • NetconfX (client)
                                       – Netconf4Android
  – Oracle/GoAhead
     • NETCONF MindAgent (server)        (client)
  – SNMP Research                      – netconf4j (client)
     • EPIC NETCONF (server)
                                       – netopeer (client/server)
  – Tail-f Systems
     • ConfD (server)                  – YencaP (client/server)
     • NCS (client)
                                       – Yuma (client/server)
  – Velankani
     • NOCVue ConfigMan
                                    Please Note that this list is work in
  – WebNMS
                                    progress and feedback on accuracy and
     • WebNMS Framework (client)    completeness is strongly encouraged
                                                                            14
Available YANG Implementations

• Commercial Products       • Open Source Projects
  –   MG Soft Corporation      –   jYang
  –   Oracle/GoAhead           –   libsmi
  –   SNMP Research            –   Pyang
  –   Tail-f Systems           –   yang-mode for Emacs
                               –   Yuma




                            Please Note that this list is work in
                            progress and feedback on accuracy and
                            completeness is strongly encouraged
                                                                    15
Standards Organizations Activities

• IETF

                                               – YANG models for Service
  – NETCONF working group                        OAM PM and FM
    focusing on:                               – To be published
      • Access Control
      • System Notifications
  – NETMOD (YANG) working
    group currently focusing on:               – YANG module for CCAP: next
      • Interfaces, routing and system           generation cable head-end systems
        data modules                           – Part of the Converged Cable
      • SMIv2-to-YANG translation                Access Platform Support
  – Always updated:                              System Interface Specification
      • http://tools.ietf.org/wg/netconf/
      • http://tools.ietf.org/wg/netconf/


                                            Please Note that this list is work in
                                            progress and feedback on accuracy and
                                            completeness is strongly encouraged
                                                                                    16
Further Reading

• IETF NETMOD and NETCONF WG pages:
   – http://trac.tools.ietf.org/wg/netconf/trac/wiki
   – http://trac.tools.ietf.org/wg/netmod/trac/wiki
• NETCONF Central
   – http://www.netconfcentral.org/
• YANG Central
   – http://www.yang-central.org/twiki/bin/view/Main/WebHome
• Instant YANG – an Introduction
   – http://www.tail-f.com/instant-yang-primer
• The NETCONF and YANG Users LinkedIn Group
   – http://www.linkedin.com/groups/NETCONF-YANG-Users-3301774


                                                                 17
18
Backup Slides




                19
Why not use XSD?

• XSD defines the syntax of XML instance documents,
• YANG defines the semantics of a configuration data model
  and the syntax of XML

• For more in-depth reading:
   – Why we need a NETCONF-Specific Modeling Language (draft-
     lengyel-why-yang-00.txt)
   – Comparing Approaches to NETCONF Modeling (CANMOD) BOF
     (http://tools.ietf.org/agenda/71/canmod.html)




                                                                20
A Layered Comparison

                  SNMP   NETCONF   SOAP
Data models       MIBs   Modules

Data Modeling     SMI     YANG
Language
Management        SNMP   NETCONF
Operations
RPC Protocol      BER      XML     XML

Transport Stack   UDP      SSH      SSL
                          BEEP     HTTP
                          SOAP     TCP
                           TLS


                                          21

More Related Content

What's hot

Module 1: ConfD Technical Introduction
Module 1: ConfD Technical IntroductionModule 1: ConfD Technical Introduction
Module 1: ConfD Technical IntroductionTail-f Systems
 
netconf, restconf, grpc_basic
netconf, restconf, grpc_basicnetconf, restconf, grpc_basic
netconf, restconf, grpc_basicGyewan An
 
NETCONF Call Home
NETCONF Call Home NETCONF Call Home
NETCONF Call Home ADVA
 
NFV for beginners
NFV for beginnersNFV for beginners
NFV for beginnersDave Neary
 
OpenFlow Switch Management using NETCONF and YANG
OpenFlow Switch Management using NETCONF and YANGOpenFlow Switch Management using NETCONF and YANG
OpenFlow Switch Management using NETCONF and YANGTail-f Systems
 
Cisco Live! :: Carrier Ethernet 2.0 :: BRKSPG-2720 | Las Vegas July/2016
Cisco Live! :: Carrier Ethernet 2.0 :: BRKSPG-2720 | Las Vegas July/2016Cisco Live! :: Carrier Ethernet 2.0 :: BRKSPG-2720 | Las Vegas July/2016
Cisco Live! :: Carrier Ethernet 2.0 :: BRKSPG-2720 | Las Vegas July/2016Bruno Teixeira
 
Ont, olt and mdu in gpon technology
Ont, olt and mdu in gpon technologyOnt, olt and mdu in gpon technology
Ont, olt and mdu in gpon technologyHuanetwork
 
Demystifying EVPN in the data center: Part 1 in 2 episode series
Demystifying EVPN in the data center: Part 1 in 2 episode seriesDemystifying EVPN in the data center: Part 1 in 2 episode series
Demystifying EVPN in the data center: Part 1 in 2 episode seriesCumulus Networks
 
Juniper Networks Router Architecture
Juniper Networks Router ArchitectureJuniper Networks Router Architecture
Juniper Networks Router Architecturelawuah
 
Advanced: 5G Service Based Architecture (SBA)
Advanced: 5G Service Based Architecture (SBA)Advanced: 5G Service Based Architecture (SBA)
Advanced: 5G Service Based Architecture (SBA)3G4G
 
Cilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPCilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPThomas Graf
 
Segment Routing: A Tutorial
Segment Routing: A TutorialSegment Routing: A Tutorial
Segment Routing: A TutorialAPNIC
 
3GPP 5G Control Plane Service Based Architecture
3GPP 5G Control Plane Service Based Architecture3GPP 5G Control Plane Service Based Architecture
3GPP 5G Control Plane Service Based ArchitectureSridhar Bhaskaran
 
5G Network Slicing Using Mininet
5G Network Slicing Using Mininet5G Network Slicing Using Mininet
5G Network Slicing Using MininetMohammed Abuibaid
 
MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)JuHwan Lee
 

What's hot (20)

Module 1: ConfD Technical Introduction
Module 1: ConfD Technical IntroductionModule 1: ConfD Technical Introduction
Module 1: ConfD Technical Introduction
 
netconf, restconf, grpc_basic
netconf, restconf, grpc_basicnetconf, restconf, grpc_basic
netconf, restconf, grpc_basic
 
NETCONF Call Home
NETCONF Call Home NETCONF Call Home
NETCONF Call Home
 
NFV for beginners
NFV for beginnersNFV for beginners
NFV for beginners
 
OpenFlow Switch Management using NETCONF and YANG
OpenFlow Switch Management using NETCONF and YANGOpenFlow Switch Management using NETCONF and YANG
OpenFlow Switch Management using NETCONF and YANG
 
Learning netconf yang from scratch
Learning netconf yang from scratchLearning netconf yang from scratch
Learning netconf yang from scratch
 
Cisco Live! :: Carrier Ethernet 2.0 :: BRKSPG-2720 | Las Vegas July/2016
Cisco Live! :: Carrier Ethernet 2.0 :: BRKSPG-2720 | Las Vegas July/2016Cisco Live! :: Carrier Ethernet 2.0 :: BRKSPG-2720 | Las Vegas July/2016
Cisco Live! :: Carrier Ethernet 2.0 :: BRKSPG-2720 | Las Vegas July/2016
 
Ont, olt and mdu in gpon technology
Ont, olt and mdu in gpon technologyOnt, olt and mdu in gpon technology
Ont, olt and mdu in gpon technology
 
Demystifying EVPN in the data center: Part 1 in 2 episode series
Demystifying EVPN in the data center: Part 1 in 2 episode seriesDemystifying EVPN in the data center: Part 1 in 2 episode series
Demystifying EVPN in the data center: Part 1 in 2 episode series
 
Juniper Networks Router Architecture
Juniper Networks Router ArchitectureJuniper Networks Router Architecture
Juniper Networks Router Architecture
 
Advanced: 5G Service Based Architecture (SBA)
Advanced: 5G Service Based Architecture (SBA)Advanced: 5G Service Based Architecture (SBA)
Advanced: 5G Service Based Architecture (SBA)
 
5G Network Slicing
5G Network Slicing5G Network Slicing
5G Network Slicing
 
Cilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDPCilium - Fast IPv6 Container Networking with BPF and XDP
Cilium - Fast IPv6 Container Networking with BPF and XDP
 
Segment Routing: A Tutorial
Segment Routing: A TutorialSegment Routing: A Tutorial
Segment Routing: A Tutorial
 
3GPP 5G Control Plane Service Based Architecture
3GPP 5G Control Plane Service Based Architecture3GPP 5G Control Plane Service Based Architecture
3GPP 5G Control Plane Service Based Architecture
 
5G Network Slicing Using Mininet
5G Network Slicing Using Mininet5G Network Slicing Using Mininet
5G Network Slicing Using Mininet
 
MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)
 
Mpls L3_vpn
Mpls L3_vpnMpls L3_vpn
Mpls L3_vpn
 
NFV Tutorial
NFV TutorialNFV Tutorial
NFV Tutorial
 
5g introduction_NR
5g introduction_NR5g introduction_NR
5g introduction_NR
 

Similar to A 30-minute Introduction to NETCONF and YANG

Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANGTail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANGTail-f Systems
 
Data models-and-automation-jp
Data models-and-automation-jpData models-and-automation-jp
Data models-and-automation-jpMiya Kohno
 
5G core use cases in CORE NetworkSBI.pptx
5G core use cases in CORE NetworkSBI.pptx5G core use cases in CORE NetworkSBI.pptx
5G core use cases in CORE NetworkSBI.pptxlakshmianthony80
 
OpenStack Infrastructure at any Scale - Simple is BEST!? - - OpenStack最新情報セミ...
OpenStack Infrastructure at any Scale - Simple is BEST!? -  - OpenStack最新情報セミ...OpenStack Infrastructure at any Scale - Simple is BEST!? -  - OpenStack最新情報セミ...
OpenStack Infrastructure at any Scale - Simple is BEST!? - - OpenStack最新情報セミ...VirtualTech Japan Inc.
 
Getting started with YANG
Getting started with YANGGetting started with YANG
Getting started with YANGCoreStack
 
DEVNET-1152 OpenDaylight YANG Model Overview and Tools
DEVNET-1152	OpenDaylight YANG Model Overview and ToolsDEVNET-1152	OpenDaylight YANG Model Overview and Tools
DEVNET-1152 OpenDaylight YANG Model Overview and ToolsCisco DevNet
 
PLNOG14: Service orchestration in provider network, Tail-f - Przemysław Borek
PLNOG14: Service orchestration in provider network, Tail-f - Przemysław BorekPLNOG14: Service orchestration in provider network, Tail-f - Przemysław Borek
PLNOG14: Service orchestration in provider network, Tail-f - Przemysław BorekPROIDEA
 
SDN/NFV: Service Chaining
SDN/NFV: Service Chaining SDN/NFV: Service Chaining
SDN/NFV: Service Chaining Odinot Stanislas
 
The hague rina-workshop-intro-eduard
The hague rina-workshop-intro-eduardThe hague rina-workshop-intro-eduard
The hague rina-workshop-intro-eduardICT PRISTINE
 
Stratum: Next-Gen SDN (beyond OpenFlow)
Stratum: Next-Gen SDN (beyond OpenFlow)Stratum: Next-Gen SDN (beyond OpenFlow)
Stratum: Next-Gen SDN (beyond OpenFlow)PLVision
 
The Modern Telco Network: Defining The Telco Cloud
The Modern Telco Network: Defining The Telco CloudThe Modern Telco Network: Defining The Telco Cloud
The Modern Telco Network: Defining The Telco CloudMarco Rodrigues
 
Programmability and Automation in Data Center Networks: A talk on Hot Air Bal...
Programmability and Automation in Data Center Networks: A talk on Hot Air Bal...Programmability and Automation in Data Center Networks: A talk on Hot Air Bal...
Programmability and Automation in Data Center Networks: A talk on Hot Air Bal...Joel W. King
 
Introduction to YANG data models and their use in OpenDaylight: an overview
Introduction to YANG data models and their use in OpenDaylight: an overviewIntroduction to YANG data models and their use in OpenDaylight: an overview
Introduction to YANG data models and their use in OpenDaylight: an overviewCisco DevNet
 
SCAP and NETCONF
SCAP and NETCONFSCAP and NETCONF
SCAP and NETCONFc3i
 
Cisco's Open Device Programmability Strategy: Open Discussion
Cisco's Open Device Programmability Strategy: Open DiscussionCisco's Open Device Programmability Strategy: Open Discussion
Cisco's Open Device Programmability Strategy: Open DiscussionCisco DevNet
 
Cisco Connect Toronto 2018 model-driven programmability for cisco ios xr-v1
Cisco Connect Toronto 2018   model-driven programmability for cisco ios xr-v1Cisco Connect Toronto 2018   model-driven programmability for cisco ios xr-v1
Cisco Connect Toronto 2018 model-driven programmability for cisco ios xr-v1Cisco Canada
 

Similar to A 30-minute Introduction to NETCONF and YANG (20)

Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANGTail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
 
SDN and metrics from the SDOs
SDN and metrics from the SDOsSDN and metrics from the SDOs
SDN and metrics from the SDOs
 
Data models-and-automation-jp
Data models-and-automation-jpData models-and-automation-jp
Data models-and-automation-jp
 
5G core use cases in CORE NetworkSBI.pptx
5G core use cases in CORE NetworkSBI.pptx5G core use cases in CORE NetworkSBI.pptx
5G core use cases in CORE NetworkSBI.pptx
 
OpenStack Infrastructure at any Scale - Simple is BEST!? - - OpenStack最新情報セミ...
OpenStack Infrastructure at any Scale - Simple is BEST!? -  - OpenStack最新情報セミ...OpenStack Infrastructure at any Scale - Simple is BEST!? -  - OpenStack最新情報セミ...
OpenStack Infrastructure at any Scale - Simple is BEST!? - - OpenStack最新情報セミ...
 
Getting started with YANG
Getting started with YANGGetting started with YANG
Getting started with YANG
 
DEVNET-1152 OpenDaylight YANG Model Overview and Tools
DEVNET-1152	OpenDaylight YANG Model Overview and ToolsDEVNET-1152	OpenDaylight YANG Model Overview and Tools
DEVNET-1152 OpenDaylight YANG Model Overview and Tools
 
PLNOG14: Service orchestration in provider network, Tail-f - Przemysław Borek
PLNOG14: Service orchestration in provider network, Tail-f - Przemysław BorekPLNOG14: Service orchestration in provider network, Tail-f - Przemysław Borek
PLNOG14: Service orchestration in provider network, Tail-f - Przemysław Borek
 
SDN/NFV: Service Chaining
SDN/NFV: Service Chaining SDN/NFV: Service Chaining
SDN/NFV: Service Chaining
 
The hague rina-workshop-intro-eduard
The hague rina-workshop-intro-eduardThe hague rina-workshop-intro-eduard
The hague rina-workshop-intro-eduard
 
Mina2
Mina2Mina2
Mina2
 
YANG (哪)
YANG (哪)YANG (哪)
YANG (哪)
 
Stratum: Next-Gen SDN (beyond OpenFlow)
Stratum: Next-Gen SDN (beyond OpenFlow)Stratum: Next-Gen SDN (beyond OpenFlow)
Stratum: Next-Gen SDN (beyond OpenFlow)
 
The Modern Telco Network: Defining The Telco Cloud
The Modern Telco Network: Defining The Telco CloudThe Modern Telco Network: Defining The Telco Cloud
The Modern Telco Network: Defining The Telco Cloud
 
Programmability and Automation in Data Center Networks: A talk on Hot Air Bal...
Programmability and Automation in Data Center Networks: A talk on Hot Air Bal...Programmability and Automation in Data Center Networks: A talk on Hot Air Bal...
Programmability and Automation in Data Center Networks: A talk on Hot Air Bal...
 
Introduction to YANG data models and their use in OpenDaylight: an overview
Introduction to YANG data models and their use in OpenDaylight: an overviewIntroduction to YANG data models and their use in OpenDaylight: an overview
Introduction to YANG data models and their use in OpenDaylight: an overview
 
SCAP and NETCONF
SCAP and NETCONFSCAP and NETCONF
SCAP and NETCONF
 
State of the OpenDaylight Union
State of the OpenDaylight UnionState of the OpenDaylight Union
State of the OpenDaylight Union
 
Cisco's Open Device Programmability Strategy: Open Discussion
Cisco's Open Device Programmability Strategy: Open DiscussionCisco's Open Device Programmability Strategy: Open Discussion
Cisco's Open Device Programmability Strategy: Open Discussion
 
Cisco Connect Toronto 2018 model-driven programmability for cisco ios xr-v1
Cisco Connect Toronto 2018   model-driven programmability for cisco ios xr-v1Cisco Connect Toronto 2018   model-driven programmability for cisco ios xr-v1
Cisco Connect Toronto 2018 model-driven programmability for cisco ios xr-v1
 

Recently uploaded

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 

Recently uploaded (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 

A 30-minute Introduction to NETCONF and YANG

  • 1. A 30-minute Introduction to NETCONF and YANG Carl Moberg <calle@tail-f.com> twitter: @cmoberg Last updated 2011-11-18
  • 2. Document Introduction • This is a live documentation that I use to present the state of NETCONF and YANG in various contexts • I use it to inform and get conversation going, not to provide complete and final documentation of NETCONF and YANG • I update this document roughly quarterly, mostly with regards to industry support and working group timelines, check back or get in touch! 2
  • 3. Some Background • NETCONF is an IETF configuration management protocol and YANG is its data modeling language • In response to SNMP/SMI shortcomings for managing configuration e.g.: – Lack of support for simple things like backup-and-restore of element configuration – No concept of transactions (single- or multibox) – Many inherent limitations in SMI (e.g. label length) • Lots of background text in RFC 3535 Overview of the 2002 IAB Network Management Workshop 3
  • 4. NETCONF and YANG Brief Timeline NETCONF YANG • 2001 • 2007 IETF Meeting with poll of YANG design team proposal SNMP SET usage • Apr 2008 • June 2002 NETMOD WG established IAB Network Mgmt Workshop • Oct 2010 • May 2003 YANG RFC 6020 published NETCONF WG established • Dec 2006 NETCONF core RFCs published 4
  • 5. So What is NETCONF? • NETCONF is an IETF network management protocol designed to support management of configuration, including: – Distinction between configuration and state data – Multiple configuration data stores (candidate, running, startup) – Configuration change validations – Configuration change transactions – Selective data retrieval with filtering – Streaming and playback of event notifications – Extensible remote procedure call mechanism 5
  • 6. Ok, So What is YANG • YANG is a data modeling language designed to write data models for the NETCONF protocol. It provides the following features: – Human readable, and easy to learn representation – Hierarchical configuration data models – Reusable types and groupings (structured types) – Extensibility through augmentation mechanisms – Supports definition of operations (RPCs) – Formal constraints for configuration validation – Data modularity through modules and sub-modules – Well defined versioning rules 6
  • 7. NETCONF Layering Model Layer NETCONF Content Configuration Data Operations <get> <get-config> <notification> <rpc> RPC <rpc-reply> Transport SSH, SSL, BEEP, etc Protocol 7
  • 8. Basic NETCONF Operations • Get configuration <get-config> – Retrieve all or part of a specified configuration from a named data store • Get all information <get> – Retrieve running configuration and device state information • Edit configuration <edit-config> – Loads all or part of a specified configuration to the specified target configuration • Copy configuration <copy-config> – Create or replace an entire configuration datastore with the contents of another complete configuration datastore. • Delete configuration <delete-config> – Delete a configuration datastore (not applicable to running) • Lock and unlock <lock>, <unlock> – Short-lived lock and unlock of the configuration system of a device • Close and kill session <close-session>, <kill-session> – Graceful (close) or forced (kill) termination of a NETCONF session 8
  • 9. YANG Feature Highlights • YANG definitions directly map to NETCONF (XML) content • YANG uses a compact C and Java-like syntax with readability is highest priority • Data type system leverages work done for next-generation SNMP type system accommodating XML and XSD requirements • YANG can be formally translated to DSDL (RelaxNG, Schematron and DSRL) as described in RFC 6110 • There is also an informal translation to W3C XML Schema in the pyang tool 9
  • 10. YANG Feature Highlights (cont’d) • Organization – Leaf, leaf-list, container, lists, grouping, choice • Data model structure – Module, submodule, augment, if-feature, when • Constraints – Must, unique, min-elements, max-elements, mandatory • Data types – Many built-in types, sub-typing, restrictions • Reusable groupings – Grouping, uses 10
  • 11. YANG Example module acme-system { namespace "http://acme.example.com/system"; prefix "acme”; organization "ACME Inc.”; contact "joe@acme.example.com"; description "The module for entities implementing the ACME system.”; revision 2007-11-05 { description "Initial revision.”; } container system { leaf host-name { type string; description "Hostname for this system”; } 11
  • 12. YANG Example (cont’d) list interface { key "name"; description "List of interfaces in the system”; leaf name { type string; } leaf type { type string; } leaf mtu { type int32; } } } } 12
  • 13. Known NETCONF Vendor Implementations – Alaxala – Juniper Networks • Ethernet switches • JUNOS 7.5 and later – BATM/Telco Systems – Nexor • T-Metro 7224 • Messaging Gateways – BigBand – RuggedCom • MSP2800 • RX5000 and MX5000 – Brocade – Sonus • NetIron XMR, CES, and CER • NBS5200 Session Border Controller • MLX Series – Taseon • VDX (Announced, not released) • TN 320 – Cisco – Verivue • IOS 12.4(9)T and later • MDX 9020 • IOS XE 2.1 and later – Edgeware • WTV-2X – Ericsson • SEA 20 Entries in italics is new in this version of the – H3C presentation • S9500E Series Routing Switches Please Note that this list is work in – Huawei • AR3200/2200 Enterprise Routers progress and feedback on accuracy and completeness is strongly encouraged 13
  • 14. Available NETCONF Implementations Commercial Products Open Source Projects – Applied Informatics • POCO NETCONF (server) – Ncclient (client) – Centered Logic – NetconfX (client) • NetconfX (client) – Netconf4Android – Oracle/GoAhead • NETCONF MindAgent (server) (client) – SNMP Research – netconf4j (client) • EPIC NETCONF (server) – netopeer (client/server) – Tail-f Systems • ConfD (server) – YencaP (client/server) • NCS (client) – Yuma (client/server) – Velankani • NOCVue ConfigMan Please Note that this list is work in – WebNMS progress and feedback on accuracy and • WebNMS Framework (client) completeness is strongly encouraged 14
  • 15. Available YANG Implementations • Commercial Products • Open Source Projects – MG Soft Corporation – jYang – Oracle/GoAhead – libsmi – SNMP Research – Pyang – Tail-f Systems – yang-mode for Emacs – Yuma Please Note that this list is work in progress and feedback on accuracy and completeness is strongly encouraged 15
  • 16. Standards Organizations Activities • IETF – YANG models for Service – NETCONF working group OAM PM and FM focusing on: – To be published • Access Control • System Notifications – NETMOD (YANG) working group currently focusing on: – YANG module for CCAP: next • Interfaces, routing and system generation cable head-end systems data modules – Part of the Converged Cable • SMIv2-to-YANG translation Access Platform Support – Always updated: System Interface Specification • http://tools.ietf.org/wg/netconf/ • http://tools.ietf.org/wg/netconf/ Please Note that this list is work in progress and feedback on accuracy and completeness is strongly encouraged 16
  • 17. Further Reading • IETF NETMOD and NETCONF WG pages: – http://trac.tools.ietf.org/wg/netconf/trac/wiki – http://trac.tools.ietf.org/wg/netmod/trac/wiki • NETCONF Central – http://www.netconfcentral.org/ • YANG Central – http://www.yang-central.org/twiki/bin/view/Main/WebHome • Instant YANG – an Introduction – http://www.tail-f.com/instant-yang-primer • The NETCONF and YANG Users LinkedIn Group – http://www.linkedin.com/groups/NETCONF-YANG-Users-3301774 17
  • 18. 18
  • 20. Why not use XSD? • XSD defines the syntax of XML instance documents, • YANG defines the semantics of a configuration data model and the syntax of XML • For more in-depth reading: – Why we need a NETCONF-Specific Modeling Language (draft- lengyel-why-yang-00.txt) – Comparing Approaches to NETCONF Modeling (CANMOD) BOF (http://tools.ietf.org/agenda/71/canmod.html) 20
  • 21. A Layered Comparison SNMP NETCONF SOAP Data models MIBs Modules Data Modeling SMI YANG Language Management SNMP NETCONF Operations RPC Protocol BER XML XML Transport Stack UDP SSH SSL BEEP HTTP SOAP TCP TLS 21