Skip to content

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
NameTypeConstraintMandatoryDefault Value
netconfClass[netconf]No

NameTypeConstraintMandatoryDefault Value
tty_agentClass[tty_agent]No
yang_agentClass[yang_agent]No

tty_agent (iosxr.devices.configuration.netconf)

Section titled “tty_agent (iosxr.devices.configuration.netconf)”
NameTypeConstraintMandatoryDefault Value
enableBooleantrue, falseNo
throttle_process_rateIntegermin: 1000, max: 30000No
throttle_memoryIntegermin: 100, max: 1024No
throttle_offload_memoryIntegermin: 0, max: 12000No
session_timeoutIntegermin: 1, max: 1440No

yang_agent (iosxr.devices.configuration.netconf)

Section titled “yang_agent (iosxr.devices.configuration.netconf)”
NameTypeConstraintMandatoryDefault Value
sshBooleantrue, falseYes
with_defaults_supportBooleantrue, falseNo
rate_limitIntegermin: 4096, max: 4294967295No
session_limitIntegermin: 1, max: 50No
session_idle_timeoutIntegermin: 1, max: 1440No
session_absolute_timeoutIntegermin: 1, max: 1440No
netconf_v1Choiceenabled, v1-onlyNo
netconf_v1_streaming_disabledBooleantrue, falseNo

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: 30

Example-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-only

Example-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