Automation, Programmability, and Network Management
This domain tests how modern networks are configured, modeled, and verified programmatically. Expect SDN planes, APIs, data formats, NETCONF/YANG, RESTCONF, Ansible, Git, infrastructure as code, and model-driven telemetry.
Core rules
- SDN separates the control plane from the data plane. A controller exposes northbound APIs to applications and southbound interfaces to devices.
- JSON, YAML, and XML carry structured data. YANG defines the data model; it is not the data itself.
- REST uses HTTP methods: GET reads, POST creates, PUT replaces, PATCH partially modifies, and DELETE removes. GET, PUT, and DELETE should be idempotent when implemented correctly.
- NETCONF runs over SSH on TCP 830 and uses XML. RESTCONF uses HTTPS and JSON or XML. gNMI is common for streaming telemetry.
- Ansible is agentless and typically uses SSH; idempotency means repeated runs converge to the same state without duplicating configuration.
- Version control with Git supports review, rollback, and CI/CD pipelines for network changes.
Worked example
To change an interface description with RESTCONF, first GET the interface resource and confirm the YANG path. Then send a PATCH with a JSON body containing only the description leaf, using the correct content type. A 204 response means success with no body; a 400 response suggests a malformed body or wrong model path; 401 means authentication failed. PATCH is preferred over PUT because it changes only the specified leaf and avoids replacing the whole interface object.
Traps
POST is not idempotent; repeating it can create duplicates. YANG models are schemas, not payloads. NETCONF is not the same as RESTCONF. An API call that returns 200 may still have failed at the device level, so verify state. Automation amplifies a bad template, so validate syntax and intent before rollout.