Netconf
NETCONF configuration on IOS-XR manages two agent subsystems. The TTY agent enables NETCONF over TTY transport with throttle settings for process rate, memory usage, and client memory offload. The YANG agent enables model-driven management via NETCONF over SSH with session limits, idle and absolute timeouts, rate limiting, with-defaults support (RFC 6243), and NETCONF protocol version 1.0 compatibility.
Diagram
Section titled “Diagram”Classes
Section titled “Classes”configuration (iosxr.devices)
Section titled “configuration (iosxr.devices)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| netconf | Class | [netconf] | No |
netconf (iosxr.devices.configuration)
Section titled “netconf (iosxr.devices.configuration)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| tty_agent | Class | [tty_agent] | No | |
| yang_agent | Class | [yang_agent] | No |
tty_agent (iosxr.devices.configuration.netconf)
Section titled “tty_agent (iosxr.devices.configuration.netconf)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| enable | Boolean | true, false | No | |
| throttle_process_rate | Integer | min: 1000, max: 30000 | No | |
| throttle_memory | Integer | min: 100, max: 1024 | No | |
| throttle_offload_memory | Integer | min: 0, max: 12000 | No | |
| session_timeout | Integer | min: 1, max: 1440 | No |
yang_agent (iosxr.devices.configuration.netconf)
Section titled “yang_agent (iosxr.devices.configuration.netconf)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ssh | Boolean | true, false | Yes | |
| with_defaults_support | Boolean | true, false | No | |
| rate_limit | Integer | min: 4096, max: 4294967295 | No | |
| session_limit | Integer | min: 1, max: 50 | No | |
| session_idle_timeout | Integer | min: 1, max: 1440 | No | |
| session_absolute_timeout | Integer | min: 1, max: 1440 | No | |
| netconf_v1 | Choice | enabled, v1-only | No | |
| netconf_v1_streaming_disabled | Boolean | true, false | No |
Example YAML Code:
Section titled “Example YAML Code:”Example-1: Configure NETCONF TTY agent with throttle tuning.
iosxr: devices: - name: router-1 host: 10.10.10.1:57400 configuration: netconf: tty_agent: enable: true throttle_process_rate: 5000 throttle_memory: 300 session_timeout: 30Example-2: Configure NETCONF YANG agent with SSH, session limits, and v1 support.
iosxr: devices: - name: router-1 host: 10.10.10.1:57400 configuration: netconf: yang_agent: ssh: true rate_limit: 4096 session_limit: 50 session_idle_timeout: 30 session_absolute_timeout: 1440 netconf_v1: v1-onlyExample-3: Configure NETCONF TTY agent without additional attributes.
iosxr: devices: - name: router-1 host: 10.10.10.1:57400 configuration: netconf: tty_agent: enable: true