Cisco Network Service Orchestrator
enabled by Tail-f technology
Carl Moberg <
[email protected]>
Technology Director, Cloud and Virtualization Group (CVG)
Agenda
§ An introduction to the YANG data modeling language
§ How NSO uses YANG data models to represent the syntax, structure and semantics of devices and
services
§ The moving parts of Network Equipment Drivers (NEDs) that provides the southbound multi-vendor,
multi-protocol capabilities of NSO
§ The moving parts of an examples service model for MPLS-VPN including the YANG module and the
decomposition code in Java and templates
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 2
Current networks are challenging...
*Gartner: Telecom Operations Management Systems (BSS, OSS and SDP), Worldwide, 3Q13 Update
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 3
A look at some problem commonalities
• Vendors have interfaces – ways of interacting with their “thing”
• Invented long time ago, no resources to refactor – also it is hard
• Not really developed for integration – lock in-implementations!
• Openness are commonly superficial – “that’s how we do REST!”
• One step deeper into details
• Interfaces lack common structure, semantics – “that’s how we define VLAN!”
• Protocols and interfaces lack basic features – “what do you mean rollback?”
• Disagreement on layerings – “You can only reach my devices through an EMS”
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 4
Configuration, Models and Protocols
• Examples of A Thing includes:
• Physical routers, switches
• Virtual Networking Functions
A Thing (VNFs)
• Controller applications
Its configuration • The configuration of the thing is the
representation of it’s intended state
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 5
Configuration, Models and Protocols
• Examples of A Thing includes:
• Physical routers, switches
• Virtual Networking Functions
A Thing (VNFs)
• Controller applications
Its configuration • The configuration of the thing is the
representation of it’s intended state
Its data model • The data model is the set of
validation constraints applied to the intended
state through validation
YANG
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 6
Configuration, Models and Protocols
• Examples of A Thing includes:
A Configuration Protocol • Physical routers, switches
NETCONF • Virtual Networking Functions
A Thing (VNFs)
• Controller applications
Its configuration • The configuration of the thing is the
representation of it’s intended state
Its data model • The data model is the set of
validation constraints applied to the intended
state through validation
YANG
• The protocol is the means by which to
manipulate valid configuration
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 7
Origins of NETCONF and YANG
§ Several meetings at events in 2001 (NANOG-22, RIPE-40, LISA-XV,
IETF 52)
• Operators expressing opinion that the developments in IETF do not really
address requirements configuration management.
§ June of 2002, the Internet Architecture Board (IAB) held invitational
workshop on Network Management (RFC3535) to
• Identify a list of technologies relevant for network management with their
strengths and weaknesses
• Identify the most important operator needs.
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 8
YANG – A Data Modeling Language for Networking
• Human readable and easy to learn
• Hierarchical configuration data
models
• Reusable types and groupings
(structured types)
• Extensibility through augmentation
• Formal constraints for configuration
validation
• Data modularity through modules
and sub-modules Why you should care: YANG is a full,
• Well defined versioning rules formal contract language with rich syntax
and semantics to build applications on
© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 9
Introducing Network Service Orchestrator (NSO)
Applications Engineers
REST, NETCONF, Java, Python, Erlang, CLI, Web UI • Logically centralized network
services
Service
Service Manager Model • Data models for data
structures
• Structured representations of:
Device Manager Device
Model • Service instances
• Network configuration
Network Equipment Drivers (NEDs) and state
• Mapping service operations to
NETCONF, REST, SNMP, CLI, etc network configuration changes
• Transactional integrity
• VNFM • Multiprotocol and multivendor
• Controller Apps support
• EMS and NMS
Physical Networks Virtual Networks Network Apps
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 10
NSO Main Features
#1 Model-based Architecture
Applications Engineers
REST, NETCONF, Java, Python, Erlang, CLI, Web UI • No hard-coded assumptions
about:
Service
Service Manager Model • Network services
• Network architecture
• Network devices
Device Manager Device
Model • Instead:
• Data models written in
Network Equipment Drivers (NEDs) YANG (RFC 6020)
NETCONF, REST, SNMP, CLI, etc
• VNFM
• Controller Apps
• EMS and NMS
Physical Networks Virtual Networks Network Apps
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 11
NSO Main Features
#2 Device Manager
• Device model
Service management
Service Manager Model
• Version and capability
management
Device Manager Device
Model • Transactions and
rollbacks
Network Equipment Drivers (NEDs) • Network configuration
audit
NETCONF, REST, SNMP, CLI, etc • Configuration
validation
• VNFM
• Controller Apps • Policies and
• EMS and NMS templates
Physical Networks Virtual Networks Network Apps
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 12
NSO Main Features
#3 Network Equipment Drivers (NEDs)
• Device model
Service management
Service Manager Model
• Version and capability
management
Device Manager Device
Model • Transactions and
rollbacks
Network Equipment Drivers (NEDs) • Network configuration
audit
NETCONF, REST, SNMP, CLI, etc • Configuration
validation
• VNFM
• Controller Apps • Policies and
• EMS and NMS templates
Physical Networks Virtual Networks Network Apps
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 13
NSO Main Features
#4 Service Manager
• Service model
Service
Model
management
Service Manager
• Mapping to device
Device Manager Device
model
Model
• Device effects
Network Equipment Drivers (NEDs) • Service check-sync
• Service restoration
NETCONF, REST, SNMP, CLI, etc • Service testing
• Aggregated
• VNFM
• Controller Apps operational data
• EMS and NMS
Physical Networks Virtual Networks Network Apps
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 14
NSO Main Features
#5 Fastmap
Create
Update
Delete
Redeploy • FastMap:
• Only the CREATE
Service
Service Manager Model operation needs to be
specified
• UPDATE, DELETE and
Device Manager Device
Model REDEPLOY automatic
• Benefits:
Network Equipment Drivers (NEDs) • Reduces service
implementation code by
NETCONF, REST, SNMP, CLI, etc two orders of magnitude
• Supports modifications
• VNFM of services at runtime
• Controller Apps
• EMS and NMS
Physical Networks Virtual Networks Network Apps
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 15
NSO Main Features (for Bonus Points)
#5 Reactive Fastmap (RFM)
Create
Update
Delete
Redeploy • Development pattern to:
• Redeploy service
Service
Service Manager Model configuration on
operational changes
• Idempotent
Device Manager Device
Model
• One algorithm supporting:
Network Equipment Drivers (NEDs) • Provisioning
• Orchestration
NETCONF, REST, SNMP, CLI, etc • Elasticity
• Virtual machine and VNF
• VNFM mobility
• Controller Apps • Self-healing network
• EMS and NMS
Physical Networks Virtual Networks Network Apps
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 16
Homing in on the Demo!
• Service Packages
• Subscribe to operations
Service Manager on service models
Service
• Populate the device
Model manager with associated
changes
Service Package • Using Java and/or
(Java and Templates) templates
• Service Decomposition
Device Device Device • Focus only on
Model Model Model
normalized service-to-
device mapping
Device Manager
• All-declarative can be
done with templates
Network Equipment Drivers (NEDs) • Realistic use-cases use
Java (Python on
roadmap)
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 17
Homing in on the Demo!
CREATE • Service Packages
• Subscribe to operations
Service Manager on service models
Service
• Populate the device
Model manager with associated
Calls the .create() method changes
onService Package
the subscriber code • Using Java and/or
(Java and Templates) templates
Callback directly (or through • Service Decomposition
templates)
Device manipulates
Device per-
Device • Focus only on
Model device data
Model Model
normalized service-to-
device mapping
Device Manager
• All-declarative can be
done with templates
Network Equipment Drivers (NEDs) • Realistic use-cases use
Java (Python on
roadmap)
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 18
Demo Time!
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco Confidential 19