📘Cisco DevNet Associate (200-901 DEVASC)
1. What is Model-Driven Programmability?
Model-driven programmability is a method to manage and automate network devices (like routers and switches) using software instead of manually configuring them through a CLI (Command Line Interface).
- Traditionally, network engineers would type commands on each device.
- With model-driven programmability, devices can be controlled by software programs, scripts, or APIs.
- This allows faster, consistent, and automated network operations, which is crucial in modern networks.
Key idea: You don’t tell the device how to do something step by step; instead, you describe what you want, and the device follows the model.
2. YANG: The Data Modeling Language
YANG is the language used to describe network configurations and operational data in a standard way.
- Think of it as a blueprint or a template for network devices.
- It defines what data is available, like interfaces, IP addresses, VLANs, and routing configurations.
- YANG models are structured and hierarchical, making it easier for programs to read and write configurations.
How it works in a Cisco environment:
- Cisco devices like IOS XE, NX-OS, and DNA Center expose their configurations using YANG models.
- Applications or scripts can then interact with these devices using these models rather than dealing with device-specific commands.
Example:
- Instead of configuring an interface with multiple CLI commands, a YANG model can describe:
- Interface name
- IP address
- State (up/down)
This makes it easier to automate and ensure consistency across many devices.
3. NETCONF: Network Configuration Protocol
NETCONF is a protocol used to read and write network configurations using YANG models.
- Uses XML format to communicate with network devices.
- Supports full configuration management, including:
- Retrieving device configurations
- Updating or changing configurations
- Validating changes before applying
Key points about NETCONF:
- Works over SSH, so it’s secure.
- Devices must support NETCONF (like Cisco IOS XE and NX-OS).
- It is device-independent because it uses standardized YANG models.
Example in IT networks:
- A script can connect to a Cisco switch using NETCONF and automatically configure VLANs across multiple switches, without typing commands manually.
4. RESTCONF: RESTful Configuration Protocol
RESTCONF is similar to NETCONF but uses RESTful APIs (HTTP/HTTPS) instead of XML over SSH.
- RESTCONF also uses YANG models to structure data.
- It is easier to use with modern programming languages (Python, JavaScript, etc.) because it works over HTTP.
- RESTCONF supports standard HTTP methods:
- GET → retrieve data
- POST → create data
- PUT → update data
- DELETE → remove data
Key difference from NETCONF:
| Feature | NETCONF | RESTCONF |
|---|---|---|
| Transport | SSH | HTTP/HTTPS |
| Data format | XML | JSON or XML |
| Usage | Full configuration | REST-based applications |
Example in IT networks:
- Using RESTCONF, a network management tool can retrieve interface status from all routers in JSON format and display it in a dashboard.
5. How YANG, NETCONF, and RESTCONF Work Together
- YANG defines the model: What configurations and operational data the device supports.
- NETCONF or RESTCONF acts as the interface: The protocol that sends or retrieves data from the device.
- Automation tools use these protocols: Python scripts, Cisco DNA Center, or Ansible can automate tasks using these models.
Flow example:
- Task: Configure an IP on an interface.
- Steps:
- YANG model defines the interface and IP parameters.
- NETCONF or RESTCONF sends the configuration to the device.
- Device applies the configuration automatically.
This ensures accuracy, consistency, and scalability in enterprise networks.
6. Real-World IT Usage Examples
- Automated interface provisioning: Configure hundreds of interfaces using one script.
- Monitoring network status: Collect interface statistics and uptime in real-time using RESTCONF.
- Policy enforcement: Automatically apply security or routing policies to multiple devices.
- Backup and restore configurations: Use NETCONF to pull device configs and store them centrally.
7. Key Exam Tips for 200-901 DEVASC
- Know the purpose of each component:
- YANG → data model
- NETCONF → protocol for configuration (SSH/XML)
- RESTCONF → RESTful API for configuration (HTTP/JSON)
- Be able to identify which protocol to use for a given scenario:
- RESTCONF → modern web apps, JSON-friendly
- NETCONF → traditional config automation, XML-based
- Understand advantages of model-driven programmability:
- Automation
- Reduced errors
- Faster deployments
- Recognize Cisco devices that support it: IOS XE, NX-OS, IOS XR, and DNA Center.
- Know the basics of CRUD operations with RESTCONF: GET, POST, PUT, DELETE.
✅ Summary in simple words:
Model-driven programmability lets you control network devices using software instead of manual commands. YANG defines the data structure, NETCONF and RESTCONF are protocols that read or write that data, and automation tools use these to configure, monitor, and manage networks efficiently.
