SlideShare a Scribd company logo
1 of 21
1©2015 Tail-f Systems all rights reservedFebruary 13, 2015
ConfD Technical Introduction
2©2015 Tail-f Systems all rights reservedFebruary 13, 2015
What is ConfD?
ConfD provides a data-model driven management plane framework which provides a
variety of standards-based northbound management interfaces for use in building
network elements:
Physical Network Devices
Virtual Network Devices
(VNF in NFV)
Network Appliances
etc.
3©2015 Tail-f Systems all rights reservedFebruary 13, 2015
How is ConfD different?
SNMP agent
CLI engine
NETCONF server
…
Protocol Focused Agents
Stove-pipe
Feature-lag
Just the protocol layer
Data-model driven
Any protocol
ConfD
All protocols
No feature lag
Core engine
4©2015 Tail-f Systems all rights reservedFebruary 13, 2015
ConfD Overview
Network
Element
NETCONF SNMP REST CLI Web
Database Data Provider API
Managed Object API
Management Agent API
OSS/BSS
MO MOMO
ConfD Core Engine
MO
External
DatabaseOperational
Data
MO
5©2015 Tail-f Systems all rights reservedFebruary 13, 2015
ConfD Overview
Network
Element
NETCONF SNMP REST CLI Web
CDB
Database
Data Provider API
CDB API
Management Agent API
OSS/BSS
App AppApp
ConfD Core Engine
App
External
DatabaseOperational
Data
App
Management Agent API
Auto-rendered management interfaces and data schema
YANG
Data Models
6©2015 Tail-f Systems all rights reservedFebruary 13, 2015
True Model-Driven
• Information models (UML, SID, …)
• Important for communication between domain experts
• Needs “mapping” to data-models
• Data Models
• Concrete
• Means something in reality
• Tail-f story
• Core-engine driven by data-models
• No stubs!
• Translators to information models, UML, SID, …
• You can execute with the data-model only
• CLI
• WebUI
• Database
• …
• YANG – RFC 6020
• IETF greybeards
• Concrete, precise, semantically rich
• Clarity – “anyone” can read
• Precision – self documenting
• Modular data models
• Extensible language
• Code generation
7©2015 Tail-f Systems all rights reservedFebruary 13, 2015
YANG Example
module sys {
namespace "urn:sys";
prefix sys;
import tailf-common {
prefix tailf;
}
typedef interface-name {
type string {
length "min .. 30";
pattern "[A-Za-z][^/:.]*";
}
}
8©2015 Tail-f Systems all rights reservedFebruary 13, 2015
YANG Example (cont.)
container sys {
container numbers {
leaf odd {
type int32;
default 1;
must "(. mod 2) = 1" {
error-message "can only be an odd number";
tailf:dependency ".";
}
} }
list ifc {
key name;
max-elements 1024;
leaf name {
type interface-name;
}
leaf enabled {
type boolean;
default true;
}
9©2015 Tail-f Systems all rights reservedFebruary 13, 2015
YANG Example (cont.)
list labels {
key string;
max-elements 16;
description
"A label is an alphanumeric string assigned to an
interface. Each interface can have many labels. The
purpose here is simply to show a must validation that
requires the labels to be unique for all interfaces.”;
leaf string {
type string {
length "1..31";
pattern "[a-zA-Z][a-zA-Z0-9_-]*";
}
must "not(/sys:sys/sys:ifc[name = current()])" {
error-message
"A label can not be the same as an interface name";
tailf:dependency "/sys/ifc/name";
}
must "count(/sys/ifc/labels[string = current()]) = 1" {
error-message "All labels must be unique";
tailf:dependency ".";
}
10©2015 Tail-f Systems all rights reservedFebruary 13, 2015
ConfD Overview
ConfD
NETCONF SNMP REST CLI Web
ConfD Core Engine
CDB
Database
Transaction Management
Session Management / Authentication
Role-based Access Control
Audit Trailing
Redundancy / Replication
Validation (syntactic and semantic)
Rollback Management
Upgrades and Downgrades
Data Provider API CDB API
Management Agent API
Operational
Data
Counters
Alarms
StatisticsMO
External
Database Operational
Data
MO
Validation
API
Authentication
API
Radius
PAM
TACACS
Others
Operational Data
Operational
Data API
App AppApp
11©2015 Tail-f Systems all rights reservedFebruary 13, 2015
ConfD Overview
API lib
App
IPC (via TCP Sockets)
Application Blades
Management Blade
= Unix/Linux process
NETCONF
ConfD
SNMP REST CLI WEB
API lib
App
API lib
App
API lib
App
API libraries available for: C, Erlang, Java, and Python (limited coverage)
12©2015 Tail-f Systems all rights reservedFebruary 13, 2015
High Availability
NETCONF
Management Blade
ConfD
Configuration
Datastore
SNMP
REST
CLI
Web
“Standby”
NETCONF
Management Blade
ConfD
Configuration
Datastore
SNMP
REST
CLI
Web
Data Replication
“Active”
Application
Blade
13©2015 Tail-f Systems all rights reservedFebruary 13, 2015
Integrated Database (CDB)
NETCONF SNMP REST CLI Web
CDB
Database
Data Provider API
CDB API
Management Agent API
App AppApp
ConfD Core Engine
App
External
DatabaseOperational
Data
App
• Hierarchical database
• ACID test compliant
• Atomicity, consistency, isolation, durability
• Fast, lightweight, fault-tolerant
• Compact binary XML format
• Memory resident with journal in persistent storage
• Schema automatically derived from YANG
• Supports 1:N data replication
• Supports automatic schema version
up/downgrades
• CDB can hold some or all data
• Configuration data and/or Operational data
• External database can be used in addition to or instead of
• Automatic loading of initial data
• Applications read data, then subscribe to relevant
configuration changes
• Subscription notifications with priority level
ordering
• Multiple datastores per NETCONF standards
• Startup, running, candidate, operational
14©2015 Tail-f Systems all rights reservedFebruary 13, 2015
NETCONF Interface
• IETF RFC 4741/6241
• Full implementation
• All mandatory and all optional capabilities
• RFC 4742/6242 NETCONF over SSH
• Streams XML over SSH
• Separates operational data
from configuration
• Distributed transactions
• RFC 5277 NETCONF notifications
• Support included for various IETF standardized
YANG data models
<get-config>
<edit-config>
<delete-config>
<lock>
<unlock>
<get>
<close-session>
<kill-session>
<commit>
<discard-changes>
:writeable-running
:candidate
:confirmed-commit
:rollback-on-error
:validate
:startup
:URL
:XPath
NETCONF
OPERATIONS
NETCONF
CAPABILITIES
NETCONF SNMP REST CLI Web
CDB
Database
Data Provider API
CDB API
Management Agent API
App AppApp
ConfD Core Engine
App
External
DatabaseOperational
Data
App
15©2015 Tail-f Systems all rights reservedFebruary 13, 2015
SNMP Agent
• SNMP machine interface
• Any combination of v1, v2c, v3
• Supports all operations
• Send SNMP notifications (traps)
• MIBs implemented by ConfD include:
• RFC-3411 (SNMP-FRAMEWORK-MIB)
• RFC-3414 (USM)
• RFC-3415 (VACM)
• RFC-3418 (SNMPv2-MIB)
• MIB to YANG translator
• YANG to MIB translator
NETCONF SNMP REST CLI Web
CDB
Database
Data Provider API
CDB API
Management Agent API
App AppApp
ConfD Core Engine
App
External
DatabaseOperational
Data
App
16©2015 Tail-f Systems all rights reservedFebruary 13, 2015
Command Line Interface (CLI)
• Auto rendering of three CLI styles:
• Cisco – XR style
• Cisco – legacy IOS style
• Juniper – JUNOS style
• Rich editing with tab-completion for
commands,
static elements and dynamic instances
• History, hints, help
• Extensible with custom/external
commands, wizards
• Typically runs over SSH
NETCONF SNMP REST CLI Web
CDB
Database
Data Provider API
CDB API
Management Agent API
App AppApp
ConfD Core Engine
App
External
DatabaseOperational
Data
App
17©2015 Tail-f Systems all rights reservedFebruary 13, 2015
Web
• JSON RPC API
• Access data
• Run transactions and rollbacks
• Do validation
• Execute actions
• Access data model schema information
• Customer choice of toolsets and
frameworks
• Preserve existing Web content
• Example of how to implement an auto-
rendered Web UI provided
• Supports HTTP and HTTPS
18©2015 Tail-f Systems all rights reservedFebruary 13, 2015
REST
• Relies on verbs of transport layer:
• HTTP 1.1
• GET : get resources
• Selectors : shallow, deep
• PUT : replace existing resource
• POST : create resource
• DELETE : delete resource
• PATCH (RFC5789) : modify existing resource
• HEAD, OPTIONS
• Stateless, client-server
• Hyperlinked, just like the web
• XML or JSON as data containers
• Links to available data-stores and operations
NETCONF SNMP REST CLI Web
CDB
Database
Data Provider API
CDB API
Management Agent API
App AppApp
ConfD Core Engine
App
External
DatabaseOperational
Data
App
$curl –u admin:admin –s http://localhost:8008/api
• /api/running
• /api/candidate
• /api/operations
• /api/operational
• /api/rollback
19©2015 Tail-f Systems all rights reservedFebruary 13, 2015
Why ConfD
Make your customer happy
Make your device
• Manageable
• Programmable
• Standards -compliant
Save time
• Render management interfaces
• Model-driven
• Iterative development
• NETCONF, CLI, SNMP, REST, Web
• Transactions and rollbacks
• Validations
• Configuration and monitoring
• No feature lag
• Core components
• Embedded database
• Domain-specific functions
• Rich APIs
• Well-tested, 70+ customers
20©2015 Tail-f Systems all rights reservedFebruary 13, 2015
21©2015 Tail-f Systems all rights reservedFebruary 13, 2015
Data ProviderAPI
A transaction can be viewed as a conceptual state machine
• Phases of a transaction correspond to states
• API transaction callback function invocations are state transitions
Start
Read
Prepare
Write
Validate
Abort Commit
init()
commit()
prepare()
write_start()
trans_lock()trans_unlock()
finish()
abort()
finish()
finish()
get_next()
get_elem()
finish()
finish()
set_elem()
create()
remove()
get_next()
get_elem()

More Related Content

What's hot

Module 3: NETCONF and YANG Concepts
Module 3: NETCONF and YANG ConceptsModule 3: NETCONF and YANG Concepts
Module 3: NETCONF and YANG ConceptsTail-f Systems
 
Tutorial: Using GoBGP as an IXP connecting router
Tutorial: Using GoBGP as an IXP connecting routerTutorial: Using GoBGP as an IXP connecting router
Tutorial: Using GoBGP as an IXP connecting routerShu Sugimoto
 
Fun with Network Interfaces
Fun with Network InterfacesFun with Network Interfaces
Fun with Network InterfacesKernel TLV
 
Building DataCenter networks with VXLAN BGP-EVPN
Building DataCenter networks with VXLAN BGP-EVPNBuilding DataCenter networks with VXLAN BGP-EVPN
Building DataCenter networks with VXLAN BGP-EVPNCisco Canada
 
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabNSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabCisco Canada
 
BGP Traffic Engineering with SDN Controller
BGP Traffic Engineering with SDN ControllerBGP Traffic Engineering with SDN Controller
BGP Traffic Engineering with SDN ControllerAPNIC
 
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124  | Las Vegas 2017Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124  | Las Vegas 2017
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017Bruno Teixeira
 
Vxlan control plane and routing
Vxlan control plane and routingVxlan control plane and routing
Vxlan control plane and routingWilfredzeng
 
Overview of Distributed Virtual Router (DVR) in Openstack/Neutron
Overview of Distributed Virtual Router (DVR) in Openstack/NeutronOverview of Distributed Virtual Router (DVR) in Openstack/Neutron
Overview of Distributed Virtual Router (DVR) in Openstack/Neutronvivekkonnect
 
Troubleshooting BGP Juniper Examples
Troubleshooting BGP Juniper ExamplesTroubleshooting BGP Juniper Examples
Troubleshooting BGP Juniper ExamplesSalachudin Emir
 
Vxlan deep dive session rev0.5 final
Vxlan deep dive session rev0.5   finalVxlan deep dive session rev0.5   final
Vxlan deep dive session rev0.5 finalKwonSun Bae
 
Segment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesSegment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesCisco Canada
 
netconf, restconf, grpc_basic
netconf, restconf, grpc_basicnetconf, restconf, grpc_basic
netconf, restconf, grpc_basicGyewan An
 
Segment Routing Lab
Segment Routing Lab Segment Routing Lab
Segment Routing Lab Cisco Canada
 
Faster packet processing in Linux: XDP
Faster packet processing in Linux: XDPFaster packet processing in Linux: XDP
Faster packet processing in Linux: XDPDaniel T. Lee
 
MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)JuHwan Lee
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelDivye Kapoor
 
rtpengine - Media Relaying and Beyond
rtpengine - Media Relaying and Beyondrtpengine - Media Relaying and Beyond
rtpengine - Media Relaying and BeyondAndreas Granig
 

What's hot (20)

Module 3: NETCONF and YANG Concepts
Module 3: NETCONF and YANG ConceptsModule 3: NETCONF and YANG Concepts
Module 3: NETCONF and YANG Concepts
 
Tutorial: Using GoBGP as an IXP connecting router
Tutorial: Using GoBGP as an IXP connecting routerTutorial: Using GoBGP as an IXP connecting router
Tutorial: Using GoBGP as an IXP connecting router
 
Fun with Network Interfaces
Fun with Network InterfacesFun with Network Interfaces
Fun with Network Interfaces
 
Building DataCenter networks with VXLAN BGP-EVPN
Building DataCenter networks with VXLAN BGP-EVPNBuilding DataCenter networks with VXLAN BGP-EVPN
Building DataCenter networks with VXLAN BGP-EVPN
 
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabNSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
 
BGP Traffic Engineering with SDN Controller
BGP Traffic Engineering with SDN ControllerBGP Traffic Engineering with SDN Controller
BGP Traffic Engineering with SDN Controller
 
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124  | Las Vegas 2017Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124  | Las Vegas 2017
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017
 
Vxlan control plane and routing
Vxlan control plane and routingVxlan control plane and routing
Vxlan control plane and routing
 
Overview of Distributed Virtual Router (DVR) in Openstack/Neutron
Overview of Distributed Virtual Router (DVR) in Openstack/NeutronOverview of Distributed Virtual Router (DVR) in Openstack/Neutron
Overview of Distributed Virtual Router (DVR) in Openstack/Neutron
 
Troubleshooting BGP Juniper Examples
Troubleshooting BGP Juniper ExamplesTroubleshooting BGP Juniper Examples
Troubleshooting BGP Juniper Examples
 
Vxlan deep dive session rev0.5 final
Vxlan deep dive session rev0.5   finalVxlan deep dive session rev0.5   final
Vxlan deep dive session rev0.5 final
 
EVPN Introduction
EVPN IntroductionEVPN Introduction
EVPN Introduction
 
Segment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesSegment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use Cases
 
netconf, restconf, grpc_basic
netconf, restconf, grpc_basicnetconf, restconf, grpc_basic
netconf, restconf, grpc_basic
 
Segment Routing Lab
Segment Routing Lab Segment Routing Lab
Segment Routing Lab
 
Faster packet processing in Linux: XDP
Faster packet processing in Linux: XDPFaster packet processing in Linux: XDP
Faster packet processing in Linux: XDP
 
MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux Kernel
 
NFV & Openstack
NFV & OpenstackNFV & Openstack
NFV & Openstack
 
rtpengine - Media Relaying and Beyond
rtpengine - Media Relaying and Beyondrtpengine - Media Relaying and Beyond
rtpengine - Media Relaying and Beyond
 

Viewers also liked

Open Network OS Overview as of 2015/10/16
Open Network OS Overview as of 2015/10/16Open Network OS Overview as of 2015/10/16
Open Network OS Overview as of 2015/10/16Kentaro Ebisawa
 
Module 10: CDB Subscribers
Module 10: CDB SubscribersModule 10: CDB Subscribers
Module 10: CDB SubscribersTail-f Systems
 
Module 9: CDB Technical Intro
 Module 9: CDB Technical Intro Module 9: CDB Technical Intro
Module 9: CDB Technical IntroTail-f Systems
 
Dynamic Service Chaining
Dynamic Service Chaining Dynamic Service Chaining
Dynamic Service Chaining Tail-f Systems
 
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
 
Module 8: C Data Types
Module 8: C Data TypesModule 8: C Data Types
Module 8: C Data TypesTail-f Systems
 
Module 6: YANG Tutorial - part 2
Module 6: YANG Tutorial - part 2Module 6: YANG Tutorial - part 2
Module 6: YANG Tutorial - part 2Tail-f Systems
 
Webinar: Applying REST to Network Management – An Implementor’s View
Webinar: Applying REST to Network Management – An Implementor’s View Webinar: Applying REST to Network Management – An Implementor’s View
Webinar: Applying REST to Network Management – An Implementor’s View Tail-f Systems
 
Module 11: Operational Data Providers
Module 11: Operational Data ProvidersModule 11: Operational Data Providers
Module 11: Operational Data ProvidersTail-f Systems
 
Module 12: NETCONF Northbound Interface
Module 12: NETCONF Northbound InterfaceModule 12: NETCONF Northbound Interface
Module 12: NETCONF Northbound InterfaceTail-f Systems
 
Module 7: Installation and Getting Started
Module 7: Installation and Getting StartedModule 7: Installation and Getting Started
Module 7: Installation and Getting StartedTail-f Systems
 

Viewers also liked (12)

Open Network OS Overview as of 2015/10/16
Open Network OS Overview as of 2015/10/16Open Network OS Overview as of 2015/10/16
Open Network OS Overview as of 2015/10/16
 
Module 10: CDB Subscribers
Module 10: CDB SubscribersModule 10: CDB Subscribers
Module 10: CDB Subscribers
 
Module 9: CDB Technical Intro
 Module 9: CDB Technical Intro Module 9: CDB Technical Intro
Module 9: CDB Technical Intro
 
Tail-f - Why NETCONF
Tail-f - Why NETCONFTail-f - Why NETCONF
Tail-f - Why NETCONF
 
Dynamic Service Chaining
Dynamic Service Chaining Dynamic Service Chaining
Dynamic Service Chaining
 
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
 
Module 8: C Data Types
Module 8: C Data TypesModule 8: C Data Types
Module 8: C Data Types
 
Module 6: YANG Tutorial - part 2
Module 6: YANG Tutorial - part 2Module 6: YANG Tutorial - part 2
Module 6: YANG Tutorial - part 2
 
Webinar: Applying REST to Network Management – An Implementor’s View
Webinar: Applying REST to Network Management – An Implementor’s View Webinar: Applying REST to Network Management – An Implementor’s View
Webinar: Applying REST to Network Management – An Implementor’s View
 
Module 11: Operational Data Providers
Module 11: Operational Data ProvidersModule 11: Operational Data Providers
Module 11: Operational Data Providers
 
Module 12: NETCONF Northbound Interface
Module 12: NETCONF Northbound InterfaceModule 12: NETCONF Northbound Interface
Module 12: NETCONF Northbound Interface
 
Module 7: Installation and Getting Started
Module 7: Installation and Getting StartedModule 7: Installation and Getting Started
Module 7: Installation and Getting Started
 

Similar to Module 1: ConfD Technical Introduction

High-speed Database Throughput Using Apache Arrow Flight SQL
High-speed Database Throughput Using Apache Arrow Flight SQLHigh-speed Database Throughput Using Apache Arrow Flight SQL
High-speed Database Throughput Using Apache Arrow Flight SQLScyllaDB
 
L4-L7 services for SDN and NVF by Youcef Laribi
L4-L7 services for SDN and NVF by Youcef LaribiL4-L7 services for SDN and NVF by Youcef Laribi
L4-L7 services for SDN and NVF by Youcef Laribibuildacloud
 
Apic dc api deep dive
Apic dc api deep dive Apic dc api deep dive
Apic dc api deep dive Cisco 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
 
CNCF Singapore - Introduction to Envoy
CNCF Singapore - Introduction to EnvoyCNCF Singapore - Introduction to Envoy
CNCF Singapore - Introduction to EnvoyHarish
 
5 pipeline arch_rationale
5 pipeline arch_rationale5 pipeline arch_rationale
5 pipeline arch_rationalevideos
 
Scalable Service-Oriented Middleware over IP
Scalable Service-Oriented Middleware over IPScalable Service-Oriented Middleware over IP
Scalable Service-Oriented Middleware over IPDai Yang
 
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...apidays
 
NETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network DevicesNETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network DevicesCisco DevNet
 
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...apidays
 
PLNOG15: The Power of the Open Standards SDN API’s - Mikael Holmberg
PLNOG15: The Power of the Open Standards SDN API’s - Mikael Holmberg PLNOG15: The Power of the Open Standards SDN API’s - Mikael Holmberg
PLNOG15: The Power of the Open Standards SDN API’s - Mikael Holmberg PROIDEA
 
PLNOG16: Automatyzacja kreaowania usług operatorskich w separacji od rodzaju ...
PLNOG16: Automatyzacja kreaowania usług operatorskich w separacji od rodzaju ...PLNOG16: Automatyzacja kreaowania usług operatorskich w separacji od rodzaju ...
PLNOG16: Automatyzacja kreaowania usług operatorskich w separacji od rodzaju ...PROIDEA
 
Getting Started: Intro to Telegraf - July 2021
Getting Started: Intro to Telegraf - July 2021Getting Started: Intro to Telegraf - July 2021
Getting Started: Intro to Telegraf - July 2021InfluxData
 
introduction to micro services
introduction to micro servicesintroduction to micro services
introduction to micro servicesSpyros Lambrinidis
 
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...Indonesia Network Operators Group
 
Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...
Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...
Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...GetInData
 
Linkmeup v076(2019-06).2
Linkmeup v076(2019-06).2Linkmeup v076(2019-06).2
Linkmeup v076(2019-06).2eucariot
 
Open Networking through Programmability
Open Networking through ProgrammabilityOpen Networking through Programmability
Open Networking through ProgrammabilityTal Lavian Ph.D.
 

Similar to Module 1: ConfD Technical Introduction (20)

SDN and metrics from the SDOs
SDN and metrics from the SDOsSDN and metrics from the SDOs
SDN and metrics from the SDOs
 
High-speed Database Throughput Using Apache Arrow Flight SQL
High-speed Database Throughput Using Apache Arrow Flight SQLHigh-speed Database Throughput Using Apache Arrow Flight SQL
High-speed Database Throughput Using Apache Arrow Flight SQL
 
L4-L7 services for SDN and NVF by Youcef Laribi
L4-L7 services for SDN and NVF by Youcef LaribiL4-L7 services for SDN and NVF by Youcef Laribi
L4-L7 services for SDN and NVF by Youcef Laribi
 
Apic dc api deep dive
Apic dc api deep dive Apic dc api deep dive
Apic dc api deep dive
 
Monkey Server
Monkey ServerMonkey Server
Monkey Server
 
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
 
CNCF Singapore - Introduction to Envoy
CNCF Singapore - Introduction to EnvoyCNCF Singapore - Introduction to Envoy
CNCF Singapore - Introduction to Envoy
 
5 pipeline arch_rationale
5 pipeline arch_rationale5 pipeline arch_rationale
5 pipeline arch_rationale
 
Scalable Service-Oriented Middleware over IP
Scalable Service-Oriented Middleware over IPScalable Service-Oriented Middleware over IP
Scalable Service-Oriented Middleware over IP
 
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...
 
NETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network DevicesNETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network Devices
 
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
 
PLNOG15: The Power of the Open Standards SDN API’s - Mikael Holmberg
PLNOG15: The Power of the Open Standards SDN API’s - Mikael Holmberg PLNOG15: The Power of the Open Standards SDN API’s - Mikael Holmberg
PLNOG15: The Power of the Open Standards SDN API’s - Mikael Holmberg
 
PLNOG16: Automatyzacja kreaowania usług operatorskich w separacji od rodzaju ...
PLNOG16: Automatyzacja kreaowania usług operatorskich w separacji od rodzaju ...PLNOG16: Automatyzacja kreaowania usług operatorskich w separacji od rodzaju ...
PLNOG16: Automatyzacja kreaowania usług operatorskich w separacji od rodzaju ...
 
Getting Started: Intro to Telegraf - July 2021
Getting Started: Intro to Telegraf - July 2021Getting Started: Intro to Telegraf - July 2021
Getting Started: Intro to Telegraf - July 2021
 
introduction to micro services
introduction to micro servicesintroduction to micro services
introduction to micro services
 
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
07 (IDNOG02) SDN Research activity in Institut Teknologi Bandung by Affan Bas...
 
Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...
Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...
Functioning incessantly of Data Science Platform with Kubeflow - Albert Lewan...
 
Linkmeup v076(2019-06).2
Linkmeup v076(2019-06).2Linkmeup v076(2019-06).2
Linkmeup v076(2019-06).2
 
Open Networking through Programmability
Open Networking through ProgrammabilityOpen Networking through Programmability
Open Networking through Programmability
 

Recently uploaded

H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Recently uploaded (20)

H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

Module 1: ConfD Technical Introduction

  • 1. 1©2015 Tail-f Systems all rights reservedFebruary 13, 2015 ConfD Technical Introduction
  • 2. 2©2015 Tail-f Systems all rights reservedFebruary 13, 2015 What is ConfD? ConfD provides a data-model driven management plane framework which provides a variety of standards-based northbound management interfaces for use in building network elements: Physical Network Devices Virtual Network Devices (VNF in NFV) Network Appliances etc.
  • 3. 3©2015 Tail-f Systems all rights reservedFebruary 13, 2015 How is ConfD different? SNMP agent CLI engine NETCONF server … Protocol Focused Agents Stove-pipe Feature-lag Just the protocol layer Data-model driven Any protocol ConfD All protocols No feature lag Core engine
  • 4. 4©2015 Tail-f Systems all rights reservedFebruary 13, 2015 ConfD Overview Network Element NETCONF SNMP REST CLI Web Database Data Provider API Managed Object API Management Agent API OSS/BSS MO MOMO ConfD Core Engine MO External DatabaseOperational Data MO
  • 5. 5©2015 Tail-f Systems all rights reservedFebruary 13, 2015 ConfD Overview Network Element NETCONF SNMP REST CLI Web CDB Database Data Provider API CDB API Management Agent API OSS/BSS App AppApp ConfD Core Engine App External DatabaseOperational Data App Management Agent API Auto-rendered management interfaces and data schema YANG Data Models
  • 6. 6©2015 Tail-f Systems all rights reservedFebruary 13, 2015 True Model-Driven • Information models (UML, SID, …) • Important for communication between domain experts • Needs “mapping” to data-models • Data Models • Concrete • Means something in reality • Tail-f story • Core-engine driven by data-models • No stubs! • Translators to information models, UML, SID, … • You can execute with the data-model only • CLI • WebUI • Database • … • YANG – RFC 6020 • IETF greybeards • Concrete, precise, semantically rich • Clarity – “anyone” can read • Precision – self documenting • Modular data models • Extensible language • Code generation
  • 7. 7©2015 Tail-f Systems all rights reservedFebruary 13, 2015 YANG Example module sys { namespace "urn:sys"; prefix sys; import tailf-common { prefix tailf; } typedef interface-name { type string { length "min .. 30"; pattern "[A-Za-z][^/:.]*"; } }
  • 8. 8©2015 Tail-f Systems all rights reservedFebruary 13, 2015 YANG Example (cont.) container sys { container numbers { leaf odd { type int32; default 1; must "(. mod 2) = 1" { error-message "can only be an odd number"; tailf:dependency "."; } } } list ifc { key name; max-elements 1024; leaf name { type interface-name; } leaf enabled { type boolean; default true; }
  • 9. 9©2015 Tail-f Systems all rights reservedFebruary 13, 2015 YANG Example (cont.) list labels { key string; max-elements 16; description "A label is an alphanumeric string assigned to an interface. Each interface can have many labels. The purpose here is simply to show a must validation that requires the labels to be unique for all interfaces.”; leaf string { type string { length "1..31"; pattern "[a-zA-Z][a-zA-Z0-9_-]*"; } must "not(/sys:sys/sys:ifc[name = current()])" { error-message "A label can not be the same as an interface name"; tailf:dependency "/sys/ifc/name"; } must "count(/sys/ifc/labels[string = current()]) = 1" { error-message "All labels must be unique"; tailf:dependency "."; }
  • 10. 10©2015 Tail-f Systems all rights reservedFebruary 13, 2015 ConfD Overview ConfD NETCONF SNMP REST CLI Web ConfD Core Engine CDB Database Transaction Management Session Management / Authentication Role-based Access Control Audit Trailing Redundancy / Replication Validation (syntactic and semantic) Rollback Management Upgrades and Downgrades Data Provider API CDB API Management Agent API Operational Data Counters Alarms StatisticsMO External Database Operational Data MO Validation API Authentication API Radius PAM TACACS Others Operational Data Operational Data API App AppApp
  • 11. 11©2015 Tail-f Systems all rights reservedFebruary 13, 2015 ConfD Overview API lib App IPC (via TCP Sockets) Application Blades Management Blade = Unix/Linux process NETCONF ConfD SNMP REST CLI WEB API lib App API lib App API lib App API libraries available for: C, Erlang, Java, and Python (limited coverage)
  • 12. 12©2015 Tail-f Systems all rights reservedFebruary 13, 2015 High Availability NETCONF Management Blade ConfD Configuration Datastore SNMP REST CLI Web “Standby” NETCONF Management Blade ConfD Configuration Datastore SNMP REST CLI Web Data Replication “Active” Application Blade
  • 13. 13©2015 Tail-f Systems all rights reservedFebruary 13, 2015 Integrated Database (CDB) NETCONF SNMP REST CLI Web CDB Database Data Provider API CDB API Management Agent API App AppApp ConfD Core Engine App External DatabaseOperational Data App • Hierarchical database • ACID test compliant • Atomicity, consistency, isolation, durability • Fast, lightweight, fault-tolerant • Compact binary XML format • Memory resident with journal in persistent storage • Schema automatically derived from YANG • Supports 1:N data replication • Supports automatic schema version up/downgrades • CDB can hold some or all data • Configuration data and/or Operational data • External database can be used in addition to or instead of • Automatic loading of initial data • Applications read data, then subscribe to relevant configuration changes • Subscription notifications with priority level ordering • Multiple datastores per NETCONF standards • Startup, running, candidate, operational
  • 14. 14©2015 Tail-f Systems all rights reservedFebruary 13, 2015 NETCONF Interface • IETF RFC 4741/6241 • Full implementation • All mandatory and all optional capabilities • RFC 4742/6242 NETCONF over SSH • Streams XML over SSH • Separates operational data from configuration • Distributed transactions • RFC 5277 NETCONF notifications • Support included for various IETF standardized YANG data models <get-config> <edit-config> <delete-config> <lock> <unlock> <get> <close-session> <kill-session> <commit> <discard-changes> :writeable-running :candidate :confirmed-commit :rollback-on-error :validate :startup :URL :XPath NETCONF OPERATIONS NETCONF CAPABILITIES NETCONF SNMP REST CLI Web CDB Database Data Provider API CDB API Management Agent API App AppApp ConfD Core Engine App External DatabaseOperational Data App
  • 15. 15©2015 Tail-f Systems all rights reservedFebruary 13, 2015 SNMP Agent • SNMP machine interface • Any combination of v1, v2c, v3 • Supports all operations • Send SNMP notifications (traps) • MIBs implemented by ConfD include: • RFC-3411 (SNMP-FRAMEWORK-MIB) • RFC-3414 (USM) • RFC-3415 (VACM) • RFC-3418 (SNMPv2-MIB) • MIB to YANG translator • YANG to MIB translator NETCONF SNMP REST CLI Web CDB Database Data Provider API CDB API Management Agent API App AppApp ConfD Core Engine App External DatabaseOperational Data App
  • 16. 16©2015 Tail-f Systems all rights reservedFebruary 13, 2015 Command Line Interface (CLI) • Auto rendering of three CLI styles: • Cisco – XR style • Cisco – legacy IOS style • Juniper – JUNOS style • Rich editing with tab-completion for commands, static elements and dynamic instances • History, hints, help • Extensible with custom/external commands, wizards • Typically runs over SSH NETCONF SNMP REST CLI Web CDB Database Data Provider API CDB API Management Agent API App AppApp ConfD Core Engine App External DatabaseOperational Data App
  • 17. 17©2015 Tail-f Systems all rights reservedFebruary 13, 2015 Web • JSON RPC API • Access data • Run transactions and rollbacks • Do validation • Execute actions • Access data model schema information • Customer choice of toolsets and frameworks • Preserve existing Web content • Example of how to implement an auto- rendered Web UI provided • Supports HTTP and HTTPS
  • 18. 18©2015 Tail-f Systems all rights reservedFebruary 13, 2015 REST • Relies on verbs of transport layer: • HTTP 1.1 • GET : get resources • Selectors : shallow, deep • PUT : replace existing resource • POST : create resource • DELETE : delete resource • PATCH (RFC5789) : modify existing resource • HEAD, OPTIONS • Stateless, client-server • Hyperlinked, just like the web • XML or JSON as data containers • Links to available data-stores and operations NETCONF SNMP REST CLI Web CDB Database Data Provider API CDB API Management Agent API App AppApp ConfD Core Engine App External DatabaseOperational Data App $curl –u admin:admin –s http://localhost:8008/api • /api/running • /api/candidate • /api/operations • /api/operational • /api/rollback
  • 19. 19©2015 Tail-f Systems all rights reservedFebruary 13, 2015 Why ConfD Make your customer happy Make your device • Manageable • Programmable • Standards -compliant Save time • Render management interfaces • Model-driven • Iterative development • NETCONF, CLI, SNMP, REST, Web • Transactions and rollbacks • Validations • Configuration and monitoring • No feature lag • Core components • Embedded database • Domain-specific functions • Rich APIs • Well-tested, 70+ customers
  • 20. 20©2015 Tail-f Systems all rights reservedFebruary 13, 2015
  • 21. 21©2015 Tail-f Systems all rights reservedFebruary 13, 2015 Data ProviderAPI A transaction can be viewed as a conceptual state machine • Phases of a transaction correspond to states • API transaction callback function invocations are state transitions Start Read Prepare Write Validate Abort Commit init() commit() prepare() write_start() trans_lock()trans_unlock() finish() abort() finish() finish() get_next() get_elem() finish() finish() set_elem() create() remove() get_next() get_elem()

Editor's Notes

  1. The closing slide may be used with no text or with a short phrase and company web address.